diff options
author | Andreas Krebbel <krebbel1@de.ibm.com> | 2009-01-28 16:41:24 +0000 |
---|---|---|
committer | Andreas Krebbel <krebbel@gcc.gnu.org> | 2009-01-28 16:41:24 +0000 |
commit | 07da44aba4702478a25e8483fd8455360aba760c (patch) | |
tree | 1118eb52ec6358715de30098bcb02062d0a88a6f /gcc | |
parent | cdc15d231a38eccde9a61ef582ae1ddeed6842bb (diff) | |
download | gcc-07da44aba4702478a25e8483fd8455360aba760c.zip gcc-07da44aba4702478a25e8483fd8455360aba760c.tar.gz gcc-07da44aba4702478a25e8483fd8455360aba760c.tar.bz2 |
s390.md (bswap<mode>2): New pattern added.
2009-01-28 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/s390.md (bswap<mode>2): New pattern added.
From-SVN: r143737
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")]) |