|
From: Adam G. <ar...@cy...> - 2003-04-28 11:41:01
|
Flushing the translation cache using the DISCARD_TRANSLATIONS user request doesn't always work - if the code has already been executed, basic blocks which chain to the one to be discarded are ignored. This means that modified code sometimes behaves as if it has not been modified! The attached patch makes VG_(invalidate_translations)() take a flag indicating whether basic blocks which chain to the discarded blocks should also be discarded. I did originally _always_ use this behaviour, but it is painfully slow when a shared object is unmapped. Seeya, Adam -- Real Programmers don't comment their code. If it was hard to write, it should be hard to read, and even harder to modify. These are all my own opinions. |