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.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
Comment Actions
I've merged DtprelHi and TprelHi into a single node rather providing two copies
of their functionality.