<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr">
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;font-family:Calibri,Helvetica,sans-serif;" dir="ltr">
<p style="margin-top:0;margin-bottom:0">Hello,</p>
<p style="margin-top:0;margin-bottom:0"><br>
</p>
<p style="margin-top:0;margin-bottom:0">I am building the SPEC 2006 Benchmark with Clang as the compiler. I have written a function pass in LLVM and I am trying to run that for SPEC by invoking the pass in the build options of SPEC. The build options of SPEC
 are in a *.cfg config file, which allows us to specify the choice of compiler while building SPEC. (<a href="https://www.spec.org/cpu2006/Docs/install-guide-unix.html" class="OWAAutoLink" id="LPlnk885594" previewremoved="true">https://www.spec.org/cpu2006/Docs/install-guide-unix.html</a>)</p>
<p style="margin-top:0;margin-bottom:0"><br>
</p>
<p style="margin-top:0;margin-bottom:0">The pass runs for several functions, but llvm crashes at a certain point. I am checking dependencies between various loops in a function in that pass.</p>
<p style="margin-top:0;margin-bottom:0"><br>
</p>
<p style="margin-top:0;margin-bottom:0">The crash message and stack dump is:</p>
<p style="margin-top:0;margin-bottom:0"><br>
</p>
<p style="margin-top:0;margin-bottom:0"></p>
<div><span style="color: rgb(255, 0, 0);">clang-9: /media/kiit/3E9AF7519AF703E5/llvm-project/llvm/lib/Analysis/BasicAliasAnalysis.cpp:823: llvm::AliasResult llvm::BasicAAResult::alias(const llvm::MemoryLocation&, const llvm::MemoryLocation&, llvm::AAQueryInfo&):
 Assertion `notDifferentParent(LocA.Ptr, LocB.Ptr) && "BasicAliasAnalysis doesn't support interprocedural queries."' failed.</span></div>
<div><span style="color: rgb(255, 0, 0);">Stack dump:</span></div>
<div><span style="color: rgb(255, 0, 0);">0.</span><span style="white-space: pre; color: rgb(255, 0, 0);">
</span><span style="color: rgb(255, 0, 0);">Program arguments: /media/kiit/3E9AF7519AF703E5/llvm/bin/clang-9 -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -mrelax-all -disable-free -main-file-name check_unitarity.c -mrelocation-model static -mthread-model
 posix -mdisable-fp-elim -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -dwarf-column-info -debugger-tuning=gdb -coverage-notes-file /media/kiit/3E9AF7519AF703E5/New_Spec/cpu2006/benchspec/CPU2006/433.milc/run/build_base_amd64-m64-gcc42-nn.0006/check_unitarity.gcno
 -resource-dir /media/kiit/3E9AF7519AF703E5/llvm/lib/clang/9.0.0 -D SPEC_CPU -D NDEBUG -I . -D FN -D FAST -D CONGRAD_TMP_VECTORS -D DSLASH_TMP_LINKS -D SPEC_CPU_LP64 -I/opt/intel/compilers_and_libraries_2019.2.187/linux/ipp/include -I/opt/intel/compilers_and_libraries_2019.2.187/linux/mkl/include
 -I/opt/intel/compilers_and_libraries_2019.2.187/linux/pstl/include -I/opt/intel/compilers_and_libraries_2019.2.187/linux/tbb/include -I/opt/intel/compilers_and_libraries_2019.2.187/linux/tbb/include -I/opt/intel/compilers_and_libraries_2019.2.187/linux/daal/include
 -I/opt/intel/compilers_and_libraries_2019.2.187/linux/ipp/include -I/opt/intel/compilers_and_libraries_2019.2.187/linux/mkl/include -I/opt/intel/compilers_and_libraries_2019.2.187/linux/pstl/include -I/opt/intel/compilers_and_libraries_2019.2.187/linux/tbb/include
 -I/opt/intel/compilers_and_libraries_2019.2.187/linux/tbb/include -I/opt/intel/compilers_and_libraries_2019.2.187/linux/daal/include -internal-isystem /usr/local/include -internal-isystem /media/kiit/3E9AF7519AF703E5/llvm/lib/clang/9.0.0/include -internal-externc-isystem
 /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -fdebug-compilation-dir /media/kiit/3E9AF7519AF703E5/New_Spec/cpu2006/benchspec/CPU2006/433.milc/run/build_base_amd64-m64-gcc42-nn.0006 -ferror-limit 19
 -fmessage-length 0 -fobjc-runtime=gcc -fdiagnostics-show-option -load /media/kiit/3E9AF7519AF703E5/llvm-pass-skeleton/build/skeleton/libSkeletonPass.so -o check_unitarity.o -x c check_unitarity.c -faddrsig </span></div>
<div><span style="color: rgb(255, 0, 0);">1.</span><span style="white-space: pre; color: rgb(255, 0, 0);">
</span><span style="color: rgb(255, 0, 0);"><eof> parser at end of file</span></div>
<div><span style="color: rgb(255, 0, 0);">2.</span><span style="white-space: pre; color: rgb(255, 0, 0);">
</span><span style="color: rgb(255, 0, 0);">Per-function optimization</span></div>
<div><span style="color: rgb(255, 0, 0);">3.</span><span style="white-space: pre; color: rgb(255, 0, 0);">
</span><span style="color: rgb(255, 0, 0);">Running pass 'Unnamed pass: implement Pass::getPassName()' on function '@check_su3'</span></div>
<div><span style="color: rgb(255, 0, 0);"> #0 0x0000000004f2a60f llvm::sys::PrintStackTrace(llvm::raw_ostream&) /media/kiit/3E9AF7519AF703E5/llvm-project/llvm/lib/Support/Unix/Signals.inc:494:0</span></div>
<div><span style="color: rgb(255, 0, 0);"><br>
</span></div>
<div><span style="color: rgb(255, 0, 0);"><span style="color: rgb(117, 123, 128);">I have included my function pass and the SPEC Config file(*.cfg) here.</span><br>
</span></div>
<div><span style="color: rgb(255, 0, 0);"><span style="color: rgb(117, 123, 128);"><br>
</span></span></div>
<div><span style="color: rgb(255, 0, 0);"><span style="color: rgb(117, 123, 128);">Thanks,</span></span></div>
<div><font color="#757b80">Bodhisatwa</font></div>
<div><span style="color: rgb(255, 0, 0);"><span style="color: rgb(117, 123, 128);"><br>
</span></span></div>
<div><br>
</div>
<br>
<p></p>
<p style="margin-top:0;margin-bottom:0"><br>
</p>
<br>
</div>
</body>
</html>