Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

64-bit long mode compatability with 32-bit instructions-GAS (Developers)

posted by Oso2k(R), 23.01.2014, 01:34

> Now it seems to work. Do I really need to make branching for 32-bit and
> 64-bit platform? Does it mean that if CPU is in long mode it is not
> compatible with 32b (and 16b) instructions? Then how does 64-bit windows
> run older 32-bit apps without recompiling? I know that it use some WoW64
> layer but I don't know what it is exactly doing. If I would use long mode
> under DOS then do I need to write all in 64-bit asm (otherwise will I got
> invalid opcode exception)?

My understanding (though I have yet to read extensively) is that x86-64 mode is incompatible with all previous modes, at least as implemented by Apple and, Windows. Essentially, this means they operate in Long-mode/64-bit mode. Linux/gcc supports "multilib" as you know, but I would have to venture a guess the ELF header is different or used as a signal to enter "Long mode/compatibility mode.

 

Complete thread:

Back to the forum
Board view  Mix view
15115 Postings in 1359 Threads, 249 registered users, 18 users online (0 registered, 18 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum