This is an archive of the discontinued LLVM Phabricator instance.

[LangRef] Reflect the changes in the TBAA info format
AcceptedPublic

Authored by kosarev on Dec 7 2017, 11:25 AM.

Details

Reviewers
hfinkel
rjmccall

Diff Detail

Event Timeline

kosarev created this revision.Dec 7 2017, 11:25 AM
asl added a subscriber: asl.Dec 7 2017, 2:06 PM
hfinkel edited edge metadata.Dec 11 2017, 5:46 AM

I think that we're on the same page. I'll also start reviewing the other patches.

docs/LangRef.rst
4592

Types with different roots have an unknown aliasing relationship, and LLVM conservatively infers `MayAlias` between them. -> TBAA metadata provides no aliasing information about types with different roots.

4601

identifier nodes -> metadata strings

4635

You've not defined direct or indirect field anywhere. Please do.

4670

Please also add a union to this example.

kosarev updated this revision to Diff 126517.Dec 12 2017, 3:15 AM

Updated as suggested.

hfinkel accepted this revision.Dec 14 2017, 3:18 PM

This is good. Don't commit it, however, until it's meaningful (i.e., once the corresponding implementation lands).

docs/LangRef.rst
4632–4639

the base -> The base

4635

the base -> The base

4671

I thought that, in the new format, we were going to support unions by allowing multiple fields at the same offset. Are you planning to just do that as a follow-up set of patches?

This revision is now accepted and ready to land.Dec 14 2017, 3:18 PM
kosarev added inline comments.Dec 19 2017, 6:38 AM
docs/LangRef.rst
4629

It seems I forgot the case when one type encloses the other. Will fix on publishing the patch for the analysis machinery.

4671

Yes, it would help if we can address unions with a separate patch set.

This looks like a nice change.

docs/LangRef.rst
4668

Potentially confusing typo here. AccessType should be Float.

4686

The descriptor for U should be added here as well.

4727

The descriptor for U should probably be added here also.

rehana added a subscriber: rehana.Feb 1 2018, 10:29 AM
rehana added inline comments.
docs/LangRef.rst
4620–4622

It's not very clear. Adding an array in the example would be helpful.