diff options
author | Simon Atanasyan <simon@atanasyan.com> | 2018-07-24 13:47:52 +0000 |
---|---|---|
committer | Simon Atanasyan <simon@atanasyan.com> | 2018-07-24 13:47:52 +0000 |
commit | 28ded4ee196e89953b37f05c76b5f2647ebaa2fe (patch) | |
tree | ca098f3e6d3b7d91e79f86040f739b3a060a6ecf /llvm/lib/Transforms | |
parent | 356c2aeffe3d990f3ca1bcad68c6c622a41b29ff (diff) | |
download | bcm5719-llvm-28ded4ee196e89953b37f05c76b5f2647ebaa2fe.tar.gz bcm5719-llvm-28ded4ee196e89953b37f05c76b5f2647ebaa2fe.zip |
[mips] Fix local dynamic TLS with Sym64
For the final DTPREL addition, rather than a lui/daddiu/daddu triple,
LLVM was erronously emitting a daddiu/daddiu pair, treating the %dtprel_hi
as if it were a %dtprel_lo, since Mips::Hi expands unshifted for Sym64.
Instead, use a new TlsHi node and, although unnecessary due to the exact
structure of the nodes emitted, use TlsHi for local exec too to prevent
future bugs. Also garbage-collect the unused TprelLo and TlsGd nodes,
and TprelHi since its functionality is provided by the new common TlsHi node.
Patch by James Clarke.
Differential revision: https://reviews.llvm.org/D49259
llvm-svn: 337827
Diffstat (limited to 'llvm/lib/Transforms')
0 files changed, 0 insertions, 0 deletions