Hello Marc, > Here is my attempt at a simple unit test for your new cache module. > > I have tested it on an x86 box (where the instruction cache is always in > sync) and on an Armv8 Raspberry, both running GNU/Linux. Commenting out > the call to `clear_cache' shows that `clear_cache' is not a NOP on Arm and > that the test is actually doing a non-trivial test.
Very nice! It is simpler than what I had expected (no per-CPU #ifdefs so far). I've committed your patch (as two separate patches). I will test it on various platforms. For the moment, I expect - a SIGSEGV on powerpc*-aix, powerpc64-linux, ia64, hppa, and hppa64 due to the structure of function pointers, see https://git.savannah.gnu.org/gitweb/?p=libffcall.git;a=blob;f=porting-tools/abis/function-pointer.txt - a link error on native Windows, due to the use of mprotect() outside #ifdefs. But we'll see... Bruno