2021年3月24日星期三

Conditional jump to memory address

Is something like the following possible?

cmp $3, %rdi  jz (%r11)  

file.s:52: Error: operand type mismatch for `jz'

Or:

Warning: indirect jmp without `*'

Or do you have to jump 'through' a label which can then do the jmp %r11. Or how does that work?

It seems there are at least a few things going on here, but one of them is:

  • Giving a warning unless I change jmp %r11 to jmp *%r11 (why?)

Currently what I'm doing is the roundabout:

cmp $3, %rdi  jz fast_ret    fast_ret:      jmp *%r11  
https://stackoverflow.com/questions/66792007/conditional-jump-to-memory-address March 25, 2021 at 09:59AM

没有评论:

发表评论