emit_jump_table_data returns an rtx_jump_table_data *
authorDavid Malcolm <dmalcolm@redhat.com>
Tue, 19 Aug 2014 20:22:09 +0000 (20:22 +0000)
committerDavid Malcolm <dmalcolm@gcc.gnu.org>
Tue, 19 Aug 2014 20:22:09 +0000 (20:22 +0000)
2014-08-19  David Malcolm  <dmalcolm@redhat.com>

* emit-rtl.c (emit_jump_table_data): Strengthen return type from
rtx to rtx_jump_table_data *.  Also for local.
* rtl.h (emit_jump_table_data): Likewise.

From-SVN: r214193

gcc/ChangeLog
gcc/emit-rtl.c
gcc/rtl.h

index 6c71a91..403edb9 100644 (file)
@@ -1,5 +1,11 @@
 2014-08-19  David Malcolm  <dmalcolm@redhat.com>
 
+       * emit-rtl.c (emit_jump_table_data): Strengthen return type from
+       rtx to rtx_jump_table_data *.  Also for local.
+       * rtl.h (emit_jump_table_data): Likewise.
+
+2014-08-19  David Malcolm  <dmalcolm@redhat.com>
+
        * basic-block.h (create_basic_block_structure): Strengthen third
        param "bb_note" from rtx to rtx_note *.
        * rtl.h (emit_note_before): Strengthen return type from rtx to
index a254f9a..75fb439 100644 (file)
@@ -4998,10 +4998,11 @@ emit_label (rtx label)
 /* Make an insn of code JUMP_TABLE_DATA
    and add it to the end of the doubly-linked list.  */
 
-rtx
+rtx_jump_table_data *
 emit_jump_table_data (rtx table)
 {
-  rtx jump_table_data = rtx_alloc (JUMP_TABLE_DATA);
+  rtx_jump_table_data *jump_table_data =
+    as_a <rtx_jump_table_data *> (rtx_alloc (JUMP_TABLE_DATA));
   INSN_UID (jump_table_data) = cur_insn_uid++;
   PATTERN (jump_table_data) = table;
   BLOCK_FOR_INSN (jump_table_data) = NULL;
index 6d9defe..13494fd 100644 (file)
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -2414,7 +2414,7 @@ extern rtx emit_debug_insn (rtx);
 extern rtx emit_jump_insn (rtx);
 extern rtx emit_call_insn (rtx);
 extern rtx emit_label (rtx);
-extern rtx emit_jump_table_data (rtx);
+extern rtx_jump_table_data *emit_jump_table_data (rtx);
 extern rtx emit_barrier (void);
 extern rtx_note *emit_note (enum insn_note);
 extern rtx_note *emit_note_copy (rtx_note *);