Jump to page: 1 2
Thread overview
[Issue 4181] GDB prints wrong value of TLS variables
Oct 07, 2014
Martin Krejcirik
Oct 08, 2014
Martin Krejcirik
Oct 10, 2014
Brad Roberts
Oct 10, 2014
Martin Krejcirik
Oct 10, 2014
Brad Roberts
Oct 10, 2014
Martin Krejcirik
Oct 10, 2014
Martin Nowak
Oct 10, 2014
Martin Krejcirik
Oct 11, 2014
Iain Buclaw
Oct 11, 2014
Martin Krejcirik
Oct 11, 2014
Iain Buclaw
October 07, 2014
https://issues.dlang.org/show_bug.cgi?id=4181

Martin Krejcirik <mk@krej.cz> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |pull

--- Comment #14 from Martin Krejcirik <mk@krej.cz> ---
https://github.com/D-Programming-Language/dmd/pull/4053

--
October 08, 2014
https://issues.dlang.org/show_bug.cgi?id=4181

--- Comment #15 from Martin Krejcirik <mk@krej.cz> ---
Note: if, with the above pull, you experience high tls offset like this:

(gdb) p _D4test1xi
Cannot access memory at address 0x7ffff8434e50
(gdb) info address _D4test1xi
Symbol "test.x()" is a thread-local variable at offset 0x45e6f0 in the
thread-local storage for `/home/dawg/Code/D/test'.

It may be caused by ld.gold linker during program build time. Use ld.bfd.

--
October 10, 2014
https://issues.dlang.org/show_bug.cgi?id=4181

--- Comment #16 from github-bugzilla@puremagic.com ---
Commits pushed to master at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/aa9812bef7e8aadb1495c474f7587f8481077ab8 Fix Issue 4181 - GDB prints wrong value of TLS variables

- add DWARF_VERSION to dwarf.h
- emit DW_OP_GNU_push_tls_address or DW_OP_form_tls_address based on
DWARF_VERSION

https://github.com/D-Programming-Language/dmd/commit/11842652cdc58f479590af618c79335ba44af03f Merge pull request #4053 from tramker/bug4181

Fix Issue 4181 - GDB prints wrong value of TLS variables

--
October 10, 2014
https://issues.dlang.org/show_bug.cgi?id=4181

--- Comment #17 from Brad Roberts <braddr@puremagic.com> ---
I believe we'd gotten the dmd codegen and debug gen to the point that ld.gold was happy.  This fix is incomplete as long as ld.gold isn't happy.  It should either be re-opened or a followup ld.gold specific bug filed.  imho.

--
October 10, 2014
https://issues.dlang.org/show_bug.cgi?id=4181

--- Comment #18 from Martin Krejcirik <mk@krej.cz> ---
I think it's a bug in ld.gold which has been fixed recently:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commit;h=5efeedf61e4fe720fd3e9a08e6c91c10abb66d42

--
October 10, 2014
https://issues.dlang.org/show_bug.cgi?id=4181

--- Comment #19 from Brad Roberts <braddr@puremagic.com> ---
Can you confirm?  Either way, thanks for the research.

--
October 10, 2014
https://issues.dlang.org/show_bug.cgi?id=4181

--- Comment #20 from Martin Krejcirik <mk@krej.cz> ---
Yes, I can confirm it works on Fedora 20 x86_64 with ld.gold from git (GNU Binutils 2.24.51.20141010). Debian wheezy seems not affected.

--
October 10, 2014
https://issues.dlang.org/show_bug.cgi?id=4181

--- Comment #21 from Martin Nowak <code@dawg.eu> ---
I didn't had any problems with this patch and my default ld.gold (2.23.2)
version.
Also the linked binutils issue seems unrelated.

--
October 10, 2014
https://issues.dlang.org/show_bug.cgi?id=4181

--- Comment #22 from Martin Krejcirik <mk@krej.cz> ---
I did find out. My original patch din't work with the stock (2.23.2) ld.gold. Merged version is not affected. So all is well.

--
October 11, 2014
https://issues.dlang.org/show_bug.cgi?id=4181

--- Comment #23 from Iain Buclaw <ibuclaw@gdcproject.org> ---
Just a note from my side (as I've been silent on this).

Further changes in GDB instead re-exposed this bug.  I had looked at the area PR fixed, and while I could see in the codegen what the dmd backend was doing wrong, I do not have the time to figure out how to make dmd more conformant.

--
« First   ‹ Prev
1 2