<div dir="ltr"><div>It's not an "optimization". It's done as part of module merging to create the preopt.bc file.</div><br clear="all"><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature">~Craig</div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Feb 6, 2019 at 7:18 PM Peng Yu <<a href="mailto:pengyu.ut@gmail.com">pengyu.ut@gmail.com</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">> LTO has to merge the modules from different translation units. Those modules very likely have duplicate types in them so LTO merges them to avoid wasting memory on duplicates.<br>
<br>
But I am checking the *.preopt.bc. Since it is before any<br>
optimization, I'd expect such merging should not occur.<br>
<br>
-- <br>
Regards,<br>
Peng<br>
</blockquote></div>