[PATCH] D45180: libcalls must check for "RtLibUseGOT" metadata during simplification

Rafael Avila de Espindola via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 2 18:31:21 PDT 2018


Sriraman Tallam via llvm-commits <llvm-commits at lists.llvm.org> writes:

> On Mon, Apr 2, 2018, 5:57 PM Rafael Avila de Espindola via Phabricator <
> reviews at reviews.llvm.org> wrote:
>
>> espindola requested changes to this revision.
>> espindola added a comment.
>> This revision now requires changes to proceed.
>>
>> >> Given that we have nonlazybind on each GV, if we are replacing the
>> printf GV with the puts GV we should copy nonlazybind from one to the other.
>> >
>> > This is not happening for any attribute of printf right now and some
>> attributes simply cannot be copied over so this doesn't seem easy to do.
>>
>> That just means you found the first case where we have to do it. Being
>> hard is also not a reason for doing the wrong thing.
>>
>
>
> That's not what I implied! It is not clear to me how you would go about
> doing this and if this is worth it at all. There are attributes you should
> not copy over and reason about what are the common attributes. If you have
> a plan here I am all ears , :) thanks!

I don't have a plan, but that doesn't make this right.

If we are to have nonlazybind in printf, everything accessing printf
should honor it, including when it is transformed into puts.

Cheers,
Rafael


More information about the llvm-commits mailing list