diff options
author | Richard Biener <rguenther@suse.de> | 2025-08-03 12:02:31 +0200 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2025-08-04 11:44:42 +0200 |
commit | 0d276cd378e7a41b9004577a30b9a8ca16ec6b4c (patch) | |
tree | ba6ee2e71466d50ae3b7c3249d15cf2962c90084 /libcpp/include/cpplib.h | |
parent | 57a97725a5c493bd8cde0b0c5679099b1a23c795 (diff) | |
download | gcc-0d276cd378e7a41b9004577a30b9a8ca16ec6b4c.zip gcc-0d276cd378e7a41b9004577a30b9a8ca16ec6b4c.tar.gz gcc-0d276cd378e7a41b9004577a30b9a8ca16ec6b4c.tar.bz2 |
tree-optimization/121362 - missed FRE through aggregate copy
The following streamlines and generalizes how we find the common
base of the lookup ref and a kill ref when looking through
aggregate copies. In particular this tries to deal with all
variants of punning that happens on the inner MEM_REF after
forwarding of address taken components of the common base.
PR tree-optimization/121362
* tree-ssa-sccvn.cc (vn_reference_lookup_3): Generalize
aggregate copy handling.
* gcc.dg/tree-ssa/ssa-fre-105.c: New testcase.
* gcc.dg/tree-ssa/ssa-fre-106.c: Likewise.
Diffstat (limited to 'libcpp/include/cpplib.h')
0 files changed, 0 insertions, 0 deletions