|
u8 *blkptr = ram_translation_ptr + block_prologue_size; \ |
I could be wrong but it looks like the first block that gets translated (or following a flush) will end up with an offset of zero in ram_translation_cache, which means that when/if the tag is encountered again, because the offset is set as zero it will be re-translated again needlessly.
Probably not a big deal but thought I'd point it out. Won't affect MIPS as block_prologue_size is set to 16 there.