diff options
author | Bill Schmidt <wschmidt@linux.ibm.com> | 2012-08-01 13:02:38 +0000 |
---|---|---|
committer | William Schmidt <wschmidt@gcc.gnu.org> | 2012-08-01 13:02:38 +0000 |
commit | 2749c8f6b3afbaae1e0d18c47ee5eb0b07ee9bb4 (patch) | |
tree | e01379151b097a379c693676f05e75d3280e2234 /gcc/tree-ssa.c | |
parent | 85add0cfd1e8712bb4d10d49fe2e37460c076a70 (diff) | |
download | gcc-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