aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa.c
diff options
context:
space:
mode:
authorBill Schmidt <wschmidt@linux.ibm.com>2012-08-01 13:02:38 +0000
committerWilliam Schmidt <wschmidt@gcc.gnu.org>2012-08-01 13:02:38 +0000
commit2749c8f6b3afbaae1e0d18c47ee5eb0b07ee9bb4 (patch)
treee01379151b097a379c693676f05e75d3280e2234 /gcc/tree-ssa.c
parent85add0cfd1e8712bb4d10d49fe2e37460c076a70 (diff)
downloadgcc-2749c8f6b3afbaae1e0d18c47ee5eb0b07ee9bb4.zip
gcc-2749c8f6b3afbaae1e0d18c47ee5eb0b07ee9bb4.tar.gz
gcc-2749c8f6b3afbaae1e0d18c47ee5eb0b07ee9bb4.tar.bz2
re PR tree-optimization/46556 (Code size regression in struct access)
gcc: PR tree-optimization/46556 * gimple-ssa-strength-reduction.c (enum cand_kind): Add CAND_REF. (base_cand_map): Change to hash table. (base_cand_hash): New function. (base_cand_free): Likewise. (base_cand_eq): Likewise. (lookup_cand): Change base_cand_map to hash table. (find_basis_for_candidate): Likewise. (base_cand_from_table): Exclude CAND_REF. (restructure_reference): New function. (slsr_process_ref): Likewise. (find_candidates_in_block): Call slsr_process_ref. (dump_candidate): Handle CAND_REF. (base_cand_dump_callback): New function. (dump_cand_chains): Change base_cand_map to hash table. (replace_ref): New function. (replace_refs): Likewise. (analyze_candidates_and_replace): Call replace_refs. (execute_strength_reduction): Change base_cand_map to hash table. gcc/testsuite: PR tree-optimization/46556 * testsuite/gcc.dg/tree-ssa/slsr-27.c: New. * testsuite/gcc.dg/tree-ssa/slsr-28.c: New. * testsuite/gcc.dg/tree-ssa/slsr-29.c: New. From-SVN: r190037
Diffstat (limited to 'gcc/tree-ssa.c')
0 files changed, 0 insertions, 0 deletions