diff options
author | Richard Biener <rguenther@suse.de> | 2017-05-02 12:43:47 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2017-05-02 12:43:47 +0000 |
commit | 2bf54d93f159210d0c05a07c655eb847c069365c (patch) | |
tree | ddcdc5b7297fd81372eb0759c3151dac988eb799 /gcc/ipa-inline.c | |
parent | 03dc1f5f90a13c84967f8c2e684b076983f11d55 (diff) | |
download | gcc-2bf54d93f159210d0c05a07c655eb847c069365c.zip gcc-2bf54d93f159210d0c05a07c655eb847c069365c.tar.gz gcc-2bf54d93f159210d0c05a07c655eb847c069365c.tar.bz2 |
common.opt (fstrict-overflow): Alias negative to fwrapv.
2017-05-02 Richard Biener <rguenther@suse.de>
* common.opt (fstrict-overflow): Alias negative to fwrapv.
* doc/invoke.texi (fstrict-overflow): Remove all traces of
-fstrict-overflow documentation.
* tree.h (TYPE_OVERFLOW_UNDEFINED): Do not test flag_strict_overflow.
(POINTER_TYPE_OVERFLOW_UNDEFINED): Test !flag_wrapv instead of
flag_strict_overflow.
* ipa-inline.c (can_inline_edge_p): Do not test flag_strict_overflow.
* lto-opts.c (lto_write_options): Do not stream it.
* lto-wrapper.c (merge_and_complain): Do not handle it.
* opts.c (default_options_table): Do not set -fstrict-overflow.
(finish_options): Likewise do not clear it when sanitizing.
* simplify-rtx.c (simplify_const_relational_operation): Do not
test flag_strict_overflow.
ada/
* gcc-interface/misc.c (gnat_post_options): Do not set
-fstrict-overflow.
* c-c++-common/Wlogical-op-1.c: Add -fwrapv to restore previous
behavior.
* gcc.target/i386/pr46253.c: Make i unsigned to avoid warning.
From-SVN: r247495
Diffstat (limited to 'gcc/ipa-inline.c')
-rw-r--r-- | gcc/ipa-inline.c | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/gcc/ipa-inline.c b/gcc/ipa-inline.c index dedacc9..2be02b6 100644 --- a/gcc/ipa-inline.c +++ b/gcc/ipa-inline.c @@ -404,14 +404,7 @@ can_inline_edge_p (struct cgraph_edge *e, bool report, /* There are some options that change IL semantics which means we cannot inline in these cases for correctness reason. Not even for always_inline declared functions. */ - /* Strictly speaking only when the callee contains signed integer - math where overflow is undefined. */ - else if ((check_maybe_up (flag_strict_overflow) - /* this flag is set by optimize. Allow inlining across - optimize boundary. */ - && (!opt_for_fn (caller->decl, optimize) - == !opt_for_fn (callee->decl, optimize) || !always_inline)) - || check_match (flag_wrapv) + else if (check_match (flag_wrapv) || check_match (flag_trapv) /* When caller or callee does FP math, be sure FP codegen flags compatible. */ |