


That said, these are just caches they can be evicted for reasons such as the user changing the type of a function or global data item used by the cached function. The past few versions of Hex-Rays have introduced caches for the decompilation results, particularly the mba_t and cfunc_t structures from the SDK, to speed up displaying decompilation for functions that have recently been analyzed.

That's because Hex-Rays often decompiles the same function more than once - numerous times, actually - throughout the course of the user's analysis session. You have probably noticed that Hex-Rays might - or might not - pause noticeably when decompiling a large function that you have already decompiled some time ago. It sounds like you know how to use Hex-Rays to a non-trivial extent.
