5.6.3.1 General
| Option | Description | Command Line |
|---|---|---|
| Have symbols in production build | Build for debugging in a production build image. | -g |
| Isolate each function in a section | This option is often used with the linker's
--gc-sections option to remove unreferenced
functions.Check to place each function into its own section in the output file. The name of the function determines the section’s name in the output file. Note: When you
specify this option, the assembler and linker may create larger
object and executable files and will also be
slower. Uncheck to place multiple functions in a section. | -ffunction-sections |
| Place data into its own section | This option is often used with the linker's
--gc-sections option to remove unreferenced
statically-allocated variables.Place each data item into its own section in the output file. The name of the data item determines the name of the section. When you specify this option, the assembler and linker may create larger object and executable files and will also be slower. | -fdata-sections |
| Use 64-bit double | Use long double instead of double
type equivalent to float. Mixing this option across modules can have
unexpected results if modules share double data either directly through
argument passage or indirectly through shared buffer space. | -fno-short-double |
| Disable instruction scheduling | Prevent the compiler from scheduling instructions. | -f[no-]schedule-insns |
| Name the text section | Place text (program code) in a section named name
rather than the default .text section. | -mtext=name |
