<div dir="ltr">I think it's simple enough to not matter much, but it feels like it's a useless change without the context (apart from the story in the email, which makes a lot of sense). I mean, in the long run people won't read your email and the commit would look useless and detached from the AArch64 back-end, which is the whole point.<div style>
<br></div><div style>Can't you join this when you add the lot of AArch64 fixups?</div><div style><br></div><div style>On a side note, maybe other fixup should be handled the same way, instead of polluting the common namespace...</div>
<div style><br></div><div style>cheers,</div><div style>--renato</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On 9 January 2013 14:13, Tim Northover <span dir="ltr"><<a href="mailto:Tim.Northover@arm.com" target="_blank">Tim.Northover@arm.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi all,<br>
<br>
ELF ABIs require that TLS symbols should have type STT_TLS. This is<br>
implemented via the function MCELFStreamer::fixSymbolsInTLSFixups. However,<br>
this function cannot delve into an MCTargetExpr at the moment.<br>
<br>
In practice this means that existing targets put their TLS operand variants<br>
into the global namespace (VK_ARM_TLSGD, VK_Mips_DTPREL_HI, ...). However, the<br>
AArch64 target has more of these modifiers than all other targets combined and<br>
I felt it was inappropriate to pollute the global space for them.<br>
<br>
This patch adds a virtual callback to MCTargetExpr so that analysis doesn't<br>
stop at this barrier and the work can be delegated to the target.<br>
<br>
I believe this can be improved further; the implementatoin of<br>
MCTargetExpr::fixELFSymbolsInTLSFixups involves more duplication than I'd<br>
like. However, I would prefer to delay this further refactoring until AArch64<br>
is committed since it would provide an example use to reason from more easily.<br>
<br>
Can I commit it?<br>
<br>
Cheers.<br>
<span class="HOEnZb"><font color="#888888"><br>
Tim.</font></span><br>_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
<br></blockquote></div><br></div>