<div dir="ltr"><div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Jun 28, 2019 at 4:21 PM Kihong Heo via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">You are right. Thanks!<br>
I fixed that one as well as some other issues.<br>
I built LLVM-8 with Debug + no-rtti. But it now has the following error:<br>
<br>
Stack dump:<br>
0.      Program arguments: clang-8 -cc1 -triple x86_64-unknown-linux-gnu -emit-llvm -disable-free -main-file-name time-1.7.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 /home/khheo/project/parametric-symexe/test/toy1/time-1.7.gcno -resource-dir /home/khheo/project/llvm-8/build/lib/clang/8.0.1 -internal-isystem /usr/local/include -internal-isystem /home/khheo/project/llvm-8/build/lib/clang/8.0.1/include -internal-externc-isystem /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -O0 -fdebug-compilation-dir /home/khheo/project/parametric-symexe/test/toy1 -ferror-limit 19 -fmessage-length 364 -fobjc-runtime=gcc -fdiagnostics-show-option -fcolor-diagnostics -load ../../trace-extractor/build/TracePass.so -o time-1.7.ll -x c /home/khheo/project/all/time-1.7.c -faddrsig<br>
1.      <eof> parser at end of file<br>
2.      Per-module optimization passes<br>
3.      Running pass 'Unnamed pass: implement Pass::getPassName()' on module '/home/khheo/project/all/time-1.7.c'.<br>
…<br>
<br>
What does "Running pass 'Unnamed pass: implement Pass::getPassName()' on module” mean?<br></blockquote><div><br></div><div>It is just debugging on crashes, passes can override this method: <a href="https://github.com/llvm/llvm-project/blob/master/llvm/include/llvm/Pass.h#L96">https://github.com/llvm/llvm-project/blob/master/llvm/include/llvm/Pass.h#L96</a> to provide a more readable name.</div><div>In practice if passes are registered it isn't needed I think.</div><div>In any case this is not the cause of the crash, you can try running the clang -cc1 command in a debugger.</div><div><br></div><div>-- </div><div>Mehdi</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
<br>
- Kihong<br>
<br>
<br>
> On Jun 28, 2019, at 4:48 PM, Tim Northover <<a href="mailto:t.p.northover@gmail.com" target="_blank">t.p.northover@gmail.com</a>> wrote:<br>
> <br>
> On Fri, 28 Jun 2019 at 21:18, Kihong Heo <<a href="mailto:kihong.heo@gmail.com" target="_blank">kihong.heo@gmail.com</a>> wrote:<br>
>> When I search for this issue on Google, it seems to be relevant to “RTTI”.<br>
> <br>
> Yep, that's a typeinfo symbol.<br>
> <br>
>> But as I know LLVM is built by default -fno-rtti. I also explicitly turned off it. Here is my cmake command:<br>
>> <br>
>> $ cmake -DCMAKE_BUILD_TYPE=Debug -DLLVM_ENABLE_RTTI=OFF -DLLVM_ENABLE_PROJECTS=clang -G "Unix Makefiles"  ../llvm<br>
>> <br>
>> Any thought?<br>
> <br>
> My best guess is that your pass was built *with* RTTI (i.e. no<br>
> -fno-rtti) but LLVM without. A quick fix would be to switch to<br>
> -DLLVM_ENABLE_RTTI=ON, but longer term you may want to look into your<br>
> pass's build system.<br>
> <br>
> Cheers.<br>
> <br>
> tim.<br>
<br>
_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a><br>
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
</blockquote></div></div></div>