Commit f381d87a by Sebastian Huber Committed by Sebastian Huber

Update -ffunction/data-sections documentation

gcc/
	* doc/invoke.texi (ffunction-sections and fdata-sections):
	Update.

From-SVN: r253842
parent 173a960a
2017-10-18 Sebastian Huber <sebastian.huber@embedded-brains.de>
* doc/invoke.texi (ffunction-sections and fdata-sections):
Update.
2017-10-17 Eric Botcazou <ebotcazou@adacore.com> 2017-10-17 Eric Botcazou <ebotcazou@adacore.com>
* tree-ssa-loop-ivopts.c (add_autoinc_candidates): Bail out only if * tree-ssa-loop-ivopts.c (add_autoinc_candidates): Bail out only if
...@@ -9712,18 +9712,26 @@ file if the target supports arbitrary sections. The name of the ...@@ -9712,18 +9712,26 @@ file if the target supports arbitrary sections. The name of the
function or the name of the data item determines the section's name function or the name of the data item determines the section's name
in the output file. in the output file.
Use these options on systems where the linker can perform optimizations Use these options on systems where the linker can perform optimizations to
to improve locality of reference in the instruction space. Most systems improve locality of reference in the instruction space. Most systems using the
using the ELF object format and SPARC processors running Solaris 2 have ELF object format have linkers with such optimizations. On AIX, the linker
linkers with such optimizations. AIX may have these optimizations in rearranges sections (CSECTs) based on the call graph. The performance impact
the future. varies.
Only use these options when there are significant benefits from doing Together with a linker garbage collection (linker @option{--gc-sections}
so. When you specify these options, the assembler and linker option) these options may lead to smaller statically-linked executables (after
create larger object and executable files and are also slower. stripping).
You cannot use @command{gprof} on all systems if you
specify this option, and you may have problems with debugging if On ELF/DWARF systems these options do not degenerate the quality of the debug
you specify both this option and @option{-g}. information. There could be issues with other object files/debug info formats.
Only use these options when there are significant benefits from doing so. When
you specify these options, the assembler and linker create larger object and
executable files and are also slower. These options affect code generation.
They prevent optimizations by the compiler and assembler using relative
locations inside a translation unit since the locations are unknown until
link time. An example of such an optimization is relaxing calls to short call
instructions.
@item -fbranch-target-load-optimize @item -fbranch-target-load-optimize
@opindex fbranch-target-load-optimize @opindex fbranch-target-load-optimize
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment