This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

where can I get gcc optimizations information


Hello everybody.

I need some help with gcc optimizations and I don't know where I can get it.

The objective of my work is to estimate how many machine instructions I can 
save in a program execution employing compiler optimizations. I am working 
with ARM architecture. Anyway, I have understood that main gcc optimizations 
are architecture-independent.

In the gcc user's manual I have read that flags -O, -O1, -O2, -O3 and -Os 
activate different optimization flags (starting with "-f", I think), but not 
all of them are available individually. If I switch on all flags available 
individually for -O1 (-fdefer-pop, -fmerge-constants...) they have no effect 
in obtained machine code, but if I compile with -O1 option, there is a 
reduction of about 50% in machine instructions number with respect to basic 
compilation.

With these results, I suppose that -O1 performs more actions that are not 
reported in any document I have found in The Internet. I have downloaded the 
gcc source-code but it is too difficult for me to understand it. My question 
is: where can I get full information about gcc optimizations and how they are 
performed?

And another question: would be possible to get a benchmark or similar for 
compiler optimizations? That is, some set of programs that estimate the save 
that a compiler can achieve. I know it depends on the algotihms compiled, 
employed architecture and more (please, don't remember me that...). I just 
need an estimation. That would be great for my work.

I hope your answer. Thank you very much. I really think you are developing a 
great job.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]