diff options
author | Aditya Kumar <aditya.k7@samsung.com> | 2015-11-19 20:35:12 +0000 |
---|---|---|
committer | Sebastian Pop <spop@gcc.gnu.org> | 2015-11-19 20:35:12 +0000 |
commit | 09b574dda9435d300108fa98e1f5afd873ee9001 (patch) | |
tree | f407dee631fcdb82a0a1aada6d4cd67a367a35c2 | |
parent | 2d25681660450f2c33b653339da158c00155430b (diff) | |
download | gcc-09b574dda9435d300108fa98e1f5afd873ee9001.zip gcc-09b574dda9435d300108fa98e1f5afd873ee9001.tar.gz gcc-09b574dda9435d300108fa98e1f5afd873ee9001.tar.bz2 |
fix bootstrap without ISL on old linkers
With and without this patch passes bootstrap on x86_64-linux with and without ISL.
The problem occurs on systems with older linkers that do not remove dead symbols.
From-SVN: r230625
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/graphite-isl-ast-to-gimple.c | 32 | ||||
-rw-r--r-- | gcc/sese.c | 32 | ||||
-rw-r--r-- | gcc/sese.h | 2 |
4 files changed, 40 insertions, 33 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 096b069..cf75f44 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2015-11-19 Aditya Kumar <aditya.k7@samsung.com> + + * graphite-isl-ast-to-gimple.c (get_true_edge_from_guard_bb): Move... + (get_false_edge_from_guard_bb): Move... + * sese.c (get_false_edge_from_guard_bb) + (get_true_edge_from_guard_bb): ... here. + 2015-11-19 David Edelsohn <dje.gcc@gmail.com> Revert diff --git a/gcc/graphite-isl-ast-to-gimple.c b/gcc/graphite-isl-ast-to-gimple.c index 3e0907d..e84f738 100644 --- a/gcc/graphite-isl-ast-to-gimple.c +++ b/gcc/graphite-isl-ast-to-gimple.c @@ -1125,38 +1125,6 @@ translate_isl_ast_to_gimple::translate_isl_ast (loop_p context_loop, } } -/* Returns the first successor edge of BB with EDGE_TRUE_VALUE flag set. */ - -edge -get_true_edge_from_guard_bb (basic_block bb) -{ - edge e; - edge_iterator ei; - - FOR_EACH_EDGE (e, ei, bb->succs) - if (e->flags & EDGE_TRUE_VALUE) - return e; - - gcc_unreachable (); - return NULL; -} - -/* Returns the first successor edge of BB with EDGE_TRUE_VALUE flag cleared. */ - -edge -get_false_edge_from_guard_bb (basic_block bb) -{ - edge e; - edge_iterator ei; - - FOR_EACH_EDGE (e, ei, bb->succs) - if (!(e->flags & EDGE_TRUE_VALUE)) - return e; - - gcc_unreachable (); - return NULL; -} - /* Return true when BB contains loop close phi nodes. A loop close phi node is at the exit of loop which takes one argument that is the last value of the variable being used out of the loop. */ @@ -355,6 +355,38 @@ outermost_loop_in_sese (sese_l ®ion, basic_block bb) return nest; } +/* Returns the first successor edge of BB with EDGE_TRUE_VALUE flag set. */ + +edge +get_true_edge_from_guard_bb (basic_block bb) +{ + edge e; + edge_iterator ei; + + FOR_EACH_EDGE (e, ei, bb->succs) + if (e->flags & EDGE_TRUE_VALUE) + return e; + + gcc_unreachable (); + return NULL; +} + +/* Returns the first successor edge of BB with EDGE_TRUE_VALUE flag cleared. */ + +edge +get_false_edge_from_guard_bb (basic_block bb) +{ + edge e; + edge_iterator ei; + + FOR_EACH_EDGE (e, ei, bb->succs) + if (!(e->flags & EDGE_TRUE_VALUE)) + return e; + + gcc_unreachable (); + return NULL; +} + /* Sets the false region of an IF_REGION to REGION. */ void @@ -236,9 +236,9 @@ typedef struct ifsese_s { extern void if_region_set_false_region (ifsese, sese_info_p); extern ifsese move_sese_in_condition (sese_info_p); +extern void set_ifsese_condition (ifsese, tree); extern edge get_true_edge_from_guard_bb (basic_block); extern edge get_false_edge_from_guard_bb (basic_block); -extern void set_ifsese_condition (ifsese, tree); static inline edge if_region_entry (ifsese if_region) |