summaryrefslogtreecommitdiff
path: root/gcc/gimple.h
diff options
context:
space:
mode:
authorsteven <steven@138bc75d-0d04-0410-961f-82ee72b054a4>2012-05-02 12:57:10 +0000
committersteven <steven@138bc75d-0d04-0410-961f-82ee72b054a4>2012-05-02 12:57:10 +0000
commitb59e1c9023def96fa20cda22d3366650d22b3763 (patch)
treeb7785a15881f825f1471e07b5eba334ae18d62ad /gcc/gimple.h
parent38b1f0b0ab2c3b3a80f877427cc0ccb6992d7c28 (diff)
downloadgcc-b59e1c9023def96fa20cda22d3366650d22b3763.tar.gz
gcc/
PR middle-end/53153 * gimplify.c (preprocess_case_label_vec_for_gimple): New function, split out from ... (gimplify_switch_expr): ... here. * gimple.h (preprocess_case_label_vec_for_gimple): Add prototype. * tree-ssa-forwprop.c (simplify_gimple_switch_label_vec): New function to clean up case labels with values outside the index type range. (simplify_gimple_switch): Call it if something changed. Remove strange and unnecessary assert. testsuite/ PR middle-end/53153 * gcc.dg/pr53153.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187048 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/gimple.h')
-rw-r--r--gcc/gimple.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/gimple.h b/gcc/gimple.h
index c3e07983d73..e0f8660fba3 100644
--- a/gcc/gimple.h
+++ b/gcc/gimple.h
@@ -922,6 +922,7 @@ gimple gimple_build_transaction (gimple_seq, tree);
gimple gimple_build_predict (enum br_predictor, enum prediction);
enum gimple_statement_structure_enum gss_for_assign (enum tree_code);
void sort_case_labels (VEC(tree,heap) *);
+void preprocess_case_label_vec_for_gimple (VEC(tree,heap) *, tree, tree *);
void gimple_set_body (tree, gimple_seq);
gimple_seq gimple_body (tree);
bool gimple_has_body_p (tree);