invoke.texi ([-fsemantic-interposition]): Fix typos and tidy grammar.

2015-01-03  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* doc/invoke.texi ([-fsemantic-interposition]): Fix typos and
	tidy grammar.

From-SVN: r219166
This commit is contained in:
Sandra Loosemore 2015-01-03 18:44:25 -05:00 committed by Sandra Loosemore
parent 9bccfdf521
commit 484b5de056
2 changed files with 16 additions and 9 deletions

View File

@ -1,3 +1,8 @@
2015-01-03 Sandra Loosemore <sandra@codesourcery.com>
* doc/invoke.texi ([-fsemantic-interposition]): Fix typos and
tidy grammar.
2015-01-03 Sandra Loosemore <sandra@codesourcery.com>
* doc/invoke.texi ([-fplan9-extensions]): Add/fix @opindex.

View File

@ -8070,19 +8070,21 @@ This option has no effect unless @option{-fsel-sched-pipelining} is turned on.
@item -fsemantic-interposition
@opindex fsemantic-interposition
Some object formats, like ELF, allow interposing of symbols by dynamic linker.
This means that for symbols exported from the DSO compiler can not perform
inter-procedural propagation, inlining and other optimizations in anticipation
Some object formats, like ELF, allow interposing of symbols by the
dynamic linker.
This means that for symbols exported from the DSO, the compiler cannot perform
interprocedural propagation, inlining and other optimizations in anticipation
that the function or variable in question may change. While this feature is
useful, for example, to rewrite memory allocation functions by a debugging
implementation, it is expensive in the terms of code quality.
With @option{-fno-semantic-inteposition} compiler assumest that if interposition
happens for functions the overwritting function will have
precisely same semantics (and side effects). Similarly if interposition happens
With @option{-fno-semantic-interposition} the compiler assumes that
if interposition happens for functions the overwriting function will have
precisely the same semantics (and side effects).
Similarly if interposition happens
for variables, the constructor of the variable will be the same. The flag
has no effect for functions explicitly declared inline, where
interposition changing semantic is never allowed and for symbols explicitly
declared weak.
has no effect for functions explicitly declared inline
(where it is never allowed for interposition to change semantics)
and for symbols explicitly declared weak.
@item -fshrink-wrap
@opindex fshrink-wrap