From: Robert M. <mr...@gm...> - 2012-07-03 17:16:45
|
I concur. My 64-bit BaxiliskII compiles, but when run, it gives the error: x86-64 implementations are bound to have CMOV! Abort trap I diagnosed this, and found it is because BasiliskII uses its runtime JIT to try to determine if the CPU implements the CMOV instruction, which fails because the JIT uses pre-compiled snippets of assembly code that use the standard register set (i386 and GCC 4.x runtime model). But when compiling for x86_64, the registers and runtime model are all different, causing GCC's register save and restore instructions to defeat the intended action of the JIT-compiled code snippets. The CMOV works, but the moved result gets clobbered by GCC's well-intentioned save and restores. For a full explanation, see: http://mrob.com/pub/comp/basilisk-ii.html#temp_reg_bug The solution is to stop using the GCC compiler at build time to generate the snippets that the JIT uses at runtime. Instead, all the snippets used for the JIT virtual machine should be assembled once, and included as raw object code, in the source distribution. Then at runtime, the JIT should strings these bits of object code together the same way it does now. The difference is, we'll no longer be using the compiler at build time to try to turn assembly language source into 80x86 object code. This will also fix the incompatibility with new versions of GCC, with LLVM/Clang, and any other future compilers or development systems. Who knows, it might even work with Microsoft or Intel compilers some day (-: - Robert Munafo On 7/3/12, Ronald P. Regensburg <ron...@xs...> wrote: > I noticed the commit "Use clip_macosx64.mm for BasiliskII 64-bit builds > too." > > However, I have never been able to build a working 64-bit BasiliskII MacOSX. > And as far as I know, no one has. > > In Snow Leopard I can build a 32-bit BasiliskII fine. Attempts to build a > 64-bit application result at best in a x86_64 application that crashes on > launch. > > Can a 64-bit BasiliskII MacOSX be build from current source? If so, how? > > Ronald. -- Robert Munafo -- mrob.com Follow me at: gplus.to/mrob - fb.com/mrob27 - twitter.com/mrob_27 - mrob27.wordpress.com - youtube.com/user/mrob143 - rilybot.blogspot.com |