info on coming out of SSA form

Hi,

I am a newbie to llvm. I am wondering what approach is used when coming out of SSA form. I also appreciate pointers on where to look in the source code for this phase.

Best regards,

Ram Ramshankar

Hi,

I am a newbie to llvm. I am wondering what approach is used when coming out
of SSA form. I also appreciate pointers on where to look in the source code
for this phase.

lib/CodeGen/PHIElimination.cpp is probably what you want.

Best regards,

Ram Ramshankar

Cheers,
Rafael

Hi RamShankar,

On top of Rafael mentioned ,Please check with

lib/CodeGen/StrongPHIElimination.cpp and the papers like

Budimlic, et al. Fast copy coalescing and live-range identification.
// In Proceedings of the ACM SIGPLAN 2002 Conference on Programming Language
// Design and Implementation (Berlin, Germany, June 17 - 19, 2002).
// PLDI '02. ACM, New York, NY, 25-32.
Boissinot, et al. Revisiting Out-of-SSA Translation for Correctness, Code
// Quality and Efficiency,
// In Proceedings of the 7th annual IEEE/ACM International Symposium on Code
// Generation and Optimization (Seattle, Washington, March 22 - 25, 2009).
// CGO '09. IEEE, Washington, DC, 114-125.

It will be good ,If you mention the what are trying to achieve here …

Thanks
~Umesh

Basically I wanted to see if hot blocks are ending up with copies, when we may have been better off having copies in a cold pred or cold succ etc