Fixup LTO internal docs for option processing

Message ID 20230125123017.974A33858C27@sourceware.org
State Committed
Commit 64f66385086e6a957c337eef97aec01cf30c162d
Headers
Series Fixup LTO internal docs for option processing |

Commit Message

Richard Biener Jan. 25, 2023, 12:29 p.m. UTC
  Andreas noticed that when I removed lto_read_all_file_options I
failed to update the internals manual which refers to it.  The
following attempts to reflect the current situation.

Pushed.

	* doc/lto.texi (Command line options): Reword and update reference
	to removed lto_read_all_file_options.
---
 gcc/doc/lto.texi | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)
  

Patch

diff --git a/gcc/doc/lto.texi b/gcc/doc/lto.texi
index e591e8d2915..eb5f54bf908 100644
--- a/gcc/doc/lto.texi
+++ b/gcc/doc/lto.texi
@@ -170,13 +170,11 @@  object files.  This is used at link time to determine the optimization
 level and other settings when they are not explicitly specified at the
 linker command line.
 
-Currently, GCC does not support combining LTO object files compiled
-with different set of the command line options into a single binary.
-At link time, the options given on the command line and the options
-saved on all the files in a link-time set are applied globally.  No
-attempt is made at validating the combination of flags (other than the
-usual validation done by option processing).  This is implemented in
-@file{lto/lto.cc}:@code{lto_read_all_file_options}.
+Most options are recorded at a per function level and their setting
+restored when processing the functions at link time.  Global options
+are composed from options specified at compile time and link time.
+How exactly they are combined or mismatches diagnosed is implemented in
+@file{lto-wrapper.cc}:@code{find_and_merge_options}.
 
 
 @item Symbol table (@code{.gnu.lto_.symtab})