https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96347

Iain Buclaw <ibuclaw at gdcproject dot org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #48946|0                           |1
        is obsolete|                            |

--- Comment #4 from Iain Buclaw <ibuclaw at gdcproject dot org> ---
Created attachment 48953
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=48953&action=edit
delegitimize mem(plus (unspec reg) tls)

Second patch, this time dealing with the following insn
---
(mem/f/c:DI (plus:DI (unspec:DI [
                (const_int 0 [0])
            ] UNSPEC_TP)
        (reg:DI 89)) [1 MEM <int *> [(struct Darray *)&testYearsBC + 8B]+0 S8
A64])
---

After ix86_delegitimize_tls_address, it becomes
---
(mem/f/c:DI (reg/f:DI 6 bp [90]) [1 MEM <int *> [(struct Darray *)&testYearsBC
+ 8B]+0 S8 A64])
---

Doesn't change assembly produced for given test, but alters debug output:
---
@@ -1105,12 +1105,9 @@ testYearsBC:
 .LLST4:
        .quad   .LVL7
        .quad   .LVL8-1
-       .value  0xd
-       .byte   0xe
-       .long   testYearsBC@dtpoff, 0
-       .byte   0xe0
-       .byte   0x23
-       .uleb128 0x8
+       .value  0x3
+       .byte   0x76
+       .sleb128 0
        .byte   0x6
        .quad   0
        .quad   0
@@ -1148,15 +1145,12 @@ testYearsBC:
 .LLST6:
        .quad   .LVL9
        .quad   .LVL9
-       .value  0x11
+       .value  0x7
        .byte   0x50
        .byte   0x93
        .uleb128 0x8
-       .byte   0xe
-       .long   testYearsBC@dtpoff, 0
-       .byte   0xe0
-       .byte   0x23
-       .uleb128 0x8
+       .byte   0x76
+       .sleb128 0
        .byte   0x93
        .uleb128 0x8
        .quad   0
@@ -1167,15 +1161,12 @@ testYearsBC:
 .LLST7:
        .quad   .LVL9
        .quad   .LVL9
-       .value  0x11
+       .value  0x7
        .byte   0x50
        .byte   0x93
        .uleb128 0x8
-       .byte   0xe
-       .long   testYearsBC@dtpoff, 0
-       .byte   0xe0
-       .byte   0x23
-       .uleb128 0x8
+       .byte   0x76
+       .sleb128 0
        .byte   0x93
        .uleb128 0x8
        .quad   0
---

Reply via email to