diff options
Diffstat (limited to 'gcc/config/mn10300/mn10300.md')
-rw-r--r-- | gcc/config/mn10300/mn10300.md | 44 |
1 files changed, 41 insertions, 3 deletions
diff --git a/gcc/config/mn10300/mn10300.md b/gcc/config/mn10300/mn10300.md index 770f7c5..f889aa6 100644 --- a/gcc/config/mn10300/mn10300.md +++ b/gcc/config/mn10300/mn10300.md @@ -1,5 +1,5 @@ ;; GCC machine description for Matsushita MN10300 -;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002 +;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 ;; Free Software Foundation, Inc. ;; Contributed by Jeff Law (law@cygnus.com). @@ -520,7 +520,26 @@ abort (); } }" - [(set_attr "cc" "none,none,clobber,none_0hit,none_0hit,none_0hit,none_0hit,none_0hit,none_0hit,none_0hit,none_0hit,none_0hit")]) + [(set (attr "cc") + (cond + [ + (lt (symbol_ref "which_alternative") (const_int 2) + ) (const_string "none") + (eq (symbol_ref "which_alternative") (const_int 2) + ) (const_string "clobber") + (eq (symbol_ref "which_alternative") (const_int 3) + ) (if_then_else + (ne (symbol_ref "rtx_equal_p (operands[0], operands[1])") + (const_int 0)) (const_string "clobber") + (const_string "none_0hit")) + (ior (eq (symbol_ref "which_alternative") (const_int 8)) + (eq (symbol_ref "which_alternative") (const_int 9)) + ) (if_then_else + (ne (symbol_ref "mn10300_wide_const_load_uses_clr + (operands)") + (const_int 0)) (const_string "clobber") + (const_string "none_0hit")) + ] (const_string "none_0hit")))]) (define_expand "movdf" [(set (match_operand:DF 0 "general_operand" "") @@ -670,7 +689,26 @@ abort (); } }" - [(set_attr "cc" "none,none,clobber,none_0hit,none_0hit,none_0hit,none_0hit,none_0hit,none_0hit,none_0hit,none_0hit,none_0hit")]) + [(set (attr "cc") + (cond + [ + (lt (symbol_ref "which_alternative") (const_int 2) + ) (const_string "none") + (eq (symbol_ref "which_alternative") (const_int 2) + ) (const_string "clobber") + (eq (symbol_ref "which_alternative") (const_int 3) + ) (if_then_else + (ne (symbol_ref "rtx_equal_p (operands[0], operands[1])") + (const_int 0)) (const_string "clobber") + (const_string "none_0hit")) + (ior (eq (symbol_ref "which_alternative") (const_int 8)) + (eq (symbol_ref "which_alternative") (const_int 9)) + ) (if_then_else + (ne (symbol_ref "mn10300_wide_const_load_uses_clr + (operands)") + (const_int 0)) (const_string "clobber") + (const_string "none_0hit")) + ] (const_string "none_0hit")))]) |