This patch was already approved in v2. I have included it here because

    a) It should not be applied until after the rest of the series, since
       the option is useful as long as location_t is 32-bit.

    b) The previous version neglected to regenerate common.opt.urls, which I
       have corrected here.

-- >8 --

The option -flarge-source-files became unnecessary with 64-bit location_t
and harms performance compared to the new default setting, so silently
ignore it.

gcc/ChangeLog:

        * common.opt: Mark -flarge-source-files as Ignored.
        * common.opt.urls: Regenerate.
        * doc/invoke.texi: Remove -flarge-source-files.
        * toplev.cc (process_options): Remove support for
        -flarge-source-files.
---
 gcc/common.opt      |  5 ++---
 gcc/common.opt.urls |  3 ---
 gcc/doc/invoke.texi | 17 +----------------
 gcc/toplev.cc       |  3 ---
 4 files changed, 3 insertions(+), 25 deletions(-)

diff --git a/gcc/common.opt b/gcc/common.opt
index bb226ac61e6..79f51be1d60 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -1808,9 +1808,8 @@ Common Undocumented Var(flag_keep_gc_roots_live) 
Optimization
 ; Always keep a pointer to a live memory block
 
 flarge-source-files
-Common Var(flag_large_source_files) Init(0)
-Improve GCC's ability to track column numbers in large source files,
-at the expense of slower compilation.
+Common Ignore
+Does nothing.  Preserved for backward compatibility.
 
 flate-combine-instructions
 Common Var(flag_late_combine_instructions) Optimization Init(0)
diff --git a/gcc/common.opt.urls b/gcc/common.opt.urls
index e9e818d86de..43255a7d12a 100644
--- a/gcc/common.opt.urls
+++ b/gcc/common.opt.urls
@@ -721,9 +721,6 @@ 
UrlSuffix(gcc/Optimize-Options.html#index-fgraphite-identity)
 fhoist-adjacent-loads
 UrlSuffix(gcc/Optimize-Options.html#index-fhoist-adjacent-loads)
 
-flarge-source-files
-UrlSuffix(gcc/Preprocessor-Options.html#index-flarge-source-files)
-
 flate-combine-instructions
 UrlSuffix(gcc/Optimize-Options.html#index-flate-combine-instructions)
 
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index fa2532f437b..7023b30ec15 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -693,7 +693,7 @@ Objective-C and Objective-C++ Dialects}.
 -dD  -dI  -dM  -dN  -dU
 -fdebug-cpp  -fdirectives-only  -fdollars-in-identifiers
 -fexec-charset=@var{charset}  -fextended-identifiers
--finput-charset=@var{charset}  -flarge-source-files
+-finput-charset=@var{charset}
 -fmacro-prefix-map=@var{old}=@var{new} -fmax-include-depth=@var{depth}
 -fno-canonical-system-headers  -fpch-deps  -fpch-preprocess
 -fpreprocessed  -ftabstop=@var{width}  -ftrack-macro-expansion
@@ -18748,21 +18748,6 @@ This option may be useful in conjunction with the 
@option{-B} or
 perform additional processing of the program source between
 normal preprocessing and compilation.
 
-@opindex flarge-source-files
-@item -flarge-source-files
-Adjust GCC to expect large source files, at the expense of slower
-compilation and higher memory usage.
-
-Specifically, GCC normally tracks both column numbers and line numbers
-within source files and it normally prints both of these numbers in
-diagnostics.  However, once it has processed a certain number of source
-lines, it stops tracking column numbers and only tracks line numbers.
-This means that diagnostics for later lines do not include column numbers.
-It also means that options like @option{-Wmisleading-indentation} cease to work
-at that point, although the compiler prints a note if this happens.
-Passing @option{-flarge-source-files} significantly increases the number
-of source lines that GCC can process before it stops tracking columns.
-
 @end table
 
 @node Assembler Options
diff --git a/gcc/toplev.cc b/gcc/toplev.cc
index d4a4add29f9..370d7f39f21 100644
--- a/gcc/toplev.cc
+++ b/gcc/toplev.cc
@@ -1765,9 +1765,6 @@ process_options ()
     hash_table_sanitize_eq_limit
       = param_hash_table_verification_limit;
 
-  if (flag_large_source_files)
-    line_table->default_range_bits = 0;
-
   diagnose_options (&global_options, &global_options_set, UNKNOWN_LOCATION);
 
   /* Please don't change global_options after this point, those changes won't

Reply via email to