Commit 22129589 by Andreas Schwab

re PR rtl-optimization/36929 (internal compiler error: Segmentation fault)

PR rtl-optimization/36929
* dse.c (replace_inc_dec): Use emit_insn_before instead of
add_insn_before and fix argument order.
(replace_inc_dec_mem): Handle NULL rtx.

From-SVN: r138333
parent 2a9cc4de
2008-07-30 Andreas Schwab <schwab@suse.de>
PR rtl-optimization/36929
* dse.c (replace_inc_dec): Use emit_insn_before instead of
add_insn_before and fix argument order.
(replace_inc_dec_mem): Handle NULL rtx.
2008-07-30 Andrew Jenner <andrew@codesourcery.com> 2008-07-30 Andrew Jenner <andrew@codesourcery.com>
* config/arm/arm.c (arm_compute_static_chain_stack_bytes): New * config/arm/arm.c (arm_compute_static_chain_stack_bytes): New
function. function.
(arm_compute_initial_elimination_offset): Use it. (arm_compute_initial_elimination_offset): Use it.
(arm_compute_save_reg_mask): Include static chain save slot when (arm_compute_save_reg_mask): Include static chain save slot when
calculating alignment. calculating alignment.
...@@ -19,8 +26,8 @@ ...@@ -19,8 +26,8 @@
2008-07-30 Nathan Froyd <froydnj@codesourcery.com> 2008-07-30 Nathan Froyd <froydnj@codesourcery.com>
* config/arm/arm.c (arm_expand_prologue): Use 0-length rtvec * config/arm/arm.c (arm_expand_prologue): Use 0-length rtvec
instead of NULL_RTVEC. instead of NULL_RTVEC.
2008-07-30 Nathan Froyd <froydnj@codesourcery.com> 2008-07-30 Nathan Froyd <froydnj@codesourcery.com>
...@@ -59,7 +66,7 @@ ...@@ -59,7 +66,7 @@
(conversion_warning): Use the new function. Handle non-negative (conversion_warning): Use the new function. Handle non-negative
constant in bitwise-and. constant in bitwise-and.
* c-common.h (shorten_binary_op): Declare. * c-common.h (shorten_binary_op): Declare.
2008-07-30 Olivier Hainque <hainque@adacore.com> 2008-07-30 Olivier Hainque <hainque@adacore.com>
* scan.c (make_sstring_space): Add explicit conversions of * scan.c (make_sstring_space): Add explicit conversions of
...@@ -150,7 +157,7 @@ ...@@ -150,7 +157,7 @@
PR 34985 PR 34985
* c-decl.c (merge_decls): Merge USED flags. * c-decl.c (merge_decls): Merge USED flags.
2008-07-29 Kaz Kojima <kkojima@gcc.gnu.org> 2008-07-29 Kaz Kojima <kkojima@gcc.gnu.org>
* config/sh/sh.c (sh_gimplify_va_arg_expr): Unshare the addr, * config/sh/sh.c (sh_gimplify_va_arg_expr): Unshare the addr,
...@@ -418,7 +425,7 @@ ...@@ -418,7 +425,7 @@
(is_ctor_dtor): Return symkind instead of int. Adjust prototype, (is_ctor_dtor): Return symkind instead of int. Adjust prototype,
code and head comment accordingly. code and head comment accordingly.
(scan_prog_file): Use symkind names instead of bare integers. (scan_prog_file): Use symkind names instead of bare integers.
2008-07-25 Jan Hubicka <jh@suse.cz> 2008-07-25 Jan Hubicka <jh@suse.cz>
* cgraph.c (cgraph_function_possibly_inlined_p): Do not rely on DECL_INLINE. * cgraph.c (cgraph_function_possibly_inlined_p): Do not rely on DECL_INLINE.
...@@ -427,7 +434,7 @@ ...@@ -427,7 +434,7 @@
* dojump.c (clear_pending_stack_adjust): Likewise. * dojump.c (clear_pending_stack_adjust): Likewise.
* print-tree.c (print_node): Ignore DECL_INLINE. * print-tree.c (print_node): Ignore DECL_INLINE.
* tree-inline.c (inlinable_function_p): Likewise. * tree-inline.c (inlinable_function_p): Likewise.
2008-07-25 Michael Meissner <gnu@the-meissners.org> 2008-07-25 Michael Meissner <gnu@the-meissners.org>
* doc/extend.texi (hot attribute): Document that the hot attribute * doc/extend.texi (hot attribute): Document that the hot attribute
...@@ -521,7 +528,7 @@ ...@@ -521,7 +528,7 @@
(cgraph_gate_early_inlining): Likewise. (cgraph_gate_early_inlining): Likewise.
(gate_inline_passes): Remove. (gate_inline_passes): Remove.
(pass_inline_parameters, pass_ipa_inline): Remove gates. (pass_inline_parameters, pass_ipa_inline): Remove gates.
(cgraph_gate_O0_always_inline, cgraph_O0_always_inline, (cgraph_gate_O0_always_inline, cgraph_O0_always_inline,
pass_O0_always_inline): Remove. pass_O0_always_inline): Remove.
* c-pch.c (c_pch_matching): Remove -funit-at-a-time. * c-pch.c (c_pch_matching): Remove -funit-at-a-time.
* dwarf2out.c (reference_to_unused): Remove flag_unit_at_a_time check. * dwarf2out.c (reference_to_unused): Remove flag_unit_at_a_time check.
...@@ -576,7 +583,7 @@ ...@@ -576,7 +583,7 @@
* config/i386/i386.c (get_dllimport_decl): Treat user_label_prefix for * config/i386/i386.c (get_dllimport_decl): Treat user_label_prefix for
imp symbol extension. imp symbol extension.
2008-07-23 Ian Lance Taylor <iant@google.com> 2008-07-23 Ian Lance Taylor <iant@google.com>
* tree-vrp.c (infer_value_range): Ignore asm statements when * tree-vrp.c (infer_value_range): Ignore asm statements when
looking for memory accesses for -fdelete-null-pointer-checks. looking for memory accesses for -fdelete-null-pointer-checks.
...@@ -603,10 +610,10 @@ ...@@ -603,10 +610,10 @@
2008-07-23 Martin Jambor <mjambor@suse.cz> 2008-07-23 Martin Jambor <mjambor@suse.cz>
* ipa-cp.c (ipcp_print_edge_profiles): Test for node->analyzed * ipa-cp.c (ipcp_print_edge_profiles): Test for node->analyzed
rather than for DECL_SAVED_TREE. rather than for DECL_SAVED_TREE.
* ipa-prop.c: Include diagnostic.h. * ipa-prop.c: Include diagnostic.h.
(ipa_check_stmt_modifications): Check LHS of GIMPLE_MODIFY_EXPRs (ipa_check_stmt_modifications): Check LHS of GIMPLE_MODIFY_EXPRs
thoroughly. thoroughly.
(ipa_detect_param_modifications): Function rewritten from scratch. (ipa_detect_param_modifications): Function rewritten from scratch.
(ipa_compute_jump_functions): Changed accesses to modification flags. (ipa_compute_jump_functions): Changed accesses to modification flags.
...@@ -614,9 +621,9 @@ ...@@ -614,9 +621,9 @@
(ipa_node_duplication_hook): Update flags duplication. (ipa_node_duplication_hook): Update flags duplication.
(ipa_print_all_params_modified): Updated flag access. (ipa_print_all_params_modified): Updated flag access.
* ipa-prop.h (struct ipa_param_flags): New structure. * ipa-prop.h (struct ipa_param_flags): New structure.
(struct ipa_node_params): New field modification_analysis_done, (struct ipa_node_params): New field modification_analysis_done,
modified_flags changed into param_flags. modified_flags changed into param_flags.
(ipa_is_ith_param_modified): Changed to use new flags. (ipa_is_ith_param_modified): Changed to use new flags.
* Makefile.in (ipa-prop.o): Add $(DIAGNOSTIC_H) to dependencies. * Makefile.in (ipa-prop.o): Add $(DIAGNOSTIC_H) to dependencies.
* ipa-prop.c (ipa_print_all_jump_functions): Moved here from * ipa-prop.c (ipa_print_all_jump_functions): Moved here from
...@@ -645,18 +652,18 @@ ...@@ -645,18 +652,18 @@
* doc/invoke.texi (Optimize options): Add description of * doc/invoke.texi (Optimize options): Add description of
-findirect-inlining. -findirect-inlining.
* common.opt (flag_indirect_inlining): New flag. * common.opt (flag_indirect_inlining): New flag.
* opts.c (decode_options): Set flag_indirect_inlining when * opts.c (decode_options): Set flag_indirect_inlining when
optimize >= 3. optimize >= 3.
* ipa-inline.c: Include ipa-prop.h. * ipa-inline.c: Include ipa-prop.h.
(inline_indirect_intraprocedural_analysis): New function. (inline_indirect_intraprocedural_analysis): New function.
(inline_generate_summary): Allocate parameter and argument info (inline_generate_summary): Allocate parameter and argument info
structures, call inline_indirect_intraprocedural_analysis on each structures, call inline_indirect_intraprocedural_analysis on each
node when doing indirect inlining and deallocate indirect inlining node when doing indirect inlining and deallocate indirect inlining
data structures in the end. data structures in the end.
* ipa-prop.c (ipa_create_param_decls_array): Return if already done. * ipa-prop.c (ipa_create_param_decls_array): Return if already done.
(free_all_ipa_structures_after_iinln): New function. (free_all_ipa_structures_after_iinln): New function.
(free_all_ipa_structures_after_ipa_cp): Checks whether iinln will be (free_all_ipa_structures_after_ipa_cp): Checks whether iinln will be
done. done.
* Makefile.in (ipa-inline.o): Added $(IPA_PROP_H) to dependencies. * Makefile.in (ipa-inline.o): Added $(IPA_PROP_H) to dependencies.
...@@ -665,7 +672,7 @@ ...@@ -665,7 +672,7 @@
of computing the frequency separately. of computing the frequency separately.
(rebuild_cgraph_edges): Call compute_call_stmt_bb_frequency instead (rebuild_cgraph_edges): Call compute_call_stmt_bb_frequency instead
of computing the frequency separately. of computing the frequency separately.
* ipa-cp.c (ipcp_print_all_structures): Replace a call to * ipa-cp.c (ipcp_print_all_structures): Replace a call to
ipa_print_all_param_modified with a call to ipa_print_all_param_flags. ipa_print_all_param_modified with a call to ipa_print_all_param_flags.
* ipa-prop.c (ipa_get_member_ptr_load_param): New function. * ipa-prop.c (ipa_get_member_ptr_load_param): New function.
(ipa_get_stmt_member_ptr_load_param): New function. (ipa_get_stmt_member_ptr_load_param): New function.
...@@ -727,7 +734,7 @@ ...@@ -727,7 +734,7 @@
* testsuite/g++.dg/ipa/iinline-1.C: New testcase. * testsuite/g++.dg/ipa/iinline-1.C: New testcase.
* testsuite/gcc.dg/ipa/iinline-1.c: New testcase. * testsuite/gcc.dg/ipa/iinline-1.c: New testcase.
* testsuite/gcc.dg/ipa/modif-1.c: New testcase. * testsuite/gcc.dg/ipa/modif-1.c: New testcase.
2008-07-23 Michael Meissner <gnu@the-meissners.org> 2008-07-23 Michael Meissner <gnu@the-meissners.org>
PR 36907 PR 36907
...@@ -754,7 +761,7 @@ ...@@ -754,7 +761,7 @@
* c-typeck.c: All calls to pedwarn changed. * c-typeck.c: All calls to pedwarn changed.
* c-common.c: All calls to pedwarn changed. * c-common.c: All calls to pedwarn changed.
* c-parser.c: All calls to pedwarn changed. * c-parser.c: All calls to pedwarn changed.
2008-07-23 Michael Meissner <gnu@the-meissners.org> 2008-07-23 Michael Meissner <gnu@the-meissners.org>
Karthik Kumar <karthikkumar@gmail.com> Karthik Kumar <karthikkumar@gmail.com>
...@@ -1221,7 +1228,7 @@ ...@@ -1221,7 +1228,7 @@
PR tree-opt/36879 PR tree-opt/36879
* tree-switch-conversion.c (build_one_array): Call * tree-switch-conversion.c (build_one_array): Call
varpool_mark_needed_node and varpool_finalize_decl varpool_mark_needed_node and varpool_finalize_decl
instead of assemble_variable. instead of assemble_variable.
2008-07-19 Jan Hubicka <jh@suse.cz> 2008-07-19 Jan Hubicka <jh@suse.cz>
...@@ -1312,7 +1319,7 @@ ...@@ -1312,7 +1319,7 @@
(gen_array_type_die): Factorize comments about the MIPS_DEBUG_INFO (gen_array_type_die): Factorize comments about the MIPS_DEBUG_INFO
issues, centralize the nested array types collapsing control and issues, centralize the nested array types collapsing control and
disable the transformation for Ada. disable the transformation for Ada.
2008-07-18 Uros Bizjak <ubizjak@gmail.com> 2008-07-18 Uros Bizjak <ubizjak@gmail.com>
PR target/36786 PR target/36786
...@@ -1504,10 +1511,10 @@ ...@@ -1504,10 +1511,10 @@
* config/sh/sh.md (symGOT_load): Don't add REG_EQUAL note. * config/sh/sh.md (symGOT_load): Don't add REG_EQUAL note.
2008-07-15 Bob Wilson <bob.wilson@acm.org> 2008-07-15 Bob Wilson <bob.wilson@acm.org>
* config/xtensa/libgcc-xtensa.ver: New file. * config/xtensa/libgcc-xtensa.ver: New file.
* config/xtensa/t-linux (SHLIB_MAPFILES): Append libgcc-xtensa.ver. * config/xtensa/t-linux (SHLIB_MAPFILES): Append libgcc-xtensa.ver.
2008-07-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 2008-07-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* df-problems.c (df_set_note): Avoid C++ keywords. * df-problems.c (df_set_note): Avoid C++ keywords.
...@@ -1759,7 +1766,7 @@ ...@@ -1759,7 +1766,7 @@
* config/h8300/h8300.md (length): Fix branch offset limit. * config/h8300/h8300.md (length): Fix branch offset limit.
2008-07-11 Anatoly Sokolov <aesok@post.ru> 2008-07-11 Anatoly Sokolov <aesok@post.ru>
* config/avr/avr-protos.h (avr_peep2_scratch_safe): Remove prototype. * config/avr/avr-protos.h (avr_peep2_scratch_safe): Remove prototype.
* config/avr/avr.c (avr_peep2_scratch_safe): Remove. * config/avr/avr.c (avr_peep2_scratch_safe): Remove.
...@@ -1898,7 +1905,7 @@ ...@@ -1898,7 +1905,7 @@
callers. callers.
* omp-low.c (lower_omp_sections, lower_omp_single, lower_omp_master, * omp-low.c (lower_omp_sections, lower_omp_single, lower_omp_master,
lower_omp_ordered, lower_omp_critical, lower_omp_for, lower_omp_ordered, lower_omp_critical, lower_omp_for,
create_task_copyfn, lower_omp_taskreg, execute_lower_omp): create_task_copyfn, lower_omp_taskreg, execute_lower_omp):
* tree-ssa-ccp.c (convert_to_gimple_builtin): Likewise. * tree-ssa-ccp.c (convert_to_gimple_builtin): Likewise.
* tree-sra.c (generate_element_init): Likewise. * tree-sra.c (generate_element_init): Likewise.
* tree-mudflap.c (execute_mudflap_function_ops, * tree-mudflap.c (execute_mudflap_function_ops,
...@@ -2007,7 +2014,7 @@ ...@@ -2007,7 +2014,7 @@
* tree-sra.c (sra_build_assignment): Handle CONVERT_EXPR_P dst. * tree-sra.c (sra_build_assignment): Handle CONVERT_EXPR_P dst.
2008-07-05 Daniel Berlin <dberlin@dberlin.org> 2008-07-05 Daniel Berlin <dberlin@dberlin.org>
Fix PR tree-optimization/23455 Fix PR tree-optimization/23455
Fix PR tree-optimization/35286 Fix PR tree-optimization/35286
Fix PR tree-optimization/35287 Fix PR tree-optimization/35287
...@@ -2060,7 +2067,7 @@ ...@@ -2060,7 +2067,7 @@
(vn_nary_op_compute_hash): De-staticify. (vn_nary_op_compute_hash): De-staticify.
(vn_nary_op_eq): Ditto. (vn_nary_op_eq): Ditto.
(vn_nary_op_lookup_pieces): New function. (vn_nary_op_lookup_pieces): New function.
(vn_nary_op_lookup): Add new argument. (vn_nary_op_lookup): Add new argument.
(vn_nary_op_insert_pieces): New function. (vn_nary_op_insert_pieces): New function.
(vn_nary_op_insert): Add return type. Modify to deal with value ids. (vn_nary_op_insert): Add return type. Modify to deal with value ids.
(vn_phi_insert): Ditto. (vn_phi_insert): Ditto.
...@@ -2069,7 +2076,7 @@ ...@@ -2069,7 +2076,7 @@
(visit_reference_op_load): Ditto. (visit_reference_op_load): Ditto.
(visit_reference_op_store): Ditto. (visit_reference_op_store): Ditto.
(init_scc_vn): Init next_value_id, constant_to_value_id and (init_scc_vn): Init next_value_id, constant_to_value_id and
constant_value_ids. constant_value_ids.
(free_scc_vn): Free them. (free_scc_vn): Free them.
(set_hashtable_value_ids): New function. (set_hashtable_value_ids): New function.
(run_scc_vn): Use it. (run_scc_vn): Use it.
...@@ -2082,7 +2089,7 @@ ...@@ -2082,7 +2089,7 @@
above). above).
* tree.c (iterative_hash_hashval_t): Made non-static * tree.c (iterative_hash_hashval_t): Made non-static
* tree.h (iterative_hash_hashval_t): Declare it. * tree.h (iterative_hash_hashval_t): Declare it.
2008-07-08 Martin Jambor <mjambor@suse.cz> 2008-07-08 Martin Jambor <mjambor@suse.cz>
* ipa-cp.c (ipcp_init_cloned_node): Call ipa_check_create_node_params * ipa-cp.c (ipcp_init_cloned_node): Call ipa_check_create_node_params
...@@ -2114,7 +2121,7 @@ ...@@ -2114,7 +2121,7 @@
(ipa_register_cgraph_hooks): New function. (ipa_register_cgraph_hooks): New function.
(ipa_unregister_cgraph_hooks): New function. (ipa_unregister_cgraph_hooks): New function.
(free_all_ipa_structures_after_ipa_cp): New function. (free_all_ipa_structures_after_ipa_cp): New function.
* ipa-prop.h: Include vec.h. * ipa-prop.h: Include vec.h.
(ipa_node_params_t): New typedef with vector types for it. (ipa_node_params_t): New typedef with vector types for it.
(ipa_edge_args_t): New typedef with vector types for it. (ipa_edge_args_t): New typedef with vector types for it.
...@@ -2122,10 +2129,10 @@ ...@@ -2122,10 +2129,10 @@
(IPA_EDGE_REF): Changed to access an on-the-side vector. (IPA_EDGE_REF): Changed to access an on-the-side vector.
(ipa_check_create_node_params): New function. (ipa_check_create_node_params): New function.
(ipa_check_create_edge_args): New function. (ipa_check_create_edge_args): New function.
* Makefile.in (IPA_PROP_H): New variable for ipa-prop.h. Converted * Makefile.in (IPA_PROP_H): New variable for ipa-prop.h. Converted
all users. all users.
2008-07-07 Tom Tromey <tromey@redhat.com> 2008-07-07 Tom Tromey <tromey@redhat.com>
* configure, config.in: Rebuilt. * configure, config.in: Rebuilt.
...@@ -2208,7 +2215,7 @@ ...@@ -2208,7 +2215,7 @@
-print-sysroot option. -print-sysroot option.
(main): Print the sysroot if requested. (main): Print the sysroot if requested.
* doc/invoke.texi (Debugging Options): Document -print-sysroot. * doc/invoke.texi (Debugging Options): Document -print-sysroot.
2008-07-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> 2008-07-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
PR target/34780 PR target/34780
...@@ -2261,7 +2268,7 @@ ...@@ -2261,7 +2268,7 @@
2008-07-07 Maxim Kuvyrkov <maxim@codesourcery.com> 2008-07-07 Maxim Kuvyrkov <maxim@codesourcery.com>
* config/m68k/m68k.c (m68k_return_in_memory): Fix arguments types. * config/m68k/m68k.c (m68k_return_in_memory): Fix arguments types.
2008-07-07 Mark Shinwell <shinwell@codesourcery.com> 2008-07-07 Mark Shinwell <shinwell@codesourcery.com>
* config/m68k/lb1sf68.asm: Add PIC macros for Linux targets. * config/m68k/lb1sf68.asm: Add PIC macros for Linux targets.
...@@ -2659,7 +2666,7 @@ ...@@ -2659,7 +2666,7 @@
2008-07-02 Martin Jambor <mjambor@suse.cz> 2008-07-02 Martin Jambor <mjambor@suse.cz>
* tree-switch-conversion.c: Included timevar.h which I forgot before. * tree-switch-conversion.c: Included timevar.h which I forgot before.
2008-07-02 Martin Jambor <mjambor@suse.cz> 2008-07-02 Martin Jambor <mjambor@suse.cz>
* tree-switch-conversion.c: Included timevar.h * tree-switch-conversion.c: Included timevar.h
...@@ -2787,7 +2794,7 @@ ...@@ -2787,7 +2794,7 @@
2008-06-30 Kenneth Zadeck <zadeck@naturalbridge.com> 2008-06-30 Kenneth Zadeck <zadeck@naturalbridge.com>
* ifcvt.c (cond_move_process_if_block): Free vectors on false return. * ifcvt.c (cond_move_process_if_block): Free vectors on false return.
2008-06-30 Kenneth Zadeck <zadeck@naturalbridge.com> 2008-06-30 Kenneth Zadeck <zadeck@naturalbridge.com>
PR rtl-optimization/34744 PR rtl-optimization/34744
...@@ -2816,7 +2823,7 @@ ...@@ -2816,7 +2823,7 @@
(ix86_init_builtins): Here. (ix86_init_builtins): Here.
(ix86_scalar_mode_supported_p): Always return true for TFmode. (ix86_scalar_mode_supported_p): Always return true for TFmode.
(ix86_c_mode_for_suffix): Always return TFmode and XFmode for (ix86_c_mode_for_suffix): Always return TFmode and XFmode for
'q' and 'w', respectively. 'q' and 'w', respectively.
* config/i386/i386.md (movtf): Check TARGET_SSE2 instead of * config/i386/i386.md (movtf): Check TARGET_SSE2 instead of
TARGET_64BIT. TARGET_64BIT.
...@@ -3700,7 +3707,7 @@ ...@@ -3700,7 +3707,7 @@
2008-06-22 Andy Hutchinson <hutchinsonandy@aim.com> 2008-06-22 Andy Hutchinson <hutchinsonandy@aim.com>
* config/avr/avr.h (SUPPORTS_INIT_PRIORITY): Define. * config/avr/avr.h (SUPPORTS_INIT_PRIORITY): Define.
2008-06-22 Laurynas Biveinis <laurynas.biveinis@gmail.com> 2008-06-22 Laurynas Biveinis <laurynas.biveinis@gmail.com>
PR middle-end/34906 PR middle-end/34906
...@@ -3848,7 +3855,7 @@ ...@@ -3848,7 +3855,7 @@
* tree-ssa-loop-im.c (mem_ref_in_stmt, memref_hash, memref_eq, * tree-ssa-loop-im.c (mem_ref_in_stmt, memref_hash, memref_eq,
memref_free, gather_mem_refs_stmt, vtoe_hash, vtoe_eq, vtoe_free, memref_free, gather_mem_refs_stmt, vtoe_hash, vtoe_eq, vtoe_free,
record_vop_access, get_vop_accesses, get_vop_stores): Likewise. record_vop_access, get_vop_accesses, get_vop_stores): Likewise.
* tree-ssa-loop-prefetch.c (determine_loop_nest_reuse): Likewise. * tree-ssa-loop-prefetch.c (determine_loop_nest_reuse): Likewise.
* tree-ssa-sccvn.c (VN_INFO_GET, free_phi, free_reference, * tree-ssa-sccvn.c (VN_INFO_GET, free_phi, free_reference,
vn_nary_op_insert): Likewise. vn_nary_op_insert): Likewise.
* tree-ssa.c (redirect_edge_var_map_add, * tree-ssa.c (redirect_edge_var_map_add,
...@@ -4174,20 +4181,20 @@ ...@@ -4174,20 +4181,20 @@
2008-06-17 Eric B. Weddington <eric.weddington@atmel.com> 2008-06-17 Eric B. Weddington <eric.weddington@atmel.com>
* config/avr/avr.c (avr_mcu_t): Remove atmega32hvb. * config/avr/avr.c (avr_mcu_t): Remove atmega32hvb.
* config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): Likewise. * config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): Likewise.
* config/avr/t-avr (MULTILIB_MATCHES): Likewise. * config/avr/t-avr (MULTILIB_MATCHES): Likewise.
2008-06-17 Eric B. Weddington <eric.weddington@atmel.com> 2008-06-17 Eric B. Weddington <eric.weddington@atmel.com>
* config/avr/avr.c (avr_mcu_t): Add attiny167. * config/avr/avr.c (avr_mcu_t): Add attiny167.
* config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): Likewise. * config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): Likewise.
* gcc/config/avr/t-avr (MULTILIB_MATCHES): Likewise. * gcc/config/avr/t-avr (MULTILIB_MATCHES): Likewise.
2008-06-17 Eric B. Weddington <eric.weddington@atmel.com> 2008-06-17 Eric B. Weddington <eric.weddington@atmel.com>
* config/avr/avr.c (avr_mcu_t): Add atmega32u4. * config/avr/avr.c (avr_mcu_t): Add atmega32u4.
* config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): Likewise. * config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): Likewise.
* config/avr/t-avr (MULTILIB_MATCHES): Likewise. * config/avr/t-avr (MULTILIB_MATCHES): Likewise.
2008-06-17 Bernhard Fischer <aldot@gcc.gnu.org> 2008-06-17 Bernhard Fischer <aldot@gcc.gnu.org>
...@@ -4248,7 +4255,7 @@ ...@@ -4248,7 +4255,7 @@
(delete_unmarked_insns): Don't handle libcall blocks. (delete_unmarked_insns): Don't handle libcall blocks.
(preserve_libcall_for_dce): Remove. (preserve_libcall_for_dce): Remove.
(prescan_insns_for_dce): Don't special-case libcall block insns. (prescan_insns_for_dce): Don't special-case libcall block insns.
* reload1 (reload): Don't handle libcall notes. * reload1 (reload): Don't handle libcall notes.
* doc/rtl.texi (REG_LIBCALL, REG_RETVAL, REG_LIBCALL_ID): Remove * doc/rtl.texi (REG_LIBCALL, REG_RETVAL, REG_LIBCALL_ID): Remove
documentation. documentation.
...@@ -4262,7 +4269,7 @@ ...@@ -4262,7 +4269,7 @@
* config/avr/avr.c (avr_mcu_t): Add atmega32m1. * config/avr/avr.c (avr_mcu_t): Add atmega32m1.
* config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): Likewise. * config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): Likewise.
* config/avr/t-avr (MULTILIB_MATCHES): Likewise. * config/avr/t-avr (MULTILIB_MATCHES): Likewise.
2008-06-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> 2008-06-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
...@@ -4283,7 +4290,7 @@ ...@@ -4283,7 +4290,7 @@
2008-06-015 Andy Hutchinson <hutchinsonandy@aim.com> 2008-06-015 Andy Hutchinson <hutchinsonandy@aim.com>
PR target/36336 PR target/36336
* config/avr/avr.h (LEGITIMIZE_RELOAD_ADDRESS): Add check for * config/avr/avr.h (LEGITIMIZE_RELOAD_ADDRESS): Add check for
reg_equiv_constant. reg_equiv_constant.
2008-06-15 Maxim Kuvyrkov <maxim@codesourcery.com> 2008-06-15 Maxim Kuvyrkov <maxim@codesourcery.com>
...@@ -4359,7 +4366,7 @@ ...@@ -4359,7 +4366,7 @@
Nathan Sidwell <nathan@codesourcery.com> Nathan Sidwell <nathan@codesourcery.com>
Maxim Kuvyrkov <maxim@codesourcery.com> Maxim Kuvyrkov <maxim@codesourcery.com>
Richard Sandiford <rdsandiford@googlemail.com> Richard Sandiford <rdsandiford@googlemail.com>
* config/mips/mips-modes.def: Add V8QI, V4HI and V2SI modes. * config/mips/mips-modes.def: Add V8QI, V4HI and V2SI modes.
* config/mips/mips-protos.h (mips_expand_vector_init): New. * config/mips/mips-protos.h (mips_expand_vector_init): New.
* config/mips/mips-ftypes.def: Add function types for Loongson-2E/2F * config/mips/mips-ftypes.def: Add function types for Loongson-2E/2F
...@@ -4662,7 +4669,7 @@ ...@@ -4662,7 +4669,7 @@
2008-06-09 Andy Hutchinson <hutchinsonandy@aim.com> 2008-06-09 Andy Hutchinson <hutchinsonandy@aim.com>
PR middle-end/36447 PR middle-end/36447
* simplify-rtx.c (simplify_subreg): Add check for shift count * simplify-rtx.c (simplify_subreg): Add check for shift count
greater than size. greater than size.
2008-06-09 Richard Sandiford <rdsandiford@googlemail.com> 2008-06-09 Richard Sandiford <rdsandiford@googlemail.com>
...@@ -4777,7 +4784,7 @@ ...@@ -4777,7 +4784,7 @@
* doc/invoke.texi (Wenum-compare): Mention that it is enabled by * doc/invoke.texi (Wenum-compare): Mention that it is enabled by
default. default.
2008-06-08 Joseph Myers <joseph@codesourcery.com> 2008-06-08 Joseph Myers <joseph@codesourcery.com>
PR tree-optimization/36218 PR tree-optimization/36218
...@@ -4791,8 +4798,8 @@ ...@@ -4791,8 +4798,8 @@
PR target/36424 PR target/36424
* config/avr/avr.h (HARD_REGNO_RENAME_OK): Define. * config/avr/avr.h (HARD_REGNO_RENAME_OK): Define.
* config/avr/avr.c (avr_hard_regno_rename_ok): New function. * config/avr/avr.c (avr_hard_regno_rename_ok): New function.
* config/avr/avr-protos.h (avr_hard_regno_rename_ok): New prototype. * config/avr/avr-protos.h (avr_hard_regno_rename_ok): New prototype.
2008-06-07 Danny Smith <dannysmith@users.sourceforge.net> 2008-06-07 Danny Smith <dannysmith@users.sourceforge.net>
...@@ -5120,7 +5127,7 @@ ...@@ -5120,7 +5127,7 @@
Rename parallel_nesting_level to taskreg_nesting_level. Rename parallel_nesting_level to taskreg_nesting_level.
(scan_omp_task): New function. (scan_omp_task): New function.
(lower_rec_input_clauses): Don't run constructors for firstprivate (lower_rec_input_clauses): Don't run constructors for firstprivate
explicit task vars which are initialized by *_omp_cpyfn*. explicit task vars which are initialized by *_omp_cpyfn*.
Pass outer var ref to omp_clause_default_ctor hook if Pass outer var ref to omp_clause_default_ctor hook if
OMP_CLAUSE_PRIVATE_OUTER_REF or OMP_CLAUSE_LASTPRIVATE. OMP_CLAUSE_PRIVATE_OUTER_REF or OMP_CLAUSE_LASTPRIVATE.
Replace OMP_CLAUSE_REDUCTION_PLACEHOLDER decls in Replace OMP_CLAUSE_REDUCTION_PLACEHOLDER decls in
...@@ -5394,11 +5401,11 @@ ...@@ -5394,11 +5401,11 @@
PR target/30243 PR target/30243
* builtins.c (expand_builtin_signbit): Don't take lowpart when * builtins.c (expand_builtin_signbit): Don't take lowpart when
register is already smaller or equal to required mode. register is already smaller or equal to required mode.
2008-06-04 Xinliang David Li <davidxl@google.com> 2008-06-04 Xinliang David Li <davidxl@google.com>
* tree-call-cdce.c: New file. * tree-call-cdce.c: New file.
(cond_dead_built_in_calls): New static variable. (cond_dead_built_in_calls): New static variable.
(input_domain): New struct. (input_domain): New struct.
(check_pow): New function. (check_pow): New function.
...@@ -5573,7 +5580,7 @@ ...@@ -5573,7 +5580,7 @@
* config/i386/mingw32.h (EXTRA_OS_CPP_BUILTINS): Replace * config/i386/mingw32.h (EXTRA_OS_CPP_BUILTINS): Replace
TARGET_64BIT_MS_ABI by DEFAULT_ABI compare to MS_ABI. TARGET_64BIT_MS_ABI by DEFAULT_ABI compare to MS_ABI.
2008-06-02 Andy Hutchinson <hutchinsonandy@aim.com> 2008-06-02 Andy Hutchinson <hutchinsonandy@aim.com>
PR target/34879 PR target/34879
* config/avr/avr.c (TARGET_BUILTIN_SETJMP_FRAME_VALUE): Redefine. * config/avr/avr.c (TARGET_BUILTIN_SETJMP_FRAME_VALUE): Redefine.
...@@ -5709,10 +5716,10 @@ ...@@ -5709,10 +5716,10 @@
* config/avr/avr.md (UNSPECV_WRITE_SP_IRQ_ON): New constants. * config/avr/avr.md (UNSPECV_WRITE_SP_IRQ_ON): New constants.
(UNSPECV_WRITE_SP_IRQ_OFF): (Ditto.). (UNSPECV_WRITE_SP_IRQ_OFF): (Ditto.).
(movhi_sp_r_irq_off, movhi_sp_r_irq_on): New insn. (movhi_sp_r_irq_off, movhi_sp_r_irq_on): New insn.
* config/avr/avr.c (expand_prologue, expand_epilogue): Use * config/avr/avr.c (expand_prologue, expand_epilogue): Use
movhi_sp_r_irq_off and movhi_sp_r_irq_on insns for writing to the movhi_sp_r_irq_off and movhi_sp_r_irq_on insns for writing to the
stack pointer register. stack pointer register.
(output_movhi): Remove code for interrupt specific writing to the (output_movhi): Remove code for interrupt specific writing to the
stack pointer register. stack pointer register.
2008-05-31 Richard Guenther <rguenther@suse.de> 2008-05-31 Richard Guenther <rguenther@suse.de>
...@@ -5841,7 +5848,7 @@ ...@@ -5841,7 +5848,7 @@
call clobber check for NMTs. call clobber check for NMTs.
2008-05-28 Seongbae Park <seongbae.park@gmail.com> 2008-05-28 Seongbae Park <seongbae.park@gmail.com>
* value-prof.c (tree_ic_transform): Use HOST_WIDEST_INT_PRINT_DEC * value-prof.c (tree_ic_transform): Use HOST_WIDEST_INT_PRINT_DEC
for printing gcov_type. for printing gcov_type.
...@@ -6079,9 +6086,9 @@ ...@@ -6079,9 +6086,9 @@
that the bitfield is of integral type before testing its precision. that the bitfield is of integral type before testing its precision.
2008-05-27 Trevor Smigiel <trevor_smigiel@playstation.sony.com> 2008-05-27 Trevor Smigiel <trevor_smigiel@playstation.sony.com>
Sa Liu <saliu@de.ibm.com> Sa Liu <saliu@de.ibm.com>
* config/spu/spu.c (spu_init_libfuncs): Add __multi3, __divti3, * config/spu/spu.c (spu_init_libfuncs): Add __multi3, __divti3,
__modti3, __udivti3, __umodti3 and __udivmodti4. __modti3, __udivti3, __umodti3 and __udivmodti4.
* config/spu/t-spu-elf (LIB2FUNCS_STATIC_EXTRA): Add files * config/spu/t-spu-elf (LIB2FUNCS_STATIC_EXTRA): Add files
that implement TImode mul and div functions. that implement TImode mul and div functions.
...@@ -6120,7 +6127,7 @@ ...@@ -6120,7 +6127,7 @@
* config/avr/avr.md ("call_prologue_saves"): Use hi8(gs())/lo8(gs()) * config/avr/avr.md ("call_prologue_saves"): Use hi8(gs())/lo8(gs())
instead of pm_lo8/pm_hi8 to makes this call working on avr6. instead of pm_lo8/pm_hi8 to makes this call working on avr6.
* config/avr/avr.c (expand_prologue): Tune "call_prologue" * config/avr/avr.c (expand_prologue): Tune "call_prologue"
optimization for 'avr6' architecture. optimization for 'avr6' architecture.
2008-05-26 Andy Hutchinson <hutchinsonandy@aim.com> 2008-05-26 Andy Hutchinson <hutchinsonandy@aim.com>
...@@ -6658,7 +6665,7 @@ ...@@ -6658,7 +6665,7 @@
* tree-data-ref.c (dr_analyze_indices): Replace resolve_mixers with * tree-data-ref.c (dr_analyze_indices): Replace resolve_mixers with
instantiate_scev. instantiate_scev.
(analyze_siv_subscript): Pass in the loop nest number. (analyze_siv_subscript): Pass in the loop nest number.
Call evolution_function_is_affine_in_loop instead of Call evolution_function_is_affine_in_loop instead of
evolution_function_is_affine_p. evolution_function_is_affine_p.
(analyze_overlapping_iterations): Pass in the loop nest number. (analyze_overlapping_iterations): Pass in the loop nest number.
...@@ -6724,7 +6731,7 @@ ...@@ -6724,7 +6731,7 @@
2008-05-19 Xinliang David Li <davidxl@google.com> 2008-05-19 Xinliang David Li <davidxl@google.com>
* tree-ssa-dce.c: Revert patches of 2008-05-17 and 2008-05-18. * tree-ssa-dce.c: Revert patches of 2008-05-17 and 2008-05-18.
* opts.c: Ditto. * opts.c: Ditto.
* common.opt: Ditto. * common.opt: Ditto.
* doc/invoke.texi: Ditto. * doc/invoke.texi: Ditto.
...@@ -6783,7 +6790,7 @@ ...@@ -6783,7 +6790,7 @@
2008-05-18 Xinliang David Li <davidxl@google.com> 2008-05-18 Xinliang David Li <davidxl@google.com>
* gcc/tree-ssa-dce.c: Coding style fix. * gcc/tree-ssa-dce.c: Coding style fix.
(check_pow): Documentation comment. (check_pow): Documentation comment.
(check_log): Documenation comment. Coding style fix. (check_log): Documenation comment. Coding style fix.
(is_unnecessary_except_errno_call): Ditto. (is_unnecessary_except_errno_call): Ditto.
(gen_conditions_for_pow): Ditto. (gen_conditions_for_pow): Ditto.
...@@ -6791,7 +6798,7 @@ ...@@ -6791,7 +6798,7 @@
(gen_shrink_wrap_conditions): Ditto. (gen_shrink_wrap_conditions): Ditto.
(shrink_wrap_one_built_in_calls): Ditto. (shrink_wrap_one_built_in_calls): Ditto.
* gcc/doc/invoke.texi: Better documentation string. * gcc/doc/invoke.texi: Better documentation string.
* ChangeLog: Fix wrong change log entries from * ChangeLog: Fix wrong change log entries from
May 17 checkin on function call DCE. May 17 checkin on function call DCE.
2008-05-17 Kaz Kojima <kkojima@gcc.gnu.org> 2008-05-17 Kaz Kojima <kkojima@gcc.gnu.org>
...@@ -6803,7 +6810,7 @@ ...@@ -6803,7 +6810,7 @@
* doc/rtl.texi (RTL_CONST_CALL_P, RTL_PURE_CALL_P): Fixed typos. * doc/rtl.texi (RTL_CONST_CALL_P, RTL_PURE_CALL_P): Fixed typos.
* df-problems.c (simulation routines): Fixed block comment to * df-problems.c (simulation routines): Fixed block comment to
properly say how to add forwards scanning functions. properly say how to add forwards scanning functions.
2008-05-17 Eric Botcazou <ebotcazou@adacore.com> 2008-05-17 Eric Botcazou <ebotcazou@adacore.com>
* tree-inline.c (setup_one_parameter): Remove dead code. * tree-inline.c (setup_one_parameter): Remove dead code.
...@@ -6816,8 +6823,8 @@ ...@@ -6816,8 +6823,8 @@
2008-05-17 Xinliang David Li <davidxl@google.com> 2008-05-17 Xinliang David Li <davidxl@google.com>
* gcc/tree-ssa-dce.c (cond_dead_built_in_calls): New static variable. * gcc/tree-ssa-dce.c (cond_dead_built_in_calls): New static variable.
(check_pow, check_log, is_unnecessary_except_errno_call): New (check_pow, check_log, is_unnecessary_except_errno_call): New
functions to check for eliminating math functions that are pure functions to check for eliminating math functions that are pure
except for setting errno. except for setting errno.
(gen_conditions_for_pow, gen_conditionas_for_log): New functions to (gen_conditions_for_pow, gen_conditionas_for_log): New functions to
general condition expressions for shrink-wrapping pow/log calls. general condition expressions for shrink-wrapping pow/log calls.
...@@ -6880,7 +6887,7 @@ ...@@ -6880,7 +6887,7 @@
2008-05-16 Kenneth Zadeck <zadeck@naturalbridge.com> 2008-05-16 Kenneth Zadeck <zadeck@naturalbridge.com>
* tree-ssa-dse (max_stmt_uid): Removed. * tree-ssa-dse (max_stmt_uid): Removed.
(get_stmt_uid, dse_possible_dead_store_p, dse_optimize_stmt, (get_stmt_uid, dse_possible_dead_store_p, dse_optimize_stmt,
tree_ssa_dse): Encapsulate all uses of stmt_ann->uid. tree_ssa_dse): Encapsulate all uses of stmt_ann->uid.
* tree-ssa-sccvn.c (compare_ops, init_scc_vn): Ditto. * tree-ssa-sccvn.c (compare_ops, init_scc_vn): Ditto.
* function.h (cfun.last_stmt_uid): New field. * function.h (cfun.last_stmt_uid): New field.
...@@ -6959,7 +6966,7 @@ ...@@ -6959,7 +6966,7 @@
write_summary, read_summary. write_summary, read_summary.
* cgraphunit.c (cgraph_process_new_functions): Changed call from * cgraphunit.c (cgraph_process_new_functions): Changed call from
pass_ipa_inline.function_generate_summary, to pass_ipa_inline.function_generate_summary, to
compute_inline_parameters. compute_inline_parameters.
* ipa-inline.c (compute_inline_parameters): Made public and added * ipa-inline.c (compute_inline_parameters): Made public and added
node parameter. node parameter.
(compute_inline_parameters_for_current): New function. (compute_inline_parameters_for_current): New function.
...@@ -6969,19 +6976,19 @@ ...@@ -6969,19 +6976,19 @@
(pass_ipa_inline): Updated for new IPA_PASS structure. (pass_ipa_inline): Updated for new IPA_PASS structure.
* passes.c (execute_ipa_summary_passes): Now is called once per * passes.c (execute_ipa_summary_passes): Now is called once per
pass rather than once per node*pass. pass rather than once per node*pass.
2008-05-15 Anatoly Sokolov <aesok@post.ru> 2008-05-15 Anatoly Sokolov <aesok@post.ru>
* config/avr/avr.c (avr_base_arch_macro, avr_have_movw_lpmx_p, * config/avr/avr.c (avr_base_arch_macro, avr_have_movw_lpmx_p,
avr_have_mul_p, avr_asm_only_p): Remove variables. avr_have_mul_p, avr_asm_only_p): Remove variables.
(avr_override_options): Remove initialization of removed variables. (avr_override_options): Remove initialization of removed variables.
(avr_file_start): Convert removed variables to fields of (avr_file_start): Convert removed variables to fields of
'struct base_arch_s *avr_current_arch'. 'struct base_arch_s *avr_current_arch'.
* config/avr/avr.h (TARGET_CPU_CPP_BUILTINS): (Ditto.). * config/avr/avr.h (TARGET_CPU_CPP_BUILTINS): (Ditto.).
(AVR_HAVE_MUL): (Ditto.). (AVR_HAVE_MUL): (Ditto.).
(AVR_HAVE_MOVW): (Ditto.). (AVR_HAVE_MOVW): (Ditto.).
(AVR_HAVE_LPMX): (Ditto.). (AVR_HAVE_LPMX): (Ditto.).
(avr_base_arch_macro, avr_have_movw_lpmx_p, avr_have_mul_p, (avr_base_arch_macro, avr_have_movw_lpmx_p, avr_have_mul_p,
avr_asm_only_p): Remove declaration. avr_asm_only_p): Remove declaration.
2008-05-15 Diego Novillo <dnovillo@google.com> 2008-05-15 Diego Novillo <dnovillo@google.com>
...@@ -6997,7 +7004,7 @@ ...@@ -6997,7 +7004,7 @@
(record_truncated_value): Turn it into a for_each_rtx callback. (record_truncated_value): Turn it into a for_each_rtx callback.
(record_truncated_values): New function. (record_truncated_values): New function.
(combine_instructions): Call note_uses with record_truncated_values. (combine_instructions): Call note_uses with record_truncated_values.
Change name of check_conversion to check_promoted_subreg. Change name of check_conversion to check_promoted_subreg.
2008-05-15 Janis Johnson <janis187@us.ibm.com> 2008-05-15 Janis Johnson <janis187@us.ibm.com>
...@@ -7281,14 +7288,14 @@ ...@@ -7281,14 +7288,14 @@
* optabs.c (prepare_cmp_insn): Changed LCT_PURE_MAKE_BLOCK to * optabs.c (prepare_cmp_insn): Changed LCT_PURE_MAKE_BLOCK to
LCT_PURE and LCT_CONST_MAKE_BLOCK to LCT_CONST in calls to LCT_PURE and LCT_CONST_MAKE_BLOCK to LCT_CONST in calls to
emit_library_call_value. emit_library_call_value.
* builtins.c (expand_builtin_powi, expand_builtin_memcmp): Ditto. * builtins.c (expand_builtin_powi, expand_builtin_memcmp): Ditto.
* tree.h (ECF_LIBCALL_BLOCK): Removed. * tree.h (ECF_LIBCALL_BLOCK): Removed.
* calls.c (initialize_argument_information, precompute_arguments, * calls.c (initialize_argument_information, precompute_arguments,
expand_call, emit_library_call_value_1): Remove ECF_LIBCALL_BLOCK. expand_call, emit_library_call_value_1): Remove ECF_LIBCALL_BLOCK.
(precompute_arguments): Removed flags parameter. (precompute_arguments): Removed flags parameter.
* rtl.h (LCT_CONST_MAKE_BLOCK, LCT_PURE_MAKE_BLOCK): Removed. * rtl.h (LCT_CONST_MAKE_BLOCK, LCT_PURE_MAKE_BLOCK): Removed.
2008-05-14 Richard Guenther <rguenther@suse.de> 2008-05-14 Richard Guenther <rguenther@suse.de>
* tree-ssa-dse.c (dse_possible_dead_store_p): Remove dead code. * tree-ssa-dse.c (dse_possible_dead_store_p): Remove dead code.
...@@ -7476,7 +7483,7 @@ ...@@ -7476,7 +7483,7 @@
2008-05-10 Kenneth Zadeck <zadeck@naturalbridge.com> 2008-05-10 Kenneth Zadeck <zadeck@naturalbridge.com>
* gcse.c (store_killed_in_insn): Negated call to RTL_CONST_CALL_P. * gcse.c (store_killed_in_insn): Negated call to RTL_CONST_CALL_P.
2008-05-10 H.J. Lu <hongjiu.lu@intel.com> 2008-05-10 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (bdesc_ptest): Removed. * config/i386/i386.c (bdesc_ptest): Removed.
...@@ -7619,7 +7626,7 @@ ...@@ -7619,7 +7626,7 @@
CONVERT_EXPR_P. CONVERT_EXPR_P.
(CONVERT_EXPR_P): Define. (CONVERT_EXPR_P): Define.
(CASE_CONVERT): Define. (CASE_CONVERT): Define.
2008-05-08 Kenneth Zadeck <zadeck@naturalbridge.com> 2008-05-08 Kenneth Zadeck <zadeck@naturalbridge.com>
PR middle-end/36117 PR middle-end/36117
...@@ -7703,7 +7710,7 @@ ...@@ -7703,7 +7710,7 @@
2008-05-08 David Daney <ddaney@avtrex.com> 2008-05-08 David Daney <ddaney@avtrex.com>
Richard Sandiford <rsandifo@nildram.co.uk> Richard Sandiford <rsandifo@nildram.co.uk>
* config/mips/mips.md (mips_expand_compare_and_swap_12): Handle * config/mips/mips.md (mips_expand_compare_and_swap_12): Handle
special case of constant zero operands. special case of constant zero operands.
* config/mips/mips.c (mips_expand_compare_and_swap_12): Zero extend * config/mips/mips.c (mips_expand_compare_and_swap_12): Zero extend
...@@ -7928,9 +7935,9 @@ ...@@ -7928,9 +7935,9 @@
(analyze_function): Rename DECL_IS_PURE to DECL_PURE_P. (analyze_function): Rename DECL_IS_PURE to DECL_PURE_P.
(static_execute): Set looping true for recursive functions. (static_execute): Set looping true for recursive functions.
Undo setting state to IPA_NEITHER for recursive functions. Undo setting state to IPA_NEITHER for recursive functions.
* cse.c (cse_insn): * cse.c (cse_insn):
* ifcvt.c (noce_can_store_speculate_p): Changed * ifcvt.c (noce_can_store_speculate_p): Changed
CONST_OR_PURE_CALL_P and pure_call_p to RTL_CONST_CALL_P or CONST_OR_PURE_CALL_P and pure_call_p to RTL_CONST_CALL_P or
RTL_CONST_OR_PURE_CALL_P. RTL_CONST_OR_PURE_CALL_P.
* dse.c (scan_insn): Ditto. * dse.c (scan_insn): Ditto.
* local-alloc.c (validate_equiv_mem, memref_used_between_p): Ditto. * local-alloc.c (validate_equiv_mem, memref_used_between_p): Ditto.
...@@ -7972,7 +7979,7 @@ ...@@ -7972,7 +7979,7 @@
DECL_PURE_P. DECL_PURE_P.
* tree-cfg.c (update_call_expr_flags): Do not clear tree side * tree-cfg.c (update_call_expr_flags): Do not clear tree side
effects for looping pure or const calls. effects for looping pure or const calls.
(verify_gimple_expr): Added verification code. (verify_gimple_expr): Added verification code.
* config/alpha/alpha.c (alpha_legitimize_address, * config/alpha/alpha.c (alpha_legitimize_address,
alpha_emit_xfloating_libcall): Changed CONST_OR_PURE_CALL_P to alpha_emit_xfloating_libcall): Changed CONST_OR_PURE_CALL_P to
RTL_CONST_CALL_P. RTL_CONST_CALL_P.
...@@ -8266,14 +8273,14 @@ ...@@ -8266,14 +8273,14 @@
(ipcp_redirect): Removed newly unused local variable callee. (ipcp_redirect): Removed newly unused local variable callee.
(ipcp_redirect): Removed (a bit confusing) local variable type. (ipcp_redirect): Removed (a bit confusing) local variable type.
(ipcp_insert_stage): Added local variable info. (ipcp_insert_stage): Added local variable info.
(ipcp_cval_changed): Renamed to ipcp_lattice_changed, parameters (ipcp_cval_changed): Renamed to ipcp_lattice_changed, parameters
renamed too renamed too
(ipcp_formal_create): Removed. (ipcp_formal_create): Removed.
(ipcp_method_cval_set): Removed. (ipcp_method_cval_set): Removed.
(ipcp_propagate_stage): Renamed lattice variables. (ipcp_propagate_stage): Renamed lattice variables.
(ipcp_method_cval_set_cvalue_type): Removed. (ipcp_method_cval_set_cvalue_type): Removed.
(ipcp_method_cval_print): Renamed to ipcp_print_all_lattices (ipcp_method_cval_print): Renamed to ipcp_print_all_lattices
(ipcp_print_all_lattices): Changed printed strings to refer to (ipcp_print_all_lattices): Changed printed strings to refer to
lattices rather than cvals. lattices rather than cvals.
(ipcp_method_cval_init): Renamed to ipcp_initialize_node_lattices (ipcp_method_cval_init): Renamed to ipcp_initialize_node_lattices
(ipcp_propagate_const): Changed formal parameters. (ipcp_propagate_const): Changed formal parameters.
...@@ -8284,7 +8291,7 @@ ...@@ -8284,7 +8291,7 @@
(ipcp_after_propagate): Renamed to ipcp_change_tops_to_bottom (ipcp_after_propagate): Renamed to ipcp_change_tops_to_bottom
(ipcp_callsite_param_print): Renamed to ipcp_print_all_jump_functions (ipcp_callsite_param_print): Renamed to ipcp_print_all_jump_functions
(ipcp_profile_mt_count_print): Renamed to ipcp_print_func_profile_counts (ipcp_profile_mt_count_print): Renamed to ipcp_print_func_profile_counts
(ipcp_print_func_profile_counts): Changed string from "method" to (ipcp_print_func_profile_counts): Changed string from "method" to
"function" "function"
(ipcp_profile_cs_count_print): Renamed to ipcp_print_call_profile_counts (ipcp_profile_cs_count_print): Renamed to ipcp_print_call_profile_counts
(ipcp_profile_edge_print): Renamed to ipcp_print_edge_profiles (ipcp_profile_edge_print): Renamed to ipcp_print_edge_profiles
...@@ -8294,7 +8301,7 @@ ...@@ -8294,7 +8301,7 @@
(ipcp_lat_is_const): Changed parameters and made inline. (ipcp_lat_is_const): Changed parameters and made inline.
(ipcp_replace_map_create): Renamed to ipcp_create_replace_map (ipcp_replace_map_create): Renamed to ipcp_create_replace_map
(ipcp_redirect): Renamed to ipcp_need_redirect_p (ipcp_redirect): Renamed to ipcp_need_redirect_p
(ipcp_need_redirect_p): Calls ipcp_lat_is_const instead of using (ipcp_need_redirect_p): Calls ipcp_lat_is_const instead of using
the predicate condition directly the predicate condition directly
(ipcp_propagate_stage): Added local variable args. Removed local (ipcp_propagate_stage): Added local variable args. Removed local
variable callee. (Both are mere code simplifications.) variable callee. (Both are mere code simplifications.)
...@@ -8421,13 +8428,13 @@ ...@@ -8421,13 +8428,13 @@
* gthr-single.h: Add in required interface elements as per gthr.h. * gthr-single.h: Add in required interface elements as per gthr.h.
Add stub types for __gthread_key_t, __gthread_once_t. Add defines Add stub types for __gthread_key_t, __gthread_once_t. Add defines
for __GTHREAD_ONCE_INIT, __GTHREAD_RECURSIVE_MUTEX_INIT. for __GTHREAD_ONCE_INIT, __GTHREAD_RECURSIVE_MUTEX_INIT.
Generalize UNUSED macro. Generalize UNUSED macro.
(__gthread_once): Add. (__gthread_once): Add.
(__gthread_key_create): Add. (__gthread_key_create): Add.
(__gthread_key_delete): Add. (__gthread_key_delete): Add.
(__gthread_getspecific): Add. (__gthread_getspecific): Add.
(__gthread_setspecific): Add. (__gthread_setspecific): Add.
2008-05-05 Andrew Pinski <Andrew.Pinski@playstation.sony.com> 2008-05-05 Andrew Pinski <Andrew.Pinski@playstation.sony.com>
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): If we have * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): If we have
...@@ -8509,7 +8516,7 @@ ...@@ -8509,7 +8516,7 @@
* doc/invoke.texi (max-flow-memory-locations): Removed. * doc/invoke.texi (max-flow-memory-locations): Removed.
* params.def (PARAM_MAX_FLOW_MEMORY_LOCATIONS): Removed. * params.def (PARAM_MAX_FLOW_MEMORY_LOCATIONS): Removed.
2008-05-03 Richard Guenther <rguenther@suse.de> 2008-05-03 Richard Guenther <rguenther@suse.de>
PR middle-end/34973 PR middle-end/34973
...@@ -8791,13 +8798,13 @@ ...@@ -8791,13 +8798,13 @@
* ipa-cp.c (ipcp_init_stage): Calls ipa_set_called_with_variable_arg * ipa-cp.c (ipcp_init_stage): Calls ipa_set_called_with_variable_arg
instead of setting number of formal parameters to zero. instead of setting number of formal parameters to zero.
(ipcp_init_stage): Do not set the number of actual parameters to zero (ipcp_init_stage): Do not set the number of actual parameters to zero
either. either.
(ipcp_propagate_stage): Explicitly skipping all calls to nodes (ipcp_propagate_stage): Explicitly skipping all calls to nodes
which are called with variable number of arguments. which are called with variable number of arguments.
(ipcp_insert_stage): Explicitely skipping all nodes which are (ipcp_insert_stage): Explicitely skipping all nodes which are
called with variable number of arguments. called with variable number of arguments.
(ipcp_callsite_param_print): Skipps callsites to nodes with varaible (ipcp_callsite_param_print): Skipps callsites to nodes with varaible
number of parameters. number of parameters.
* ipa-prop.h (struct ipa_node_params): Added flag * ipa-prop.h (struct ipa_node_params): Added flag
...@@ -8809,13 +8816,13 @@ ...@@ -8809,13 +8816,13 @@
(ipa_is_called_with_var_arguments): Added. (ipa_is_called_with_var_arguments): Added.
(ipa_get_ith_param): Added. All readers of param_decls converted (ipa_get_ith_param): Added. All readers of param_decls converted
to use it instead. to use it instead.
(ipa_set_cs_argument_count): Added, sole writer to argument_count (ipa_set_cs_argument_count): Added, sole writer to argument_count
changed to use it. changed to use it.
(ipa_get_cs_argument_count): Added, all readers of argument_count (ipa_get_cs_argument_count): Added, all readers of argument_count
changed to cal it. changed to cal it.
(ipa_get_ith_jump_func): Added. Accessors of jump values changed (ipa_get_ith_jump_func): Added. Accessors of jump values changed
to use it. to use it.
* ipa-prop.h (struct ipcp_formal): Renamed to ipcp_lattice * ipa-prop.h (struct ipcp_formal): Renamed to ipcp_lattice
(struct ipcp_lattice): Renamed cval_type to type (struct ipcp_lattice): Renamed cval_type to type
(struct ipa_node_params): ipcp_cval renamed to ipcp_lattices (struct ipa_node_params): ipcp_cval renamed to ipcp_lattices
...@@ -8827,9 +8834,9 @@ ...@@ -8827,9 +8834,9 @@
(build_const_val): Changed the type of parameter cvalue to tree (build_const_val): Changed the type of parameter cvalue to tree
(ipcp_propagate_const): Changed the type of parameter cvalue to tree (ipcp_propagate_const): Changed the type of parameter cvalue to tree
(ipcp_method_cval_set_cvalue_type): Renamed parameter cval_type1 to type (ipcp_method_cval_set_cvalue_type): Renamed parameter cval_type1 to type
* ipa-prop.h (struct ipcp_formal): Replaced cvalue with tree called * ipa-prop.h (struct ipcp_formal): Replaced cvalue with tree called
constant constant
* ipa-prop.c (ipa_methodlist_init): Renamed to ipa_init_func_list * ipa-prop.c (ipa_methodlist_init): Renamed to ipa_init_func_list
(ipa_methodlist_not_empty): Removed, the sole user now checks directly (ipa_methodlist_not_empty): Removed, the sole user now checks directly
...@@ -8847,7 +8854,7 @@ ...@@ -8847,7 +8854,7 @@
(ipa_method_tree_map_create): Removed. (ipa_method_tree_map_create): Removed.
(ipa_method_compute_tree_map): Renamed to ipa_create_param_decls_array (ipa_method_compute_tree_map): Renamed to ipa_create_param_decls_array
(ipa_create_param_decls_array): Creates the array itself (ipa_create_param_decls_array): Creates the array itself
(ipa_create_param_decls_array): Temporary variable info instead of (ipa_create_param_decls_array): Temporary variable info instead of
a few dereferences. a few dereferences.
(ipa_method_formal_compute_count): Renamed to ipa_count_formal_params (ipa_method_formal_compute_count): Renamed to ipa_count_formal_params
(ipa_method_compute_modify): Renamed to ipa_detect_param_modifications (ipa_method_compute_modify): Renamed to ipa_detect_param_modifications
...@@ -8859,7 +8866,7 @@ ...@@ -8859,7 +8866,7 @@
(ipa_edges_create): Renamed to ipa_create_all_edge_args (ipa_edges_create): Renamed to ipa_create_all_edge_args
(ipa_edges_free): Renamed to ipa_free_all_edge_args (ipa_edges_free): Renamed to ipa_free_all_edge_args
(ipa_nodes_free): Integrated into ipa_free_all_node_params and removed (ipa_nodes_free): Integrated into ipa_free_all_node_params and removed
(ipa_free_all_node_params): Deallocation to jump_functions moved to (ipa_free_all_node_params): Deallocation to jump_functions moved to
ipa_free_all_edge_args ipa_free_all_edge_args
(ipa_method_tree_print): Renamed to ipa_print_all_tree_maps (ipa_method_tree_print): Renamed to ipa_print_all_tree_maps
(ipa_method_modify_print): Renamed to ipa_print_all_params_modified (ipa_method_modify_print): Renamed to ipa_print_all_params_modified
...@@ -8870,22 +8877,22 @@ ...@@ -8870,22 +8877,22 @@
(ipa_methodlist_next_method_set): Removed. (ipa_methodlist_next_method_set): Removed.
(ipa_method_is_modified): Removed. (ipa_method_is_modified): Removed.
(ipa_method_modify_create): Removed. (ipa_method_modify_create): Removed.
(ipa_method_modify_init): Temporary variable info instead of a few (ipa_method_modify_init): Temporary variable info instead of a few
dereferences. dereferences.
(ipa_detect_param_modifications): Temporary variable info instead of (ipa_detect_param_modifications): Temporary variable info instead of
a few dereferences. a few dereferences.
(ipa_compute_jump_functions): Temporary variable info instead of (ipa_compute_jump_functions): Temporary variable info instead of
a few dereferences. a few dereferences.
(ipa_method_modify_set): Removed. (ipa_method_modify_set): Removed.
(ipa_method_tree_map): Renamed to ipa_get_param_decl_index (ipa_method_tree_map): Renamed to ipa_get_param_decl_index
(ipa_get_param_decl_index): Now accepts struct ipa_node_params rather (ipa_get_param_decl_index): Now accepts struct ipa_node_params rather
than craph_node as the first parameter. than craph_node as the first parameter.
(ipa_method_modify_stmt): Renamed to ipa_check_stmt_modifications (ipa_method_modify_stmt): Renamed to ipa_check_stmt_modifications
(ipa_method_modify_init): Removed. (ipa_method_modify_init): Removed.
(ipa_compute_jump_functions): Added a temp variable instead of (ipa_compute_jump_functions): Added a temp variable instead of
repeatadly dereferencing the cgraph_edge.aux pointer repeatadly dereferencing the cgraph_edge.aux pointer
(ipa_callsite_param_set_type): Removed. (ipa_callsite_param_set_type): Removed.
(ipa_compute_jump_functions): i renamed to index and moved to (ipa_compute_jump_functions): i renamed to index and moved to
an inner block an inner block
(ipa_callsite_param_set_info_type_formal): Removed. (ipa_callsite_param_set_info_type_formal): Removed.
(ipa_callsite_param_set_info_type): Removed. (ipa_callsite_param_set_info_type): Removed.
...@@ -8896,9 +8903,9 @@ ...@@ -8896,9 +8903,9 @@
* ipa-prop.h (enum cvalue_type): Renamed to ipa_lattice_type, * ipa-prop.h (enum cvalue_type): Renamed to ipa_lattice_type,
prefixed all values with IPA_. Changed all users. prefixed all values with IPA_. Changed all users.
(enum jump_func_type): Rnamed UNKNOWN_IPATYPE to IPA_UNKNOWN, (enum jump_func_type): Rnamed UNKNOWN_IPATYPE to IPA_UNKNOWN,
CONST_IPATYPE to IPA_CONST, CONST_IPATYPE_REF to IPA_CONST_REF CONST_IPATYPE to IPA_CONST, CONST_IPATYPE_REF to IPA_CONST_REF
and FORMAL_IPATYPE IPA_PASS_THROUGH. and FORMAL_IPATYPE IPA_PASS_THROUGH.
(union parameter_info): Renamed to jump_func_value. (union parameter_info): Renamed to jump_func_value.
(union jump_func_value): Renamed value to constant (union jump_func_value): Renamed value to constant
(struct ipa_jump_func): Renamed info_type to value (struct ipa_jump_func): Renamed info_type to value
...@@ -9055,7 +9062,7 @@ ...@@ -9055,7 +9062,7 @@
* tree-ssa-loop-manip.c (find_uses_to_rename_use): Only record * tree-ssa-loop-manip.c (find_uses_to_rename_use): Only record
uses outside of the loop. uses outside of the loop.
(tree_duplicate_loop_to_header_edge): Only verify loop-closed SSA (tree_duplicate_loop_to_header_edge): Only verify loop-closed SSA
form if it is available. form if it is available.
* tree-flow.h (tree_unroll_loops_completely): Add extra parameter. * tree-flow.h (tree_unroll_loops_completely): Add extra parameter.
* passes.c (init_optimization_passes): Schedule complete inner * passes.c (init_optimization_passes): Schedule complete inner
loop unrolling pass before the first CCP pass after final inlining. loop unrolling pass before the first CCP pass after final inlining.
...@@ -9397,9 +9404,9 @@ ...@@ -9397,9 +9404,9 @@
(init_elim_table): Update. (init_elim_table): Update.
2008-04-25 Bob Wilson <bob.wilson@acm.org> 2008-04-25 Bob Wilson <bob.wilson@acm.org>
* optabs.c (expand_float): Fix REG_EQUAL for UNSIGNED_FLOAT libcall. * optabs.c (expand_float): Fix REG_EQUAL for UNSIGNED_FLOAT libcall.
2008-04-25 H.J. Lu <hongjiu.lu@intel.com> 2008-04-25 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/sse.md (mov<mode>): Replace SSEMODEI with SSEMODE. * config/i386/sse.md (mov<mode>): Replace SSEMODEI with SSEMODE.
...@@ -9470,7 +9477,7 @@ ...@@ -9470,7 +9477,7 @@
of code delimited by two edges in the CFG. of code delimited by two edges in the CFG.
(separate_decls_in_loop_name): Renamed separate_decls_in_region_name. (separate_decls_in_loop_name): Renamed separate_decls_in_region_name.
(separate_decls_in_loop_stmt): Renamed separate_decls_in_region_stmt. (separate_decls_in_loop_stmt): Renamed separate_decls_in_region_stmt.
(separate_decls_in_loop): Renamed separate_decls_in_region. Isolate (separate_decls_in_loop): Renamed separate_decls_in_region. Isolate
the case of parallelisation of reductions. the case of parallelisation of reductions.
(expr_invariant_in_region_p): New. (expr_invariant_in_region_p): New.
...@@ -9637,7 +9644,7 @@ ...@@ -9637,7 +9644,7 @@
PR middle-end/36003 PR middle-end/36003
* passes.c (init_optimization_passes): Remove * passes.c (init_optimization_passes): Remove
pass_fast_rtl_byte_dce. pass_fast_rtl_byte_dce.
2008-04-22 Uros Bizjak <ubizjak@gmail.com> 2008-04-22 Uros Bizjak <ubizjak@gmail.com>
PR target/29096 PR target/29096
...@@ -9728,14 +9735,14 @@ ...@@ -9728,14 +9735,14 @@
* dbgcnt.def (ra_byte_scan): Added. * dbgcnt.def (ra_byte_scan): Added.
* dbgcnt.c (dbg_cnt): Added code to print message to dump_file * dbgcnt.c (dbg_cnt): Added code to print message to dump_file
when the last hit happens for a counter. when the last hit happens for a counter.
* timevar.def (TV_DF_BYTE_LR): New variable. * timevar.def (TV_DF_BYTE_LR): New variable.
* tree-pass.h (pass_fast_rtl_byte_dce): New pass. * tree-pass.h (pass_fast_rtl_byte_dce): New pass.
* passes.c (pass_fast_rtl_byte_dce): New pass. * passes.c (pass_fast_rtl_byte_dce): New pass.
* fwprop.c (update_df): Added mode to call df_ref_create. * fwprop.c (update_df): Added mode to call df_ref_create.
Renamed DF_REF_WIDTH and DF_REF_OFFSET to DF_REF_EXTRACT_WIDTH and Renamed DF_REF_WIDTH and DF_REF_OFFSET to DF_REF_EXTRACT_WIDTH and
DF_REF_EXTRACT_OFFSET. DF_REF_EXTRACT_OFFSET.
* df.h (DF_BYTE_LR, DF_BYTE_LR_BB_INFO, DF_BYTE_LR_IN, * df.h (DF_BYTE_LR, DF_BYTE_LR_BB_INFO, DF_BYTE_LR_IN,
DF_BYTE_LR_OUT, df_byte_lr): New macro. DF_BYTE_LR_OUT, df_byte_lr): New macro.
(df_mm): New enum. (df_mm): New enum.
(df_ref_extract): Added mode field. (df_ref_extract): Added mode field.
...@@ -9743,7 +9750,7 @@ ...@@ -9743,7 +9750,7 @@
DF_REF_EXTRACT_OFFSET. DF_REF_EXTRACT_OFFSET.
(DF_REF_EXTRACT_MODE): New macro. (DF_REF_EXTRACT_MODE): New macro.
(df_byte_lr_bb_info): New structure. (df_byte_lr_bb_info): New structure.
(df_print_byte_regset, df_compute_accessed_bytes, (df_print_byte_regset, df_compute_accessed_bytes,
df_byte_lr_add_problem, df_byte_lr_get_regno_start, df_byte_lr_add_problem, df_byte_lr_get_regno_start,
df_byte_lr_get_regno_len, df_byte_lr_simulate_defs, df_byte_lr_get_regno_len, df_byte_lr_simulate_defs,
df_byte_lr_simulate_uses, df_byte_lr_simulate_uses,
...@@ -9754,9 +9761,9 @@ ...@@ -9754,9 +9761,9 @@
(df_byte_lr_get_bb_info): New inline function. (df_byte_lr_get_bb_info): New inline function.
* df-scan.c (df_ref_record, df_uses_record, * df-scan.c (df_ref_record, df_uses_record,
df_ref_create_structure): Added mode parameter. df_ref_create_structure): Added mode parameter.
(df_ref_create, df_notes_rescan, df_ref_record, df_def_record_1, (df_ref_create, df_notes_rescan, df_ref_record, df_def_record_1,
df_defs_record, df_uses_record, df_get_conditional_uses, df_defs_record, df_uses_record, df_get_conditional_uses,
df_get_call_refs, df_insn_refs_collect, df_bb_refs_collect, df_get_call_refs, df_insn_refs_collect, df_bb_refs_collect,
df_entry_block_defs_collect, df_exit_block_uses_collect): df_entry_block_defs_collect, df_exit_block_uses_collect):
Added mode parameter to calls to df_ref_record, df_uses_record, Added mode parameter to calls to df_ref_record, df_uses_record,
df_ref_create_structure. df_ref_create_structure.
...@@ -9767,25 +9774,25 @@ ...@@ -9767,25 +9774,25 @@
* df-core.c (df_print_byte_regset): New function. * df-core.c (df_print_byte_regset): New function.
* df-byte-scan.c: New file. * df-byte-scan.c: New file.
* df-problems.c (df_rd_transfer_function): Removed unnecessary * df-problems.c (df_rd_transfer_function): Removed unnecessary
calls to BITMAP_FREE. calls to BITMAP_FREE.
(df_byte_lr_problem_data, df_problem problem_BYTE_LR): New structure. (df_byte_lr_problem_data, df_problem problem_BYTE_LR): New structure.
(df_byte_lr_get_regno_start, df_byte_lr_get_regno_len, (df_byte_lr_get_regno_start, df_byte_lr_get_regno_len,
df_byte_lr_set_bb_info, df_byte_lr_free_bb_info, df_byte_lr_set_bb_info, df_byte_lr_free_bb_info,
df_byte_lr_check_regs, df_byte_lr_expand_bitmap, df_byte_lr_check_regs, df_byte_lr_expand_bitmap,
df_byte_lr_alloc, df_byte_lr_reset, df_byte_lr_bb_local_compute, df_byte_lr_alloc, df_byte_lr_reset, df_byte_lr_bb_local_compute,
df_byte_lr_local_compute, df_byte_lr_init, df_byte_lr_local_compute, df_byte_lr_init,
df_byte_lr_confluence_0, df_byte_lr_confluence_n, df_byte_lr_confluence_0, df_byte_lr_confluence_n,
df_byte_lr_transfer_function, df_byte_lr_free, df_byte_lr_transfer_function, df_byte_lr_free,
df_byte_lr_top_dump, df_byte_lr_bottom_dump, df_byte_lr_top_dump, df_byte_lr_bottom_dump,
df_byte_lr_add_problem, df_byte_lr_simulate_defs, df_byte_lr_add_problem, df_byte_lr_simulate_defs,
df_byte_lr_simulate_uses, df_byte_lr_simulate_uses,
df_byte_lr_simulate_artificial_refs_at_top, df_byte_lr_simulate_artificial_refs_at_top,
df_byte_lr_simulate_artificial_refs_at_end): New function. df_byte_lr_simulate_artificial_refs_at_end): New function.
* dce.c (byte_dce_process_block): New function. * dce.c (byte_dce_process_block): New function.
(dce_process_block): au is now passed in rather than computed (dce_process_block): au is now passed in rather than computed
locally. Changed loops that look at artificial defs to not look locally. Changed loops that look at artificial defs to not look
for conditional or partial ones, because there never are any. for conditional or partial ones, because there never are any.
(fast_dce): Now is able to drive byte_dce_process_block or (fast_dce): Now is able to drive byte_dce_process_block or
dce_process_block depending on the kind of dce being done. dce_process_block depending on the kind of dce being done.
(rest_of_handle_fast_dce): Add parameter to fast_dce. (rest_of_handle_fast_dce): Add parameter to fast_dce.
(rest_of_handle_fast_byte_dce): New function. (rest_of_handle_fast_byte_dce): New function.
...@@ -9833,14 +9840,14 @@ ...@@ -9833,14 +9840,14 @@
pointer_may_wrap_p to disable some false positives. pointer_may_wrap_p to disable some false positives.
2008-04-18 Kris Van Hees <kris.van.hees@oracle.com> 2008-04-18 Kris Van Hees <kris.van.hees@oracle.com>
* c-common.c (CHAR16_TYPE, CHAR32_TYPE): New macros. * c-common.c (CHAR16_TYPE, CHAR32_TYPE): New macros.
(fname_as_string): Match updated cpp_interpret_string prototype. (fname_as_string): Match updated cpp_interpret_string prototype.
(fix_string_type): Support char16_t* and char32_t*. (fix_string_type): Support char16_t* and char32_t*.
(c_common_nodes_and_builtins): Add char16_t and char32_t (and (c_common_nodes_and_builtins): Add char16_t and char32_t (and
derivative) nodes. Register as builtin if C++0x. derivative) nodes. Register as builtin if C++0x.
(c_parse_error): Support CPP_CHAR{16,32}. (c_parse_error): Support CPP_CHAR{16,32}.
* c-common.h (RID_CHAR16, RID_CHAR32): New elements. * c-common.h (RID_CHAR16, RID_CHAR32): New elements.
(enum c_tree_index) <CTI_CHAR16_TYPE, CTI_SIGNED_CHAR16_TYPE, (enum c_tree_index) <CTI_CHAR16_TYPE, CTI_SIGNED_CHAR16_TYPE,
CTI_UNSIGNED_CHAR16_TYPE, CTI_CHAR32_TYPE, CTI_SIGNED_CHAR32_TYPE, CTI_UNSIGNED_CHAR16_TYPE, CTI_CHAR32_TYPE, CTI_SIGNED_CHAR32_TYPE,
CTI_UNSIGNED_CHAR32_TYPE, CTI_CHAR16_ARRAY_TYPE, CTI_UNSIGNED_CHAR32_TYPE, CTI_CHAR16_ARRAY_TYPE,
...@@ -10006,7 +10013,7 @@ ...@@ -10006,7 +10013,7 @@
* config/sh/sh.c (expand_cbranchdi4): Use original operands for * config/sh/sh.c (expand_cbranchdi4): Use original operands for
msw_skip comparison. msw_skip comparison.
2008-04-16 Jakub Jelinek <jakub@redhat.com> 2008-04-16 Jakub Jelinek <jakub@redhat.com>
PR c/35739 PR c/35739
...@@ -10062,7 +10069,7 @@ ...@@ -10062,7 +10069,7 @@
unused. unused.
Move filter, exc_ptr, ttype_data, ehspec_data, action_record_data and Move filter, exc_ptr, ttype_data, ehspec_data, action_record_data and
exception_handler_label_map, ehr_stackadj, ehr_handler, ehr_label, exception_handler_label_map, ehr_stackadj, ehr_handler, ehr_label,
sjlj_fc, sjlj_exit_after to rth_eh in function.h. sjlj_fc, sjlj_exit_after to rth_eh in function.h.
Remove call_site_data_used, call_site_data_size. Remove call_site_data_used, call_site_data_size.
Turn call_site_record into vector in function.h. Turn call_site_record into vector in function.h.
(note_current_region_may_contain_throw): Remove. (note_current_region_may_contain_throw): Remove.
...@@ -10072,7 +10079,7 @@ ...@@ -10072,7 +10079,7 @@
add_ttypes_entry, add_ehspec_entry, assign_filter_values, add_ttypes_entry, add_ehspec_entry, assign_filter_values,
build_post_landing_pads, dw2_build_landing_pads, build_post_landing_pads, dw2_build_landing_pads,
sjlj_assign_call_site_values, sjlj_mark_call_sites, sjlj_assign_call_site_values, sjlj_mark_call_sites,
sjlj_emit_function_enter, sjlj_emit_function_enter, sjlj_emit_function_enter, sjlj_emit_function_enter,
sjlj_emit_function_exit, sjlj_emit_dispatch_table, sjlj_emit_function_exit, sjlj_emit_dispatch_table,
sjlj_build_landing_pads, finish_eh_generation, sjlj_build_landing_pads, finish_eh_generation,
remove_exception_handler_label, remove_eh_handler, remove_exception_handler_label, remove_eh_handler,
...@@ -10298,7 +10305,7 @@ ...@@ -10298,7 +10305,7 @@
(*<code>extendsfdf2): Macroize insn pattern from *absextendsfdf2 and (*<code>extendsfdf2): Macroize insn pattern from *absextendsfdf2 and
*negextendsfdf2 patterns using absneg code iterator. *negextendsfdf2 patterns using absneg code iterator.
* config/i386/sse.md (<code><mode>2): Macroize expander from * config/i386/sse.md (<code><mode>2): Macroize expander from
abs<mode>2 and neg<mode>2 patterns using absneg code iterator. abs<mode>2 and neg<mode>2 patterns using absneg code iterator.
2008-04-10 Andreas Krebbel <krebbel1@de.ibm.com> 2008-04-10 Andreas Krebbel <krebbel1@de.ibm.com>
...@@ -10538,10 +10545,10 @@ ...@@ -10538,10 +10545,10 @@
2008-04-08 Anatoly Sokolov <aesok@post.ru> 2008-04-08 Anatoly Sokolov <aesok@post.ru>
* config/avr/avr.h (TARGET_CPU_CPP_BUILTINS): Define * config/avr/avr.h (TARGET_CPU_CPP_BUILTINS): Define
__AVR_HAVE_EIJMP_EICALL__ macro if device have EIJMP and EICALL __AVR_HAVE_EIJMP_EICALL__ macro if device have EIJMP and EICALL
instructions. instructions.
* config/avr/avr.c (avr_mcu_types): Set AVR31 architecture for * config/avr/avr.c (avr_mcu_types): Set AVR31 architecture for
atmega103 device. atmega103 device.
2008-04-07 Jan Hubicka <jh@suse.cz> 2008-04-07 Jan Hubicka <jh@suse.cz>
...@@ -10562,7 +10569,7 @@ ...@@ -10562,7 +10569,7 @@
(assign_stack_local): Update (assign_stack_local): Update
(expand_function_end): Update. (expand_function_end): Update.
(get_art_pointer_save_area): Update (get_art_pointer_save_area): Update
* function.h * function.h
* emit-rtl.c (rtl): Declare. * emit-rtl.c (rtl): Declare.
(regno_reg_rtx): Declare. (regno_reg_rtx): Declare.
(first_insn, last_insn, cur_insn_uid, last_location, first_label_num): (first_insn, last_insn, cur_insn_uid, last_location, first_label_num):
...@@ -10657,7 +10664,7 @@ ...@@ -10657,7 +10664,7 @@
(avr_asm_init_sections): (Ditto.). (avr_asm_init_sections): (Ditto.).
(avr_rtx_costs): (Ditto.). (avr_rtx_costs): (Ditto.).
* config/avr/avr.md: (Ditto.). * config/avr/avr.md: (Ditto.).
* config/avr/avr.h: Use '__AVR_HAVE_JMP_CALL__' instead of * config/avr/avr.h: Use '__AVR_HAVE_JMP_CALL__' instead of
'__AVR_MEGA__'. '__AVR_MEGA__'.
2008-04-06 Richard Guenther <rguenther@suse.de> 2008-04-06 Richard Guenther <rguenther@suse.de>
...@@ -10825,7 +10832,7 @@ ...@@ -10825,7 +10832,7 @@
* c-objc-common.h (LANG_HOOKS_FUNCTION_MISSING_NORETURN_OK_P): * c-objc-common.h (LANG_HOOKS_FUNCTION_MISSING_NORETURN_OK_P):
Rename to LANG_HOOKS_MISSING_NORETURN_OK_P. Rename to LANG_HOOKS_MISSING_NORETURN_OK_P.
2008-04-04 Jakub Jelinek <jakub@redhat.com> 2008-04-04 Jakub Jelinek <jakub@redhat.com>
PR c/35440 PR c/35440
...@@ -11021,10 +11028,10 @@ ...@@ -11021,10 +11028,10 @@
2008-04-02 Anatoly Sokolov <aesok@post.ru> 2008-04-02 Anatoly Sokolov <aesok@post.ru>
* config/avr/predicates.md (io_address_operand): New predicate. * config/avr/predicates.md (io_address_operand): New predicate.
* config/avr/avr-protos.h (avr_io_address_p): Remove declaration. * config/avr/avr-protos.h (avr_io_address_p): Remove declaration.
* config/avr/avr.c (avr_io_address_p): Remove function. * config/avr/avr.c (avr_io_address_p): Remove function.
(out_movqi_r_mr): Use 'io_address_operand' predicate instead of (out_movqi_r_mr): Use 'io_address_operand' predicate instead of
'avr_io_address_p' function. 'avr_io_address_p' function.
(out_movhi_r_mr): (Ditto.). (out_movhi_r_mr): (Ditto.).
(out_movqi_mr_r): (Ditto.). (out_movqi_mr_r): (Ditto.).
...@@ -11721,7 +11728,7 @@ ...@@ -11721,7 +11728,7 @@
* config/alpha/x-vms (EXTRA_PROGRAMS): Remove. * config/alpha/x-vms (EXTRA_PROGRAMS): Remove.
* config/t-openbsd-thread: Remove commented out lines. * config/t-openbsd-thread: Remove commented out lines.
* config/x-interix: Remove. * config/x-interix: Remove.
* config/m68hc11/t-m68hc11-gas: Rename to... * config/m68hc11/t-m68hc11-gas: Rename to...
...@@ -11845,7 +11852,7 @@ ...@@ -11845,7 +11852,7 @@
(reload_reg_rtx_for_input): New variable. (reload_reg_rtx_for_input): New variable.
(reload_reg_rtx_for_output): Likewise. (reload_reg_rtx_for_output): Likewise.
(emit_input_reload_insns): Use reloadreg rather than rl->reg_rtx (emit_input_reload_insns): Use reloadreg rather than rl->reg_rtx
when reassigning a pseudo register. Load reloadreg from when reassigning a pseudo register. Load reloadreg from
reload_reg_rtx_for_input, moving the mode and register reload_reg_rtx_for_input, moving the mode and register
calculation to... calculation to...
(do_input_reload): ...here. Use the mode-adjusted reg_rtx (do_input_reload): ...here. Use the mode-adjusted reg_rtx
...@@ -11887,12 +11894,12 @@ ...@@ -11887,12 +11894,12 @@
(build/genflags.o): Likewise. (build/genflags.o): Likewise.
2008-03-25 Bob Wilson <bob.wilson@acm.org> 2008-03-25 Bob Wilson <bob.wilson@acm.org>
* config/xtensa/xtensa.c (xtensa_va_start): Use build_int_cst * config/xtensa/xtensa.c (xtensa_va_start): Use build_int_cst
instead of size_int for integer types. instead of size_int for integer types.
(xtensa_gimplify_va_arg_expr): Likewise. Convert index to sizetype (xtensa_gimplify_va_arg_expr): Likewise. Convert index to sizetype
to match type of MINUS_EXPR. to match type of MINUS_EXPR.
2008-03-25 Tom Tromey <tromey@redhat.com> 2008-03-25 Tom Tromey <tromey@redhat.com>
* configure: Rebuilt. * configure: Rebuilt.
...@@ -12010,7 +12017,7 @@ ...@@ -12010,7 +12017,7 @@
2008-03-25 Naveen.H.S <naveen.hs@kpitcummins.com> 2008-03-25 Naveen.H.S <naveen.hs@kpitcummins.com>
* config/sh/sh.md (prefetch): Add condition for SH2A target. * config/sh/sh.md (prefetch): Add condition for SH2A target.
(prefetch_sh2a): New. (prefetch_sh2a): New.
2008-03-25 Jayant Sonar <Jayant.sonar@kpitcummins.com> 2008-03-25 Jayant Sonar <Jayant.sonar@kpitcummins.com>
Naveen.H.S <naveen.hs@kpitcummins.com> Naveen.H.S <naveen.hs@kpitcummins.com>
...@@ -12063,7 +12070,7 @@ ...@@ -12063,7 +12070,7 @@
* diagnostic.c (diagnostic_count_diagnostic): Delete. * diagnostic.c (diagnostic_count_diagnostic): Delete.
(diagnostic_report_diagnostic): Update. Handle ICEs here. (diagnostic_report_diagnostic): Update. Handle ICEs here.
2008-03-24 Nathan Sidwell <nathan@codesourcery.com> 2008-03-24 Nathan Sidwell <nathan@codesourcery.com>
* gthr-vxworks.h (UNUSED): Define. * gthr-vxworks.h (UNUSED): Define.
...@@ -12076,7 +12083,7 @@ ...@@ -12076,7 +12083,7 @@
* doc/extend.texi (Function Attributes): Add missing comma in the * doc/extend.texi (Function Attributes): Add missing comma in the
example of the "alloc_size" attribute. example of the "alloc_size" attribute.
2008-03-23 Uros Bizjak <ubizjak@gmail.com> 2008-03-23 Uros Bizjak <ubizjak@gmail.com>
Revert: Revert:
...@@ -12554,22 +12561,22 @@ ...@@ -12554,22 +12561,22 @@
* config/avr/avr.c (avr_arch_types): Add avr6 entry. * config/avr/avr.c (avr_arch_types): Add avr6 entry.
(avr_arch): Add ARCH_AVR6. (avr_arch): Add ARCH_AVR6.
(avr_mcu_types): Add 'atmega2560' and 'atmega2561' entry. (avr_mcu_types): Add 'atmega2560' and 'atmega2561' entry.
(initial_elimination_offset): Initialize and use 'avr_pc_size' (initial_elimination_offset): Initialize and use 'avr_pc_size'
instead of fixed value 2. instead of fixed value 2.
(print_operand_address): Use gs() asm specifier instead of pm(). (print_operand_address): Use gs() asm specifier instead of pm().
(avr_assemble_integer): (Ditto.). (avr_assemble_integer): (Ditto.).
(avr_output_addr_vec_elt): (Ditto.). (avr_output_addr_vec_elt): (Ditto.).
(print_operand): Handle "!" code. (print_operand): Handle "!" code.
* config/avr/avr.h (TARGET_CPU_CPP_BUILTINS): Add * config/avr/avr.h (TARGET_CPU_CPP_BUILTINS): Add
__AVR_3_BYTE_PC__, __AVR_2_BYTE_PC__ and __AVR_HAVE_JMP_CALL__. __AVR_3_BYTE_PC__, __AVR_2_BYTE_PC__ and __AVR_HAVE_JMP_CALL__.
(AVR_HAVE_EIJMP_EICALL): Define. (AVR_HAVE_EIJMP_EICALL): Define.
(AVR_3_BYTE_PC): Redefine. (AVR_3_BYTE_PC): Redefine.
(AVR_2_BYTE_PC): (Ditto.). (AVR_2_BYTE_PC): (Ditto.).
(PRINT_OPERAND_PUNCT_VALID_P): Add '!' code. (PRINT_OPERAND_PUNCT_VALID_P): Add '!' code.
(LINK_SPEC): Add atmega2560 and atmega2561. (LINK_SPEC): Add atmega2560 and atmega2561.
(CRT_BINUTILS_SPEC): Add atmega2560 (crtm2560.o) and atmega2561 (CRT_BINUTILS_SPEC): Add atmega2560 (crtm2560.o) and atmega2561
(crtm2561.o). (crtm2561.o).
* config/avr/avr.md (call_insn): Use eicall instead of icall * config/avr/avr.md (call_insn): Use eicall instead of icall
for 3 byte PC devices. for 3 byte PC devices.
(call_value_insn): (Ditto.). (call_value_insn): (Ditto.).
(*tablejump_enh): Use eijmp instead of ijmp for 3 byte PC devices. (*tablejump_enh): Use eijmp instead of ijmp for 3 byte PC devices.
...@@ -12577,11 +12584,11 @@ ...@@ -12577,11 +12584,11 @@
(*tablejump): (Ditto.). (*tablejump): (Ditto.).
(*indirect_jump_avr6): Add insn. (*indirect_jump_avr6): Add insn.
(*tablejump_rjmp): Don't use for 3 byte PC devices. (*tablejump_rjmp): Don't use for 3 byte PC devices.
* config/avr/libgcc.S (__prologue_saves__): Use eijmp * config/avr/libgcc.S (__prologue_saves__): Use eijmp
instead of ijmp for 3 byte PC devices. instead of ijmp for 3 byte PC devices.
(__tablejump2__): (Ditto.). (__tablejump2__): (Ditto.).
* config/avr/t-avr (MULITLIB_OPTIONS): Add avr6 architecture. * config/avr/t-avr (MULITLIB_OPTIONS): Add avr6 architecture.
(MULITLIB_DIRNAMES): (Ditto.). (MULITLIB_DIRNAMES): (Ditto.).
(MULTILIB_MATCHES): Add atmega2560 and atmega2561 to list. (MULTILIB_MATCHES): Add atmega2560 and atmega2561 to list.
2008-03-15 Uros Bizjak <ubizjak@gmail.com> 2008-03-15 Uros Bizjak <ubizjak@gmail.com>
...@@ -12608,7 +12615,7 @@ ...@@ -12608,7 +12615,7 @@
being a PHI_NODE. being a PHI_NODE.
2008-03-14 Bob Wilson <bob.wilson@acm.org> 2008-03-14 Bob Wilson <bob.wilson@acm.org>
* doc/invoke.texi (Option Summary, Xtensa Options): Document * doc/invoke.texi (Option Summary, Xtensa Options): Document
-mserialize-volatile and -mno-serialize-volatile Xtensa options. -mserialize-volatile and -mno-serialize-volatile Xtensa options.
* config/xtensa/xtensa.c (print_operand): Do not emit MEMW instructions * config/xtensa/xtensa.c (print_operand): Do not emit MEMW instructions
...@@ -13226,7 +13233,7 @@ ...@@ -13226,7 +13233,7 @@
(df_ref_create_structure): Allocate df_ref_extract if offset and (df_ref_create_structure): Allocate df_ref_extract if offset and
width fields are used. width fields are used.
(df_def_record_1): Get offset and width from ZERO_EXTRACT. (df_def_record_1): Get offset and width from ZERO_EXTRACT.
(df_uses_record): Get offset and width from ZERO_EXTRACT (df_uses_record): Get offset and width from ZERO_EXTRACT
and SIGN_EXTRACT. and SIGN_EXTRACT.
* global.c (build_insn_chain): Change DF_REF_EXTRACT to either * global.c (build_insn_chain): Change DF_REF_EXTRACT to either
DF_REF_ZERO_EXTRACT or DF_REF_SIGN_EXTRACT. Change DF_REF_ZERO_EXTRACT or DF_REF_SIGN_EXTRACT. Change
...@@ -13237,7 +13244,7 @@ ...@@ -13237,7 +13244,7 @@
(df_ref_extract): New structure. (df_ref_extract): New structure.
(DF_REF_WIDTH, DF_REF_OFFSET): New macros. (DF_REF_WIDTH, DF_REF_OFFSET): New macros.
(df_ref_create): Add width and offset parameters. (df_ref_create): Add width and offset parameters.
2008-03-05 Richard Guenther <rguenther@suse.de> 2008-03-05 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (get_constraint_for_component_ref): * tree-ssa-structalias.c (get_constraint_for_component_ref):
...@@ -13468,7 +13475,7 @@ ...@@ -13468,7 +13475,7 @@
* Makefile.in (OBJS-common): Remove struct-equiv.o. * Makefile.in (OBJS-common): Remove struct-equiv.o.
(struct-equiv.o): Remove rule. (struct-equiv.o): Remove rule.
* basic-block.h (struct_equiv_checkpoint, STRUCT_EQUIV_*, * basic-block.h (struct_equiv_checkpoint, STRUCT_EQUIV_*,
insns_match_p, struct_equiv_block_eq, struct_equiv_init, insns_match_p, struct_equiv_block_eq, struct_equiv_init,
rtx_equiv_p, condjump_equiv_p): Remove prototypes. rtx_equiv_p, condjump_equiv_p): Remove prototypes.
2008-03-01 Alexandre Oliva <aoliva@redhat.com> 2008-03-01 Alexandre Oliva <aoliva@redhat.com>
...@@ -13655,7 +13662,7 @@ ...@@ -13655,7 +13662,7 @@
* tree-vect-analyze.c: Remove unused static decls. * tree-vect-analyze.c: Remove unused static decls.
* lambda.h (dependence_level): New. * lambda.h (dependence_level): New.
* common.opt (ftree-loop-distribution): New. * common.opt (ftree-loop-distribution): New.
* tree-flow.h (mark_virtual_ops_in_bb, * tree-flow.h (mark_virtual_ops_in_bb,
slpeel_tree_duplicate_loop_to_edge_cfg, slpeel_tree_duplicate_loop_to_edge_cfg,
rename_variables_in_loop): Declared. rename_variables_in_loop): Declared.
* Makefile.in (TREE_DATA_REF_H): Depend on tree-chrec.h. * Makefile.in (TREE_DATA_REF_H): Depend on tree-chrec.h.
...@@ -13865,7 +13872,7 @@ ...@@ -13865,7 +13872,7 @@
2008-02-26 Jason Merrill <jason@redhat.com> 2008-02-26 Jason Merrill <jason@redhat.com>
PR c++/35315 PR c++/35315
* attribs.c (decl_attributes): Leave ATTR_FLAG_TYPE_IN_PLACE * attribs.c (decl_attributes): Leave ATTR_FLAG_TYPE_IN_PLACE
alone if it's the naming decl for the type's main variant. alone if it's the naming decl for the type's main variant.
2008-02-26 Tom Tromey <tromey@redhat.com> 2008-02-26 Tom Tromey <tromey@redhat.com>
...@@ -13959,7 +13966,7 @@ ...@@ -13959,7 +13966,7 @@
* builtins.c (expand_builtin): Remove BUILT_IN_STDARG_START. * builtins.c (expand_builtin): Remove BUILT_IN_STDARG_START.
* tree-stdarg.c (execute_optimize_stdarg): Likewise. * tree-stdarg.c (execute_optimize_stdarg): Likewise.
* tree-inline.c (inline_forbidden_p_1): Likewise. * tree-inline.c (inline_forbidden_p_1): Likewise.
2008-02-26 Richard Guenther <rguenther@suse.de> 2008-02-26 Richard Guenther <rguenther@suse.de>
* tree-flow.h (uid_decl_map_hash, uid_decl_map_eq): Move ... * tree-flow.h (uid_decl_map_hash, uid_decl_map_eq): Move ...
...@@ -14028,7 +14035,7 @@ ...@@ -14028,7 +14035,7 @@
Wvolatile-register-var. Wvolatile-register-var.
* common.opt: Move Wvolatile-register-var to... * common.opt: Move Wvolatile-register-var to...
* c.opt: ...here. * c.opt: ...here.
2008-02-26 Manuel Lopez-Ibanez <manu@gcc.gnu.org> 2008-02-26 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
* common.opt (Wlarger-than=): New. * common.opt (Wlarger-than=): New.
...@@ -14039,7 +14046,7 @@ ...@@ -14039,7 +14046,7 @@
* opth-gen.awk: Likewise. * opth-gen.awk: Likewise.
* stor-layout.c (layout_decl): Use -Wlarger-than= for warning. * stor-layout.c (layout_decl): Use -Wlarger-than= for warning.
* tree-optimize.c (tree_rest_of_compilation): Likewise. * tree-optimize.c (tree_rest_of_compilation): Likewise.
2008-02-26 Manuel Lopez-Ibanez <manu@gcc.gnu.org> 2008-02-26 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
* c-common.c (match_case_to_enum_1): Add appropriate * c-common.c (match_case_to_enum_1): Add appropriate
...@@ -14062,7 +14069,7 @@ ...@@ -14062,7 +14069,7 @@
(print_ignored_options): New. (print_ignored_options): New.
(handle_option): Postpone errors for unknown -Wno-* options. (handle_option): Postpone errors for unknown -Wno-* options.
* opts.h (print_ignored_options): Declare. * opts.h (print_ignored_options): Declare.
2008-02-25 Richard Sandiford <rsandifo@nildram.co.uk> 2008-02-25 Richard Sandiford <rsandifo@nildram.co.uk>
* config/mips/mips.md (loadgp_blockage, blockage): Change type * config/mips/mips.md (loadgp_blockage, blockage): Change type
...@@ -14141,7 +14148,7 @@ ...@@ -14141,7 +14148,7 @@
PR c/35162 PR c/35162
* doc/invoke.texi (-fcx-limited-range): Correct to be in line with * doc/invoke.texi (-fcx-limited-range): Correct to be in line with
actual behaviour and C99. actual behaviour and C99.
2008-02-26 Ben Elliston <bje@au.ibm.com> 2008-02-26 Ben Elliston <bje@au.ibm.com>
* config/rs6000/rs6000.h (ASM_CPU_POWER5_SPEC): Define. * config/rs6000/rs6000.h (ASM_CPU_POWER5_SPEC): Define.
...@@ -14244,7 +14251,7 @@ ...@@ -14244,7 +14251,7 @@
unused local variable `has_hot_blocks'. unused local variable `has_hot_blocks'.
(fix_crossing_conditional_branches): Remove unused local variable (fix_crossing_conditional_branches): Remove unused local variable
`prev_bb'. `prev_bb'.
2008-02-25 Uros Bizjak <ubizjak@gmail.com> 2008-02-25 Uros Bizjak <ubizjak@gmail.com>
PR middle-end/19984 PR middle-end/19984
...@@ -14336,7 +14343,7 @@ ...@@ -14336,7 +14343,7 @@
2008-02-23 Uros Bizjak <ubizjak@gmail.com> 2008-02-23 Uros Bizjak <ubizjak@gmail.com>
PR target/22076 PR target/22076
PR target/34256 PR target/34256
* config/i386/mmx.md (*mov<mode>_internal_rex64): Use "!y" to * config/i386/mmx.md (*mov<mode>_internal_rex64): Use "!y" to
prevent reload from using MMX registers. prevent reload from using MMX registers.
(*mov<mode>_internal): Ditto. (*mov<mode>_internal): Ditto.
...@@ -14471,7 +14478,7 @@ ...@@ -14471,7 +14478,7 @@
* config/h8300/h8300.c (h8300_expand_epilogue): Emit return insn * config/h8300/h8300.c (h8300_expand_epilogue): Emit return insn
as a jump, not as a plain insn. as a jump, not as a plain insn.
2008-02-20 Seongbae Park <seongbae.park@gmail.com> 2008-02-20 Seongbae Park <seongbae.park@gmail.com>
* doc/invoke.texi (Warning Options): Add new option * doc/invoke.texi (Warning Options): Add new option
...@@ -14524,7 +14531,7 @@ ...@@ -14524,7 +14531,7 @@
* doc/install.texi: Correct references to CFLAGS, replacing them * doc/install.texi: Correct references to CFLAGS, replacing them
with BOOT_CFLAGS. Document flags used during bootstrap for with BOOT_CFLAGS. Document flags used during bootstrap for
target libraries. target libraries.
2008-02-20 Uros Bizjak <ubizjak@gmail.com> 2008-02-20 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.h (SSE_VEC_FLOAT_MODE_P): New define. * config/i386/i386.h (SSE_VEC_FLOAT_MODE_P): New define.
...@@ -14657,7 +14664,7 @@ ...@@ -14657,7 +14664,7 @@
cannot be disambiguated. cannot be disambiguated.
* c.opt (v): Pass on to the common option handler. * c.opt (v): Pass on to the common option handler.
2008-02-19 Revital Eres <eres@il.ibm.com> 2008-02-19 Revital Eres <eres@il.ibm.com>
* modulo-sched.c (sms_schedule): Change dump message when * modulo-sched.c (sms_schedule): Change dump message when
create_ddg function fails. create_ddg function fails.
...@@ -14779,7 +14786,7 @@ ...@@ -14779,7 +14786,7 @@
2008-02-17 Uros Bizjak <ubizjak@gmail.com> 2008-02-17 Uros Bizjak <ubizjak@gmail.com>
Revert: Revert:
2008-02-15 Uros Bizjak <ubizjak@gmail.com> 2008-02-15 Uros Bizjak <ubizjak@gmail.com>
* config/i386/sfp-machine.h (CMPtype): Define as typedef using * config/i386/sfp-machine.h (CMPtype): Define as typedef using
libgcc_cmp_return mode. libgcc_cmp_return mode.
...@@ -14955,7 +14962,7 @@ ...@@ -14955,7 +14962,7 @@
Add -fdump-ipa-inline. Add -fdump-ipa-inline.
* tree-dump.c (dump_files): Remove tree-inlined dump. * tree-dump.c (dump_files): Remove tree-inlined dump.
* tree-pass.h (tree_dump_index): Remove TDI_inlined. * tree-pass.h (tree_dump_index): Remove TDI_inlined.
2008-02-12 Richard Guenther <rguenther@suse.de> 2008-02-12 Richard Guenther <rguenther@suse.de>
PR tree-optimization/35171 PR tree-optimization/35171
...@@ -15045,7 +15052,7 @@ ...@@ -15045,7 +15052,7 @@
2008-02-08 Sa Liu <saliu@de.ibm.com> 2008-02-08 Sa Liu <saliu@de.ibm.com>
* config/spu/spu-builtins.def: Fixed wrong parameter type in spu * config/spu/spu-builtins.def: Fixed wrong parameter type in spu
intrinsics spu_convts, spu_convtu, spu_convtf. intrinsics spu_convts, spu_convtu, spu_convtf.
2008-02-08 Hans-Peter Nilsson <hp@axis.com> 2008-02-08 Hans-Peter Nilsson <hp@axis.com>
...@@ -15060,7 +15067,7 @@ ...@@ -15060,7 +15067,7 @@
optc-gen.awk. optc-gen.awk.
* opts-common.c: Likewise. * opts-common.c: Likewise.
* optc-gen.awk: Likewise. * optc-gen.awk: Likewise.
2008-02-07 Andreas Krebbel <krebbel1@de.ibm.com> 2008-02-07 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/s390.h (FUNCTION_ARG_REGNO_P): Fix fprs for 64 bit. * config/s390/s390.h (FUNCTION_ARG_REGNO_P): Fix fprs for 64 bit.
...@@ -15069,7 +15076,7 @@ ...@@ -15069,7 +15076,7 @@
PR rtl-opt/33410 PR rtl-opt/33410
* config/alpha/alpha.c (alpha_emit_xfloating_compare): Use an * config/alpha/alpha.c (alpha_emit_xfloating_compare): Use an
EXPR_LIST for the REG_EQUAL instead of a comparison with a EXPR_LIST for the REG_EQUAL instead of a comparison with a
funny mode. funny mode.
2008-02-07 Uros Bizjak <ubizjak@gmail.com> 2008-02-07 Uros Bizjak <ubizjak@gmail.com>
...@@ -15106,7 +15113,7 @@ ...@@ -15106,7 +15113,7 @@
2008-02-06 Ralf Corsepius <ralf.corsepius@rtems.org> 2008-02-06 Ralf Corsepius <ralf.corsepius@rtems.org>
* config/arm/rtems-elf.h (TARGET_OS_CPP_BUILTINS): Add * config/arm/rtems-elf.h (TARGET_OS_CPP_BUILTINS): Add
builtin_define ("__USE_INIT_FINI__"). builtin_define ("__USE_INIT_FINI__").
* config/h8300/t-rtems (MULTILIB_OPTION,MULTILIB_DIRNAMES): Add * config/h8300/t-rtems (MULTILIB_OPTION,MULTILIB_DIRNAMES): Add
-msx multilibs. -msx multilibs.
...@@ -15239,16 +15246,16 @@ ...@@ -15239,16 +15246,16 @@
* doc/c-tree.texi (Types): Fix grammar. * doc/c-tree.texi (Types): Fix grammar.
(Expression trees): Ditto. (Expression trees): Ditto.
* doc/passes.texi (Tree-SSA passes): Ditto. * doc/passes.texi (Tree-SSA passes): Ditto.
* doc/configterms.texi (Configure Terms): Fix typo. * doc/configterms.texi (Configure Terms): Fix typo.
* doc/cpp.texi (Common Predefined Macros): Ditto. * doc/cpp.texi (Common Predefined Macros): Ditto.
* doc/md.texi (Machine Constraints): Ditto. * doc/md.texi (Machine Constraints): Ditto.
* doc/makefile.texi (Makefile): Add comma. * doc/makefile.texi (Makefile): Add comma.
2008-01-31 Tom Browder <tom.browder@gmail.com> 2008-01-31 Tom Browder <tom.browder@gmail.com>
Gerald Pfeifer <gerald@pfeifer.com> Gerald Pfeifer <gerald@pfeifer.com>
* doc/sourcebuild.texi (Front End): Remove references to CVS * doc/sourcebuild.texi (Front End): Remove references to CVS
and CVSROOT/modules. and CVSROOT/modules.
(Texinfo Manuals): Replace reference to CVS by one to SVN. (Texinfo Manuals): Replace reference to CVS by one to SVN.
...@@ -15269,7 +15276,7 @@ ...@@ -15269,7 +15276,7 @@
options. Minor fixes. options. Minor fixes.
(-std): Move reference to standards closer to where language (-std): Move reference to standards closer to where language
standards are first mentioned. standards are first mentioned.
2008-01-31 Richard Sandiford <rsandifo@nildram.co.uk> 2008-01-31 Richard Sandiford <rsandifo@nildram.co.uk>
PR rtl-optimization/34995 PR rtl-optimization/34995
...@@ -15365,7 +15372,7 @@ ...@@ -15365,7 +15372,7 @@
2008-01-28 Andy Hutchinson <hutchinsonandy@netscape.net> 2008-01-28 Andy Hutchinson <hutchinsonandy@netscape.net>
PR target/34412 PR target/34412
* config/avr/avr.c (expand_prologue): Use correct QI mode frame * config/avr/avr.c (expand_prologue): Use correct QI mode frame
pointer for tiny stack. pointer for tiny stack.
2008-01-28 Bernhard Fischer <aldot@gcc.gnu.org> 2008-01-28 Bernhard Fischer <aldot@gcc.gnu.org>
...@@ -15450,7 +15457,7 @@ ...@@ -15450,7 +15457,7 @@
Change type of cost to comp_cost. Change type of cost to comp_cost.
(determine_iv_cost): Increase cost of non-original ivs, instead (determine_iv_cost): Increase cost of non-original ivs, instead
of decreasing the cost of original ones. of decreasing the cost of original ones.
(get_address_cost): Indicate the complexity of the addressing mode (get_address_cost): Indicate the complexity of the addressing mode
in comp_cost. in comp_cost.
(try_add_cand_for): Prefer using ivs not specific to some object. (try_add_cand_for): Prefer using ivs not specific to some object.
* tree-flow.h (force_expr_to_var_cost): Declaration removed. * tree-flow.h (force_expr_to_var_cost): Declaration removed.
...@@ -15693,10 +15700,10 @@ ...@@ -15693,10 +15700,10 @@
* ipa-struct-reorg.c (remove_str_allocs_in_func, remove_str_allocs): * ipa-struct-reorg.c (remove_str_allocs_in_func, remove_str_allocs):
New functions. New functions.
(remove_structure): Update allocations list before removing structure. (remove_structure): Update allocations list before removing structure.
2008-01-25 Golovanevsky Olga <olga@il.ibm.com> 2008-01-25 Golovanevsky Olga <olga@il.ibm.com>
* ipa-struct-reorg.c (is_safe_cond_expr, * ipa-struct-reorg.c (is_safe_cond_expr,
create_new_stmts_for_cond_expr): Use integer_zerop function, create_new_stmts_for_cond_expr): Use integer_zerop function,
that recognize not only zero-pointer, but zero-integer too. that recognize not only zero-pointer, but zero-integer too.
...@@ -15752,7 +15759,7 @@ ...@@ -15752,7 +15759,7 @@
PR c++/25701 PR c++/25701
* doc/gcc.texi (Software development): Add a direntry for g++. * doc/gcc.texi (Software development): Add a direntry for g++.
2008-01-23 Hans-Peter Nilsson <hp@axis.com> 2008-01-23 Hans-Peter Nilsson <hp@axis.com>
* config/cris/cris.h (CC1PLUS_SPEC, OPTIMIZATION_OPTIONS): Drop * config/cris/cris.h (CC1PLUS_SPEC, OPTIMIZATION_OPTIONS): Drop
...@@ -15780,17 +15787,17 @@ ...@@ -15780,17 +15787,17 @@
(avr_arch_types): Add 'avr31' and 'avr51' entries. (avr_arch_types): Add 'avr31' and 'avr51' entries.
(avr_arch): Add 'ARCH_AVR31' and 'ARCH_AVR51'. (avr_arch): Add 'ARCH_AVR31' and 'ARCH_AVR51'.
(avr_mcu_types): Add 'avr31' and 'avr51' architectures. (avr_mcu_types): Add 'avr31' and 'avr51' architectures.
(avr_override_options): Init 'avr_current_arch'. (avr_override_options): Init 'avr_current_arch'.
(base_arch_s): Move from here... (base_arch_s): Move from here...
* config/avr/avr.h (base_arch_s): ... here. Add new members * config/avr/avr.h (base_arch_s): ... here. Add new members
'have_elpm', 'have_elpmx', 'have_eijmp_eicall', 'reserved'. Rename 'have_elpm', 'have_elpmx', 'have_eijmp_eicall', 'reserved'. Rename
'mega' to 'have_jmp_call'. 'mega' to 'have_jmp_call'.
(TARGET_CPU_CPP_BUILTINS): Define "__AVR_HAVE_JMP_CALL__", (TARGET_CPU_CPP_BUILTINS): Define "__AVR_HAVE_JMP_CALL__",
"__AVR_HAVE_RAMPZ__", "__AVR_HAVE_ELPM__" and "__AVR_HAVE_ELPMX__" "__AVR_HAVE_RAMPZ__", "__AVR_HAVE_ELPM__" and "__AVR_HAVE_ELPMX__"
macros. macros.
(LINK_SPEC, CRT_BINUTILS_SPECS, ASM_SPEC): Add 'avr31' and 'avr51' (LINK_SPEC, CRT_BINUTILS_SPECS, ASM_SPEC): Add 'avr31' and 'avr51'
architectures. architectures.
* config/avr/t-avr (MULTILIB_OPTIONS, MULTILIB_DIRNAMES, * config/avr/t-avr (MULTILIB_OPTIONS, MULTILIB_DIRNAMES,
MULTILIB_MATCHES): (Ditto.). MULTILIB_MATCHES): (Ditto.).
2008-01-23 Richard Guenther <rguenther@suse.de> 2008-01-23 Richard Guenther <rguenther@suse.de>
...@@ -15960,7 +15967,7 @@ ...@@ -15960,7 +15967,7 @@
2008-01-21 Alon Dayan <alond@il.ibm.com> 2008-01-21 Alon Dayan <alond@il.ibm.com>
Olga Golovanevsky <olga@il.ibm.com> Olga Golovanevsky <olga@il.ibm.com>
PR tree-optimization/34701 PR tree-optimization/34701
* ipa-struct-reorg.c (gen_size): Fix the malloc parameter calculation * ipa-struct-reorg.c (gen_size): Fix the malloc parameter calculation
when the structure size is not a power of 2. when the structure size is not a power of 2.
...@@ -15968,7 +15975,7 @@ ...@@ -15968,7 +15975,7 @@
2008-01-20 Kenneth Zadeck <zadeck@naturalbridge.com> 2008-01-20 Kenneth Zadeck <zadeck@naturalbridge.com>
* doc/install.texi: Add doc for --enable-checking=df. * doc/install.texi: Add doc for --enable-checking=df.
2008-01-20 Kaz Kojima <kkojima@gcc.gnu.org> 2008-01-20 Kaz Kojima <kkojima@gcc.gnu.org>
PR rtl-optimization/34808 PR rtl-optimization/34808
...@@ -16042,7 +16049,7 @@ ...@@ -16042,7 +16049,7 @@
(df_live_init): Init the df_live sets only with the variables (df_live_init): Init the df_live sets only with the variables
found live by df_lr. found live by df_lr.
(df_live_transfer_function): Use the df_lr sets to prune the (df_live_transfer_function): Use the df_lr sets to prune the
df_live sets as they are being computed. df_live sets as they are being computed.
(df_live_free): Free df_live_scratch. (df_live_free): Free df_live_scratch.
2008-01-18 Ian Lance Taylor <iant@google.com> 2008-01-18 Ian Lance Taylor <iant@google.com>
...@@ -16224,7 +16231,7 @@ ...@@ -16224,7 +16231,7 @@
2008-01-16 Sebastian Pop <sebastian.pop@amd.com> 2008-01-16 Sebastian Pop <sebastian.pop@amd.com>
* tree-data-ref.c (subscript_dependence_tester_1): Call * tree-data-ref.c (subscript_dependence_tester_1): Call
free_conflict_function. free_conflict_function.
(compute_self_dependence): Same. (compute_self_dependence): Same.
...@@ -16263,7 +16270,7 @@ ...@@ -16263,7 +16270,7 @@
PR c++/24924 PR c++/24924
* c-opts (c_common_post_options): Do not enable CPP * c-opts (c_common_post_options): Do not enable CPP
flag_pedantic_errors by default. flag_pedantic_errors by default.
2008-01-14 Eric Botcazou <ebotcazou@adacore.com> 2008-01-14 Eric Botcazou <ebotcazou@adacore.com>
PR rtl-optimization/31944 PR rtl-optimization/31944
...@@ -16325,9 +16332,9 @@ ...@@ -16325,9 +16332,9 @@
correct type. correct type.
2008-01-11 Bob Wilson <bob.wilson@acm.org> 2008-01-11 Bob Wilson <bob.wilson@acm.org>
* config/xtensa/xtensa.c (override_options): Set flag_shlib. * config/xtensa/xtensa.c (override_options): Set flag_shlib.
2008-01-11 James E. Wilson <wilson@specifix.com> 2008-01-11 James E. Wilson <wilson@specifix.com>
PR target/26015 PR target/26015
...@@ -16335,8 +16342,8 @@ ...@@ -16335,8 +16342,8 @@
2008-01-11 Anatoly Sokolov <aesok@post.ru> 2008-01-11 Anatoly Sokolov <aesok@post.ru>
* config/avr/avr.c (expand_prologue, expand_epilogue): Don't * config/avr/avr.c (expand_prologue, expand_epilogue): Don't
save/restore frame pointer register and don't use 'call-prologues' save/restore frame pointer register and don't use 'call-prologues'
optimization in function with "OS_task" attribute. optimization in function with "OS_task" attribute.
2008-01-11 Eric Botcazou <ebotcazou@adacore.com> 2008-01-11 Eric Botcazou <ebotcazou@adacore.com>
...@@ -16462,13 +16469,13 @@ ...@@ -16462,13 +16469,13 @@
2008-01-05 Uros Bizjak <ubizjak@gmail.com> 2008-01-05 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.c (ix86_builtin_reciprocal): Remove check * config/i386/i386.c (ix86_builtin_reciprocal): Remove check
for TARGET_RECIP. for TARGET_RECIP.
2008-01-08 Jan Sjodin <jan.sjodin@amd.com> 2008-01-08 Jan Sjodin <jan.sjodin@amd.com>
* config/i386/i386.c (k8_cost, amdfam10_cost): Branch costs * config/i386/i386.c (k8_cost, amdfam10_cost): Branch costs
for vectorization tuned. for vectorization tuned.
2008-01-08 Richard Guenther <rguenther@suse.de> 2008-01-08 Richard Guenther <rguenther@suse.de>
PR tree-optimization/34683 PR tree-optimization/34683
......
...@@ -783,10 +783,9 @@ replace_inc_dec (rtx *r, void *d) ...@@ -783,10 +783,9 @@ replace_inc_dec (rtx *r, void *d)
{ {
rtx r1 = XEXP (x, 0); rtx r1 = XEXP (x, 0);
rtx c = gen_int_mode (Pmode, data->size); rtx c = gen_int_mode (Pmode, data->size);
add_insn_before (data->insn, emit_insn_before (gen_rtx_SET (Pmode, r1,
gen_rtx_SET (Pmode, r1, gen_rtx_PLUS (Pmode, r1, c)),
gen_rtx_PLUS (Pmode, r1, c)), data->insn);
NULL);
return -1; return -1;
} }
...@@ -795,10 +794,9 @@ replace_inc_dec (rtx *r, void *d) ...@@ -795,10 +794,9 @@ replace_inc_dec (rtx *r, void *d)
{ {
rtx r1 = XEXP (x, 0); rtx r1 = XEXP (x, 0);
rtx c = gen_int_mode (Pmode, -data->size); rtx c = gen_int_mode (Pmode, -data->size);
add_insn_before (data->insn, emit_insn_before (gen_rtx_SET (Pmode, r1,
gen_rtx_SET (Pmode, r1, gen_rtx_PLUS (Pmode, r1, c)),
gen_rtx_PLUS (Pmode, r1, c)), data->insn);
NULL);
return -1; return -1;
} }
...@@ -809,8 +807,7 @@ replace_inc_dec (rtx *r, void *d) ...@@ -809,8 +807,7 @@ replace_inc_dec (rtx *r, void *d)
insn that contained it. */ insn that contained it. */
rtx add = XEXP (x, 0); rtx add = XEXP (x, 0);
rtx r1 = XEXP (add, 0); rtx r1 = XEXP (add, 0);
add_insn_before (data->insn, emit_insn_before (gen_rtx_SET (Pmode, r1, add), data->insn);
gen_rtx_SET (Pmode, r1, add), NULL);
return -1; return -1;
} }
...@@ -827,12 +824,12 @@ static int ...@@ -827,12 +824,12 @@ static int
replace_inc_dec_mem (rtx *r, void *d) replace_inc_dec_mem (rtx *r, void *d)
{ {
rtx x = *r; rtx x = *r;
if (GET_CODE (x) == MEM) if (x != NULL_RTX && MEM_P (x))
{ {
struct insn_size data; struct insn_size data;
data.size = GET_MODE_SIZE (GET_MODE (x)); data.size = GET_MODE_SIZE (GET_MODE (x));
data.insn = (rtx)d; data.insn = (rtx) d;
for_each_rtx (&XEXP (x, 0), replace_inc_dec, &data); for_each_rtx (&XEXP (x, 0), replace_inc_dec, &data);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment