<div dir="ltr">Hi all,<div><br></div><div>the patches for the proposal are waiting in the review for quite some time. </div><div>I am looking for people familiar with intrinsics, InstCombine and some other transform passes to review these 2 patches:</div><div><br></div><div><a href="https://reviews.llvm.org/D47103">https://reviews.llvm.org/D47103</a><br></div><div><a href="https://reviews.llvm.org/D47423">https://reviews.llvm.org/D47423</a><br></div><div><br></div><div>As a motivation, I can say that initial measurements on LNT show nice performance boost (80% on one microbenchmark, ~0.7% on 7zip)</div><div><br></div><div>Cheers,</div><div><br></div><div>Piotr</div><br><div class="gmail_quote"><div dir="ltr">pt., 30 mar 2018 o 19:33 John McCall <<a href="mailto:rjmccall@apple.com">rjmccall@apple.com</a>> napisał(a):<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word;line-break:after-white-space"><div><blockquote type="cite"><div>On Mar 30, 2018, at 12:49 PM, Duncan P. N. Exon Smith <<a href="mailto:dexonsmith@apple.com" target="_blank">dexonsmith@apple.com</a>> wrote:</div><div><div style="word-wrap:break-word;line-break:after-white-space"><div><blockquote type="cite"><div>On Mar 30, 2018, at 09:39, John McCall via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>> wrote:</div><br class="m_3272172826149837371Apple-interchange-newline"><div><div style="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;text-decoration:none"><blockquote type="cite"><div>On Mar 30, 2018, at 10:36 AM, Piotr Padlewski <<a href="mailto:piotr.padlewski@gmail.com" target="_blank">piotr.padlewski@gmail.com</a>> wrote:</div><div><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><br></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><br></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></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></div></div></blockquote><br></div><div>If that's true now, great; I know the scheme has been changed a lot since I last looked at it.  I could also be misremembering what it was when I last looked at it, of course.</div><div><br></div><div>John.</div></div></blockquote></div></div>