summaryrefslogtreecommitdiff
path: root/gcc/jump.c
diff options
context:
space:
mode:
authordmalcolm <dmalcolm@138bc75d-0d04-0410-961f-82ee72b054a4>2014-08-27 20:33:38 +0000
committerdmalcolm <dmalcolm@138bc75d-0d04-0410-961f-82ee72b054a4>2014-08-27 20:33:38 +0000
commitae799283c5ecc25191575fb5ec2bc16d97674437 (patch)
tree66e196517fd89856bf4cc787decc8acce49a4e4a /gcc/jump.c
parentede4900a3370698d85011d12fc89b3ff2e41e7bf (diff)
downloadgcc-ae799283c5ecc25191575fb5ec2bc16d97674437.tar.gz
Use rtx_expr_list for expr_status.x_forced_labels
gcc/ 2014-08-27 David Malcolm <dmalcolm@redhat.com> * function.h (struct expr_status): Strengthen field "x_forced_labels" from rtx to rtx_expr_list *. * cfgbuild.c (make_edges): Split local "x" into two locals, strengthening one from rtx to rtx_expr_list *, and using methods of said class. * dwarf2cfi.c (create_trace_edges): Split local "lab" out; within loop over forced_labels, introduce strengthen it from rtx to rtx_expr_list *, using methods to clarify the code. * jump.c (rebuild_jump_labels_1): Strengthen local "insn" from rtx to rtx_expr_list *, using methods of said class to clarify the code. * reload1.c (set_initial_label_offsets): Split local "x" into two per-loop variables, strengthening the first from rtx to rtx_expr_list * and using methods. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214602 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/jump.c')
-rw-r--r--gcc/jump.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/jump.c b/gcc/jump.c
index a28300c2d73..b8d3d52cea9 100644
--- a/gcc/jump.c
+++ b/gcc/jump.c
@@ -74,7 +74,7 @@ static int returnjump_p_1 (rtx *, void *);
static void
rebuild_jump_labels_1 (rtx_insn *f, bool count_forced)
{
- rtx insn;
+ rtx_expr_list *insn;
timevar_push (TV_REBUILD_JUMP);
init_label_info (f);
@@ -85,9 +85,9 @@ rebuild_jump_labels_1 (rtx_insn *f, bool count_forced)
count doesn't drop to zero. */
if (count_forced)
- for (insn = forced_labels; insn; insn = XEXP (insn, 1))
- if (LABEL_P (XEXP (insn, 0)))
- LABEL_NUSES (XEXP (insn, 0))++;
+ for (insn = forced_labels; insn; insn = insn->next ())
+ if (LABEL_P (insn->element ()))
+ LABEL_NUSES (insn->element ())++;
timevar_pop (TV_REBUILD_JUMP);
}