diff options
author | Richard Guenther <rguenther@suse.de> | 2012-01-05 15:08:42 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2012-01-05 15:08:42 +0000 |
commit | 5720c0dc9cb064618394177a290c3669d9728b06 (patch) | |
tree | 367d5bb6f738516ca3efbd35212c8469083aa665 | |
parent | be223aafde77591ddece8a2cd8f0bf776b89bbef (diff) | |
download | gcc-5720c0dc9cb064618394177a290c3669d9728b06.zip gcc-5720c0dc9cb064618394177a290c3669d9728b06.tar.gz gcc-5720c0dc9cb064618394177a290c3669d9728b06.tar.bz2 |
re PR middle-end/51764 (mudflap does not work with LTO)
2012-01-05 Richard Guenther <rguenther@suse.de>
PR middle-end/51764
* common.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move
to c.opt.
* toplev.c (process_options): Reject combining mudflap and LTO.
* tree-nomudflap.c (nogo): Use sorry instead of internal_error.
c-family/
* c.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move here
from common.opt.
From-SVN: r182913
-rw-r--r-- | gcc/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/c-family/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/c-family/c.opt | 16 | ||||
-rw-r--r-- | gcc/common.opt | 16 | ||||
-rw-r--r-- | gcc/toplev.c | 3 | ||||
-rw-r--r-- | gcc/tree-nomudflap.c | 2 |
6 files changed, 34 insertions, 17 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 487ce17..c28e946 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,13 @@ 2012-01-05 Richard Guenther <rguenther@suse.de> + PR middle-end/51764 + * common.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move + to c.opt. + * toplev.c (process_options): Reject combining mudflap and LTO. + * tree-nomudflap.c (nogo): Use sorry instead of internal_error. + +2012-01-05 Richard Guenther <rguenther@suse.de> + PR tree-optimization/51760 * tree-ssa-ccp.c (likely_value): Drop UNDEFINED to CONSTANT, not VARYING. diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index 7850829..95ce166 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,9 @@ +2012-01-05 Richard Guenther <rguenther@suse.de> + + PR middle-end/51764 + * c.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move here + from common.opt. + 2011-12-30 Paolo Carlini <paolo.carlini@oracle.com> PR c++/51316 diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt index 42c9a0d..447c88f 100644 --- a/gcc/c-family/c.opt +++ b/gcc/c-family/c.opt @@ -489,6 +489,10 @@ Wmissing-prototypes C ObjC Var(warn_missing_prototypes) Warning Warn about global functions without prototypes +Wmudflap +C ObjC C++ ObjC++ Var(warn_mudflap) Init(1) Warning +Warn about constructs not instrumented by -fmudflap + Wmultichar C ObjC C++ ObjC++ Warning Warn about use of multi-character character constants @@ -865,6 +869,18 @@ fms-extensions C ObjC C++ ObjC++ Var(flag_ms_extensions) Don't warn about uses of Microsoft extensions +fmudflap +C ObjC C++ ObjC++ RejectNegative Report Var(flag_mudflap) +Add mudflap bounds-checking instrumentation for single-threaded program + +fmudflapth +C ObjC C++ ObjC++ RejectNegative Report Var(flag_mudflap,2) +Add mudflap bounds-checking instrumentation for multi-threaded program + +fmudflapir +C ObjC C++ ObjC++ RejectNegative Report Var(flag_mudflap_ignore_reads) +Ignore read operations when inserting mudflap instrumentation + fname-mangling-version- C++ ObjC++ Joined Ignore Warn(switch %qs is no longer supported) diff --git a/gcc/common.opt b/gcc/common.opt index 2a2c679..6cfe17a 100644 --- a/gcc/common.opt +++ b/gcc/common.opt @@ -570,10 +570,6 @@ Wmissing-noreturn Common Var(warn_missing_noreturn) Warning Warn about functions which might be candidates for __attribute__((noreturn)) -Wmudflap -Common Var(warn_mudflap) Init(1) Warning -Warn about constructs not instrumented by -fmudflap - Woverflow Common Var(warn_overflow) Init(1) Warning Warn about overflow in arithmetic expressions @@ -1465,18 +1461,6 @@ fmove-loop-invariants Common Report Var(flag_move_loop_invariants) Init(1) Optimization Move loop invariant computations out of loops -fmudflap -Common RejectNegative Report Var(flag_mudflap) -Add mudflap bounds-checking instrumentation for single-threaded program - -fmudflapth -Common RejectNegative Report Var(flag_mudflap,2) -Add mudflap bounds-checking instrumentation for multi-threaded program - -fmudflapir -Common RejectNegative Report Var(flag_mudflap_ignore_reads) -Ignore read operations when inserting mudflap instrumentation - fdce Common Var(flag_dce) Init(1) Optimization Use the RTL dead code elimination pass diff --git a/gcc/toplev.c b/gcc/toplev.c index f2ca434..c145af4 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -1325,6 +1325,9 @@ process_options (void) "and -ftree-loop-linear)"); #endif + if (flag_mudflap && flag_lto) + sorry ("mudflap cannot be used together with link-time optimization"); + /* One region RA really helps to decrease the code size. */ if (flag_ira_region == IRA_REGION_AUTODETECT) flag_ira_region diff --git a/gcc/tree-nomudflap.c b/gcc/tree-nomudflap.c index 44e2989..f204e2a 100644 --- a/gcc/tree-nomudflap.c +++ b/gcc/tree-nomudflap.c @@ -44,7 +44,7 @@ along with GCC; see the file COPYING3. If not see static void nogo (void) { - internal_error ("mudflap: this language is not supported"); + sorry ("mudflap: this language is not supported"); } void |