aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDavid Malcolm <dmalcolm@redhat.com>2014-08-27 20:08:32 +0000
committerDavid Malcolm <dmalcolm@gcc.gnu.org>2014-08-27 20:08:32 +0000
commit33d9cde485f08edc7ada941aef9229312f38f8ed (patch)
treecc344ee85163a4e1295a0d6f8cbbc53953b8427b /gcc
parente0944870710b48ad98e10e17ac0ae23995947573 (diff)
downloadgcc-33d9cde485f08edc7ada941aef9229312f38f8ed.zip
gcc-33d9cde485f08edc7ada941aef9229312f38f8ed.tar.gz
gcc-33d9cde485f08edc7ada941aef9229312f38f8ed.tar.bz2
jump.c: Use rtx_sequence
gcc/ 2014-08-27 David Malcolm <dmalcolm@redhat.com> * jump.c (mark_jump_label_1): Within the SEQUENCE case, introduce local "seq" with a checked cast, and use methods of rtx_sequence to clarify the code. From-SVN: r214596
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/jump.c9
2 files changed, 12 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 8b33726..4b84f5c 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
2014-08-27 David Malcolm <dmalcolm@redhat.com>
+ * jump.c (mark_jump_label_1): Within the SEQUENCE case, introduce
+ local "seq" with a checked cast, and use methods of rtx_sequence
+ to clarify the code.
+
+2014-08-27 David Malcolm <dmalcolm@redhat.com>
+
* function.c (contains): Introduce local "seq" for PATTERN (insn),
with a checked cast, in the region for where we know it's a
SEQUENCE. Use methods of rtx_sequence.
diff --git a/gcc/jump.c b/gcc/jump.c
index cc0eb02..a28300c 100644
--- a/gcc/jump.c
+++ b/gcc/jump.c
@@ -1117,9 +1117,12 @@ mark_jump_label_1 (rtx x, rtx insn, bool in_mem, bool is_target)
break;
case SEQUENCE:
- for (i = 0; i < XVECLEN (x, 0); i++)
- mark_jump_label (PATTERN (XVECEXP (x, 0, i)),
- XVECEXP (x, 0, i), 0);
+ {
+ rtx_sequence *seq = as_a <rtx_sequence *> (x);
+ for (i = 0; i < seq->len (); i++)
+ mark_jump_label (PATTERN (seq->insn (i)),
+ seq->insn (i), 0);
+ }
return;
case SYMBOL_REF: