diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/s390/s390.md | 16 |
2 files changed, 20 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 13debb9..de59cdf 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2009-01-28 Andreas Krebbel <krebbel1@de.ibm.com> + + * config/s390/s390.md (bswap<mode>2): New pattern added. + 2009-01-28 Wolfgang Gellerich <gellerich@de.ibm.com> * config/s390/s390.md (*tls_load_31): Added type attribute. diff --git a/gcc/config/s390/s390.md b/gcc/config/s390/s390.md index 6d5bea2..9c21977 100644 --- a/gcc/config/s390/s390.md +++ b/gcc/config/s390/s390.md @@ -8741,3 +8741,19 @@ [(set_attr "type" "load,larl") (set_attr "op_type" "RXY,RIL") (set_attr "z10prop" "z10_super")]) + + +; +; Byte swap instructions +; + +(define_insn "bswap<mode>2" + [(set (match_operand:GPR 0 "register_operand" "=d, d") + (bswap:GPR (match_operand:GPR 1 "nonimmediate_operand" " d,RT")))] + "" + "@ + lrv<g>r\t%0,%1 + lrv<g>\t%0,%1" + [(set_attr "type" "*,load") + (set_attr "op_type" "RRE,RXY") + (set_attr "z10prop" "z10_super")]) |