Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the purpose of the "tree-***" family of GCC optimization options?

Reading gcc's manual, I see a family of -ftree-*** optimization options. What is the purpose of these options? What are these "trees"?

like image 430
ysap Avatar asked Feb 29 '12 22:02

ysap


1 Answers

They are optimizer passes that work on the (SSA) trees inside the compiler, rather than on the RTL (register transfer language) level.

For an overview what this is about, see the GCC internals documentation: http://gcc.gnu.org/onlinedocs/gccint/

For an introduction about SSA, see http://en.wikipedia.org/wiki/Static_single_assignment_form

like image 181
janneb Avatar answered Sep 28 '22 13:09

janneb