r221713 - in /branches/gcc-4_8-branch/gcc: Chan...
wschmidt@gcc.gnu.org
wschmidt@gcc.gnu.org
Thu Mar 26 22:35:00 GMT 2015
Author: wschmidt
Date: Thu Mar 26 22:35:25 2015
New Revision: 221713
URL: https://gcc.gnu.org/viewcvs?rev=221713&root=gcc&view=rev
Log:
[gcc]
2015-03-26 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
Backport of r214242, r214254, and bug fix patches from mainline
* config/rs6000/rs6000.c (tree-pass.h): New #include.
(rs6000_analyze_swaps): New declaration.
(gate_analyze_swaps): New function.
(execute_analyze_swaps): Likewise.
(pass_analyze_swaps): New struct rtl_opt_pass.
(rs6000_option_override): Register swap-optimization pass.
(swap_web_entry): New class.
(special_handling_values): New enum.
(union_defs): New function.
(union_uses): Likewise.
(insn_is_load_p): Likewise.
(insn_is_store_p): Likewise.
(insn_is_swap_p): Likewise.
(rtx_is_swappable_p): Likewise.
(insn_is_swappable_p): Likewise.
(chain_purpose): New enum.
(chain_contains_only_swaps): New function.
(mark_swaps_for_removal): Likewise.
(swap_const_vector_halves): Likewise.
(adjust_subreg_index): Likewise.
(permute_load): Likewise.
(permute_store): Likewise.
(adjust_extract): Likewise.
(adjust_splat): Likewise.
(handle_special_swappables): Likewise.
(replace_swap_with_copy): Likewise.
(dump_swap_insn_table): Likewise.
(rs6000_analyze_swaps): Likewise.
* config/rs6000/rs6000.opt (moptimize-swaps): New option.
* df.h (web_entry_base): New class, replacing struct web_entry.
(web_entry_base::pred): New method.
(web_entry_base::set_pred): Likewise.
(web_entry_base::unionfind_root): Likewise.
(web_entry_base::unionfind_union): Likewise.
(unionfind_root): Delete external reference.
(unionfind_union): Likewise.
(union_defs): Likewise.
* web.c (web_entry_base::unionfind_root): Convert to method.
(web_entry_base::unionfind_union): Likewise.
(web_entry): New class.
(union_match_dups): Convert to use class structure.
(union_defs): Likewise.
(entry_register): Likewise.
(web_main): Likewise.
[gcc/testsuite]
2015-03-26 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
Backport r214254 and related tests from mainline
* gcc.target/powerpc/swaps-p8-1.c: New test.
* gcc.target/powerpc/swaps-p8-3.c: New test.
* gcc.target/powerpc/swaps-p8-4.c: New test.
* gcc.target/powerpc/swaps-p8-5.c: New test.
* gcc.target/powerpc/swaps-p8-6.c: New test.
* gcc.target/powerpc/swaps-p8-7.c: New test.
* gcc.target/powerpc/swaps-p8-8.c: New test.
* gcc.target/powerpc/swaps-p8-9.c: New test.
* gcc.target/powerpc/swaps-p8-10.c: New test.
* gcc.target/powerpc/swaps-p8-11.c: New test.
* gcc.target/powerpc/swaps-p8-12.c: New test.
* gcc.target/powerpc/swaps-p8-13.c: New test.
* gcc.target/powerpc/swaps-p8-15.c: New test.
* gcc.target/powerpc/swaps-p8-17.c: New test.
Added:
branches/gcc-4_8-branch/gcc/testsuite/gcc.target/powerpc/swaps-p8-1.c
branches/gcc-4_8-branch/gcc/testsuite/gcc.target/powerpc/swaps-p8-10.c
branches/gcc-4_8-branch/gcc/testsuite/gcc.target/powerpc/swaps-p8-11.c
branches/gcc-4_8-branch/gcc/testsuite/gcc.target/powerpc/swaps-p8-12.c
branches/gcc-4_8-branch/gcc/testsuite/gcc.target/powerpc/swaps-p8-13.c
branches/gcc-4_8-branch/gcc/testsuite/gcc.target/powerpc/swaps-p8-15.c
branches/gcc-4_8-branch/gcc/testsuite/gcc.target/powerpc/swaps-p8-17.c
branches/gcc-4_8-branch/gcc/testsuite/gcc.target/powerpc/swaps-p8-3.c
branches/gcc-4_8-branch/gcc/testsuite/gcc.target/powerpc/swaps-p8-4.c
branches/gcc-4_8-branch/gcc/testsuite/gcc.target/powerpc/swaps-p8-5.c
branches/gcc-4_8-branch/gcc/testsuite/gcc.target/powerpc/swaps-p8-6.c
branches/gcc-4_8-branch/gcc/testsuite/gcc.target/powerpc/swaps-p8-7.c
branches/gcc-4_8-branch/gcc/testsuite/gcc.target/powerpc/swaps-p8-8.c
branches/gcc-4_8-branch/gcc/testsuite/gcc.target/powerpc/swaps-p8-9.c
Modified:
branches/gcc-4_8-branch/gcc/ChangeLog
branches/gcc-4_8-branch/gcc/config/rs6000/rs6000.c
branches/gcc-4_8-branch/gcc/config/rs6000/rs6000.opt
branches/gcc-4_8-branch/gcc/df.h
branches/gcc-4_8-branch/gcc/testsuite/ChangeLog
branches/gcc-4_8-branch/gcc/web.c
More information about the Gcc-cvs
mailing list