[PATCH] x86: Remove duplicated I386_PCREL_TYPE_P/X86_64_PCREL_TYPE_P
Jan Beulich
jbeulich@suse.com
Thu Jan 5 16:52:55 GMT 2023
On 05.01.2023 17:50, H.J. Lu wrote:
> On Wed, Jan 4, 2023 at 11:42 PM Jan Beulich <jbeulich@suse.com> wrote:
>>
>> On 04.01.2023 20:14, H.J. Lu via Binutils wrote:
>>> I386_PCREL_TYPE_P and X86_64_PCREL_TYPE_P are defined twice. Remove
>>> the duplications.
>>
>> I recall noticing this as well, quite some time back, but I didn't feel
>> like touching it because I was puzzled by ...
>>
>>> --- a/bfd/elfxx-x86.h
>>> +++ b/bfd/elfxx-x86.h
>>> @@ -97,13 +97,6 @@
>>> #define PLT_FDE_START_OFFSET 4 + PLT_CIE_LENGTH + 8
>>> #define PLT_FDE_LEN_OFFSET 4 + PLT_CIE_LENGTH + 12
>>>
>>> -#define I386_PCREL_TYPE_P(TYPE) ((TYPE) == R_386_PC32)
>>
>> ... this not including PC8 and PC16 when ...
>
> This is I386_PCREL_TYPE_P.
>
>>> -#define X86_64_PCREL_TYPE_P(TYPE) \
>>> - ((TYPE) == R_X86_64_PC8 \
>>> - || (TYPE) == R_X86_64_PC16 \
>>> - || (TYPE) == R_X86_64_PC32 \
>>> - || (TYPE) == R_X86_64_PC64)
>>
>> ... this does.
>
> This is X86_64_PCREL_TYPE_P, not I386_PCREL_TYPE_P.
>
>> Jan
>
> The current ones have
>
> #define X86_64_PCREL_TYPE_P(TYPE) \
> ((TYPE) == R_X86_64_PC8 \
> || (TYPE) == R_X86_64_PC16 \
> || (TYPE) == R_X86_64_PC32 \
> || (TYPE) == R_X86_64_PC64)
> #define I386_PCREL_TYPE_P(TYPE) ((TYPE) == R_386_PC32)
>
> and the ones I removed are
>
> -#define I386_PCREL_TYPE_P(TYPE) ((TYPE) == R_386_PC32)
> -#define X86_64_PCREL_TYPE_P(TYPE) \
> - ((TYPE) == R_X86_64_PC8 \
> - || (TYPE) == R_X86_64_PC16 \
> - || (TYPE) == R_X86_64_PC32 \
> - || (TYPE) == R_X86_64_PC64)
>
> They are identical.
That wasn't the question, though. I really did ask about the 32-bit vs
64-bit difference, which looks suspect to me.
Jan
More information about the Binutils
mailing list