aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vect-data-refs.c
diff options
context:
space:
mode:
authorRichard Sandiford <richard.sandiford@linaro.org>2011-04-21 09:39:57 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2011-04-21 09:39:57 +0000
commit0b5a27249aa584eb385d9146d94ef1067241e155 (patch)
tree8d4502e068a72f18b13cf72a0bd83eb685187b18 /gcc/tree-vect-data-refs.c
parent5a2e560830dac0c29358248b5b489446c18e179e (diff)
downloadgcc-0b5a27249aa584eb385d9146d94ef1067241e155.zip
gcc-0b5a27249aa584eb385d9146d94ef1067241e155.tar.gz
gcc-0b5a27249aa584eb385d9146d94ef1067241e155.tar.bz2
tree-vect-data-refs.c (vect_drs_dependent_in_basic_block): Use operand_equal_p to compare DR_BASE_ADDRESSes.
gcc/ * tree-vect-data-refs.c (vect_drs_dependent_in_basic_block): Use operand_equal_p to compare DR_BASE_ADDRESSes. (vect_check_interleaving): Likewise. gcc/testsuite/ * gcc.dg/vect/vect-119.c: New test. From-SVN: r172817
Diffstat (limited to 'gcc/tree-vect-data-refs.c')
-rw-r--r--gcc/tree-vect-data-refs.c12
1 files changed, 2 insertions, 10 deletions
diff --git a/gcc/tree-vect-data-refs.c b/gcc/tree-vect-data-refs.c
index d7d174f..9ce4626 100644
--- a/gcc/tree-vect-data-refs.c
+++ b/gcc/tree-vect-data-refs.c
@@ -314,11 +314,7 @@ vect_drs_dependent_in_basic_block (struct data_reference *dra,
/* Check that the data-refs have same bases and offsets. If not, we can't
determine if they are dependent. */
- if ((DR_BASE_ADDRESS (dra) != DR_BASE_ADDRESS (drb)
- && (TREE_CODE (DR_BASE_ADDRESS (dra)) != ADDR_EXPR
- || TREE_CODE (DR_BASE_ADDRESS (drb)) != ADDR_EXPR
- || TREE_OPERAND (DR_BASE_ADDRESS (dra), 0)
- != TREE_OPERAND (DR_BASE_ADDRESS (drb),0)))
+ if (!operand_equal_p (DR_BASE_ADDRESS (dra), DR_BASE_ADDRESS (drb), 0)
|| !dr_equal_offsets_p (dra, drb))
return true;
@@ -364,11 +360,7 @@ vect_check_interleaving (struct data_reference *dra,
/* Check that the data-refs have same first location (except init) and they
are both either store or load (not load and store). */
- if ((DR_BASE_ADDRESS (dra) != DR_BASE_ADDRESS (drb)
- && (TREE_CODE (DR_BASE_ADDRESS (dra)) != ADDR_EXPR
- || TREE_CODE (DR_BASE_ADDRESS (drb)) != ADDR_EXPR
- || TREE_OPERAND (DR_BASE_ADDRESS (dra), 0)
- != TREE_OPERAND (DR_BASE_ADDRESS (drb),0)))
+ if (!operand_equal_p (DR_BASE_ADDRESS (dra), DR_BASE_ADDRESS (drb), 0)
|| !dr_equal_offsets_p (dra, drb)
|| !tree_int_cst_compare (DR_INIT (dra), DR_INIT (drb))
|| DR_IS_READ (dra) != DR_IS_READ (drb))