diff options
author | James Greenhalgh <james.greenhalgh@arm.com> | 2015-06-19 16:43:04 +0000 |
---|---|---|
committer | James Greenhalgh <jgreenhalgh@gcc.gnu.org> | 2015-06-19 16:43:04 +0000 |
commit | 590f5d5125c96aa8e6e29463e37f23502f0bd673 (patch) | |
tree | 3f5a2ca22d4abc74f850a2b4c9ce2b736a0266ec /gcc/config/vax | |
parent | 590d172b1cf7d3359ec161bc441601bd93170398 (diff) | |
download | gcc-590f5d5125c96aa8e6e29463e37f23502f0bd673.zip gcc-590f5d5125c96aa8e6e29463e37f23502f0bd673.tar.gz gcc-590f5d5125c96aa8e6e29463e37f23502f0bd673.tar.bz2 |
[Patch Vax] zero/sign extend patterns need to be SUBREG aware
gcc/
* config/vax/vax.md: Adjust sign/zero extend patterns to
handle SUBREGs in operands[1].
gcc/testsuite/
* gcc.target/vax/bswapdi-1.c: New.
From-SVN: r224672
Diffstat (limited to 'gcc/config/vax')
-rw-r--r-- | gcc/config/vax/vax.md | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/config/vax/vax.md b/gcc/config/vax/vax.md index 44d162f..d5caa15 100644 --- a/gcc/config/vax/vax.md +++ b/gcc/config/vax/vax.md @@ -780,7 +780,7 @@ (match_operand:SI 3 "general_operand" "g"))] "(INTVAL (operands[1]) == 8 || INTVAL (operands[1]) == 16) && INTVAL (operands[2]) % INTVAL (operands[1]) == 0 - && (REG_P (operands[0]) + && (!MEM_P (operands[0]) || ! mode_dependent_address_p (XEXP (operands[0], 0), MEM_ADDR_SPACE (operands[0])))" "* @@ -809,7 +809,7 @@ (match_operand:SI 3 "const_int_operand" "n")))] "(INTVAL (operands[2]) == 8 || INTVAL (operands[2]) == 16) && INTVAL (operands[3]) % INTVAL (operands[2]) == 0 - && (REG_P (operands[1]) + && (!MEM_P (operands[1]) || ! mode_dependent_address_p (XEXP (operands[1], 0), MEM_ADDR_SPACE (operands[1])))" "* @@ -837,7 +837,7 @@ (match_operand:SI 3 "const_int_operand" "n")))] "(INTVAL (operands[2]) == 8 || INTVAL (operands[2]) == 16) && INTVAL (operands[3]) % INTVAL (operands[2]) == 0 - && (REG_P (operands[1]) + && (!MEM_P (operands[1]) || ! mode_dependent_address_p (XEXP (operands[1], 0), MEM_ADDR_SPACE (operands[1])))" "* |