<html>
    <head>
      <base href="http://llvm.org/bugs/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - r220138 caused binary size increase in Chromium"
   href="http://llvm.org/bugs/show_bug.cgi?id=21672">21672</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>r220138 caused binary size increase in Chromium
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>libraries
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>trunk
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>Scalar Optimizations
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>unassignedbugs@nondot.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>hans@chromium.org
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>chandlerc@gmail.com, llvmbugs@cs.uiuc.edu, nicolasweber@gmx.de
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Created <span class=""><a href="attachment.cgi?id=13397" name="attach_13397" title="Preprocessed source">attachment 13397</a> <a href="attachment.cgi?id=13397&action=edit" title="Preprocessed source">[details]</a></span>
Preprocessed source

(Moving this from the list:
<a href="http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20141124/246194.html">http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20141124/246194.html</a>)

r220138 caused a 97 KB binary size increase in Chromium on 64-bit Linux.

Attaching preprocessed source for one TU that was significantly affected.

Build command:

 clang++ -fstack-protector --param=ssp-buffer-size=4 -fno-strict-aliasing
-fvisibility=hidden -fPIC -pthread -m64 -march=x86-64 -O2 -fno-ident
-fdata-sections -ffunction-sections -funwind-tables -fno-exceptions -fno-rtti
-fno-threadsafe-statics -fvisibility-inlines-hidden -w -std=gnu++11 -c
/tmp/ash.resize_shadow_controller.ii -o a.o

Sizes before and after your change, and at ToT:

   text    data     bss     dec     hex filename
   2626     184       0    2810     afa /tmp/220137.o
   2853     184       0    3037     bdd /tmp/220138.o
   2853     184       0    3037     bdd /tmp/222768.o


Looking at the IR diff for one of the functions that's grown (46 bytes), it's
not obvious what's going on besides some bitcasts and loads being reordered.
Looking at the asm however, it seems the loop is laid out a bit different. I'm
not sure what would cause that.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>