[llvm-dev] RFC: Drop support for old style scalar TBAA

Duncan P. N. Exon Smith via llvm-dev llvm-dev at lists.llvm.org
Tue Nov 8 13:09:47 PST 2016


> On 2016-Nov-08, at 12:14, Sanjoy Das <sanjoy at playingwithpointers.com> wrote:
> 
> On Tue, Nov 8, 2016 at 8:31 AM, Duncan P. N. Exon Smith
> <dexonsmith at apple.com> wrote:
>> Seems like a nice cleanup to me!
>> 
>>> On 2016-Nov-07, at 13:01, Sanjoy Das via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>>> 
>>> Hi all,
>>> 
>>> I want to clarify / emphasize two things based on an off-list
>>> conversation:
>>> 
>>> - The bitcode and IR parser both auto upgrade old style TBAA to the
>>>  newer TBAA struct tags.
>> 
>> Shouldn't we drop the textual IR auto-upgrade?  I'd rather fail in the verifier, since we don't aim for textual IR compatibility anyway.  (Could be done as follow-up, and it would be nice to attach an upgrade script to a PR or on the list or something.)
> 
> Honestly, the upgrade code is simple enough that I don't think it's a
> net win to delete.

It's more for the principle than anything else... it's inconsistent to support upgrading some things and not support upgrading others.

> What I can do is make the textual IR tbaa auto-upgrade controlled by
> an off by default option.  That way you get the stricter behavior by
> default but you can flip back to the gentler behavior if you'd rather
> not edit all your IR files now.
> 
> What do you think?

I'm strongly against adding an option.  But otherwise I'm not too concerned about this.  Feel free to leave the upgrade path in if you think it's valuable; we can always remove the cruft later.


More information about the llvm-dev mailing list