[llvm-dev] minimal C code that would generate IR code using phi
Tim Northover via llvm-dev
llvm-dev at lists.llvm.org
Fri Jan 25 09:03:41 PST 2019
On Fri, 25 Jan 2019 at 16:55, Peng Yu via llvm-dev
<llvm-dev at lists.llvm.org> wrote:
> Does anybody have a minimal C code that would generate IR code using
> phi? Thanks.
Clang never really generates phis itself because it's easier to
generate code that simply uses a stack variable (you don't have to
keep track of control flow). The Mem2Reg pass in LLVM is what converts
Clang's output into a form with phis.
If you run Clang at an optimization above -O0 (e.g. "clang -O1 -Xclang
-disable-llvm-passes -emit-llvm ...") then run "opt -mem2reg" manually
you'll closest to what Clang would have emitted if it did do phis.
More information about the llvm-dev