- Code: Select all
interruptstubs.s:35: Error: `pusha' is not supported in 64-bit mode
interruptstubs.s:36: Error: invalid instruction suffix for `push'
interruptstubs.s:37: Error: invalid instruction suffix for `push'
interruptstubs.s:38: Error: invalid instruction suffix for `push'
interruptstubs.s:39: Error: invalid instruction suffix for `push'
interruptstubs.s:41: Error: invalid instruction suffix for `push'
interruptstubs.s:47: Error: invalid instruction suffix for `pop'
interruptstubs.s:48: Error: invalid instruction suffix for `pop'
interruptstubs.s:49: Error: invalid instruction suffix for `pop'
interruptstubs.s:50: Error: invalid instruction suffix for `pop'
interruptstubs.s:51: Error: `popa' is not supported in 64-bit mode
And its my code:
- Code: Select all
pusha
pushl %ds
pushl %es
pushl %fs
pushl %gs
pushl %esp
push (interruptnumber)
call _ZL15handleInterrupthj
# addl $5, %esp
movl %eax, %esp
popl %gs
popl %fs
popl %es
popl %ds
popa
Any x64 instruction format for alternative with "pushl"? Also i used pushq for x64 bit instruction but that was not match with %gs or %ds.