The GNU compiler offers various levels of optimizations for the compilation process. These optimizations are used to improve the code performance and/or code size. Compiling a code with optimizations on, typically takes longer to complete.
This command tells you what optimizations are available on your system : $gcc -Q --help=optimizations
Here is a detailed documentation of options to control optimizations: