[llvm] [CSSPGO] [Pseudo-Probe] Avoid infinite loop on cyclic invoke destinations (PR #221630)

Wei Wang via llvm-commits llvm-commits at lists.llvm.org
Sun Sep 13 21:08:13 PDT 2026


https://github.com/apolloww commented:

I wonder where do you observe this behavior? SampleProfileProbe pass is run at the beginning of the pass pipeline (and only during thinlto prelink). 

If we run the compilation directly from the driver like 
```
clang++ -O2 -fexceptions -fpseudo-probe-for-profiling foo.cpp -o foo.o
```
it performs on unoptimized IR coming out of clang codegen. Can such cyclic patten exist in unoptimized IR? 

>From your test case, it seems the IR has already been optimized and the compilation is like
```
clang++ -O2 -fexceptions  -emit-llvm -c foo.cpp -o foo.bc
clang++ -O2 -fexceptions -fpseudo-probe-for-profiling -c foo.bc -o foo.o 
```

https://github.com/llvm/llvm-project/pull/221630


More information about the llvm-commits mailing list