summaryrefslogtreecommitdiffstats
path: root/contrib/gcc/tree-if-conv.c
diff options
context:
space:
mode:
authormm <mm@FreeBSD.org>2011-03-29 20:53:51 +0000
committermm <mm@FreeBSD.org>2011-03-29 20:53:51 +0000
commit24a0f968ca05de3f4d12a803e9141af94f6d0aee (patch)
tree8dd18f9d0a6d8b9d0b38d505e33d37244cd1c655 /contrib/gcc/tree-if-conv.c
parent9d571f70778884c98026689ff71368ffa7c1cb9d (diff)
downloadFreeBSD-src-24a0f968ca05de3f4d12a803e9141af94f6d0aee.zip
FreeBSD-src-24a0f968ca05de3f4d12a803e9141af94f6d0aee.tar.gz
Upgrade of base gcc and libstdc++ to the last GPLv2-licensed revision
(rev. 127959 of gcc-4_2-branch). Resolved GCC bugs: c++: 17763, 29365, 30535, 30917, 31337, 31941, 32108, 32112, 32346, 32898, 32992 debug: 32610, 32914 libstdc++: 33084, 33128 middle-end: 32563 rtl-optimization: 33148 tree-optimization: 25413, 32723 target: 32218 Tested by: pointyhat (miwi) Obtained from: gcc (gcc-4_2-branch up to rev. 127959) PR: gnu/153298, gnu/153959, gnu/154385 MFC after: 1 month
Diffstat (limited to 'contrib/gcc/tree-if-conv.c')
-rw-r--r--contrib/gcc/tree-if-conv.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/contrib/gcc/tree-if-conv.c b/contrib/gcc/tree-if-conv.c
index 5b4a9a33..722721a 100644
--- a/contrib/gcc/tree-if-conv.c
+++ b/contrib/gcc/tree-if-conv.c
@@ -743,7 +743,7 @@ find_phi_replacement_condition (struct loop *loop,
if (TREE_CODE (*cond) == TRUTH_NOT_EXPR)
/* We can be smart here and choose inverted
condition without switching bbs. */
- *cond = invert_truthvalue (*cond);
+ *cond = invert_truthvalue (*cond);
else
/* Select non loop header bb. */
first_edge = second_edge;
@@ -762,9 +762,11 @@ find_phi_replacement_condition (struct loop *loop,
/* Create temp. for the condition. Vectorizer prefers to have gimple
value as condition. Various targets use different means to communicate
- condition in vector compare operation. Using gimple value allows compiler
- to emit vector compare and select RTL without exposing compare's result. */
- *cond = force_gimple_operand (*cond, &new_stmts, false, NULL_TREE);
+ condition in vector compare operation. Using gimple value allows
+ compiler to emit vector compare and select RTL without exposing
+ compare's result. */
+ *cond = force_gimple_operand (unshare_expr (*cond), &new_stmts,
+ false, NULL_TREE);
if (new_stmts)
bsi_insert_before (bsi, new_stmts, BSI_SAME_STMT);
if (!is_gimple_reg (*cond) && !is_gimple_condexpr (*cond))
OpenPOWER on IntegriCloud