Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> […] 2GB maximum offsets in the .text section

… on the x86 ISA because it encodes the 32-bit jump/call offset directly in the opcode.

Whilst most RISC architecture do allow PC-relative branches, the offset is relatively small as 32-bit opcodes do not have enough room to squeeze a large offset in.

«Long» jumps and calls are indirect branches / calls done via registers where the entirety of 64 bits is available (address alignment rules apply in RISC architectures). The target address has to be loaded / calculated beforehand, though. Available in RISC and x86 64-bit architectures.





Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: