diff options
author | Richard Biener <rguenther@suse.de> | 2017-08-28 11:42:23 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2017-08-28 11:42:23 +0000 |
commit | 2aa8aa18a66f7677a7f7c7e987e2435750bdc982 (patch) | |
tree | 5a5d946903692b9274a0e8c499d41b91891916eb /gcc/tree-ssa-sccvn.c | |
parent | 5e5ccf0d20b1104a1ec084f1de4dbbc312e9540e (diff) | |
download | gcc-2aa8aa18a66f7677a7f7c7e987e2435750bdc982.zip gcc-2aa8aa18a66f7677a7f7c7e987e2435750bdc982.tar.gz gcc-2aa8aa18a66f7677a7f7c7e987e2435750bdc982.tar.bz2 |
re PR tree-optimization/81977 (Issue with inline memcpy with optimizations enabled)
2017-08-28 Richard Biener <rguenther@suse.de>
PR tree-optimization/81977
* tree-ssa-sccvn.c (vn_reference_lookup_3): Fix look through
memcpy.
* g++.dg/torture/pr81977.C: New testcase.
From-SVN: r251378
Diffstat (limited to 'gcc/tree-ssa-sccvn.c')
-rw-r--r-- | gcc/tree-ssa-sccvn.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/tree-ssa-sccvn.c b/gcc/tree-ssa-sccvn.c index 19db44a..472ab0b 100644 --- a/gcc/tree-ssa-sccvn.c +++ b/gcc/tree-ssa-sccvn.c @@ -2334,7 +2334,7 @@ vn_reference_lookup_3 (ao_ref *ref, tree vuse, void *vr_, memset (&op, 0, sizeof (op)); op.type = vr->type; op.opcode = MEM_REF; - op.op0 = build_int_cst (ptr_type_node, at - rhs_offset); + op.op0 = build_int_cst (ptr_type_node, at - lhs_offset + rhs_offset); op.off = at - lhs_offset + rhs_offset; vr->operands[0] = op; op.type = TREE_TYPE (rhs); |