5.6.3.1 General

Table 5-4. General Category
OptionDescriptionCommand Line
Have symbols in production buildBuild for debugging in a production build image.-g
Isolate each function in a sectionThis 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 sectionThis 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 doubleUse 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 schedulingPrevent the compiler from scheduling instructions.-f[no-]schedule-insns

-f[no-]schedule-insns2

Name the text sectionPlace text (program code) in a section named name rather than the default .text section.-mtext=name