From: Martin Liska Date: Wed, 26 Aug 2020 08:10:39 +0000 (+0200) Subject: lto: fix documentation about -fpie and -fpic options X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=f523aaa039cc0ab59791045a840e4e35f1b1eb24;p=gcc.git lto: fix documentation about -fpie and -fpic options gcc/ChangeLog: * doc/invoke.texi: Document how are pie and pic options merged. --- diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 4cf6b204b56..95d3699d1fa 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -11569,9 +11569,20 @@ There are some code generation flags preserved by GCC when generating bytecodes, as they need to be used during the final link. Currently, the following options and their settings are taken from the first object file that explicitly specifies them: -@option{-fPIC}, @option{-fpic}, @option{-fpie}, @option{-fcommon}, -@option{-fexceptions}, @option{-fnon-call-exceptions}, @option{-fgnu-tm} -and all the @option{-m} target flags. +@option{-fcommon}, @option{-fexceptions}, @option{-fnon-call-exceptions}, +@option{-fgnu-tm} and all the @option{-m} target flags. + +The following options @option{-fPIC}, @option{-fpic}, @option{-fpie} and +@option{-fPIE} are combined based on the following scheme: + +@smallexample +@option{-fPIC} + @option{-fpic} = @option{-fpic} +@option{-fPIC} + @option{-fno-pic} = @option{-fno-pic} +@option{-fpic/-fPIC} + (no option) = (no option) +@option{-fPIC} + @option{-fPIE} = @option{-fPIE} +@option{-fpic} + @option{-fPIE} = @option{-fpie} +@option{-fPIC/-fpic} + @option{-fpie} = @option{-fpie} +@end smallexample Certain ABI-changing flags are required to match in all compilation units, and trying to override this at link time with a conflicting value