bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug gold/21285] R_386_GOT32 for baseless case looks implemented incorre


From: georgerim at gmail dot com
Subject: [Bug gold/21285] R_386_GOT32 for baseless case looks implemented incorrectly.
Date: Thu, 23 Mar 2017 07:56:58 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=21285

--- Comment #1 from georgerim at gmail dot com ---
So gold implementation assumes that movl address@hidden, %eax is always encoded 
using
0x8b, what is wrong, I think.

Because ABI says:
(https://github.com/hjl-tools/x86-psABI/wiki/intel386-psABI-1.1.pdf and
https://github.com/hjl-tools/x86-psABI/wiki/intel386-psABI-draft.pdf p37)
"mov address@hidden, %eax must be encoded with opcode 0x8b, not 0xa0, to allow 
linker
optimization."

R_386_GOT32 is not supposed to be optimized, R_386_GOT32X is used for
optimizations. That I believe means that using 0xa1 for encoding mov 0x0,%eax
with R_386_GOT32 relocation is correct. And gold behavior is broken now.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]