<html><head><meta http-equiv="Content-Type" content="text/html; charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><br class=""><div><br class=""><blockquote type="cite" class=""><div class="">On Mar 30, 2018, at 09:39, John McCall via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" class="">llvm-dev@lists.llvm.org</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><blockquote type="cite" class=""><div class="">On Mar 30, 2018, at 10:36 AM, Piotr Padlewski <<a href="mailto:piotr.padlewski@gmail.com" class="">piotr.padlewski@gmail.com</a>> wrote:</div><div class=""><div dir="ltr" class=""><div class="gmail_extra"><div class="gmail_quote"><br class=""></div></div><div class="gmail_extra">Do you know any other specific situations and metadata that would require, or would be good if would use the same solution?</div></div></div></blockquote><div class=""><br class=""></div>Ah, sure. It's probably the right solution for TBAA metadata compatibility as well. Different compilers are likely to use different TBAA tag hierarchies, just because they have different rules for aliasing. In the absence of some way of officially declaring them compatible, we should assume they're incompatible and strip them during inlining. In fact, it's probably true that *most* annotation approaches are frontend-specific and should be stripped when merging information from different frontends.</div></div></blockquote><div><br class=""></div><div>IIRC, the root for TBAA metadata is an identifier tag for the schema. This prevents incompatible TBAA schemas from interacting with each other without having to strip either one.</div></div><br class=""></body></html>