<html>
    <head>
      <base href="http://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 - [bisected] r300746 causes stack overflow when compiling pyrit kernel"
   href="http://bugs.llvm.org/show_bug.cgi?id=32731">32731</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>[bisected] r300746 causes stack overflow when compiling pyrit kernel
          </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>enhancement
          </td>
        </tr>

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

        <tr>
          <th>Component</th>
          <td>Global Analyses
          </td>
        </tr>

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

        <tr>
          <th>Reporter</th>
          <td>jan.vesely@rutgers.edu
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>CL source:
<a href="https://cgit.freedesktop.org/piglit/tree/tests/cl/program/execute/pyrit-wpa-psk.cl">https://cgit.freedesktop.org/piglit/tree/tests/cl/program/execute/pyrit-wpa-psk.cl</a>

command (you'll need libclc for get_global_id() implementation):
clang -x cl -target r600-- -mcpu=turks -Xclang -mlink-bitcode-file -Xclang
~/libclc/built_libs/cedar-r600--.bc  -I ~/libclc/generic/include/ -include
~/libclc/generic/include/clc/clc.h -S pyrit-wpa-psk.cl

leads to:
0.      Program arguments: /home/orome/.local/bin/clang-3.9 -cc1 -triple r600--
-S -disable-free -main-file-name pyrit-wpa-psk.cl -mrelocation-model static
-mthread-model posix -mdisable-fp-elim -fmath-errno -no-integrated-as
-mconstructor-aliases -target-cpu turks -dwarf-column-info -debugger-tuning=gdb
-coverage-notes-file /home/orome/clc-crash/pyrit-wpa-psk.gcno -resource-dir
/home/orome/.local/lib/clang/5.0.0 -include
/home/orome/libclc/generic/include/clc/clc.h -I
/home/orome/libclc/generic/include/ -fno-dwarf-directory-asm
-fdebug-compilation-dir /home/orome/clc-crash -ferror-limit 19 -fmessage-length
80 -fobjc-runtime=gcc -fdiagnostics-show-option -fcolor-diagnostics
-mlink-bitcode-file /home/orome/libclc/built_libs/cedar-r600--.bc -o
pyrit-wpa-psk.s -x cl pyrit-wpa-psk.cl 
1.      <eof> parser at end of file
2.      Code generation
3.      Running pass 'Function Pass Manager' on module 'pyrit-wpa-psk.cl'.
4.      Running pass 'Straight line strength reduction' on function
'@opencl_pmk_kernel'

the stack trace is:
#0 0x00007f66a6db6071 llvm::sys::PrintStackTrace(llvm::raw_ostream&)
/home/orome/llvm/lib/Support/Unix/Signals.inc:398:0
#1 0x00007f66a6db6104 PrintStackTraceSignalHandler(void*)
/home/orome/llvm/lib/Support/Unix/Signals.inc:462:0
#2 0x00007f66a6db4365 llvm::sys::RunSignalHandlers()
/home/orome/llvm/lib/Support/Signals.cpp:43:0
#3 0x00007f66a6db58e6 SignalHandler(int)
/home/orome/llvm/lib/Support/Unix/Signals.inc:252:0
#4 0x00007f66a5e0aec0 __restore_rt (/lib64/libpthread.so.0+0x10ec0)
#5 0x00007f66ab4340b8 computeKnownBitsFromAssume(llvm::Value const*,
llvm::APInt&, llvm::APInt&, unsigned int, (anonymous namespace)::Query const&)
/home/orome/llvm/lib/Analysis/ValueTracking.cpp:504:0
#6 0x00007f66ab43ae7f computeKnownBits(llvm::Value const*, llvm::APInt&,
llvm::APInt&, unsigned int, (anonymous namespace)::Query const&)
/home/orome/llvm/lib/Analysis/ValueTracking.cpp:1603:0
#7 0x00007f66ab432e4d computeKnownBitsAddSub(bool, llvm::Value const*,
llvm::Value const*, bool, llvm::APInt&, llvm::APInt&, llvm::APInt&,
llvm::APInt&, unsigned int, (anonymous namespace)::Query const&)
/home/orome/llvm/lib/Analysis/ValueTracking.cpp:264:0
#8 0x00007f66ab438e31 computeKnownBitsFromOperator(llvm::Operator const*,
llvm::APInt&, llvm::APInt&, unsigned int, (anonymous namespace)::Query const&)
/home/orome/llvm/lib/Analysis/ValueTracking.cpp:1160:0
#9 0x00007f66ab43ade7 computeKnownBits(llvm::Value const*, llvm::APInt&,
llvm::APInt&, unsigned int, (anonymous namespace)::Query const&)
/home/orome/llvm/lib/Analysis/ValueTracking.cpp:1591:0
#10 0x00007f66ab432e4d computeKnownBitsAddSub(bool, llvm::Value const*,
llvm::Value const*, bool, llvm::APInt&, llvm::APInt&, llvm::APInt&,
llvm::APInt&, unsigned int, (anonymous namespace)::Query const&)
/home/orome/llvm/lib/Analysis/ValueTracking.cpp:264:0
#11 0x00007f66ab438e31 computeKnownBitsFromOperator(llvm::Operator const*,
llvm::APInt&, llvm::APInt&, unsigned int, (anonymous namespace)::Query const&)
/home/orome/llvm/lib/Analysis/ValueTracking.cpp:1160:0
#12 0x00007f66ab43ade7 computeKnownBits(llvm::Value const*, llvm::APInt&,
llvm::APInt&, unsigned int, (anonymous namespace)::Query const&)
/home/orome/llvm/lib/Analysis/ValueTracking.cpp:1591:0
#13 0x00007f66ab432e4d computeKnownBitsAddSub(bool, llvm::Value const*,
llvm::Value const*, bool, llvm::APInt&, llvm::APInt&, llvm::APInt&,
llvm::APInt&, unsigned int, (anonymous namespace)::Query const&)
/home/orome/llvm/lib/Analysis/ValueTracking.cpp:264:0
#14 0x00007f66ab438e31 computeKnownBitsFromOperator(llvm::Operator const*,
llvm::APInt&, llvm::APInt&, unsigned int, (anonymous namespace)::Query const&)
/home/orome/llvm/lib/Analysis/ValueTracking.cpp:1160:0
#15 0x00007f66ab43ade7 computeKnownBits(llvm::Value const*, llvm::APInt&,
llvm::APInt&, unsigned int, (anonymous namespace)::Query const&)
/home/orome/llvm/lib/Analysis/ValueTracking.cpp:1591:0
#16 0x00007f66ab432e4d computeKnownBitsAddSub(bool, llvm::Value const*,
llvm::Value const*, bool, llvm::APInt&, llvm::APInt&, llvm::APInt&,
llvm::APInt&, unsigned int, (anonymous namespace)::Query const&)
/home/orome/llvm/lib/Analysis/ValueTracking.cpp:264:0
#17 0x00007f66ab438e31 computeKnownBitsFromOperator(llvm::Operator const*,
llvm::APInt&, llvm::APInt&, unsigned int, (anonymous namespace)::Query const&)
/home/orome/llvm/lib/Analysis/ValueTracking.cpp:1160:0
#18 0x00007f66ab43ade7 computeKnownBits(llvm::Value const*, llvm::APInt&,
llvm::APInt&, unsigned int, (anonymous namespace)::Query const&)
/home/orome/llvm/lib/Analysis/ValueTracking.cpp:1591:0
#19 0x00007f66ab437299 computeKnownBitsFromShiftOperator(llvm::Operator const*,
llvm::APInt&, llvm::APInt&, llvm::APInt&, llvm::APInt&, unsigned int,
(anonymous namespace)::Query const&, llvm::function_ref<llvm::APInt
(llvm::APInt const&, unsigned int)>, llvm::function_ref<llvm::APInt
(llvm::APInt const&, unsigned int)>)
/home/orome/llvm/lib/Analysis/ValueTracking.cpp:814:0
#20 0x00007f66ab438bea computeKnownBitsFromOperator(llvm::Operator const*,
llvm::APInt&, llvm::APInt&, unsigned int, (anonymous namespace)::Query const&)
/home/orome/llvm/lib/Analysis/ValueTracking.cpp:1113:0
#21 0x00007f66ab43ade7 computeKnownBits(llvm::Value const*, llvm::APInt&,
llvm::APInt&, unsigned int, (anonymous namespace)::Query const&)
/home/orome/llvm/lib/Analysis/ValueTracking.cpp:1591:0
#22 0x00007f66ab432490 llvm::computeKnownBits(llvm::Value const*, llvm::APInt&,
llvm::APInt&, llvm::DataLayout const&, unsigned int, llvm::AssumptionCache*,
llvm::Instruction const*, llvm::DominatorTree const*,
llvm::OptimizationRemarkEmitter*)
/home/orome/llvm/lib/Analysis/ValueTracking.cpp:143:0
#23 0x00007f66ab432670 llvm::haveNoCommonBitsSet(llvm::Value const*,
llvm::Value const*, llvm::DataLayout const&, llvm::AssumptionCache*,
llvm::Instruction const*, llvm::DominatorTree const*)
/home/orome/llvm/lib/Analysis/ValueTracking.cpp:156:0
#24 0x00007f66ab3913d5 llvm::ScalarEvolution::createSCEV(llvm::Value*)
/home/orome/llvm/lib/Analysis/ScalarEvolution.cpp:5332:0
#25 0x00007f66ab38818d llvm::ScalarEvolution::getSCEV(llvm::Value*)
/home/orome/llvm/lib/Analysis/ScalarEvolution.cpp:3574:0
#26 0x00007f66ab3904f0 llvm::ScalarEvolution::createSCEV(llvm::Value*)
/home/orome/llvm/lib/Analysis/ScalarEvolution.cpp:5213:0
#27 0x00007f66ab38818d llvm::ScalarEvolution::getSCEV(llvm::Value*)
/home/orome/llvm/lib/Analysis/ScalarEvolution.cpp:3574:0



alternative command (leads to the same stack overflow):
clang -x cl -target amdgcn-- -mcpu=tonga -Xclang -mlink-bitcode-file -Xclang
~/libclc/built_libs/tahiti-amdgcn--.bc -I ~/libclc/generic/include/ -include
~/libclc/generic/include/clc/clc.h -S pyrit-wpa-psk.cl

leads to the same error</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>