summaryrefslogtreecommitdiff
path: root/libstdc++-v3
diff options
context:
space:
mode:
authorSteven Bosscher <steven@gcc.gnu.org>2006-12-10 10:59:19 +0000
committerSteven Bosscher <steven@gcc.gnu.org>2006-12-10 10:59:19 +0000
commit932ad4d9b55020d2395caa9a278697974bb600ce (patch)
tree12674a0e4957c90392cd1cdebd9abf48f1a23fe2 /libstdc++-v3
parent15447faef3ab7462fa6b6cb39f744126b3c9a315 (diff)
downloadgcc-932ad4d9b55020d2395caa9a278697974bb600ce.tar.gz
cse.c: (struct cse_basic_block_data): Remove LAST field.
* cse.c: (struct cse_basic_block_data): Remove LAST field. (struct branch_path): Remove BRANCH and TAKEN fields. Add new BB field. (cse_visited_basic_blocks): New static bitmap. (cse_end_of_basic_block, cse_basic_block): Remove. (cse_find_path, cse_dump_path, cse_prescan_path, cse_extended_basic_block): New static functions. (cse_insn): Don't CSE over setjmp calls. Use the CFG to find basic block boundaries. Don't record jump equivalences here. Update the CFG after doing in-place replacement of the SET_SRC. (cse_main): Rewrite. Look for extended basic block headers and call cse_extended_basic_block on them until all paths that start at this header are exhausted. (rest_of_handle_cse): Verify that the CFG is incrementally updated and correct after cse_main. Don't call delete_trivially_dead_insns, let cfgcleanup do that. (rest_of_handle_cse2): Verify the CFG here, too, after cse_main. (pass_cse): Add TODO_verify_flow. (pass_cse2): Likewise. From-SVN: r119706
Diffstat (limited to 'libstdc++-v3')
0 files changed, 0 insertions, 0 deletions