[PATCH] D29392: [ELF] - Change value checks to checkUInt for R_386_8/R_386_PC8/R_386_16/R_386_PC16 relocations.
George Rimar via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Feb 2 08:48:33 PST 2017
grimar added a comment.
So, I found that my minimal kernel configuration is also affected by that issue some point.
I am observing R_386_PC8 relocation which is fails with new check because has value 358 == 0x166.
BFD output for that place (so it is just truncated to 8 bits and BFD does not complain about):
200: eb 66 jmp 268 <start_of_setup>
If I comment out that check, we produce the same.
The code that produces this relocation is:
# Explicitly enter this as bytes, or the assembler
# tries to generate a 3-byte jump here, which causes
# everything else to push off to the wrong offset.
.byte 0xeb # short (2-byte) jump
I'll investigate that place deeper tomorrow.
More information about the llvm-commits