All in-tree users of "final" now pass in an rtx_insn * for the first
param.

gcc/
        * output.h (final): Strengthen param 1 from rtx to rtx_insn *.
        * final.c (final): Likewise.  Rename param back from
        "uncast_first" to "first" and eliminate the checked cast from rtx
        to rtx_insn *.
---
 gcc/final.c  | 3 +--
 gcc/output.h | 2 +-
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/gcc/final.c b/gcc/final.c
index 0ef0bbb..6937d0d 100644
--- a/gcc/final.c
+++ b/gcc/final.c
@@ -1958,9 +1958,8 @@ dump_basic_block_info (FILE *file, rtx_insn *insn, 
basic_block *start_to_bb,
    For description of args, see `final_start_function', above.  */
 
 void
-final (rtx uncast_first, FILE *file, int optimize_p)
+final (rtx_insn *first, FILE *file, int optimize_p)
 {
-  rtx_insn *first = as_a_nullable <rtx_insn *> (uncast_first);
   rtx_insn *insn, *next;
   int seen = 0;
 
diff --git a/gcc/output.h b/gcc/output.h
index 05e7666..b4c8c47 100644
--- a/gcc/output.h
+++ b/gcc/output.h
@@ -65,7 +65,7 @@ extern void final_start_function (rtx, FILE *, int);
 extern void final_end_function (void);
 
 /* Output assembler code for some insns: all or part of a function.  */
-extern void final (rtx, FILE *, int);
+extern void final (rtx_insn *, FILE *, int);
 
 /* The final scan for one insn, INSN.  Args are same as in `final', except
    that INSN is the insn being scanned.  Value returned is the next insn to
-- 
1.8.5.3

Reply via email to