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

            Bug ID: 25062
           Summary: arm: R_ARM_TLS_GOTDESC negative addend is not handled
                    on 64bit host
           Product: binutils
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: ld
          Assignee: unassigned at sourceware dot org
          Reporter: nsz at gcc dot gnu.org
  Target Milestone: ---

negative R_ARM_TLS_GOTDESC addend is not handled by ld
on 64-bit host, which can crash ld.

$ cat x.s
        .text
        .globl foo
        .type foo, %function
foo:
1:
        .word   tlsdata(tlsdesc) + (. - 2f)
2:
        blx     tlsdata(tlscall)

        .section .tdata,"awT"
tlsdata:
        .space  4
$ arm-none-linux-gnueabihf-as -o x.o x.s
$ arm-none-linux-gnueabihf-objdump -rdw x.o

x.o:     file format elf32-littlearm


Disassembly of section .text:

00000000 <foo>:
   0:   fffffffc        .word   0xfffffffc      0: R_ARM_TLS_GOTDESC    tlsdata
   4:   fa000000        blx     8 <foo+0x8>     4: R_ARM_TLS_CALL       tlsdata
$ arm-none-linux-gnueabihf-ld -shared x.o
Segmentation fault (core dumped)

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils

Reply via email to