From b0b592fc7b750423b8310756a24a06b2ac7e412c Mon Sep 17 00:00:00 2001 From: Tom de Vries Date: Tue, 20 Mar 2018 09:14:07 +0000 Subject: [PATCH] [nvptx] Fix prevent_branch_around_nothing 2018-03-20 Tom de Vries PR target/84954 * config/nvptx/nvptx.c (prevent_branch_around_nothing): Also update seen_label if seen_label is already set. From-SVN: r258674 --- gcc/ChangeLog | 6 ++++++ gcc/config/nvptx/nvptx.c | 9 +++++---- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f7829760592..460802d8b64 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2018-03-20 Tom de Vries + + PR target/84954 + * config/nvptx/nvptx.c (prevent_branch_around_nothing): Also update + seen_label if seen_label is already set. + 2018-03-20 Jakub Jelinek PR target/84945 diff --git a/gcc/config/nvptx/nvptx.c b/gcc/config/nvptx/nvptx.c index a6f444340fd..7b0b182deb2 100644 --- a/gcc/config/nvptx/nvptx.c +++ b/gcc/config/nvptx/nvptx.c @@ -4419,14 +4419,15 @@ prevent_branch_around_nothing (void) rtx_insn *seen_label = NULL; for (rtx_insn *insn = get_insns (); insn; insn = NEXT_INSN (insn)) { - if (seen_label == NULL) + if (INSN_P (insn) && condjump_p (insn)) { - if (INSN_P (insn) && condjump_p (insn)) - seen_label = label_ref_label (nvptx_condjump_label (insn, false)); - + seen_label = label_ref_label (nvptx_condjump_label (insn, false)); continue; } + if (seen_label == NULL) + continue; + if (NOTE_P (insn) || DEBUG_INSN_P (insn)) continue; -- 2.30.2