opts.h (CL_PCH_IGNORE): Define.

* opts.h (CL_PCH_IGNORE): Define.
        * targhooks.c (option_affects_pch_p):
        Return false for options that have CL_PCH_IGNORE set.
        * opt-functions.awk: Process PchIgnore.
        * doc/options.texi: Document PchIgnore.

From-SVN: r208292
This commit is contained in:
Joern Rennecke 2014-03-03 21:51:58 +00:00 committed by Joern Rennecke
parent a42a7046eb
commit 212bfe71ed
5 changed files with 16 additions and 0 deletions

View File

@ -1,3 +1,11 @@
2014-03-03 Joern Rennecke <joern.rennecke@embecosm.com>
* opts.h (CL_PCH_IGNORE): Define.
* targhooks.c (option_affects_pch_p):
Return false for options that have CL_PCH_IGNORE set.
* opt-functions.awk: Process PchIgnore.
* doc/options.texi: Document PchIgnore.
2014-03-03 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* config/rs6000/rs6000.c (rs6000_preferred_reload_class): Disallow

View File

@ -478,4 +478,8 @@ record. @xref{Option file format}.
@item NoDWARFRecord
The option is omitted from the producer string written by
@option{-grecord-gcc-switches}.
@item PchIgnore
Even if this is a target option, this option will not be recorded / compared
to determine if a precompiled header file matches.
@end table

View File

@ -97,6 +97,7 @@ function switch_flags (flags)
result = result \
test_flag("Common", flags, " | CL_COMMON") \
test_flag("Target", flags, " | CL_TARGET") \
test_flag("PchIgnore", flags, " | CL_PCH_IGNORE") \
test_flag("Driver", flags, " | CL_DRIVER") \
test_flag("Joined", flags, " | CL_JOINED") \
test_flag("JoinedOrMissing", flags, " | CL_JOINED") \

View File

@ -146,6 +146,7 @@ extern const unsigned int cl_lang_count;
#define CL_SEPARATE (1U << 23) /* If takes a separate argument. */
#define CL_UNDOCUMENTED (1U << 24) /* Do not output with --help. */
#define CL_NO_DWARF_RECORD (1U << 25) /* Do not add to producer string. */
#define CL_PCH_IGNORE (1U << 26) /* Do compare state for pch. */
/* Flags for an enumerated option argument. */
#define CL_ENUM_CANONICAL (1 << 0) /* Canonical for this value. */

View File

@ -1456,6 +1456,8 @@ option_affects_pch_p (int option, struct cl_option_state *state)
{
if ((cl_options[option].flags & CL_TARGET) == 0)
return false;
if ((cl_options[option].flags & CL_PCH_IGNORE) != 0)
return false;
if (option_flag_var (option, &global_options) == &target_flags)
if (targetm.check_pch_target_flags)
return false;