This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[committed] Remove bogus TARGET_DEBUG_D_MODE conditions
- From: Richard Sandiford <rdsandiford at googlemail dot com>
- To: gcc-patches at gcc dot gnu dot org
- Date: Fri, 13 Jun 2008 08:07:20 +0100
- Subject: [committed] Remove bogus TARGET_DEBUG_D_MODE conditions
There used to be a whole plethora of TARGET_DEBUG_* conditions in
the MIPS port. These days we just have two:
TARGET_DEBUG_MODE, which isn't used in the sources, but which
I remember someone said they found useful for debugging.
TARGET_DEBUG_D_MODE, which disables certain splits.
TARGET_DEBUG_D_MODE controls whether some extended MIPS16 instructions
are split into two unextended instructions. That's something it might
be interesting to experiment with, so I'm not proposing to remove it.
But TARGET_DEBUG_D_MODE is also used for splitters that must trigger
for correctness; if they don't, you'll get an ICE.
This patch removes TARGET_DEBUG_D_MODE from the latter category
(at least in the cases I could spot). Tested on mipsisa64-elfoabi
and applied.
Richard
gcc/
* config/mips/mips.md: Remove TARGET_DEBUG_D_MODE conditions from
splits that must be made for correctness.
Index: gcc/config/mips/mips.md
===================================================================
--- gcc/config/mips/mips.md 2008-06-13 08:00:59.000000000 +0100
+++ gcc/config/mips/mips.md 2008-06-13 08:01:12.000000000 +0100
@@ -1295,7 +1295,7 @@ (define_split
(match_operand:SI 3 "d_operand")))
(clobber (match_operand:SI 4 "lo_operand"))
(clobber (match_operand:SI 5 "d_operand"))]
- "reload_completed && !TARGET_DEBUG_D_MODE"
+ "reload_completed"
[(parallel [(set (match_dup 5)
(mult:SI (match_dup 1) (match_dup 2)))
(clobber (match_dup 4))])
@@ -1311,7 +1311,7 @@ (define_split
(match_operand:SI 3 "lo_operand")))
(clobber (match_dup 3))
(clobber (scratch:SI))]
- "reload_completed && !TARGET_DEBUG_D_MODE"
+ "reload_completed"
[(parallel [(set (match_dup 3)
(plus:SI (mult:SI (match_dup 1) (match_dup 2))
(match_dup 3)))
@@ -1523,7 +1523,7 @@ (define_split
(match_operand:SI 3 "d_operand"))))
(clobber (match_operand:SI 4 "lo_operand"))
(clobber (match_operand:SI 5 "d_operand"))]
- "reload_completed && !TARGET_DEBUG_D_MODE"
+ "reload_completed"
[(parallel [(set (match_dup 5)
(mult:SI (match_dup 2) (match_dup 3)))
(clobber (match_dup 4))])
@@ -1539,7 +1539,7 @@ (define_split
(match_operand:SI 3 "d_operand"))))
(clobber (match_dup 1))
(clobber (scratch:SI))]
- "reload_completed && !TARGET_DEBUG_D_MODE"
+ "reload_completed"
[(parallel [(set (match_dup 1)
(minus:SI (match_dup 1)
(mult:SI (match_dup 2) (match_dup 3))))
@@ -5842,7 +5842,7 @@ (define_insn "eh_set_lr_di"
(define_split
[(unspec [(match_operand 0 "register_operand")] UNSPEC_EH_RETURN)
(clobber (match_scratch 1))]
- "reload_completed && !TARGET_DEBUG_D_MODE"
+ "reload_completed"
[(const_int 0)]
{
mips_set_return_address (operands[0], operands[1]);