diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ca4956477c9aa7ae94290d1d1b26e8e074fc91be..b5c5936b5e91ec3a0c09dcbed71ea181cf0bb229 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -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. diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 8b3c195dc65f63a4a5d2cb9cdb166d9ad26d325d..434790d24582fee7ee6f31fe945764ff49f4aa0d 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -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