mirror of git://gcc.gnu.org/git/gcc.git
s390.md: ("INT"): New mode macro.
2005-05-09 Adrian Straetling <straetling@de.ibm.com> * config/s390/s390.md: ("INT"): New mode macro. ("one_cmpldi2", "one_cmplsi2", "one_cmplhi2", "one_cmplqi2"): Merge. From-SVN: r99451
This commit is contained in:
parent
9db2f16da9
commit
342cf42be3
|
@ -1,3 +1,8 @@
|
||||||
|
2005-05-09 Adrian Straetling <straetling@de.ibm.com>
|
||||||
|
|
||||||
|
* config/s390/s390.md: ("INT"): New mode macro.
|
||||||
|
("one_cmpldi2", "one_cmplsi2", "one_cmplhi2", "one_cmplqi2"):
|
||||||
|
Merge.
|
||||||
|
|
||||||
2005-05-09 Adrian Straetling <straetling@de.ibm.com>
|
2005-05-09 Adrian Straetling <straetling@de.ibm.com>
|
||||||
|
|
||||||
|
|
|
@ -247,6 +247,10 @@
|
||||||
;; the same template.
|
;; the same template.
|
||||||
(define_mode_macro HQI [HI QI])
|
(define_mode_macro HQI [HI QI])
|
||||||
|
|
||||||
|
;; This mode macro allows the integer patterns to be defined from the
|
||||||
|
;; same template.
|
||||||
|
(define_mode_macro INT [(DI "TARGET_64BIT") SI HI QI])
|
||||||
|
|
||||||
|
|
||||||
;; ICM mask required to load MODE value into the highest subreg
|
;; ICM mask required to load MODE value into the highest subreg
|
||||||
;; of a SImode register.
|
;; of a SImode register.
|
||||||
|
@ -6582,52 +6586,13 @@
|
||||||
;;
|
;;
|
||||||
|
|
||||||
;
|
;
|
||||||
; one_cmpldi2 instruction pattern(s).
|
; one_cmpl(di|si|hi|qi)2 instruction pattern(s).
|
||||||
;
|
;
|
||||||
|
|
||||||
(define_expand "one_cmpldi2"
|
(define_expand "one_cmpl<mode>2"
|
||||||
[(parallel
|
[(parallel
|
||||||
[(set (match_operand:DI 0 "register_operand" "")
|
[(set (match_operand:INT 0 "register_operand" "")
|
||||||
(xor:DI (match_operand:DI 1 "register_operand" "")
|
(xor:INT (match_operand:INT 1 "register_operand" "")
|
||||||
(const_int -1)))
|
|
||||||
(clobber (reg:CC 33))])]
|
|
||||||
"TARGET_64BIT"
|
|
||||||
"")
|
|
||||||
|
|
||||||
;
|
|
||||||
; one_cmplsi2 instruction pattern(s).
|
|
||||||
;
|
|
||||||
|
|
||||||
(define_expand "one_cmplsi2"
|
|
||||||
[(parallel
|
|
||||||
[(set (match_operand:SI 0 "register_operand" "")
|
|
||||||
(xor:SI (match_operand:SI 1 "register_operand" "")
|
|
||||||
(const_int -1)))
|
|
||||||
(clobber (reg:CC 33))])]
|
|
||||||
""
|
|
||||||
"")
|
|
||||||
|
|
||||||
;
|
|
||||||
; one_cmplhi2 instruction pattern(s).
|
|
||||||
;
|
|
||||||
|
|
||||||
(define_expand "one_cmplhi2"
|
|
||||||
[(parallel
|
|
||||||
[(set (match_operand:HI 0 "register_operand" "")
|
|
||||||
(xor:HI (match_operand:HI 1 "register_operand" "")
|
|
||||||
(const_int -1)))
|
|
||||||
(clobber (reg:CC 33))])]
|
|
||||||
""
|
|
||||||
"")
|
|
||||||
|
|
||||||
;
|
|
||||||
; one_cmplqi2 instruction pattern(s).
|
|
||||||
;
|
|
||||||
|
|
||||||
(define_expand "one_cmplqi2"
|
|
||||||
[(parallel
|
|
||||||
[(set (match_operand:QI 0 "register_operand" "")
|
|
||||||
(xor:QI (match_operand:QI 1 "register_operand" "")
|
|
||||||
(const_int -1)))
|
(const_int -1)))
|
||||||
(clobber (reg:CC 33))])]
|
(clobber (reg:CC 33))])]
|
||||||
""
|
""
|
||||||
|
|
Loading…
Reference in New Issue