From 107a4b414e840fdf9b4f407365bac4ad760d7ed2 Mon Sep 17 00:00:00 2001 From: Nathan Sidwell Date: Tue, 26 Apr 2005 17:55:32 +0000 Subject: [PATCH] mips.c (mips_legitimize_tls_address): Use gcc_unreachable. * config/mips/mips.c (mips_legitimize_tls_address): Use gcc_unreachable. * config/mmix/mmix.c (mmix_assemble_integer): Use gcc_assert. * config/mmix/crti.asm (_init): Reword comment to avoid 'abort'. * config/mmix/mmix.md (nonlocal_goto_receiver): Likewise. * config/sparc/sparc.h (enum reg_class): Reword comment to avoid 'abort'. From-SVN: r98782 --- gcc/ChangeLog | 15 ++++++++++++++- gcc/config/mips/mips.c | 2 +- gcc/config/mmix/crti.asm | 2 +- gcc/config/mmix/mmix.c | 9 ++++----- gcc/config/mmix/mmix.md | 2 +- gcc/config/sparc/sparc.h | 11 ++++++----- 6 files changed, 27 insertions(+), 14 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7e9b9341ae9..6be43297069 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,15 @@ +2005-04-26 Nathan Sidwell + + * config/mips.mips.c (mips_legitimize_tls_address): Use + gcc_unreachable. + + * config/mmix/mmix.c (mmix_assemble_integer): Use gcc_assert. + * config/mmix/crti.asm (_init): Reword comment to avoid 'abort'. + * config/mmix/mmix.md (nonlocal_goto_receiver): Likewise. + + * config/sparc/sparc.h (enum reg_class): Reword comment to avoid + 'abort'. + 2005-04-26 Jeff Law * tree-flow-inline.h (op_iter_next_must_and_may_def): New. @@ -12,7 +24,8 @@ 2005-04-26 Andrew MacLeod - * tree-cfg.c (bsi_replace): Delink immediate uses for the original stmt. + * tree-cfg.c (bsi_replace): Delink immediate uses for the original + stmt. 2005-04-26 Kazu Hirata diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c index 12a6b2debed..84576b29fda 100644 --- a/gcc/config/mips/mips.c +++ b/gcc/config/mips/mips.c @@ -1698,7 +1698,7 @@ mips_legitimize_tls_address (rtx loc) break; default: - abort (); + gcc_unreachable (); } return dest; diff --git a/gcc/config/mmix/crti.asm b/gcc/config/mmix/crti.asm index 68c5f3f04aa..d00dcd59dae 100644 --- a/gcc/config/mmix/crti.asm +++ b/gcc/config/mmix/crti.asm @@ -91,7 +91,7 @@ Main SETL $255,32 % Provide the first part of _init and _fini. Save the return address on the % register stack. We eventually ignore the return address of these % PUSHJ:s, so it doesn't matter that whether .init and .fini code calls -% functions or where they store rJ. We shouldn't get there, so abort +% functions or where they store rJ. We shouldn't get there, so die % (TRAP Halt) if that happens. .section .init,"ax",@progbits diff --git a/gcc/config/mmix/mmix.c b/gcc/config/mmix/mmix.c index 99e3b1793c1..6990f452722 100644 --- a/gcc/config/mmix/mmix.c +++ b/gcc/config/mmix/mmix.c @@ -1302,11 +1302,10 @@ mmix_assemble_integer (rtx x, unsigned int size, int aligned_p) return true; case 8: - if (GET_CODE (x) == CONST_DOUBLE) - /* We don't get here anymore for CONST_DOUBLE, because DImode - isn't expressed as CONST_DOUBLE, and DFmode is handled - elsewhere. */ - abort (); + /* We don't get here anymore for CONST_DOUBLE, because DImode + isn't expressed as CONST_DOUBLE, and DFmode is handled + elsewhere. */ + gcc_assert (GET_CODE (x) != CONST_DOUBLE); assemble_integer_with_op ("\tOCTA\t", x); return true; } diff --git a/gcc/config/mmix/mmix.md b/gcc/config/mmix/mmix.md index 827ed4bd946..94a55782229 100644 --- a/gcc/config/mmix/mmix.md +++ b/gcc/config/mmix/mmix.md @@ -1216,7 +1216,7 @@ DIVU %1,%1,%2\;GET %0,:rR\;NEGU %2,0,%0\;CSNN %0,$255,%2") ;; the frame-pointer would be located). ;; In the nonlocal goto receiver, we unwind the register stack by a series ;; of "pop 0,0" until rO equals the saved value. (If it goes lower, we -;; should call abort.) +;; should die with a trap.) (define_expand "nonlocal_goto_receiver" [(parallel [(unspec_volatile [(const_int 0)] 1) (clobber (scratch:DI)) diff --git a/gcc/config/sparc/sparc.h b/gcc/config/sparc/sparc.h index 72416913fb7..dbad1b91365 100644 --- a/gcc/config/sparc/sparc.h +++ b/gcc/config/sparc/sparc.h @@ -1008,11 +1008,12 @@ extern int sparc_mode_class[]; because reg_class_subunion[GENERAL_REGS][FP_REGS] will yield FP_REGS, because FP_REGS > GENERAL_REGS. - It is also important that one class contain all the general and all the - fp regs. Otherwise when spilling a DFmode reg, it may be from EXTRA_FP_REGS - but find_reloads() may use class GENERAL_OR_FP_REGS. This will cause - allocate_reload_reg() to bypass it causing an abort because the compiler - thinks it doesn't have a spill reg when in fact it does. + It is also important that one class contain all the general and all + the fp regs. Otherwise when spilling a DFmode reg, it may be from + EXTRA_FP_REGS but find_reloads() may use class + GENERAL_OR_FP_REGS. This will cause allocate_reload_reg() to die + because the compiler thinks it doesn't have a spill reg when in + fact it does. v9 also has 4 floating point condition code registers. Since we don't have a class that is the union of FPCC_REGS with either of the others,