From: <gb...@di...> - 2001-01-05 22:51:42
|
Hi, > > PS: Christian, could you please rerun your tests for "Julia's Dream" ? > > This seems to work fine now, but I get lots of random crashes with the > emulator. The average runtime is about 30 seconds before it crashes > (usually "do_handle_screen_fault: unhandled address", but also "Illegal > instruction"). This is on a PIII with Debian 2.2 and gcc 2.95.2. Yes, I also noticed that for small translation cache sizes. e.g. 256 KB or 512 KB. With a much higher cache, say 8 MB, things are more stable and also much faster. As for the cause to the problem, I am pretty sure it is related to the way I handle spcflags and the condition/process to get out of compiled code once a real ("hard") translation cache flush occured. I had experimented a few other approaches but with no avail :-/ It's probably not related to spcflags after all. You know, I find pretty hard to debug B2 because I can't use gdb. Indeed, whenever I set up a breakpoint, gdb would not stop and finally makes B2 to exit with a (-1) return value. Therefore, I am currently condamned to read and re-read the source code and experiment a few things with runtime disassemblers and some other techniques I am not proud of... > > PPS: I removed compiler.{cpp,h} in my sources. Do you still want those > > for future normal B2 releases (CVS) ? > > Anything that is unneeded can go. Actually, the JIT compiler normally does 68020 up to 68040. the original compiler was to support 68000 only. Is it worth "supporting" that CPU ? How many people do really emulate a Classic Mac ? ;-) > > B2-JIT only does 68040 though it should also work for 68020 and 68030 > > cpus, but actually doesn't... > > Caching issues? Yes, probably. I already had that problem in the past and fixed that in a previous release. The problem is that I don't remember how since I was fixing other bugs I thought unrelated to that problem. i.e. some day, I wanted to try in 68030 mode again and it automagically worked... But there is definitively a cache problem since the JIT compiler would also get disabled forever once the Desktop shows up. |