<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - Automake Regression - Clover: Assertion failures when loading pipe_r600.so driver"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=59334">59334</a>
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>michel@daenzer.net
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>mesa-dev@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Automake Regression - Clover: Assertion failures when loading pipe_r600.so driver
          </td>
        </tr>

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

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>tstellar@gmail.com
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>Other
          </td>
        </tr>

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

        <tr>
          <th>Version</th>
          <td>git
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>Other
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>Mesa
          </td>
        </tr></table>
      <p>
        <div>
        <pre>With r600g I'm seeing the following assertion failure when I try to run any
OpenCL programs:

hello_world: /home/tstellar/llvm/include/llvm/Support/CommandLine.h:646: void
llvm::cl::per<DataType>::addLiteralOption(const char*, const DT&, const char*)
[with DT = llvm::ScheeDAGSDNodes* (*)(llvm::SelectionDAGISel*,
llvm::CodeGenOpt::Level), DataType = llvm::ScheeDAGSDNodes*
(*)(llvm::SelectionDAGISel*, llvm::CodeGenOpt::Level)]: Assertion
`findOptioame) == Values.size() && "Option already exists!"' failed.

This assertion failure appears to be caused by static objects that are
initialized more than once.  The first initialization comes from within clover
and the second comes from the pipe_*.so driver when clover loads it.

The backtrace for this assertion failure starts with:
_GLOBAL__sub_I_SelectionDAGISel.cpp 

If I run:
objdump -t libOpenCL.so.1.0.0

I can see that this symbol is included in the libOpenCL.so.1.0.0 library after
the automake changes were merged, but it was not included before the merge.

This bug likely also affects the EGL state_tracker with r600g or radeonsi.

I will do my best to bisect and see which commit caused this bug, but I'm not
sure if bisection through the automake changes is possible.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>