expr.c (do_jump, [...]): Ensure the end of an exception region comes after its start.
authorMike Stump <mrs@gcc.gnu.org>
Thu, 25 Jul 1996 23:14:00 +0000 (23:14 +0000)
committerMike Stump <mrs@gcc.gnu.org>
Thu, 25 Jul 1996 23:14:00 +0000 (23:14 +0000)
* expr.c (do_jump, case TRUTH_ORIF_EXPR): Ensure the end of an
exception region comes after its start.
(do_jump, case TRUTH_ANDIF_EXPR): Likewise.

From-SVN: r12565

gcc/expr.c

index 5dc9bcd828e9ec3d06344713e010cd0696c14f4c..7a12b9eb0217fbc0d2be43ec9fc5b054412fa5d3 100644 (file)
@@ -9938,9 +9938,9 @@ do_jump (exp, if_false_label, if_true_label)
        start_sequence ();
        do_jump (TREE_OPERAND (exp, 1), if_false_label, if_true_label);
        seq2 = get_insns ();
+       cleanups = defer_cleanups_to (old_cleanups);
        end_sequence ();
 
-       cleanups = defer_cleanups_to (old_cleanups);
        if (cleanups)
          {
            rtx flag = gen_reg_rtx (word_mode);
@@ -10002,9 +10002,9 @@ do_jump (exp, if_false_label, if_true_label)
        start_sequence ();
        do_jump (TREE_OPERAND (exp, 1), if_false_label, if_true_label);
        seq2 = get_insns ();
+       cleanups = defer_cleanups_to (old_cleanups);
        end_sequence ();
 
-       cleanups = defer_cleanups_to (old_cleanups);
        if (cleanups)
          {
            rtx flag = gen_reg_rtx (word_mode);