Hello, llvmdev. I'm a student from the Moscow State University and I started to work with the LLVM project.<br>First, I have to compare its profiling ways and I got a little problem. It hangs when I try to run optimal edge profiling.<br>
Nothing happens right after the command "opt a.bc -profile-loader -o
b.bc" which tries to load optimal edge profile from the llvmprof.out
file. I mean it starts to compute but never ends (I checked CPU Usage).<br>
<br>For example, a log of my actions:<br><br>anon@anonVB:~/MiBench/<div>automotive/qsort$ clang qsort_large.c -emit-llvm -c -o a.bc<br><div>anon@anonVB:~/MiBench/automotive/qsort$ opt a.bc -insert-optimal-edge-profiling -O2 -o a_oep.bc<br>
anon@anonVB:~/MiBench/automotive/qsort$ llc a_oep.bc -O2 -o a.s<br>
anon@anonVB:~/MiBench/automotive/qsort$ clang a.s ./libprofile_rt.so -O2 -o a<br>anon@anonVB:~/MiBench/automotive/qsort$ ./a input_large.dat > out.txt<br>anon@anonVB:~/MiBench/automotive/qsort$ opt a_oep.bc -profile-loader -block-placement -O2 -o a_opt.bc<br>
*waited for a few minutes*<br>
^C<br><br>Is it a bug or just me doing something wrong?<br>Also I notice
that edge profiling optimizations make MiBench programs work slower. (I
use -block-placment option for optimization).<br>I use Ubuntu 11.10.<br><br>
Yours truly, Rodion Mulyukov.</div></div>