diff options
author | amylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-06-16 14:59:41 +0000 |
---|---|---|
committer | amylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-06-16 14:59:41 +0000 |
commit | ddba76b84c757d93b4247713d558724776149b62 (patch) | |
tree | 287eb151099ae1ad14535d80694e42ba6df3f9d0 /gcc/cse.c | |
parent | 5e524dea5f455c74f08c3e91f14f60e2f2f81369 (diff) | |
download | gcc-ddba76b84c757d93b4247713d558724776149b62.tar.gz |
gcc:
PR rtl-optimization/57425
PR rtl-optimization/57569
* alias.c (write_dependence_p): Add new parameters mem_size,
canon_mem_addr and mem_canonicalized. Change type of writep to bool.
Changed all callers.
(canon_anti_dependence): New function.
* cse.c (check_dependence): Use canon_anti_dependence.
* cselib.c (cselib_invalidate_mem): Likewise.
* rtl.h (canon_anti_dependence): Declare.
gcc/testsuite:
PR rtl-optimization/57425
PR rtl-optimization/57569
* gcc.dg/torture/pr57425-1.c, gcc.dg/torture/pr57425-2.c: New files.
* gcc.dg/torture/pr57425-3.c, gcc.dg/torture/pr57569.c: Likewise.
Index: alias.c
===================================================================
--- alias.c (revision 200126)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200133 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cse.c')
-rw-r--r-- | gcc/cse.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/cse.c b/gcc/cse.c index f2c8f635d39..7e6c5184a85 100644 --- a/gcc/cse.c +++ b/gcc/cse.c @@ -1824,7 +1824,7 @@ flush_hash_table (void) } } -/* Function called for each rtx to check whether true dependence exist. */ +/* Function called for each rtx to check whether an anti dependence exist. */ struct check_dependence_data { enum machine_mode mode; @@ -1837,7 +1837,7 @@ check_dependence (rtx *x, void *data) { struct check_dependence_data *d = (struct check_dependence_data *) data; if (*x && MEM_P (*x)) - return canon_true_dependence (d->exp, d->mode, d->addr, *x, NULL_RTX); + return canon_anti_dependence (d->exp, d->mode, d->addr, *x); else return 0; } |