[PATCH] Fix for PR15086
Dimitry Andric
dimitry at andric.com
Tue Nov 19 12:24:30 PST 2013
On 13 Nov 2013, at 16:31, Rafael EspĂndola <rafael.espindola at gmail.com> wrote:
> I *think* this is a fine improvement, but please add
>
> * A comment saying why jmp foo at PLT is not valid or when it would be valid.
Rafael, did you mean a comment in X86ISelLowering.cpp? I think a jmp foo at PLT is only valid if the stack is setup so the callee can correctly pop it, if needed, and the return types are exactly the same?
> * A note in tailcallpic2.ll saying that it could be optimized to a
> direct call (no got, no plt). We don't implement ELF's interposition
> logic, but then pretend we do during codegen. This patch doesn't need
> to fix that, but should note that we could do better.
Ok, that is easily done.
On 13 Nov 2013, at 23:39, Nick Lewycky <nlewycky at google.com> wrote:
> Sorry, I forgot about this thread entirely. I generally don't approve non-trivial changes under lib/Target and lib/CodeGen, I'd rather somebody else with more assembly/object file/backend knowledge took a look.
Nick, do you feel this is now reviewed enough? I think this is a pretty low-risk change in itself, it only disables an optimization that might lead to trouble, and only on x86/GOT-style platforms. Improving some edge cases (like the direct call Rafael mentioned) can easily be done later, but I would really like to get this change in for the 3.4 release. :-)
-Dimitry
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 203 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20131119/5a043d85/attachment.sig>
More information about the llvm-commits
mailing list