On Thu, 2010-01-07 at 13:46 +0800, Qing Wang wrote: > Hi Andrew, > > What if I have no shared library in the project? > All code is written by us, you can regard it as a small kernel. > > Thanks. > Qing > _________________________________________________________________ Hi Qing, If all the code is yours, why would you want to mix 32- and 64-bit? >From one of your earlier posts it sounds like you wish to run in 32-bit, but switch to 64-bit when you need to access a larger memory space. To be blunt, that's a bad idea. My first experience with backward compatibility was porting Data General Nova 3 code to a DG Eclipse in 1978. That one was supposed to work "out of the box." That is, the Eclipse was supposed to be a superset of the Nova 3. I spent the next three months modifying the code that became specific to the Eclipse. I've had many experiences since that show "backward compatible" never is 100%. The x86-64 64-bit mode is not even supposed to be backward compatible with 32-bit mode. They are two different modes. My prediction is that if you try to switch back and forth between the two modes in one program, you will be creating many headaches for yourself. So my question is, since the code is all yours, why not just compile it all for 64-bit mode? --Bob