<html>
    <head>
      <base href="https://bugs.llvm.org/">
    </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 - Use-list order not preserved for some constant values"
   href="https://bugs.llvm.org/show_bug.cgi?id=36778">36778</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Use-list order not preserved for some constant values
          </td>
        </tr>

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

        <tr>
          <th>Version</th>
          <td>6.0
          </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>Bitcode Writer
          </td>
        </tr>

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

        <tr>
          <th>Reporter</th>
          <td>dpfister@mail.de
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>dexonsmith@apple.com, llvm-bugs@lists.llvm.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>In some cases the use-list order of a ConstantData or GlobalVariable is not
preserved during serialization.

test.ll demonstrates this for the constant i64 0:
$ verify-uselistorder test.ll
*** verify-uselistorder ***
verify bitcode
LLVM ERROR: use-list order changed

For complex projects more values are affected.
Build git-2.16.2:
$ CC=clang CFLAGS="-g -O2 -flto -fuse-ld=lld -Wl,-save-temps" ./configure \
&& make \
&& llvm-dis git.0.0.preopt.bc -o git.ll

Check for additional uselistorder directives after a round-trip:
$ llvm-as --preserve-bc-uselistorder git.ll -o - | llvm-dis
-preserve-ll-uselistorder - -o - | diff git.ll -

At first glance this seems to have something to do with the llvm.dbg.value
intrinsic function.</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>