From 590f5d5125c96aa8e6e29463e37f23502f0bd673 Mon Sep 17 00:00:00 2001 From: James Greenhalgh Date: Fri, 19 Jun 2015 16:43:04 +0000 Subject: [PATCH] [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 --- gcc/ChangeLog | 5 +++++ gcc/config/vax/vax.md | 6 +++--- gcc/testsuite/ChangeLog | 4 ++++ 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index bd9b856cdab..b94b85f4325 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2015-06-19 James Greenhalgh + + * config/vax/vax.md: Adjust sign/zero extend patterns to + handle SUBREGs in operands[1]. + 2015-06-19 Kyrylo Tkachov * config/i386/i386.c (ix86_function_versions): Use std::swap instead diff --git a/gcc/config/vax/vax.md b/gcc/config/vax/vax.md index 44d162f891a..d5caa156370 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])))" "* diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 7d77478c051..e117dee16cf 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2015-06-19 James Greenhalgh + + * gcc.target/vax/bswapdi-1.c: New. + 2015-06-19 Christophe Lyon * gcc.target/aarch64/advsimd-intrinsics/vtst.c: New file. -- 2.30.2