From: <gb...@di...> - 2000-11-02 06:49:08
|
Hi, I have uploaded an experimental release (hmm, actually everything is experimental ;-) at: <http://gwenole.beauchesne.online.fr/basilisk2/files/> File: BasiliskII-JIT-devel-20001101a.tar.gz Features: - The lazy flusher should work correctly now. - spcflags "optimization" like in the Windows port - exclusive spcflags handling In fact, the new spcflags features doesn't seem to improve speed on my machine. Those of you who have tremendous machines with Pentium III processors, could you please try the new release ? - first, with the JIT compiler only - then, with --enable-spcflags-hack --enable-spcflags-excl in addition. I will make a full release when I implemented register caching for the interpreter and probably for the compiler. i.e. keeping the most used variables into native registers, for as much time as possible. The variables I plan to cache are: regs.pc_p, regflags, a pointer to the regs structure. BTW, I finally caught a gcc 2.95.2 compilation bug :-/ See in uae_cpu/compiler/compemu_support.cpp, down in the m68k_run_compile() function: blocklen wouldn't get incremented depending on where the incrementation is done... Do you have other compilers to test with ? Or is there a constraints error my asm templates ? Strange enough, cpu levels lower than 4 now appear to work although slowly. That might be because the compiler got disabled for long periods of time ? Another person reported that the cpuopti.c optimization I made (see near line 206) would not work with compilers earlier than 2.95. In fact, I think I should manually push and pop the registers before running the instruction handler in m68k_run_*. Counting on gcc to save those is probably is Bad Thing... Bye -- Gwenolé Beauchesne |