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