[LLVMbugs] [Bug 16814] New: support TLSDESC and TLSCALL / GNU2 tls dialect.

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Tue Aug 6 20:32:44 PDT 2013


http://llvm.org/bugs/show_bug.cgi?id=16814

            Bug ID: 16814
           Summary: support TLSDESC and TLSCALL / GNU2 tls dialect.
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: MC
          Assignee: unassignedbugs at nondot.org
          Reporter: nlewycky at google.com
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified

MC doesn't support the TLS relocations in the GNU2 TLS dialect.

$ cat t.s
__cxa_get_globals:
        leaq    _ZL3ccc at TLSDESC(%rip), %rax
        call    *_ZL3ccc at TLSCALL(%rax)
        addq    %fs:0, %rax
        ret

$ gcc -c t.s -o t.o
$ objdump -dr t.o

t.o:     file format elf64-x86-64


Disassembly of section .text:

0000000000000000 <__cxa_get_globals>:
   0:   48 8d 05 00 00 00 00    lea    0x0(%rip),%rax        # 7
<__cxa_get_globals+0x7>
                        3: R_X86_64_GOTPC32_TLSDESC     _ZL3ccc-0x4
   7:   ff 10                   callq  *(%rax)
                        7: R_X86_64_TLSDESC_CALL        _ZL3ccc
   9:   64 48 03 04 25 00 00    add    %fs:0x0,%rax
  10:   00 00 
  12:   c3                      retq   
$ llvm/Debug+Asserts/bin/clang t.s -c -o t.o
t.s:2:32: error: invalid variant 'TLSDESC'
        leaq    _ZL3ccc at TLSDESC(%rip), %rax
                               ^
t.s:3:33: error: invalid variant 'TLSCALL'
        call    *_ZL3ccc at TLSCALL(%rax)
                                ^

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20130807/6008f87c/attachment.html>


More information about the llvm-bugs mailing list