mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-24 20:59:59 +08:00
rs6000.md (movsi_internal2): Use compare for self move record condition.
* config/rs6000/rs6000.md (movsi_internal2): Use compare for self move record condition. (movdi_internal2): Same. From-SVN: r66806
This commit is contained in:
parent
7d63a2fae0
commit
bb84cb12fb
@ -1,3 +1,9 @@
|
||||
2003-05-14 David Edelsohn <edelsohn@gnu.org>
|
||||
|
||||
* config/rs6000/rs6000.md (movsi_internal2): Use compare for self
|
||||
move record condition.
|
||||
(movdi_internal2): Same.
|
||||
|
||||
2003-05-14 Nathan Sidwell <nathan@codesourcery.com>
|
||||
|
||||
* gcov-io.h (gcov_write_bytes, gcov_read_bytes): Remove here.
|
||||
|
@ -7709,17 +7709,18 @@
|
||||
}")
|
||||
|
||||
(define_insn "*movsi_internal2"
|
||||
[(set (match_operand:CC 2 "cc_reg_operand" "=x,?y")
|
||||
(compare:CC (match_operand:SI 1 "gpc_reg_operand" "r,r")
|
||||
[(set (match_operand:CC 2 "cc_reg_operand" "=y,x,?y")
|
||||
(compare:CC (match_operand:SI 1 "gpc_reg_operand" "0,r,r")
|
||||
(const_int 0)))
|
||||
(set (match_operand:SI 0 "gpc_reg_operand" "=r,r") (match_dup 1))]
|
||||
(set (match_operand:SI 0 "gpc_reg_operand" "=r,r,r") (match_dup 1))]
|
||||
"! TARGET_POWERPC64"
|
||||
"@
|
||||
{cmpi|cmpwi} %2,%0,0
|
||||
mr. %0,%1
|
||||
#"
|
||||
[(set_attr "type" "compare")
|
||||
(set_attr "length" "4,8")])
|
||||
|
||||
[(set_attr "type" "cmp,compare,cmp")
|
||||
(set_attr "length" "4,4,8")])
|
||||
|
||||
(define_split
|
||||
[(set (match_operand:CC 2 "cc_reg_not_cr0_operand" "")
|
||||
(compare:CC (match_operand:SI 1 "gpc_reg_operand" "")
|
||||
@ -7731,7 +7732,7 @@
|
||||
(compare:CC (match_dup 0)
|
||||
(const_int 0)))]
|
||||
"")
|
||||
|
||||
|
||||
(define_expand "movhi"
|
||||
[(set (match_operand:HI 0 "general_operand" "")
|
||||
(match_operand:HI 1 "any_operand" ""))]
|
||||
@ -8621,18 +8622,18 @@
|
||||
FAIL;
|
||||
}")
|
||||
|
||||
;; Split a load of a large constant into the appropriate five-instruction
|
||||
(define_insn "*movdi_internal2"
|
||||
[(set (match_operand:CC 2 "cc_reg_operand" "=x,?y")
|
||||
(compare:CC (match_operand:DI 1 "gpc_reg_operand" "r,r")
|
||||
[(set (match_operand:CC 2 "cc_reg_operand" "=y,x,?y")
|
||||
(compare:CC (match_operand:DI 1 "gpc_reg_operand" "0,r,r")
|
||||
(const_int 0)))
|
||||
(set (match_operand:DI 0 "gpc_reg_operand" "=r,r") (match_dup 1))]
|
||||
(set (match_operand:DI 0 "gpc_reg_operand" "=r,r,r") (match_dup 1))]
|
||||
"TARGET_POWERPC64"
|
||||
"@
|
||||
cmpdi %2,%0,0
|
||||
mr. %0,%1
|
||||
#"
|
||||
[(set_attr "type" "compare")
|
||||
(set_attr "length" "4,8")])
|
||||
[(set_attr "type" "cmp,compare,cmp")
|
||||
(set_attr "length" "4,4,8")])
|
||||
|
||||
(define_split
|
||||
[(set (match_operand:CC 2 "cc_reg_not_cr0_operand" "")
|
||||
|
Loading…
Reference in New Issue
Block a user