6.3. Optimisation (code improvement)

6.3. Optimisation (code improvement)

The -O* options specify convenient “packages” of optimisation flags; the -f* options described later on specify individual optimisations to be turned on/off; the -m* options specify machine-specific optimisations to be turned on/off.

Most of these options are boolean and have options to turn them both “on” and “off” (beginning with the prefix no-). For instance, while -fspecialise enables specialisation, -fno-specialise disables it. When multiple flags for the same option appear in the command-line they are evaluated from left to right. For instance, -fno-specialise -fspecialise will enable specialisation.

It is important to note that the -O* flags are roughly equivalent to combinations of -f* flags. For this re