<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jan 6, 2022 at 9:54 AM James Y Knight via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jan 6, 2022 at 12:05 PM Philip Reames via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">+1 from me.<br>
<br>
As an aside, has anyone looked at memoizing the strings used for string <br>
attributes?  In practice, there tend to be a very small number of unique <br>
strings which are heavily reused.  If we had a string table for the <br>
attribute strings, we could hold the index in the Attribute itself, and <br>
reduce storage fairly significantly. (Well, assuming we implemented the <br>
small string optimization to handle the case where the attribute name is <br>
shorted than the index size.)</blockquote><div><br></div><div>While folks are fiddling with attributes -- maybe someone would like to consider allowing non-string-keyed attributes to have string values? It's always seemed quite odd that core (not target-specific) attributes need to use string keys only because they take a string value.</div></div></div></blockquote><div><br>+1 here </div></div></div>