--- gcc/graphite-isl-ast-to-gimple.c | 2 ++ gcc/testsuite/gcc.dg/graphite/pr68493.c | 34 +++++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 gcc/testsuite/gcc.dg/graphite/pr68493.c
diff --git a/gcc/graphite-isl-ast-to-gimple.c b/gcc/graphite-isl-ast-to-gimple.c index 30c3a21..2783ac4 100644 --- a/gcc/graphite-isl-ast-to-gimple.c +++ b/gcc/graphite-isl-ast-to-gimple.c @@ -2760,6 +2760,8 @@ translate_isl_ast_to_gimple::translate_pending_phi_nodes () fprintf (dump_file, "[codegen] to new-phi: "); print_gimple_stmt (dump_file, new_phi, 0, 0); } + if (codegen_error) + return; } } diff --git a/gcc/testsuite/gcc.dg/graphite/pr68493.c b/gcc/testsuite/gcc.dg/graphite/pr68493.c new file mode 100644 index 0000000..95f3699 --- /dev/null +++ b/gcc/testsuite/gcc.dg/graphite/pr68493.c @@ -0,0 +1,34 @@ +/* { dg-options "-O1 -floop-nest-optimize" } */ + +int ce[2]; +int o5; +int p7; + +int foo (void) +{ + int j1; + ce[0] = 0; + for (j1 = 0; j1 < 2; ++j1) + for (o5 = 1; o5 >= 0; --o5) + p7 += ce[o5]; + return 0; +} + +int du; + +int bar (void) +{ + int u7[2]; + int ar; + + for (ar = 0; ar < 2; ++ar) { + int xo; + + for (xo = 0; xo < 2; ++xo) { + du += u7[ar]; + u7[0] = 0; + } + } + + return 0; +} -- 1.9.1