On Tue, May 12, 2015 at 11:22 PM, Jan Beulich <jbeul...@suse.com> wrote: >>>> On 12.05.15 at 20:42, <hjl.to...@gmail.com> wrote: >> Here is the updated proposal. I changed nop prefix from 0x48 >> to 0x67 and clarified how foo@GOTPCREL(%rip) should be >> resolved. > > Mind clarifying how 67 is better than 48?
0x67 works for both x86-64 and i386. We can use the same byte for the "relax" prefix. >> I am proposing to add 2 new relocations, R_X86_64_RELAX_PC32 and >> R_X86_64_RELAX_PLT32: >> >> 1. They can only be used on 32-bit direct call/jmp instructions. >> 2. call/jmp instructions must have a 0x67 prefix, which is the address >> size prefix and is ignored by 32-bit direct call/jmp instructions. > > The same could have been said several years ago about segment > overrides used with conditional branches, yet they obtained a > meaning (even if only affecting performance, not correctness). Is > it anywhere publicly stated that the address size override will > continue to be ignored? I will ask to put it in Intel SDM. -- H.J.