bug-binutils
[Top][All Lists]
Advanced

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

[Bug gas/25551] New: R_X86_64_PLT32 referencing .L should not emit an ou


From: i at maskray dot me
Subject: [Bug gas/25551] New: R_X86_64_PLT32 referencing .L should not emit an outstanding relocation
Date: Thu, 13 Feb 2020 19:29:26 +0000

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

            Bug ID: 25551
           Summary: R_X86_64_PLT32 referencing .L should not emit an
                    outstanding relocation
           Product: binutils
           Version: unspecified
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: gas
          Assignee: unassigned at sourceware dot org
          Reporter: i at maskray dot me
  Target Milestone: ---

Context: https://github.com/ClangBuiltLinux/linux/issues/872

        .section        .init.text,"ax",@progbits
        call    .Lprintk$local
                                        # -- End function
        .text
        .globl  printk                  # -- Begin function printk
        .type   printk,@function
printk:                                 # @printk
.Lprintk$local:
 ret


% as a.s -o a.o
% readelf -Wrs a.o

Relocation section '.rela.init.text' at offset 0x108 contains 1 entry:
     Offset             Info             Type               Symbol's Value 
Symbol's Name + Addend
     0000000000000001  0000000500000004 R_X86_64_PLT32     0000000000000000
.Lprintk$local - 4
...
      5: 0000000000000000     0 NOTYPE  LOCAL  DEFAULT    1 .Lprintk$local


Delete `.section        .init.text,"ax",@progbits`, and there will be no
relocation.



R_X86_64_PC32 does not emit the relocation. call .Lprintk$local emits an
R_X86_64_PC32 before:

    commit bd7ab16b4537788ad53521c45469a1bdae84ad4a
    Author: H.J. Lu <address@hidden>
    Date:   Tue Feb 13 07:34:22 2018 -0800

        x86-64: Generate branch with PLT32 relocation



https://sourceware.org/ml/binutils/2020-02/msg00243.html should fix the bug.

-- 
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]