pa.h (VAL_U6_BITS_P): Define.
authorJohn David Anglin <dave.anglin@nrc-cnrc.gc.ca>
Wed, 9 Jan 2013 03:01:07 +0000 (03:01 +0000)
committerJohn David Anglin <danglin@gcc.gnu.org>
Wed, 9 Jan 2013 03:01:07 +0000 (03:01 +0000)
commitf6f94d948b86797d83dbb05a454c24227af83378
tree0cbde4d9f4cd5ba302b8129439c2dc85107fcdf2
parent2a4e207b711fda02c76a844e55ce44f0286e4f67
pa.h (VAL_U6_BITS_P): Define.

* config/pa/pa.h (VAL_U6_BITS_P): Define.
(INT_U6_BITS): Likewise.
* config/pa/predicates.md (uint6_operand): New predicate.
(shift5_operand, shift6_operand): Likewise.
* config/pa/pa.md (lshrsi3, rotrsi3): Use shift5_operand instead of
arith32_operand.
(lshrdi3): Use shift6_operand.
(shrpsi4, shrpdi4): New insn patterns.
(extzv): Delete expander.
(extzvsi, extzvdi): New expanders.  Use uint5_operand and uint6_operand
predicates in unamed zero extract patterns.  Tighten common constraint.
(extv): Delete expander.
(extvsi, extvdi): New expanders.  Use uint5_operand and uint6_operand
predicates in unamed sign extract patterns.  Tighten common constraint.
(insv): Delete expander.
(insvsi, insvdi): New expanders.  Use uint5_operand and uint6_operand
predicates in unamed insert patterns.  Tighten common constraint.
Change uint32_operand predicate to uint6_operand predicate in unamed
DImode pattern to insert constant values of type 1...1xxxx.

From-SVN: r195045
gcc/ChangeLog
gcc/config/pa/pa.h
gcc/config/pa/pa.md
gcc/config/pa/predicates.md