2010-07-31 Release Manager
|
2010-07-31 Release Manager
|
|
|
* GCC 4.5.1 released.
|
* GCC 4.5.1 released.
|
|
|
2010-07-30 Ramana Radhakrishnan
|
2010-07-30 Ramana Radhakrishnan
|
|
|
Backport from mainline.
|
Backport from mainline.
|
2010-07-22 Ramana Radhakrishnan
|
2010-07-22 Ramana Radhakrishnan
|
|
|
PR target/43698
|
PR target/43698
|
* config/arm/arm.md: Split arm_rev into *arm_rev and *thumb1_rev.
|
* config/arm/arm.md: Split arm_rev into *arm_rev and *thumb1_rev.
|
Set *arm_rev to be predicable.
|
Set *arm_rev to be predicable.
|
|
|
2010-07-27 Nick Clifton
|
2010-07-27 Nick Clifton
|
|
|
* Import this patch from the mainline:
|
* Import this patch from the mainline:
|
|
|
2010-06-30 Nick Clifton
|
2010-06-30 Nick Clifton
|
|
|
* config/rx/rx-modes.def: New file.
|
* config/rx/rx-modes.def: New file.
|
* config/rx/rx.h (FIRST_PSEUDO_REGISTER): Increase to 17.
|
* config/rx/rx.h (FIRST_PSEUDO_REGISTER): Increase to 17.
|
(CC_REGNUM): Define.
|
(CC_REGNUM): Define.
|
(FIXED_REGISTERS, CALL_USED_REGISTERS, REGISTER_NAMES): Add cc
|
(FIXED_REGISTERS, CALL_USED_REGISTERS, REGISTER_NAMES): Add cc
|
register.
|
register.
|
(CC_NO_CARRY, NOTICE_UPDATE_CC): Delete.
|
(CC_NO_CARRY, NOTICE_UPDATE_CC): Delete.
|
(SELECT_CC_MODE): Define.
|
(SELECT_CC_MODE): Define.
|
* config/rx/rx.md (CC_REG): Define. Update all patterns to use
|
* config/rx/rx.md (CC_REG): Define. Update all patterns to use
|
(reg:CC CC_REG) instead of (cc0).
|
(reg:CC CC_REG) instead of (cc0).
|
(attr "cc"): Delete.
|
(attr "cc"): Delete.
|
(cbranchsi4): Do not split compare and branch here. Instead move
|
(cbranchsi4): Do not split compare and branch here. Instead move
|
it to...
|
it to...
|
(cbranchsi4_): ... here. New patterns.
|
(cbranchsi4_): ... here. New patterns.
|
(cmpsi): Call rx-compare_redundant to find out if it is necessary
|
(cmpsi): Call rx-compare_redundant to find out if it is necessary
|
to emit the compare instruction.
|
to emit the compare instruction.
|
* config/rx/rx.c (rx_gen-cond_branch_template): Remove tests of
|
* config/rx/rx.c (rx_gen-cond_branch_template): Remove tests of
|
cc_status flags.
|
cc_status flags.
|
(rx_get_stack_layout): Iterate up to before CC_REGNUM not
|
(rx_get_stack_layout): Iterate up to before CC_REGNUM not
|
FIRST_PSEUDO_REGNUM.
|
FIRST_PSEUDO_REGNUM.
|
(rx_expand_prologue, rx_expand_epilogue): Likewise.
|
(rx_expand_prologue, rx_expand_epilogue): Likewise.
|
(rx_notice_update_cc): Delete.
|
(rx_notice_update_cc): Delete.
|
(rx_cc_modes_compatible): New function.
|
(rx_cc_modes_compatible): New function.
|
(flags_needed_for_conditional): New function.
|
(flags_needed_for_conditional): New function.
|
(flags_from_mode): New function.
|
(flags_from_mode): New function.
|
(rx_compare_redundant): New function - scans backwards through
|
(rx_compare_redundant): New function - scans backwards through
|
insn list to find out if condition flags are already set correctly.
|
insn list to find out if condition flags are already set correctly.
|
(TARGET_CC_MODES_COMPATIBLE): Define.
|
(TARGET_CC_MODES_COMPATIBLE): Define.
|
* config/rx/rx-protos.h (rx_compare_redundant): Prototype.
|
* config/rx/rx-protos.h (rx_compare_redundant): Prototype.
|
|
|
* config/rx/rx.h (BRANCH_COST): Define.
|
* config/rx/rx.h (BRANCH_COST): Define.
|
(REGISTER_MOVE_COST): Define.
|
(REGISTER_MOVE_COST): Define.
|
* config/rx/predicates (rx_source_operand): Allow all constant types.
|
* config/rx/predicates (rx_source_operand): Allow all constant types.
|
* config/rx/rx.md (addsi3): Add alternative for swapped operands.
|
* config/rx/rx.md (addsi3): Add alternative for swapped operands.
|
(tstsi4): New pattern.
|
(tstsi4): New pattern.
|
* config/rx/rx.c (rx_memory_move_cost): Define.
|
* config/rx/rx.c (rx_memory_move_cost): Define.
|
(TARGET_MEMORY_MOVE_COST): Define.
|
(TARGET_MEMORY_MOVE_COST): Define.
|
|
|
2010-07-23 Jakub Jelinek
|
2010-07-23 Jakub Jelinek
|
Richard Guenther
|
Richard Guenther
|
|
|
PR tree-optimization/45047
|
PR tree-optimization/45047
|
* tree-vect-stmts.c (vectorizable_assignment): Return false
|
* tree-vect-stmts.c (vectorizable_assignment): Return false
|
if vectype_out is NULL for conversion statement.
|
if vectype_out is NULL for conversion statement.
|
|
|
2010-07-22 Jakub Jelinek
|
2010-07-22 Jakub Jelinek
|
|
|
PR debug/45015
|
PR debug/45015
|
* var-tracking.c (adjust_mems): Ignore ASM_OPERANDS with non-zero
|
* var-tracking.c (adjust_mems): Ignore ASM_OPERANDS with non-zero
|
ASM_OPERANDS_OUTPUT_IDX.
|
ASM_OPERANDS_OUTPUT_IDX.
|
(adjust_insn): For inline asm with multiple sets ensure first
|
(adjust_insn): For inline asm with multiple sets ensure first
|
ASM_OPERANDS vectors are used by all following ASM_OPERANDS in
|
ASM_OPERANDS vectors are used by all following ASM_OPERANDS in
|
the insn.
|
the insn.
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-07-16 Jakub Jelinek
|
2010-07-16 Jakub Jelinek
|
|
|
PR target/44942
|
PR target/44942
|
* config/i386/i386-protos.h (ix86_function_arg_boundary): Change second
|
* config/i386/i386-protos.h (ix86_function_arg_boundary): Change second
|
argument to const_tree.
|
argument to const_tree.
|
* config/i386/i386.c (function_arg_advance): If padding needs to be
|
* config/i386/i386.c (function_arg_advance): If padding needs to be
|
inserted before argument, increment cum->words by number of padding
|
inserted before argument, increment cum->words by number of padding
|
words as well.
|
words as well.
|
(contains_aligned_value_p): Change argument to const_tree.
|
(contains_aligned_value_p): Change argument to const_tree.
|
(ix86_function_arg_boundary): Change second argument to const_tree.
|
(ix86_function_arg_boundary): Change second argument to const_tree.
|
|
|
2010-07-21 Martin Jambor
|
2010-07-21 Martin Jambor
|
|
|
PR tree-optimization/44900
|
PR tree-optimization/44900
|
* tree-sra.c (load_assign_lhs_subreplacements): Updated comments.
|
* tree-sra.c (load_assign_lhs_subreplacements): Updated comments.
|
(sra_modify_assign): Move gsi to the next statmenent unconditionally.
|
(sra_modify_assign): Move gsi to the next statmenent unconditionally.
|
|
|
2010-07-21 Rainer Orth
|
2010-07-21 Rainer Orth
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-07-19 Rainer Orth
|
2010-07-19 Rainer Orth
|
|
|
* doc/sourcebuild.texi (Effective-Target Keywords): Document
|
* doc/sourcebuild.texi (Effective-Target Keywords): Document
|
sse_runtime, sse2_runtime.
|
sse_runtime, sse2_runtime.
|
|
|
2010-07-20 Richard Guenther
|
2010-07-20 Richard Guenther
|
|
|
PR tree-optimization/44977
|
PR tree-optimization/44977
|
* tree-ssa-dom.c (propagate_rhs_into_lhs): Do not create invalid
|
* tree-ssa-dom.c (propagate_rhs_into_lhs): Do not create invalid
|
SSA form.
|
SSA form.
|
|
|
2010-07-19 Bingfeng Mei
|
2010-07-19 Bingfeng Mei
|
|
|
* ddg.c (create_ddg): Exclude nodes of debug_insn in counting nodes
|
* ddg.c (create_ddg): Exclude nodes of debug_insn in counting nodes
|
of a loop.
|
of a loop.
|
* loop-doloop.c (doloop_condition_get): Skip possible debug_insn.
|
* loop-doloop.c (doloop_condition_get): Skip possible debug_insn.
|
|
|
2010-07-15 Jie Zhang
|
2010-07-15 Jie Zhang
|
|
|
* config/arm/cortex-a8.md (cortex_a8_load_store_2): Reserve
|
* config/arm/cortex-a8.md (cortex_a8_load_store_2): Reserve
|
cortex_a8_issue_ls.
|
cortex_a8_issue_ls.
|
|
|
2010-07-14 Jie Zhang
|
2010-07-14 Jie Zhang
|
|
|
* config/arm/cortex-a8.md (cortex_a8_alu): Don't use
|
* config/arm/cortex-a8.md (cortex_a8_alu): Don't use
|
cortex_a8_default when neon_type is not none.
|
cortex_a8_default when neon_type is not none.
|
|
|
2010-07-14 Rainer Orth
|
2010-07-14 Rainer Orth
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-07-12 Rainer Orth
|
2010-07-12 Rainer Orth
|
|
|
* config/i386/i386.c (ix86_sol10_return_in_memory): Rename to
|
* config/i386/i386.c (ix86_sol10_return_in_memory): Rename to
|
ix86_solaris_return_in_memory.
|
ix86_solaris_return_in_memory.
|
* config/i386-protos.h: Reflect this.
|
* config/i386-protos.h: Reflect this.
|
* config/i386/vx-common.h (SUBTARGET_RETURN_IN_MEMORY): Likewise.
|
* config/i386/vx-common.h (SUBTARGET_RETURN_IN_MEMORY): Likewise.
|
* config/i386/sol2-10.h (SUBTARGET_RETURN_IN_MEMORY): Likewise.
|
* config/i386/sol2-10.h (SUBTARGET_RETURN_IN_MEMORY): Likewise.
|
Move ...
|
Move ...
|
* config/i386/sol2.h (SUBTARGET_RETURN_IN_MEMORY): ... here.
|
* config/i386/sol2.h (SUBTARGET_RETURN_IN_MEMORY): ... here.
|
|
|
2010-07-14 Rainer Orth
|
2010-07-14 Rainer Orth
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-07-12 Rainer Orth
|
2010-07-12 Rainer Orth
|
|
|
* config.gcc (i[34567]86-*-solaris2*): Default with_arch_32 to
|
* config.gcc (i[34567]86-*-solaris2*): Default with_arch_32 to
|
pentiumpro on Solaris 8 and 9/x86.
|
pentiumpro on Solaris 8 and 9/x86.
|
* doc/install.texi (Specific, i?86-*-solaris2.[89]): Recommend GNU as.
|
* doc/install.texi (Specific, i?86-*-solaris2.[89]): Recommend GNU as.
|
Document SSE/SSE2 support.
|
Document SSE/SSE2 support.
|
* doc/sourcebuild.texi (Effective-Target Keywords): Document sse.
|
* doc/sourcebuild.texi (Effective-Target Keywords): Document sse.
|
|
|
2010-07-13 Rainer Orth
|
2010-07-13 Rainer Orth
|
|
|
* config/i386/sol2-unwind.h (x86_64_fallback_frame_state): Correct
|
* config/i386/sol2-unwind.h (x86_64_fallback_frame_state): Correct
|
explanation.
|
explanation.
|
Find ucontext_t * on Solaris 11.
|
Find ucontext_t * on Solaris 11.
|
(x86_fallback_frame_state): Handle Solaris 9 multi-threaded pattern.
|
(x86_fallback_frame_state): Handle Solaris 9 multi-threaded pattern.
|
Handle new Solaris 11 __sighndlr patterns.
|
Handle new Solaris 11 __sighndlr patterns.
|
|
|
2010-07-13 Rainer Orth
|
2010-07-13 Rainer Orth
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-07-12 Rainer Orth
|
2010-07-12 Rainer Orth
|
|
|
PR pch/14940
|
PR pch/14940
|
* config/host-solaris.c (mmap_fixed): New function.
|
* config/host-solaris.c (mmap_fixed): New function.
|
(sol_gt_pch_get_address): Use it.
|
(sol_gt_pch_get_address): Use it.
|
(sol_gt_pch_use_address): Likewise.
|
(sol_gt_pch_use_address): Likewise.
|
|
|
2010-07-12 Jie Zhang
|
2010-07-12 Jie Zhang
|
|
|
* config/arm/arm.c (arm_get_frame_offsets): Don't use r3 to
|
* config/arm/arm.c (arm_get_frame_offsets): Don't use r3 to
|
align the stack when it's going to be saved.
|
align the stack when it's going to be saved.
|
|
|
2010-07-11 Kai Tietz
|
2010-07-11 Kai Tietz
|
|
|
Merged back from trunk
|
Merged back from trunk
|
* config/i386/winnt.c (i386_pe_file_end): Quote symbol name
|
* config/i386/winnt.c (i386_pe_file_end): Quote symbol name
|
in directive -export.
|
in directive -export.
|
|
|
2010-07-09 Richard Guenther
|
2010-07-09 Richard Guenther
|
|
|
PR tree-optimization/44886
|
PR tree-optimization/44886
|
* tree-vect-stmts.c (vectorizable_assignment): Fixup backport
|
* tree-vect-stmts.c (vectorizable_assignment): Fixup backport
|
of the fix for PR44284.
|
of the fix for PR44284.
|
|
|
2010-07-09 Richard Guenther
|
2010-07-09 Richard Guenther
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-05-28 Nathan Froyd
|
2010-05-28 Nathan Froyd
|
|
|
* tree-vect-stmts.c (vectorizable_assignment): Call build1 instead of
|
* tree-vect-stmts.c (vectorizable_assignment): Call build1 instead of
|
build1_stat.
|
build1_stat.
|
|
|
2010-07-09 Dave Korn
|
2010-07-09 Dave Korn
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-05-06 Dave Korn
|
2010-05-06 Dave Korn
|
|
|
PR target/43888
|
PR target/43888
|
* config/i386/winnt.c (i386_pe_binds_local_p): Tweak weak symbol
|
* config/i386/winnt.c (i386_pe_binds_local_p): Tweak weak symbol
|
handling to still return true for x64 targets.
|
handling to still return true for x64 targets.
|
|
|
2010-07-08 Richard Guenther
|
2010-07-08 Richard Guenther
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-05-27 Richard Guenther
|
2010-05-27 Richard Guenther
|
|
|
PR tree-optimization/44284
|
PR tree-optimization/44284
|
* tree-vect-stmts.c (vectorizable_assignment): Handle
|
* tree-vect-stmts.c (vectorizable_assignment): Handle
|
sign-changing conversions as simple copy.
|
sign-changing conversions as simple copy.
|
|
|
2010-07-06 Richard Guenther
|
2010-07-06 Richard Guenther
|
|
|
PR middle-end/44828
|
PR middle-end/44828
|
* convert.c (convert_to_integer): Watch out for overflowing
|
* convert.c (convert_to_integer): Watch out for overflowing
|
MULT_EXPR as well.
|
MULT_EXPR as well.
|
|
|
2010-07-07 Duncan Sands
|
2010-07-07 Duncan Sands
|
|
|
PR middle-end/41355
|
PR middle-end/41355
|
* tree.c (build_function_type_skip_args): Copy the original type using
|
* tree.c (build_function_type_skip_args): Copy the original type using
|
build_distinct_type_copy rather than copy_node.
|
build_distinct_type_copy rather than copy_node.
|
|
|
2010-07-06 Alexandre Oliva
|
2010-07-06 Alexandre Oliva
|
|
|
* doc/gimple.texi (GIMPLE_DEBUG): Document.
|
* doc/gimple.texi (GIMPLE_DEBUG): Document.
|
* doc/rtl.texi (Debug Information): New node.
|
* doc/rtl.texi (Debug Information): New node.
|
(NOTE_INSN_VAR_LOCATION): Document.
|
(NOTE_INSN_VAR_LOCATION): Document.
|
(debug_insn): Likewise.
|
(debug_insn): Likewise.
|
* doc/generic.texi (DEBUG_EXPR_DECL): Document.
|
* doc/generic.texi (DEBUG_EXPR_DECL): Document.
|
|
|
2010-07-05 Kaz Kojima
|
2010-07-05 Kaz Kojima
|
|
|
Backport from mainline:
|
Backport from mainline:
|
PR target/44531
|
PR target/44531
|
* config.gcc (sh*-*-*): Use regular expressions instead of
|
* config.gcc (sh*-*-*): Use regular expressions instead of
|
the 'i' modifier for sed substitutions.
|
the 'i' modifier for sed substitutions.
|
|
|
2010-07-05 Mikael Pettersson
|
2010-07-05 Mikael Pettersson
|
|
|
PR bootstrap/44820
|
PR bootstrap/44820
|
* config/arm/arm.c (arm_attr_length_move_neon): Delete regno.
|
* config/arm/arm.c (arm_attr_length_move_neon): Delete regno.
|
|
|
2010-07-05 Jie Zhang
|
2010-07-05 Jie Zhang
|
|
|
* config/arm/arm.c (arm_attr_length_move_neon): New.
|
* config/arm/arm.c (arm_attr_length_move_neon): New.
|
* config/arm/arm-protos.h (arm_attr_length_move_neon): Declare.
|
* config/arm/arm-protos.h (arm_attr_length_move_neon): Declare.
|
* config/arm/neon.md (define_mode_attr V_slen): Remove.
|
* config/arm/neon.md (define_mode_attr V_slen): Remove.
|
(neon_mov for VSTRUCT): Use arm_attr_length_move_neon
|
(neon_mov for VSTRUCT): Use arm_attr_length_move_neon
|
to compute length attribute.
|
to compute length attribute.
|
|
|
2010-07-05 Jie Zhang
|
2010-07-05 Jie Zhang
|
|
|
* config/arm/vfp.md (*push_multi_vfp): Use vfp_register_operand
|
* config/arm/vfp.md (*push_multi_vfp): Use vfp_register_operand
|
as predicate for operand 1 and remove its constraint.
|
as predicate for operand 1 and remove its constraint.
|
* config/arm/predicates.md (vfp_register_operand): New.
|
* config/arm/predicates.md (vfp_register_operand): New.
|
* config/arm/arm.md (*push_multi): Remove the constraint of
|
* config/arm/arm.md (*push_multi): Remove the constraint of
|
operand 1.
|
operand 1.
|
(*push_fp_multi): Likewise.
|
(*push_fp_multi): Likewise.
|
|
|
2010-07-03 John David Anglin
|
2010-07-03 John David Anglin
|
|
|
PR target/44597
|
PR target/44597
|
* config/pa/predicates.md (prefetch_cc_operand): Remove.
|
* config/pa/predicates.md (prefetch_cc_operand): Remove.
|
(prefetch_nocc_operand): Likewise.
|
(prefetch_nocc_operand): Likewise.
|
* config/pa/pa.md (prefetch): Revise expander to use prefetch_20.
|
* config/pa/pa.md (prefetch): Revise expander to use prefetch_20.
|
(prefetch_20): New insn.
|
(prefetch_20): New insn.
|
(prefetch_cc): Remove.
|
(prefetch_cc): Remove.
|
(prefetch_nocc): Likewise.
|
(prefetch_nocc): Likewise.
|
|
|
PR target/44705
|
PR target/44705
|
* config/pa/pa.h (GO_IF_LEGITIMATE_ADDRESS): Reject LABEL_REF.
|
* config/pa/pa.h (GO_IF_LEGITIMATE_ADDRESS): Reject LABEL_REF.
|
|
|
2010-07-02 Richard Guenther
|
2010-07-02 Richard Guenther
|
|
|
PR middle-end/44777
|
PR middle-end/44777
|
* tree-cfg.c (gimple_block_ends_with_call_p): Handle empty BBs.
|
* tree-cfg.c (gimple_block_ends_with_call_p): Handle empty BBs.
|
|
|
2010-07-01 Jakub Jelinek
|
2010-07-01 Jakub Jelinek
|
|
|
PR debug/44694
|
PR debug/44694
|
* dwarf2out.c (reg_loc_descriptor): For eliminated arg_pointer_rtx
|
* dwarf2out.c (reg_loc_descriptor): For eliminated arg_pointer_rtx
|
or frame_pointer_rtx use DW_OP_fbreg offset DW_OP_stack_value.
|
or frame_pointer_rtx use DW_OP_fbreg offset DW_OP_stack_value.
|
|
|
2010-07-01 Jakub Jelinek
|
2010-07-01 Jakub Jelinek
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-06-29 Jakub Jelinek
|
2010-06-29 Jakub Jelinek
|
|
|
PR tree-optimization/43801
|
PR tree-optimization/43801
|
* cgraph.c (cgraph_create_virtual_clone): Clear DECL_SECTION_NAME
|
* cgraph.c (cgraph_create_virtual_clone): Clear DECL_SECTION_NAME
|
if old_decl was DECL_ONE_ONLY.
|
if old_decl was DECL_ONE_ONLY.
|
|
|
2010-06-21 Jakub Jelinek
|
2010-06-21 Jakub Jelinek
|
|
|
PR target/44575
|
PR target/44575
|
* config/i386/i386.c (ix86_gimplify_va_arg): When copying
|
* config/i386/i386.c (ix86_gimplify_va_arg): When copying
|
va_arg from a set of register save slots into a temporary,
|
va_arg from a set of register save slots into a temporary,
|
if the container is bigger than type size, do the copying
|
if the container is bigger than type size, do the copying
|
using smaller mode or using memcpy.
|
using smaller mode or using memcpy.
|
|
|
2010-05-13 Jakub Jelinek
|
2010-05-13 Jakub Jelinek
|
|
|
PR debug/44104
|
PR debug/44104
|
* dwarf2out.c (modified_type_die): Don't dereference mod_type_die
|
* dwarf2out.c (modified_type_die): Don't dereference mod_type_die
|
if it is NULL.
|
if it is NULL.
|
|
|
2010-06-30 Jan Hubicka
|
2010-06-30 Jan Hubicka
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-06-27 Jan Hubicka
|
2010-06-27 Jan Hubicka
|
|
|
PR middle-end/44671
|
PR middle-end/44671
|
PR middle-end/44686
|
PR middle-end/44686
|
* tree.c (build_function_decl_skip_args): Clear DECL_BUILT_IN on
|
* tree.c (build_function_decl_skip_args): Clear DECL_BUILT_IN on
|
signature change.
|
signature change.
|
* ipa-split.c (split_function): Always clear DECL_BUILT_IN.
|
* ipa-split.c (split_function): Always clear DECL_BUILT_IN.
|
* ipa-prop.c (ipa_modify_formal_parameters): Likewise.
|
* ipa-prop.c (ipa_modify_formal_parameters): Likewise.
|
|
|
2010-06-28 Jan Hubicka
|
2010-06-28 Jan Hubicka
|
|
|
PR tree-optimization/44357
|
PR tree-optimization/44357
|
* ipa-inline.c (add_new_edges_to_heap): Do not add edges to uninlinable
|
* ipa-inline.c (add_new_edges_to_heap): Do not add edges to uninlinable
|
functions.
|
functions.
|
|
|
2010-06-30 Jakub Jelinek
|
2010-06-30 Jakub Jelinek
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-06-30 Jakub Jelinek
|
2010-06-30 Jakub Jelinek
|
|
|
PR debug/44694
|
PR debug/44694
|
* cselib.h (cselib_preserve_cfa_base_value): Add regno argument.
|
* cselib.h (cselib_preserve_cfa_base_value): Add regno argument.
|
* cselib.c (cfa_base_preserved_regno): New static variable.
|
* cselib.c (cfa_base_preserved_regno): New static variable.
|
(cselib_reset_table): Don't reset cfa_base_preserved_regno instead
|
(cselib_reset_table): Don't reset cfa_base_preserved_regno instead
|
of REGNO (cfa_base_preserved_val->locs->loc).
|
of REGNO (cfa_base_preserved_val->locs->loc).
|
(cselib_preserve_cfa_base_value): Add regno argument, set
|
(cselib_preserve_cfa_base_value): Add regno argument, set
|
cfa_base_preserved_regno to it.
|
cfa_base_preserved_regno to it.
|
(cselib_invalidate_regno): Allow removal of registers other than
|
(cselib_invalidate_regno): Allow removal of registers other than
|
cfa_base_preserved_regno from cfa_base_preserved_val.
|
cfa_base_preserved_regno from cfa_base_preserved_val.
|
(cselib_finish): Set cfa_base_preserved_regno to INVALID_REGNUM.
|
(cselib_finish): Set cfa_base_preserved_regno to INVALID_REGNUM.
|
* var-tracking.c (adjust_mems): Replace sp or hfp even outside
|
* var-tracking.c (adjust_mems): Replace sp or hfp even outside
|
of MEM addresses, if not on LHS.
|
of MEM addresses, if not on LHS.
|
(reverse_op): Don't add reverse ops for cfa_base_rtx.
|
(reverse_op): Don't add reverse ops for cfa_base_rtx.
|
(vt_init_cfa_base): Adjust cselib_preserve_cfa_base_value caller.
|
(vt_init_cfa_base): Adjust cselib_preserve_cfa_base_value caller.
|
|
|
2010-06-25 Jakub Jelinek
|
2010-06-25 Jakub Jelinek
|
|
|
PR middle-end/43866
|
PR middle-end/43866
|
* tree-ssa-loop-unswitch.c (tree_may_unswitch_on): If stmt is always
|
* tree-ssa-loop-unswitch.c (tree_may_unswitch_on): If stmt is always
|
true or always false, return NULL_TREE.
|
true or always false, return NULL_TREE.
|
(tree_unswitch_single_loop): Optimize conditions even when reaching
|
(tree_unswitch_single_loop): Optimize conditions even when reaching
|
max-unswitch-level parameter. If num > 0, optimize first all conditions
|
max-unswitch-level parameter. If num > 0, optimize first all conditions
|
using entry checks, then do still reachable block discovery and consider
|
using entry checks, then do still reachable block discovery and consider
|
only conditions in still reachable basic blocks in the loop.
|
only conditions in still reachable basic blocks in the loop.
|
|
|
2010-05-12 Jakub Jelinek
|
2010-05-12 Jakub Jelinek
|
|
|
PR debug/42278
|
PR debug/42278
|
* dwarf2out.c (base_type_die): Don't add name attribute here.
|
* dwarf2out.c (base_type_die): Don't add name attribute here.
|
(modified_type_die): Instead of sizetype use
|
(modified_type_die): Instead of sizetype use
|
its underlying original type. If a DW_TAG_base_type doesn't
|
its underlying original type. If a DW_TAG_base_type doesn't
|
have name added, add __unknown__.
|
have name added, add __unknown__.
|
(dwarf2out_imported_module_or_decl_1): Don't call base_type_die,
|
(dwarf2out_imported_module_or_decl_1): Don't call base_type_die,
|
always call force_type_die instead.
|
always call force_type_die instead.
|
|
|
2010-05-11 Jakub Jelinek
|
2010-05-11 Jakub Jelinek
|
|
|
PR c++/44059
|
PR c++/44059
|
* config/elfos.h (ASM_DECLARE_OBJECT_NAME): Use qnu_unique_object
|
* config/elfos.h (ASM_DECLARE_OBJECT_NAME): Use qnu_unique_object
|
even for DECL_ONE_ONLY DECL_ARTIFICIAL !TREE_READONLY decls.
|
even for DECL_ONE_ONLY DECL_ARTIFICIAL !TREE_READONLY decls.
|
* config/alpha/elf.h (ASM_DECLARE_OBJECT_NAME): Likewise.
|
* config/alpha/elf.h (ASM_DECLARE_OBJECT_NAME): Likewise.
|
* dwarf2asm.c (dw2_output_indirect_constant_1): Set TREE_READONLY
|
* dwarf2asm.c (dw2_output_indirect_constant_1): Set TREE_READONLY
|
on DW.ref.* decls.
|
on DW.ref.* decls.
|
|
|
2010-06-30 Martin Jambor
|
2010-06-30 Martin Jambor
|
|
|
PR tree-optimization/43905
|
PR tree-optimization/43905
|
* tree-sra.c (encountered_recursive_call): Removed with all its uses.
|
* tree-sra.c (encountered_recursive_call): Removed with all its uses.
|
(convert_callers): Do not handle recursive calls specially.
|
(convert_callers): Do not handle recursive calls specially.
|
(create_abstract_origin): Removed.
|
(create_abstract_origin): Removed.
|
(modify_function): Version the call graph node instead of creating
|
(modify_function): Version the call graph node instead of creating
|
abstract origins and dealing with same_body aliases.
|
abstract origins and dealing with same_body aliases.
|
(ipa_sra_preliminary_function_checks): Check whether the function
|
(ipa_sra_preliminary_function_checks): Check whether the function
|
is versionable.
|
is versionable.
|
* Makefile.in (tree-sra.o): Add TREE_INLINE_H to dependencies.
|
* Makefile.in (tree-sra.o): Add TREE_INLINE_H to dependencies.
|
|
|
2010-06-30 Martin Jambor
|
2010-06-30 Martin Jambor
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-05-29 Jan Hubicka
|
2010-05-29 Jan Hubicka
|
|
|
* cgraph.c (clone_function_name): Made public.
|
* cgraph.c (clone_function_name): Made public.
|
* cgraph.h (clone_function_name): Declare.
|
* cgraph.h (clone_function_name): Declare.
|
* cgraphunit.c (cgraph_function_versioning): Produce new name.
|
* cgraphunit.c (cgraph_function_versioning): Produce new name.
|
|
|
2010-06-29 Martin Jambor
|
2010-06-29 Martin Jambor
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-05-17 Martin Jambor
|
2010-05-17 Martin Jambor
|
|
|
PR middle-end/44133
|
PR middle-end/44133
|
* tree-sra.c (create_access_replacement): New parameter rename, mark
|
* tree-sra.c (create_access_replacement): New parameter rename, mark
|
the replaement for renaming only when it is true.
|
the replaement for renaming only when it is true.
|
(get_access_replacement): Pass true in the rename parameter of
|
(get_access_replacement): Pass true in the rename parameter of
|
create_access_replacement.
|
create_access_replacement.
|
(get_unrenamed_access_replacement): New function.
|
(get_unrenamed_access_replacement): New function.
|
(replace_uses_with_default_def_ssa_name): New parameter racc, get the
|
(replace_uses_with_default_def_ssa_name): New parameter racc, get the
|
replacement declaration from it.
|
replacement declaration from it.
|
|
|
2010-06-29 Martin Jambor
|
2010-06-29 Martin Jambor
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-04-13 Martin Jambor
|
2010-04-13 Martin Jambor
|
|
|
* tree-sra.c (replace_uses_with_default_def_ssa_name): New function.
|
* tree-sra.c (replace_uses_with_default_def_ssa_name): New function.
|
(sra_modify_assign): Delete stmts loading dead data even if racc has no
|
(sra_modify_assign): Delete stmts loading dead data even if racc has no
|
children. Call replace_uses_with_default_def_ssa_name to handle
|
children. Call replace_uses_with_default_def_ssa_name to handle
|
SSA_NAES on lhs.
|
SSA_NAES on lhs.
|
|
|
2010-06-27 Jan Hubicka
|
2010-06-27 Jan Hubicka
|
|
|
Backport inliner heruistic fixes from mainline
|
Backport inliner heruistic fixes from mainline
|
2010-05-27 Jan Hubicka
|
2010-05-27 Jan Hubicka
|
|
|
* ipa-inline.c (cgraph_estimate_size_after_inlining): Make inline.
|
* ipa-inline.c (cgraph_estimate_size_after_inlining): Make inline.
|
(update_caller_keys): Return early if there are no callers;
|
(update_caller_keys): Return early if there are no callers;
|
only update fibheap when decresing the key.
|
only update fibheap when decresing the key.
|
(update_callee_keys): Avoid recursion.
|
(update_callee_keys): Avoid recursion.
|
(decide_inlining_of_small_functions): When badness does not match;
|
(decide_inlining_of_small_functions): When badness does not match;
|
re-insert into fibheap.
|
re-insert into fibheap.
|
|
|
2010-05-11 Jan Hubicka
|
2010-05-11 Jan Hubicka
|
|
|
PR tree-optimize/44063
|
PR tree-optimize/44063
|
* ipa-inline.c (cgraph_edge_badness): Move always inlines to top of
|
* ipa-inline.c (cgraph_edge_badness): Move always inlines to top of
|
queue.
|
queue.
|
|
|
2010-04-13 Jan Hubicka
|
2010-04-13 Jan Hubicka
|
|
|
* ipa-inline.c (cgraph_mark_inline_edge): Avoid double accounting
|
* ipa-inline.c (cgraph_mark_inline_edge): Avoid double accounting
|
of optimized out static functions.
|
of optimized out static functions.
|
(cgraph_edge_badness): Add DUMP parameter and dump reasons for the
|
(cgraph_edge_badness): Add DUMP parameter and dump reasons for the
|
cost computation. Also sanity check for overflows.
|
cost computation. Also sanity check for overflows.
|
(update_caller_keys): Update cgraph_edge_badness call; properly
|
(update_caller_keys): Update cgraph_edge_badness call; properly
|
update fibheap and sanity check that it is up to date.
|
update fibheap and sanity check that it is up to date.
|
(add_new_edges_to_heap): Update cgraph_edge_badness.
|
(add_new_edges_to_heap): Update cgraph_edge_badness.
|
(cgraph_decide_inlining_of_small_function): Likewise;
|
(cgraph_decide_inlining_of_small_function): Likewise;
|
add sanity checking that badness in heap is up to date;
|
add sanity checking that badness in heap is up to date;
|
improve dumping of reason; Update badness of calls to the
|
improve dumping of reason; Update badness of calls to the
|
offline copy of function currently inlined; dump badness
|
offline copy of function currently inlined; dump badness
|
of functions not inlined because of unit growth limits.
|
of functions not inlined because of unit growth limits.
|
|
|
2010-06-27 Richard Guenther
|
2010-06-27 Richard Guenther
|
|
|
PR tree-optimization/44683
|
PR tree-optimization/44683
|
* tree-ssa-dom.c (record_edge_info): Record equivalences for the
|
* tree-ssa-dom.c (record_edge_info): Record equivalences for the
|
false edge from the inverted condition.
|
false edge from the inverted condition.
|
|
|
2010-06-27 Eric Botcazou
|
2010-06-27 Eric Botcazou
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-05-18 Vladimir Makarov
|
2010-05-18 Vladimir Makarov
|
|
|
PR rtl-optimization/43332
|
PR rtl-optimization/43332
|
* haifa-sched.c (setup_insn_max_reg_pressure): Check barrier.
|
* haifa-sched.c (setup_insn_max_reg_pressure): Check barrier.
|
|
|
2010-06-27 Richard Guenther
|
2010-06-27 Richard Guenther
|
|
|
PR middle-end/44684
|
PR middle-end/44684
|
* tree-ssa-alias.c (refs_may_alias_p_1): Allow SSA name refs.
|
* tree-ssa-alias.c (refs_may_alias_p_1): Allow SSA name refs.
|
(stmt_may_clobber_ref_p_1): Do not bother to call the oracle
|
(stmt_may_clobber_ref_p_1): Do not bother to call the oracle
|
for register LHS. Or non-store assignments.
|
for register LHS. Or non-store assignments.
|
|
|
2010-06-26 Richard Guenther
|
2010-06-26 Richard Guenther
|
|
|
PR tree-optimization/44393
|
PR tree-optimization/44393
|
* tree-loop-distribution.c (generate_loops_for_partition): Fix
|
* tree-loop-distribution.c (generate_loops_for_partition): Fix
|
stmt removal and VOP renaming.
|
stmt removal and VOP renaming.
|
(generate_memset_zero): Remove redundant stmt updating.
|
(generate_memset_zero): Remove redundant stmt updating.
|
* tree-flow.h (mark_virtual_ops_in_bb): Remove.
|
* tree-flow.h (mark_virtual_ops_in_bb): Remove.
|
* tree-cfg.c (mark_virtual_ops_in_bb): Likewise.
|
* tree-cfg.c (mark_virtual_ops_in_bb): Likewise.
|
|
|
2010-06-26 Richard Guenther
|
2010-06-26 Richard Guenther
|
|
|
PR middle-end/44674
|
PR middle-end/44674
|
* tree-ssa-alias.c (refs_may_alias_p_1): Allow all kind of
|
* tree-ssa-alias.c (refs_may_alias_p_1): Allow all kind of
|
decls. Handle LABEL_DECLs like FUNCTION_DECLs.
|
decls. Handle LABEL_DECLs like FUNCTION_DECLs.
|
|
|
2010-06-25 Alexandre Oliva
|
2010-06-25 Alexandre Oliva
|
|
|
PR debug/44610
|
PR debug/44610
|
* simplify-rtx.c (delegitimize_mem_from_attrs): Don't use a base
|
* simplify-rtx.c (delegitimize_mem_from_attrs): Don't use a base
|
address if the offset is unknown.
|
address if the offset is unknown.
|
|
|
2010-06-25 Richard Guenther
|
2010-06-25 Richard Guenther
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-06-16 Richard Guenther
|
2010-06-16 Richard Guenther
|
|
|
PR c/44555
|
PR c/44555
|
* c-common.c (c_common_truthvalue_conversion): Remove
|
* c-common.c (c_common_truthvalue_conversion): Remove
|
premature and wrong optimization concering ADDR_EXPRs.
|
premature and wrong optimization concering ADDR_EXPRs.
|
|
|
2010-06-24 Steven Bosscher
|
2010-06-24 Steven Bosscher
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-05-18 Steven Bosscher
|
2010-05-18 Steven Bosscher
|
|
|
* config.gcc (i[34567]86-*-darwin*, x86_64-*-darwin*): Add
|
* config.gcc (i[34567]86-*-darwin*, x86_64-*-darwin*): Add
|
lto-macho as lto_binary_reader.
|
lto-macho as lto_binary_reader.
|
* target.h (struct gcc_target): New hooks lto_start and lto_end.
|
* target.h (struct gcc_target): New hooks lto_start and lto_end.
|
* target-def.h (TARGET_ASM_LTO_START, TARGET_ASM_LTO_END): Define.
|
* target-def.h (TARGET_ASM_LTO_START, TARGET_ASM_LTO_END): Define.
|
* cgraphunit.c (ipa_passes): Wrap LTO assembler output generation
|
* cgraphunit.c (ipa_passes): Wrap LTO assembler output generation
|
in lto_start and lto_end calls.
|
in lto_start and lto_end calls.
|
(is_elf_or_coff): Rename to maybe_lto_object_file. Add Mach-O
|
(is_elf_or_coff): Rename to maybe_lto_object_file. Add Mach-O
|
magic numbers.
|
magic numbers.
|
(scan_prog_file): Update is_elf_or_coff call.
|
(scan_prog_file): Update is_elf_or_coff call.
|
* doc/tm.text (TARGET_ASM_LTO_START, TARGET_ASM_LTO_END): Document.
|
* doc/tm.text (TARGET_ASM_LTO_START, TARGET_ASM_LTO_END): Document.
|
|
|
* collect2.c (main): Fix enum comparison.
|
* collect2.c (main): Fix enum comparison.
|
|
|
* config/darwin-protos.h (darwin_asm_lto_start, darwin_asm_lto_end):
|
* config/darwin-protos.h (darwin_asm_lto_start, darwin_asm_lto_end):
|
Add prototypes.
|
Add prototypes.
|
* darwin9.h (LINK_COMMAND_SPEC): Pass -flto and -fwhopr to the linker.
|
* darwin9.h (LINK_COMMAND_SPEC): Pass -flto and -fwhopr to the linker.
|
* darwin.h (LINK_COMMAND_SPEC): Likewise. Define TARGET_ASM_LTO_START
|
* darwin.h (LINK_COMMAND_SPEC): Likewise. Define TARGET_ASM_LTO_START
|
and TARGET_ASM_LTO_END.
|
and TARGET_ASM_LTO_END.
|
* darwin.c: Include obstack.h and lto-streamer.h.
|
* darwin.c: Include obstack.h and lto-streamer.h.
|
(lto_section_names_offset, lto_section_names_obstack,
|
(lto_section_names_offset, lto_section_names_obstack,
|
lto_asm_out_file, lto_asm_out_name, saved_asm_out_file): New static
|
lto_asm_out_file, lto_asm_out_name, saved_asm_out_file): New static
|
global variables.
|
global variables.
|
(LTO_SEGMENT_NAME, LTO_NAMES_SECTION): New defines.
|
(LTO_SEGMENT_NAME, LTO_NAMES_SECTION): New defines.
|
(darwin_asm_lto_start): New function. Redirect output to asm_out_file
|
(darwin_asm_lto_start): New function. Redirect output to asm_out_file
|
to a temporary file.
|
to a temporary file.
|
(darwin_asm_lto_end): New function. Restore asm_out_file.
|
(darwin_asm_lto_end): New function. Restore asm_out_file.
|
(darwin_asm_named_section): For LTO sections, replace the name with
|
(darwin_asm_named_section): For LTO sections, replace the name with
|
the offset of the section name in a string table, and build this
|
the offset of the section name in a string table, and build this
|
table.
|
table.
|
(darwin_file_start): Initialize global vars for LTO support.
|
(darwin_file_start): Initialize global vars for LTO support.
|
(darwin_file_end): If output to asm_out_file was redirected, append it
|
(darwin_file_end): If output to asm_out_file was redirected, append it
|
to the proper asm_out_file here. Add the section names section.
|
to the proper asm_out_file here. Add the section names section.
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-05-18 Steven Bosscher
|
2010-05-18 Steven Bosscher
|
|
|
* darwin.c (darwin_asm_named_section): Do not add assembler comment
|
* darwin.c (darwin_asm_named_section): Do not add assembler comment
|
after .section directive; just print it before the directive
|
after .section directive; just print it before the directive
|
instead.
|
instead.
|
|
|
2010-06-22 Eric Botcazou
|
2010-06-22 Eric Botcazou
|
|
|
* cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Chain the
|
* cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Chain the
|
new statement and adjust VDEF only if necessary. Remove superfluous
|
new statement and adjust VDEF only if necessary. Remove superfluous
|
call to maybe_clean_or_replace_eh_stmt.
|
call to maybe_clean_or_replace_eh_stmt.
|
* gimple.c (gimple_call_copy_skip_args): Use gimple_call_copy_flags to
|
* gimple.c (gimple_call_copy_skip_args): Use gimple_call_copy_flags to
|
copy the flags.
|
copy the flags.
|
* gimple-iterator.c (gsi_replace): Clear BB of old statement here...
|
* gimple-iterator.c (gsi_replace): Clear BB of old statement here...
|
* tree-inline.c (copy_bb): ...and not there.
|
* tree-inline.c (copy_bb): ...and not there.
|
|
|
2010-06-22 H.J. Lu
|
2010-06-22 H.J. Lu
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-06-22 H.J. Lu
|
2010-06-22 H.J. Lu
|
|
|
* config/i386/i386.md (unit): Also check sseishft1.
|
* config/i386/i386.md (unit): Also check sseishft1.
|
|
|
2010-06-21 John David Anglin
|
2010-06-21 John David Anglin
|
|
|
PR target/39690
|
PR target/39690
|
* config/pa/pa.c (override_options): Disable
|
* config/pa/pa.c (override_options): Disable
|
-freorder-blocks-and-partition.
|
-freorder-blocks-and-partition.
|
|
|
2010-06-21 H.J. Lu
|
2010-06-21 H.J. Lu
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-06-21 H.J. Lu
|
2010-06-21 H.J. Lu
|
|
|
PR target/44615
|
PR target/44615
|
* config/i386/atom.md (atom_sseishft_2): Also check sseishft1.
|
* config/i386/atom.md (atom_sseishft_2): Also check sseishft1.
|
|
|
* config/i386/i386.md (type): Add sseishft1
|
* config/i386/i386.md (type): Add sseishft1
|
|
|
* config/i386/ppro_insn (ppro_insn): Also check sseishft1.
|
* config/i386/ppro_insn (ppro_insn): Also check sseishft1.
|
(ppro_insn_load): Likewise.
|
(ppro_insn_load): Likewise.
|
(ppro_insn_store): Likewise.
|
(ppro_insn_store): Likewise.
|
(ppro_insn_both): Likewise.
|
(ppro_insn_both): Likewise.
|
|
|
* config/i386/sse.md (sse2_lshrv1ti3): Add atom_unit.
|
* config/i386/sse.md (sse2_lshrv1ti3): Add atom_unit.
|
(*vec_extractv2di_1_rex64_avx): Replace sseishft with sseishft1
|
(*vec_extractv2di_1_rex64_avx): Replace sseishft with sseishft1
|
for type.
|
for type.
|
(*vec_extractv2di_1_avx): Likewise.
|
(*vec_extractv2di_1_avx): Likewise.
|
(*vec_extractv2di_1_rex64): Replace sseishft with sseishft1 for
|
(*vec_extractv2di_1_rex64): Replace sseishft with sseishft1 for
|
type. Remove atom_unit.
|
type. Remove atom_unit.
|
(*vec_extractv2di_1_sse2): Likewise.
|
(*vec_extractv2di_1_sse2): Likewise.
|
|
|
2010-06-21 Jakub Jelinek
|
2010-06-21 Jakub Jelinek
|
|
|
PR bootstrap/44426
|
PR bootstrap/44426
|
* sel-sched-dump.h (sel_prepare_string_for_dot_label): Remove
|
* sel-sched-dump.h (sel_prepare_string_for_dot_label): Remove
|
prototype.
|
prototype.
|
(sel_print_to_dot): Remove macro.
|
(sel_print_to_dot): Remove macro.
|
(sel_print): Likewise. New prototype.
|
(sel_print): Likewise. New prototype.
|
* sel-sched-dump.c (sel_prepare_string_for_dot_label): Make static.
|
* sel-sched-dump.c (sel_prepare_string_for_dot_label): Make static.
|
(sel_print): New function.
|
(sel_print): New function.
|
|
|
2010-06-21 Uros Bizjak
|
2010-06-21 Uros Bizjak
|
|
|
PR target/44546
|
PR target/44546
|
* config/i386/predicates.md (ix86_swapped_fp_comparsion_operator):
|
* config/i386/predicates.md (ix86_swapped_fp_comparsion_operator):
|
New predicate.
|
New predicate.
|
* config/i386/i386.md (*fp_jcc_8_387 and splitters): Use
|
* config/i386/i386.md (*fp_jcc_8_387 and splitters): Use
|
ix86_swapped_fp_comparsion_operator instead of
|
ix86_swapped_fp_comparsion_operator instead of
|
ix86_fp_comparison_operator.
|
ix86_fp_comparison_operator.
|
|
|
(*fp_jcc_1_387): Rename from *fp_jcc_3_387.
|
(*fp_jcc_1_387): Rename from *fp_jcc_3_387.
|
(*fp_jcc_1r_387): Rename from *fp_jcc_4_387.
|
(*fp_jcc_1r_387): Rename from *fp_jcc_4_387.
|
(*fp_jcc_2_387): Rename from *fp_jcc_5_387.
|
(*fp_jcc_2_387): Rename from *fp_jcc_5_387.
|
(*fp_jcc_2r_387): Rename from *fp_jcc_6_387.
|
(*fp_jcc_2r_387): Rename from *fp_jcc_6_387.
|
(*fp_jcc_3_387): Rename from *fp_jcc_7_387.
|
(*fp_jcc_3_387): Rename from *fp_jcc_7_387.
|
(*fp_jcc_4__387): Rename from *fp_jcc_8_387.
|
(*fp_jcc_4__387): Rename from *fp_jcc_8_387.
|
|
|
2010-06-19 John David Anglin
|
2010-06-19 John David Anglin
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-05-29 John David Anglin
|
2010-05-29 John David Anglin
|
|
|
PR target/44261
|
PR target/44261
|
* config/pa/pa.md (negdf2_slow, negsf2_slow): New patterns.
|
* config/pa/pa.md (negdf2_slow, negsf2_slow): New patterns.
|
(negdf2): Adjust expander pattern and use negdf2_slow.
|
(negdf2): Adjust expander pattern and use negdf2_slow.
|
(negsf2): Likewise.
|
(negsf2): Likewise.
|
|
|
2010-06-17 John David Anglin
|
2010-06-17 John David Anglin
|
|
|
PR target/43740
|
PR target/43740
|
* config/pa/pa.c (emit_move_sequence): Don't infer REG_POINTER flag
|
* config/pa/pa.c (emit_move_sequence): Don't infer REG_POINTER flag
|
for SET source operand from SET destination operand.
|
for SET source operand from SET destination operand.
|
|
|
2010-06-16 Martin Jambor
|
2010-06-16 Martin Jambor
|
|
|
PR lto/44464
|
PR lto/44464
|
* tree-sra.c (replace_removed_params_ssa_names): Call release_ssa_name
|
* tree-sra.c (replace_removed_params_ssa_names): Call release_ssa_name
|
on the newly dead SSA name.
|
on the newly dead SSA name.
|
|
|
2010-06-15 Eric Botcazou
|
2010-06-15 Eric Botcazou
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-06-09 Eric Botcazou
|
2010-06-09 Eric Botcazou
|
|
|
PR rtl-optimization/42461
|
PR rtl-optimization/42461
|
* dce.c (deletable_insn_p): Return true for const or pure calls again.
|
* dce.c (deletable_insn_p): Return true for const or pure calls again.
|
* except.c (insn_could_throw_p): Return false if !flag_exceptions.
|
* except.c (insn_could_throw_p): Return false if !flag_exceptions.
|
|
|
2010-06-15 Eric Botcazou
|
2010-06-15 Eric Botcazou
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-06-11 Sandra Loosemore
|
2010-06-11 Sandra Loosemore
|
|
|
* tree-ssa-loop-ivopts.c (get_computation_cost_at): Return again the
|
* tree-ssa-loop-ivopts.c (get_computation_cost_at): Return again the
|
computed cost.
|
computed cost.
|
|
|
2010-06-15 Jakub Jelinek
|
2010-06-15 Jakub Jelinek
|
|
|
PR fortran/44536
|
PR fortran/44536
|
* langhooks.h (struct lang_hooks_for_decls): Add omp_report_decl.
|
* langhooks.h (struct lang_hooks_for_decls): Add omp_report_decl.
|
* langhooks-def.h (LANG_HOOKS_OMP_REPORT_DECL): Define.
|
* langhooks-def.h (LANG_HOOKS_OMP_REPORT_DECL): Define.
|
(LANG_HOOKS_DECLS): Add it.
|
(LANG_HOOKS_DECLS): Add it.
|
* gimplify.c (omp_notice_variable): Call
|
* gimplify.c (omp_notice_variable): Call
|
lang_hooks.decls.omp_report_decl.
|
lang_hooks.decls.omp_report_decl.
|
|
|
2010-06-15 Martin Jambor
|
2010-06-15 Martin Jambor
|
|
|
PR tree-optimization/44258
|
PR tree-optimization/44258
|
* tree-sra.c (build_access_subtree): Return false iff there is a
|
* tree-sra.c (build_access_subtree): Return false iff there is a
|
partial overlap.
|
partial overlap.
|
(build_access_trees): Likewise.
|
(build_access_trees): Likewise.
|
(analyze_all_variable_accesses): Disqualify candidates if
|
(analyze_all_variable_accesses): Disqualify candidates if
|
build_access_trees returns true for them.
|
build_access_trees returns true for them.
|
|
|
2010-06-15 Martin Jambor
|
2010-06-15 Martin Jambor
|
|
|
PR tree-optimization/44423
|
PR tree-optimization/44423
|
* tree-sra.c (dump_access): Dump also grp_assignment_read.
|
* tree-sra.c (dump_access): Dump also grp_assignment_read.
|
(analyze_access_subtree): Pass negative allow_replacements to children
|
(analyze_access_subtree): Pass negative allow_replacements to children
|
if the current type is scalar.
|
if the current type is scalar.
|
|
|
2010-06-14 Andreas Schwab
|
2010-06-14 Andreas Schwab
|
|
|
Backport from mainline
|
Backport from mainline
|
* config/m68k/m68k.c (m68k_delegitimize_address): Don't do
|
* config/m68k/m68k.c (m68k_delegitimize_address): Don't do
|
anything if the argument is not a MEM.
|
anything if the argument is not a MEM.
|
|
|
2010-06-14 H.J. Lu
|
2010-06-14 H.J. Lu
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-06-14 H.J. Lu
|
2010-06-14 H.J. Lu
|
|
|
PR target/44534
|
PR target/44534
|
* config/i386/sse.md (vec_extract_lo_): Replace 0x1 with 0x0.
|
* config/i386/sse.md (vec_extract_lo_): Replace 0x1 with 0x0.
|
(vec_extract_lo_v16hi): Likewise.
|
(vec_extract_lo_v16hi): Likewise.
|
(vec_extract_lo_v32qi): Likewise.
|
(vec_extract_lo_v32qi): Likewise.
|
|
|
2010-06-14 Jakub Jelinek
|
2010-06-14 Jakub Jelinek
|
|
|
PR bootstrap/44426
|
PR bootstrap/44426
|
* tree.h (build_call_expr): Don't define as vararg macro, instead
|
* tree.h (build_call_expr): Don't define as vararg macro, instead
|
add a prototype.
|
add a prototype.
|
* builtins.c (build_call_nofold): Remove.
|
* builtins.c (build_call_nofold): Remove.
|
(expand_builtin_int_roundingfn, expand_builtin_pow,
|
(expand_builtin_int_roundingfn, expand_builtin_pow,
|
expand_builtin_mempcpy_args, expand_builtin_stpcpy,
|
expand_builtin_mempcpy_args, expand_builtin_stpcpy,
|
expand_builtin_memset_args, expand_builtin_strcmp,
|
expand_builtin_memset_args, expand_builtin_strcmp,
|
expand_builtin_strncmp, expand_builtin_memory_chk): Use
|
expand_builtin_strncmp, expand_builtin_memory_chk): Use
|
build_call_nofold_loc instead of build_call_nofold.
|
build_call_nofold_loc instead of build_call_nofold.
|
(build_call_expr): New function.
|
(build_call_expr): New function.
|
|
|
PR tree-optimization/44508
|
PR tree-optimization/44508
|
* tree-ssa-propagate.h (substitute_and_fold): Add DO_DCE argument.
|
* tree-ssa-propagate.h (substitute_and_fold): Add DO_DCE argument.
|
* tree-ssa-propagate.c (substitute_and_fold): If !DO_DCE,
|
* tree-ssa-propagate.c (substitute_and_fold): If !DO_DCE,
|
don't eliminate trivially dead stmts.
|
don't eliminate trivially dead stmts.
|
* tree-vrp.c (vrp_finalize): Pass false as last argument
|
* tree-vrp.c (vrp_finalize): Pass false as last argument
|
to substitute_and_fold.
|
to substitute_and_fold.
|
* tree-ssa-copy.c (fini_copy_prop): Pass true as last argument
|
* tree-ssa-copy.c (fini_copy_prop): Pass true as last argument
|
to substitute_and_fold.
|
to substitute_and_fold.
|
* tree-ssa-ccp.c (ccp_finalize): Likewise.
|
* tree-ssa-ccp.c (ccp_finalize): Likewise.
|
|
|
2010-06-14 Ira Rosen
|
2010-06-14 Ira Rosen
|
|
|
PR tree-optimization/44507
|
PR tree-optimization/44507
|
* tree-vect-loop.c (get_initial_def_for_reduction): Use -1
|
* tree-vect-loop.c (get_initial_def_for_reduction): Use -1
|
to build initial vector for BIT_AND_EXPR.
|
to build initial vector for BIT_AND_EXPR.
|
|
|
2010-06-14 Dave Korn
|
2010-06-14 Dave Korn
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-04-27 Dave Korn
|
2010-04-27 Dave Korn
|
|
|
PR lto/42776
|
PR lto/42776
|
* configure.ac (gcc_cv_as_section_has_align): Set if installed
|
* configure.ac (gcc_cv_as_section_has_align): Set if installed
|
binutils supports extended .section directive needed by LTO, or
|
binutils supports extended .section directive needed by LTO, or
|
warn if older binutils found.
|
warn if older binutils found.
|
(LTO_BINARY_READER): New AC_SUBST'd variable.
|
(LTO_BINARY_READER): New AC_SUBST'd variable.
|
(LTO_USE_LIBELF): Likewise.
|
(LTO_USE_LIBELF): Likewise.
|
* config.gcc (lto_binary_reader): New target-specific configure
|
* config.gcc (lto_binary_reader): New target-specific configure
|
variable.
|
variable.
|
* Makefile.in (LTO_BINARY_READER): Import AC_SUBST'd autoconf var.
|
* Makefile.in (LTO_BINARY_READER): Import AC_SUBST'd autoconf var.
|
(LTO_USE_LIBELF): Likewise.
|
(LTO_USE_LIBELF): Likewise.
|
* configure: Regenerate.
|
* configure: Regenerate.
|
* collect2.c (is_elf): Rename from this ...
|
* collect2.c (is_elf): Rename from this ...
|
(is_elf_or_coff): ... to this, and recognize and allow i386 COFF
|
(is_elf_or_coff): ... to this, and recognize and allow i386 COFF
|
object files in addition to ELF-formatted ones.
|
object files in addition to ELF-formatted ones.
|
(scan_prog_file): Caller updated. Also allow for LTO info marker
|
(scan_prog_file): Caller updated. Also allow for LTO info marker
|
symbol to be prefixed or not by an extra underscore.
|
symbol to be prefixed or not by an extra underscore.
|
* config/i386/t-cygming (winnt.o): Also depend on LTO_STREAMER_H.
|
* config/i386/t-cygming (winnt.o): Also depend on LTO_STREAMER_H.
|
* config/i386/winnt.c: Also #include lto-streamer.h
|
* config/i386/winnt.c: Also #include lto-streamer.h
|
(i386_pe_asm_named_section): Specify 1-byte section alignment for
|
(i386_pe_asm_named_section): Specify 1-byte section alignment for
|
LTO named sections.
|
LTO named sections.
|
(i386_pe_asm_output_aligned_decl_common): Add comment.
|
(i386_pe_asm_output_aligned_decl_common): Add comment.
|
(i386_pe_maybe_record_exported_symbol): Allow decl arg to be NULL.
|
(i386_pe_maybe_record_exported_symbol): Allow decl arg to be NULL.
|
|
|
2010-06-12 Uros Bizjak
|
2010-06-12 Uros Bizjak
|
|
|
PR target/44481
|
PR target/44481
|
* config/i386/i386.md (UNSPEC_PARITY): New unspec.
|
* config/i386/i386.md (UNSPEC_PARITY): New unspec.
|
(paritydi2_cmp): Use UNSPEC_PARITY unspec insted of parity RTX.
|
(paritydi2_cmp): Use UNSPEC_PARITY unspec insted of parity RTX.
|
(partiysi2_cmp): Ditto.
|
(partiysi2_cmp): Ditto.
|
(*partiyhi2_cmp): Ditto.
|
(*partiyhi2_cmp): Ditto.
|
(*parityqi2_cmp): Remove.
|
(*parityqi2_cmp): Remove.
|
|
|
2010-06-10 Alexandre Oliva
|
2010-06-10 Alexandre Oliva
|
|
|
PR debug/41371
|
PR debug/41371
|
* var-tracking.c (find_loc_in_1pdv): Remove recursion, only
|
* var-tracking.c (find_loc_in_1pdv): Remove recursion, only
|
tail-recurse into canonical node. Fast-forward over
|
tail-recurse into canonical node. Fast-forward over
|
non-canonical VALUEs.
|
non-canonical VALUEs.
|
|
|
2010-06-10 Jan Beulich
|
2010-06-10 Jan Beulich
|
|
|
PR bootstrap/37304
|
PR bootstrap/37304
|
* configure.ac: Replace $() with ${} when intending to expand
|
* configure.ac: Replace $() with ${} when intending to expand
|
variables rather than invoking commands.
|
variables rather than invoking commands.
|
* configure: Re-generate.
|
* configure: Re-generate.
|
|
|
2010-06-09 Dave Korn
|
2010-06-09 Dave Korn
|
|
|
* opts-common.c (prune_options): Ensure replacement argv array
|
* opts-common.c (prune_options): Ensure replacement argv array
|
is correctly terminated by a NULL entry.
|
is correctly terminated by a NULL entry.
|
|
|
2010-06-09 Iain Sandoe
|
2010-06-09 Iain Sandoe
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-04-28 Mike Stump
|
2010-04-28 Mike Stump
|
* config/i386/darwin.h (CC1_SPEC): Ignore -mdynamic-no-pic for
|
* config/i386/darwin.h (CC1_SPEC): Ignore -mdynamic-no-pic for
|
now.
|
now.
|
|
|
2010-06-09 Iain Sandoe
|
2010-06-09 Iain Sandoe
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-05-28 Iain Sandoe
|
2010-05-28 Iain Sandoe
|
* config.gcc (*-*-darwin*): Adjust t-make fragments for Darwin.
|
* config.gcc (*-*-darwin*): Adjust t-make fragments for Darwin.
|
|
|
2010-06-09 Edmar Wienskoski
|
2010-06-09 Edmar Wienskoski
|
|
|
PR target/44067
|
PR target/44067
|
* config/rs6000/rs6000.md (DIFD): Do not split dpfp values for
|
* config/rs6000/rs6000.md (DIFD): Do not split dpfp values for
|
e500v2 target.
|
e500v2 target.
|
|
|
2010-06-08 Uros Bizjak
|
2010-06-08 Uros Bizjak
|
|
|
* config/i386/i386.md (*movsi_1) : Use %a modifier
|
* config/i386/i386.md (*movsi_1) : Use %a modifier
|
to output operand 1.
|
to output operand 1.
|
(ashift_zext lea splitter): Use DImode for multiplication.
|
(ashift_zext lea splitter): Use DImode for multiplication.
|
|
|
* config/i386/i386.c (ix86_expand_epilogue): Do not use ix86_gen_add
|
* config/i386/i386.c (ix86_expand_epilogue): Do not use ix86_gen_add
|
to generate addition.
|
to generate addition.
|
|
|
2010-06-07 Rainer Orth
|
2010-06-07 Rainer Orth
|
|
|
* doc/sourcebuild.texi (Effective-Target Keywords, Other
|
* doc/sourcebuild.texi (Effective-Target Keywords, Other
|
attributes): Document gas.
|
attributes): Document gas.
|
|
|
2010-06-07 Rainer Orth
|
2010-06-07 Rainer Orth
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-06-02 Rainer Orth
|
2010-06-02 Rainer Orth
|
|
|
* configure.ac (gcc_cv_ld_sol2_emulation): Test for GNU ld *_sol2
|
* configure.ac (gcc_cv_ld_sol2_emulation): Test for GNU ld *_sol2
|
linker emulations.
|
linker emulations.
|
* configure: Regenerate.
|
* configure: Regenerate.
|
* config.in: Regenerate.
|
* config.in: Regenerate.
|
|
|
* config/i386/sol2-10.h [TARGET_GNU_LD] (I386_EMULATION): Define.
|
* config/i386/sol2-10.h [TARGET_GNU_LD] (I386_EMULATION): Define.
|
(X86_64_EMULATION): Define.
|
(X86_64_EMULATION): Define.
|
(TARGET_LD_EMULATION): Use them.
|
(TARGET_LD_EMULATION): Use them.
|
|
|
* config/sparc/sol2-gld-bi.h (SPARC32_EMULATION): Define.
|
* config/sparc/sol2-gld-bi.h (SPARC32_EMULATION): Define.
|
(SPARC64_EMULATION): Define.
|
(SPARC64_EMULATION): Define.
|
(LINK_ARCH_SPEC): Use them.
|
(LINK_ARCH_SPEC): Use them.
|
|
|
2010-06-07 Kai Tietz
|
2010-06-07 Kai Tietz
|
|
|
Backport from mainline:
|
Backport from mainline:
|
* config/i386.c (ix86_output_addr_vec_elt): Make LPREFIX
|
* config/i386.c (ix86_output_addr_vec_elt): Make LPREFIX
|
argument for fprintf.
|
argument for fprintf.
|
(ix86_output_addr_diff_elt): Likewise.
|
(ix86_output_addr_diff_elt): Likewise.
|
(x86_function_profiler): Likewise.
|
(x86_function_profiler): Likewise.
|
* config/cygming.h (LOCAL_LABEL_PREFIX): Fix for x64 no-underscore.
|
* config/cygming.h (LOCAL_LABEL_PREFIX): Fix for x64 no-underscore.
|
(LPREFIX): Likewise.
|
(LPREFIX): Likewise.
|
(ASM_GENERATE_INTERNAL_LABEL): Likewise.
|
(ASM_GENERATE_INTERNAL_LABEL): Likewise.
|
|
|
2010-06-04 Alexandre Oliva
|
2010-06-04 Alexandre Oliva
|
|
|
PR debug/41371
|
PR debug/41371
|
* var-tracking.c (find_loc_in_1pdv): Mark initial value before
|
* var-tracking.c (find_loc_in_1pdv): Mark initial value before
|
recursing. Check that recursion is bounded. Rename inner var
|
recursing. Check that recursion is bounded. Rename inner var
|
to avoid hiding incoming argument.
|
to avoid hiding incoming argument.
|
|
|
2010-06-04 Rainer Orth
|
2010-06-04 Rainer Orth
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-04-16 Rainer Orth
|
2010-04-16 Rainer Orth
|
|
|
* configure.ac: Check for elf_getshdrstrndx or elf_getshstrndx flavor.
|
* configure.ac: Check for elf_getshdrstrndx or elf_getshstrndx flavor.
|
* configure: Regenerate.
|
* configure: Regenerate.
|
* config.in: Regenerate.
|
* config.in: Regenerate.
|
* doc/install.texi (Prerequisites): Document that Solaris 2 libelf
|
* doc/install.texi (Prerequisites): Document that Solaris 2 libelf
|
works.
|
works.
|
|
|
2010-04-19 Richard Guenther
|
2010-04-19 Richard Guenther
|
|
|
* configure.ac: Fix quoting around elf_getshstrndx ABI check.
|
* configure.ac: Fix quoting around elf_getshstrndx ABI check.
|
* configure: Re-generated.
|
* configure: Re-generated.
|
|
|
2010-06-04 Uros Bizjak
|
2010-06-04 Uros Bizjak
|
|
|
* config/i386/i386.md (*addqi_4): Check for incdec_operand in QImode.
|
* config/i386/i386.md (*addqi_4): Check for incdec_operand in QImode.
|
|
|
2010-06-04 Richard Guenther
|
2010-06-04 Richard Guenther
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-05-25 Jakub Jelinek
|
2010-05-25 Jakub Jelinek
|
|
|
PR debug/41371
|
PR debug/41371
|
* var-tracking.c (find_loc_in_1pdv): Guard asserts with
|
* var-tracking.c (find_loc_in_1pdv): Guard asserts with
|
ENABLE_CHECKING.
|
ENABLE_CHECKING.
|
(intersect_loc_chains): Walk the s2var's loc_chain together
|
(intersect_loc_chains): Walk the s2var's loc_chain together
|
with s1node chain as long as the locations are equal, don't
|
with s1node chain as long as the locations are equal, don't
|
call find_loc_in_1pdv in that case.
|
call find_loc_in_1pdv in that case.
|
|
|
2010-05-18 Jakub Jelinek
|
2010-05-18 Jakub Jelinek
|
|
|
PR debug/41371
|
PR debug/41371
|
* var-tracking.c (find_loc_in_1pdv): Add a few checks from
|
* var-tracking.c (find_loc_in_1pdv): Add a few checks from
|
rtx_equal_p inline.
|
rtx_equal_p inline.
|
|
|
2010-06-04 Alan Modra
|
2010-06-04 Alan Modra
|
|
|
PR target/44075
|
PR target/44075
|
* gcc/config/rs6000/rs6000.c (struct machine_function): Reorder
|
* gcc/config/rs6000/rs6000.c (struct machine_function): Reorder
|
fields for better packing. Add lr_save_state.
|
fields for better packing. Add lr_save_state.
|
(rs6000_ra_ever_killed): Return lr_save_state if set.
|
(rs6000_ra_ever_killed): Return lr_save_state if set.
|
(rs6000_emit_eh_reg_restore): Set lr_save_state.
|
(rs6000_emit_eh_reg_restore): Set lr_save_state.
|
|
|
2010-06-03 Richard Guenther
|
2010-06-03 Richard Guenther
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-05-10 Richard Guenther
|
2010-05-10 Richard Guenther
|
|
|
* lto-symtab.c (lto_symtab_entry_marked_p): Make entry
|
* lto-symtab.c (lto_symtab_entry_marked_p): Make entry
|
marked if the entry identifier is marked.
|
marked if the entry identifier is marked.
|
|
|
2010-06-03 Richard Guenther
|
2010-06-03 Richard Guenther
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-05-16 Richard Guenther
|
2010-05-16 Richard Guenther
|
|
|
* var-tracking.c (vars_copy_1): Inline ...
|
* var-tracking.c (vars_copy_1): Inline ...
|
(vars_copy): ... here. Use FOR_EACH_HTAB_ELEMENT.
|
(vars_copy): ... here. Use FOR_EACH_HTAB_ELEMENT.
|
(variable_union): Use FOR_EACH_HTAB_ELEMENT. Merge asserts.
|
(variable_union): Use FOR_EACH_HTAB_ELEMENT. Merge asserts.
|
(variable_merge_over_cur): Adjust. Merge asserts.
|
(variable_merge_over_cur): Adjust. Merge asserts.
|
(variable_merge_over_src): Likewise.
|
(variable_merge_over_src): Likewise.
|
(dataflow_set_merge): Use FOR_EACH_HTAB_ELEMENT.
|
(dataflow_set_merge): Use FOR_EACH_HTAB_ELEMENT.
|
(variable_post_merge_new_vals): Merge asserts.
|
(variable_post_merge_new_vals): Merge asserts.
|
(variable_post_merge_perm_vals): Likewise.
|
(variable_post_merge_perm_vals): Likewise.
|
(find_mem_expr_in_1pdv): Likewise.
|
(find_mem_expr_in_1pdv): Likewise.
|
(dataflow_set_different_value): Remove.
|
(dataflow_set_different_value): Remove.
|
(onepart_variable_different_p): Merge asserts.
|
(onepart_variable_different_p): Merge asserts.
|
(variable_different_p): Likewise.
|
(variable_different_p): Likewise.
|
(dataflow_set_different_1): Inline ...
|
(dataflow_set_different_1): Inline ...
|
(dataflow_set_different): ... here. Use FOR_EACH_HTAB_ELEMENT.
|
(dataflow_set_different): ... here. Use FOR_EACH_HTAB_ELEMENT.
|
(emit_notes_for_differences_1): Merge asserts.
|
(emit_notes_for_differences_1): Merge asserts.
|
|
|
2010-06-03 Jan Hubicka
|
2010-06-03 Jan Hubicka
|
Jakub Jelinek
|
Jakub Jelinek
|
|
|
* var-tracking.c (dataflow_set_equiv_regs): Shortcut the loop if
|
* var-tracking.c (dataflow_set_equiv_regs): Shortcut the loop if
|
set->regs[i] is NULL or has just one entry.
|
set->regs[i] is NULL or has just one entry.
|
|
|
2010-06-03 Alan Modra
|
2010-06-03 Alan Modra
|
|
|
PR target/44169
|
PR target/44169
|
* config/rs6000/rs6000.md (load_toc_v4_PIC_1b): Add label operand.
|
* config/rs6000/rs6000.md (load_toc_v4_PIC_1b): Add label operand.
|
* config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Pass label
|
* config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Pass label
|
rtx to gen_load_toc_v4_PIC_1b. Tidy.
|
rtx to gen_load_toc_v4_PIC_1b. Tidy.
|
(rs6000_emit_load_toc_table): Likewise.
|
(rs6000_emit_load_toc_table): Likewise.
|
|
|
2010-06-02 Richard Guenther
|
2010-06-02 Richard Guenther
|
|
|
* lto-streamer-in.c (input_gimple_stmt): Fix typo.
|
* lto-streamer-in.c (input_gimple_stmt): Fix typo.
|
|
|
2010-06-02 Richard Guenther
|
2010-06-02 Richard Guenther
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-05-27 Jan Hubicka
|
2010-05-27 Jan Hubicka
|
|
|
* sched-ebb.c: Rename struct deps to struct deps_desc.
|
* sched-ebb.c: Rename struct deps to struct deps_desc.
|
* ddg.c: Likewise.
|
* ddg.c: Likewise.
|
* sel-sched-ir.c: Likewise.
|
* sel-sched-ir.c: Likewise.
|
* sched-deps.c: Likewise.
|
* sched-deps.c: Likewise.
|
* sched-int.h: Likewise.
|
* sched-int.h: Likewise.
|
* sched-rgn.c: Likewise.
|
* sched-rgn.c: Likewise.
|
|
|
2010-06-02 Andreas Krebbel
|
2010-06-02 Andreas Krebbel
|
|
|
* config/s390/2097.md (z10_fhex): Remove insn reservation.
|
* config/s390/2097.md (z10_fhex): Remove insn reservation.
|
* config/s390/s390.md (UNSPEC_COPYSIGN): Remove unused constant.
|
* config/s390/s390.md (UNSPEC_COPYSIGN): Remove unused constant.
|
(*mov_64 TD_TF, *mov_31 TD_TF, *mov_64dfp DD_DF,
|
(*mov_64 TD_TF, *mov_31 TD_TF, *mov_64dfp DD_DF,
|
*mov_64 DD_DF, *mov_31, mov): Remove load zero
|
*mov_64 DD_DF, *mov_31, mov): Remove load zero
|
instruction.
|
instruction.
|
* config/s390/s390.c: Don't accept fp zeros as valid constants
|
* config/s390/s390.c: Don't accept fp zeros as valid constants
|
anymore.
|
anymore.
|
|
|
2010-05-31 Jakub Jelinek
|
2010-05-31 Jakub Jelinek
|
|
|
PR target/44338
|
PR target/44338
|
* config/i386/sse.md (fma4i_fmadd4256, fma4i_fmsub4256,
|
* config/i386/sse.md (fma4i_fmadd4256, fma4i_fmsub4256,
|
fma4i_fnmadd4256, fma4i_fnmsub4256, fma4i_fmadd4,
|
fma4i_fnmadd4256, fma4i_fnmsub4256, fma4i_fmadd4,
|
fma4i_fmsub4, fma4i_fnmadd4, fma4i_fnmsub4,
|
fma4i_fmsub4, fma4i_fnmadd4, fma4i_fnmsub4,
|
fma4i_vmfmadd4, fma4i_vmfmsub4, fma4i_vmfnmadd4,
|
fma4i_vmfmadd4, fma4i_vmfmsub4, fma4i_vmfnmadd4,
|
fma4i_vmfnmsub4, fma4i_fmaddsubv8sf4, fma4i_fmaddsubv4df4,
|
fma4i_vmfnmsub4, fma4i_fmaddsubv8sf4, fma4i_fmaddsubv4df4,
|
fma4i_fmaddsubv4sf4, fma4i_fmaddsubv2df4, fma4i_fmsubaddv8sf4,
|
fma4i_fmaddsubv4sf4, fma4i_fmaddsubv2df4, fma4i_fmsubaddv8sf4,
|
fma4i_fmsubaddv4df4, fma4i_fmsubaddv4sf4, fma4i_fmsubaddv2df4):
|
fma4i_fmsubaddv4df4, fma4i_fmsubaddv4sf4, fma4i_fmsubaddv2df4):
|
Guard only with TARGET_FMA4 instead of TARGET_FMA4 &&
|
Guard only with TARGET_FMA4 instead of TARGET_FMA4 &&
|
TARGET_FUSED_MADD.
|
TARGET_FUSED_MADD.
|
|
|
PR middle-end/44337
|
PR middle-end/44337
|
* expr.c (expand_assignment): Don't store anything for out-of-bounds
|
* expr.c (expand_assignment): Don't store anything for out-of-bounds
|
array accesses with non-MEM.
|
array accesses with non-MEM.
|
|
|
PR tree-optimization/44182
|
PR tree-optimization/44182
|
* tree-inline.c (copy_edges_for_bb): Don't split bb if a stmt that
|
* tree-inline.c (copy_edges_for_bb): Don't split bb if a stmt that
|
newly needs to end a bb is followed by debug stmts, instead return
|
newly needs to end a bb is followed by debug stmts, instead return
|
true from the function at the end.
|
true from the function at the end.
|
(maybe_move_debug_stmts_to_successors): New function.
|
(maybe_move_debug_stmts_to_successors): New function.
|
(copy_cfg_body): Call it if copy_edges_for_bb returned true.
|
(copy_cfg_body): Call it if copy_edges_for_bb returned true.
|
|
|
2010-05-31 Kai Tietz
|
2010-05-31 Kai Tietz
|
|
|
Merged from trunk
|
Merged from trunk
|
PR target/44161
|
PR target/44161
|
* config/i386/cygming.h (SUBTARGET_OVERRIDE_OPTIONS): Handle
|
* config/i386/cygming.h (SUBTARGET_OVERRIDE_OPTIONS): Handle
|
flag_pic.
|
flag_pic.
|
|
|
2010-05-28 Richard Guenther
|
2010-05-28 Richard Guenther
|
|
|
PR lto/44312
|
PR lto/44312
|
* lto-streamer-in.c (unpack_ts_fixed_cst_value_fields):
|
* lto-streamer-in.c (unpack_ts_fixed_cst_value_fields):
|
Stream fixed-point constants mode.
|
Stream fixed-point constants mode.
|
(unpack_ts_type_value_fields): Fix width of TYPE_MODE
|
(unpack_ts_type_value_fields): Fix width of TYPE_MODE
|
and TYPE_PRECISION.
|
and TYPE_PRECISION.
|
* lto-streamer-out.c (pack_ts_fixed_cst_value_fields):
|
* lto-streamer-out.c (pack_ts_fixed_cst_value_fields):
|
Stream fixed-point constants mode.
|
Stream fixed-point constants mode.
|
(pack_ts_function_decl_value_fields): Fix width of TYPE_MODE
|
(pack_ts_function_decl_value_fields): Fix width of TYPE_MODE
|
and TYPE_PRECISION.
|
and TYPE_PRECISION.
|
|
|
2010-05-28 Andreas Krebbel
|
2010-05-28 Andreas Krebbel
|
|
|
* config/s390/s390.md (movqi): Fix typo ('*' -> '#').
|
* config/s390/s390.md (movqi): Fix typo ('*' -> '#').
|
|
|
2010-05-28 Jakub Jelinek
|
2010-05-28 Jakub Jelinek
|
|
|
PR target/43636
|
PR target/43636
|
* builtins.c (expand_movstr): Use a temporary pseudo instead
|
* builtins.c (expand_movstr): Use a temporary pseudo instead
|
of target even when target is not NULL and not const0_rtx, but
|
of target even when target is not NULL and not const0_rtx, but
|
fails movstr predicate.
|
fails movstr predicate.
|
* config/m32c/blkmov.md (movstr): Add predicate to first operand.
|
* config/m32c/blkmov.md (movstr): Add predicate to first operand.
|
|
|
2010-05-27 Jon Beniston
|
2010-05-27 Jon Beniston
|
|
|
PR 43726
|
PR 43726
|
* config/lm32/lm32.h: Remove definition of
|
* config/lm32/lm32.h: Remove definition of
|
GO_IF_MODE_DEPENDENT_ADDRESS. Update copyright year.
|
GO_IF_MODE_DEPENDENT_ADDRESS. Update copyright year.
|
|
|
2010-05-26 Richard Guenther
|
2010-05-26 Richard Guenther
|
|
|
PR rtl-optimization/44164
|
PR rtl-optimization/44164
|
* tree-ssa-alias.c (aliasing_component_refs_p): Fix the
|
* tree-ssa-alias.c (aliasing_component_refs_p): Fix the
|
no-common access-path disambiguation.
|
no-common access-path disambiguation.
|
(indirect_ref_may_alias_decl_p): Adjust.
|
(indirect_ref_may_alias_decl_p): Adjust.
|
(indirect_refs_may_alias_p): Likewise.
|
(indirect_refs_may_alias_p): Likewise.
|
(refs_may_alias_p_1): Likewise.
|
(refs_may_alias_p_1): Likewise.
|
|
|
2010-05-26 Richard Guenther
|
2010-05-26 Richard Guenther
|
|
|
PR middle-end/44069
|
PR middle-end/44069
|
* tree-ssa-ccp.c (maybe_fold_stmt_addition): Avoid generating
|
* tree-ssa-ccp.c (maybe_fold_stmt_addition): Avoid generating
|
out-of-bounds array accesses.
|
out-of-bounds array accesses.
|
|
|
2010-05-26 Richard Guenther
|
2010-05-26 Richard Guenther
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-04-15 Richard Guenther
|
2010-04-15 Richard Guenther
|
|
|
* alias.c (alias_set_subset_of): Handle alias-set zero
|
* alias.c (alias_set_subset_of): Handle alias-set zero
|
child properly.
|
child properly.
|
|
|
2010-05-26 Jakub Jelinek
|
2010-05-26 Jakub Jelinek
|
|
|
PR target/44199
|
PR target/44199
|
* config/rs6000/rs6000.c (rs6000_emit_epilogue): If cfun->calls_alloca
|
* config/rs6000/rs6000.c (rs6000_emit_epilogue): If cfun->calls_alloca
|
or total_size is larger than red zone size for non-V4 ABI, emit a
|
or total_size is larger than red zone size for non-V4 ABI, emit a
|
stack_tie resp. frame_tie insn before stack pointer restore.
|
stack_tie resp. frame_tie insn before stack pointer restore.
|
* config/rs6000/rs6000.md (frame_tie): New insn.
|
* config/rs6000/rs6000.md (frame_tie): New insn.
|
|
|
2010-05-25 Rainer Orth
|
2010-05-25 Rainer Orth
|
|
|
* configure.ac (gcc_cv_as_ld_jalr_reloc): Redirect grep stdout,
|
* configure.ac (gcc_cv_as_ld_jalr_reloc): Redirect grep stdout,
|
stderr to /dev/null instead of grep -q.
|
stderr to /dev/null instead of grep -q.
|
* configure: Regenerate.
|
* configure: Regenerate.
|
|
|
2010-05-25 Richard Guenther
|
2010-05-25 Richard Guenther
|
|
|
* gimple.c (gimple_types_compatible_p): Check type qualifications
|
* gimple.c (gimple_types_compatible_p): Check type qualifications
|
before merging pointer to complete and pointer to incomplete type.
|
before merging pointer to complete and pointer to incomplete type.
|
* lto-symtab.c (lto_symtab_resolve_symbols): For commons make sure
|
* lto-symtab.c (lto_symtab_resolve_symbols): For commons make sure
|
we use our own resolution algorithm. The gold linker plugin
|
we use our own resolution algorithm. The gold linker plugin
|
doesn't do the job we want it to do here.
|
doesn't do the job we want it to do here.
|
|
|
2010-05-24 Richard Guenther
|
2010-05-24 Richard Guenther
|
|
|
PR lto/44196
|
PR lto/44196
|
* tree.c (find_decls_types_r): Walk BLOCKs and its vars.
|
* tree.c (find_decls_types_r): Walk BLOCKs and its vars.
|
|
|
2010-05-24 Uros Bizjak
|
2010-05-24 Uros Bizjak
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-05-20 Uros Bizjak
|
2010-05-20 Uros Bizjak
|
|
|
PR target/43733
|
PR target/43733
|
* configure.ac (gcc_cv_as_ix86_sahf): Switch to 64bit mode.
|
* configure.ac (gcc_cv_as_ix86_sahf): Switch to 64bit mode.
|
* configure: Regenerate.
|
* configure: Regenerate.
|
* config.in: Regenerate.
|
* config.in: Regenerate.
|
* config/i386/i386.md (x86_sahf_1): Conditionally output 0x9e
|
* config/i386/i386.md (x86_sahf_1): Conditionally output 0x9e
|
instead of sahf only for 64bit targets.
|
instead of sahf only for 64bit targets.
|
|
|
2010-05-24 H.J. Lu
|
2010-05-24 H.J. Lu
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-05-24 H.J. Lu
|
2010-05-24 H.J. Lu
|
|
|
* config/i386/ia32intrin.h (__crc32q): Define only if
|
* config/i386/ia32intrin.h (__crc32q): Define only if
|
__SSE4_2__ is defined.
|
__SSE4_2__ is defined.
|
|
|
2010-05-23 H.J. Lu
|
2010-05-23 H.J. Lu
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-05-23 H.J. Lu
|
2010-05-23 H.J. Lu
|
|
|
PR target/44245
|
PR target/44245
|
* config/i386/i386.c (def_builtin): Properly check
|
* config/i386/i386.c (def_builtin): Properly check
|
OPTION_MASK_ISA_64BIT.
|
OPTION_MASK_ISA_64BIT.
|
|
|
2010-05-23 Maarten Lankhorst
|
2010-05-23 Maarten Lankhorst
|
|
|
Merged from trunk
|
Merged from trunk
|
PR target/43869
|
PR target/43869
|
* config/i386/i386.c: Make sure that the correct regparm is passed.
|
* config/i386/i386.c: Make sure that the correct regparm is passed.
|
|
|
2010-05-21 Jakub Jelinek
|
2010-05-21 Jakub Jelinek
|
|
|
PR debug/44223
|
PR debug/44223
|
* haifa-sched.c (schedule_insn): When freeing INSN_REG_USE_LIST,
|
* haifa-sched.c (schedule_insn): When freeing INSN_REG_USE_LIST,
|
unchain each use from the cyclic next_regno_use chain first.
|
unchain each use from the cyclic next_regno_use chain first.
|
|
|
2010-05-21 Andreas Krebbel
|
2010-05-21 Andreas Krebbel
|
|
|
* config/s390/s390.c (override_options): Increase the default
|
* config/s390/s390.c (override_options): Increase the default
|
of max-completely-peel-times.
|
of max-completely-peel-times.
|
|
|
2010-05-21 Richard Guenther
|
2010-05-21 Richard Guenther
|
|
|
PR tree-optimization/44038
|
PR tree-optimization/44038
|
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Avoid
|
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Avoid
|
taking the address of a V_C_E of a constant.
|
taking the address of a V_C_E of a constant.
|
|
|
2010-05-21 Richard Guenther
|
2010-05-21 Richard Guenther
|
|
|
PR tree-optimization/43949
|
PR tree-optimization/43949
|
* tree-vrp.c (ssa_name_nonnegative_p): Return true for unsigend types.
|
* tree-vrp.c (ssa_name_nonnegative_p): Return true for unsigend types.
|
(extract_range_from_binary_expr): Handle TRUNC_MOD_EXPR.
|
(extract_range_from_binary_expr): Handle TRUNC_MOD_EXPR.
|
|
|
2010-05-21 Jakub Jelinek
|
2010-05-21 Jakub Jelinek
|
|
|
PR debug/44205
|
PR debug/44205
|
* tree-cfgcleanup.c (tree_forwarder_block_p): Return false if
|
* tree-cfgcleanup.c (tree_forwarder_block_p): Return false if
|
at -O0 goto_locus of any of the incoming edges differs from
|
at -O0 goto_locus of any of the incoming edges differs from
|
goto_locus of outgoing edge, or gimple_location of any of the
|
goto_locus of outgoing edge, or gimple_location of any of the
|
labels differs.
|
labels differs.
|
|
|
2010-05-20 Jakub Jelinek
|
2010-05-20 Jakub Jelinek
|
|
|
PR debug/44178
|
PR debug/44178
|
* haifa-sched.c (initiate_bb_reg_pressure_info): Do not call
|
* haifa-sched.c (initiate_bb_reg_pressure_info): Do not call
|
setup_ref_regs for DEBUG_INSNs.
|
setup_ref_regs for DEBUG_INSNs.
|
|
|
2010-05-19 Kenneth Zadeck
|
2010-05-19 Kenneth Zadeck
|
|
|
PR bootstrap/43870
|
PR bootstrap/43870
|
* df-scan.c (df_ref_compare): Stabilize sort.
|
* df-scan.c (df_ref_compare): Stabilize sort.
|
|
|
2010-05-20 Hans-Peter Nilsson
|
2010-05-20 Hans-Peter Nilsson
|
|
|
PR target/44202
|
PR target/44202
|
* config/cris/cris.md ("*addsi3_v32"): Correct "cc"
|
* config/cris/cris.md ("*addsi3_v32"): Correct "cc"
|
settings for 16-bit-constant "addo" alternative.
|
settings for 16-bit-constant "addo" alternative.
|
|
|
2010-05-19 Rainer Orth
|
2010-05-19 Rainer Orth
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-05-17 Rainer Orth
|
2010-05-17 Rainer Orth
|
|
|
PR target/44074
|
PR target/44074
|
* configure.ac (HAVE_AS_IX86_REP_LOCK_PREFIX): New test.
|
* configure.ac (HAVE_AS_IX86_REP_LOCK_PREFIX): New test.
|
* configure: Regenerate.
|
* configure: Regenerate.
|
* config.in: Regenerate.
|
* config.in: Regenerate.
|
* config/i386/i386.c (print_operand) : Also print ; if
|
* config/i386/i386.c (print_operand) : Also print ; if
|
!HAVE_AS_IX86_REP_LOCK_PREFIX.
|
!HAVE_AS_IX86_REP_LOCK_PREFIX.
|
Don't emit whitespace.
|
Don't emit whitespace.
|
* config/i386/i386.md (*rep_movdi_rex64): Use {%;} after rep.
|
* config/i386/i386.md (*rep_movdi_rex64): Use {%;} after rep.
|
(*rep_movsi): Likewise.
|
(*rep_movsi): Likewise.
|
(*rep_movsi_rex64): Likewise.
|
(*rep_movsi_rex64): Likewise.
|
(*rep_movqi): Likewise.
|
(*rep_movqi): Likewise.
|
(*rep_movqi_rex64): Likewise.
|
(*rep_movqi_rex64): Likewise.
|
(*rep_stosdi_rex64): Likewise.
|
(*rep_stosdi_rex64): Likewise.
|
(*rep_stossi): Likewise.
|
(*rep_stossi): Likewise.
|
(*rep_stossi_rex64): Likewise.
|
(*rep_stossi_rex64): Likewise.
|
(*rep_stosqi): Likewise.
|
(*rep_stosqi): Likewise.
|
(*rep_stosqi_rex64): Likewise.
|
(*rep_stosqi_rex64): Likewise.
|
(*cmpstrnqi_nz_1): Use {%;} after repz.
|
(*cmpstrnqi_nz_1): Use {%;} after repz.
|
(*cmpstrnqi_nz_rex_1): Likewise.
|
(*cmpstrnqi_nz_rex_1): Likewise.
|
(*cmpstrnqi_1): Likewise.
|
(*cmpstrnqi_1): Likewise.
|
(*cmpstrnqi_rex_1): Likewise.
|
(*cmpstrnqi_rex_1): Likewise.
|
(*strlenqi_1): Use {%;} after repnz.
|
(*strlenqi_1): Use {%;} after repnz.
|
(*strlenqi_rex_1): Likewise.
|
(*strlenqi_rex_1): Likewise.
|
* config/i386/sync.md (memory_barrier_nosse): Replace {%;| } by {%;} .
|
* config/i386/sync.md (memory_barrier_nosse): Replace {%;| } by {%;} .
|
(*sync_compare_and_swap): Likewise.
|
(*sync_compare_and_swap): Likewise.
|
(sync_double_compare_and_swap): Likewise.
|
(sync_double_compare_and_swap): Likewise.
|
(*sync_double_compare_and_swapdi_pic): Likewise.
|
(*sync_double_compare_and_swapdi_pic): Likewise.
|
(sync_old_add): Likewise.
|
(sync_old_add): Likewise.
|
(sync_add): Likewise.
|
(sync_add): Likewise.
|
(sync_sub): Likewise.
|
(sync_sub): Likewise.
|
(sync_): Likewise.
|
(sync_): Likewise.
|
|
|
2010-05-19 Rainer Orth
|
2010-05-19 Rainer Orth
|
|
|
* doc/sourcebuild.texi (Effective-Target Keywords): Document
|
* doc/sourcebuild.texi (Effective-Target Keywords): Document
|
3dnow, sse3, sse2.
|
3dnow, sse3, sse2.
|
(Directives): Document optional dg-require-effective-target
|
(Directives): Document optional dg-require-effective-target
|
selector.
|
selector.
|
|
|
2010-05-19 Rainer Orth
|
2010-05-19 Rainer Orth
|
|
|
* config.gcc (i[34567]86-*-solaris2*): Default with_arch_32 to
|
* config.gcc (i[34567]86-*-solaris2*): Default with_arch_32 to
|
pentiumpro on Solaris 8/x86 with Sun as.
|
pentiumpro on Solaris 8/x86 with Sun as.
|
* configure.ac (gcc_cv_as_hidden): Check for Solaris 9/x86 as
|
* configure.ac (gcc_cv_as_hidden): Check for Solaris 9/x86 as
|
hidden alias bug.
|
hidden alias bug.
|
(gcc_cv_as_ix86_quad): Check for .quad directive.
|
(gcc_cv_as_ix86_quad): Check for .quad directive.
|
* configure: Regenerate.
|
* configure: Regenerate.
|
* config.in: Regenerate.
|
* config.in: Regenerate.
|
* config/i386/sol2.h (ASM_QUAD): Change guard to !HAVE_AS_IX86_QUAD.
|
* config/i386/sol2.h (ASM_QUAD): Change guard to !HAVE_AS_IX86_QUAD.
|
|
|
2010-05-19 Richard Guenther
|
2010-05-19 Richard Guenther
|
|
|
PR tree-optimization/43987
|
PR tree-optimization/43987
|
* tree-ssa-structalias.c (could_have_pointers): For possibly
|
* tree-ssa-structalias.c (could_have_pointers): For possibly
|
address-taken variables force pointers to be recorded.
|
address-taken variables force pointers to be recorded.
|
(create_variable_info_for_1): Likewise.
|
(create_variable_info_for_1): Likewise.
|
(push_fields_onto_fieldstack): Pass in wheter all fields
|
(push_fields_onto_fieldstack): Pass in wheter all fields
|
must have pointers.
|
must have pointers.
|
(find_func_aliases): Query types instead of vars whether
|
(find_func_aliases): Query types instead of vars whether
|
they contain pointers where appropriate.
|
they contain pointers where appropriate.
|
|
|
2010-05-19 Richard Guenther
|
2010-05-19 Richard Guenther
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-04-26 Richard Guenther
|
2010-04-26 Richard Guenther
|
|
|
PR lto/43455
|
PR lto/43455
|
* tree-inline.c (tree_can_inline_p): Also check compatibility
|
* tree-inline.c (tree_can_inline_p): Also check compatibility
|
of return types.
|
of return types.
|
|
|
2010-04-23 Richard Guenther
|
2010-04-23 Richard Guenther
|
|
|
PR lto/42653
|
PR lto/42653
|
* tree.c (free_lang_data_in_decl): Do not reset DECL_CONTEXT
|
* tree.c (free_lang_data_in_decl): Do not reset DECL_CONTEXT
|
of FUNCTION_DECLs.
|
of FUNCTION_DECLs.
|
|
|
2010-04-26 Richard Guenther
|
2010-04-26 Richard Guenther
|
|
|
PR lto/42425
|
PR lto/42425
|
* tree.c (free_lang_data_in_type): Do not free TYPE_CONTEXT
|
* tree.c (free_lang_data_in_type): Do not free TYPE_CONTEXT
|
if emitting debug information and it is either a function
|
if emitting debug information and it is either a function
|
or a namespace decl.
|
or a namespace decl.
|
|
|
2010-04-26 Richard Guenther
|
2010-04-26 Richard Guenther
|
|
|
PR lto/43080
|
PR lto/43080
|
* gimple.c (gimple_decl_printable_name): Deal gracefully
|
* gimple.c (gimple_decl_printable_name): Deal gracefully
|
with a NULL DECL_NAME.
|
with a NULL DECL_NAME.
|
|
|
2010-04-30 Richard Guenther
|
2010-04-30 Richard Guenther
|
|
|
PR lto/43946
|
PR lto/43946
|
* passes.c (init_optimization_passes): Move pass_ipa_free_lang_data
|
* passes.c (init_optimization_passes): Move pass_ipa_free_lang_data
|
first after all lowering passes.
|
first after all lowering passes.
|
|
|
2010-05-18 Steven Bosscher
|
2010-05-18 Steven Bosscher
|
|
|
PR lto/44184
|
PR lto/44184
|
* lto-streamer-out.c (output_gimple_stmt): Output number of labels
|
* lto-streamer-out.c (output_gimple_stmt): Output number of labels
|
in a GIMPLE_ASM.
|
in a GIMPLE_ASM.
|
* lto-streamer-in.c (input_gimple_stmt): Read number of labels
|
* lto-streamer-in.c (input_gimple_stmt): Read number of labels
|
in a GIMPLE_ASM.
|
in a GIMPLE_ASM.
|
|
|
2010-05-17 Rainer Orth
|
2010-05-17 Rainer Orth
|
|
|
* config/i386/sol2.h (TARGET_SUN_TLS): Remove duplicate definition.
|
* config/i386/sol2.h (TARGET_SUN_TLS): Remove duplicate definition.
|
|
|
2010-05-17 Jakub Jelinek
|
2010-05-17 Jakub Jelinek
|
|
|
PR bootstrap/42347
|
PR bootstrap/42347
|
* cfglayout.c (fixup_reorder_chain): Allow returnjump_p
|
* cfglayout.c (fixup_reorder_chain): Allow returnjump_p
|
to have no fallthru edge.
|
to have no fallthru edge.
|
|
|
PR middle-end/44102
|
PR middle-end/44102
|
* cfgcleanup.c (try_optimize_cfg): When removing trivially empty
|
* cfgcleanup.c (try_optimize_cfg): When removing trivially empty
|
bb with no successors, move footer whenever in IR_RTL_CFGLAYOUT
|
bb with no successors, move footer whenever in IR_RTL_CFGLAYOUT
|
mode, not just when CLEANUP_CFGLAYOUT, and when in IR_RTL_CFGRTL
|
mode, not just when CLEANUP_CFGLAYOUT, and when in IR_RTL_CFGRTL
|
add BARRIER after previous bb if needed.
|
add BARRIER after previous bb if needed.
|
|
|
2010-05-17 Alan Modra
|
2010-05-17 Alan Modra
|
|
|
* config/rs6000/rs6000.c (rs6000_emit_allocate_stack): Delete
|
* config/rs6000/rs6000.c (rs6000_emit_allocate_stack): Delete
|
unnecessary prototype. Replace copy_r12 and copy_r11 flag params
|
unnecessary prototype. Replace copy_r12 and copy_r11 flag params
|
with copy_reg rtx param.
|
with copy_reg rtx param.
|
(rs6000_emit_prologue): Update rs6000_emit_allocate_stack calls.
|
(rs6000_emit_prologue): Update rs6000_emit_allocate_stack calls.
|
Correct cases where code for ABI_V4 did not initialise the reg
|
Correct cases where code for ABI_V4 did not initialise the reg
|
used to access frame. Also leave frame_reg_rtx as sp for large
|
used to access frame. Also leave frame_reg_rtx as sp for large
|
frames that save no regs.
|
frames that save no regs.
|
|
|
2010-05-17 Eric Botcazou
|
2010-05-17 Eric Botcazou
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-05-16 Eric Botcazou
|
2010-05-16 Eric Botcazou
|
|
|
* opts.c (handle_option): Call into LTO streamer only if ENABLE_LTO.
|
* opts.c (handle_option): Call into LTO streamer only if ENABLE_LTO.
|
(decode_options): Likewise.
|
(decode_options): Likewise.
|
* Makefile.in (opts.o): Add dependency on LTO_STREAMER_H.
|
* Makefile.in (opts.o): Add dependency on LTO_STREAMER_H.
|
|
|
2010-05-14 Jason Merrill
|
2010-05-14 Jason Merrill
|
|
|
PR c++/44127
|
PR c++/44127
|
* gimple.h (enum gf_mask): Add GF_CALL_NOTHROW.
|
* gimple.h (enum gf_mask): Add GF_CALL_NOTHROW.
|
(gimple_call_set_nothrow): New.
|
(gimple_call_set_nothrow): New.
|
* gimple.c (gimple_build_call_from_tree): Call it.
|
* gimple.c (gimple_build_call_from_tree): Call it.
|
(gimple_call_flags): Set ECF_NOTHROW from GF_CALL_NOTHROW.
|
(gimple_call_flags): Set ECF_NOTHROW from GF_CALL_NOTHROW.
|
|
|
PR c++/44127
|
PR c++/44127
|
* gimplify.c (gimplify_seq_add_stmt): No longer static.
|
* gimplify.c (gimplify_seq_add_stmt): No longer static.
|
* gimple.h: Declare it.
|
* gimple.h: Declare it.
|
* gimple.c (gimple_build_eh_filter): No ops.
|
* gimple.c (gimple_build_eh_filter): No ops.
|
|
|
2010-05-14 Jakub Jelinek
|
2010-05-14 Jakub Jelinek
|
|
|
PR debug/44136
|
PR debug/44136
|
* cfgexpand.c (expand_debug_expr): If non-memory op0
|
* cfgexpand.c (expand_debug_expr): If non-memory op0
|
has BLKmode, return NULL.
|
has BLKmode, return NULL.
|
|
|
2010-05-14 H.J. Lu
|
2010-05-14 H.J. Lu
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-05-12 H.J. Lu
|
2010-05-12 H.J. Lu
|
|
|
PR target/44088
|
PR target/44088
|
* config/i386/sse.md (*avx_vmmaskcmp3): New.
|
* config/i386/sse.md (*avx_vmmaskcmp3): New.
|
|
|
2010-05-14 Richard Guenther
|
2010-05-14 Richard Guenther
|
|
|
PR tree-optimization/44124
|
PR tree-optimization/44124
|
* tree-ssa-sccvn.c (vn_nary_may_trap): Fix invalid memory access.
|
* tree-ssa-sccvn.c (vn_nary_may_trap): Fix invalid memory access.
|
|
|
2010-05-13 Jason Merrill
|
2010-05-13 Jason Merrill
|
|
|
* gimplify.c (gimplify_expr) [MODIFY_EXPR]: Trust GS_OK even if the
|
* gimplify.c (gimplify_expr) [MODIFY_EXPR]: Trust GS_OK even if the
|
rhs didn't change.
|
rhs didn't change.
|
|
|
PR c++/43787
|
PR c++/43787
|
* gimplify.c (gimplify_expr): Keep working if gimplify_modify_expr
|
* gimplify.c (gimplify_expr): Keep working if gimplify_modify_expr
|
returns GS_OK.
|
returns GS_OK.
|
(gimplify_modify_expr_rhs): Return GS_OK if anything changed.
|
(gimplify_modify_expr_rhs): Return GS_OK if anything changed.
|
|
|
2010-05-12 Wolfgang Gellerich
|
2010-05-12 Wolfgang Gellerich
|
|
|
* config/s390/s390.c (override_options): Adjust the z10 defaults
|
* config/s390/s390.c (override_options): Adjust the z10 defaults
|
for max-unroll-times, max-completely-peeled-insns
|
for max-unroll-times, max-completely-peeled-insns
|
and max-completely-peel-times.
|
and max-completely-peel-times.
|
|
|
2010-05-12 Jakub Jelinek
|
2010-05-12 Jakub Jelinek
|
|
|
PR middle-end/44085
|
PR middle-end/44085
|
* gimplify.c (enum omp_region_type): Add ORT_UNTIED_TASK,
|
* gimplify.c (enum omp_region_type): Add ORT_UNTIED_TASK,
|
change value of ORT_TASK.
|
change value of ORT_TASK.
|
(new_omp_context): Handle ORT_UNTIED_TASK like ORT_TASK.
|
(new_omp_context): Handle ORT_UNTIED_TASK like ORT_TASK.
|
(omp_notice_threadprivate_variable): New function.
|
(omp_notice_threadprivate_variable): New function.
|
(omp_notice_variable): Call it for threadprivate variables.
|
(omp_notice_variable): Call it for threadprivate variables.
|
If enclosing ctx is a task, print enclosing task rather than
|
If enclosing ctx is a task, print enclosing task rather than
|
enclosing parallel. Handle ORT_UNTIED_TASK like ORT_TASK.
|
enclosing parallel. Handle ORT_UNTIED_TASK like ORT_TASK.
|
(gimplify_omp_task): Pass ORT_UNTIED_TASK instead of ORT_TASK
|
(gimplify_omp_task): Pass ORT_UNTIED_TASK instead of ORT_TASK
|
if task has untied clause.
|
if task has untied clause.
|
|
|
2010-05-11 Jakub Jelinek
|
2010-05-11 Jakub Jelinek
|
|
|
PR middle-end/44071
|
PR middle-end/44071
|
* cfglayout.c (fixup_reorder_chain): Allow asm goto to have
|
* cfglayout.c (fixup_reorder_chain): Allow asm goto to have
|
no fallthru edge.
|
no fallthru edge.
|
* cfgcleanup.c (try_optimize_cfg): When in cfglayout mode
|
* cfgcleanup.c (try_optimize_cfg): When in cfglayout mode
|
optimizing away empty bb with no successors, move over its
|
optimizing away empty bb with no successors, move over its
|
footer chain to fallthru predecessor.
|
footer chain to fallthru predecessor.
|
* cfgrtl.c (patch_jump_insn): Update also REG_LABEL_OPERAND.
|
* cfgrtl.c (patch_jump_insn): Update also REG_LABEL_OPERAND.
|
(rtl_split_edge): For asm goto call patch_jump_insn even if
|
(rtl_split_edge): For asm goto call patch_jump_insn even if
|
splitting fallthru edge.
|
splitting fallthru edge.
|
|
|
2010-05-11 Martin Jambor
|
2010-05-11 Martin Jambor
|
|
|
PR middle-end/43812
|
PR middle-end/43812
|
* ipa.c (dissolve_same_comdat_group_list): New function.
|
* ipa.c (dissolve_same_comdat_group_list): New function.
|
(function_and_variable_visibility): Call
|
(function_and_variable_visibility): Call
|
dissolve_same_comdat_group_list when comdat group contains external or
|
dissolve_same_comdat_group_list when comdat group contains external or
|
newly local nodes.
|
newly local nodes.
|
* cgraphunit.c (verify_cgraph_node): Verify that same_comdat_group
|
* cgraphunit.c (verify_cgraph_node): Verify that same_comdat_group
|
lists are circular and that they contain only DECL_ONE_ONLY nodes.
|
lists are circular and that they contain only DECL_ONE_ONLY nodes.
|
|
|
2010-05-10 Jakub Jelinek
|
2010-05-10 Jakub Jelinek
|
|
|
PR debug/44028
|
PR debug/44028
|
* haifa-sched.c (schedule_insn): When clearing INSN_VAR_LOCATION_LOC,
|
* haifa-sched.c (schedule_insn): When clearing INSN_VAR_LOCATION_LOC,
|
clear also INSN_REG_USE_LIST.
|
clear also INSN_REG_USE_LIST.
|
|
|
2010-05-10 H.J. Lu
|
2010-05-10 H.J. Lu
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-05-10 H.J. Lu
|
2010-05-10 H.J. Lu
|
Vladimir Makarov
|
Vladimir Makarov
|
|
|
PR rtl-optimization/44012
|
PR rtl-optimization/44012
|
* ira-build.c (remove_unnecessary_allocnos): Nullify
|
* ira-build.c (remove_unnecessary_allocnos): Nullify
|
regno_allocno_map of the removed allocno.
|
regno_allocno_map of the removed allocno.
|
|
|
2010-05-10 Rainer Orth
|
2010-05-10 Rainer Orth
|
|
|
* configure.ac (gcc_cv_ld_eh_gc_sections): Redirect objdump errors
|
* configure.ac (gcc_cv_ld_eh_gc_sections): Redirect objdump errors
|
to /dev/null.
|
to /dev/null.
|
* configure: Regenerate.
|
* configure: Regenerate.
|
|
|
2010-05-10 Rainer Orth
|
2010-05-10 Rainer Orth
|
|
|
* config/sol2.c (solaris_assemble_visibility): Declare decl, vis
|
* config/sol2.c (solaris_assemble_visibility): Declare decl, vis
|
unused.
|
unused.
|
Define visibility_types, name, type inside HAVE_GAS_HIDDEN.
|
Define visibility_types, name, type inside HAVE_GAS_HIDDEN.
|
* configure.ac (gcc_cv_ld_hidden): Explain stages of visibility
|
* configure.ac (gcc_cv_ld_hidden): Explain stages of visibility
|
support in Sun ld.
|
support in Sun ld.
|
* configure: Regenerate.
|
* configure: Regenerate.
|
|
|
2010-05-09 H.J. Lu
|
2010-05-09 H.J. Lu
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-05-09 H.J. Lu
|
2010-05-09 H.J. Lu
|
|
|
PR target/44046
|
PR target/44046
|
* config/i386/driver-i386.c (host_detect_local_cpu): Properly
|
* config/i386/driver-i386.c (host_detect_local_cpu): Properly
|
detect Atom, Core 2 and Core i7.
|
detect Atom, Core 2 and Core i7.
|
|
|
2010-05-07 Ralf Wildenhues
|
2010-05-07 Ralf Wildenhues
|
|
|
PR documentation/44016
|
PR documentation/44016
|
* doc/standards.texi (Standards): Link to unversioned
|
* doc/standards.texi (Standards): Link to unversioned
|
cxx0x_status.html page.
|
cxx0x_status.html page.
|
|
|
2010-05-07 Rainer Orth
|
2010-05-07 Rainer Orth
|
|
|
* config/mips/iris.h (LINK_SPEC): Don't pass -init, -fini with -r.
|
* config/mips/iris.h (LINK_SPEC): Don't pass -init, -fini with -r.
|
|
|
2010-05-07 Rainer Orth
|
2010-05-07 Rainer Orth
|
|
|
* config/mips/dbxmdebug.h: Remove.
|
* config/mips/dbxmdebug.h: Remove.
|
* config.gcc (mips-sgi-irix[56]*): Remove mips/dbxmdebug.h.
|
* config.gcc (mips-sgi-irix[56]*): Remove mips/dbxmdebug.h.
|
|
|
2010-05-05 Kaz Kojima
|
2010-05-05 Kaz Kojima
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-04-22 Kaz Kojima
|
2010-04-22 Kaz Kojima
|
|
|
PR target/43744
|
PR target/43744
|
* config/sh/sh.c (find_barrier): Don't emit a constant pool
|
* config/sh/sh.c (find_barrier): Don't emit a constant pool
|
in the middle of insns for casesi_worker_2.
|
in the middle of insns for casesi_worker_2.
|
|
|
2010-05-05 Jason Merrill
|
2010-05-05 Jason Merrill
|
|
|
PR debug/43370
|
PR debug/43370
|
* c-common.c (handle_aligned_attribute): Respect
|
* c-common.c (handle_aligned_attribute): Respect
|
ATTR_FLAG_TYPE_IN_PLACE.
|
ATTR_FLAG_TYPE_IN_PLACE.
|
|
|
2010-05-05 Richard Guenther
|
2010-05-05 Richard Guenther
|
|
|
PR c++/43880
|
PR c++/43880
|
* tree-inline.c (copy_bind_expr): Also copy bind expr vars
|
* tree-inline.c (copy_bind_expr): Also copy bind expr vars
|
value-exprs.
|
value-exprs.
|
|
|
2010-05-04 H.J. Lu
|
2010-05-04 H.J. Lu
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-05-04 H.J. Lu
|
2010-05-04 H.J. Lu
|
|
|
PR middle-end/43671
|
PR middle-end/43671
|
* alias.c (true_dependence): Handle the same VALUE in x and mem.
|
* alias.c (true_dependence): Handle the same VALUE in x and mem.
|
(canon_true_dependence): Likewise.
|
(canon_true_dependence): Likewise.
|
(write_dependence_p): Likewise.
|
(write_dependence_p): Likewise.
|
|
|
2010-05-03 Jakub Jelinek
|
2010-05-03 Jakub Jelinek
|
|
|
PR debug/43972
|
PR debug/43972
|
* config/i386/i386.c (ix86_delegitimize_address): Make sure the
|
* config/i386/i386.c (ix86_delegitimize_address): Make sure the
|
result mode matches original rtl mode.
|
result mode matches original rtl mode.
|
|
|
2010-05-02 Uros Bizjak
|
2010-05-02 Uros Bizjak
|
|
|
* config/i386/i386.c (ix86_target_string): Output 'flags', not 'isa',
|
* config/i386/i386.c (ix86_target_string): Output 'flags', not 'isa',
|
when processing flag options.
|
when processing flag options.
|
|
|
2010-05-02 H.J. Lu
|
2010-05-02 H.J. Lu
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-04-29 H.J. Lu
|
2010-04-29 H.J. Lu
|
|
|
PR target/43921
|
PR target/43921
|
* config/i386/i386.c (get_some_local_dynamic_name): Replace
|
* config/i386/i386.c (get_some_local_dynamic_name): Replace
|
INSN_P with NONDEBUG_INSN_P.
|
INSN_P with NONDEBUG_INSN_P.
|
(distance_non_agu_define): Likewise.
|
(distance_non_agu_define): Likewise.
|
(distance_agu_use): Likewise.
|
(distance_agu_use): Likewise.
|
|
|
2010-04-30 Eric Botcazou
|
2010-04-30 Eric Botcazou
|
|
|
* tree-ssa-loop-ivopts.c (may_be_unaligned_p): Check the alignment of
|
* tree-ssa-loop-ivopts.c (may_be_unaligned_p): Check the alignment of
|
the variable part of the offset as well. Use highest_pow2_factor for
|
the variable part of the offset as well. Use highest_pow2_factor for
|
all alignment checks.
|
all alignment checks.
|
|
|
2010-04-30 Jakub Jelinek
|
2010-04-30 Jakub Jelinek
|
|
|
PR debug/43942
|
PR debug/43942
|
* tree.c (auto_var_in_fn_p): Return false for DECL_EXTERNAL vars.
|
* tree.c (auto_var_in_fn_p): Return false for DECL_EXTERNAL vars.
|
|
|
2010-04-28 Uros Bizjak
|
2010-04-28 Uros Bizjak
|
|
|
* config/alpha/elf.h (ASM_DECLARE_OBJECT_NAME): Use gnu_unique_object
|
* config/alpha/elf.h (ASM_DECLARE_OBJECT_NAME): Use gnu_unique_object
|
type if available.
|
type if available.
|
|
|
2010-04-28 Eric Botcazou
|
2010-04-28 Eric Botcazou
|
|
|
* lto-streamer-in.c (unpack_ts_type_value_fields): Replace test for
|
* lto-streamer-in.c (unpack_ts_type_value_fields): Replace test for
|
record or union type with RECORD_OR_UNION_TYPE_P predicate.
|
record or union type with RECORD_OR_UNION_TYPE_P predicate.
|
(lto_input_ts_type_tree_pointers): Likewise.
|
(lto_input_ts_type_tree_pointers): Likewise.
|
* lto-streamer-out.c (pack_ts_type_value_fields): Likewise.
|
* lto-streamer-out.c (pack_ts_type_value_fields): Likewise.
|
(lto_output_ts_type_tree_pointers): Likewise.
|
(lto_output_ts_type_tree_pointers): Likewise.
|
|
|
2010-04-28 Eric Botcazou
|
2010-04-28 Eric Botcazou
|
|
|
* lto-streamer.c [LTO_STREAMER_DEBUG] (tree_htab, tree_hash_entry,
|
* lto-streamer.c [LTO_STREAMER_DEBUG] (tree_htab, tree_hash_entry,
|
hash_tree, eq_tree): New tree hash table.
|
hash_tree, eq_tree): New tree hash table.
|
(lto_streamer_init) [LTO_STREAMER_DEBUG]: Initialize it.
|
(lto_streamer_init) [LTO_STREAMER_DEBUG]: Initialize it.
|
[LTO_STREAMER_DEBUG] (lto_orig_address_map, lto_orig_address_get,
|
[LTO_STREAMER_DEBUG] (lto_orig_address_map, lto_orig_address_get,
|
lto_orig_address_remove): Reimplement.
|
lto_orig_address_remove): Reimplement.
|
|
|
2010-04-28 Rainer Orth
|
2010-04-28 Rainer Orth
|
|
|
PR target/22224
|
PR target/22224
|
* config/alpha/osf.h (ASM_OUTPUT_LOCAL): Redefine.
|
* config/alpha/osf.h (ASM_OUTPUT_LOCAL): Redefine.
|
|
|
2010-04-28 Martin Jambor
|
2010-04-28 Martin Jambor
|
|
|
PR tree-optimization/43846
|
PR tree-optimization/43846
|
* tree-sra.c (struct access): New flag grp_assignment_read.
|
* tree-sra.c (struct access): New flag grp_assignment_read.
|
(build_accesses_from_assign): Set grp_assignment_read.
|
(build_accesses_from_assign): Set grp_assignment_read.
|
(sort_and_splice_var_accesses): Propagate grp_assignment_read.
|
(sort_and_splice_var_accesses): Propagate grp_assignment_read.
|
(enum mark_read_status): New type.
|
(enum mark_read_status): New type.
|
(analyze_access_subtree): Propagate grp_assignment_read, create
|
(analyze_access_subtree): Propagate grp_assignment_read, create
|
accesses also if both direct_read and root->grp_assignment_read.
|
accesses also if both direct_read and root->grp_assignment_read.
|
|
|
2010-04-27 Kai Tietz
|
2010-04-27 Kai Tietz
|
|
|
Back-merged from trnnk.
|
Back-merged from trnnk.
|
* collect2.c (TARGET_64BIT): Redefine to target's default.
|
* collect2.c (TARGET_64BIT): Redefine to target's default.
|
* tlink.c: Likewise.
|
* tlink.c: Likewise.
|
* config/i386/cygming.h (USER_LABEL_PREFIX): Define
|
* config/i386/cygming.h (USER_LABEL_PREFIX): Define
|
dependent to TARGET_64BIT and USE_MINGW64_LEADING_UNDERSCORES.
|
dependent to TARGET_64BIT and USE_MINGW64_LEADING_UNDERSCORES.
|
* config/i386/i386.h (CRT_CALL_STATIC_FUNCTION): Use
|
* config/i386/i386.h (CRT_CALL_STATIC_FUNCTION): Use
|
for underscoring __USER_LABEL_PREFIX__.
|
for underscoring __USER_LABEL_PREFIX__.
|
* config/i386/mingw-w64.h (SUB_LINK_ENTRY): New macro.
|
* config/i386/mingw-w64.h (SUB_LINK_ENTRY): New macro.
|
(SUB_LINK_ENTRY32): New.
|
(SUB_LINK_ENTRY32): New.
|
(SUB_LINK_ENTRY64): New.
|
(SUB_LINK_ENTRY64): New.
|
(LINK_SPEC): Replace entry point spec by
|
(LINK_SPEC): Replace entry point spec by
|
SUB_LINK_ENTRY.
|
SUB_LINK_ENTRY.
|
* config/i386/mingw32 (SUB_LINK_ENTRY32): New.
|
* config/i386/mingw32 (SUB_LINK_ENTRY32): New.
|
(SUB_LINK_ENTRY64): New.
|
(SUB_LINK_ENTRY64): New.
|
(SUB_LINK_ENTRY): New.
|
(SUB_LINK_ENTRY): New.
|
(LINK_SPEC): Use SUB_LINK_ENTRY instead of hard-coded entry-point.
|
(LINK_SPEC): Use SUB_LINK_ENTRY instead of hard-coded entry-point.
|
(DWARF2_UNWIND_INFO): Error out for use of dw2 unwind when
|
(DWARF2_UNWIND_INFO): Error out for use of dw2 unwind when
|
x64 target is choosen.
|
x64 target is choosen.
|
* config.in (USE_MINGW64_LEADING_UNDERSCORES): New.
|
* config.in (USE_MINGW64_LEADING_UNDERSCORES): New.
|
* configure: Regenerated.
|
* configure: Regenerated.
|
* configure.ac (leading-mingw64-underscores): Option added.
|
* configure.ac (leading-mingw64-underscores): Option added.
|
|
|
2010-04-27 Jakub Jelinek
|
2010-04-27 Jakub Jelinek
|
|
|
* dwarf2out.c (def_cfa_1): After DW_CFA_def_cfa_expression
|
* dwarf2out.c (def_cfa_1): After DW_CFA_def_cfa_expression
|
force using DW_CFA_def_cfa instead of DW_CFA_def_cfa_register
|
force using DW_CFA_def_cfa instead of DW_CFA_def_cfa_register
|
or DW_CFA_def_cfa_offset{,_sf}.
|
or DW_CFA_def_cfa_offset{,_sf}.
|
|
|
* unwind-dw2.c (_Unwind_DebugHook): Add used and noclone attributes.
|
* unwind-dw2.c (_Unwind_DebugHook): Add used and noclone attributes.
|
|
|
2010-04-27 Hans-Peter Nilsson
|
2010-04-27 Hans-Peter Nilsson
|
|
|
PR target/43889
|
PR target/43889
|
* config/mmix/mmix.md ("*divdi3_nonknuth", "*moddi3_nonknuth"):
|
* config/mmix/mmix.md ("*divdi3_nonknuth", "*moddi3_nonknuth"):
|
Add missing earlyclobber for second alternative.
|
Add missing earlyclobber for second alternative.
|
|
|
2010-04-26 Jakub Jelinek
|
2010-04-26 Jakub Jelinek
|
|
|
PR c/43893
|
PR c/43893
|
* c-omp.c (c_finish_omp_for): Handle also EQ_EXPR.
|
* c-omp.c (c_finish_omp_for): Handle also EQ_EXPR.
|
|
|
2010-04-26 Jie Zhang
|
2010-04-26 Jie Zhang
|
|
|
PR tree-optimization/43833
|
PR tree-optimization/43833
|
* tree-vrp.c (range_int_cst_p): New.
|
* tree-vrp.c (range_int_cst_p): New.
|
(range_int_cst_singleton_p): New.
|
(range_int_cst_singleton_p): New.
|
(extract_range_from_binary_expr): Optimize BIT_AND_EXPR case
|
(extract_range_from_binary_expr): Optimize BIT_AND_EXPR case
|
when both operands are constants. Use range_int_cst_p in
|
when both operands are constants. Use range_int_cst_p in
|
BIT_IOR_EXPR case.
|
BIT_IOR_EXPR case.
|
|
|
2010-04-23 Martin Jambor
|
2010-04-23 Martin Jambor
|
|
|
PR middle-end/43835
|
PR middle-end/43835
|
* tree-sra.c (ipa_sra_preliminary_function_checks): Check that the
|
* tree-sra.c (ipa_sra_preliminary_function_checks): Check that the
|
function does not have type attributes.
|
function does not have type attributes.
|
|
|
2010-04-23 Richard Guenther
|
2010-04-23 Richard Guenther
|
|
|
PR tree-optimization/43572
|
PR tree-optimization/43572
|
* tree-tailcall.c (find_tail_calls): Allow PARM_DECL uses.
|
* tree-tailcall.c (find_tail_calls): Allow PARM_DECL uses.
|
|
|
2010-04-23 Richard Guenther
|
2010-04-23 Richard Guenther
|
|
|
Backport from mainline
|
Backport from mainline
|
2010-04-22 Richard Guenther
|
2010-04-22 Richard Guenther
|
|
|
PR tree-optimization/43845
|
PR tree-optimization/43845
|
* tree-ssa-pre.c (create_component_ref_by_pieces_1): Properly
|
* tree-ssa-pre.c (create_component_ref_by_pieces_1): Properly
|
lookup the CALL_EXPR function and arguments.
|
lookup the CALL_EXPR function and arguments.
|
|
|
2010-04-21 Jakub Jelinek
|
2010-04-21 Jakub Jelinek
|
|
|
PR middle-end/43570
|
PR middle-end/43570
|
* omp-low.c (scan_sharing_clauses): Don't scan_omp_op
|
* omp-low.c (scan_sharing_clauses): Don't scan_omp_op
|
OMP_CLAUSE_DECL for OMP_CLAUSE_COPYPRIVATE.
|
OMP_CLAUSE_DECL for OMP_CLAUSE_COPYPRIVATE.
|
(lower_copyprivate_clauses): Use private var in outer
|
(lower_copyprivate_clauses): Use private var in outer
|
context instead of original var. Make sure the types
|
context instead of original var. Make sure the types
|
are correct for VLAs.
|
are correct for VLAs.
|
|
|
2010-04-20 Richard Guenther
|
2010-04-20 Richard Guenther
|
|
|
PR tree-optimization/43783
|
PR tree-optimization/43783
|
* tree-ssa-pre.c (create_component_ref_by_pieces_1): Drop
|
* tree-ssa-pre.c (create_component_ref_by_pieces_1): Drop
|
constant ARRAY_REF operands two and three if possible.
|
constant ARRAY_REF operands two and three if possible.
|
|
|
2010-04-20 Richard Guenther
|
2010-04-20 Richard Guenther
|
|
|
PR tree-optimization/43796
|
PR tree-optimization/43796
|
* tree-vrp.c (adjust_range_with_scev): Lookup init and step
|
* tree-vrp.c (adjust_range_with_scev): Lookup init and step
|
from SCEV in the lattice.
|
from SCEV in the lattice.
|
(vrp_visit_phi_node): Dump change.
|
(vrp_visit_phi_node): Dump change.
|
|
|
2010-04-20 Jakub Jelinek
|
2010-04-20 Jakub Jelinek
|
|
|
PR middle-end/43337
|
PR middle-end/43337
|
* tree-nested.c (convert_nonlocal_omp_clauses): OMP_CLAUSE_PRIVATE
|
* tree-nested.c (convert_nonlocal_omp_clauses): OMP_CLAUSE_PRIVATE
|
with non-local decl doesn't need chain.
|
with non-local decl doesn't need chain.
|
|
|
2010-04-20 Andreas Krebbel
|
2010-04-20 Andreas Krebbel
|
|
|
PR target/43635
|
PR target/43635
|
* config/s390/s390.c (s390_emit_call): Turn direct into indirect
|
* config/s390/s390.c (s390_emit_call): Turn direct into indirect
|
calls for -fpic -m31 if they have been sibcall optimized.
|
calls for -fpic -m31 if they have been sibcall optimized.
|
|
|
2010-04-19 DJ Delorie
|
2010-04-19 DJ Delorie
|
|
|
* cfgexpand.c (expand_debug_expr): Check for mismatched modes in
|
* cfgexpand.c (expand_debug_expr): Check for mismatched modes in
|
POINTER_PLUS_EXPR and fix them.
|
POINTER_PLUS_EXPR and fix them.
|
|
|
2010-04-19 Jie Zhang
|
2010-04-19 Jie Zhang
|
|
|
PR target/43662
|
PR target/43662
|
* reginfo.c (reinit_regs): Set caller_save_initialized_p
|
* reginfo.c (reinit_regs): Set caller_save_initialized_p
|
to false.
|
to false.
|
|
|
2010-04-19 Richard Guenther
|
2010-04-19 Richard Guenther
|
|
|
PR tree-optimization/43572
|
PR tree-optimization/43572
|
* tree-tailcall.c (find_tail_calls): Verify the tail call
|
* tree-tailcall.c (find_tail_calls): Verify the tail call
|
properly.
|
properly.
|
|
|
2010-04-19 Ira Rosen
|
2010-04-19 Ira Rosen
|
|
|
PR tree-optimization/43771
|
PR tree-optimization/43771
|
* tree-vect-slp.c (vect_supported_load_permutation_p): Check that
|
* tree-vect-slp.c (vect_supported_load_permutation_p): Check that
|
load permutation doesn't have gaps.
|
load permutation doesn't have gaps.
|
|
|
2010-04-18 Matthias Klose
|
2010-04-18 Matthias Klose
|
|
|
* gcc.c (main): Search for liblto_plugin.so with mode R_OK.
|
* gcc.c (main): Search for liblto_plugin.so with mode R_OK.
|
|
|
2010-04-16 Rainer Orth
|
2010-04-16 Rainer Orth
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-04-09 Rainer Orth
|
2010-04-09 Rainer Orth
|
|
|
* configure.ac (plugin -rdynamic test): Log result.
|
* configure.ac (plugin -rdynamic test): Log result.
|
* configure: Regenerate.
|
* configure: Regenerate.
|
* config/sol2.h (LINK_SPEC): Handle -rdynamic.
|
* config/sol2.h (LINK_SPEC): Handle -rdynamic.
|
(RDYNAMIC_SPEC): Define.
|
(RDYNAMIC_SPEC): Define.
|
* config/sol2-gld.h (RDYNAMIC_SPEC): Redefine.
|
* config/sol2-gld.h (RDYNAMIC_SPEC): Redefine.
|
|
|
2010-04-16 Rainer Orth
|
2010-04-16 Rainer Orth
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-04-09 Rainer Orth
|
2010-04-09 Rainer Orth
|
|
|
* config/sparc/sol2-gld.h: Remove SPARC reference. Rename ...
|
* config/sparc/sol2-gld.h: Remove SPARC reference. Rename ...
|
* config/sol2-gld.h: ... here.
|
* config/sol2-gld.h: ... here.
|
* config.gcc (sparc*-*-solaris2*): Reflect this.
|
* config.gcc (sparc*-*-solaris2*): Reflect this.
|
(i[34567]86-*-solaris2*): Use it.
|
(i[34567]86-*-solaris2*): Use it.
|
|
|
2010-04-16 Rainer Orth
|
2010-04-16 Rainer Orth
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-04-09 Rainer Orth
|
2010-04-09 Rainer Orth
|
|
|
* configure.ac: Determine Sun ld version numbers.
|
* configure.ac: Determine Sun ld version numbers.
|
(comdat_group): Restrict GNU ld version checks to gld.
|
(comdat_group): Restrict GNU ld version checks to gld.
|
(comdat_group, *-*-solaris2.1[1-9]*): Enable for Sun ld > 1.1688.
|
(comdat_group, *-*-solaris2.1[1-9]*): Enable for Sun ld > 1.1688.
|
(enable_comdat): Support --enable-comdat.
|
(enable_comdat): Support --enable-comdat.
|
* configure: Regenerate.
|
* configure: Regenerate.
|
* doc/install.texi (Configuration): Document --enable-comdat.
|
* doc/install.texi (Configuration): Document --enable-comdat.
|
|
|
2010-04-01 Uros Bizjak
|
2010-04-01 Uros Bizjak
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-04-14 Uros Bizjak
|
2010-04-14 Uros Bizjak
|
|
|
* config/i386/i386.md (*divmod4): Remove stray "&&" from
|
* config/i386/i386.md (*divmod4): Remove stray "&&" from
|
splitter condition.
|
splitter condition.
|
(*udivmod4): Ditto.
|
(*udivmod4): Ditto.
|
|
|
2010-04-14 Uros Bizjak
|
2010-04-14 Uros Bizjak
|
|
|
* config/i386/i386.md (*popcountsi2_cmp_zext): Remove mode attribute
|
* config/i386/i386.md (*popcountsi2_cmp_zext): Remove mode attribute
|
from insn template.
|
from insn template.
|
|
|
2010-04-15 Thomas Schwinge
|
2010-04-15 Thomas Schwinge
|
|
|
Backport from mainline:
|
Backport from mainline:
|
2010-04-15 Thomas Schwinge
|
2010-04-15 Thomas Schwinge
|
|
|
* config.gcc : Handle softfp as for Linux.
|
* config.gcc : Handle softfp as for Linux.
|
|
|
2010-04-15 Richard Guenther
|
2010-04-15 Richard Guenther
|
|
|
PR tree-optimization/43627
|
PR tree-optimization/43627
|
* tree-vrp.c (extract_range_from_unary_expr): Widenings
|
* tree-vrp.c (extract_range_from_unary_expr): Widenings
|
of [1, +INF(OVF)] go to [1, +INF(OVF)] of the wider type,
|
of [1, +INF(OVF)] go to [1, +INF(OVF)] of the wider type,
|
not varying.
|
not varying.
|
|
|
2010-04-14 Richard Guenther
|
2010-04-14 Richard Guenther
|
|
|
* DEV-PHASE: Set back to prerelease.
|
* DEV-PHASE: Set back to prerelease.
|
* BASE-VER: Bump to 4.5.1.
|
* BASE-VER: Bump to 4.5.1.
|
|
|
2010-04-14 Release Manager
|
2010-04-14 Release Manager
|
|
|
* GCC 4.5.0 released.
|
* GCC 4.5.0 released.
|
|
|
2010-04-13 Michael Matz
|
2010-04-13 Michael Matz
|
|
|
PR middle-end/43730
|
PR middle-end/43730
|
* builtins.c (expand_builtin_interclass_mathfn): Also create
|
* builtins.c (expand_builtin_interclass_mathfn): Also create
|
a register if the predicate doesn't match.
|
a register if the predicate doesn't match.
|
|
|
2010-04-12 Rainer Orth
|
2010-04-12 Rainer Orth
|
|
|
* doc/contrib.texi (Contributors, Rainer Orth): Update.
|
* doc/contrib.texi (Contributors, Rainer Orth): Update.
|
|
|
2010-04-08 Rainer Orth
|
2010-04-08 Rainer Orth
|
|
|
PR target/43643
|
PR target/43643
|
* config/i386/gmon-sol2.c [__x86_64__]: Properly restore %rcx.
|
* config/i386/gmon-sol2.c [__x86_64__]: Properly restore %rcx.
|
|
|
2010-04-08 Rainer Orth
|
2010-04-08 Rainer Orth
|
|
|
* doc/install.texi (Specific, i?86-*-solaris2.10): Fix grammar.
|
* doc/install.texi (Specific, i?86-*-solaris2.10): Fix grammar.
|
(Specific, *-*-solaris2*): Likewise.
|
(Specific, *-*-solaris2*): Likewise.
|
Don't prefer Sun as over GNU as.
|
Don't prefer Sun as over GNU as.
|
|
|
2010-04-08 Richard Guenther
|
2010-04-08 Richard Guenther
|
|
|
PR tree-optimization/43679
|
PR tree-optimization/43679
|
* tree-ssa-pre.c (eliminate): Only propagate copies.
|
* tree-ssa-pre.c (eliminate): Only propagate copies.
|
|
|
2010-04-08 Jakub Jelinek
|
2010-04-08 Jakub Jelinek
|
|
|
PR debug/43670
|
PR debug/43670
|
* cfgexpand.c (expand_debug_expr): If for non-NULL offset
|
* cfgexpand.c (expand_debug_expr): If for non-NULL offset
|
op0 is not a MEM, just return NULL instead of assertion
|
op0 is not a MEM, just return NULL instead of assertion
|
failure.
|
failure.
|
(discover_nonconstant_array_refs): Don't walk debug stmts.
|
(discover_nonconstant_array_refs): Don't walk debug stmts.
|
|
|
2010-04-07 H.J. Lu
|
2010-04-07 H.J. Lu
|
|
|
PR target/43668
|
PR target/43668
|
* config/i386/i386.c (setup_incoming_varargs_64): Align stack to
|
* config/i386/i386.c (setup_incoming_varargs_64): Align stack to
|
16byte for FP register save area.
|
16byte for FP register save area.
|
|
|
2010-04-07 Ralf Wildenhues
|
2010-04-07 Ralf Wildenhues
|
|
|
* doc/install.texi (Configuration): Move description of
|
* doc/install.texi (Configuration): Move description of
|
--enable-lto, --with-libelf*, --enable-gold from Java section to
|
--enable-lto, --with-libelf*, --enable-gold from Java section to
|
general section.
|
general section.
|
|
|
* doc/generic.texi (Working with declarations)
|
* doc/generic.texi (Working with declarations)
|
(Function Properties, C and C++ Trees): Fix typos.
|
(Function Properties, C and C++ Trees): Fix typos.
|
* doc/sourcebuild.texi (Top Level): Likewise.
|
* doc/sourcebuild.texi (Top Level): Likewise.
|
|
|
2010-04-07 Rainer Orth
|
2010-04-07 Rainer Orth
|
|
|
* config.gcc (i[34567]86-*-solaris2*): Default with_tune_32 to
|
* config.gcc (i[34567]86-*-solaris2*): Default with_tune_32 to
|
generic.
|
generic.
|
|
|
2010-04-06 Jakub Jelinek
|
2010-04-06 Jakub Jelinek
|
|
|
PR target/43667
|
PR target/43667
|
* config/i386/i386.c (bdesc_multi_arg): Use OPTION_MASK_ISA_XOP
|
* config/i386/i386.c (bdesc_multi_arg): Use OPTION_MASK_ISA_XOP
|
instead of OPTION_MASK_ISA_AVX for __builtin_ia32_vpermil2p*.
|
instead of OPTION_MASK_ISA_AVX for __builtin_ia32_vpermil2p*.
|
(ix86_expand_args_builtin): Use V*_FTYPE_* enum codes instead of
|
(ix86_expand_args_builtin): Use V*_FTYPE_* enum codes instead of
|
MULTI_* defines for 4 argument vpermil2p* builtins.
|
MULTI_* defines for 4 argument vpermil2p* builtins.
|
|
|
2010-04-06 Joseph Myers
|
2010-04-06 Joseph Myers
|
|
|
* doc/invoke.texi, doc/standards.texi: Refer to
|
* doc/invoke.texi, doc/standards.texi: Refer to
|
gcc-4.5/c99status.html.
|
gcc-4.5/c99status.html.
|
|
|
2010-04-06 Jakub Jelinek
|
2010-04-06 Jakub Jelinek
|
|
|
PR target/43638
|
PR target/43638
|
* config/i386/i386.c (print_operand): Remove 'e' and 'E' code
|
* config/i386/i386.c (print_operand): Remove 'e' and 'E' code
|
handling.
|
handling.
|
|
|
2010-04-06 Richard Guenther
|
2010-04-06 Richard Guenther
|
|
|
PR middle-end/43661
|
PR middle-end/43661
|
* fold-const.c (fold_comparison): Handle X * 0 CMP 0.
|
* fold-const.c (fold_comparison): Handle X * 0 CMP 0.
|
|
|
2010-04-05 Ralf Wildenhues
|
2010-04-05 Ralf Wildenhues
|
|
|
* doc/invoke.texi (Optimize Options): Document that LTO
|
* doc/invoke.texi (Optimize Options): Document that LTO
|
won't remove object access purely due to incompatible
|
won't remove object access purely due to incompatible
|
declarations.
|
declarations.
|
|
|
2010-04-04 Matthias Klose
|
2010-04-04 Matthias Klose
|
|
|
* graphite-sese-to-poly.c (translate_scalar_reduction_to_array):
|
* graphite-sese-to-poly.c (translate_scalar_reduction_to_array):
|
Initialize variable.
|
Initialize variable.
|
|
|
2010-04-03 Richard Guenther
|
2010-04-03 Richard Guenther
|
|
|
PR middle-end/42509
|
PR middle-end/42509
|
* alias.c (nonoverlapping_memrefs_p): For spill-slot accesses
|
* alias.c (nonoverlapping_memrefs_p): For spill-slot accesses
|
require a non-NULL MEM_OFFSET.
|
require a non-NULL MEM_OFFSET.
|
|
|
2010-04-02 Steven Bosscher
|
2010-04-02 Steven Bosscher
|
|
|
* ada/gcc-interface/Make-lang.in, alias.c, attribs.c, auto-inc-dec.c,
|
* ada/gcc-interface/Make-lang.in, alias.c, attribs.c, auto-inc-dec.c,
|
basic-block.h, bb-reorder.c, calls.c, c-common.c, cgraph.h,
|
basic-block.h, bb-reorder.c, calls.c, c-common.c, cgraph.h,
|
collect2.h, config/alpha/alpha.c, config/alpha/alpha.md,
|
collect2.h, config/alpha/alpha.c, config/alpha/alpha.md,
|
config/alpha/predicates.md, config/arm/arm.md,
|
config/alpha/predicates.md, config/arm/arm.md,
|
config/arm/lib1funcs.asm, config/arm/neon-schedgen.ml,
|
config/arm/lib1funcs.asm, config/arm/neon-schedgen.ml,
|
config/avr/avr.c, config/avr/avr.md, config/bfin/bfin.c,
|
config/avr/avr.c, config/avr/avr.md, config/bfin/bfin.c,
|
config/darwin9.h, config/darwin.c, config/darwin.h,
|
config/darwin9.h, config/darwin.c, config/darwin.h,
|
config/h8300/h8300.c, config/i386/cpuid.h, config/i386/cygming.h,
|
config/h8300/h8300.c, config/i386/cpuid.h, config/i386/cygming.h,
|
config/i386/cygwin.h, config/i386/mingw32.h, config/i386/msformat-c.c,
|
config/i386/cygwin.h, config/i386/mingw32.h, config/i386/msformat-c.c,
|
config/i386/sol2-10.h, config/i386/xopintrin.h, config/ia64/ia64.c,
|
config/i386/sol2-10.h, config/i386/xopintrin.h, config/ia64/ia64.c,
|
config/ia64/ia64.md, config/ia64/sync.md, config/mep/mep.c,
|
config/ia64/ia64.md, config/ia64/sync.md, config/mep/mep.c,
|
config/mips/mips.md, config/mn10300/mn10300.c,
|
config/mips/mips.md, config/mn10300/mn10300.c,
|
config/mn10300/mn10300.h, config/pa/pa.c, config/pa/pa.md,
|
config/mn10300/mn10300.h, config/pa/pa.c, config/pa/pa.md,
|
config/rs6000/aix.h, config/rs6000/dfp.md,
|
config/rs6000/aix.h, config/rs6000/dfp.md,
|
config/rs6000/rs6000-builtin.def, config/rs6000/rs6000-c.c,
|
config/rs6000/rs6000-builtin.def, config/rs6000/rs6000-c.c,
|
config/rs6000/vector.md, config/rtems.h, config/rx/rx.md,
|
config/rs6000/vector.md, config/rtems.h, config/rx/rx.md,
|
config/s390/s390.md, config/sol2-c.c, config/sparc/sol2-bi.h,
|
config/s390/s390.md, config/sol2-c.c, config/sparc/sol2-bi.h,
|
config/sparc/sol2-gas.h, config/sparc/sparc.h, config/sparc/sparc.md,
|
config/sparc/sol2-gas.h, config/sparc/sparc.h, config/sparc/sparc.md,
|
config/sparc/sparc-protos.h, config/spu/spu.c, config/spu/spu-c.c,
|
config/sparc/sparc-protos.h, config/spu/spu.c, config/spu/spu-c.c,
|
config/t-darwin, convert.c, c.opt, c-opts.c, cp/Make-lang.in,
|
config/t-darwin, convert.c, c.opt, c-opts.c, cp/Make-lang.in,
|
c-pretty-print.c, c-typeck.c, df-core.c, df-scan.c, diagnostic.c,
|
c-pretty-print.c, c-typeck.c, df-core.c, df-scan.c, diagnostic.c,
|
diagnostic.h, doc/cppopts.texi, doc/cpp.texi, doc/extend.texi,
|
diagnostic.h, doc/cppopts.texi, doc/cpp.texi, doc/extend.texi,
|
doc/gimple.texi, doc/languages.texi, doc/plugins.texi, doc/rtl.texi,
|
doc/gimple.texi, doc/languages.texi, doc/plugins.texi, doc/rtl.texi,
|
doc/standards.texi, doc/tree-ssa.texi, doc/trouble.texi, dominance.c,
|
doc/standards.texi, doc/tree-ssa.texi, doc/trouble.texi, dominance.c,
|
fold-const.c, fortran/Make-lang.in, fwprop.c, gcc-plugin.h,
|
fold-const.c, fortran/Make-lang.in, fwprop.c, gcc-plugin.h,
|
gensupport.c, gimple.h, gimple-iterator.c, graphite.c,
|
gensupport.c, gimple.h, gimple-iterator.c, graphite.c,
|
graphite-clast-to-gimple.c, graphite-clast-to-gimple.h,
|
graphite-clast-to-gimple.c, graphite-clast-to-gimple.h,
|
graphite-dependences.c, graphite-poly.c, graphite-poly.h,
|
graphite-dependences.c, graphite-poly.c, graphite-poly.h,
|
graphite-ppl.c, graphite-ppl.h, graphite-scop-detection.c,
|
graphite-ppl.c, graphite-ppl.h, graphite-scop-detection.c,
|
graphite-sese-to-poly.c, graphite-sese-to-poly.h, ifcvt.c, intl.c,
|
graphite-sese-to-poly.c, graphite-sese-to-poly.h, ifcvt.c, intl.c,
|
intl.h, ipa.c, ipa-cp.c, ipa-inline.c, ipa-prop.c, ipa-prop.h,
|
intl.h, ipa.c, ipa-cp.c, ipa-inline.c, ipa-prop.c, ipa-prop.h,
|
ipa-pure-const.c, ipa-reference.c, ipa-type-escape.c, ira-color.c,
|
ipa-pure-const.c, ipa-reference.c, ipa-type-escape.c, ira-color.c,
|
ira-conflicts.c, ira-lives.c, java/Make-lang.in, lambda-code.c,
|
ira-conflicts.c, ira-lives.c, java/Make-lang.in, lambda-code.c,
|
loop-invariant.c, lto/Make-lang.in, lto-streamer.h, lto-streamer-in.c,
|
loop-invariant.c, lto/Make-lang.in, lto-streamer.h, lto-streamer-in.c,
|
objc/Make-lang.in, objcp/Make-lang.in, omp-low.c, optc-gen.awk,
|
objc/Make-lang.in, objcp/Make-lang.in, omp-low.c, optc-gen.awk,
|
opt-functions.awk, opth-gen.awk, params.def, passes.c,
|
opt-functions.awk, opth-gen.awk, params.def, passes.c,
|
postreload-gcse.c, print-tree.c, recog.c, regrename.c, reload.h,
|
postreload-gcse.c, print-tree.c, recog.c, regrename.c, reload.h,
|
rtl.def, sched-int.h, sched-rgn.c, sel-sched-dump.c, sese.c, sese.h,
|
rtl.def, sched-int.h, sched-rgn.c, sel-sched-dump.c, sese.c, sese.h,
|
store-motion.c, stor-layout.c, tree-cfgcleanup.c, tree-chrec.c,
|
store-motion.c, stor-layout.c, tree-cfgcleanup.c, tree-chrec.c,
|
tree-complex.c, tree-data-ref.c, tree.def, tree-eh.c, tree-flow.h,
|
tree-complex.c, tree-data-ref.c, tree.def, tree-eh.c, tree-flow.h,
|
tree-flow-inline.h, tree.h, tree-loop-distribution.c, tree-outof-ssa.c,
|
tree-flow-inline.h, tree.h, tree-loop-distribution.c, tree-outof-ssa.c,
|
tree-parloops.c, tree-pass.h, tree-predcom.c, tree-profile.c,
|
tree-parloops.c, tree-pass.h, tree-predcom.c, tree-profile.c,
|
tree-scalar-evolution.c, tree-ssa-address.c, tree-ssa-alias.c,
|
tree-scalar-evolution.c, tree-ssa-address.c, tree-ssa-alias.c,
|
tree-ssa-coalesce.c, tree-ssa-copy.c, tree-ssa-dce.c, tree-ssa-dom.c,
|
tree-ssa-coalesce.c, tree-ssa-copy.c, tree-ssa-dce.c, tree-ssa-dom.c,
|
tree-ssa-dse.c, tree-ssa-loop-im.c, tree-ssa-loop-ivcanon.c,
|
tree-ssa-dse.c, tree-ssa-loop-im.c, tree-ssa-loop-ivcanon.c,
|
tree-ssa-loop-manip.c, tree-ssa-math-opts.c, tree-ssa-operands.c,
|
tree-ssa-loop-manip.c, tree-ssa-math-opts.c, tree-ssa-operands.c,
|
tree-ssa-pre.c, tree-ssa-sccvn.c, tree-ssa-structalias.c,
|
tree-ssa-pre.c, tree-ssa-sccvn.c, tree-ssa-structalias.c,
|
tree-ssa-uncprop.c, tree-tailcall.c, tree-vect-data-refs.c,
|
tree-ssa-uncprop.c, tree-tailcall.c, tree-vect-data-refs.c,
|
tree-vect-loop.c, tree-vectorizer.h, tree-vect-slp.c, tree-vrp.c,
|
tree-vect-loop.c, tree-vectorizer.h, tree-vect-slp.c, tree-vrp.c,
|
unwind-dw2-fde-darwin.c, varpool.c: Update copyright years.
|
unwind-dw2-fde-darwin.c, varpool.c: Update copyright years.
|
|
|
2010-04-02 Ralf Wildenhues
|
2010-04-02 Ralf Wildenhues
|
|
|
PR other/43620
|
PR other/43620
|
* doc/install.texi (Prerequisites): Bump Automake version to 1.11.1.
|
* doc/install.texi (Prerequisites): Bump Automake version to 1.11.1.
|
* aclocal.m4: Regenerate.
|
* aclocal.m4: Regenerate.
|
|
|
2010-04-02 Richard Guenther
|
2010-04-02 Richard Guenther
|
|
|
PR tree-optimization/43629
|
PR tree-optimization/43629
|
* tree-ssa-ccp.c (likely_value): Reset all_undefined_operands
|
* tree-ssa-ccp.c (likely_value): Reset all_undefined_operands
|
if we have seen a constant value.
|
if we have seen a constant value.
|
|
|
2010-04-02 Joseph Myers
|
2010-04-02 Joseph Myers
|
|
|
* read-rtl.c (read_rtx_1): Give an error for EOF while looking for
|
* read-rtl.c (read_rtx_1): Give an error for EOF while looking for
|
']'.
|
']'.
|
|
|
2010-04-02 Richard Earnshaw
|
2010-04-02 Richard Earnshaw
|
|
|
PR target/43469
|
PR target/43469
|
* arm.c (legitimize_tls_address): Adjust call to
|
* arm.c (legitimize_tls_address): Adjust call to
|
gen_tls_load_dot_plus_four.
|
gen_tls_load_dot_plus_four.
|
(arm_note_pic_base): New function.
|
(arm_note_pic_base): New function.
|
(arm_cannot_copy_insn_p): Use it.
|
(arm_cannot_copy_insn_p): Use it.
|
* thumb2.md (tls_load_dot_plus_four): Rework to avoid use of '+' in
|
* thumb2.md (tls_load_dot_plus_four): Rework to avoid use of '+' in
|
constraint.
|
constraint.
|
|
|
2010-04-02 Ralf Wildenhues
|
2010-04-02 Ralf Wildenhues
|
|
|
PR bootstrap/43531
|
PR bootstrap/43531
|
|
|
Revert:
|
Revert:
|
2009-09-28 Ralf Wildenhues
|
2009-09-28 Ralf Wildenhues
|
|
|
* Makefile.in ($(out_object_file)): Depend on
|
* Makefile.in ($(out_object_file)): Depend on
|
gt-$(basename $(notdir $(out_file))).h.
|
gt-$(basename $(notdir $(out_file))).h.
|
|
|
2010-04-01 Ralf Corsépius
|
2010-04-01 Ralf Corsépius
|
|
|
* config.gcc (lm32-*-rtems*): Add t-lm32.
|
* config.gcc (lm32-*-rtems*): Add t-lm32.
|
|
|
2010-04-01 Joel Sherrill
|
2010-04-01 Joel Sherrill
|
|
|
* config.gcc: Add lm32-*-rtems*.
|
* config.gcc: Add lm32-*-rtems*.
|
* config/lm32/rtems.h: New file.
|
* config/lm32/rtems.h: New file.
|
|
|
2010-04-01 Dave Korn
|
2010-04-01 Dave Korn
|
|
|
PR target/42609
|
PR target/42609
|
* config/i386/cygwin.h (CXX_WRAP_SPEC): Disable spec when -mno-cygwin.
|
* config/i386/cygwin.h (CXX_WRAP_SPEC): Disable spec when -mno-cygwin.
|
|
|
2010-04-01 Jakub Jelinek
|
2010-04-01 Jakub Jelinek
|
|
|
* dwarf2out.c (output_compilation_unit_header): For
|
* dwarf2out.c (output_compilation_unit_header): For
|
-gdwarf-4 use version 4 instead of version 3.
|
-gdwarf-4 use version 4 instead of version 3.
|
(output_line_info): For version 4 and above emit additional
|
(output_line_info): For version 4 and above emit additional
|
maximum ops per insn header field.
|
maximum ops per insn header field.
|
(DWARF_LINE_DEFAULT_MAX_OPS_PER_INSN): Define.
|
(DWARF_LINE_DEFAULT_MAX_OPS_PER_INSN): Define.
|
|
|
* dwarf2out.c (is_c_family, is_java): Remove.
|
* dwarf2out.c (is_c_family, is_java): Remove.
|
(lower_bound_default): New function.
|
(lower_bound_default): New function.
|
(add_bound_info, gen_descr_array_type_die): Use it.
|
(add_bound_info, gen_descr_array_type_die): Use it.
|
|
|
2010-04-01 Dodji Seketeli
|
2010-04-01 Dodji Seketeli
|
|
|
PR debug/43325
|
PR debug/43325
|
* dwarf2out.c (gen_variable_die): Allow debug info for variable
|
* dwarf2out.c (gen_variable_die): Allow debug info for variable
|
re-declaration when it happens in a function.
|
re-declaration when it happens in a function.
|
|
|
2010-04-01 Aldy Hernandez
|
2010-04-01 Aldy Hernandez
|
|
|
* cgraph.c (cgraph_add_function_insertion_hook): Update comment.
|
* cgraph.c (cgraph_add_function_insertion_hook): Update comment.
|
(cgraph_remove_function_insertion_hook): Same.
|
(cgraph_remove_function_insertion_hook): Same.
|
(cgraph_call_function_insertion_hooks): Same.
|
(cgraph_call_function_insertion_hooks): Same.
|
|
|
2010-04-01 Richard Guenther
|
2010-04-01 Richard Guenther
|
|
|
PR middle-end/43614
|
PR middle-end/43614
|
* tree-ssa-address.c (copy_mem_ref_info): Copy TREE_SIDE_EFFECTS
|
* tree-ssa-address.c (copy_mem_ref_info): Copy TREE_SIDE_EFFECTS
|
and TREE_THIS_VOLATILE.
|
and TREE_THIS_VOLATILE.
|
(copy_ref_info): Likewise.
|
(copy_ref_info): Likewise.
|
* tree-ssa-operands.c (get_tmr_operands): Check TREE_THIS_VOLATILE.
|
* tree-ssa-operands.c (get_tmr_operands): Check TREE_THIS_VOLATILE.
|
* tree.c (build6_stat): Ignore side-effects of all but arg5
|
* tree.c (build6_stat): Ignore side-effects of all but arg5
|
for TARGET_MEM_REF. Set TREE_THIS_VOLATILE from arg5 of
|
for TARGET_MEM_REF. Set TREE_THIS_VOLATILE from arg5 of
|
TARGET_MEM_REF.
|
TARGET_MEM_REF.
|
|
|
2010-04-01 Richard Guenther
|
2010-04-01 Richard Guenther
|
|
|
PR tree-optimization/43607
|
PR tree-optimization/43607
|
* ipa-type-escape.c (check_call): Do not access non-existing
|
* ipa-type-escape.c (check_call): Do not access non-existing
|
arguments.
|
arguments.
|
|
|
2010-04-01 Richard Guenther
|
2010-04-01 Richard Guenther
|
|
|
PR middle-end/43602
|
PR middle-end/43602
|
Revert
|
Revert
|
2010-03-30 Seongbae Park
|
2010-03-30 Seongbae Park
|
Jack Howarth
|
Jack Howarth
|
|
|
* tree-profile.c (tree_init_ic_make_global_vars): Make static
|
* tree-profile.c (tree_init_ic_make_global_vars): Make static
|
variables TLS.
|
variables TLS.
|
|
|
2010-04-01 Rainer Orth
|
2010-04-01 Rainer Orth
|
|
|
* doc/install.texi (Prerequisites): Document libelf usability on
|
* doc/install.texi (Prerequisites): Document libelf usability on
|
IRIX 5/6 and Solaris 2.
|
IRIX 5/6 and Solaris 2.
|
(Specific, i?86-*-solaris2.10): No 64-bit default configuration.
|
(Specific, i?86-*-solaris2.10): No 64-bit default configuration.
|
Update GNU as, GNU ld requirements.
|
Update GNU as, GNU ld requirements.
|
(Specific, *-*-solaris2*): Document Solaris 7 obsoletion, removal.
|
(Specific, *-*-solaris2*): Document Solaris 7 obsoletion, removal.
|
Document Sun Studio compiler download.
|
Document Sun Studio compiler download.
|
Update and simplify as, ld recommendations.
|
Update and simplify as, ld recommendations.
|
(Specific, *-*-solaris2.7): Note obsoletion, removal.
|
(Specific, *-*-solaris2.7): Note obsoletion, removal.
|
|
|
2010-04-01 Rainer Orth
|
2010-04-01 Rainer Orth
|
|
|
* config.gcc (i[34567]86-*-solaris2*): Default with_arch_32,
|
* config.gcc (i[34567]86-*-solaris2*): Default with_arch_32,
|
with_tune_32 to pentium4.
|
with_tune_32 to pentium4.
|
|
|
2010-04-01 Uros Bizjak
|
2010-04-01 Uros Bizjak
|
|
|
* config/i386/cpuid.h (__get_cpuid_max): Move misplaced comment.
|
* config/i386/cpuid.h (__get_cpuid_max): Move misplaced comment.
|
|
|
2010-04-01 Rainer Orth
|
2010-04-01 Rainer Orth
|
|
|
* doc/install.texi (Specific, mips-sgi-irix5): Document IRIX 5
|
* doc/install.texi (Specific, mips-sgi-irix5): Document IRIX 5
|
obsoletion, removal.
|
obsoletion, removal.
|
Update IDO URL.
|
Update IDO URL.
|
Document GNU as requirement.
|
Document GNU as requirement.
|
Update configure requirements.
|
Update configure requirements.
|
(Specific, mips-sgi-irix6): Document IRIX 6 < 6.5 obsoletion,
|
(Specific, mips-sgi-irix6): Document IRIX 6 < 6.5 obsoletion,
|
removal.
|
removal.
|
Recomment IRIX 6.5.18+.
|
Recomment IRIX 6.5.18+.
|
Document IDF/IDL requirement.
|
Document IDF/IDL requirement.
|
Document GNU as requirement.
|
Document GNU as requirement.
|
Document GNU ld bootstrap failure.
|
Document GNU ld bootstrap failure.
|
Remove freeware.sgi.com reference.
|
Remove freeware.sgi.com reference.
|
|
|
2010-04-01 Rainer Orth
|
2010-04-01 Rainer Orth
|
|
|
* doc/install.texi (Specific, alpha*-dec-osf*): Document Tru64
|
* doc/install.texi (Specific, alpha*-dec-osf*): Document Tru64
|
UNIX V4.0, V5.0 obsoletion, removal.
|
UNIX V4.0, V5.0 obsoletion, removal.
|
Remove --with-gc=simple reference.
|
Remove --with-gc=simple reference.
|
Update VM requirements during bootstrap.
|
Update VM requirements during bootstrap.
|
Remove -oldas bootstrap description.
|
Remove -oldas bootstrap description.
|
Update binutils reference.
|
Update binutils reference.
|
Remove comparison failure note.
|
Remove comparison failure note.
|
|
|
2010-03-31 Richard Guenther
|
2010-03-31 Richard Guenther
|
Zdenek Dvorak
|
Zdenek Dvorak
|
Sebastian Pop
|
Sebastian Pop
|
|
|
PR middle-end/43464
|
PR middle-end/43464
|
* tree-ssa-copy.c (init_copy_prop): Handle loop close phi nodes
|
* tree-ssa-copy.c (init_copy_prop): Handle loop close phi nodes
|
with multiple arguments.
|
with multiple arguments.
|
(execute_copy_prop): Remove call to rewrite_into_loop_closed_ssa.
|
(execute_copy_prop): Remove call to rewrite_into_loop_closed_ssa.
|
|
|
2010-03-31 Sebastian Pop
|
2010-03-31 Sebastian Pop
|
|
|
* graphite-dependences.c (print_pddr): Call print_pdr with an
|
* graphite-dependences.c (print_pddr): Call print_pdr with an
|
extra argument.
|
extra argument.
|
* graphite-poly.c (debug_pdr): Add an extra argument for the
|
* graphite-poly.c (debug_pdr): Add an extra argument for the
|
verbosity level.
|
verbosity level.
|
(print_pdr): Same.
|
(print_pdr): Same.
|
(print_pbb_domain): Same.
|
(print_pbb_domain): Same.
|
(print_pbb): Same.
|
(print_pbb): Same.
|
(print_scop_context): Same.
|
(print_scop_context): Same.
|
(print_scop): Same.
|
(print_scop): Same.
|
(print_cloog): Same.
|
(print_cloog): Same.
|
(debug_pbb_domain): Same.
|
(debug_pbb_domain): Same.
|
(debug_pbb): Same.
|
(debug_pbb): Same.
|
(print_pdrs): Same.
|
(print_pdrs): Same.
|
(debug_pdrs): Same.
|
(debug_pdrs): Same.
|
(debug_scop_context): Same.
|
(debug_scop_context): Same.
|
(debug_scop): Same.
|
(debug_scop): Same.
|
(debug_cloog): Same.
|
(debug_cloog): Same.
|
(print_scop_params): Same.
|
(print_scop_params): Same.
|
(debug_scop_params): Same.
|
(debug_scop_params): Same.
|
(print_iteration_domain): Same.
|
(print_iteration_domain): Same.
|
(print_iteration_domains): Same.
|
(print_iteration_domains): Same.
|
(debug_iteration_domain): Same.
|
(debug_iteration_domain): Same.
|
(debug_iteration_domains): Same.
|
(debug_iteration_domains): Same.
|
(print_scattering_function): Same.
|
(print_scattering_function): Same.
|
(print_scattering_functions): Same.
|
(print_scattering_functions): Same.
|
(debug_scattering_function): Same.
|
(debug_scattering_function): Same.
|
(debug_scattering_functions): Same.
|
(debug_scattering_functions): Same.
|
* graphite-poly.h (debug_pdr): Update declaration.
|
* graphite-poly.h (debug_pdr): Update declaration.
|
(print_pdr): Same.
|
(print_pdr): Same.
|
(print_pbb_domain): Same.
|
(print_pbb_domain): Same.
|
(print_pbb): Same.
|
(print_pbb): Same.
|
(print_scop_context): Same.
|
(print_scop_context): Same.
|
(print_scop): Same.
|
(print_scop): Same.
|
(print_cloog): Same.
|
(print_cloog): Same.
|
(debug_pbb_domain): Same.
|
(debug_pbb_domain): Same.
|
(debug_pbb): Same.
|
(debug_pbb): Same.
|
(print_pdrs): Same.
|
(print_pdrs): Same.
|
(debug_pdrs): Same.
|
(debug_pdrs): Same.
|
(debug_scop_context): Same.
|
(debug_scop_context): Same.
|
(debug_scop): Same.
|
(debug_scop): Same.
|
(debug_cloog): Same.
|
(debug_cloog): Same.
|
(print_scop_params): Same.
|
(print_scop_params): Same.
|
(debug_scop_params): Same.
|
(debug_scop_params): Same.
|
(print_iteration_domain): Same.
|
(print_iteration_domain): Same.
|
(print_iteration_domains): Same.
|
(print_iteration_domains): Same.
|
(debug_iteration_domain): Same.
|
(debug_iteration_domain): Same.
|
(debug_iteration_domains): Same.
|
(debug_iteration_domains): Same.
|
(print_scattering_function): Same.
|
(print_scattering_function): Same.
|
(print_scattering_functions): Same.
|
(print_scattering_functions): Same.
|
(debug_scattering_function): Same.
|
(debug_scattering_function): Same.
|
(debug_scattering_functions): Same.
|
(debug_scattering_functions): Same.
|
|
|
2010-03-31 Sebastian Pop
|
2010-03-31 Sebastian Pop
|
|
|
* graphite-poly.c (print_scattering_function_1): New.
|
* graphite-poly.c (print_scattering_function_1): New.
|
(print_scattering_function): Call it.
|
(print_scattering_function): Call it.
|
(print_scop_params): Remove spaces at the end of lines.
|
(print_scop_params): Remove spaces at the end of lines.
|
(print_cloog): New.
|
(print_cloog): New.
|
(debug_cloog): New.
|
(debug_cloog): New.
|
* graphite-poly.h (print_cloog): Declared.
|
* graphite-poly.h (print_cloog): Declared.
|
(debug_cloog): Declared.
|
(debug_cloog): Declared.
|
|
|
2010-03-31 Sebastian Pop
|
2010-03-31 Sebastian Pop
|
|
|
* graphite-sese-to-poly.c (graphite_loop_normal_form): Add the IV bump
|
* graphite-sese-to-poly.c (graphite_loop_normal_form): Add the IV bump
|
in loop->header.
|
in loop->header.
|
* tree-flow.h (canonicalize_loop_ivs): Updated declaration.
|
* tree-flow.h (canonicalize_loop_ivs): Updated declaration.
|
* tree-parloops.c (gen_parallel_loop): Add the IV bump in loop->latch.
|
* tree-parloops.c (gen_parallel_loop): Add the IV bump in loop->latch.
|
* tree-ssa-loop-manip.c (canonicalize_loop_ivs): Add a new parameter
|
* tree-ssa-loop-manip.c (canonicalize_loop_ivs): Add a new parameter
|
to switch between adding the IV bump in loop->latch or in loop->header.
|
to switch between adding the IV bump in loop->latch or in loop->header.
|
|
|
2010-03-31 Sebastian Pop
|
2010-03-31 Sebastian Pop
|
|
|
* graphite-poly.c (print_scattering_function): Pretty print following
|
* graphite-poly.c (print_scattering_function): Pretty print following
|
the scoplib format.
|
the scoplib format.
|
(print_pdr): Same.
|
(print_pdr): Same.
|
(print_pbb_domain): Same.
|
(print_pbb_domain): Same.
|
(dump_gbb_cases): Same.
|
(dump_gbb_cases): Same.
|
(dump_gbb_conditions): Same.
|
(dump_gbb_conditions): Same.
|
(print_pdrs): Same.
|
(print_pdrs): Same.
|
(print_pbb): Same.
|
(print_pbb): Same.
|
(print_scop_params): Same.
|
(print_scop_params): Same.
|
(print_scop_context): Same.
|
(print_scop_context): Same.
|
(print_scop): Same.
|
(print_scop): Same.
|
(print_pbb_body): New.
|
(print_pbb_body): New.
|
(lst_indent_to): New.
|
(lst_indent_to): New.
|
(print_lst): Start new lines with a #.
|
(print_lst): Start new lines with a #.
|
* graphite-poly.h (pbb_bb): New.
|
* graphite-poly.h (pbb_bb): New.
|
(pbb_index): Use pbb_bb.
|
(pbb_index): Use pbb_bb.
|
* graphite-ppl.c (ppl_print_powerset_matrix): Print the number of
|
* graphite-ppl.c (ppl_print_powerset_matrix): Print the number of
|
disjuncts.
|
disjuncts.
|
* tree-data-ref.c (dump_data_reference): Start new lines with a #.
|
* tree-data-ref.c (dump_data_reference): Start new lines with a #.
|
|
|
2010-03-31 Jakub Jelinek
|
2010-03-31 Jakub Jelinek
|
|
|
* dwarf2out.c (size_of_die): For -gdwarf-4 use
|
* dwarf2out.c (size_of_die): For -gdwarf-4 use
|
uleb128 size instead of fixed 1 or 2 for dw_val_class_loc
|
uleb128 size instead of fixed 1 or 2 for dw_val_class_loc
|
and 0 instead of 1 for dw_val_class_flag.
|
and 0 instead of 1 for dw_val_class_flag.
|
(value_format): For -gdwarf-4 use DW_FORM_sec_offset for
|
(value_format): For -gdwarf-4 use DW_FORM_sec_offset for
|
dw_val_class_range_list, dw_val_class_loc_list,
|
dw_val_class_range_list, dw_val_class_loc_list,
|
dw_val_class_lineptr and dw_val_class_macptr, use
|
dw_val_class_lineptr and dw_val_class_macptr, use
|
DW_FORM_flag_present for dw_val_class_flag and
|
DW_FORM_flag_present for dw_val_class_flag and
|
DW_FORM_exprloc for dw_val_class_loc.
|
DW_FORM_exprloc for dw_val_class_loc.
|
(output_die): For -gdwarf-4 print dw_val_class_loc
|
(output_die): For -gdwarf-4 print dw_val_class_loc
|
size as uleb128 instead of 1 or 2 bytes and don't print
|
size as uleb128 instead of 1 or 2 bytes and don't print
|
anything for dw_val_class_flag.
|
anything for dw_val_class_flag.
|
|
|
* var-tracking.c (vt_init_cfa_base): Use cselib_lookup_from_insn
|
* var-tracking.c (vt_init_cfa_base): Use cselib_lookup_from_insn
|
instead of cselib_lookup following by tweaking locs->setting_insn.
|
instead of cselib_lookup following by tweaking locs->setting_insn.
|
|
|
PR bootstrap/43596
|
PR bootstrap/43596
|
* cselib.c (cselib_process_insn): Clear cselib_current_insn
|
* cselib.c (cselib_process_insn): Clear cselib_current_insn
|
even before returning from label, setjmp call or volatile asm
|
even before returning from label, setjmp call or volatile asm
|
handling.
|
handling.
|
|
|
2010-03-31 Richard Guenther
|
2010-03-31 Richard Guenther
|
|
|
PR middle-end/43600
|
PR middle-end/43600
|
* cgraphunit.c (cgraph_output_in_order): Do not allocate
|
* cgraphunit.c (cgraph_output_in_order): Do not allocate
|
temporary data on stack.
|
temporary data on stack.
|
|
|
2010-03-31 Rainer Orth
|
2010-03-31 Rainer Orth
|
|
|
* config/sparc/sysv4.h (PUSHSECTION_FORMAT): Remove undef.
|
* config/sparc/sysv4.h (PUSHSECTION_FORMAT): Remove undef.
|
(PUSHSECTION_ASM_OP): Remove.
|
(PUSHSECTION_ASM_OP): Remove.
|
(POPSECTION_ASM_OP): Remove.
|
(POPSECTION_ASM_OP): Remove.
|
(PUSHSECTION_FORMAT): Remove.
|
(PUSHSECTION_FORMAT): Remove.
|
* config/sol2.h (PUSHSECTION_FORMAT): Define.
|
* config/sol2.h (PUSHSECTION_FORMAT): Define.
|
* config/sparc/sol2.h [!USE_GAS] (PUSHSECTION_FORMAT): Redefine.
|
* config/sparc/sol2.h [!USE_GAS] (PUSHSECTION_FORMAT): Redefine.
|
* config/sol2.c (solaris_output_init_fini): Use it.
|
* config/sol2.c (solaris_output_init_fini): Use it.
|
|
|
2010-03-31 Jie Zhang
|
2010-03-31 Jie Zhang
|
|
|
PR 43574
|
PR 43574
|
* opt-functions.awk (var_type_struct): Use signed char type
|
* opt-functions.awk (var_type_struct): Use signed char type
|
for simple variables.
|
for simple variables.
|
|
|
2010-03-31 Rainer Orth
|
2010-03-31 Rainer Orth
|
|
|
* config/sol2.c: Include output.h.
|
* config/sol2.c: Include output.h.
|
(solaris_assemble_visibility): New function.
|
(solaris_assemble_visibility): New function.
|
* config/t-sol2 (sol2.o): Add output.h dependency.
|
* config/t-sol2 (sol2.o): Add output.h dependency.
|
* config/sol2-protos.h (solaris_assemble_visibility): Declare.
|
* config/sol2-protos.h (solaris_assemble_visibility): Declare.
|
* config/sol2.h [!USE_GAS] (TARGET_ASM_ASSEMBLE_VISIBILITY):
|
* config/sol2.h [!USE_GAS] (TARGET_ASM_ASSEMBLE_VISIBILITY):
|
Redefine.
|
Redefine.
|
|
|
2010-03-31 Jakub Jelinek
|
2010-03-31 Jakub Jelinek
|
|
|
PR target/43580
|
PR target/43580
|
* config/arm/arm.c (arm_save_coproc_regs): Use Pmode instead of
|
* config/arm/arm.c (arm_save_coproc_regs): Use Pmode instead of
|
V2SImode or XFmode on PRE_DEC.
|
V2SImode or XFmode on PRE_DEC.
|
|
|
PR debug/43557
|
PR debug/43557
|
* cfgexpand.c (expand_debug_expr): Handle VOIDmode mode like
|
* cfgexpand.c (expand_debug_expr): Handle VOIDmode mode like
|
BLKmode.
|
BLKmode.
|
|
|
2010-03-31 Jie Zhang
|
2010-03-31 Jie Zhang
|
|
|
PR 43562
|
PR 43562
|
* reload.h (caller_save_initialized_p): Declare.
|
* reload.h (caller_save_initialized_p): Declare.
|
* toplev.c (backend_init_target): Don't call
|
* toplev.c (backend_init_target): Don't call
|
init_caller_save but set caller_save_initialized_p to false.
|
init_caller_save but set caller_save_initialized_p to false.
|
* caller-save.c (caller_save_initialized_p): Define.
|
* caller-save.c (caller_save_initialized_p): Define.
|
(init_caller_save): Check caller_save_initialized_p.
|
(init_caller_save): Check caller_save_initialized_p.
|
* ira.c (ira): Call init_caller_save if flag_caller_saves.
|
* ira.c (ira): Call init_caller_save if flag_caller_saves.
|
|
|
2010-03-31 Rainer Orth
|
2010-03-31 Rainer Orth
|
|
|
PR target/39048
|
PR target/39048
|
* config.gcc (i[34567]86-*-solaris2*): Add i386/t-fprules-softfp
|
* config.gcc (i[34567]86-*-solaris2*): Add i386/t-fprules-softfp
|
and soft-fp/t-softfp to tmake_file.
|
and soft-fp/t-softfp to tmake_file.
|
* config/i386/sol2.h (LIBGCC2_HAS_TF_MODE): Redefine.
|
* config/i386/sol2.h (LIBGCC2_HAS_TF_MODE): Redefine.
|
(LIBGCC2_TF_CEXT): Define.
|
(LIBGCC2_TF_CEXT): Define.
|
(TF_SIZE): Define.
|
(TF_SIZE): Define.
|
|
|
2010-03-30 Alexandre Oliva
|
2010-03-30 Alexandre Oliva
|
|
|
PR debug/42977
|
PR debug/42977
|
* cselib.c (n_useless_values): Document handling of debug locs.
|
* cselib.c (n_useless_values): Document handling of debug locs.
|
(n_useless_debug_values, n_debug_values): New variables.
|
(n_useless_debug_values, n_debug_values): New variables.
|
(new_elt_loc_list): Don't add to debug values, keep count.
|
(new_elt_loc_list): Don't add to debug values, keep count.
|
(promote_debug_loc): New.
|
(promote_debug_loc): New.
|
(cselib_reset_table): Zero new variables.
|
(cselib_reset_table): Zero new variables.
|
(entry_and_rtx_equal_p): Promote debug locs.
|
(entry_and_rtx_equal_p): Promote debug locs.
|
(discard_useless_locs): Increment n_useless_debug_values for
|
(discard_useless_locs): Increment n_useless_debug_values for
|
debug values.
|
debug values.
|
(remove_useless_values): Adjust n_useless_values and n_debug_values
|
(remove_useless_values): Adjust n_useless_values and n_debug_values
|
with n_useless_debug_values.
|
with n_useless_debug_values.
|
(add_mem_for_addr): Promote debug locs.
|
(add_mem_for_addr): Promote debug locs.
|
(cselib_lookup_mem): Likewise.
|
(cselib_lookup_mem): Likewise.
|
(cselib_lookup_addr): Renamed to...
|
(cselib_lookup_addr): Renamed to...
|
(cselib_lookup_addr_1): ... this. Promote debug locs. Don't call...
|
(cselib_lookup_addr_1): ... this. Promote debug locs. Don't call...
|
(cselib_log_lookup): ... this. Turn into...
|
(cselib_log_lookup): ... this. Turn into...
|
(cselib_lookup_addr): ... new wrapper.
|
(cselib_lookup_addr): ... new wrapper.
|
(cselib_lookup_from_insn): New.
|
(cselib_lookup_from_insn): New.
|
(cselib_invalidate_regno): Increment n_useless_debug_values for
|
(cselib_invalidate_regno): Increment n_useless_debug_values for
|
debug values.
|
debug values.
|
(cselib_invalidate_mem): Likewise.
|
(cselib_invalidate_mem): Likewise.
|
(cselib_process_insn): Take n_deleted and n_debug_values into
|
(cselib_process_insn): Take n_deleted and n_debug_values into
|
account to guard remove_useless_value call.
|
account to guard remove_useless_value call.
|
(cselib_finish): Zero n_useless_debug_values.
|
(cselib_finish): Zero n_useless_debug_values.
|
* cselib.h (cselib_lookup_from_insn): Declare.
|
* cselib.h (cselib_lookup_from_insn): Declare.
|
* sched-deps.c (sched_analyze_1): Use cselib_lookup_from_insn.
|
* sched-deps.c (sched_analyze_1): Use cselib_lookup_from_insn.
|
(sched_analyze_2): Likewise.
|
(sched_analyze_2): Likewise.
|
|
|
2010-03-30 Jakub Jelinek
|
2010-03-30 Jakub Jelinek
|
|
|
* var-tracking.c (use_narrower_mode_test, use_narrower_mode): New
|
* var-tracking.c (use_narrower_mode_test, use_narrower_mode): New
|
functions.
|
functions.
|
(adjust_mems): Replace narrowing SUBREG of expression containing
|
(adjust_mems): Replace narrowing SUBREG of expression containing
|
just PLUS, MINUS, MULT and ASHIFT of registers and constants
|
just PLUS, MINUS, MULT and ASHIFT of registers and constants
|
with operations in the narrower mode.
|
with operations in the narrower mode.
|
|
|
PR debug/43593
|
PR debug/43593
|
* var-tracking.c (dataflow_set_clear_at_call): Invalidate just
|
* var-tracking.c (dataflow_set_clear_at_call): Invalidate just
|
regs_invalidated_by_call instead all call_used_reg_set registers.
|
regs_invalidated_by_call instead all call_used_reg_set registers.
|
|
|
2010-03-30 Sebastian Pop
|
2010-03-30 Sebastian Pop
|
|
|
PR middle-end/43430
|
PR middle-end/43430
|
* tree-vect-slp.c (vect_get_and_check_slp_defs): Replace type
|
* tree-vect-slp.c (vect_get_and_check_slp_defs): Replace type
|
pointer comparisons with types_compatible_p.
|
pointer comparisons with types_compatible_p.
|
* tree-vect-stmts.c (vectorizable_call): Same.
|
* tree-vect-stmts.c (vectorizable_call): Same.
|
(vectorizable_condition): Same.
|
(vectorizable_condition): Same.
|
|
|
2010-03-30 Andreas Krebbel
|
2010-03-30 Andreas Krebbel
|
|
|
* config/s390/s390.c (s390_emit_prologue): Omit issuing a dynamic
|
* config/s390/s390.c (s390_emit_prologue): Omit issuing a dynamic
|
stack check if the mask would be zero.
|
stack check if the mask would be zero.
|
|
|
2010-03-30 Seongbae Park
|
2010-03-30 Seongbae Park
|
Jack Howarth
|
Jack Howarth
|
|
|
* tree-profile.c (tree_init_ic_make_global_vars): Make static
|
* tree-profile.c (tree_init_ic_make_global_vars): Make static
|
variables TLS.
|
variables TLS.
|
|
|
2010-03-30 Joseph Myers
|
2010-03-30 Joseph Myers
|
|
|
PR other/25232
|
PR other/25232
|
* libgcc-std.ver (GCC_4.5.0): Define version. Include __unordxf2
|
* libgcc-std.ver (GCC_4.5.0): Define version. Include __unordxf2
|
and __unordtf2.
|
and __unordtf2.
|
* config/bfin/libgcc-bfin.ver (GCC_4.5.0): Define version.
|
* config/bfin/libgcc-bfin.ver (GCC_4.5.0): Define version.
|
Include ___unordxf2 and ___unordtf2.
|
Include ___unordxf2 and ___unordtf2.
|
* config/i386/libgcc-glibc.ver: Do not define inheritance from
|
* config/i386/libgcc-glibc.ver: Do not define inheritance from
|
GCC_4.4.0 here.
|
GCC_4.4.0 here.
|
|
|
2010-03-30 Tarik Graba
|
2010-03-30 Tarik Graba
|
|
|
* config/lm32/t-lm32: New file.
|
* config/lm32/t-lm32: New file.
|
* config.gcc: Use the above file when targetting lm32.
|
* config.gcc: Use the above file when targetting lm32.
|
|
|
2010-03-28 Duncan Sands
|
2010-03-28 Duncan Sands
|
|
|
* Makefile.in (PLUGIN_HEADERS): Add except.h.
|
* Makefile.in (PLUGIN_HEADERS): Add except.h.
|
|
|
2010-03-29 Sebastian Pop
|
2010-03-29 Sebastian Pop
|
|
|
PR middle-end/43431
|
PR middle-end/43431
|
* tree-vect-loop.c (vect_estimate_min_profitable_iters):
|
* tree-vect-loop.c (vect_estimate_min_profitable_iters):
|
Improve vectorization cost model diagnostic.
|
Improve vectorization cost model diagnostic.
|
|
|
2010-03-29 Sebastian Pop
|
2010-03-29 Sebastian Pop
|
|
|
PR middle-end/43436
|
PR middle-end/43436
|
* tree-vect-data-refs.c (vect_analyze_data_refs): When
|
* tree-vect-data-refs.c (vect_analyze_data_refs): When
|
compute_data_dependences_for_loop returns false, early exit
|
compute_data_dependences_for_loop returns false, early exit
|
and output an extra diagnostic for the failed data reference
|
and output an extra diagnostic for the failed data reference
|
analysis.
|
analysis.
|
|
|
2010-03-29 Richard Guenther
|
2010-03-29 Richard Guenther
|
|
|
PR tree-optimization/43560
|
PR tree-optimization/43560
|
* tree-ssa-loop-im.c (ref_always_accessed_p): Add store_p parameter.
|
* tree-ssa-loop-im.c (ref_always_accessed_p): Add store_p parameter.
|
(can_sm_ref_p): Treat stores to readonly locations as trapping.
|
(can_sm_ref_p): Treat stores to readonly locations as trapping.
|
|
|
2010-03-29 Jie Zhang
|
2010-03-29 Jie Zhang
|
|
|
PR 43564
|
PR 43564
|
* toplev.c (process_options): Set optimization_default_node
|
* toplev.c (process_options): Set optimization_default_node
|
and optimization_current_node.
|
and optimization_current_node.
|
* opts.c (decode_options): Don't set optimization_default_node
|
* opts.c (decode_options): Don't set optimization_default_node
|
and optimization_current_node.
|
and optimization_current_node.
|
|
|
2010-03-29 Ralf Corsépius
|
2010-03-29 Ralf Corsépius
|
|
|
* config/rtems.h: Abandon -qrtems_debug.
|
* config/rtems.h: Abandon -qrtems_debug.
|
|
|
2010-03-28 Jan Hubicka
|
2010-03-28 Jan Hubicka
|
|
|
PR tree-optimization/43505
|
PR tree-optimization/43505
|
* cgraph.c (cgraph_clone_node): When clonning a clone, replacement
|
* cgraph.c (cgraph_clone_node): When clonning a clone, replacement
|
map should not be copied.
|
map should not be copied.
|
|
|
2010-03-27 John David Anglin
|
2010-03-27 John David Anglin
|
|
|
PR middle-end/41674
|
PR middle-end/41674
|
* cgraphunit.c (cgraph_build_static_cdtor): If target doesn't have
|
* cgraphunit.c (cgraph_build_static_cdtor): If target doesn't have
|
cdtors, set DECL_PRESERVE_P.
|
cdtors, set DECL_PRESERVE_P.
|
* ipa.c (cgraph_externally_visible_p): Return true if declaration
|
* ipa.c (cgraph_externally_visible_p): Return true if declaration
|
should be preseved.
|
should be preseved.
|
|
|
2010-03-27 Uros Bizjak
|
2010-03-27 Uros Bizjak
|
|
|
PR tree-optimization/43528
|
PR tree-optimization/43528
|
* stor-layout.c (place_field): Check that constant fits into
|
* stor-layout.c (place_field): Check that constant fits into
|
unsigned HWI when skipping calculation of MS bitfield layout.
|
unsigned HWI when skipping calculation of MS bitfield layout.
|
|
|
2010-03-27 Jan Hubicka
|
2010-03-27 Jan Hubicka
|
|
|
PR middle-end/43391
|
PR middle-end/43391
|
* varasm.c (make_decl_rtl): Deal with COMMON flag to make
|
* varasm.c (make_decl_rtl): Deal with COMMON flag to make
|
notice_global_symbol work.
|
notice_global_symbol work.
|
|
|
2010-03-27 Jakub Jelinek
|
2010-03-27 Jakub Jelinek
|
|
|
* dwarf2out.c (dwarf2_debug_hooks): Use dwarf2out_function_decl
|
* dwarf2out.c (dwarf2_debug_hooks): Use dwarf2out_function_decl
|
instead of dwarf2out_decl.
|
instead of dwarf2out_decl.
|
(struct var_loc_node): Remove section_label field.
|
(struct var_loc_node): Remove section_label field.
|
(dwarf2out_function_decl): New function.
|
(dwarf2out_function_decl): New function.
|
(dwarf2out_var_location): Don't set section_label field.
|
(dwarf2out_var_location): Don't set section_label field.
|
(dwarf2out_begin_function): Don't empty decl_loc_table here.
|
(dwarf2out_begin_function): Don't empty decl_loc_table here.
|
|
|
2010-03-26 Michael Meissner
|
2010-03-26 Michael Meissner
|
|
|
PR tree-optimization/43544
|
PR tree-optimization/43544
|
* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION):
|
* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION):
|
First argument for builtin vectorized function hook is now a
|
First argument for builtin vectorized function hook is now a
|
tree to be able to distinguish between machine specific and
|
tree to be able to distinguish between machine specific and
|
standard builtins.
|
standard builtins.
|
* targhooks.c (default_builtin_vectorized_function): Ditto.
|
* targhooks.c (default_builtin_vectorized_function): Ditto.
|
* targhooks.h (default_builtin_vectorized_function): Ditto.
|
* targhooks.h (default_builtin_vectorized_function): Ditto.
|
* target.h (struct gcc_target): Ditto.
|
* target.h (struct gcc_target): Ditto.
|
* tree-vect-stmts.c (vectorizable_function): Ditto.
|
* tree-vect-stmts.c (vectorizable_function): Ditto.
|
* config/i386/i386.c (ix86_builtin_vectorized_function): Ditto.
|
* config/i386/i386.c (ix86_builtin_vectorized_function): Ditto.
|
* config/rs6000/rs6000.c (rs6000_builtin_vectorized_function):
|
* config/rs6000/rs6000.c (rs6000_builtin_vectorized_function):
|
Ditto.
|
Ditto.
|
|
|
2010-03-26 Joseph Myers
|
2010-03-26 Joseph Myers
|
|
|
PR c/43381
|
PR c/43381
|
* c-decl.c (get_parm_info): Assert that decl going in OTHERS has a
|
* c-decl.c (get_parm_info): Assert that decl going in OTHERS has a
|
nested binding iff it is a FUNCTION_DECL.
|
nested binding iff it is a FUNCTION_DECL.
|
(store_parm_decls_newstyle): Pass nested=true to bind for
|
(store_parm_decls_newstyle): Pass nested=true to bind for
|
FUNCTION_DECLs amongst parameters.
|
FUNCTION_DECLs amongst parameters.
|
|
|
2010-03-26 Jakub Jelinek
|
2010-03-26 Jakub Jelinek
|
|
|
* var-tracking.c (vt_expand_loc_callback): Don't run
|
* var-tracking.c (vt_expand_loc_callback): Don't run
|
cselib_expand_value_rtx_cb in dummy mode if
|
cselib_expand_value_rtx_cb in dummy mode if
|
cselib_dummy_expand_value_rtx_cb returned false.
|
cselib_dummy_expand_value_rtx_cb returned false.
|
|
|
* var-tracking.c (emit_note_insn_var_location): For one part
|
* var-tracking.c (emit_note_insn_var_location): For one part
|
notes with offset 0, don't add EXPR_LIST around the location.
|
notes with offset 0, don't add EXPR_LIST around the location.
|
* dwarf2out.c (loc_descriptor, dw_loc_list_1,
|
* dwarf2out.c (loc_descriptor, dw_loc_list_1,
|
add_location_or_const_value_attribute): Adjust for that change.
|
add_location_or_const_value_attribute): Adjust for that change.
|
|
|
PR debug/43540
|
PR debug/43540
|
* dwarf2out.c (reg_save): For DW_CFA_expression put regnum
|
* dwarf2out.c (reg_save): For DW_CFA_expression put regnum
|
into first operand and location into second.
|
into first operand and location into second.
|
(dw_cfi_oprnd1_desc): Return dw_cfi_oprnd_reg_num instead of
|
(dw_cfi_oprnd1_desc): Return dw_cfi_oprnd_reg_num instead of
|
dw_cfi_oprnd_loc for DW_CFA_expression.
|
dw_cfi_oprnd_loc for DW_CFA_expression.
|
(dw_cfi_oprnd2_desc): Return dw_cfi_oprnd_loc for DW_CFA_expression.
|
(dw_cfi_oprnd2_desc): Return dw_cfi_oprnd_loc for DW_CFA_expression.
|
(output_cfa_loc, output_cfa_loc_raw): For DW_CFA_expression
|
(output_cfa_loc, output_cfa_loc_raw): For DW_CFA_expression
|
assume first argument is regnum and second argument is location.
|
assume first argument is regnum and second argument is location.
|
|
|
2010-03-26 Uros Bizjak
|
2010-03-26 Uros Bizjak
|
|
|
PR target/42113
|
PR target/42113
|
* config/alpha/alpha.md (*cmp_sadd_si): Change mode
|
* config/alpha/alpha.md (*cmp_sadd_si): Change mode
|
of scratch register to DImode. Split to DImode comparison operator.
|
of scratch register to DImode. Split to DImode comparison operator.
|
Use SImode subreg of scratch register in the multiplication.
|
Use SImode subreg of scratch register in the multiplication.
|
(*cmp_sadd_sidi): Ditto.
|
(*cmp_sadd_sidi): Ditto.
|
(*cmp_ssub_si): Ditto.
|
(*cmp_ssub_si): Ditto.
|
(*cmp_ssub_sidi): Ditto.
|
(*cmp_ssub_sidi): Ditto.
|
|
|
2010-03-26 Uros Bizjak
|
2010-03-26 Uros Bizjak
|
|
|
PR target/43524
|
PR target/43524
|
* config/i386/i386.c (ix86_expand_prologue) [TARGET_STACK_PROBE]:
|
* config/i386/i386.c (ix86_expand_prologue) [TARGET_STACK_PROBE]:
|
Remove invalid assert and wrong comment.
|
Remove invalid assert and wrong comment.
|
|
|
2010-03-26 Jakub Jelinek
|
2010-03-26 Jakub Jelinek
|
|
|
PR debug/43516
|
PR debug/43516
|
* flags.h (final_insns_dump_p): New extern.
|
* flags.h (final_insns_dump_p): New extern.
|
* final.c (final_insns_dump_p): New variable.
|
* final.c (final_insns_dump_p): New variable.
|
(rest_of_clean_state): Set it before -fdump-final-insns=
|
(rest_of_clean_state): Set it before -fdump-final-insns=
|
dumping, clear afterwards.
|
dumping, clear afterwards.
|
* print-rtl.c (print_rtx): If final_insns_dump_p don't dump
|
* print-rtl.c (print_rtx): If final_insns_dump_p don't dump
|
MEM_ALIAS_SET on MEMs.
|
MEM_ALIAS_SET on MEMs.
|
|
|
2010-03-26 David S. Miller
|
2010-03-26 David S. Miller
|
|
|
* configure.ac: Fix sparc GOTDATA_OP bug check.
|
* configure.ac: Fix sparc GOTDATA_OP bug check.
|
* configure: Rebuild.
|
* configure: Rebuild.
|
|
|
2010-03-26 Alan Modra
|
2010-03-26 Alan Modra
|
|
|
* config/rs6000/rs6000.md (cmptf_internal2): Correct comparison.
|
* config/rs6000/rs6000.md (cmptf_internal2): Correct comparison.
|
|
|
2010-03-25 Rainer Orth
|
2010-03-25 Rainer Orth
|
|
|
* doc/tm.texi (Sections): Document TLS_COMMON_ASM_OP,
|
* doc/tm.texi (Sections): Document TLS_COMMON_ASM_OP,
|
TLS_SECTION_ASM_FLAG.
|
TLS_SECTION_ASM_FLAG.
|
|
|
2010-03-25 Jakub Jelinek
|
2010-03-25 Jakub Jelinek
|
|
|
PR bootstrap/43511
|
PR bootstrap/43511
|
* config/i386/i386.c (ix86_code_end): Set DECL_WEAK if TARGET_MACHO.
|
* config/i386/i386.c (ix86_code_end): Set DECL_WEAK if TARGET_MACHO.
|
Clear first_function_block_is_cold.
|
Clear first_function_block_is_cold.
|
|
|
PR c/43385
|
PR c/43385
|
* gimplify.c (gimple_boolify): Only recurse on __builtin_expect
|
* gimplify.c (gimple_boolify): Only recurse on __builtin_expect
|
argument if the argument is truth_value_p.
|
argument if the argument is truth_value_p.
|
|
|
2010-03-24 Michael Meissner
|
2010-03-24 Michael Meissner
|
|
|
* config/rs6000/constraints.md: Update copyright year for my changes.
|
* config/rs6000/constraints.md: Update copyright year for my changes.
|
|
|
PR target/43484
|
PR target/43484
|
* config/rs6000/rs6000.c (rs6000_split_multireg_move): If r0 is
|
* config/rs6000/rs6000.c (rs6000_split_multireg_move): If r0 is
|
used in reg+reg addressing, swap registers.
|
used in reg+reg addressing, swap registers.
|
|
|
2010-03-24 Jakub Jelinek
|
2010-03-24 Jakub Jelinek
|
|
|
PR debug/43293
|
PR debug/43293
|
* target.h (struct gcc_target): Add code_end hook.
|
* target.h (struct gcc_target): Add code_end hook.
|
* target-def.h (TARGET_ASM_CODE_END): Define to hook_void_void
|
* target-def.h (TARGET_ASM_CODE_END): Define to hook_void_void
|
if not yet defined.
|
if not yet defined.
|
(TARGET_ASM_OUT): Add TARGET_ASM_CODE_END.
|
(TARGET_ASM_OUT): Add TARGET_ASM_CODE_END.
|
* toplev.c (compile_file): Call targetm.asm_out.code_end
|
* toplev.c (compile_file): Call targetm.asm_out.code_end
|
hook before unwind info/debug info output.
|
hook before unwind info/debug info output.
|
* config/i386/winnt.c (i386_pe_file_end): Don't call ix86_file_end.
|
* config/i386/winnt.c (i386_pe_file_end): Don't call ix86_file_end.
|
* config/i386/linux.h (NEED_INDICATE_EXEC_STACK): Don't define.
|
* config/i386/linux.h (NEED_INDICATE_EXEC_STACK): Don't define.
|
(TARGET_ASM_FILE_END): Define to file_end_indicate_exec_stack.
|
(TARGET_ASM_FILE_END): Define to file_end_indicate_exec_stack.
|
* config/i386/linux64.h (NEED_INDICATE_EXEC_STACK): Don't define.
|
* config/i386/linux64.h (NEED_INDICATE_EXEC_STACK): Don't define.
|
(TARGET_ASM_FILE_END): Define to file_end_indicate_exec_stack.
|
(TARGET_ASM_FILE_END): Define to file_end_indicate_exec_stack.
|
* config/i386/i386.c (ix86_file_end): Renamed to...
|
* config/i386/i386.c (ix86_file_end): Renamed to...
|
(ix86_code_end): ... this. Make static. Don't call
|
(ix86_code_end): ... this. Make static. Don't call
|
file_end_indicate_exec_stack. Emit unwind info using
|
file_end_indicate_exec_stack. Emit unwind info using
|
final_start_function/final_end_function.
|
final_start_function/final_end_function.
|
(darwin_x86_file_end): Remove.
|
(darwin_x86_file_end): Remove.
|
(TARGET_ASM_CODE_END): Define.
|
(TARGET_ASM_CODE_END): Define.
|
* config/i386/i386.h (TARGET_ASM_FILE_END,
|
* config/i386/i386.h (TARGET_ASM_FILE_END,
|
NEED_INDICATE_EXEC_STACK): Don't define.
|
NEED_INDICATE_EXEC_STACK): Don't define.
|
* config/i386/darwin.h (darwin_x86_file_end): Remove prototype.
|
* config/i386/darwin.h (darwin_x86_file_end): Remove prototype.
|
(TARGET_ASM_FILE_END): Define to darwin_file_end.
|
(TARGET_ASM_FILE_END): Define to darwin_file_end.
|
* config/i386/i386-protos.h (ix86_file_end): Remove prototype.
|
* config/i386/i386-protos.h (ix86_file_end): Remove prototype.
|
* doc/tm.texi (TARGET_ASM_CODE_END): Document.
|
* doc/tm.texi (TARGET_ASM_CODE_END): Document.
|
|
|
PR target/43498
|
PR target/43498
|
* config/i386/i386.c (x86_output_mi_thunk): Call final_start_function
|
* config/i386/i386.c (x86_output_mi_thunk): Call final_start_function
|
at the beginning and final_end_function at the end.
|
at the beginning and final_end_function at the end.
|
* config/s390/s390.c (s390_output_mi_thunk): Likewise.
|
* config/s390/s390.c (s390_output_mi_thunk): Likewise.
|
|
|
2010-03-24 Rainer Orth
|
2010-03-24 Rainer Orth
|
|
|
* configure.ac (i[34567]86-*-*): Handle Solaris 2/x86 TLS support
|
* configure.ac (i[34567]86-*-*): Handle Solaris 2/x86 TLS support
|
and Sun as TLS syntax.
|
and Sun as TLS syntax.
|
(TLS_SECTION_ASM_FLAG) [on_solaris && !gas_flag]: Define.
|
(TLS_SECTION_ASM_FLAG) [on_solaris && !gas_flag]: Define.
|
* configure: Regenerate.
|
* configure: Regenerate.
|
* config.in: Regenerate.
|
* config.in: Regenerate.
|
* varasm.c (TLS_SECTION_ASM_FLAG): Define default.
|
* varasm.c (TLS_SECTION_ASM_FLAG): Define default.
|
(default_elf_asm_named_section): Use it.
|
(default_elf_asm_named_section): Use it.
|
* config/i386/i386.c (output_pic_addr_const): Lowercase @DTPOFF.
|
* config/i386/i386.c (output_pic_addr_const): Lowercase @DTPOFF.
|
(i386_output_dwarf_dtprel): Likewise.
|
(i386_output_dwarf_dtprel): Likewise.
|
(output_addr_const_extra): Likewise.
|
(output_addr_const_extra): Likewise.
|
(output_pic_addr_const): Lowercase @GOTTPOFF.
|
(output_pic_addr_const): Lowercase @GOTTPOFF.
|
(output_addr_const_extra): Likewise.
|
(output_addr_const_extra): Likewise.
|
(output_pic_addr_const): Lowercase @GOTNTPOFF.
|
(output_pic_addr_const): Lowercase @GOTNTPOFF.
|
(output_addr_const_extra): Likewise.
|
(output_addr_const_extra): Likewise.
|
(output_pic_addr_const): Lowercase @INDNTPOFF.
|
(output_pic_addr_const): Lowercase @INDNTPOFF.
|
(output_addr_const_extra): Likewise.
|
(output_addr_const_extra): Likewise.
|
(output_pic_addr_const): Lowercase @NTPOFF.
|
(output_pic_addr_const): Lowercase @NTPOFF.
|
(output_addr_const_extra): Likewise.
|
(output_addr_const_extra): Likewise.
|
(output_pic_addr_const): Lowercase @TPOFF.
|
(output_pic_addr_const): Lowercase @TPOFF.
|
(output_addr_const_extra): Likewise.
|
(output_addr_const_extra): Likewise.
|
* config/i386/i386.md (*tls_global_dynamic_32_gnu): Lowercase @TLSGD.
|
* config/i386/i386.md (*tls_global_dynamic_32_gnu): Lowercase @TLSGD.
|
(*tls_global_dynamic_64): Likewise.
|
(*tls_global_dynamic_64): Likewise.
|
(*tls_local_dynamic_base_32_gnu): Lowercase @TLSLDM.
|
(*tls_local_dynamic_base_32_gnu): Lowercase @TLSLDM.
|
(*tls_local_dynamic_base_64): Lowercase @TLSLD.
|
(*tls_local_dynamic_base_64): Lowercase @TLSLD.
|
|
|
* defaults.h (TLS_COMMON_ASM_OP): Provide default.
|
* defaults.h (TLS_COMMON_ASM_OP): Provide default.
|
(ASM_OUTPUT_TLS_COMMON): Use it.
|
(ASM_OUTPUT_TLS_COMMON): Use it.
|
* config/i386/sol2-gas.h (TLS_COMMON_ASM_OP): Undef.
|
* config/i386/sol2-gas.h (TLS_COMMON_ASM_OP): Undef.
|
|
|
PR target/38118
|
PR target/38118
|
* config.gcc (sparc*-*-solaris2*) [$gas=yes]: Add usegas.h to tm_file.
|
* config.gcc (sparc*-*-solaris2*) [$gas=yes]: Add usegas.h to tm_file.
|
* config/sparc/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Move ...
|
* config/sparc/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Move ...
|
* config/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): ... here.
|
* config/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): ... here.
|
* config/i386/sol2-10.h (ASM_OUTPUT_ALIGNED_COMMON): Redefine.
|
* config/i386/sol2-10.h (ASM_OUTPUT_ALIGNED_COMMON): Redefine.
|
* config/i386/sol2.h (TARGET_SUN_TLS): Redefine.
|
* config/i386/sol2.h (TARGET_SUN_TLS): Redefine.
|
(ASM_DECLARE_OBJECT_NAME) [!USE_GAS]: Redefine.
|
(ASM_DECLARE_OBJECT_NAME) [!USE_GAS]: Redefine.
|
|
|
2010-03-24 Rainer Orth
|
2010-03-24 Rainer Orth
|
|
|
* config/i386/i386.c (override_options): Don't accept
|
* config/i386/i386.c (override_options): Don't accept
|
-mtls-dialect=sun any longer.
|
-mtls-dialect=sun any longer.
|
* config/i386/i386.h (TARGET_SUN_TLS): Define as 0.
|
* config/i386/i386.h (TARGET_SUN_TLS): Define as 0.
|
* config/i386/i386.md (*tls_global_dynamic_32_sun): Remove.
|
* config/i386/i386.md (*tls_global_dynamic_32_sun): Remove.
|
(*tls_local_dynamic_base_32_sun): Likewise.
|
(*tls_local_dynamic_base_32_sun): Likewise.
|
* config/i386/sol2.h (TARGET_SUN_TLS): Redefine.
|
* config/i386/sol2.h (TARGET_SUN_TLS): Redefine.
|
|
|
2010-03-24 Jakub Jelinek
|
2010-03-24 Jakub Jelinek
|
|
|
PR debug/43508
|
PR debug/43508
|
* dwarf2out.c (mem_loc_descriptor): Don't ICE on
|
* dwarf2out.c (mem_loc_descriptor): Don't ICE on
|
VEC_{MERGE,SELECT,CONCAT,DUPLICATE}.
|
VEC_{MERGE,SELECT,CONCAT,DUPLICATE}.
|
|
|
PR debug/43479
|
PR debug/43479
|
* ira.c (adjust_cleared_regs): New function.
|
* ira.c (adjust_cleared_regs): New function.
|
(update_equiv_regs): Adjust cleared_regs in DEBUG_INSNs.
|
(update_equiv_regs): Adjust cleared_regs in DEBUG_INSNs.
|
|
|
PR debug/19192
|
PR debug/19192
|
PR debug/43479
|
PR debug/43479
|
* cfgexpand.c (gimple_assign_rhs_to_tree): Also set TREE_BLOCK
|
* cfgexpand.c (gimple_assign_rhs_to_tree): Also set TREE_BLOCK
|
from gimple_block.
|
from gimple_block.
|
* expr.c (expand_expr_real): Restore previous
|
* expr.c (expand_expr_real): Restore previous
|
curr_insn_source_location and curr_insn_block after
|
curr_insn_source_location and curr_insn_block after
|
expand_expr_real_1 call.
|
expand_expr_real_1 call.
|
(expand_expr_real_1) : Call expand_expr_real
|
(expand_expr_real_1) : Call expand_expr_real
|
instead of expand_expr_real_1.
|
instead of expand_expr_real_1.
|
|
|
2010-03-23 Vladimir Makarov
|
2010-03-23 Vladimir Makarov
|
|
|
PR rtl-optimization/43413
|
PR rtl-optimization/43413
|
* ira-color.c (setup_allocno_available_regs_num): Count prohibited
|
* ira-color.c (setup_allocno_available_regs_num): Count prohibited
|
hard regs too.
|
hard regs too.
|
|
|
2010-03-22 James E. Wilson
|
2010-03-22 James E. Wilson
|
|
|
PR target/43348
|
PR target/43348
|
* ia64.md (call_nogp, call_value_nogp, sibcall_nogp, call_gp,
|
* ia64.md (call_nogp, call_value_nogp, sibcall_nogp, call_gp,
|
call_value_gp, sibcall_gp): Use 's' constraint not 'i'.
|
call_value_gp, sibcall_gp): Use 's' constraint not 'i'.
|
|
|
2010-03-22 H.J. Lu
|
2010-03-22 H.J. Lu
|
|
|
* config/i386/i386.c (ix86_target_string): Add -mfma.
|
* config/i386/i386.c (ix86_target_string): Add -mfma.
|
Fix a typo in comment.
|
Fix a typo in comment.
|
|
|
2010-03-22 Mike Stump
|
2010-03-22 Mike Stump
|
|
|
PR target/23071
|
PR target/23071
|
* config/rs6000/rs6000.c (darwin_rs6000_special_round_type_align):
|
* config/rs6000/rs6000.c (darwin_rs6000_special_round_type_align):
|
Don't overly align based upon packed packed fields.
|
Don't overly align based upon packed packed fields.
|
|
|
2010-03-22 Jason Merrill
|
2010-03-22 Jason Merrill
|
|
|
* c-pretty-print.c (pp_c_specifier_qualifier_list) [VECTOR_TYPE]:
|
* c-pretty-print.c (pp_c_specifier_qualifier_list) [VECTOR_TYPE]:
|
Use () rather than [], and move before the element type.
|
Use () rather than [], and move before the element type.
|
|
|
2010-03-22 Rainer Orth
|
2010-03-22 Rainer Orth
|
|
|
* doc/configfiles.texi (Configuration Files): Removed
|
* doc/configfiles.texi (Configuration Files): Removed
|
fixinc/Makefile*, intl/Makefile.*.
|
fixinc/Makefile*, intl/Makefile.*.
|
* doc/makefile.texi: Fixed markup. Abstract from version
|
* doc/makefile.texi: Fixed markup. Abstract from version
|
control system used.
|
control system used.
|
(Makefile): Removed obsolete gcc/java/parse.y example.
|
(Makefile): Removed obsolete gcc/java/parse.y example.
|
* doc/sourcebuild.texi: Likewise.
|
* doc/sourcebuild.texi: Likewise.
|
(Top Level): Added config, gnattools, libdecnumber, libgcc,
|
(Top Level): Added config, gnattools, libdecnumber, libgcc,
|
libgomp, libssp. Removed fastjar.
|
libgomp, libssp. Removed fastjar.
|
(Miscellaneous Docs): Clarify location.
|
(Miscellaneous Docs): Clarify location.
|
Added COPYING3, COPYING3.LIB.
|
Added COPYING3, COPYING3.LIB.
|
(Front End Directory): Moved Make-lang.in entry to new subsubsection.
|
(Front End Directory): Moved Make-lang.in entry to new subsubsection.
|
|
|
2010-03-22 Rainer Orth
|
2010-03-22 Rainer Orth
|
|
|
PR target/38085
|
PR target/38085
|
* config/i386/i386.c (x86_function_profiler)
|
* config/i386/i386.c (x86_function_profiler)
|
[!NO_PROFILE_COUNTERS]: Fix typo.
|
[!NO_PROFILE_COUNTERS]: Fix typo.
|
* config/i386/gmon-sol2.c (_mcleanup) [__x86_64__]: Use call
|
* config/i386/gmon-sol2.c (_mcleanup) [__x86_64__]: Use call
|
instead of callq.
|
instead of callq.
|
|
|
2010-03-22 Janis Johnson
|
2010-03-22 Janis Johnson
|
Rainer Orth
|
Rainer Orth
|
|
|
* doc/sourcebuild.texi (Test Directives): Split into six
|
* doc/sourcebuild.texi (Test Directives): Split into six
|
subsections, with most of the current text in new subsections
|
subsections, with most of the current text in new subsections
|
Directives, Selectors, and Final Actions.
|
Directives, Selectors, and Final Actions.
|
(Directives): Split list of test directives into multiple
|
(Directives): Split list of test directives into multiple
|
subsubsections.
|
subsubsections.
|
(Selectors): Describe use and syntax of selectors.
|
(Selectors): Describe use and syntax of selectors.
|
(Effective-Target Keywords): Describe all existing keywords.
|
(Effective-Target Keywords): Describe all existing keywords.
|
(Add Options): Describe features for dg-add-options.
|
(Add Options): Describe features for dg-add-options.
|
(Require Support): Describe variants of dg-require-support.
|
(Require Support): Describe variants of dg-require-support.
|
(Final Actions): Describe commands to use in dg-final.
|
(Final Actions): Describe commands to use in dg-final.
|
|
|
2010-03-22 Michael Matz
|
2010-03-22 Michael Matz
|
|
|
PR middle-end/43475
|
PR middle-end/43475
|
* recog.c (validate_replace_rtx_group): Replace also in
|
* recog.c (validate_replace_rtx_group): Replace also in
|
REG_EQUAL and REG_EQUIV notes.
|
REG_EQUAL and REG_EQUIV notes.
|
|
|
2010-03-22 Richard Guenther
|
2010-03-22 Richard Guenther
|
|
|
PR tree-optimization/43390
|
PR tree-optimization/43390
|
* tree-vect-stmts.c (get_vectype_for_scalar_type): Make
|
* tree-vect-stmts.c (get_vectype_for_scalar_type): Make
|
sure vector extracts are type correct.
|
sure vector extracts are type correct.
|
|
|
2010-03-22 Richard Guenther
|
2010-03-22 Richard Guenther
|
|
|
PR middle-end/40106
|
PR middle-end/40106
|
* builtins.c (expand_builtin_pow): Expand pow (x, 1.5) as
|
* builtins.c (expand_builtin_pow): Expand pow (x, 1.5) as
|
x * sqrt (x) even when optimizing for size if the target
|
x * sqrt (x) even when optimizing for size if the target
|
has native support for sqrt.
|
has native support for sqrt.
|
|
|
2010-03-22 Jakub Jelinek
|
2010-03-22 Jakub Jelinek
|
|
|
* varasm.c (make_decl_rtl_for_debug): Also clear
|
* varasm.c (make_decl_rtl_for_debug): Also clear
|
flag_mudflap for the duration of make_decl_rtl call.
|
flag_mudflap for the duration of make_decl_rtl call.
|
|
|
PR debug/43443
|
PR debug/43443
|
* var-tracking.c (add_cselib_value_chains): Remove ASM_OPERANDS
|
* var-tracking.c (add_cselib_value_chains): Remove ASM_OPERANDS
|
locs from preserved VALUEs.
|
locs from preserved VALUEs.
|
|
|
2010-03-21 John David Anglin
|
2010-03-21 John David Anglin
|
|
|
PR middle-end/42718
|
PR middle-end/42718
|
* pa.md (movmemsi): Set align to one if zero.
|
* pa.md (movmemsi): Set align to one if zero.
|
(movmemdi): Likewise.
|
(movmemdi): Likewise.
|
|
|
2010-03-21 Richard Earnshaw
|
2010-03-21 Richard Earnshaw
|
|
|
PR target/42321
|
PR target/42321
|
* arm.c (arm_output_epilogue): Correctly match VFP pop instructions
|
* arm.c (arm_output_epilogue): Correctly match VFP pop instructions
|
with their corresponding prologue pushes.
|
with their corresponding prologue pushes.
|
|
|
2010-03-20 Andrew Pinski
|
2010-03-20 Andrew Pinski
|
|
|
PR target/43156
|
PR target/43156
|
* config/spu/spu.c (spu_expand_prologue): Don't emit NOTE_INSN_DELETED
|
* config/spu/spu.c (spu_expand_prologue): Don't emit NOTE_INSN_DELETED
|
at the begining or end.
|
at the begining or end.
|
(spu_expand_epilogue): Likewise.
|
(spu_expand_epilogue): Likewise.
|
|
|
2010-03-20 Richard Guenther
|
2010-03-20 Richard Guenther
|
|
|
PR rtl-optimization/43438
|
PR rtl-optimization/43438
|
* combine.c (make_extraction): Properly zero-/sign-extend an
|
* combine.c (make_extraction): Properly zero-/sign-extend an
|
extraction of the low part of a CONST_INT. Also handle
|
extraction of the low part of a CONST_INT. Also handle
|
CONST_DOUBLE.
|
CONST_DOUBLE.
|
|
|
2010-03-19 Mike Stump
|
2010-03-19 Mike Stump
|
|
|
* config/i386/darwin.h (SUBTARGET32_DEFAULT_CPU): Add.
|
* config/i386/darwin.h (SUBTARGET32_DEFAULT_CPU): Add.
|
* config/i386/i386.c (SUBTARGET32_DEFAULT_CPU): Add.
|
* config/i386/i386.c (SUBTARGET32_DEFAULT_CPU): Add.
|
(override_options): Use SUBTARGET32_DEFAULT_CPU.
|
(override_options): Use SUBTARGET32_DEFAULT_CPU.
|
|
|
2010-03-19 Andrew Pinski
|
2010-03-19 Andrew Pinski
|
|
|
PR c/43211
|
PR c/43211
|
* c-decl.c (grokparms): Set arg_types to NULL_TREE if there was
|
* c-decl.c (grokparms): Set arg_types to NULL_TREE if there was
|
an error.
|
an error.
|
|
|
2010-03-19 Bernd Schmidt
|
2010-03-19 Bernd Schmidt
|
|
|
PR rtl-optimization/42258
|
PR rtl-optimization/42258
|
* ira-lives.c (check_and_make_def_conflict): Ignore conflict for a
|
* ira-lives.c (check_and_make_def_conflict): Ignore conflict for a
|
use that may match DEF.
|
use that may match DEF.
|
|
|
PR target/40697
|
PR target/40697
|
* optabs.c (avoid_expensive_constant): Use rtx_cost to find out
|
* optabs.c (avoid_expensive_constant): Use rtx_cost to find out
|
the cost of loading the constant rather than assuming
|
the cost of loading the constant rather than assuming
|
COSTS_N_INSNS (1).
|
COSTS_N_INSNS (1).
|
* config/arm/arm.c (thumb1_rtx_costs) : If the
|
* config/arm/arm.c (thumb1_rtx_costs) : If the
|
outer code is AND, do the same tests as the andsi3 expander and
|
outer code is AND, do the same tests as the andsi3 expander and
|
return COSTS_N_INSNS (1) if and is cheap.
|
return COSTS_N_INSNS (1) if and is cheap.
|
|
|
* optabs.c (avoid_expensive_constant): Fix formatting.
|
* optabs.c (avoid_expensive_constant): Fix formatting.
|
|
|
2010-03-19 Michael Matz
|
2010-03-19 Michael Matz
|
|
|
PR c++/43116
|
PR c++/43116
|
* attribs.c (decl_attributes): When rebuilding a function pointer
|
* attribs.c (decl_attributes): When rebuilding a function pointer
|
type use the same qualifiers as the original pointer type.
|
type use the same qualifiers as the original pointer type.
|
|
|
2010-03-19 Martin Jambor
|
2010-03-19 Martin Jambor
|
|
|
* doc/gimple.texi (Logical Operators): Describe is_gimple_ip_invariant
|
* doc/gimple.texi (Logical Operators): Describe is_gimple_ip_invariant
|
and is_gimple_ip_invariant_address.
|
and is_gimple_ip_invariant_address.
|
|
|
2010-03-19 Ramana Radhakrishnan
|
2010-03-19 Ramana Radhakrishnan
|
|
|
Revert
|
Revert
|
2009-10-01 Ramana Radhakrishnan
|
2009-10-01 Ramana Radhakrishnan
|
|
|
* config/arm/arm.c (arm_override_options): Turn off
|
* config/arm/arm.c (arm_override_options): Turn off
|
flag_dwarf2_cfi_asm for AAPCS variants.
|
flag_dwarf2_cfi_asm for AAPCS variants.
|
|
|
2010-03-19 Ramana Radhakrishnan
|
2010-03-19 Ramana Radhakrishnan
|
|
|
PR target/43399
|
PR target/43399
|
* config/arm/arm.c (emit_multi_reg_push): Update comments.
|
* config/arm/arm.c (emit_multi_reg_push): Update comments.
|
Use PRE_MODIFY instead of PRE_DEC.
|
Use PRE_MODIFY instead of PRE_DEC.
|
(emit_sfm): Use PRE_MODIFY instead of PRE_DEC.
|
(emit_sfm): Use PRE_MODIFY instead of PRE_DEC.
|
(vfp_emit_fstmd): Likewise.
|
(vfp_emit_fstmd): Likewise.
|
|
|
2010-03-19 Michael Matz
|
2010-03-19 Michael Matz
|
|
|
PR target/43305
|
PR target/43305
|
* builtins.c (expand_builtin_interclass_mathfn,
|
* builtins.c (expand_builtin_interclass_mathfn,
|
expand_builtin_signbit): Use maybe_emit_unop_insn, emit libcalls
|
expand_builtin_signbit): Use maybe_emit_unop_insn, emit libcalls
|
if that fails.
|
if that fails.
|
|
|
2010-03-19 Richard Guenther
|
2010-03-19 Richard Guenther
|
|
|
PR tree-optimization/43415
|
PR tree-optimization/43415
|
* tree-ssa-pre.c (phi_translate): Split out worker to ...
|
* tree-ssa-pre.c (phi_translate): Split out worker to ...
|
(phi_translate_1): ... this.
|
(phi_translate_1): ... this.
|
(phi_translate): Move all caching here. Cache all NARY
|
(phi_translate): Move all caching here. Cache all NARY
|
and REFERENCE translations.
|
and REFERENCE translations.
|
|
|
2010-03-19 David S. Miller
|
2010-03-19 David S. Miller
|
|
|
With help from Eric Botcazou.
|
With help from Eric Botcazou.
|
* config/sparc/sparc.c: Include dwarf2out.h.
|
* config/sparc/sparc.c: Include dwarf2out.h.
|
(emit_pic_helper): Delete.
|
(emit_pic_helper): Delete.
|
(pic_helper_symbol_name): Delete.
|
(pic_helper_symbol_name): Delete.
|
(pic_helper_emitted_p): Delete.
|
(pic_helper_emitted_p): Delete.
|
(pic_helper_needed): New.
|
(pic_helper_needed): New.
|
(USE_HIDDEN_LINKONCE): Define to '1' if HAVE_GAS_HIDDEN else '0'.
|
(USE_HIDDEN_LINKONCE): Define to '1' if HAVE_GAS_HIDDEN else '0'.
|
(get_pc_thunk_name): New.
|
(get_pc_thunk_name): New.
|
(load_pic_register): Remove 'delay_pic_helper' arg. Use
|
(load_pic_register): Remove 'delay_pic_helper' arg. Use
|
get_thunk_pc_name and ggc_strdup to generate PIC thunk symbol.
|
get_thunk_pc_name and ggc_strdup to generate PIC thunk symbol.
|
Set pic_helper_needed to true. Don't call emit_pic_helper.
|
Set pic_helper_needed to true. Don't call emit_pic_helper.
|
(sparc_expand_prologue): Update load_pic_register call.
|
(sparc_expand_prologue): Update load_pic_register call.
|
(sparc_output_mi_thunk): Likewise.
|
(sparc_output_mi_thunk): Likewise.
|
(sparc_file_end): Emit a hidden comdat symbol for the PIC
|
(sparc_file_end): Emit a hidden comdat symbol for the PIC
|
thunk if possible. Output CFI information as needed.
|
thunk if possible. Output CFI information as needed.
|
|
|
2010-03-18 Francois-Xavier Coudert
|
2010-03-18 Francois-Xavier Coudert
|
Jack Howarth
|
Jack Howarth
|
|
|
PR target/36399
|
PR target/36399
|
* config/i386/i386.h: Fix ABI on darwin x86-32.
|
* config/i386/i386.h: Fix ABI on darwin x86-32.
|
|
|
2010-03-18 Aldy Hernandez
|
2010-03-18 Aldy Hernandez
|
|
|
* tree.h: Declare make_decl_rtl_for_debug.
|
* tree.h: Declare make_decl_rtl_for_debug.
|
* varasm.c (make_decl_rtl_for_debug): New.
|
* varasm.c (make_decl_rtl_for_debug): New.
|
* dwarf2out.c (rtl_for_decl_location): Call it.
|
* dwarf2out.c (rtl_for_decl_location): Call it.
|
* cfgexpand.c (expand_debug_expr): Call it.
|
* cfgexpand.c (expand_debug_expr): Call it.
|
|
|
2010-03-18 Jakub Jelinek
|
2010-03-18 Jakub Jelinek
|
|
|
PR bootstrap/43399
|
PR bootstrap/43399
|
* var-tracking.c (adjust_mems) : Allow BLKmode
|
* var-tracking.c (adjust_mems) : Allow BLKmode
|
mem_mode.
|
mem_mode.
|
|
|
PR bootstrap/43403
|
PR bootstrap/43403
|
* var-tracking.c (vt_init_cfa_base): Do nothing if
|
* var-tracking.c (vt_init_cfa_base): Do nothing if
|
cfa_base_rtx would be hard_frame_pointer_rtx or non-fixed register.
|
cfa_base_rtx would be hard_frame_pointer_rtx or non-fixed register.
|
|
|
2010-03-18 Alexandre Oliva
|
2010-03-18 Alexandre Oliva
|
|
|
PR debug/42873
|
PR debug/42873
|
* var-tracking.c (canonicalize_vars_star): New.
|
* var-tracking.c (canonicalize_vars_star): New.
|
(dataflow_post_merge_adjust): Use it.
|
(dataflow_post_merge_adjust): Use it.
|
|
|
2010-03-18 Jakub Jelinek
|
2010-03-18 Jakub Jelinek
|
|
|
PR debug/43058
|
PR debug/43058
|
* var-tracking.c (non_suitable_const): New function.
|
* var-tracking.c (non_suitable_const): New function.
|
(add_uses): For DEBUG_INSNs with constants, don't record any
|
(add_uses): For DEBUG_INSNs with constants, don't record any
|
value, instead just the constant value itself.
|
value, instead just the constant value itself.
|
(compute_bb_dataflow) : If PAT_VAR_LOCATION_LOC
|
(compute_bb_dataflow) : If PAT_VAR_LOCATION_LOC
|
is not VAR_LOC_UNKNOWN_P, set var to the constant.
|
is not VAR_LOC_UNKNOWN_P, set var to the constant.
|
(emit_notes_in_bb): Likewise.
|
(emit_notes_in_bb): Likewise.
|
(emit_note_insn_var_location): For onepart variables if
|
(emit_note_insn_var_location): For onepart variables if
|
cur_loc is a VOIDmode constant, use DECL_MODE.
|
cur_loc is a VOIDmode constant, use DECL_MODE.
|
|
|
2010-03-18 Martin Jambor
|
2010-03-18 Martin Jambor
|
|
|
PR middle-end/42450
|
PR middle-end/42450
|
* cgraph.h (cgraph_redirect_edge_call_stmt_to_callee): Declare.
|
* cgraph.h (cgraph_redirect_edge_call_stmt_to_callee): Declare.
|
* cgraphunit.c (cgraph_materialize_all_clones): Update calls in
|
* cgraphunit.c (cgraph_materialize_all_clones): Update calls in
|
all non-clones. Moved call redirection...
|
all non-clones. Moved call redirection...
|
(cgraph_redirect_edge_call_stmt_to_callee): ...to this new function.
|
(cgraph_redirect_edge_call_stmt_to_callee): ...to this new function.
|
(cgraph_materialize_all_clones): Dispose of all
|
(cgraph_materialize_all_clones): Dispose of all
|
combined_args_to_skip bitmaps.
|
combined_args_to_skip bitmaps.
|
(verify_cgraph_node): Do not check for edges pointing to wrong
|
(verify_cgraph_node): Do not check for edges pointing to wrong
|
nodes in inline clones.
|
nodes in inline clones.
|
* tree-inline.c (copy_bb): Call
|
* tree-inline.c (copy_bb): Call
|
cgraph_redirect_edge_call_stmt_to_callee.
|
cgraph_redirect_edge_call_stmt_to_callee.
|
* ipa.c (cgraph_remove_unreachable_nodes): Call
|
* ipa.c (cgraph_remove_unreachable_nodes): Call
|
cgraph_node_remove_callees even when there are used clones.
|
cgraph_node_remove_callees even when there are used clones.
|
|
|
2010-03-18 H.J. Lu
|
2010-03-18 H.J. Lu
|
|
|
* config/i386/libgcc-glibc.ver: Make GCC_4.5.0 inherit GCC_4.4.0.
|
* config/i386/libgcc-glibc.ver: Make GCC_4.5.0 inherit GCC_4.4.0.
|
|
|
2010-03-18 H.J. Lu
|
2010-03-18 H.J. Lu
|
|
|
PR target/43383
|
PR target/43383
|
* config/i386/libgcc-glibc.ver: Add __extendxftf2 to GCC_4.5.0
|
* config/i386/libgcc-glibc.ver: Add __extendxftf2 to GCC_4.5.0
|
for 32bit.
|
for 32bit.
|
|
|
2010-03-18 Michael Matz
|
2010-03-18 Michael Matz
|
|
|
PR middle-end/43419
|
PR middle-end/43419
|
* builtins.c (expand_builtin_pow): Don't transform pow(x, 0.5)
|
* builtins.c (expand_builtin_pow): Don't transform pow(x, 0.5)
|
into sqrt(x) if we need to preserve signed zeros.
|
into sqrt(x) if we need to preserve signed zeros.
|
|
|
2010-03-18 Steven Bosscher
|
2010-03-18 Steven Bosscher
|
Eric Botcazou
|
Eric Botcazou
|
|
|
PR rtl-optimization/43360
|
PR rtl-optimization/43360
|
* loop-invariant.c (move_invariant_reg): Remove the REG_EQUAL
|
* loop-invariant.c (move_invariant_reg): Remove the REG_EQUAL
|
note if we don't know its invariant status.
|
note if we don't know its invariant status.
|
|
|
2010-03-18 Michael Matz
|
2010-03-18 Michael Matz
|
|
|
PR tree-optimization/43402
|
PR tree-optimization/43402
|
* tree-cfgcleanup.c (cleanup_control_expr_graph): Don't follow
|
* tree-cfgcleanup.c (cleanup_control_expr_graph): Don't follow
|
PHI chains of ssa names registered for update.
|
PHI chains of ssa names registered for update.
|
|
|
2010-03-17 Peter Bergner
|
2010-03-17 Peter Bergner
|
|
|
PR target/42427
|
PR target/42427
|
* config/rs6000/rs6000.c (rs6000_split_multireg_move): Add support for
|
* config/rs6000/rs6000.c (rs6000_split_multireg_move): Add support for
|
non-offsettable and pre_modify update addressing.
|
non-offsettable and pre_modify update addressing.
|
* config/rs6000/dfp.md (*movdd_hardfloat32): Make the "0", "1"
|
* config/rs6000/dfp.md (*movdd_hardfloat32): Make the "0", "1"
|
and "2" alternatives "#".
|
and "2" alternatives "#".
|
(*movdd_softfloat32): Make all alternatives "#";
|
(*movdd_softfloat32): Make all alternatives "#";
|
* config/rs6000/rs6000.md (DIFD): New define_mode_iterator.
|
* config/rs6000/rs6000.md (DIFD): New define_mode_iterator.
|
(*movdf_hardfloat32): Make the "0", "1" and "2" alternatives "#".
|
(*movdf_hardfloat32): Make the "0", "1" and "2" alternatives "#".
|
(*movdf_softfloat32): Make all alternatives "#";
|
(*movdf_softfloat32): Make all alternatives "#";
|
(movdi): Use the new DIFD mode iterator to create a common splitter
|
(movdi): Use the new DIFD mode iterator to create a common splitter
|
for movdi, movdf and movdd patterns.
|
for movdi, movdf and movdd patterns.
|
|
|
2010-03-18 Shujing Zhao
|
2010-03-18 Shujing Zhao
|
|
|
* common.opt (dumpdir): Remove redundant tab.
|
* common.opt (dumpdir): Remove redundant tab.
|
|
|
2010-03-17 Martin Jambor
|
2010-03-17 Martin Jambor
|
|
|
PR tree-optimization/43347
|
PR tree-optimization/43347
|
* tree-sra.c (create_access_replacement): Set TREE_NO_WARNING when the
|
* tree-sra.c (create_access_replacement): Set TREE_NO_WARNING when the
|
original base is DECL_ARTIFICIAL or DECL_IGNORED_P.
|
original base is DECL_ARTIFICIAL or DECL_IGNORED_P.
|
|
|
2010-03-17 Bernd Schmidt
|
2010-03-17 Bernd Schmidt
|
|
|
PR rtl-optimization/42216
|
PR rtl-optimization/42216
|
* regrename.c (create_new_chain): New function, broken out from...
|
* regrename.c (create_new_chain): New function, broken out from...
|
(scan_rtx_reg): ... here. Call it. Handle the case where we are
|
(scan_rtx_reg): ... here. Call it. Handle the case where we are
|
appending a use to an empty chain.
|
appending a use to an empty chain.
|
(build_def_use): Remove previous changes that convert OP_INOUT to
|
(build_def_use): Remove previous changes that convert OP_INOUT to
|
OP_OUT operands; instead detect the case where an OP_INOUT operand
|
OP_OUT operands; instead detect the case where an OP_INOUT operand
|
uses a previously untracked register and create an empty chain for it.
|
uses a previously untracked register and create an empty chain for it.
|
|
|
2010-03-17 Ralf Wildenhues
|
2010-03-17 Ralf Wildenhues
|
|
|
* doc/extend.texi (Function Attributes): Rewrite unfinished
|
* doc/extend.texi (Function Attributes): Rewrite unfinished
|
sentence in ms_abi documentation.
|
sentence in ms_abi documentation.
|
|
|
2010-03-17 Alan Modra
|
2010-03-17 Alan Modra
|
|
|
* config/rs6000/linux64.opt (mprofile-kernel): Use profile_kernel var.
|
* config/rs6000/linux64.opt (mprofile-kernel): Use profile_kernel var.
|
* config/rs6000/linux64.h (TARGET_PROFILE_KERNEL): Define.
|
* config/rs6000/linux64.h (TARGET_PROFILE_KERNEL): Define.
|
(SUBSUBTARGET_OVERRIDE_OPTIONS): Don't use SET_PROFILE_KERNEL.
|
(SUBSUBTARGET_OVERRIDE_OPTIONS): Don't use SET_PROFILE_KERNEL.
|
* config/rs6000/rs6000.c (SET_PROFILE_KERNEL): Don't define.
|
* config/rs6000/rs6000.c (SET_PROFILE_KERNEL): Don't define.
|
|
|
2010-03-16 Richard Henderson
|
2010-03-16 Richard Henderson
|
|
|
PR middle-end/43365
|
PR middle-end/43365
|
* tree-eh.c (replace_goto_queue): Also replace in the eh_seq.
|
* tree-eh.c (replace_goto_queue): Also replace in the eh_seq.
|
(lower_try_finally): Save and restore eh_seq around the expansion
|
(lower_try_finally): Save and restore eh_seq around the expansion
|
of the try-finally.
|
of the try-finally.
|
|
|
2010-03-16 Aldy Hernandez
|
2010-03-16 Aldy Hernandez
|
|
|
* graphite-sese-to-poly.c (split_reduction_stmt): Skip debug
|
* graphite-sese-to-poly.c (split_reduction_stmt): Skip debug
|
statements before splitting block.
|
statements before splitting block.
|
|
|
2010-03-16 Rainer Orth
|
2010-03-16 Rainer Orth
|
|
|
* doc/sourcebuild.texi (Testsuites): Fix markup.
|
* doc/sourcebuild.texi (Testsuites): Fix markup.
|
Use pathnames relative to gcc/testsuite.
|
Use pathnames relative to gcc/testsuite.
|
(Test Directives): Move description of how timeout is determined.
|
(Test Directives): Move description of how timeout is determined.
|
(Ada Tests): Favor gnat.exp over ada/acats/tests/gcc.
|
(Ada Tests): Favor gnat.exp over ada/acats/tests/gcc.
|
(C Tests): Correct gcc.misc-tests directory.
|
(C Tests): Correct gcc.misc-tests directory.
|
Framework tests now live in gcc.test-framework.
|
Framework tests now live in gcc.test-framework.
|
|
|
2010-03-16 Richard Guenther
|
2010-03-16 Richard Guenther
|
|
|
PR middle-end/43379
|
PR middle-end/43379
|
* tree-cfg.c (gimple_merge_blocks): When propagating virtual PHI
|
* tree-cfg.c (gimple_merge_blocks): When propagating virtual PHI
|
operands make sure to merge SSA_NAME_OCCURS_IN_ABNORMAL_PHI properly.
|
operands make sure to merge SSA_NAME_OCCURS_IN_ABNORMAL_PHI properly.
|
|
|
2010-03-16 Aldy Hernandez
|
2010-03-16 Aldy Hernandez
|
Alexandre Oliva
|
Alexandre Oliva
|
|
|
PR tree-optimization/42917
|
PR tree-optimization/42917
|
* lambda-code.c (remove_iv): Skip debug statements.
|
* lambda-code.c (remove_iv): Skip debug statements.
|
(lambda_loopnest_to_gcc_loopnest): Likewise.
|
(lambda_loopnest_to_gcc_loopnest): Likewise.
|
(not_interesting_stmt): Debug statements are not interesting.
|
(not_interesting_stmt): Debug statements are not interesting.
|
|
|
2010-03-16 Jakub Jelinek
|
2010-03-16 Jakub Jelinek
|
|
|
PR debug/43051
|
PR debug/43051
|
PR debug/43092
|
PR debug/43092
|
* cselib.c (cselib_preserve_constants,
|
* cselib.c (cselib_preserve_constants,
|
cfa_base_preserved_val): New static variables.
|
cfa_base_preserved_val): New static variables.
|
(preserve_only_constants): New function.
|
(preserve_only_constants): New function.
|
(cselib_reset_table): If cfa_base_preserved_val is non-NULL, don't
|
(cselib_reset_table): If cfa_base_preserved_val is non-NULL, don't
|
clear its REG_VALUES. If cselib_preserve_constants, don't
|
clear its REG_VALUES. If cselib_preserve_constants, don't
|
empty the whole hash table, but preserve there VALUEs with constants,
|
empty the whole hash table, but preserve there VALUEs with constants,
|
cfa_base_preserved_val and cfa_base_preserved_val plus constant.
|
cfa_base_preserved_val and cfa_base_preserved_val plus constant.
|
(cselib_preserve_cfa_base_value): New function.
|
(cselib_preserve_cfa_base_value): New function.
|
(cselib_invalidate_regno): Don't invalidate cfa_base_preserved_val.
|
(cselib_invalidate_regno): Don't invalidate cfa_base_preserved_val.
|
(cselib_init): Change argument to int bitfield. Set
|
(cselib_init): Change argument to int bitfield. Set
|
cselib_preserve_constants to whether CSELIB_PRESERVE_CONSTANTS
|
cselib_preserve_constants to whether CSELIB_PRESERVE_CONSTANTS
|
is in it.
|
is in it.
|
(cselib_finish): Clear cselib_preserve_constants and
|
(cselib_finish): Clear cselib_preserve_constants and
|
cfa_base_preserved_val.
|
cfa_base_preserved_val.
|
* cselib.h (enum cselib_record_what): New enum.
|
* cselib.h (enum cselib_record_what): New enum.
|
(cselib_init): Change argument to int.
|
(cselib_init): Change argument to int.
|
(cselib_preserve_cfa_base_value): New prototype.
|
(cselib_preserve_cfa_base_value): New prototype.
|
* postreload.c (reload_cse_regs_1): Adjust cselib_init caller.
|
* postreload.c (reload_cse_regs_1): Adjust cselib_init caller.
|
* dse.c (dse_step1): Likewise.
|
* dse.c (dse_step1): Likewise.
|
* cfgcleanup.c (thread_jump): Likewise.
|
* cfgcleanup.c (thread_jump): Likewise.
|
* sched-deps.c (sched_analyze): Likewise.
|
* sched-deps.c (sched_analyze): Likewise.
|
* gcse.c (local_cprop_pass): Likewise.
|
* gcse.c (local_cprop_pass): Likewise.
|
* simplify-rtx.c (simplify_replace_fn_rtx): Add argument to callback.
|
* simplify-rtx.c (simplify_replace_fn_rtx): Add argument to callback.
|
If FN is non-NULL, call the callback always and whenever it returns
|
If FN is non-NULL, call the callback always and whenever it returns
|
non-NULL just return that. Only do rtx_equal_p if FN is NULL.
|
non-NULL just return that. Only do rtx_equal_p if FN is NULL.
|
* rtl.h (simplify_replace_fn_rtx): Add argument to callback.
|
* rtl.h (simplify_replace_fn_rtx): Add argument to callback.
|
* combine.c (propagate_for_debug_subst): Add old_rtx argument,
|
* combine.c (propagate_for_debug_subst): Add old_rtx argument,
|
compare from with old_rtx and if it isn't rtx_equal_p, return NULL.
|
compare from with old_rtx and if it isn't rtx_equal_p, return NULL.
|
* Makefile.in (var-tracking.o): Depend on $(RECOG_H).
|
* Makefile.in (var-tracking.o): Depend on $(RECOG_H).
|
* var-tracking.c: Include recog.h.
|
* var-tracking.c: Include recog.h.
|
(bb_stack_adjust_offset): Remove.
|
(bb_stack_adjust_offset): Remove.
|
(vt_stack_adjustments): Don't call it, instead just gather the
|
(vt_stack_adjustments): Don't call it, instead just gather the
|
adjustments using insn_stack_adjust_offset_pre_post on each bb insn.
|
adjustments using insn_stack_adjust_offset_pre_post on each bb insn.
|
(adjust_stack_reference): Remove.
|
(adjust_stack_reference): Remove.
|
(compute_cfa_pointer): New function.
|
(compute_cfa_pointer): New function.
|
(hard_frame_pointer_adjustment, cfa_base_rtx): New static variables.
|
(hard_frame_pointer_adjustment, cfa_base_rtx): New static variables.
|
(struct adjust_mem_data): New type.
|
(struct adjust_mem_data): New type.
|
(adjust_mems, adjust_mem_uses, adjust_mem_stores, adjust_insn): New
|
(adjust_mems, adjust_mem_uses, adjust_mem_stores, adjust_insn): New
|
functions.
|
functions.
|
(get_address_mode): New function.
|
(get_address_mode): New function.
|
(replace_expr_with_values): Use it.
|
(replace_expr_with_values): Use it.
|
(use_type): Don't do cselib_lookup for VAR_LOC_UNKNOWN_P.
|
(use_type): Don't do cselib_lookup for VAR_LOC_UNKNOWN_P.
|
Use get_address_mode. For cfa_base_rtx return MO_CLOBBER.
|
Use get_address_mode. For cfa_base_rtx return MO_CLOBBER.
|
(adjust_sets): Remove.
|
(adjust_sets): Remove.
|
(add_uses): Don't add extra MO_VAL_USE for cfa_base_rtx plus constant.
|
(add_uses): Don't add extra MO_VAL_USE for cfa_base_rtx plus constant.
|
Use get_address_mode.
|
Use get_address_mode.
|
(get_adjusted_src): Remove.
|
(get_adjusted_src): Remove.
|
(add_stores): Don't call it. Never reuse expr SET. Don't add extra
|
(add_stores): Don't call it. Never reuse expr SET. Don't add extra
|
MO_VAL_USE for cfa_base_rtx plus constant. Use get_address_mode.
|
MO_VAL_USE for cfa_base_rtx plus constant. Use get_address_mode.
|
(add_with_sets): Don't call adjust_sets.
|
(add_with_sets): Don't call adjust_sets.
|
(fp_setter, vt_init_cfa_base): New functions.
|
(fp_setter, vt_init_cfa_base): New functions.
|
(vt_initialize): Change return type to bool. Move most of pool etc.
|
(vt_initialize): Change return type to bool. Move most of pool etc.
|
initialization to the beginning of the function from end. Pass
|
initialization to the beginning of the function from end. Pass
|
CSELIB_RECORD_MEMORY | CSELIB_PRESERVE_CONSTANTS to cselib_init.
|
CSELIB_RECORD_MEMORY | CSELIB_PRESERVE_CONSTANTS to cselib_init.
|
If !frame_pointer_needed, call vt_stack_adjustment before mos
|
If !frame_pointer_needed, call vt_stack_adjustment before mos
|
vector is filled, call vt_init_cfa_base if argp/framep has been
|
vector is filled, call vt_init_cfa_base if argp/framep has been
|
eliminated to sp. If frame_pointer_needed and argp/framep has
|
eliminated to sp. If frame_pointer_needed and argp/framep has
|
been eliminated to hard frame pointer, set
|
been eliminated to hard frame pointer, set
|
hard_frame_pointer_adjustment and call vt_init_cfa_base after
|
hard_frame_pointer_adjustment and call vt_init_cfa_base after
|
encountering fp setter in the prologue. For MO_ADJUST, call
|
encountering fp setter in the prologue. For MO_ADJUST, call
|
log_op_type before pusing the op into mos vector, not afterwards.
|
log_op_type before pusing the op into mos vector, not afterwards.
|
Call adjust_insn before cselib_process_insn/add_with_sets,
|
Call adjust_insn before cselib_process_insn/add_with_sets,
|
call cancel_changes (0) afterwards.
|
call cancel_changes (0) afterwards.
|
(variable_tracking_main_1): Adjust for vt_initialize calling
|
(variable_tracking_main_1): Adjust for vt_initialize calling
|
vt_stack_adjustments and returning whether it succeeded or not.
|
vt_stack_adjustments and returning whether it succeeded or not.
|
|
|
2010-03-15 Aldy Hernandez
|
2010-03-15 Aldy Hernandez
|
|
|
* graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps): Skip
|
* graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps): Skip
|
debug statements.
|
debug statements.
|
|
|
2010-03-15 Jakub Jelinek
|
2010-03-15 Jakub Jelinek
|
|
|
* dwarf2out.c (dwarf2out_frame_debug): Don't assert drap_reg
|
* dwarf2out.c (dwarf2out_frame_debug): Don't assert drap_reg
|
has been set.
|
has been set.
|
(based_loc_descr): Use DW_OP_fbreg for vdrap_reg even when
|
(based_loc_descr): Use DW_OP_fbreg for vdrap_reg even when
|
drap_reg has not been set.
|
drap_reg has not been set.
|
|
|
2010-03-15 Michael Matz
|
2010-03-15 Michael Matz
|
|
|
PR middle-end/43300
|
PR middle-end/43300
|
* tree-outof-ssa.c (emit_partition_copy): New argument sizeexp,
|
* tree-outof-ssa.c (emit_partition_copy): New argument sizeexp,
|
use it to expand block copies.
|
use it to expand block copies.
|
(insert_partition_copy_on_edge, insert_rtx_to_part_on_edge,
|
(insert_partition_copy_on_edge, insert_rtx_to_part_on_edge,
|
insert_part_to_rtx_on_edge): Adjust callers of emit_partition_copy.
|
insert_part_to_rtx_on_edge): Adjust callers of emit_partition_copy.
|
(insert_value_copy_on_edge): Use store_expr for BLKmode values.
|
(insert_value_copy_on_edge): Use store_expr for BLKmode values.
|
|
|
2010-03-15 Richard Guenther
|
2010-03-15 Richard Guenther
|
|
|
PR tree-optimization/43367
|
PR tree-optimization/43367
|
* tree-cfg.c (gimple_can_merge_blocks_p): Simplify PHI
|
* tree-cfg.c (gimple_can_merge_blocks_p): Simplify PHI
|
elimination check.
|
elimination check.
|
|
|
2010-03-15 Richard Guenther
|
2010-03-15 Richard Guenther
|
|
|
PR tree-optimization/43317
|
PR tree-optimization/43317
|
* ipa-struct-reorg.c (create_new_general_access): Update stmt.
|
* ipa-struct-reorg.c (create_new_general_access): Update stmt.
|
|
|
2010-03-15 Martin Jambor
|
2010-03-15 Martin Jambor
|
|
|
PR tree-optimization/43141
|
PR tree-optimization/43141
|
* tree-sra.c (create_abstract_origin): New function.
|
* tree-sra.c (create_abstract_origin): New function.
|
(modify_function): Call create_abstract_origin.
|
(modify_function): Call create_abstract_origin.
|
|
|
2010-03-15 Chris Demetriou
|
2010-03-15 Chris Demetriou
|
|
|
* Makefile.in (stmp-int-hdrs): Don't chmod include/stdint.h if it
|
* Makefile.in (stmp-int-hdrs): Don't chmod include/stdint.h if it
|
wasn't copied.
|
wasn't copied.
|
|
|
2010-03-13 Sebastian Pop
|
2010-03-13 Sebastian Pop
|
|
|
PR middle-end/43354
|
PR middle-end/43354
|
* graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Do not
|
* graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Do not
|
call insert_out_of_ssa_copy for default definitions.
|
call insert_out_of_ssa_copy for default definitions.
|
|
|
2010-03-13 Sebastian Pop
|
2010-03-13 Sebastian Pop
|
|
|
* graphite-clast-to-gimple.c (my_long_long): Defined.
|
* graphite-clast-to-gimple.c (my_long_long): Defined.
|
(gcc_type_for_cloog_iv): Use it instead of long_long_integer_type_node.
|
(gcc_type_for_cloog_iv): Use it instead of long_long_integer_type_node.
|
* graphite-sese-to-poly.c (my_long_long): Defined.
|
* graphite-sese-to-poly.c (my_long_long): Defined.
|
(scop_ivs_can_be_represented): Use it.
|
(scop_ivs_can_be_represented): Use it.
|
|
|
2010-03-13 Sebastian Pop
|
2010-03-13 Sebastian Pop
|
|
|
* doc/invoke.texi: Fix documentation of graphite-max-nb-scop-params,
|
* doc/invoke.texi: Fix documentation of graphite-max-nb-scop-params,
|
graphite-max-bbs-per-function, and loop-block-tile-size.
|
graphite-max-bbs-per-function, and loop-block-tile-size.
|
* params.def (PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS): Replace "maximal"
|
* params.def (PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS): Replace "maximal"
|
with "maximum".
|
with "maximum".
|
(PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION): Same.
|
(PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION): Same.
|
|
|
2010-03-13 Sebastian Pop
|
2010-03-13 Sebastian Pop
|
|
|
* graphite-clast-to-gimple.c (gcc_type_for_iv_of_clast_loop): Remove
|
* graphite-clast-to-gimple.c (gcc_type_for_iv_of_clast_loop): Remove
|
forward declaration.
|
forward declaration.
|
* graphite-sese-to-poly.c (reduction_phi_p): Remove FIXME comment.
|
* graphite-sese-to-poly.c (reduction_phi_p): Remove FIXME comment.
|
(add_upper_bounds_from_estimated_nit): New.
|
(add_upper_bounds_from_estimated_nit): New.
|
(build_loop_iteration_domains): Use it.
|
(build_loop_iteration_domains): Use it.
|
|
|
2010-03-13 Sebastian Pop
|
2010-03-13 Sebastian Pop
|
|
|
* doc/invoke.texi (PARAM_LOOP_BLOCK_TILE_SIZE): Document.
|
* doc/invoke.texi (PARAM_LOOP_BLOCK_TILE_SIZE): Document.
|
|
|
2010-03-13 Sebastian Pop
|
2010-03-13 Sebastian Pop
|
|
|
PR middle-end/43306
|
PR middle-end/43306
|
* tree-chrec.c (evolution_function_right_is_integer_cst): CHREC_RIGHT
|
* tree-chrec.c (evolution_function_right_is_integer_cst): CHREC_RIGHT
|
should be an INTEGER_CST. Also handle CASE_CONVERT.
|
should be an INTEGER_CST. Also handle CASE_CONVERT.
|
|
|
2010-03-13 Sebastian Pop
|
2010-03-13 Sebastian Pop
|
|
|
* graphite.c (graphite_initialize): To bound the number of bbs per
|
* graphite.c (graphite_initialize): To bound the number of bbs per
|
function, use PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION.
|
function, use PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION.
|
* params.def (PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION): Declared.
|
* params.def (PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION): Declared.
|
* doc/invoke.texi: Document it.
|
* doc/invoke.texi: Document it.
|
|
|
2010-03-13 Sebastian Pop
|
2010-03-13 Sebastian Pop
|
|
|
* graphite-sese-to-poly.c (build_poly_scop): Do not return bool.
|
* graphite-sese-to-poly.c (build_poly_scop): Do not return bool.
|
* graphite-sese-to-poly.h (build_poly_scop): Same.
|
* graphite-sese-to-poly.h (build_poly_scop): Same.
|
|
|
2010-03-13 Sebastian Pop
|
2010-03-13 Sebastian Pop
|
|
|
* graphite-sese-to-poly.c (build_poly_scop): Limit scops following
|
* graphite-sese-to-poly.c (build_poly_scop): Limit scops following
|
the number of parameters in the scop. Use as an upper bound
|
the number of parameters in the scop. Use as an upper bound
|
PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS.
|
PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS.
|
* params.def (PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS): Declared.
|
* params.def (PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS): Declared.
|
* doc/invoke.texi: Document it.
|
* doc/invoke.texi: Document it.
|
|
|
2010-03-13 Jerry Quinn
|
2010-03-13 Jerry Quinn
|
|
|
* Makefile.in (TEXI_GCCINT_FILES): Remove c-tree.texi.
|
* Makefile.in (TEXI_GCCINT_FILES): Remove c-tree.texi.
|
* doc/c-tree.texi: Remove.
|
* doc/c-tree.texi: Remove.
|
* doc/generic.texi: Merge c-tree.texi here.
|
* doc/generic.texi: Merge c-tree.texi here.
|
* doc/gccint.texi (Trees): Remove menu entry.
|
* doc/gccint.texi (Trees): Remove menu entry.
|
(c-tree.texi): Remove @include.
|
(c-tree.texi): Remove @include.
|
* doc/rtl.texi (Reading RTL): Update pxref from Trees to GENERIC.
|
* doc/rtl.texi (Reading RTL): Update pxref from Trees to GENERIC.
|
* doc/languages.texi (Reading RTL): Ditto.
|
* doc/languages.texi (Reading RTL): Ditto.
|
|
|
2010-03-12 Steve Ellcey
|
2010-03-12 Steve Ellcey
|
|
|
PR target/42869
|
PR target/42869
|
* config/ia64/sync.md (sync_compare_and_swap): Move memory fence.
|
* config/ia64/sync.md (sync_compare_and_swap): Move memory fence.
|
|
|
2010-03-12 Michael Meissner
|
2010-03-12 Michael Meissner
|
|
|
PR middle-end/42431
|
PR middle-end/42431
|
* gcc/config/rs6000/rs6000.c (rs6000_emit_move): Delete band-aid
|
* gcc/config/rs6000/rs6000.c (rs6000_emit_move): Delete band-aid
|
code added to work around reload clobbering CONST insns.
|
code added to work around reload clobbering CONST insns.
|
|
|
2010-03-12 Jakub Jelinek
|
2010-03-12 Jakub Jelinek
|
|
|
* cselib.c (LONG_TERM_PRESERVED_VALUE_P): Remove.
|
* cselib.c (LONG_TERM_PRESERVED_VALUE_P): Remove.
|
(cselib_preserve_definitely, cselib_clear_preserve): Remove.
|
(cselib_preserve_definitely, cselib_clear_preserve): Remove.
|
(cselib_preserve_only_values): Remove retain argument, don't
|
(cselib_preserve_only_values): Remove retain argument, don't
|
traverse hash table with cselib_{preserve_definitely,clear_preserve}.
|
traverse hash table with cselib_{preserve_definitely,clear_preserve}.
|
* cselib.h (cselib_preserve_only_values): Remove retain argument.
|
* cselib.h (cselib_preserve_only_values): Remove retain argument.
|
* var-tracking.c (micro_operation): Move insn field before union.
|
* var-tracking.c (micro_operation): Move insn field before union.
|
Add DEF_VEC_O and DEF_VEC_ALLOC_O for this type.
|
Add DEF_VEC_O and DEF_VEC_ALLOC_O for this type.
|
(struct variable_tracking_info_def): Remove n_mos field, change
|
(struct variable_tracking_info_def): Remove n_mos field, change
|
mos into a vector of micro_operations.
|
mos into a vector of micro_operations.
|
(count_uses, count_uses_1, count_stores, count_with_sets): Remove.
|
(count_uses, count_uses_1, count_stores, count_with_sets): Remove.
|
(bb_stack_adjust_offset, log_op_type, add_uses, add_stores,
|
(bb_stack_adjust_offset, log_op_type, add_uses, add_stores,
|
compute_bb_dataflow, emit_notes_in_bb): Adjust for VTI (bb)->mos
|
compute_bb_dataflow, emit_notes_in_bb): Adjust for VTI (bb)->mos
|
changing into a vector.
|
changing into a vector.
|
(add_with_sets): Likewise. Ensure MO_VAL_USE uops from add_stores
|
(add_with_sets): Likewise. Ensure MO_VAL_USE uops from add_stores
|
come before all other uops generated by add_stores.
|
come before all other uops generated by add_stores.
|
(vt_add_function_parameters): Adjust for cselib_preserve_only_values
|
(vt_add_function_parameters): Adjust for cselib_preserve_only_values
|
argument removal.
|
argument removal.
|
(vt_initialize): Likewise. Adjust for VTI (bb)->mos changing into
|
(vt_initialize): Likewise. Adjust for VTI (bb)->mos changing into
|
a vector. Run just one pass over the bbs instead of separate counting
|
a vector. Run just one pass over the bbs instead of separate counting
|
and computation phase.
|
and computation phase.
|
(vt_finalize): Free VTI (bb)->mos vector instead of array.
|
(vt_finalize): Free VTI (bb)->mos vector instead of array.
|
|
|
PR debug/43329
|
PR debug/43329
|
* tree-inline.c (remap_decls): Put old_var rather than origin_var
|
* tree-inline.c (remap_decls): Put old_var rather than origin_var
|
into *nonlocalized_list vector.
|
into *nonlocalized_list vector.
|
* dwarf2out.c (gen_formal_parameter_die): Call decl_ultimate_origin
|
* dwarf2out.c (gen_formal_parameter_die): Call decl_ultimate_origin
|
even if origin is non-NULL.
|
even if origin is non-NULL.
|
(gen_variable_die): Likewise.
|
(gen_variable_die): Likewise.
|
(process_scope_var): Don't change origin.
|
(process_scope_var): Don't change origin.
|
(gen_decl_die): Likewise.
|
(gen_decl_die): Likewise.
|
* tree-cfgcleanup.c (remove_forwarder_block): Check single_pred_p
|
* tree-cfgcleanup.c (remove_forwarder_block): Check single_pred_p
|
before adding new edges instead of after it, fix moving over
|
before adding new edges instead of after it, fix moving over
|
debug stmts.
|
debug stmts.
|
|
|
2010-03-11 David S. Miller
|
2010-03-11 David S. Miller
|
|
|
* configure.ac (gcc_cv_as_cfi_advance_working): Skip a multiple
|
* configure.ac (gcc_cv_as_cfi_advance_working): Skip a multiple
|
of four.
|
of four.
|
* configure: Rebuild.
|
* configure: Rebuild.
|
|
|
2010-03-11 Martin Jambor
|
2010-03-11 Martin Jambor
|
|
|
PR tree-optimization/43257
|
PR tree-optimization/43257
|
* tree.c (assign_assembler_name_if_neeeded): New function.
|
* tree.c (assign_assembler_name_if_neeeded): New function.
|
(free_lang_data_in_cgraph): Assembler name assignment moved to the
|
(free_lang_data_in_cgraph): Assembler name assignment moved to the
|
above new function.
|
above new function.
|
* tree.h (assign_assembler_name_if_neeeded): Declare.
|
* tree.h (assign_assembler_name_if_neeeded): Declare.
|
* cgraphunit.c (cgraph_analyze_function): Create an assembler name for
|
* cgraphunit.c (cgraph_analyze_function): Create an assembler name for
|
the function if needed.
|
the function if needed.
|
|
|
2010-03-11 Chris Demetriou
|
2010-03-11 Chris Demetriou
|
|
|
* Makefile.in (stmp-int-hdrs): Make include/unwind.h,
|
* Makefile.in (stmp-int-hdrs): Make include/unwind.h,
|
include/stdint-gcc.h, and include/stdint.h world-readable.
|
include/stdint-gcc.h, and include/stdint.h world-readable.
|
|
|
2010-03-11 Richard Guenther
|
2010-03-11 Richard Guenther
|
|
|
PR tree-optimization/43255
|
PR tree-optimization/43255
|
* tree-vrp.c (process_assert_insertions_for): Do not insert
|
* tree-vrp.c (process_assert_insertions_for): Do not insert
|
asserts for trivial conditions.
|
asserts for trivial conditions.
|
|
|
2010-03-11 Andreas Krebbel
|
2010-03-11 Andreas Krebbel
|
|
|
PR tree-optimization/43280
|
PR tree-optimization/43280
|
* tree-ssa-math-opts.c (find_bswap_1): Modify symbolic number
|
* tree-ssa-math-opts.c (find_bswap_1): Modify symbolic number
|
generation. Move calculation of size out of the if branch.
|
generation. Move calculation of size out of the if branch.
|
(find_bswap): Modify compare number generation.
|
(find_bswap): Modify compare number generation.
|
|
|
2010-03-11 Richard Guenther
|
2010-03-11 Richard Guenther
|
|
|
PR lto/43200
|
PR lto/43200
|
* lto-streamer-in.c (maybe_fixup_decls): Simplify.
|
* lto-streamer-in.c (maybe_fixup_decls): Simplify.
|
(input_gimple_stmt): Fixup handled component types during
|
(input_gimple_stmt): Fixup handled component types during
|
operand read. Also fix up decls in ADDR_EXPRs.
|
operand read. Also fix up decls in ADDR_EXPRs.
|
|
|
2010-03-10 Eric Botcazou
|
2010-03-10 Eric Botcazou
|
|
|
* config/sparc/sol2-bi.h (CC1_SPEC): Default to -mcpu=v9 for -m32.
|
* config/sparc/sol2-bi.h (CC1_SPEC): Default to -mcpu=v9 for -m32.
|
* config/sparc/t-sol2-64 (MULTILIB_DIRNAMES): Use sparcv8plus.
|
* config/sparc/t-sol2-64 (MULTILIB_DIRNAMES): Use sparcv8plus.
|
|
|
2010-03-10 Jan Hubicka
|
2010-03-10 Jan Hubicka
|
|
|
PR c/43288
|
PR c/43288
|
* ipa.c (function_and_variable_visibility) Normalize COMMON bits.
|
* ipa.c (function_and_variable_visibility) Normalize COMMON bits.
|
* varasm.c (get_variable_section): Don't do that here...
|
* varasm.c (get_variable_section): Don't do that here...
|
(make_decl_rtl): ... and here.
|
(make_decl_rtl): ... and here.
|
(do_assemble_alias): Produce decl RTL.
|
(do_assemble_alias): Produce decl RTL.
|
(assemble_alias): Likewise.
|
(assemble_alias): Likewise.
|
|
|
2010-03-10 Jakub Jelinek
|
2010-03-10 Jakub Jelinek
|
|
|
PR debug/43290
|
PR debug/43290
|
* reg-notes.def (REG_CFA_SET_VDRAP): New note.
|
* reg-notes.def (REG_CFA_SET_VDRAP): New note.
|
* dwarf2out.c (dwarf2out_frame_debug_expr): Remove rule 20 - setting
|
* dwarf2out.c (dwarf2out_frame_debug_expr): Remove rule 20 - setting
|
of fde->vdrap_reg.
|
of fde->vdrap_reg.
|
(dwarf2out_frame_debug): Handle REG_CFA_SET_VDRAP note.
|
(dwarf2out_frame_debug): Handle REG_CFA_SET_VDRAP note.
|
(based_loc_descr): Only express drap or vdrap regno based expressions
|
(based_loc_descr): Only express drap or vdrap regno based expressions
|
using DW_OP_fbreg when not optimizing.
|
using DW_OP_fbreg when not optimizing.
|
* config/i386/i386.c (ix86_get_drap_rtx): When not optimizing,
|
* config/i386/i386.c (ix86_get_drap_rtx): When not optimizing,
|
make the vDRAP = DRAP assignment RTX_FRAME_RELATED_P and add
|
make the vDRAP = DRAP assignment RTX_FRAME_RELATED_P and add
|
REG_CFA_SET_VDRAP note.
|
REG_CFA_SET_VDRAP note.
|
|
|
2010-03-10 Alexander Monakov
|
2010-03-10 Alexander Monakov
|
|
|
PR tree-optimization/43236
|
PR tree-optimization/43236
|
* tree-loop-distribution.c (generate_memset_zero): Fix off-by-one
|
* tree-loop-distribution.c (generate_memset_zero): Fix off-by-one
|
error in calculation of base address in reverse iteration case.
|
error in calculation of base address in reverse iteration case.
|
(generate_builtin): Take number of latch executions if the statement
|
(generate_builtin): Take number of latch executions if the statement
|
is in the latch.
|
is in the latch.
|
|
|
2010-03-10 Andrey Belevantsev
|
2010-03-10 Andrey Belevantsev
|
|
|
PR middle-end/42859
|
PR middle-end/42859
|
* tree-eh.c: Include pointer-set.h.
|
* tree-eh.c: Include pointer-set.h.
|
(lower_eh_dispatch): Filter out duplicate case labels and
|
(lower_eh_dispatch): Filter out duplicate case labels and
|
remove the unneeded edge when the label is unused. Return
|
remove the unneeded edge when the label is unused. Return
|
true when some edges are removed.
|
true when some edges are removed.
|
(execute_lower_eh_dispatch): When any lowering resulted in
|
(execute_lower_eh_dispatch): When any lowering resulted in
|
removing an edge, also delete unreachable blocks.
|
removing an edge, also delete unreachable blocks.
|
|
|
2010-03-10 Jakub Jelinek
|
2010-03-10 Jakub Jelinek
|
|
|
PR bootstrap/43287
|
PR bootstrap/43287
|
* config/rs6000/rs6000.c (rs6000_delegitimize_address): Handle
|
* config/rs6000/rs6000.c (rs6000_delegitimize_address): Handle
|
UNSPEC_MACHOPIC_OFFSET.
|
UNSPEC_MACHOPIC_OFFSET.
|
|
|
2010-03-09 Andreas Schwab
|
2010-03-09 Andreas Schwab
|
|
|
PR target/43294
|
PR target/43294
|
* config/m68k/m68k.c (TARGET_DELEGITIMIZE_ADDRESS): Define.
|
* config/m68k/m68k.c (TARGET_DELEGITIMIZE_ADDRESS): Define.
|
(m68k_delegitimize_address): New function.
|
(m68k_delegitimize_address): New function.
|
|
|
2010-03-09 Jakub Jelinek
|
2010-03-09 Jakub Jelinek
|
|
|
PR debug/43299
|
PR debug/43299
|
* dwarf2out.c (const_ok_for_output_1): Return 1 for UNSPECs.
|
* dwarf2out.c (const_ok_for_output_1): Return 1 for UNSPECs.
|
|
|
PR debug/43299
|
PR debug/43299
|
* var-tracking.c (adjust_sets): New function.
|
* var-tracking.c (adjust_sets): New function.
|
(count_with_sets, add_with_sets): Use it.
|
(count_with_sets, add_with_sets): Use it.
|
(get_adjusted_src): New inline function.
|
(get_adjusted_src): New inline function.
|
(add_stores): Use it.
|
(add_stores): Use it.
|
|
|
PR debug/43304
|
PR debug/43304
|
* var-tracking.c (vt_expand_loc_callback) : If dummy,
|
* var-tracking.c (vt_expand_loc_callback) : If dummy,
|
call cselib_dummy_expand_value_rtx_cb instead of
|
call cselib_dummy_expand_value_rtx_cb instead of
|
cselib_expand_value_rtx_cb.
|
cselib_expand_value_rtx_cb.
|
|
|
PR debug/43293
|
PR debug/43293
|
* config/i386/t-i386 (i386.o): Depend on debug.h and dwarf2out.h.
|
* config/i386/t-i386 (i386.o): Depend on debug.h and dwarf2out.h.
|
* config/i386/i386.c: Include debug.h and dwarf2out.h.
|
* config/i386/i386.c: Include debug.h and dwarf2out.h.
|
(ix86_file_end): If dwarf2out_do_cfi_asm (), emit .cfi_startproc
|
(ix86_file_end): If dwarf2out_do_cfi_asm (), emit .cfi_startproc
|
and .cfi_endproc around the pic thunks.
|
and .cfi_endproc around the pic thunks.
|
(output_set_got): For TARGET_DEEP_BRANCH_PREDICTION pic, ensure
|
(output_set_got): For TARGET_DEEP_BRANCH_PREDICTION pic, ensure
|
all queued unwind info register saves are saved before the call.
|
all queued unwind info register saves are saved before the call.
|
For !TARGET_DEEP_BRANCH_PREDICTION pic, ensure the call is
|
For !TARGET_DEEP_BRANCH_PREDICTION pic, ensure the call is
|
considered as sp-=4 for unwind info and the pop as sp+=4 which
|
considered as sp-=4 for unwind info and the pop as sp+=4 which
|
also clobbers dest, but doesn't actually restore it.
|
also clobbers dest, but doesn't actually restore it.
|
|
|
PR debug/43290
|
PR debug/43290
|
* config/i386/i386.c (ix86_get_drap_rtx): Don't set
|
* config/i386/i386.c (ix86_get_drap_rtx): Don't set
|
RTX_FRAME_RELATED_P.
|
RTX_FRAME_RELATED_P.
|
|
|
2010-03-09 Jie Zhang
|
2010-03-09 Jie Zhang
|
|
|
* config/arm/arm.md (thumb_mulsi3_v6): Remove trailing
|
* config/arm/arm.md (thumb_mulsi3_v6): Remove trailing
|
whitespaces in output template.
|
whitespaces in output template.
|
|
|
2010-03-09 Jie Zhang
|
2010-03-09 Jie Zhang
|
|
|
* ira-lives.c (check_and_make_def_use_conflict): Don't fall
|
* ira-lives.c (check_and_make_def_use_conflict): Don't fall
|
out array boundary.
|
out array boundary.
|
|
|
2010-03-08 Jakub Jelinek
|
2010-03-08 Jakub Jelinek
|
|
|
* Makefile.in (check_gcc_parallelize): Run dg-torture.exp and
|
* Makefile.in (check_gcc_parallelize): Run dg-torture.exp and
|
builtins.exp in a separate job.
|
builtins.exp in a separate job.
|
|
|
2010-03-08 Sebastian Pop
|
2010-03-08 Sebastian Pop
|
|
|
* graphite-sese-to-poly.c (add_param_constraints): Use
|
* graphite-sese-to-poly.c (add_param_constraints): Use
|
lower_bound_in_type and upper_bound_in_type.
|
lower_bound_in_type and upper_bound_in_type.
|
|
|
2010-03-08 Sebastian Pop
|
2010-03-08 Sebastian Pop
|
|
|
* graphite-sese-to-poly.c (add_param_constraints): Use sizetype
|
* graphite-sese-to-poly.c (add_param_constraints): Use sizetype
|
instead of unsigned_type_node.
|
instead of unsigned_type_node.
|
|
|
2010-03-08 Sebastian Pop
|
2010-03-08 Sebastian Pop
|
Reza Yazdani
|
Reza Yazdani
|
|
|
PR middle-end/43065
|
PR middle-end/43065
|
* graphite-sese-to-poly.c (add_param_constraints): Insert bounds
|
* graphite-sese-to-poly.c (add_param_constraints): Insert bounds
|
on pointer type parameters.
|
on pointer type parameters.
|
|
|
2010-03-08 Tobias Grosser
|
2010-03-08 Tobias Grosser
|
|
|
PR middle-end/42644
|
PR middle-end/42644
|
PR middle-end/42130
|
PR middle-end/42130
|
* graphite-clast-to-gimple.c (clast_to_gcc_expression): Also
|
* graphite-clast-to-gimple.c (clast_to_gcc_expression): Also
|
handle conversions from pointer to integers.
|
handle conversions from pointer to integers.
|
(gcc_type_for_cloog_iv): Choose the smalles signed integer as an
|
(gcc_type_for_cloog_iv): Choose the smalles signed integer as an
|
induction variable, to be able to work with code generated by CLooG.
|
induction variable, to be able to work with code generated by CLooG.
|
* graphite-sese-to-poly.c (scop_ivs_can_be_represented): New.
|
* graphite-sese-to-poly.c (scop_ivs_can_be_represented): New.
|
(build_poly_scop): Bail out if we cannot codegen a loop.
|
(build_poly_scop): Bail out if we cannot codegen a loop.
|
|
|
2010-03-08 Tobias Grosser
|
2010-03-08 Tobias Grosser
|
|
|
* graphite-clast-to-gimple.c (translate_clast): Do not short-cut
|
* graphite-clast-to-gimple.c (translate_clast): Do not short-cut
|
code generation with gloog_error.
|
code generation with gloog_error.
|
|
|
2010-03-08 Sebastian Pop
|
2010-03-08 Sebastian Pop
|
|
|
* sese.c (expand_scalar_variables_ssa_name): Add new argument for type.
|
* sese.c (expand_scalar_variables_ssa_name): Add new argument for type.
|
Call fold_convert on all the returned values.
|
Call fold_convert on all the returned values.
|
(expand_scalar_variables_expr): Pass to
|
(expand_scalar_variables_expr): Pass to
|
expand_scalar_variables_ssa_name the type of the resulting expression.
|
expand_scalar_variables_ssa_name the type of the resulting expression.
|
|
|
2010-03-08 Sebastian Pop
|
2010-03-08 Sebastian Pop
|
|
|
* graphite-ppl.c (ppl_min_for_le_polyhedron): Renamed
|
* graphite-ppl.c (ppl_min_for_le_polyhedron): Renamed
|
ppl_min_for_le_pointset.
|
ppl_min_for_le_pointset.
|
Use ppl_Pointset_Powerset_C_Polyhedron_minimize.
|
Use ppl_Pointset_Powerset_C_Polyhedron_minimize.
|
* graphite-ppl.h (ppl_min_for_le_polyhedron): Update declaration.
|
* graphite-ppl.h (ppl_min_for_le_polyhedron): Update declaration.
|
|
|
2010-03-08 Sebastian Pop
|
2010-03-08 Sebastian Pop
|
|
|
* graphite-dependences.c (map_into_dep_poly): Removed.
|
* graphite-dependences.c (map_into_dep_poly): Removed.
|
(dependence_polyhedron_1): Use combine_context_id_scat.
|
(dependence_polyhedron_1): Use combine_context_id_scat.
|
|
|
2010-03-08 Sebastian Pop
|
2010-03-08 Sebastian Pop
|
|
|
* graphite-poly.h (struct poly_scattering): Add layout documentation.
|
* graphite-poly.h (struct poly_scattering): Add layout documentation.
|
(struct poly_bb): Same.
|
(struct poly_bb): Same.
|
(combine_context_id_scat): New.
|
(combine_context_id_scat): New.
|
|
|
2010-03-08 Sebastian Pop
|
2010-03-08 Sebastian Pop
|
|
|
PR middle-end/42326
|
PR middle-end/42326
|
* sese.c (name_defined_in_loop_p): Return false for default
|
* sese.c (name_defined_in_loop_p): Return false for default
|
definitions.
|
definitions.
|
|
|
2010-03-08 Sebastian Pop
|
2010-03-08 Sebastian Pop
|
|
|
* graphite-clast-to-gimple.c (find_cloog_iv_in_expr): Simplify
|
* graphite-clast-to-gimple.c (find_cloog_iv_in_expr): Simplify
|
and clean up the logic.
|
and clean up the logic.
|
|
|
2010-03-08 Sebastian Pop
|
2010-03-08 Sebastian Pop
|
|
|
* graphite-sese-to-poly.c (add_param_constraints): Enabled: remove
|
* graphite-sese-to-poly.c (add_param_constraints): Enabled: remove
|
early return.
|
early return.
|
|
|
2010-03-08 Jakub Jelinek
|
2010-03-08 Jakub Jelinek
|
|
|
* var-tracking.c (remove_cselib_value_chains): Define only for
|
* var-tracking.c (remove_cselib_value_chains): Define only for
|
ENABLE_CHECKING.
|
ENABLE_CHECKING.
|
(dataflow_set_preserve_mem_locs, dataflow_set_remove_mem_locs,
|
(dataflow_set_preserve_mem_locs, dataflow_set_remove_mem_locs,
|
delete_slot_part, emit_notes_for_differences_1): Don't call
|
delete_slot_part, emit_notes_for_differences_1): Don't call
|
remove_cselib_value_chains here.
|
remove_cselib_value_chains here.
|
(set_slot_part, emit_notes_for_differences_2): Don't call
|
(set_slot_part, emit_notes_for_differences_2): Don't call
|
add_cselib_value_chains here.
|
add_cselib_value_chains here.
|
(preserved_values): New vector.
|
(preserved_values): New vector.
|
(preserve_value): New function.
|
(preserve_value): New function.
|
(add_uses, add_stores, vt_add_function_parameters): Use it
|
(add_uses, add_stores, vt_add_function_parameters): Use it
|
instead of cselib_preserve_value.
|
instead of cselib_preserve_value.
|
(changed_values_stack): New vector.
|
(changed_values_stack): New vector.
|
(check_changed_vars_0): New function.
|
(check_changed_vars_0): New function.
|
(check_changed_vars_1, check_changed_vars_2): Use it.
|
(check_changed_vars_1, check_changed_vars_2): Use it.
|
(emit_notes_for_changes): Call set_dv_changed (*, false) on all
|
(emit_notes_for_changes): Call set_dv_changed (*, false) on all
|
changed_values_stack VALUEs.
|
changed_values_stack VALUEs.
|
(vt_emit_notes): For all preserved_values call
|
(vt_emit_notes): For all preserved_values call
|
add_cselib_value_chains. If ENABLE_CHECKING call
|
add_cselib_value_chains. If ENABLE_CHECKING call
|
remove_cselib_value_chains before verifying value_chains is empty.
|
remove_cselib_value_chains before verifying value_chains is empty.
|
Initialize and free changed_values_stack.
|
Initialize and free changed_values_stack.
|
(vt_initialize): Initialize preserved_values.
|
(vt_initialize): Initialize preserved_values.
|
(vt_finalize): Free preserved_values.
|
(vt_finalize): Free preserved_values.
|
|
|
2010-03-08 Richard Guenther
|
2010-03-08 Richard Guenther
|
|
|
PR tree-optimization/43269
|
PR tree-optimization/43269
|
* tree-ssa-dse.c (dse_possible_dead_store_p): Fix post-dom
|
* tree-ssa-dse.c (dse_possible_dead_store_p): Fix post-dom
|
region detection.
|
region detection.
|
|
|
2010-03-08 Martin Jambor
|
2010-03-08 Martin Jambor
|
|
|
* ipa-prop.h (struct ipa_param_descriptor): Removed the called field.
|
* ipa-prop.h (struct ipa_param_descriptor): Removed the called field.
|
(ipa_is_param_called): Removed.
|
(ipa_is_param_called): Removed.
|
* ipa-prop.c (ipa_note_param_call): Do not set the called flag.
|
* ipa-prop.c (ipa_note_param_call): Do not set the called flag.
|
(ipa_print_node_params): Do not print the called flag.
|
(ipa_print_node_params): Do not print the called flag.
|
(ipa_write_node_info): Do not stream the called flag.
|
(ipa_write_node_info): Do not stream the called flag.
|
(ipa_read_node_info): Likewise.
|
(ipa_read_node_info): Likewise.
|
|
|
2010-03-07 Jakub Jelinek
|
2010-03-07 Jakub Jelinek
|
|
|
PR debug/43176
|
PR debug/43176
|
* Makefile.in (var-tracking.o): Depend on pointer-set.h.
|
* Makefile.in (var-tracking.o): Depend on pointer-set.h.
|
* cselib.c (struct expand_value_data): Add dummy field.
|
* cselib.c (struct expand_value_data): Add dummy field.
|
(cselib_expand_value_rtx, cselib_expand_value_rtx_cb): Initialize
|
(cselib_expand_value_rtx, cselib_expand_value_rtx_cb): Initialize
|
dummy to false.
|
dummy to false.
|
(cselib_dummy_expand_value_rtx_cb): New function.
|
(cselib_dummy_expand_value_rtx_cb): New function.
|
(cselib_expand_value_rtx_1): If evd->dummy is true, don't allocate
|
(cselib_expand_value_rtx_1): If evd->dummy is true, don't allocate
|
any rtl.
|
any rtl.
|
* cselib.h (cselib_dummy_expand_value_rtx_cb): New prototype.
|
* cselib.h (cselib_dummy_expand_value_rtx_cb): New prototype.
|
* var-tracking.c: Include pointer-set.h.
|
* var-tracking.c: Include pointer-set.h.
|
(variable): Change n_var_parts to char from int. Add
|
(variable): Change n_var_parts to char from int. Add
|
cur_loc_changed and in_changed_variables fields.
|
cur_loc_changed and in_changed_variables fields.
|
(variable_canonicalize): Remove.
|
(variable_canonicalize): Remove.
|
(shared_var_p): New inline function.
|
(shared_var_p): New inline function.
|
(unshare_variable): Maintain cur_loc_changed and
|
(unshare_variable): Maintain cur_loc_changed and
|
in_changed_variables fields. If var was in changed_variables,
|
in_changed_variables fields. If var was in changed_variables,
|
replace it there with new_var. Just copy cur_loc instead of
|
replace it there with new_var. Just copy cur_loc instead of
|
resetting it to something else.
|
resetting it to something else.
|
(variable_union): Don't recompute cur_loc. Use shared_var_p.
|
(variable_union): Don't recompute cur_loc. Use shared_var_p.
|
(dataflow_set_union): Don't call variable_canonicalize.
|
(dataflow_set_union): Don't call variable_canonicalize.
|
(loc_cmp): If both x and y are DEBUG_EXPRs, compare uids
|
(loc_cmp): If both x and y are DEBUG_EXPRs, compare uids
|
of their DEBUG_EXPR_TREE_DECLs.
|
of their DEBUG_EXPR_TREE_DECLs.
|
(canonicalize_loc_order_check): Verify that cur_loc is NULL
|
(canonicalize_loc_order_check): Verify that cur_loc is NULL
|
and in_changed_variables and cur_loc_changed is false.
|
and in_changed_variables and cur_loc_changed is false.
|
(variable_merge_over_cur): Clear cur_loc, in_changed_variables
|
(variable_merge_over_cur): Clear cur_loc, in_changed_variables
|
and cur_loc_changed. Don't update cur_loc here.
|
and cur_loc_changed. Don't update cur_loc here.
|
(variable_merge_over_src): Don't call variable_canonicalize.
|
(variable_merge_over_src): Don't call variable_canonicalize.
|
(dataflow_set_preserve_mem_locs): Use shared_var_p. When
|
(dataflow_set_preserve_mem_locs): Use shared_var_p. When
|
removing loc that is equal to cur_loc, clear cur_loc,
|
removing loc that is equal to cur_loc, clear cur_loc,
|
set cur_loc_changed and ensure variable_was_changed is called.
|
set cur_loc_changed and ensure variable_was_changed is called.
|
(dataflow_set_remove_mem_locs): Use shared_var_p. Only
|
(dataflow_set_remove_mem_locs): Use shared_var_p. Only
|
compare pointers in cur_loc check, if it is equal to loc,
|
compare pointers in cur_loc check, if it is equal to loc,
|
clear cur_loc and set cur_loc_changed. Don't recompute cur_loc here.
|
clear cur_loc and set cur_loc_changed. Don't recompute cur_loc here.
|
(variable_different_p): Remove compare_current_location argument,
|
(variable_different_p): Remove compare_current_location argument,
|
don't compare cur_loc.
|
don't compare cur_loc.
|
(dataflow_set_different_1): Adjust variable_different_p caller.
|
(dataflow_set_different_1): Adjust variable_different_p caller.
|
(variable_was_changed): If dv had some var in changed_variables
|
(variable_was_changed): If dv had some var in changed_variables
|
already, reset in_changed_variables flag for it and propagate
|
already, reset in_changed_variables flag for it and propagate
|
cur_loc_changed over to the new variable. On empty var
|
cur_loc_changed over to the new variable. On empty var
|
always set cur_loc_changed. Set in_changed_variables on whatever
|
always set cur_loc_changed. Set in_changed_variables on whatever
|
var is added to changed_variables.
|
var is added to changed_variables.
|
(set_slot_part): Clear cur_loc_changed and in_changed_variables.
|
(set_slot_part): Clear cur_loc_changed and in_changed_variables.
|
Use shared_var_p. When removing loc that is equal to cur_loc,
|
Use shared_var_p. When removing loc that is equal to cur_loc,
|
clear cur_loc and set cur_loc_changed. If cur_loc is NULL at the
|
clear cur_loc and set cur_loc_changed. If cur_loc is NULL at the
|
end, don't set it to something else, just call variable_was_changed.
|
end, don't set it to something else, just call variable_was_changed.
|
(delete_slot_part): Use shared_var_p. When cur_loc equals to
|
(delete_slot_part): Use shared_var_p. When cur_loc equals to
|
loc being removed, clear cur_loc and set cur_loc_changed.
|
loc being removed, clear cur_loc and set cur_loc_changed.
|
Set cur_loc_changed if all locations have been removed.
|
Set cur_loc_changed if all locations have been removed.
|
(struct expand_loc_callback_data): New type.
|
(struct expand_loc_callback_data): New type.
|
(vt_expand_loc_callback): Add dummy mode in which no rtxes are
|
(vt_expand_loc_callback): Add dummy mode in which no rtxes are
|
allocated. Always create SUBREGs if simplify_subreg failed.
|
allocated. Always create SUBREGs if simplify_subreg failed.
|
Prefer to use cur_loc, when that fails and still in
|
Prefer to use cur_loc, when that fails and still in
|
changed_variables (and seen first time) recompute it. Set
|
changed_variables (and seen first time) recompute it. Set
|
cur_loc_changed of variables which had to change cur_loc and
|
cur_loc_changed of variables which had to change cur_loc and
|
compute elcd->cur_loc_changed if any of the subexpressions used
|
compute elcd->cur_loc_changed if any of the subexpressions used
|
had to change cur_loc.
|
had to change cur_loc.
|
(vt_expand_loc): Adjust to pass arguments in
|
(vt_expand_loc): Adjust to pass arguments in
|
expand_loc_callback_data structure.
|
expand_loc_callback_data structure.
|
(vt_expand_loc_dummy): New function.
|
(vt_expand_loc_dummy): New function.
|
(emitted_notes): New variable.
|
(emitted_notes): New variable.
|
(emit_note_insn_var_location): For VALUEs and DEBUG_EXPR_DECLs
|
(emit_note_insn_var_location): For VALUEs and DEBUG_EXPR_DECLs
|
that weren't used for any other decl in current
|
that weren't used for any other decl in current
|
emit_notes_for_changes call call vt_expand_loc_dummy to update
|
emit_notes_for_changes call call vt_expand_loc_dummy to update
|
cur_loc. For -fno-var-tracking-assignments, set cur_loc to
|
cur_loc. For -fno-var-tracking-assignments, set cur_loc to
|
first loc_chain location if NULL before. Always use just
|
first loc_chain location if NULL before. Always use just
|
cur_loc instead of first loc_chain location. When cur_loc_changed
|
cur_loc instead of first loc_chain location. When cur_loc_changed
|
is false, when not --enable-checking=rtl just don't emit any note.
|
is false, when not --enable-checking=rtl just don't emit any note.
|
When rtl checking, compute the note and assert it is the same
|
When rtl checking, compute the note and assert it is the same
|
as previous note. Clear cur_loc_changed and in_changed_variables
|
as previous note. Clear cur_loc_changed and in_changed_variables
|
at the end before removing from changed_variables.
|
at the end before removing from changed_variables.
|
(check_changed_vars_3): New function.
|
(check_changed_vars_3): New function.
|
(emit_notes_for_changes): Traverse changed_vars to call
|
(emit_notes_for_changes): Traverse changed_vars to call
|
check_changed_vars_3 on each changed var.
|
check_changed_vars_3 on each changed var.
|
(emit_notes_for_differences_1): Clear cur_loc_changed and
|
(emit_notes_for_differences_1): Clear cur_loc_changed and
|
in_changed_variables. Recompute cur_loc of new_var.
|
in_changed_variables. Recompute cur_loc of new_var.
|
(emit_notes_for_differences_2): Clear cur_loc if new variable appears.
|
(emit_notes_for_differences_2): Clear cur_loc if new variable appears.
|
(vt_emit_notes): Initialize and destroy emitted_notes.
|
(vt_emit_notes): Initialize and destroy emitted_notes.
|
|
|
2010-03-07 Bernd Schmidt
|
2010-03-07 Bernd Schmidt
|
|
|
PR rtl-optimization/42220
|
PR rtl-optimization/42220
|
* regrename.c (scan_rtx) :
|
* regrename.c (scan_rtx) :
|
Use verify_reg_tracked to determine if we should use OP_OUT rather
|
Use verify_reg_tracked to determine if we should use OP_OUT rather
|
than OP_INOUT.
|
than OP_INOUT.
|
(build_def_use): If we see an in-out operand for a register that we
|
(build_def_use): If we see an in-out operand for a register that we
|
know nothing about, treat is an output if possible, fail the block if
|
know nothing about, treat is an output if possible, fail the block if
|
not.
|
not.
|
|
|
2010-03-06 Alexandre Oliva
|
2010-03-06 Alexandre Oliva
|
|
|
PR debug/42897
|
PR debug/42897
|
* gimple-iterator.c (gsi_remove): Propagate only PHI DEFs removed
|
* gimple-iterator.c (gsi_remove): Propagate only PHI DEFs removed
|
permanently.
|
permanently.
|
|
|
2010-03-06 Alexandre Oliva
|
2010-03-06 Alexandre Oliva
|
|
|
PR debug/42897
|
PR debug/42897
|
* tree-vect-loop.c (vect_transform_loop): Kill out-of-loop debug
|
* tree-vect-loop.c (vect_transform_loop): Kill out-of-loop debug
|
uses of relevant DEFs that are dead outside the loop too.
|
uses of relevant DEFs that are dead outside the loop too.
|
|
|
2010-03-06 Alexandre Oliva
|
2010-03-06 Alexandre Oliva
|
|
|
* var-tracking.c (dataflow_set_merge): Swap src and src2.
|
* var-tracking.c (dataflow_set_merge): Swap src and src2.
|
Reverted:
|
Reverted:
|
2010-01-13 Jakub Jelinek
|
2010-01-13 Jakub Jelinek
|
PR debug/41371
|
PR debug/41371
|
* var-tracking.c (values_to_unmark): New variable.
|
* var-tracking.c (values_to_unmark): New variable.
|
(find_loc_in_1pdv): Clear VALUE_RECURSED_INTO of values in
|
(find_loc_in_1pdv): Clear VALUE_RECURSED_INTO of values in
|
values_to_unmark vector. Moved body to...
|
values_to_unmark vector. Moved body to...
|
(find_loc_in_1pdv_1): ... this. Don't clear VALUE_RECURSED_INTO,
|
(find_loc_in_1pdv_1): ... this. Don't clear VALUE_RECURSED_INTO,
|
instead queue it into values_to_unmark vector.
|
instead queue it into values_to_unmark vector.
|
(vt_find_locations): Free values_to_unmark vector.
|
(vt_find_locations): Free values_to_unmark vector.
|
|
|
2010-03-05 Eric Botcazou
|
2010-03-05 Eric Botcazou
|
|
|
* Makefile.in (PLUGINCC, PLUGINCFLAGS): New variables.
|
* Makefile.in (PLUGINCC, PLUGINCFLAGS): New variables.
|
(site.exp): Export them when plugins are enabled.
|
(site.exp): Export them when plugins are enabled.
|
|
|
2010-03-05 Sebastian Pop
|
2010-03-05 Sebastian Pop
|
|
|
PR middle-end/42326
|
PR middle-end/42326
|
* tree-chrec.c (chrec_fold_plus_1): Do not handle convert expressions
|
* tree-chrec.c (chrec_fold_plus_1): Do not handle convert expressions
|
that contain scevs.
|
that contain scevs.
|
(chrec_fold_multiply): Same.
|
(chrec_fold_multiply): Same.
|
|
|
2010-03-04 Andrew Pinski
|
2010-03-04 Andrew Pinski
|
|
|
PR c/43248
|
PR c/43248
|
* c-decl.c (build_compound_literal): Return early if init is
|
* c-decl.c (build_compound_literal): Return early if init is
|
an error_mark_node.
|
an error_mark_node.
|
|
|
2010-03-04 Martin Jambor
|
2010-03-04 Martin Jambor
|
|
|
PR tree-optimization/43164
|
PR tree-optimization/43164
|
PR tree-optimization/43191
|
PR tree-optimization/43191
|
* tree-sra.c (type_consists_of_records_p): Reject records with
|
* tree-sra.c (type_consists_of_records_p): Reject records with
|
zero-size bit-fields at the end.
|
zero-size bit-fields at the end.
|
|
|
2010-03-04 Mike Stump
|
2010-03-04 Mike Stump
|
|
|
* Makefile.in (TAGS): Remove *.y.
|
* Makefile.in (TAGS): Remove *.y.
|
|
|
2010-03-04 Richard Guenther
|
2010-03-04 Richard Guenther
|
|
|
PR tree-optimization/40761
|
PR tree-optimization/40761
|
* tree-ssa-pre.c (compute_antic): Walk reverse postorder
|
* tree-ssa-pre.c (compute_antic): Walk reverse postorder
|
in reverse order.
|
in reverse order.
|
(my_rev_post_order_compute): New function.
|
(my_rev_post_order_compute): New function.
|
(init_pre): Call it.
|
(init_pre): Call it.
|
|
|
2010-03-04 Changpeng Fang
|
2010-03-04 Changpeng Fang
|
|
|
PR middle-end/43209
|
PR middle-end/43209
|
* tree-ssa-loop-ivopts.c (determine_use_iv_cost_condition): Do not
|
* tree-ssa-loop-ivopts.c (determine_use_iv_cost_condition): Do not
|
decrease the cost of an IV candidate when the cost is infinite.
|
decrease the cost of an IV candidate when the cost is infinite.
|
|
|
2010-03-04 Ralf Wildenhues
|
2010-03-04 Ralf Wildenhues
|
|
|
* doc/extend.texi (Vector Extensions, X86 Built-in Functions):
|
* doc/extend.texi (Vector Extensions, X86 Built-in Functions):
|
Use '3DNow!' for the extension of that name, ensure normal space
|
Use '3DNow!' for the extension of that name, ensure normal space
|
after the string.
|
after the string.
|
* doc/invoke.texi (i386 and x86-64 Options): Likewise.
|
* doc/invoke.texi (i386 and x86-64 Options): Likewise.
|
|
|
2010-03-03 Jeff Law
|
2010-03-03 Jeff Law
|
|
|
* PR middle-end/32693
|
* PR middle-end/32693
|
* expmed.c (store_bit_field_1): Use gen_lowpart_SUBREG rather
|
* expmed.c (store_bit_field_1): Use gen_lowpart_SUBREG rather
|
than gen_rtx_SUBREG.
|
than gen_rtx_SUBREG.
|
(extract_bit_field_1): Likewise.
|
(extract_bit_field_1): Likewise.
|
|
|
2010-03-03 Janis Johnson
|
2010-03-03 Janis Johnson
|
|
|
* doc/sourcebuild.texi (Test directives): Document that arguments
|
* doc/sourcebuild.texi (Test directives): Document that arguments
|
include-opts and exclude-opts are now optional for dg-skip-if,
|
include-opts and exclude-opts are now optional for dg-skip-if,
|
dg-xfail-if, dg-xfail-run-if, and dg-shouldfail.
|
dg-xfail-if, dg-xfail-run-if, and dg-shouldfail.
|
|
|
2010-03-03 Jason Merrill
|
2010-03-03 Jason Merrill
|
|
|
PR c++/12909
|
PR c++/12909
|
* cgraph.h (varpool_node): Add extra_name field.
|
* cgraph.h (varpool_node): Add extra_name field.
|
* varpool.c (varpool_extra_name_alias): New.
|
* varpool.c (varpool_extra_name_alias): New.
|
(varpool_assemble_decl): Emit extra name aliases.
|
(varpool_assemble_decl): Emit extra name aliases.
|
(varpool_mark_needed_node): Look past an extra name alias.
|
(varpool_mark_needed_node): Look past an extra name alias.
|
* lto-streamer.h (LTO_tags): Add LTO_var_decl_alias.
|
* lto-streamer.h (LTO_tags): Add LTO_var_decl_alias.
|
* lto-streamer-in.c (lto_input_tree): Read it.
|
* lto-streamer-in.c (lto_input_tree): Read it.
|
* lto-streamer-out.c (output_unreferenced_globals): Write it.
|
* lto-streamer-out.c (output_unreferenced_globals): Write it.
|
|
|
2010-03-03 Eric Botcazou
|
2010-03-03 Eric Botcazou
|
|
|
* config.gcc (sparc64-*-solaris2*, sparc-*-solaris2*): Merge into...
|
* config.gcc (sparc64-*-solaris2*, sparc-*-solaris2*): Merge into...
|
(sparc*-*-solaris2*): ...this.
|
(sparc*-*-solaris2*): ...this.
|
|
|
2010-03-03 Jakub Jelinek
|
2010-03-03 Jakub Jelinek
|
|
|
PR debug/43229
|
PR debug/43229
|
* cfgexpand.c (expand_debug_expr): Handle DOT_PROD_EXPR,
|
* cfgexpand.c (expand_debug_expr): Handle DOT_PROD_EXPR,
|
WIDEN_MULT_EXPR and WIDEN_SUM_EXPR. Return NULL without
|
WIDEN_MULT_EXPR and WIDEN_SUM_EXPR. Return NULL without
|
ICE for vector expressions, ADDR_SPACE_CONVERT_EXPR,
|
ICE for vector expressions, ADDR_SPACE_CONVERT_EXPR,
|
FIXED_CONVERT_EXPR, OBJ_TYPE_REF and WITH_SIZE_EXPR.
|
FIXED_CONVERT_EXPR, OBJ_TYPE_REF and WITH_SIZE_EXPR.
|
|
|
PR debug/43237
|
PR debug/43237
|
* dwarf2out.c (add_bound_info): If a decl bound doesn't have decl_die,
|
* dwarf2out.c (add_bound_info): If a decl bound doesn't have decl_die,
|
fallthrough to default handling, just with want_address 0 instead of 2.
|
fallthrough to default handling, just with want_address 0 instead of 2.
|
For single element lists, add_AT_loc directly, otherwise create an
|
For single element lists, add_AT_loc directly, otherwise create an
|
artificial variable DIE and stick location list to it.
|
artificial variable DIE and stick location list to it.
|
|
|
PR debug/43177
|
PR debug/43177
|
* var-tracking.c (loc_cmp): Don't assert VALUEs have the same mode.
|
* var-tracking.c (loc_cmp): Don't assert VALUEs have the same mode.
|
(VAL_EXPR_HAS_REVERSE): Define.
|
(VAL_EXPR_HAS_REVERSE): Define.
|
(reverse_op): New function.
|
(reverse_op): New function.
|
(add_stores): For reversible operations add an extra MO_VAL_USE.
|
(add_stores): For reversible operations add an extra MO_VAL_USE.
|
|
|
2010-03-02 Jason Merrill
|
2010-03-02 Jason Merrill
|
|
|
* c-pretty-print.c (pp_c_specifier_qualifier_list): Print vector size.
|
* c-pretty-print.c (pp_c_specifier_qualifier_list): Print vector size.
|
|
|
2010-03-02 Eric Botcazou
|
2010-03-02 Eric Botcazou
|
|
|
* config.gcc (sparc-*-linux*): Do not include sparc/gas.h.
|
* config.gcc (sparc-*-linux*): Do not include sparc/gas.h.
|
(sparc64-*-linux*): Likewise.
|
(sparc64-*-linux*): Likewise.
|
(sparc64-*-solaris2*): Include assembler files before linker ones.
|
(sparc64-*-solaris2*): Include assembler files before linker ones.
|
(sparc-*-solaris2*): Simplify and reorder to match previous case.
|
(sparc-*-solaris2*): Simplify and reorder to match previous case.
|
* config/sparc/gas.h: Delete.
|
* config/sparc/gas.h: Delete.
|
* config/sparc/sol2-64.h: Add copyright notice.
|
* config/sparc/sol2-64.h: Add copyright notice.
|
* config/sparc/sol2-gas-bi.h: Likewise.
|
* config/sparc/sol2-gas-bi.h: Likewise.
|
* config/sparc/sol2-gld.h: Likewise.
|
* config/sparc/sol2-gld.h: Likewise.
|
* config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Delete.
|
* config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Delete.
|
* config/sparc/sol2.h (TARGET_ASM_NAMED_SECTION): Redefine.
|
* config/sparc/sol2.h (TARGET_ASM_NAMED_SECTION): Redefine.
|
* config/sparc/sol2-gas.h (TARGET_ASM_NAMED_SECTION): Likewise.
|
* config/sparc/sol2-gas.h (TARGET_ASM_NAMED_SECTION): Likewise.
|
* config/sparc/sparc.c (TARGET_ASM_ALIGNED_SI_OP): Never redefine.
|
* config/sparc/sparc.c (TARGET_ASM_ALIGNED_SI_OP): Never redefine.
|
(sparc_elf_asm_named_section): Rename into...
|
(sparc_elf_asm_named_section): Rename into...
|
(sparc_solaris_elf_asm_named_section): ...this. Always define.
|
(sparc_solaris_elf_asm_named_section): ...this. Always define.
|
|
|
2010-03-02 Uros Bizjak
|
2010-03-02 Uros Bizjak
|
|
|
* config/alpha/alpha.c (override_options): Fix -mtune error message.
|
* config/alpha/alpha.c (override_options): Fix -mtune error message.
|
|
|
2010-03-02 Jeff Law
|
2010-03-02 Jeff Law
|
|
|
PR middle-end/42431
|
PR middle-end/42431
|
* reload1.c (rtx_p, substitute_stack): Declare.
|
* reload1.c (rtx_p, substitute_stack): Declare.
|
(substitute): Record addresses of changed rtxs.
|
(substitute): Record addresses of changed rtxs.
|
(gen_reload_chain_without_interm_reg_p): Don't use copy_rtx anymore.
|
(gen_reload_chain_without_interm_reg_p): Don't use copy_rtx anymore.
|
Restore the original rtx when complete.
|
Restore the original rtx when complete.
|
(reload): Free subsitute_stack when complete.
|
(reload): Free subsitute_stack when complete.
|
|
|
2010-03-02 Janis Johnson
|
2010-03-02 Janis Johnson
|
|
|
* doc/gccint.texi (menu): Add Testsuites as a chapter.
|
* doc/gccint.texi (menu): Add Testsuites as a chapter.
|
* doc/sourcebuild.texi (Testsuites): Move up a level to be a
|
* doc/sourcebuild.texi (Testsuites): Move up a level to be a
|
new chapter.
|
new chapter.
|
(Test Idioms, Test Directives, Ada Tests, C Tests, libgcj Tests,
|
(Test Idioms, Test Directives, Ada Tests, C Tests, libgcj Tests,
|
LTO Testing, gcov Testing, profopt Testing, compat Testing,
|
LTO Testing, gcov Testing, profopt Testing, compat Testing,
|
Torture Tests): Change from subsection to section.
|
Torture Tests): Change from subsection to section.
|
|
|
2010-03-02 Jakub Jelinek
|
2010-03-02 Jakub Jelinek
|
Steven Bosscher
|
Steven Bosscher
|
|
|
* var-tracking.c (vt_initialize): Scan insns in ebb chunks
|
* var-tracking.c (vt_initialize): Scan insns in ebb chunks
|
instead of bb.
|
instead of bb.
|
|
|
2010-03-02 Reza Yazdani
|
2010-03-02 Reza Yazdani
|
|
|
PR middle-end/42640
|
PR middle-end/42640
|
* tree-loop-distribution.c (update_phis_for_loop_copy): Replaced
|
* tree-loop-distribution.c (update_phis_for_loop_copy): Replaced
|
the assignment from the new induction variable to the assignment
|
the assignment from the new induction variable to the assignment
|
of the value from the original loop PHI function.
|
of the value from the original loop PHI function.
|
|
|
2010-03-01 Janis Johnson
|
2010-03-01 Janis Johnson
|
Daniel Jacobowitz
|
Daniel Jacobowitz
|
|
|
* doc/sourcebuild.texi (Test directives): Clarify options to
|
* doc/sourcebuild.texi (Test directives): Clarify options to
|
dg-skip-if.
|
dg-skip-if.
|
|
|
2010-03-01 Rainer Orth
|
2010-03-01 Rainer Orth
|
|
|
* configure.ac (gcc_cv_as_cfi_directive) [i?86-*-solaris*]:
|
* configure.ac (gcc_cv_as_cfi_directive) [i?86-*-solaris*]:
|
Disable cfi directives unless GCC and gas agree on using read-only
|
Disable cfi directives unless GCC and gas agree on using read-only
|
.eh_frame sections for 64-bit.
|
.eh_frame sections for 64-bit.
|
* configure: Regenerate.
|
* configure: Regenerate.
|
|
|
2010-03-01 Richard Guenther
|
2010-03-01 Richard Guenther
|
|
|
PR tree-optimization/43220
|
PR tree-optimization/43220
|
* tree-ssa-ccp.c (optimize_stack_restore): Do not optimize
|
* tree-ssa-ccp.c (optimize_stack_restore): Do not optimize
|
BUILT_IN_STACK_{SAVE,RESTORE} around alloca.
|
BUILT_IN_STACK_{SAVE,RESTORE} around alloca.
|
|
|
2010-03-01 Richard Guenther
|
2010-03-01 Richard Guenther
|
Martin Jambor
|
Martin Jambor
|
|
|
PR middle-end/41250
|
PR middle-end/41250
|
* gimplify.c (gimplify_body): Unset DECL_HAS_VALUE_EXPR_P on
|
* gimplify.c (gimplify_body): Unset DECL_HAS_VALUE_EXPR_P on
|
gimplified parameters.
|
gimplified parameters.
|
|
|
2010-03-01 Christian Bruel
|
2010-03-01 Christian Bruel
|
|
|
* except.c (dw2_build_landing_pads): set LABEL_PRESERVE_P.
|
* except.c (dw2_build_landing_pads): set LABEL_PRESERVE_P.
|
|
|
2010-03-01 H.J. Lu
|
2010-03-01 H.J. Lu
|
|
|
* config/i386/linux64.h (ASM_SPEC): Use SPEC_32 and SPEC_64.
|
* config/i386/linux64.h (ASM_SPEC): Use SPEC_32 and SPEC_64.
|
|
|
2010-03-01 Richard Guenther
|
2010-03-01 Richard Guenther
|
|
|
PR middle-end/43213
|
PR middle-end/43213
|
* expr.c (expand_assignment): Use the alias-oracle to tell
|
* expr.c (expand_assignment): Use the alias-oracle to tell
|
if the rhs aliases the result decl.
|
if the rhs aliases the result decl.
|
|
|
2010-03-01 Rainer Orth
|
2010-03-01 Rainer Orth
|
|
|
PR pch/14940
|
PR pch/14940
|
* config/host-solaris.c (HOST_HOOKS_GT_PCH_GET_ADDRESS): Redefine
|
* config/host-solaris.c (HOST_HOOKS_GT_PCH_GET_ADDRESS): Redefine
|
to sol_gt_pch_get_address.
|
to sol_gt_pch_get_address.
|
(TRY_EMPTY_VM_SPACE): Define for all combinations of 32 and
|
(TRY_EMPTY_VM_SPACE): Define for all combinations of 32 and
|
64-bit, SPARC and x86.
|
64-bit, SPARC and x86.
|
(sol_gt_pch_get_address): New function.
|
(sol_gt_pch_get_address): New function.
|
|
|
2010-03-01 Marco Poletti
|
2010-03-01 Marco Poletti
|
|
|
* toplev.h (inform_n, error_n): Declare.
|
* toplev.h (inform_n, error_n): Declare.
|
* diagnostic.c (inform_n, error_n): New function.
|
* diagnostic.c (inform_n, error_n): New function.
|
|
|
2010-03-01 Jakub Jelinek
|
2010-03-01 Jakub Jelinek
|
|
|
* cfgexpand.c (expand_used_vars): If an artificial non-ignored var
|
* cfgexpand.c (expand_used_vars): If an artificial non-ignored var
|
has no rtl yet when processing local_decls, queue it and recheck
|
has no rtl yet when processing local_decls, queue it and recheck
|
if deferred stack allocation hasn't assigned it rtl.
|
if deferred stack allocation hasn't assigned it rtl.
|
|
|
2010-02-28 Kaz Kojima
|
2010-02-28 Kaz Kojima
|
|
|
* config/sh/sh.c (unspec_bbr_uid): New.
|
* config/sh/sh.c (unspec_bbr_uid): New.
|
(gen_block_redirect): Use it instead of INSN_UID.
|
(gen_block_redirect): Use it instead of INSN_UID.
|
(gen_far_branch): Likewise.
|
(gen_far_branch): Likewise.
|
|
|
2010-02-28 H.J. Lu
|
2010-02-28 H.J. Lu
|
|
|
* config/i386/darwin.h (TARGET_SUBTARGET32_ISA_DEFAULT): Make
|
* config/i386/darwin.h (TARGET_SUBTARGET32_ISA_DEFAULT): Make
|
it the same as TARGET_SUBTARGET64_ISA_DEFAULT.
|
it the same as TARGET_SUBTARGET64_ISA_DEFAULT.
|
|
|
2010-02-28 Ralf Wildenhues
|
2010-02-28 Ralf Wildenhues
|
|
|
* doc/invoke.texi (Warning Options, RX Options): Fix typos.
|
* doc/invoke.texi (Warning Options, RX Options): Fix typos.
|
(Warning Options): -Wno-conversion-null is valid for
|
(Warning Options): -Wno-conversion-null is valid for
|
Objective-C++ as well.
|
Objective-C++ as well.
|
* doc/tm.texi (Named Address Spaces): Likewise.
|
* doc/tm.texi (Named Address Spaces): Likewise.
|
* doc/plugins.texi (Plugins): Replace TABs with spaces.
|
* doc/plugins.texi (Plugins): Replace TABs with spaces.
|
* doc/tree-ssa.texi (Tree SSA): Likewise.
|
* doc/tree-ssa.texi (Tree SSA): Likewise.
|
|
|
2010-02-27 H.J. Lu
|
2010-02-27 H.J. Lu
|
|
|
PR bootstrap/43202
|
PR bootstrap/43202
|
* config.gcc: Don't enable SSE math for i[34567]86-*-darwin*
|
* config.gcc: Don't enable SSE math for i[34567]86-*-darwin*
|
by default. Don't set the default arch for
|
by default. Don't set the default arch for
|
i[34567]86-*-darwin*|x86_64-*-darwin*.
|
i[34567]86-*-darwin*|x86_64-*-darwin*.
|
|
|
2010-02-27 H.J. Lu
|
2010-02-27 H.J. Lu
|
|
|
PR bootstrap/43202
|
PR bootstrap/43202
|
* config.gcc: Enable SSE math for i[34567]86-*-darwin* by
|
* config.gcc: Enable SSE math for i[34567]86-*-darwin* by
|
default. Set the default 32bit/64bit archs with $with_arch
|
default. Set the default 32bit/64bit archs with $with_arch
|
instead of $arch for i[34567]86-*-*|x86_64-*-* targets.
|
instead of $arch for i[34567]86-*-*|x86_64-*-* targets.
|
|
|
2010-02-27 Richard Guenther
|
2010-02-27 Richard Guenther
|
|
|
PR tree-optimization/43186
|
PR tree-optimization/43186
|
* params.def (PARAM_MAX_UNROLL_ITERATIONS): New param.
|
* params.def (PARAM_MAX_UNROLL_ITERATIONS): New param.
|
* doc/invoke.texi (max-completely-peel-loop-nest-depth): Document.
|
* doc/invoke.texi (max-completely-peel-loop-nest-depth): Document.
|
* tree-ssa-loop-ivcanon.c (tree_unroll_loops_completely): Limit
|
* tree-ssa-loop-ivcanon.c (tree_unroll_loops_completely): Limit
|
unroller iterations.
|
unroller iterations.
|
|
|
2010-02-27 H.J. Lu
|
2010-02-27 H.J. Lu
|
|
|
* config.gcc: Set the default 32bit/64bit archs if 64bit ISA is
|
* config.gcc: Set the default 32bit/64bit archs if 64bit ISA is
|
required and i[34567]86-*-* targets don't support 64bit ISA.
|
required and i[34567]86-*-* targets don't support 64bit ISA.
|
|
|
2010-02-26 Eric Botcazou
|
2010-02-26 Eric Botcazou
|
|
|
PR ada/43096
|
PR ada/43096
|
* tree-ssa-alias.c (same_type_for_tbaa): Return -1 if the types have
|
* tree-ssa-alias.c (same_type_for_tbaa): Return -1 if the types have
|
the same alias set.
|
the same alias set.
|
|
|
2010-02-26 H.J. Lu
|
2010-02-26 H.J. Lu
|
|
|
* config.gcc: Set the default arch at least to Prescott for
|
* config.gcc: Set the default arch at least to Prescott for
|
i[34567]86-*-darwin* and Pentium 4 for i[34567]86-*-* targets
|
i[34567]86-*-darwin* and Pentium 4 for i[34567]86-*-* targets
|
if SSE math is enabled.
|
if SSE math is enabled.
|
|
|
2010-02-26 Manuel López-Ibáñez
|
2010-02-26 Manuel López-Ibáñez
|
|
|
* diagnostic.c (diagnostic_initialize): Update.
|
* diagnostic.c (diagnostic_initialize): Update.
|
(diagnostic_report_diagnostic): Test inhibit_notes_p for
|
(diagnostic_report_diagnostic): Test inhibit_notes_p for
|
informative notes.
|
informative notes.
|
* diagnostic.h (diagnostic_context): New bool inhibit_notes_p.
|
* diagnostic.h (diagnostic_context): New bool inhibit_notes_p.
|
(diagnostic_inhibit_notes): New.
|
(diagnostic_inhibit_notes): New.
|
* toplev.c (process_options): inhibit notes with -fcompare-debug.
|
* toplev.c (process_options): inhibit notes with -fcompare-debug.
|
|
|
2010-02-26 Manuel López-Ibáñez
|
2010-02-26 Manuel López-Ibáñez
|
|
|
PR c/20631
|
PR c/20631
|
* doc/cpp.texi: Use c90 instead of c89 and gnu90 instead of gnu89.
|
* doc/cpp.texi: Use c90 instead of c89 and gnu90 instead of gnu89.
|
* doc/standards.texi: Likewise.
|
* doc/standards.texi: Likewise.
|
* doc/extend.texi: Likewise.
|
* doc/extend.texi: Likewise.
|
* doc/trouble.texi: Likewise.
|
* doc/trouble.texi: Likewise.
|
* doc/cppopts.texi: Likewise.
|
* doc/cppopts.texi: Likewise.
|
* doc/install.texi: Likewise.
|
* doc/install.texi: Likewise.
|
* c.opt (std=c90,std=gnu90): New options.
|
* c.opt (std=c90,std=gnu90): New options.
|
* c-opts.c (c_common_handle_option): Handle them.
|
* c-opts.c (c_common_handle_option): Handle them.
|
|
|
2010-02-26 Manuel López-Ibáñez
|
2010-02-26 Manuel López-Ibáñez
|
|
|
PR c/24577
|
PR c/24577
|
* c-decl.c (undeclared_variable): Use an informative note.
|
* c-decl.c (undeclared_variable): Use an informative note.
|
|
|
2010-02-26 Richard Guenther
|
2010-02-26 Richard Guenther
|
|
|
PR tree-optimization/43186
|
PR tree-optimization/43186
|
* gimple.h (gimple_fold): Remove.
|
* gimple.h (gimple_fold): Remove.
|
* gimple.c (gimple_fold): Remove. Inline into single user ...
|
* gimple.c (gimple_fold): Remove. Inline into single user ...
|
* tree-cfgcleanup.c (cleanup_control_expr_graph): ... here.
|
* tree-cfgcleanup.c (cleanup_control_expr_graph): ... here.
|
Try harder for conditions.
|
Try harder for conditions.
|
|
|
2010-02-26 Jakub Jelinek
|
2010-02-26 Jakub Jelinek
|
|
|
PR debug/43190
|
PR debug/43190
|
* function.c (used_types_insert): Don't skip through named pointer
|
* function.c (used_types_insert): Don't skip through named pointer
|
types. Don't use TYPE_MAIN_VARIANT if the original type has a name
|
types. Don't use TYPE_MAIN_VARIANT if the original type has a name
|
and it is different from the main variant's type.
|
and it is different from the main variant's type.
|
|
|
2010-02-26 Nick Clifton
|
2010-02-26 Nick Clifton
|
|
|
* config/rx/rx.md (sminsi3): Remove bogus alternative.
|
* config/rx/rx.md (sminsi3): Remove bogus alternative.
|
|
|
2010-02-26 H.J. Lu
|
2010-02-26 H.J. Lu
|
|
|
* config.gcc: Support --with-fpmath=sse for x86.
|
* config.gcc: Support --with-fpmath=sse for x86.
|
|
|
* config/i386/ssemath.h: New.
|
* config/i386/ssemath.h: New.
|
|
|
* doc/install.texi (--with-fpmath=sse): Documented.
|
* doc/install.texi (--with-fpmath=sse): Documented.
|
|
|
2010-02-26 Richard Guenther
|
2010-02-26 Richard Guenther
|
|
|
PR tree-optimization/43188
|
PR tree-optimization/43188
|
* tree-vect-stmts.c (get_vectype_for_scalar_type): Do not build
|
* tree-vect-stmts.c (get_vectype_for_scalar_type): Do not build
|
vector types of over-aligned element type.
|
vector types of over-aligned element type.
|
|
|
2010-02-26 Uros Bizjak
|
2010-02-26 Uros Bizjak
|
|
|
PR target/43175
|
PR target/43175
|
* config/i386/i386.c (expand_vec_perm_blend): Use correct
|
* config/i386/i386.c (expand_vec_perm_blend): Use correct
|
operands in V8HImode subregs. Fix operand order in VEC_MERGE rtx.
|
operands in V8HImode subregs. Fix operand order in VEC_MERGE rtx.
|
|
|
2010-02-26 Jan Kratochvil
|
2010-02-26 Jan Kratochvil
|
|
|
* doc/invoke.texi (-fvar-tracking-assignments): Fix typo.
|
* doc/invoke.texi (-fvar-tracking-assignments): Fix typo.
|
|
|
2010-02-26 Jakub Jelinek
|
2010-02-26 Jakub Jelinek
|
|
|
* Makefile.in (var-tracking.o): Depend on $(DIAGNOSTIC_H).
|
* Makefile.in (var-tracking.o): Depend on $(DIAGNOSTIC_H).
|
* var-tracking.c: Include diagnostic.h.
|
* var-tracking.c: Include diagnostic.h.
|
(debug_dv): New function.
|
(debug_dv): New function.
|
(dump_var): Print DEBUG_EXPR_DECLs as D#N instead of D.-N.
|
(dump_var): Print DEBUG_EXPR_DECLs as D#N instead of D.-N.
|
|
|
PR debug/43160
|
PR debug/43160
|
* var-tracking.c (dv_onepart_p): Return true for DEBUG_EXPR_DECLs.
|
* var-tracking.c (dv_onepart_p): Return true for DEBUG_EXPR_DECLs.
|
(add_value_chain, add_value_chains, remove_value_chain,
|
(add_value_chain, add_value_chains, remove_value_chain,
|
remove_value_chains): Handle DEBUG_EXPRs.
|
remove_value_chains): Handle DEBUG_EXPRs.
|
(check_changed_vars_1, check_changed_vars_2): Handle DEBUG_EXPR_DECLs.
|
(check_changed_vars_1, check_changed_vars_2): Handle DEBUG_EXPR_DECLs.
|
|
|
PR debug/43161
|
PR debug/43161
|
* regcprop.c (struct queued_debug_insn_change): New type.
|
* regcprop.c (struct queued_debug_insn_change): New type.
|
(struct value_data_entry): Add debug_insn_changes field.
|
(struct value_data_entry): Add debug_insn_changes field.
|
(struct value_data): Add n_debug_insn_changes field.
|
(struct value_data): Add n_debug_insn_changes field.
|
(debug_insn_changes_pool): New variable.
|
(debug_insn_changes_pool): New variable.
|
(free_debug_insn_changes, apply_debug_insn_changes,
|
(free_debug_insn_changes, apply_debug_insn_changes,
|
cprop_find_used_regs_1, cprop_find_used_regs): New functions.
|
cprop_find_used_regs_1, cprop_find_used_regs): New functions.
|
(kill_value_one_regno): Call free_debug_insn_changes if needed.
|
(kill_value_one_regno): Call free_debug_insn_changes if needed.
|
(init_value_data): Clear debug_insn_changes and n_debug_insn_changes
|
(init_value_data): Clear debug_insn_changes and n_debug_insn_changes
|
fields.
|
fields.
|
(replace_oldest_value_reg): Don't change DEBUG_INSNs, instead queue
|
(replace_oldest_value_reg): Don't change DEBUG_INSNs, instead queue
|
changes for them.
|
changes for them.
|
(copyprop_hardreg_forward_1): Don't call apply_change_group for
|
(copyprop_hardreg_forward_1): Don't call apply_change_group for
|
DEBUG_INSNs. For a real insn, if there are queued DEBUG_INSN
|
DEBUG_INSNs. For a real insn, if there are queued DEBUG_INSN
|
changes, call cprop_find_used_regs via note_stores.
|
changes, call cprop_find_used_regs via note_stores.
|
(copyprop_hardreg_forward): When copying vd from predecessor
|
(copyprop_hardreg_forward): When copying vd from predecessor
|
which has any queued DEBUG_INSN changes, make sure the pointers are
|
which has any queued DEBUG_INSN changes, make sure the pointers are
|
cleared. At the end call df_analyze and then if there are any
|
cleared. At the end call df_analyze and then if there are any
|
DEBUG_INSN changes queued at the end of some basic block for still
|
DEBUG_INSN changes queued at the end of some basic block for still
|
live registers, apply them.
|
live registers, apply them.
|
(pass_cprop_hardreg): Set TODO_df_finish in todo_flags_finish.
|
(pass_cprop_hardreg): Set TODO_df_finish in todo_flags_finish.
|
|
|
2010-02-25 Uros Bizjak
|
2010-02-25 Uros Bizjak
|
|
|
* config.gcc (i[34567]86-*-* | x86_64-*-*): Split long line.
|
* config.gcc (i[34567]86-*-* | x86_64-*-*): Split long line.
|
(arm*-*-*): Ditto.
|
(arm*-*-*): Ditto.
|
|
|
2010-02-25 H.J. Lu
|
2010-02-25 H.J. Lu
|
|
|
* config.gcc: Set arch/cpu for i[34567]86-*-*|x86_64-*-*
|
* config.gcc: Set arch/cpu for i[34567]86-*-*|x86_64-*-*
|
targets. Set the default with_cpu/with_arch from arch/cpu.
|
targets. Set the default with_cpu/with_arch from arch/cpu.
|
Allow x86-64 and native for with_cpu/with_arch.
|
Allow x86-64 and native for with_cpu/with_arch.
|
|
|
2010-02-25 Nicolas Benoit
|
2010-02-25 Nicolas Benoit
|
|
|
* ebitmap.c: Change calls to verify_popcount with calls to
|
* ebitmap.c: Change calls to verify_popcount with calls to
|
sbitmap_verify_popcount.
|
sbitmap_verify_popcount.
|
(ebitmap_clear_bit): Fixed map->cacheindex test and
|
(ebitmap_clear_bit): Fixed map->cacheindex test and
|
map>cache update when bit clearing results in an empty
|
map>cache update when bit clearing results in an empty
|
element.
|
element.
|
|
|
2010-02-25 Michael Meissner
|
2010-02-25 Michael Meissner
|
|
|
PR target/43154
|
PR target/43154
|
* config/rs6000/vector.md (VEC_64): New iterator for V2DF, V2DI.
|
* config/rs6000/vector.md (VEC_64): New iterator for V2DF, V2DI.
|
(vec_interleave_high): Rename from vec_interleave_highv2df
|
(vec_interleave_high): Rename from vec_interleave_highv2df
|
and support both V2DF and V2DI modes.
|
and support both V2DF and V2DI modes.
|
(vec_interleave_low): Rename from vec_interleave_lowv2df and
|
(vec_interleave_low): Rename from vec_interleave_lowv2df and
|
support both V2DF and V2DI modes.
|
support both V2DF and V2DI modes.
|
(general): Delete trailing whitespace from a few patterns.
|
(general): Delete trailing whitespace from a few patterns.
|
|
|
* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
|
* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
|
V2DF/V2DI interleave high/low builtins.
|
V2DF/V2DI interleave high/low builtins.
|
|
|
* config/rs6000/rs6000-builtin.def (VSX_BUILTIN_VEC_MERGE*): Add
|
* config/rs6000/rs6000-builtin.def (VSX_BUILTIN_VEC_MERGE*): Add
|
new VSX builtins.
|
new VSX builtins.
|
|
|
* config/rs6000/rs6000.c (bdesc_2arg): Add support for V2DF/V2DI
|
* config/rs6000/rs6000.c (bdesc_2arg): Add support for V2DF/V2DI
|
interleave high/low functions.
|
interleave high/low functions.
|
|
|
2010-02-25 Gerald Pfeifer
|
2010-02-25 Gerald Pfeifer
|
|
|
* doc/extend.texi (Symbol-Renaming Pragmas): Fix spelling of
|
* doc/extend.texi (Symbol-Renaming Pragmas): Fix spelling of
|
#pragma extern_prefix.
|
#pragma extern_prefix.
|
|
|
2010-02-25 Jakub Jelinek
|
2010-02-25 Jakub Jelinek
|
|
|
PR debug/43166
|
PR debug/43166
|
* cfgexpand.c (expand_debug_expr) : If mode is
|
* cfgexpand.c (expand_debug_expr) : If mode is
|
BLKmode, assert op0 is a MEM and just adjust its mode.
|
BLKmode, assert op0 is a MEM and just adjust its mode.
|
|
|
PR debug/43165
|
PR debug/43165
|
* cfgexpand.c (expand_debug_expr): Don't call simplify_gen_subreg
|
* cfgexpand.c (expand_debug_expr): Don't call simplify_gen_subreg
|
if bitpos isn't multiple of mode's bitsize.
|
if bitpos isn't multiple of mode's bitsize.
|
|
|
2010-02-24 Manuel López-Ibáñez
|
2010-02-24 Manuel López-Ibáñez
|
|
|
* c.opt (-ftemplate-depth=): New.
|
* c.opt (-ftemplate-depth=): New.
|
(-ftemplate-depth-): Deprecate.
|
(-ftemplate-depth-): Deprecate.
|
* optc-gen.awk: Handle -ftemplate-depth=.
|
* optc-gen.awk: Handle -ftemplate-depth=.
|
* opth-gen.awk: Likewise.
|
* opth-gen.awk: Likewise.
|
* c-opts.c (c_common_handle_option): Likewise.
|
* c-opts.c (c_common_handle_option): Likewise.
|
* doc/invoke.texi (-ftemplate-depth-): Replace with -ftemplate-depth=.
|
* doc/invoke.texi (-ftemplate-depth-): Replace with -ftemplate-depth=.
|
|
|
2010-02-24 Jason Merrill
|
2010-02-24 Jason Merrill
|
|
|
* doc/invoke.texi: Improve -Wabi and -fabi-version docs.
|
* doc/invoke.texi: Improve -Wabi and -fabi-version docs.
|
|
|
2010-02-24 Rainer Orth
|
2010-02-24 Rainer Orth
|
|
|
* cfg.c (alloc_aux_for_block): Remove inline.
|
* cfg.c (alloc_aux_for_block): Remove inline.
|
(alloc_aux_for_edge): Likewise.
|
(alloc_aux_for_edge): Likewise.
|
|
|
2010-02-24 Rainer Orth
|
2010-02-24 Rainer Orth
|
|
|
* config.gcc: Fix typo in mips-sgi-irix6.[0-4]* obsoletion.
|
* config.gcc: Fix typo in mips-sgi-irix6.[0-4]* obsoletion.
|
|
|
2010-02-24 Rainer Orth
|
2010-02-24 Rainer Orth
|
|
|
* config/i386/sol2.h (NO_DBX_BNSYM_ENSYM): Define.
|
* config/i386/sol2.h (NO_DBX_BNSYM_ENSYM): Define.
|
* config/i386/sol2-gas.h: New file.
|
* config/i386/sol2-gas.h: New file.
|
* config.gcc (i[34567]86-*-solaris2*): Use it.
|
* config.gcc (i[34567]86-*-solaris2*): Use it.
|
|
|
2010-02-24 Manuel López-Ibáñez
|
2010-02-24 Manuel López-Ibáñez
|
|
|
PR c/43128
|
PR c/43128
|
* c-typeck.c (ep_convert_and_check): New.
|
* c-typeck.c (ep_convert_and_check): New.
|
(build_conditional_expr): Use it.
|
(build_conditional_expr): Use it.
|
(build_binary_op): Likewise.
|
(build_binary_op): Likewise.
|
|
|
2010-02-24 Jakub Jelinek
|
2010-02-24 Jakub Jelinek
|
|
|
* regcprop.c (copyprop_hardreg_forward_1): Don't call df_insn_rescan.
|
* regcprop.c (copyprop_hardreg_forward_1): Don't call df_insn_rescan.
|
|
|
PR debug/43150
|
PR debug/43150
|
* gimplify.c (gimplify_type_sizes): Clear DECL_IGNORED_P for VLA
|
* gimplify.c (gimplify_type_sizes): Clear DECL_IGNORED_P for VLA
|
bounds even for -O+.
|
bounds even for -O+.
|
* var-tracking.c (track_expr_p): If !need_rtl, don't mandate
|
* var-tracking.c (track_expr_p): If !need_rtl, don't mandate
|
expr needs to have DECL_NAME set.
|
expr needs to have DECL_NAME set.
|
|
|
2010-02-24 Nick Clifton
|
2010-02-24 Nick Clifton
|
|
|
* config/mep/mep.c: Include gimple.h.
|
* config/mep/mep.c: Include gimple.h.
|
(mep_function_uses_sp): Delete unused function.
|
(mep_function_uses_sp): Delete unused function.
|
(mep_gimplify_va_arg_expr): Change types of pre_p and post_p
|
(mep_gimplify_va_arg_expr): Change types of pre_p and post_p
|
parameters. Use unsigned integers to count args. Return a
|
parameters. Use unsigned integers to count args. Return a
|
NULL_RTX instead of an error_mark_node. Toidy up formatting.
|
NULL_RTX instead of an error_mark_node. Toidy up formatting.
|
|
|
2010-02-23 Jakub Jelinek
|
2010-02-23 Jakub Jelinek
|
|
|
PR target/43107
|
PR target/43107
|
* config/i386/i386.c (avx_vpermilp_parallel): Reject indexes
|
* config/i386/i386.c (avx_vpermilp_parallel): Reject indexes
|
greater or equal to nelt instead of 2 * nelt.
|
greater or equal to nelt instead of 2 * nelt.
|
(expand_vec_perm_1): When op0 and op1 are equal, mask indexes
|
(expand_vec_perm_1): When op0 and op1 are equal, mask indexes
|
with nelt - 1.
|
with nelt - 1.
|
|
|
2010-02-23 Jason Merrill
|
2010-02-23 Jason Merrill
|
|
|
PR debug/42800
|
PR debug/42800
|
* cfgexpand.c (expand_used_vars): Keep artificial non-ignored vars
|
* cfgexpand.c (expand_used_vars): Keep artificial non-ignored vars
|
in cfun->local_decls even if they have register types.
|
in cfun->local_decls even if they have register types.
|
|
|
PR c++/42837
|
PR c++/42837
|
* stor-layout.c (place_field): Don't warn about unnecessary
|
* stor-layout.c (place_field): Don't warn about unnecessary
|
DECL_PACKED if the type is packed.
|
DECL_PACKED if the type is packed.
|
|
|
2010-02-23 Jakub Jelinek
|
2010-02-23 Jakub Jelinek
|
|
|
PR target/43139
|
PR target/43139
|
* config/i386/i386.c (ix86_delegitimize_address): Delegitimize all
|
* config/i386/i386.c (ix86_delegitimize_address): Delegitimize all
|
GOTOFF relocs, even when the base reg isn't pic pointer.
|
GOTOFF relocs, even when the base reg isn't pic pointer.
|
|
|
2010-02-23 Michael Matz
|
2010-02-23 Michael Matz
|
|
|
PR debug/43077
|
PR debug/43077
|
* cfgexpand (expand_debug_expr): Expand TERed ssa names in place.
|
* cfgexpand (expand_debug_expr): Expand TERed ssa names in place.
|
(expand_gimple_basic_block): Generate and use debug temps if there
|
(expand_gimple_basic_block): Generate and use debug temps if there
|
are debug uses left after the last real use of TERed ssa names.
|
are debug uses left after the last real use of TERed ssa names.
|
Unlink debug immediate uses when they are expanded.
|
Unlink debug immediate uses when they are expanded.
|
|
|
2010-02-23 Manuel López-Ibáñez
|
2010-02-23 Manuel López-Ibáñez
|
|
|
PR 43123
|
PR 43123
|
* config/i386/i386.c (override_options): Reorganise to provide
|
* config/i386/i386.c (override_options): Reorganise to provide
|
better error messages.
|
better error messages.
|
|
|
2010-02-22 Sebastian Pop
|
2010-02-22 Sebastian Pop
|
|
|
PR middle-end/43083
|
PR middle-end/43083
|
* graphite-scop-detection.c (create_single_exit_edge): Move
|
* graphite-scop-detection.c (create_single_exit_edge): Move
|
the call to find_single_exit_edge to....
|
the call to find_single_exit_edge to....
|
(create_sese_edges): ...here. Don't handle multiple edges
|
(create_sese_edges): ...here. Don't handle multiple edges
|
exiting the function.
|
exiting the function.
|
(build_graphite_scops): Don't handle multiple edges
|
(build_graphite_scops): Don't handle multiple edges
|
exiting the function.
|
exiting the function.
|
|
|
2010-02-22 Sebastian Pop
|
2010-02-22 Sebastian Pop
|
|
|
PR middle-end/43097
|
PR middle-end/43097
|
* sese.c (get_rename): Assert that old_name is an SSA_NAME.
|
* sese.c (get_rename): Assert that old_name is an SSA_NAME.
|
(rename_variables_in_stmt): Continue when the use is not an SSA_NAME.
|
(rename_variables_in_stmt): Continue when the use is not an SSA_NAME.
|
|
|
2010-02-22 Sebastian Pop
|
2010-02-22 Sebastian Pop
|
|
|
PR middle-end/43026
|
PR middle-end/43026
|
* sese.c (expand_scalar_variables_expr): Handle COMPONENT_REF.
|
* sese.c (expand_scalar_variables_expr): Handle COMPONENT_REF.
|
|
|
2010-02-22 Manuel López-Ibáñez
|
2010-02-22 Manuel López-Ibáñez
|
|
|
PR c++/43126
|
PR c++/43126
|
* c-typeck.c (convert_arguments): Print declaration location.
|
* c-typeck.c (convert_arguments): Print declaration location.
|
* c-common.c (validate_nargs): Rename as
|
* c-common.c (validate_nargs): Rename as
|
builtin_function_validate_nargs.
|
builtin_function_validate_nargs.
|
(check_builtin_function_arguments): Update.
|
(check_builtin_function_arguments): Update.
|
|
|
2010-02-22 Richard Guenther
|
2010-02-22 Richard Guenther
|
|
|
PR lto/43045
|
PR lto/43045
|
* tree-inline.c (declare_return_variable): Use the type of
|
* tree-inline.c (declare_return_variable): Use the type of
|
the call stmt lhs if available.
|
the call stmt lhs if available.
|
|
|
2010-02-22 Duncan Sands
|
2010-02-22 Duncan Sands
|
|
|
* passes.c (register_pass): Always consider all pass lists when
|
* passes.c (register_pass): Always consider all pass lists when
|
ref_pass_instance_number is zero.
|
ref_pass_instance_number is zero.
|
|
|
2010-02-22 Richard Guenther
|
2010-02-22 Richard Guenther
|
|
|
PR tree-optimization/42749
|
PR tree-optimization/42749
|
* tree-tailcall.c (adjust_return_value_with_ops): Drop update
|
* tree-tailcall.c (adjust_return_value_with_ops): Drop update
|
parameter. Do arithmetic in the original type.
|
parameter. Do arithmetic in the original type.
|
(update_accumulator_with_ops): Likewise.
|
(update_accumulator_with_ops): Likewise.
|
(adjust_accumulator_values): Adjust.
|
(adjust_accumulator_values): Adjust.
|
|
|
2010-02-22 Andreas Krebbel
|
2010-02-22 Andreas Krebbel
|
|
|
* config/s390/s390.md ("movqi"): Re-add the mem->mem alternative.
|
* config/s390/s390.md ("movqi"): Re-add the mem->mem alternative.
|
(QI to BLKmode splitter): New splitter.
|
(QI to BLKmode splitter): New splitter.
|
|
|
2010-02-22 H.J. Lu
|
2010-02-22 H.J. Lu
|
|
|
* config/i386/i386.c (initial_ix86_tune_features): Turn on
|
* config/i386/i386.c (initial_ix86_tune_features): Turn on
|
X86_TUNE_INTER_UNIT_MOVES for m_ATOM.
|
X86_TUNE_INTER_UNIT_MOVES for m_ATOM.
|
|
|
2010-02-22 Richard Guenther
|
2010-02-22 Richard Guenther
|
|
|
* tree-vect-slp.c (vect_slp_analyze_bb): Fix typo.
|
* tree-vect-slp.c (vect_slp_analyze_bb): Fix typo.
|
|
|
2010-02-22 Hans-Peter Nilsson
|
2010-02-22 Hans-Peter Nilsson
|
|
|
Migrate crti, crtn, crtbegin, crtend build rules to libgcc.
|
Migrate crti, crtn, crtbegin, crtend build rules to libgcc.
|
* config/mmix/t-mmix (EXTRA_MULTILIB_PARTS): Don't set.
|
* config/mmix/t-mmix (EXTRA_MULTILIB_PARTS): Don't set.
|
($(T)crti.o, $(T)crtn.o): Remove rules.
|
($(T)crti.o, $(T)crtn.o): Remove rules.
|
|
|
2010-02-21 Tobias Burnus
|
2010-02-21 Tobias Burnus
|
|
|
PR fortran/35259
|
PR fortran/35259
|
* doc/invoke.texi (-fassociative-math): Document that this
|
* doc/invoke.texi (-fassociative-math): Document that this
|
option is automatically enabled for Fortran.
|
option is automatically enabled for Fortran.
|
|
|
2010-02-20 David S. Miller
|
2010-02-20 David S. Miller
|
|
|
* configure.ac: Test if linker and assembler properly support
|
* configure.ac: Test if linker and assembler properly support
|
GOTDATA_OP relocations.
|
GOTDATA_OP relocations.
|
* configure: Rebuild.
|
* configure: Rebuild.
|
* config.in: Likewise.
|
* config.in: Likewise.
|
* config/sparc/sparc.md (UNSPEC_MOVE_GOTDATA): New.
|
* config/sparc/sparc.md (UNSPEC_MOVE_GOTDATA): New.
|
(movsi_lo_sum_pic): Use %gdop_*() relocs if available.
|
(movsi_lo_sum_pic): Use %gdop_*() relocs if available.
|
(movsi_high_pic): Likewise.
|
(movsi_high_pic): Likewise.
|
(movdi_lo_sum_pic): Likewise.
|
(movdi_lo_sum_pic): Likewise.
|
(movdi_high_pic): Likewise.
|
(movdi_high_pic): Likewise.
|
(movsi_pic_gotdata_op): New pattern.
|
(movsi_pic_gotdata_op): New pattern.
|
(movdi_pic_gotdata_op): Likewise.
|
(movdi_pic_gotdata_op): Likewise.
|
* config/sparc/sparc.c (legitimize_pic_address): If flag_pic is 2,
|
* config/sparc/sparc.c (legitimize_pic_address): If flag_pic is 2,
|
emit gen_mov{si,di}_pic_gotdata_op for the GOT slot load.
|
emit gen_mov{si,di}_pic_gotdata_op for the GOT slot load.
|
|
|
2010-02-20 Uros Bizjak
|
2010-02-20 Uros Bizjak
|
|
|
PR target/43067
|
PR target/43067
|
* config/i386/sse.md (xop_mulv2div2di3_low): Change type
|
* config/i386/sse.md (xop_mulv2div2di3_low): Change type
|
attribute to ssemul.
|
attribute to ssemul.
|
(xop_mulv2div2di3_high): Ditto.
|
(xop_mulv2div2di3_high): Ditto.
|
|
|
2010-02-20 Manuel López-Ibáñez
|
2010-02-20 Manuel López-Ibáñez
|
|
|
PR c++/35669
|
PR c++/35669
|
* c.opt (Wconversion-null): New option.
|
* c.opt (Wconversion-null): New option.
|
* doc/invoke.texi (Wconversion-null): Document.
|
* doc/invoke.texi (Wconversion-null): Document.
|
|
|
2010-02-20 Manuel López-Ibáñez
|
2010-02-20 Manuel López-Ibáñez
|
|
|
* common.opt (Wlarger-than-): Add Undocumented.
|
* common.opt (Wlarger-than-): Add Undocumented.
|
|
|
2010-02-19 Mike Stump
|
2010-02-19 Mike Stump
|
|
|
* config/t-darwin (gt-darwin.h): Remove as Makefile now handles it.
|
* config/t-darwin (gt-darwin.h): Remove as Makefile now handles it.
|
|
|
2010-02-19 Jason Merrill
|
2010-02-19 Jason Merrill
|
|
|
PR target/40332
|
PR target/40332
|
* configure.ac (gcc_cv_as_cfi_advance_working): Check 32-bit advance.
|
* configure.ac (gcc_cv_as_cfi_advance_working): Check 32-bit advance.
|
* configure: Likewise.
|
* configure: Likewise.
|
|
|
2010-02-20 Alan Modra
|
2010-02-20 Alan Modra
|
|
|
PR middle-end/42344
|
PR middle-end/42344
|
* cgraph.h (cgraph_make_decl_local): Declare.
|
* cgraph.h (cgraph_make_decl_local): Declare.
|
* cgraph.c (cgraph_make_decl_local): New function.
|
* cgraph.c (cgraph_make_decl_local): New function.
|
(cgraph_make_node_local): Use it.
|
(cgraph_make_node_local): Use it.
|
* cgraphunit.c (cgraph_function_versioning): Likewise.
|
* cgraphunit.c (cgraph_function_versioning): Likewise.
|
* ipa.c (function_and_variable_visibility): Likewise.
|
* ipa.c (function_and_variable_visibility): Likewise.
|
|
|
2010-02-19 Jakub Jelinek
|
2010-02-19 Jakub Jelinek
|
|
|
PR bootstrap/43121
|
PR bootstrap/43121
|
* except.c (sjlj_emit_function_enter): Don't call
|
* except.c (sjlj_emit_function_enter): Don't call
|
add_reg_br_prob_note, instead add REG_BR_PROB note to the last insn
|
add_reg_br_prob_note, instead add REG_BR_PROB note to the last insn
|
directly.
|
directly.
|
* rtl.h (add_reg_br_prob_note): Remove prototype.
|
* rtl.h (add_reg_br_prob_note): Remove prototype.
|
|
|
2010-02-19 Manuel López-Ibáñez
|
2010-02-19 Manuel López-Ibáñez
|
|
|
PR 41779
|
PR 41779
|
* c-common.c (conversion_warning): Remove widening conversions
|
* c-common.c (conversion_warning): Remove widening conversions
|
before checking the conversion of integers to reals.
|
before checking the conversion of integers to reals.
|
|
|
2010-02-19 Mike Stump
|
2010-02-19 Mike Stump
|
|
|
PR middle-end/43125
|
PR middle-end/43125
|
* c-decl.c (merge_decls): Merge DECL_PRESERVE_P.
|
* c-decl.c (merge_decls): Merge DECL_PRESERVE_P.
|
|
|
PR objc/43061
|
PR objc/43061
|
* cgraphunit.c (process_function_and_variable_attributes): Check
|
* cgraphunit.c (process_function_and_variable_attributes): Check
|
DECL_PRESERVE_P instead of looking up attribute "used".
|
DECL_PRESERVE_P instead of looking up attribute "used".
|
* ipa-pure-const.c (check_decl): Likewise.
|
* ipa-pure-const.c (check_decl): Likewise.
|
* ipa-reference.c (has_proper_scope_for_analysis): Likewise.
|
* ipa-reference.c (has_proper_scope_for_analysis): Likewise.
|
* ipa-type-escape.c (has_proper_scope_for_analysis): Likewise.
|
* ipa-type-escape.c (has_proper_scope_for_analysis): Likewise.
|
* config/sol2.c (solaris_insert_attributes): Set DECL_PRESERVE_P
|
* config/sol2.c (solaris_insert_attributes): Set DECL_PRESERVE_P
|
instead of attribute "used".
|
instead of attribute "used".
|
* config/sol2-c.c (solaris_pragma_init): Likewise.
|
* config/sol2-c.c (solaris_pragma_init): Likewise.
|
(solaris_pragma_fini): Likewise.
|
(solaris_pragma_fini): Likewise.
|
|
|
2010-02-19 Jakub Jelinek
|
2010-02-19 Jakub Jelinek
|
|
|
* ipa-struct-reorg.c (make_field_acc_node, gen_cluster, peel_field):
|
* ipa-struct-reorg.c (make_field_acc_node, gen_cluster, peel_field):
|
Use XCNEW instead of xcalloc.
|
Use XCNEW instead of xcalloc.
|
(add_access_to_acc_sites, create_new_var_node, add_alloc_site): Use
|
(add_access_to_acc_sites, create_new_var_node, add_alloc_site): Use
|
XNEW instead of xmalloc.
|
XNEW instead of xmalloc.
|
(get_fields): Use XNEWVEC instead of xmalloc.
|
(get_fields): Use XNEWVEC instead of xmalloc.
|
|
|
PR debug/43084
|
PR debug/43084
|
* ipa-struct-reorg.c (add_access_to_acc_sites): For debug stmts don't
|
* ipa-struct-reorg.c (add_access_to_acc_sites): For debug stmts don't
|
populate vars array.
|
populate vars array.
|
(create_new_general_access): For debug stmts just reset value.
|
(create_new_general_access): For debug stmts just reset value.
|
(get_stmt_accesses): For accesses within debug stmts just record them
|
(get_stmt_accesses): For accesses within debug stmts just record them
|
using add_access_to_acc_sites instead of preventing the peeling or
|
using add_access_to_acc_sites instead of preventing the peeling or
|
counting them as accesses.
|
counting them as accesses.
|
|
|
PR middle-end/42233
|
PR middle-end/42233
|
* dojump.c (do_jump) : Invert priority.
|
* dojump.c (do_jump) : Invert priority.
|
|
|
2010-02-19 Richard Guenther
|
2010-02-19 Richard Guenther
|
|
|
PR tree-optimization/42916
|
PR tree-optimization/42916
|
* tree-vect-slp.c (vect_slp_analyze_bb): Count only real
|
* tree-vect-slp.c (vect_slp_analyze_bb): Count only real
|
instructions.
|
instructions.
|
|
|
2010-02-19 Andreas Schwab
|
2010-02-19 Andreas Schwab
|
|
|
* configure.ac: Replace all uses of changequote in macro arguments
|
* configure.ac: Replace all uses of changequote in macro arguments
|
with proper quoting.
|
with proper quoting.
|
|
|
2010-02-19 Jakub Jelinek
|
2010-02-19 Jakub Jelinek
|
|
|
PR middle-end/42233
|
PR middle-end/42233
|
* loop-doloop.c (add_test): Adjust do_compare_rtx_and_jump caller.
|
* loop-doloop.c (add_test): Adjust do_compare_rtx_and_jump caller.
|
|
|
2010-02-19 Richard Guenther
|
2010-02-19 Richard Guenther
|
|
|
PR tree-optimization/42944
|
PR tree-optimization/42944
|
* tree-ssa-alias.c (call_may_clobber_ref_p_1): Massage
|
* tree-ssa-alias.c (call_may_clobber_ref_p_1): Massage
|
test for aliasing with errno.
|
test for aliasing with errno.
|
|
|
2010-02-19 Jakub Jelinek
|
2010-02-19 Jakub Jelinek
|
|
|
PR middle-end/42233
|
PR middle-end/42233
|
* expr.h (jumpifnot, jumpifnot_1, jumpif, jumpif_1, do_jump,
|
* expr.h (jumpifnot, jumpifnot_1, jumpif, jumpif_1, do_jump,
|
do_jump_1, do_compare_rtx_and_jump): Add PROB argument.
|
do_jump_1, do_compare_rtx_and_jump): Add PROB argument.
|
* dojump.c: Include output.h.
|
* dojump.c: Include output.h.
|
(inv): New inline function.
|
(inv): New inline function.
|
(jumpifnot, jumpifnot_1, jumpif, jumpif_1, do_jump_1, do_jump,
|
(jumpifnot, jumpifnot_1, jumpif, jumpif_1, do_jump_1, do_jump,
|
do_jump_by_parts_greater_rtx, do_jump_by_parts_greater,
|
do_jump_by_parts_greater_rtx, do_jump_by_parts_greater,
|
do_jump_by_parts_zero_rtx, do_jump_by_parts_equality_rtx,
|
do_jump_by_parts_zero_rtx, do_jump_by_parts_equality_rtx,
|
do_jump_by_parts_equality, do_compare_and_jump): Add PROB
|
do_jump_by_parts_equality, do_compare_and_jump): Add PROB
|
argument, pass it down to other calls.
|
argument, pass it down to other calls.
|
(do_compare_rtx_and_jump): Likewise. If PROB is not -1,
|
(do_compare_rtx_and_jump): Likewise. If PROB is not -1,
|
add REG_BR_PROB note to the conditional jump.
|
add REG_BR_PROB note to the conditional jump.
|
* cfgexpand.c (add_reg_br_prob_note): Removed.
|
* cfgexpand.c (add_reg_br_prob_note): Removed.
|
(expand_gimple_cond): Don't call it, add the probability
|
(expand_gimple_cond): Don't call it, add the probability
|
as last argument to jumpif_1/jumpifnot_1.
|
as last argument to jumpif_1/jumpifnot_1.
|
* Makefile.in (dojump.o): Depend on output.h.
|
* Makefile.in (dojump.o): Depend on output.h.
|
* builtins.c (expand_errno_check): Adjust do_compare_rtx_and_jump
|
* builtins.c (expand_errno_check): Adjust do_compare_rtx_and_jump
|
callers.
|
callers.
|
* expmed.c (emit_store_flag_force, do_cmp_and_jump): Likewise.
|
* expmed.c (emit_store_flag_force, do_cmp_and_jump): Likewise.
|
* stmt.c (do_jump_if_equal): Likewise.
|
* stmt.c (do_jump_if_equal): Likewise.
|
* cfgrtl.c (rtl_lv_add_condition_to_bb): Likewise.
|
* cfgrtl.c (rtl_lv_add_condition_to_bb): Likewise.
|
* loop-unswitch.c (compare_and_jump_seq): Likewise.
|
* loop-unswitch.c (compare_and_jump_seq): Likewise.
|
* config/rs6000/rs6000.c (rs6000_aix_emit_builtin_unwind_init):
|
* config/rs6000/rs6000.c (rs6000_aix_emit_builtin_unwind_init):
|
Likewise.
|
Likewise.
|
* optabs.c (expand_doubleword_shift, expand_abs): Likewise.
|
* optabs.c (expand_doubleword_shift, expand_abs): Likewise.
|
* expr.c (expand_expr_real_1): Adjust do_jump, jumpifnot and
|
* expr.c (expand_expr_real_1): Adjust do_jump, jumpifnot and
|
jumpifnot_1 callers.
|
jumpifnot_1 callers.
|
(expand_expr_real_2): Adjust jumpifnot_1 and do_compare_rtx_and_jump
|
(expand_expr_real_2): Adjust jumpifnot_1 and do_compare_rtx_and_jump
|
callers.
|
callers.
|
(store_expr): Adjust jumpifnot caller.
|
(store_expr): Adjust jumpifnot caller.
|
(store_constructor): Adjust jumpif caller.
|
(store_constructor): Adjust jumpif caller.
|
|
|
PR middle-end/42233
|
PR middle-end/42233
|
* gimplify.c (gimple_boolify): For __builtin_expect call
|
* gimplify.c (gimple_boolify): For __builtin_expect call
|
gimple_boolify also on its first argument.
|
gimple_boolify also on its first argument.
|
|
|
2010-02-18 Uros Bizjak
|
2010-02-18 Uros Bizjak
|
|
|
* configure.ac (gnu-unique-object): Wrap regexps using [] in
|
* configure.ac (gnu-unique-object): Wrap regexps using [] in
|
changequote block.
|
changequote block.
|
(__stack_chk_fail): Ditto. Remove quadrigraphs.
|
(__stack_chk_fail): Ditto. Remove quadrigraphs.
|
* configure: Regenerated.
|
* configure: Regenerated.
|
|
|
2010-02-18 Ulrich Weigand
|
2010-02-18 Ulrich Weigand
|
|
|
* config/spu/spu-c.c (spu_resolve_overloaded_builtin): Call
|
* config/spu/spu-c.c (spu_resolve_overloaded_builtin): Call
|
lang_hooks.types_compatible_p instead of comptypes.
|
lang_hooks.types_compatible_p instead of comptypes.
|
|
|
2010-02-18 Sebastian Huber
|
2010-02-18 Sebastian Huber
|
|
|
* config/arm/lib1funcs.asm (__prefer_thumb__): New define.
|
* config/arm/lib1funcs.asm (__prefer_thumb__): New define.
|
(udivsi3, aeabi_uidivmod, divsi3, aeabi_idivmod): Use Thumb-1 variant
|
(udivsi3, aeabi_uidivmod, divsi3, aeabi_idivmod): Use Thumb-1 variant
|
if __prefer_thumb__ is defined.
|
if __prefer_thumb__ is defined.
|
|
|
2010-02-18 Martin Jambor
|
2010-02-18 Martin Jambor
|
|
|
PR tree-optimization/43066
|
PR tree-optimization/43066
|
* tree-sra.c (build_ref_for_offset_1): Return false on encountering an
|
* tree-sra.c (build_ref_for_offset_1): Return false on encountering an
|
array with zero-sized element type.
|
array with zero-sized element type.
|
|
|
2010-02-18 Jakub Jelinek
|
2010-02-18 Jakub Jelinek
|
|
|
* dwarf2out.c (add_var_loc_to_decl): Change last argument to
|
* dwarf2out.c (add_var_loc_to_decl): Change last argument to
|
rtx, allocate struct var_loc_node here and return it to the
|
rtx, allocate struct var_loc_node here and return it to the
|
caller, and only if it is actually needed.
|
caller, and only if it is actually needed.
|
(dwarf2out_var_location): Adjust add_var_loc_to_decl caller,
|
(dwarf2out_var_location): Adjust add_var_loc_to_decl caller,
|
move it earlier and return immediately if it returns NULL.
|
move it earlier and return immediately if it returns NULL.
|
|
|
2010-02-17 Mikael Pettersson
|
2010-02-17 Mikael Pettersson
|
|
|
* config/sparc/gas.h: New file. Restore
|
* config/sparc/gas.h: New file. Restore
|
TARGET_ASM_NAMED_SECTION to its ELF default.
|
TARGET_ASM_NAMED_SECTION to its ELF default.
|
* config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Do not
|
* config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Do not
|
check !HAVE_GNU_AS.
|
check !HAVE_GNU_AS.
|
* config/sparc/sparc.c (sparc_elf_asm_named_section):
|
* config/sparc/sparc.c (sparc_elf_asm_named_section):
|
Likewise. Add ATTRIBUTE_UNUSED to prototype.
|
Likewise. Add ATTRIBUTE_UNUSED to prototype.
|
* config.gcc (sparc*-*-linux*): Include sparc/gas.h
|
* config.gcc (sparc*-*-linux*): Include sparc/gas.h
|
after sparc/sysv4.h.
|
after sparc/sysv4.h.
|
|
|
2010-02-17 Dave Korn
|
2010-02-17 Dave Korn
|
|
|
* config/i386/mingw32.h (LIBGCJ_SONAME): Fix cut'n'pasto in DLL name.
|
* config/i386/mingw32.h (LIBGCJ_SONAME): Fix cut'n'pasto in DLL name.
|
|
|
2010-02-17 Steven Bosscher
|
2010-02-17 Steven Bosscher
|
|
|
* gensupport.c (process_one_cond_exec): Derive name for COND_EXEC
|
* gensupport.c (process_one_cond_exec): Derive name for COND_EXEC
|
patterns from predicated pattern.
|
patterns from predicated pattern.
|
|
|
2010-02-17 Uros Bizjak
|
2010-02-17 Uros Bizjak
|
|
|
PR target/43103
|
PR target/43103
|
* config/i386/sse.md (xop_vpermil23): Use avxmodesuffixf2c
|
* config/i386/sse.md (xop_vpermil23): Use avxmodesuffixf2c
|
for insn mnemonic suffix.
|
for insn mnemonic suffix.
|
|
|
2010-02-17 Richard Guenther
|
2010-02-17 Richard Guenther
|
|
|
* tree-vrp.c (vrp_visit_phi_node): Restrict SCEV analysis
|
* tree-vrp.c (vrp_visit_phi_node): Restrict SCEV analysis
|
to loop PHI nodes.
|
to loop PHI nodes.
|
|
|
2010-02-17 Jakub Jelinek
|
2010-02-17 Jakub Jelinek
|
|
|
PR debug/42918
|
PR debug/42918
|
* caller-save.c (save_call_clobbered_regs): If BB ends with
|
* caller-save.c (save_call_clobbered_regs): If BB ends with
|
a DEBUG_INSN, move any notes in between last real insn and the last
|
a DEBUG_INSN, move any notes in between last real insn and the last
|
DEBUG_INSN after the last DEBUG_INSN.
|
DEBUG_INSN after the last DEBUG_INSN.
|
|
|
2010-02-16 Joern Rennecke
|
2010-02-16 Joern Rennecke
|
|
|
* tm.texi (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD_SPEC):
|
* tm.texi (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD_SPEC):
|
Fix return type. Fix argument type. Explain meaning of return value.
|
Fix return type. Fix argument type. Explain meaning of return value.
|
|
|
2010-02-16 Richard Guenther
|
2010-02-16 Richard Guenther
|
|
|
PR tree-optimization/41043
|
PR tree-optimization/41043
|
* tree-vrp.c (vrp_var_may_overflow): Only ask SCEV for real loops.
|
* tree-vrp.c (vrp_var_may_overflow): Only ask SCEV for real loops.
|
(vrp_visit_assignment_or_call): Do not ask SCEV for regular
|
(vrp_visit_assignment_or_call): Do not ask SCEV for regular
|
statements ...
|
statements ...
|
(vrp_visit_phi_node): ... but only for loop PHI nodes.
|
(vrp_visit_phi_node): ... but only for loop PHI nodes.
|
|
|
2010-02-16 Ira Rosen
|
2010-02-16 Ira Rosen
|
|
|
PR tree-optimization/43074
|
PR tree-optimization/43074
|
* tree-vectorizer.h (VECTORIZABLE_CYCLE_DEF): New.
|
* tree-vectorizer.h (VECTORIZABLE_CYCLE_DEF): New.
|
* tree-vect-loop.c (vect_analyze_loop_operations): Add
|
* tree-vect-loop.c (vect_analyze_loop_operations): Add
|
vectorizable cycles in hybrid SLP check.
|
vectorizable cycles in hybrid SLP check.
|
* tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Likewise.
|
* tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Likewise.
|
|
|
2010-02-16 Richard Guenther
|
2010-02-16 Richard Guenther
|
|
|
* alias.c (memrefs_conflict_p): Distinguish must-alias from don't know.
|
* alias.c (memrefs_conflict_p): Distinguish must-alias from don't know.
|
(true_dependence): If memrefs_conflict_p computes must-alias
|
(true_dependence): If memrefs_conflict_p computes must-alias
|
trust it. Move TBAA check after offset-based disambiguation.
|
trust it. Move TBAA check after offset-based disambiguation.
|
(canon_true_dependence): Likewise.
|
(canon_true_dependence): Likewise.
|
|
|
2010-02-16 Alexandre Oliva
|
2010-02-16 Alexandre Oliva
|
|
|
* params.def (PARAM_MAX_VARTRACK_SIZE): New.
|
* params.def (PARAM_MAX_VARTRACK_SIZE): New.
|
* doc/invoke.texi: Document it.
|
* doc/invoke.texi: Document it.
|
* var-tracking.c: Include toplev.h and params.h.
|
* var-tracking.c: Include toplev.h and params.h.
|
(vt_find_locations): Return bool indicating success. Compute
|
(vt_find_locations): Return bool indicating success. Compute
|
hash sizes unconditionally. Check new parameter, report.
|
hash sizes unconditionally. Check new parameter, report.
|
(variable_tracking_main_1): Check vt_find_locations results and
|
(variable_tracking_main_1): Check vt_find_locations results and
|
retry. Renamed from...
|
retry. Renamed from...
|
(variable_tracking_main): ... this. New wrapper to preserve
|
(variable_tracking_main): ... this. New wrapper to preserve
|
flag_var_tracking_assignments.
|
flag_var_tracking_assignments.
|
* Makefile.in (var-tracking.o): Adjust dependencies.
|
* Makefile.in (var-tracking.o): Adjust dependencies.
|
|
|
2010-02-16 Jack Howarth
|
2010-02-16 Jack Howarth
|
Jakub Jelinek
|
Jakub Jelinek
|
|
|
PR target/42854
|
PR target/42854
|
* config/darwin.h (ASM_WEAKEN_DECL): Don't check weak attribute
|
* config/darwin.h (ASM_WEAKEN_DECL): Don't check weak attribute
|
if weak_import attribute is present.
|
if weak_import attribute is present.
|
* config/darwin.c (machopic_select_section): Likewise.
|
* config/darwin.c (machopic_select_section): Likewise.
|
|
|
2010-02-15 Joern Rennecke
|
2010-02-15 Joern Rennecke
|
|
|
* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST): Document.
|
* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST): Document.
|
(TARGET_VECTORIZE_VECTOR_ALIGNMENT_REACHABLE): Likewise.
|
(TARGET_VECTORIZE_VECTOR_ALIGNMENT_REACHABLE): Likewise.
|
(TARGET_VECTORIZE_BUILTIN_VEC_PERM): Likewise.
|
(TARGET_VECTORIZE_BUILTIN_VEC_PERM): Likewise.
|
(TARGET_VECTORIZE_BUILTIN_VEC_PERM_OK): Likewise.
|
(TARGET_VECTORIZE_BUILTIN_VEC_PERM_OK): Likewise.
|
|
|
* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_CONVERSION): Fix argument types.
|
* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_CONVERSION): Fix argument types.
|
|
|
* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION):
|
* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION):
|
Fix argument types.
|
Fix argument types.
|
|
|
* doc/tm.texi (TARGET_SCHED_DFA_NEW_CYCLE): Add argument names.
|
* doc/tm.texi (TARGET_SCHED_DFA_NEW_CYCLE): Add argument names.
|
Rewrite text to refer to the names.
|
Rewrite text to refer to the names.
|
|
|
2010-02-15 Sebastian Pop
|
2010-02-15 Sebastian Pop
|
|
|
* config/i386/i386-builtin-types.def
|
* config/i386/i386-builtin-types.def
|
(V2DF_FTYPE_V2DF_V2DF_V2DI_INT): Declared.
|
(V2DF_FTYPE_V2DF_V2DF_V2DI_INT): Declared.
|
(V4DF_FTYPE_V4DF_V4DF_V4DI_INT): Declared.
|
(V4DF_FTYPE_V4DF_V4DF_V4DI_INT): Declared.
|
(V4SF_FTYPE_V4SF_V4SF_V4SI_INT): Declared.
|
(V4SF_FTYPE_V4SF_V4SF_V4SI_INT): Declared.
|
(V8SF_FTYPE_V8SF_V8SF_V8SI_INT): Declared.
|
(V8SF_FTYPE_V8SF_V8SF_V8SI_INT): Declared.
|
* config/i386/i386.c (enum ix86_builtins): Add IX86_BUILTIN_VPERMIL2PD,
|
* config/i386/i386.c (enum ix86_builtins): Add IX86_BUILTIN_VPERMIL2PD,
|
IX86_BUILTIN_VPERMIL2PS, IX86_BUILTIN_VPERMIL2PD256, and
|
IX86_BUILTIN_VPERMIL2PS, IX86_BUILTIN_VPERMIL2PD256, and
|
IX86_BUILTIN_VPERMIL2PS256.
|
IX86_BUILTIN_VPERMIL2PS256.
|
(MULTI_ARG_4_DF2_DI_I): Defined.
|
(MULTI_ARG_4_DF2_DI_I): Defined.
|
(MULTI_ARG_4_DF2_DI_I1): Defined.
|
(MULTI_ARG_4_DF2_DI_I1): Defined.
|
(MULTI_ARG_4_SF2_SI_I): Defined.
|
(MULTI_ARG_4_SF2_SI_I): Defined.
|
(MULTI_ARG_4_SF2_SI_I1): Defined.
|
(MULTI_ARG_4_SF2_SI_I1): Defined.
|
(bdesc_multi_arg): Add __builtin_ia32_vpermil2pd,
|
(bdesc_multi_arg): Add __builtin_ia32_vpermil2pd,
|
__builtin_ia32_vpermil2ps, __builtin_ia32_vpermil2pd256, and
|
__builtin_ia32_vpermil2ps, __builtin_ia32_vpermil2pd256, and
|
__builtin_ia32_vpermil2ps256.
|
__builtin_ia32_vpermil2ps256.
|
(ix86_expand_multi_arg_builtin): Handle MULTI_ARG_4_DF2_DI_I,
|
(ix86_expand_multi_arg_builtin): Handle MULTI_ARG_4_DF2_DI_I,
|
MULTI_ARG_4_DF2_DI_I1, MULTI_ARG_4_SF2_SI_I, and
|
MULTI_ARG_4_DF2_DI_I1, MULTI_ARG_4_SF2_SI_I, and
|
MULTI_ARG_4_SF2_SI_I1. Handle builtins with 4 arguments.
|
MULTI_ARG_4_SF2_SI_I1. Handle builtins with 4 arguments.
|
(ix86_expand_args_builtin): Handle MULTI_ARG_4_DF2_DI_I,
|
(ix86_expand_args_builtin): Handle MULTI_ARG_4_DF2_DI_I,
|
MULTI_ARG_4_DF2_DI_I1, MULTI_ARG_4_SF2_SI_I, and
|
MULTI_ARG_4_DF2_DI_I1, MULTI_ARG_4_SF2_SI_I, and
|
MULTI_ARG_4_SF2_SI_I1. Handle CODE_FOR_xop_vpermil2v2df3,
|
MULTI_ARG_4_SF2_SI_I1. Handle CODE_FOR_xop_vpermil2v2df3,
|
CODE_FOR_xop_vpermil2v4sf3, CODE_FOR_xop_vpermil2v4df3, and
|
CODE_FOR_xop_vpermil2v4sf3, CODE_FOR_xop_vpermil2v4df3, and
|
CODE_FOR_xop_vpermil2v8sf3.
|
CODE_FOR_xop_vpermil2v8sf3.
|
* config/i386/i386.md (UNSPEC_VPERMIL2): Declared.
|
* config/i386/i386.md (UNSPEC_VPERMIL2): Declared.
|
* config/i386/sse.md (xop_vpermil23): New insn pattern.
|
* config/i386/sse.md (xop_vpermil23): New insn pattern.
|
* config/i386/xopintrin.h (_mm_permute2_pd): New.
|
* config/i386/xopintrin.h (_mm_permute2_pd): New.
|
(_mm256_permute2_pd): New.
|
(_mm256_permute2_pd): New.
|
(_mm_permute2_ps): New.
|
(_mm_permute2_ps): New.
|
(_mm256_permute2_ps): New.
|
(_mm256_permute2_ps): New.
|
|
|
2010-02-15 Nick Clifton
|
2010-02-15 Nick Clifton
|
|
|
* config/h8300/h8300.c: (h8300_push_pop): Use bool type for
|
* config/h8300/h8300.c: (h8300_push_pop): Use bool type for
|
boolean parameters. Use emit_jump_insn when emitting a pop
|
boolean parameters. Use emit_jump_insn when emitting a pop
|
instruction containing a return insn.
|
instruction containing a return insn.
|
(push): Use 'true' rather than '1' as second parameter to F.
|
(push): Use 'true' rather than '1' as second parameter to F.
|
(h8300_expand_prologue): Likewise.
|
(h8300_expand_prologue): Likewise.
|
Use 'true' and 'false' for boolean parameters to h8300_push_pop.
|
Use 'true' and 'false' for boolean parameters to h8300_push_pop.
|
(h8300_expand_epilogue): Likewise.
|
(h8300_expand_epilogue): Likewise.
|
|
|
2010-02-15 Richard Guenther
|
2010-02-15 Richard Guenther
|
|
|
PR middle-end/43068
|
PR middle-end/43068
|
* cgraphunit.c (thunk_adjust): Skip adjusting by fixed_offset
|
* cgraphunit.c (thunk_adjust): Skip adjusting by fixed_offset
|
if that is zero.
|
if that is zero.
|
|
|
2010-02-15 Nick Clifton
|
2010-02-15 Nick Clifton
|
|
|
* config/mn10300/mn10300.h (FUNCTION_ARG_REGNO_P): Revert previous
|
* config/mn10300/mn10300.h (FUNCTION_ARG_REGNO_P): Revert previous
|
delta.
|
delta.
|
|
|
2010-02-14 Marco Poletti
|
2010-02-14 Marco Poletti
|
|
|
* intl.c (fake_ngettext): New function.
|
* intl.c (fake_ngettext): New function.
|
* intl.h (fake_ngettext): Declare.
|
* intl.h (fake_ngettext): Declare.
|
(ngettext): Define macro.
|
(ngettext): Define macro.
|
* collect2.c (notice_translated): New function.
|
* collect2.c (notice_translated): New function.
|
(main): Use notice_translated and ngettext.
|
(main): Use notice_translated and ngettext.
|
* collect2.h (notice_translated): Declare.
|
* collect2.h (notice_translated): Declare.
|
|
|
2010-02-14 Steven Bosscher
|
2010-02-14 Steven Bosscher
|
|
|
* reorg.c (delete_computation): Comment fixes.
|
* reorg.c (delete_computation): Comment fixes.
|
* caller-save.c (setup_save_areas): Idem.
|
* caller-save.c (setup_save_areas): Idem.
|
* sel-sched-dump.c (dump_lv_set): Idem.
|
* sel-sched-dump.c (dump_lv_set): Idem.
|
* rtl.def: Idem.
|
* rtl.def: Idem.
|
|
|
2010-02-14 Andreas Krebbel
|
2010-02-14 Andreas Krebbel
|
|
|
* config/s390/s390.c (s390_sched_init): New function.
|
* config/s390/s390.c (s390_sched_init): New function.
|
(TARGET_SCHED_INIT): Target hook defined.
|
(TARGET_SCHED_INIT): Target hook defined.
|
|
|
2010-02-12 Dave Korn
|
2010-02-12 Dave Korn
|
Jack Howarth
|
Jack Howarth
|
Iain Sandoe
|
Iain Sandoe
|
|
|
PR target/42982
|
PR target/42982
|
Partial revert of unintended change in fix for PR41605.
|
Partial revert of unintended change in fix for PR41605.
|
* config/darwin.h: Fix typo.
|
* config/darwin.h: Fix typo.
|
* config/darwin9.h: Same.
|
* config/darwin9.h: Same.
|
|
|
2010-02-11 Jakub Jelinek
|
2010-02-11 Jakub Jelinek
|
|
|
* c-pch.c (pch_init): Clear v.
|
* c-pch.c (pch_init): Clear v.
|
|
|
2010-02-11 Sebastian Pop
|
2010-02-11 Sebastian Pop
|
|
|
PR middle-end/42930
|
PR middle-end/42930
|
* graphite-scop-detection.c (graphite_can_represent_scev): Call
|
* graphite-scop-detection.c (graphite_can_represent_scev): Call
|
graphite_can_represent_init for MULT_EXPR.
|
graphite_can_represent_init for MULT_EXPR.
|
|
|
2010-02-11 Sebastian Pop
|
2010-02-11 Sebastian Pop
|
|
|
PR middle-end/42914
|
PR middle-end/42914
|
PR middle-end/42530
|
PR middle-end/42530
|
* graphite-sese-to-poly.c (remove_phi): New.
|
* graphite-sese-to-poly.c (remove_phi): New.
|
(translate_scalar_reduction_to_array): Call remove_phi.
|
(translate_scalar_reduction_to_array): Call remove_phi.
|
|
|
2010-02-11 Sebastian Pop
|
2010-02-11 Sebastian Pop
|
|
|
PR middle-end/42771
|
PR middle-end/42771
|
* graphite-clast-to-gimple.c (gloog): Call rename_sese_parameters.
|
* graphite-clast-to-gimple.c (gloog): Call rename_sese_parameters.
|
* graphite-clast-to-gimple.h (gloog): Update declaration.
|
* graphite-clast-to-gimple.h (gloog): Update declaration.
|
* graphite-poly.c (new_scop): Clear POLY_SCOP_P.
|
* graphite-poly.c (new_scop): Clear POLY_SCOP_P.
|
* graphite-poly.h (struct poly_bb): Add missing comments.
|
* graphite-poly.h (struct poly_bb): Add missing comments.
|
(struct scop): Add poly_scop_p field.
|
(struct scop): Add poly_scop_p field.
|
(POLY_SCOP_P): New.
|
(POLY_SCOP_P): New.
|
* graphite-sese-to-poly.c (build_poly_scop): Set POLY_SCOP_P.
|
* graphite-sese-to-poly.c (build_poly_scop): Set POLY_SCOP_P.
|
* graphite.c (graphite_transform_loops): Build the polyhedral
|
* graphite.c (graphite_transform_loops): Build the polyhedral
|
representation for each scop before code generation.
|
representation for each scop before code generation.
|
* sese.c (rename_variables_in_operand): Removed.
|
* sese.c (rename_variables_in_operand): Removed.
|
(rename_variables_in_expr): Return the renamed expression.
|
(rename_variables_in_expr): Return the renamed expression.
|
(rename_sese_parameters): New.
|
(rename_sese_parameters): New.
|
* sese.h (rename_sese_parameters): Declared.
|
* sese.h (rename_sese_parameters): Declared.
|
|
|
2010-02-11 Richard Guenther
|
2010-02-11 Richard Guenther
|
|
|
PR tree-optimization/42998
|
PR tree-optimization/42998
|
* tree-ssa-pre.c (create_expression_by_pieces): Treat
|
* tree-ssa-pre.c (create_expression_by_pieces): Treat
|
POINTER_PLUS_EXPR properly.
|
POINTER_PLUS_EXPR properly.
|
|
|
2010-02-11 Sebastian Pop
|
2010-02-11 Sebastian Pop
|
Changpeng Fang
|
Changpeng Fang
|
|
|
PR middle-end/40886
|
PR middle-end/40886
|
* tree-ssa-loop-ivopts.c (determine_use_iv_cost_condition): Decrement
|
* tree-ssa-loop-ivopts.c (determine_use_iv_cost_condition): Decrement
|
the cost of an IV candidate when the IV is used in a test against zero.
|
the cost of an IV candidate when the IV is used in a test against zero.
|
|
|
* gcc.dg/tree-ssa/ivopts-3.c: New.
|
* gcc.dg/tree-ssa/ivopts-3.c: New.
|
|
|
2010-02-11 Richard Guenther
|
2010-02-11 Richard Guenther
|
|
|
PR lto/41664
|
PR lto/41664
|
* tree-ssa-alias.c (refs_may_alias_p_1): Canonicalize
|
* tree-ssa-alias.c (refs_may_alias_p_1): Canonicalize
|
pointer-vs-decl case by swapping refs. Handle some cases
|
pointer-vs-decl case by swapping refs. Handle some cases
|
of pointer-vs-decl disambiguations more conservatively.
|
of pointer-vs-decl disambiguations more conservatively.
|
* cfgexpand.c (gimple_expand_cfg): Set gimple_df->in_ssa_p
|
* cfgexpand.c (gimple_expand_cfg): Set gimple_df->in_ssa_p
|
to false after expanding.
|
to false after expanding.
|
|
|
2010-02-11 Richard Guenther
|
2010-02-11 Richard Guenther
|
|
|
PR driver/43021
|
PR driver/43021
|
* gcc.c (process_command): Handle LTO file@offset case more
|
* gcc.c (process_command): Handle LTO file@offset case more
|
appropriately.
|
appropriately.
|
|
|
2010-02-11 Jakub Jelinek
|
2010-02-11 Jakub Jelinek
|
|
|
* reload1.c (eliminate_regs_1): If insn is DEBUG_INSN, avoid any
|
* reload1.c (eliminate_regs_1): If insn is DEBUG_INSN, avoid any
|
modifications outside of the DEBUG_INSN. Accept CLOBBERs inside
|
modifications outside of the DEBUG_INSN. Accept CLOBBERs inside
|
of DEBUG_INSNs.
|
of DEBUG_INSNs.
|
(eliminate_regs_in_insn): Eliminate regs even in DEBUG_INSNs.
|
(eliminate_regs_in_insn): Eliminate regs even in DEBUG_INSNs.
|
|
|
* dwarf2out.c (mem_loc_descriptor) : Use DW_OP_deref_size
|
* dwarf2out.c (mem_loc_descriptor) : Use DW_OP_deref_size
|
if MEM's mode size isn't DWARF2_ADDR_SIZE.
|
if MEM's mode size isn't DWARF2_ADDR_SIZE.
|
(mem_loc_descriptor) : Allow also VOIDmode arguments.
|
(mem_loc_descriptor) : Allow also VOIDmode arguments.
|
Optimize eq/ne comparisons when both arguments are known to be
|
Optimize eq/ne comparisons when both arguments are known to be
|
zero-extended.
|
zero-extended.
|
(mem_loc_descriptor) : Allow also VOIDmode arguments.
|
(mem_loc_descriptor) : Allow also VOIDmode arguments.
|
Don't mask operands unnecessarily if they are known to be already
|
Don't mask operands unnecessarily if they are known to be already
|
zero-extended.
|
zero-extended.
|
|
|
2010-02-10 Vladimir Makarov
|
2010-02-10 Vladimir Makarov
|
|
|
* ira-conflicts.c (add_insn_allocno_copies): Use find_reg_note
|
* ira-conflicts.c (add_insn_allocno_copies): Use find_reg_note
|
instead of loop.
|
instead of loop.
|
|
|
2010-02-10 Richard Guenther
|
2010-02-10 Richard Guenther
|
|
|
PR tree-optimization/43017
|
PR tree-optimization/43017
|
* tree-vrp.c (vrp_int_const_binop): Trust int_const_binop
|
* tree-vrp.c (vrp_int_const_binop): Trust int_const_binop
|
for wrapping signed arithmetic.
|
for wrapping signed arithmetic.
|
|
|
2010-02-10 Jakub Jelinek
|
2010-02-10 Jakub Jelinek
|
|
|
PR debug/43010
|
PR debug/43010
|
* dwarf2out.c (retry_incomplete_types): Don't call gen_type_die
|
* dwarf2out.c (retry_incomplete_types): Don't call gen_type_die
|
if no debug info should be emitted for it.
|
if no debug info should be emitted for it.
|
|
|
2010-02-10 Kaz Kojima
|
2010-02-10 Kaz Kojima
|
|
|
* config/sh/sh.c (find_barrier): Skip call insn with a REG_EH_REGION
|
* config/sh/sh.c (find_barrier): Skip call insn with a REG_EH_REGION
|
note when flag_exceptions is set.
|
note when flag_exceptions is set.
|
|
|
2010-02-10 Duncan Sands
|
2010-02-10 Duncan Sands
|
|
|
* Makefile.in (PLUGIN_HEADERS): Add debug.h.
|
* Makefile.in (PLUGIN_HEADERS): Add debug.h.
|
|
|
2010-02-10 Richard Guenther
|
2010-02-10 Richard Guenther
|
|
|
PR c/43007
|
PR c/43007
|
* tree.c (get_unwidened): Handle constants.
|
* tree.c (get_unwidened): Handle constants.
|
* convert.c (convert_to_integer): Handle TRUNC_DIV_EXPR.
|
* convert.c (convert_to_integer): Handle TRUNC_DIV_EXPR.
|
|
|
2010-02-10 Martin Jambor
|
2010-02-10 Martin Jambor
|
|
|
PR lto/42985
|
PR lto/42985
|
* ipa-prop.c (ipa_update_after_lto_read): Count parameters and
|
* ipa-prop.c (ipa_update_after_lto_read): Count parameters and
|
check for variable argument counts independently.
|
check for variable argument counts independently.
|
|
|
2010-02-10 Christian Bruel
|
2010-02-10 Christian Bruel
|
|
|
PR target/42841
|
PR target/42841
|
* config/sh/sh.c (find_barrier): Increase length for non delayed
|
* config/sh/sh.c (find_barrier): Increase length for non delayed
|
conditional branches.
|
conditional branches.
|
|
|
2010-02-10 Christian Bruel
|
2010-02-10 Christian Bruel
|
|
|
* config/sh/sh.c (find_barrier): Don't emit a CP inside the GP setting.
|
* config/sh/sh.c (find_barrier): Don't emit a CP inside the GP setting.
|
|
|
2010-02-10 Jakub Jelinek
|
2010-02-10 Jakub Jelinek
|
|
|
* builtins.c (set_builtin_user_assembler_name): Also handle
|
* builtins.c (set_builtin_user_assembler_name): Also handle
|
ffs if int is smaller than word.
|
ffs if int is smaller than word.
|
|
|
2010-02-09 Vladimir Makarov
|
2010-02-09 Vladimir Makarov
|
|
|
PR middle-end/42973
|
PR middle-end/42973
|
* ira-conflicts.c (get_dup): Remove.
|
* ira-conflicts.c (get_dup): Remove.
|
(process_reg_shuffles): Add new parameter. Use it as an
|
(process_reg_shuffles): Add new parameter. Use it as an
|
additional guard for copy generation.
|
additional guard for copy generation.
|
(add_insn_allocno_copies): Rewrite.
|
(add_insn_allocno_copies): Rewrite.
|
|
|
2010-02-09 Alexander Monakov
|
2010-02-09 Alexander Monakov
|
|
|
* common.opt (fsched2-use-traces): Preserved for backward
|
* common.opt (fsched2-use-traces): Preserved for backward
|
compatibility.
|
compatibility.
|
* doc/invoke.texi: Remove the documentation about option
|
* doc/invoke.texi: Remove the documentation about option
|
-fsched2-use-traces.
|
-fsched2-use-traces.
|
* sched-rgn.c (rest_of_handle_sched2): Remove usage of
|
* sched-rgn.c (rest_of_handle_sched2): Remove usage of
|
flag_sched2_use_traces.
|
flag_sched2_use_traces.
|
* opts.c (common_handle_option): Add OPT_fsched2_use_traces to
|
* opts.c (common_handle_option): Add OPT_fsched2_use_traces to
|
the backward compatibility flag section.
|
the backward compatibility flag section.
|
|
|
2010-02-09 Richard Guenther
|
2010-02-09 Richard Guenther
|
|
|
PR tree-optimization/43008
|
PR tree-optimization/43008
|
* tree-ssa-structalias.c (handle_lhs_call): Pass in the fndecl,
|
* tree-ssa-structalias.c (handle_lhs_call): Pass in the fndecl,
|
make HEAP variables initialized from global memory if they
|
make HEAP variables initialized from global memory if they
|
are not known builtin functions.
|
are not known builtin functions.
|
(find_func_aliases): Adjust.
|
(find_func_aliases): Adjust.
|
|
|
2010-02-09 Richard Guenther
|
2010-02-09 Richard Guenther
|
|
|
PR tree-optimization/43000
|
PR tree-optimization/43000
|
* tree-vrp.c (vrp_int_const_binop): Only handle unsigned
|
* tree-vrp.c (vrp_int_const_binop): Only handle unsigned
|
arithmetic manually.
|
arithmetic manually.
|
|
|
2010-02-08 Jakub Jelinek
|
2010-02-08 Jakub Jelinek
|
|
|
PR tree-optimization/42931
|
PR tree-optimization/42931
|
* tree-loop-linear.c (try_interchange_loops): Don't call
|
* tree-loop-linear.c (try_interchange_loops): Don't call
|
double_int_mul if estimated_loop_iterations failed.
|
double_int_mul if estimated_loop_iterations failed.
|
|
|
2010-02-08 Martin Jambor
|
2010-02-08 Martin Jambor
|
|
|
PR middle-end/42898
|
PR middle-end/42898
|
* tree-sra.c (build_accesses_from_assign): Do not mark in
|
* tree-sra.c (build_accesses_from_assign): Do not mark in
|
should_scalarize_away_bitmap if stmt has volatile ops.
|
should_scalarize_away_bitmap if stmt has volatile ops.
|
(sra_modify_assign): Do not process assigns piecemeal if if stmt
|
(sra_modify_assign): Do not process assigns piecemeal if if stmt
|
has volatile ops.
|
has volatile ops.
|
|
|
2010-02-08 Joern Rennecke
|
2010-02-08 Joern Rennecke
|
|
|
* doc/tm.texi (TARGET_UNWIND_WORD_MODE): Document.
|
* doc/tm.texi (TARGET_UNWIND_WORD_MODE): Document.
|
|
|
2010-02-07 Adam Nemet
|
2010-02-07 Adam Nemet
|
|
|
* config/mips/mips.md (*_trunc_exts): Fix comment
|
* config/mips/mips.md (*_trunc_exts): Fix comment
|
before the pattern.
|
before the pattern.
|
|
|
2010-02-07 Andrew Pinski
|
2010-02-07 Andrew Pinski
|
|
|
PR middle-end/42946
|
PR middle-end/42946
|
* df-core.c (df_finish_pass): Change type of saved_flags to int.
|
* df-core.c (df_finish_pass): Change type of saved_flags to int.
|
|
|
2010-02-07 Sebastian Pop
|
2010-02-07 Sebastian Pop
|
|
|
PR middle-end/42988
|
PR middle-end/42988
|
* graphite-dependences.c (dependence_polyhedron): Set PDDR_KIND
|
* graphite-dependences.c (dependence_polyhedron): Set PDDR_KIND
|
to unknown_dependence.
|
to unknown_dependence.
|
(graphite_legal_transform_dr): Handle the unknown_dependence.
|
(graphite_legal_transform_dr): Handle the unknown_dependence.
|
(graphite_carried_dependence_level_k): Same.
|
(graphite_carried_dependence_level_k): Same.
|
|
|
2010-02-07 Sebastian Pop
|
2010-02-07 Sebastian Pop
|
|
|
* ChangeLog.graphite: Remove testsuite/ or gcc/testsuite/.
|
* ChangeLog.graphite: Remove testsuite/ or gcc/testsuite/.
|
|
|
2010-02-07 Richard Guenther
|
2010-02-07 Richard Guenther
|
|
|
PR middle-end/42991
|
PR middle-end/42991
|
* expr.c (get_inner_reference): Always initialize *pbitsize.
|
* expr.c (get_inner_reference): Always initialize *pbitsize.
|
|
|
2010-02-07 Richard Guenther
|
2010-02-07 Richard Guenther
|
|
|
PR middle-end/42956
|
PR middle-end/42956
|
* gimplify.c (gimple_fold_indirect_ref): Avoid generating
|
* gimplify.c (gimple_fold_indirect_ref): Avoid generating
|
new ARRAY_REFs on variable size element or minimal index arrays.
|
new ARRAY_REFs on variable size element or minimal index arrays.
|
Complete.
|
Complete.
|
* tree-ssa-loop-ivopts.c (find_interesting_uses_address): Use
|
* tree-ssa-loop-ivopts.c (find_interesting_uses_address): Use
|
gimple_fold_indirect_ref.
|
gimple_fold_indirect_ref.
|
|
|
2010-02-06 Richard Earnshaw
|
2010-02-06 Richard Earnshaw
|
|
|
PR target/42957
|
PR target/42957
|
* arm.c (arm_override_options): Just return if the user has specified
|
* arm.c (arm_override_options): Just return if the user has specified
|
an invalid fpu name.
|
an invalid fpu name.
|
|
|
2010-02-03 Jason Merrill
|
2010-02-03 Jason Merrill
|
|
|
PR c++/42870
|
PR c++/42870
|
* config/i386/cygming.h (ASM_OUTPUT_DEF_FROM_DECLS): Call
|
* config/i386/cygming.h (ASM_OUTPUT_DEF_FROM_DECLS): Call
|
i386_pe_maybe_record_exported_symbol.
|
i386_pe_maybe_record_exported_symbol.
|
|
|
2010-02-05 Steve Ellcey
|
2010-02-05 Steve Ellcey
|
|
|
PR target/42924
|
PR target/42924
|
* config/pa/pa.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
|
* config/pa/pa.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
|
(pa_delegitimize_address): New function.
|
(pa_delegitimize_address): New function.
|
|
|
2010-02-05 Ozkan Sezer
|
2010-02-05 Ozkan Sezer
|
|
|
* config/i386/msformat-c.c (ms_printf_length_specs): Set the
|
* config/i386/msformat-c.c (ms_printf_length_specs): Set the
|
scalar_identity_flag for the size_t/ptrdiff_t %Id and %Iu specs.
|
scalar_identity_flag for the size_t/ptrdiff_t %Id and %Iu specs.
|
|
|
2010-02-05 Richard Guenther
|
2010-02-05 Richard Guenther
|
|
|
PR lto/42762
|
PR lto/42762
|
* lto-streamer-in.c (get_resolution): Deal with references
|
* lto-streamer-in.c (get_resolution): Deal with references
|
to undefined functions.
|
to undefined functions.
|
|
|
2010-02-05 Richard Guenther
|
2010-02-05 Richard Guenther
|
|
|
* tree-ssa-ccp.c (get_symbol_constant_value): Strip all conversions.
|
* tree-ssa-ccp.c (get_symbol_constant_value): Strip all conversions.
|
(fold_const_aggregate_ref): Likewise.
|
(fold_const_aggregate_ref): Likewise.
|
(ccp_fold_stmt): Substitute loads.
|
(ccp_fold_stmt): Substitute loads.
|
(maybe_fold_reference): Verify types before substituting.
|
(maybe_fold_reference): Verify types before substituting.
|
Unshare properly.
|
Unshare properly.
|
(fold_gimple_assign): Unshare properly.
|
(fold_gimple_assign): Unshare properly.
|
(fold_stmt_1): Insert conversion if necessary before replacing the RHS.
|
(fold_stmt_1): Insert conversion if necessary before replacing the RHS.
|
|
|
2010-02-05 Nathan Froyd
|
2010-02-05 Nathan Froyd
|
|
|
* config/rs6000/rs6000.c (rs6000_override_options): Invert check
|
* config/rs6000/rs6000.c (rs6000_override_options): Invert check
|
for rs6000_gen_cell_microcode.
|
for rs6000_gen_cell_microcode.
|
|
|
2010-02-04 Richard Guenther
|
2010-02-04 Richard Guenther
|
|
|
PR rtl-optimization/42952
|
PR rtl-optimization/42952
|
* dse.c (const_or_frame_p): Remove MEM handling.
|
* dse.c (const_or_frame_p): Remove MEM handling.
|
|
|
2010-02-04 Nick Clifton
|
2010-02-04 Nick Clifton
|
|
|
* config/mn10300/mn10300.c (TARGET_ASM_OUTPUT_MI_THUNK): Define.
|
* config/mn10300/mn10300.c (TARGET_ASM_OUTPUT_MI_THUNK): Define.
|
(TARGET_ASM_CAN_OUTPUT_MI_THUNK): Define.
|
(TARGET_ASM_CAN_OUTPUT_MI_THUNK): Define.
|
(function_arg): Use NULL_RTX and FIRST_ARGUMENT_REGNUM.
|
(function_arg): Use NULL_RTX and FIRST_ARGUMENT_REGNUM.
|
(mn10300_asm_output_mi_thunk): New function.
|
(mn10300_asm_output_mi_thunk): New function.
|
(mn10300_can_output_mu_thunk): New function.
|
(mn10300_can_output_mu_thunk): New function.
|
* config/mn10300/mn10300.h (FIRST_ARGUMENT_REGNUM): Define.
|
* config/mn10300/mn10300.h (FIRST_ARGUMENT_REGNUM): Define.
|
(FUNCTION_ARG_REGNO_P): Fix comment. Accept d0 and d1.
|
(FUNCTION_ARG_REGNO_P): Fix comment. Accept d0 and d1.
|
(FUNCTION_ARG): Delete incorrect comment.
|
(FUNCTION_ARG): Delete incorrect comment.
|
|
|
2010-02-03 Jason Merrill
|
2010-02-03 Jason Merrill
|
|
|
PR c++/40138
|
PR c++/40138
|
* fold-const.c (operand_equal_p): Handle erroneous types.
|
* fold-const.c (operand_equal_p): Handle erroneous types.
|
|
|
2010-02-03 Kaushik Phatak
|
2010-02-03 Kaushik Phatak
|
|
|
* config/h8300/h8300.md (can_delay): Fix attibute condition.
|
* config/h8300/h8300.md (can_delay): Fix attibute condition.
|
|
|
2010-02-03 Vladimir Makarov
|
2010-02-03 Vladimir Makarov
|
|
|
PR rtl-optimization/42941
|
PR rtl-optimization/42941
|
* sched-deps.c (setup_insn_reg_pressure_info): Use xcalloc instead
|
* sched-deps.c (setup_insn_reg_pressure_info): Use xcalloc instead
|
of xmalloc.
|
of xmalloc.
|
|
|
2010-02-03 Jason Merrill
|
2010-02-03 Jason Merrill
|
|
|
PR c++/35652
|
PR c++/35652
|
* builtins.c (c_strlen): Use EXPR_LOCATION in diagnostics.
|
* builtins.c (c_strlen): Use EXPR_LOCATION in diagnostics.
|
|
|
2010-02-03 Alexandre Oliva
|
2010-02-03 Alexandre Oliva
|
|
|
PR debug/42896
|
PR debug/42896
|
* cselib.h (struct cselib_val_struct): Add uid. Rename value to hash.
|
* cselib.h (struct cselib_val_struct): Add uid. Rename value to hash.
|
(cselib_reset_table): Renamed from...
|
(cselib_reset_table): Renamed from...
|
(cselib_reset_table_with_next_value): ... this.
|
(cselib_reset_table_with_next_value): ... this.
|
(cselib_get_next_uid): Renamed from...
|
(cselib_get_next_uid): Renamed from...
|
(cselib_get_next_unknown_value): ... this.
|
(cselib_get_next_unknown_value): ... this.
|
* cselib.c (next_uid): Renamed from...
|
* cselib.c (next_uid): Renamed from...
|
(next_unknown_value): ... this.
|
(next_unknown_value): ... this.
|
(cselib_clear_table): Adjust.
|
(cselib_clear_table): Adjust.
|
(cselib_reset_table): Adjust. Renamed from...
|
(cselib_reset_table): Adjust. Renamed from...
|
(cselib_reset_table_with_next_value): ... this.
|
(cselib_reset_table_with_next_value): ... this.
|
(cselib_get_next_uid): Adjust. Renamed from...
|
(cselib_get_next_uid): Adjust. Renamed from...
|
(cselib_get_next_unknown_value): ... this.
|
(cselib_get_next_unknown_value): ... this.
|
(get_value_hash): Use hash.
|
(get_value_hash): Use hash.
|
(cselib_hash_rtx): Likewise.
|
(cselib_hash_rtx): Likewise.
|
(new_cselib_val): Adjust. Set and dump uid.
|
(new_cselib_val): Adjust. Set and dump uid.
|
(cselib_lookup_mem): Pass next_uid as hash.
|
(cselib_lookup_mem): Pass next_uid as hash.
|
(cselib_subst_to_values): Likewise.
|
(cselib_subst_to_values): Likewise.
|
(cselib_log_lookup): Dump uid.
|
(cselib_log_lookup): Dump uid.
|
(cselib_lookup): Pass next_uid as hash. Adjust.
|
(cselib_lookup): Pass next_uid as hash. Adjust.
|
(cselib_process_insn): Adjust.
|
(cselib_process_insn): Adjust.
|
(cselib_init): Initialize next_uid.
|
(cselib_init): Initialize next_uid.
|
(cselib_finish): Adjust.
|
(cselib_finish): Adjust.
|
(dump_cselib_table): Likewise.
|
(dump_cselib_table): Likewise.
|
* dse.c (canon_address): Dump value uid.
|
* dse.c (canon_address): Dump value uid.
|
* print-rtl.c (print_rtx): Print value uid.
|
* print-rtl.c (print_rtx): Print value uid.
|
* var-tracking.c (VARIABLE_HASH_VAL): Dropped.
|
* var-tracking.c (VARIABLE_HASH_VAL): Dropped.
|
(dvuid): New type.
|
(dvuid): New type.
|
(dv_uid): New function, sort of renamed from...
|
(dv_uid): New function, sort of renamed from...
|
(dv_htab_hash): ... this, reimplemented in terms of it and...
|
(dv_htab_hash): ... this, reimplemented in terms of it and...
|
(dv_uid2hash): ... this. New.
|
(dv_uid2hash): ... this. New.
|
(variable_htab_eq): Drop excess assertions.
|
(variable_htab_eq): Drop excess assertions.
|
(tie_break_pointers): Removed.
|
(tie_break_pointers): Removed.
|
(canon_value_cmp): Compare uids.
|
(canon_value_cmp): Compare uids.
|
(variable_post_merge_New_vals): Print uids.
|
(variable_post_merge_New_vals): Print uids.
|
(vt_add_function_parameters): Adjust.
|
(vt_add_function_parameters): Adjust.
|
(vt_initialize): Reset table. Adjust.
|
(vt_initialize): Reset table. Adjust.
|
|
|
2010-02-03 Richard Guenther
|
2010-02-03 Richard Guenther
|
|
|
PR tree-optimization/42944
|
PR tree-optimization/42944
|
* tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Handle calloc.
|
* tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Handle calloc.
|
(call_may_clobber_ref_p_1): Likewise. Properly handle
|
(call_may_clobber_ref_p_1): Likewise. Properly handle
|
malloc and calloc clobbering errno.
|
malloc and calloc clobbering errno.
|
|
|
2010-02-03 Steven Bosscher
|
2010-02-03 Steven Bosscher
|
|
|
* doc/invoke.texi: Fix name of sched1 dump.
|
* doc/invoke.texi: Fix name of sched1 dump.
|
|
|
* opts.c (decode_options): Set flag_tree_switch_conversion
|
* opts.c (decode_options): Set flag_tree_switch_conversion
|
only conditionally on optimize >= 2.
|
only conditionally on optimize >= 2.
|
|
|
* gcse.c: Assorted comment fixes in pass description.
|
* gcse.c: Assorted comment fixes in pass description.
|
|
|
2010-02-03 Anthony Green
|
2010-02-03 Anthony Green
|
|
|
* config/moxie/moxie.c (moxie_asm_trampoline_template): Introduce
|
* config/moxie/moxie.c (moxie_asm_trampoline_template): Introduce
|
nop padding in order to maintain alignment of storage location of
|
nop padding in order to maintain alignment of storage location of
|
target function address.
|
target function address.
|
(moxie_trampoline_init): Store target function address at newly
|
(moxie_trampoline_init): Store target function address at newly
|
aligned location.
|
aligned location.
|
* config/moxie/moxie.h (TRAMPOLINE_ALIGNMENT): Increase alignment
|
* config/moxie/moxie.h (TRAMPOLINE_ALIGNMENT): Increase alignment
|
to 32.
|
to 32.
|
(TRAMPOLINE_SIZE): Increase size by 2 bytes for alignment padding.
|
(TRAMPOLINE_SIZE): Increase size by 2 bytes for alignment padding.
|
|
|
2010-02-03 Richard Guenther
|
2010-02-03 Richard Guenther
|
|
|
PR middle-end/42927
|
PR middle-end/42927
|
* tree-cfg.c (verify_gimple_assign_binary): Fix shift verification.
|
* tree-cfg.c (verify_gimple_assign_binary): Fix shift verification.
|
|
|
2010-02-03 Rainer Orth
|
2010-02-03 Rainer Orth
|
|
|
* config.gcc: Reenable check for obsolete targets.
|
* config.gcc: Reenable check for obsolete targets.
|
Obsolete alpha*-dec-osf4*, alpha*-dec-osf5.0*, mips-sgi-irix5*,
|
Obsolete alpha*-dec-osf4*, alpha*-dec-osf5.0*, mips-sgi-irix5*,
|
mips-sgi-irix6.[0-4]*.
|
mips-sgi-irix6.[0-4]*.
|
|
|
2010-02-02 Nick Clifton
|
2010-02-02 Nick Clifton
|
|
|
* config/rx/rx.c (rx_is_legitimate_constant): Treat a maximum
|
* config/rx/rx.c (rx_is_legitimate_constant): Treat a maximum
|
constant size of 4 as being the same as 0.
|
constant size of 4 as being the same as 0.
|
* doc/invoke.texi (RX Options): Document that -mmax-constant-size
|
* doc/invoke.texi (RX Options): Document that -mmax-constant-size
|
can take values in the range 0..4.
|
can take values in the range 0..4.
|
|
|
2010-02-02 Jack Howarth
|
2010-02-02 Jack Howarth
|
|
|
PR java/41991
|
PR java/41991
|
* unwind-dw2-fde-darwin.c: Re-export _Unwind_FindEnclosingFunction()
|
* unwind-dw2-fde-darwin.c: Re-export _Unwind_FindEnclosingFunction()
|
as _darwin10_Unwind_FindEnclosingFunction().
|
as _darwin10_Unwind_FindEnclosingFunction().
|
* libgcc-libsystem.ver: New.
|
* libgcc-libsystem.ver: New.
|
|
|
2010-02-01 Vladimir Makarov
|
2010-02-01 Vladimir Makarov
|
|
|
PR target/41399
|
PR target/41399
|
* sched-deps.c (sched_analyze_insn): Ignore fixed registers for
|
* sched-deps.c (sched_analyze_insn): Ignore fixed registers for
|
implicitly set registers.
|
implicitly set registers.
|
|
|
2010-02-01 Richard Earnshaw
|
2010-02-01 Richard Earnshaw
|
|
|
* arm.c (FL_FOR_ARCH_7A): is also a superset of ARMv6K.
|
* arm.c (FL_FOR_ARCH_7A): is also a superset of ARMv6K.
|
(arm_override_options): Allow automatic selection of the thread
|
(arm_override_options): Allow automatic selection of the thread
|
pointer register if thumb2.
|
pointer register if thumb2.
|
(legitimize_pic_address): Improve code sequences for Thumb2.
|
(legitimize_pic_address): Improve code sequences for Thumb2.
|
(arm_call_tls_get_addr): Likewise.
|
(arm_call_tls_get_addr): Likewise.
|
(legitimize_tls_address): Likewise.
|
(legitimize_tls_address): Likewise.
|
* arm.md (pic_load_addr_arm): Delete. Replace with ...
|
* arm.md (pic_load_addr_arm): Delete. Replace with ...
|
(pic_load_addr_32bit): ... this. New named pattern.
|
(pic_load_addr_32bit): ... this. New named pattern.
|
* thumb2.md (pic_load_addr_thumb2): Delete.
|
* thumb2.md (pic_load_addr_thumb2): Delete.
|
(pic_load_dot_plus_four): Delete.
|
(pic_load_dot_plus_four): Delete.
|
(tls_load_dot_plus_four): New named pattern.
|
(tls_load_dot_plus_four): New named pattern.
|
|
|
2010-02-01 Rainer Orth
|
2010-02-01 Rainer Orth
|
|
|
PR libgomp/29986
|
PR libgomp/29986
|
* doc/install.texi (Specific): Add sparc-sun-solaris2.10 entry.
|
* doc/install.texi (Specific): Add sparc-sun-solaris2.10 entry.
|
Document fix for TLS bug.
|
Document fix for TLS bug.
|
|
|
2010-01-31 Richard Guenther
|
2010-01-31 Richard Guenther
|
|
|
* tree-sra.c (ptr_parm_has_direct_uses): Rewrite to be
|
* tree-sra.c (ptr_parm_has_direct_uses): Rewrite to be
|
conservatively correct.
|
conservatively correct.
|
|
|
2010-01-31 John David Anglin
|
2010-01-31 John David Anglin
|
|
|
PR target/42850
|
PR target/42850
|
Revert:
|
Revert:
|
2010-01-02 John David Anglin
|
2010-01-02 John David Anglin
|
|
|
* config/pa/t-slibgcc-dwarf-ver (SHLIB_SOVERSION): Bump by two.
|
* config/pa/t-slibgcc-dwarf-ver (SHLIB_SOVERSION): Bump by two.
|
|
|
2010-01-31 Kaveh R. Ghazi
|
2010-01-31 Kaveh R. Ghazi
|
|
|
* doc/install.texi: Update recommended GMP/MPFR/MPC versions.
|
* doc/install.texi: Update recommended GMP/MPFR/MPC versions.
|
|
|
2010-01-31 Kai Tietz
|
2010-01-31 Kai Tietz
|
|
|
* config.gcc: Adjust order of makefile fragments for mingw targets.
|
* config.gcc: Adjust order of makefile fragments for mingw targets.
|
|
|
2010-01-31 Richard Guenther
|
2010-01-31 Richard Guenther
|
|
|
PR middle-end/42898
|
PR middle-end/42898
|
* gimplify.c (gimplify_init_constructor): For volatile LHS
|
* gimplify.c (gimplify_init_constructor): For volatile LHS
|
initialize a temporary.
|
initialize a temporary.
|
|
|
2010-01-31 Matthias Klose
|
2010-01-31 Matthias Klose
|
|
|
* configure.ac: Fix __stack_chk_fail check for cross builds configured
|
* configure.ac: Fix __stack_chk_fail check for cross builds configured
|
--with-headers
|
--with-headers
|
* configure: Regenerate.
|
* configure: Regenerate.
|
|
|
2010-01-29 Eric Botcazou
|
2010-01-29 Eric Botcazou
|
|
|
* tree-ssa-alias.c (same_type_for_tbaa): Return -1 if the types have
|
* tree-ssa-alias.c (same_type_for_tbaa): Return -1 if the types have
|
the same alias set and their sizes different constantness.
|
the same alias set and their sizes different constantness.
|
(aliasing_component_refs_p): Revert 2009-10-24 change.
|
(aliasing_component_refs_p): Revert 2009-10-24 change.
|
|
|
2010-01-29 Rainer Orth
|
2010-01-29 Rainer Orth
|
|
|
* config/sparc/sparc.c (sparc_elf_asm_named_section): Declare decl
|
* config/sparc/sparc.c (sparc_elf_asm_named_section): Declare decl
|
unused.
|
unused.
|
|
|
2010-01-29 Richard Guenther
|
2010-01-29 Richard Guenther
|
|
|
* tree-ssa-ccp.c (ccp_fold_stmt): Unshare values we substitute.
|
* tree-ssa-ccp.c (ccp_fold_stmt): Unshare values we substitute.
|
Assert we successfully updated the call.
|
Assert we successfully updated the call.
|
|
|
2010-01-29 Jakub Jelinek
|
2010-01-29 Jakub Jelinek
|
|
|
PR rtl-optimization/42889
|
PR rtl-optimization/42889
|
* df.h (df_set_bb_dirty_nonlr): New prototype.
|
* df.h (df_set_bb_dirty_nonlr): New prototype.
|
* df-core.c (df_set_bb_dirty_nonlr): New function.
|
* df-core.c (df_set_bb_dirty_nonlr): New function.
|
* df-scan.c (df_insn_rescan): Call it instead of
|
* df-scan.c (df_insn_rescan): Call it instead of
|
df_set_bb_dirty for DEBUG_INSNs.
|
df_set_bb_dirty for DEBUG_INSNs.
|
|
|
2010-01-29 Richard Guenther
|
2010-01-29 Richard Guenther
|
|
|
PR middle-end/37448
|
PR middle-end/37448
|
* ipa-inline.c (cgraph_decide_inlining_incrementally): Avoid
|
* ipa-inline.c (cgraph_decide_inlining_incrementally): Avoid
|
quadratic behavior in most cases.
|
quadratic behavior in most cases.
|
|
|
2010-01-28 Uros Bizjak
|
2010-01-28 Uros Bizjak
|
|
|
PR target/42891
|
PR target/42891
|
* config/i386/i386.c (ix86_expand_int_movcc): Convert tmp to SImode
|
* config/i386/i386.c (ix86_expand_int_movcc): Convert tmp to SImode
|
in the call to gen_x86_movsicc_0_m1.
|
in the call to gen_x86_movsicc_0_m1.
|
|
|
2010-01-28 Richard Guenther
|
2010-01-28 Richard Guenther
|
|
|
PR tree-optimization/42871
|
PR tree-optimization/42871
|
* tree-ssa-pre.c (phi_translate_set): Make sure to retain leaders.
|
* tree-ssa-pre.c (phi_translate_set): Make sure to retain leaders.
|
|
|
2010-01-28 Richard Guenther
|
2010-01-28 Richard Guenther
|
|
|
* tree-ssa-ccp.c (ccp_fold_stmt): Fold calls and propagate
|
* tree-ssa-ccp.c (ccp_fold_stmt): Fold calls and propagate
|
into call arguments.
|
into call arguments.
|
|
|
2010-01-28 Richard Guenther
|
2010-01-28 Richard Guenther
|
|
|
PR middle-end/42883
|
PR middle-end/42883
|
* tree-cfgcleanup.c (remove_forwarder_block): Do not remove
|
* tree-cfgcleanup.c (remove_forwarder_block): Do not remove
|
the forwarder if the destination is an EH landing pad.
|
the forwarder if the destination is an EH landing pad.
|
|
|
2010-01-28 Razya Ladelsky
|
2010-01-28 Razya Ladelsky
|
|
|
* tree-parloops.c (transform_to_exit_first_loop): Update the basic
|
* tree-parloops.c (transform_to_exit_first_loop): Update the basic
|
block list passed to gimple_duplicate_sese_tail.
|
block list passed to gimple_duplicate_sese_tail.
|
(parallelize_loops): Avoid parallelization when the function
|
(parallelize_loops): Avoid parallelization when the function
|
has_nonlocal_label.
|
has_nonlocal_label.
|
Avoid parallelization when the preheader is IRREDUCIBLE.
|
Avoid parallelization when the preheader is IRREDUCIBLE.
|
Try to optimize when estimated_loop_iterations_int is unresolved.
|
Try to optimize when estimated_loop_iterations_int is unresolved.
|
Add the loop's location to the dump file.
|
Add the loop's location to the dump file.
|
* tree-cfg.c (add_phi_args_after_redirect): Remove.
|
* tree-cfg.c (add_phi_args_after_redirect): Remove.
|
(gimple_duplicate_sese_tail): Remove the check for the latch.
|
(gimple_duplicate_sese_tail): Remove the check for the latch.
|
Redirect nexits to the exit block.
|
Redirect nexits to the exit block.
|
Remove handling of the incoming edges to the latch.
|
Remove handling of the incoming edges to the latch.
|
Redirect the backedge from the copied latch to the exit bb.
|
Redirect the backedge from the copied latch to the exit bb.
|
|
|
2010-01-28 Michael Matz
|
2010-01-28 Michael Matz
|
|
|
PR target/42881
|
PR target/42881
|
* config/i386/i386.c (ix86_expand_vector_init_duplicate):
|
* config/i386/i386.c (ix86_expand_vector_init_duplicate):
|
Wrap force_reg into a sequence, emit it before user.
|
Wrap force_reg into a sequence, emit it before user.
|
|
|
2010-01-28 Stephen Thomas
|
2010-01-28 Stephen Thomas
|
|
|
* config/arm/arm.md (bswapsi2): Add support for bswapsi2.
|
* config/arm/arm.md (bswapsi2): Add support for bswapsi2.
|
(arm_rev): New.
|
(arm_rev): New.
|
(arm_legacy_rev): Likewise.
|
(arm_legacy_rev): Likewise.
|
(thumb_legacy_rev): Likewise.
|
(thumb_legacy_rev): Likewise.
|
|
|
2010-01-27 Jakub Jelinek
|
2010-01-27 Jakub Jelinek
|
|
|
* dwarf2out.c (mem_loc_descriptor): Remove special casing of
|
* dwarf2out.c (mem_loc_descriptor): Remove special casing of
|
CONSTANT_POOL_ADDRESS_P SYMBOL_REFs. If for MEM recursive call
|
CONSTANT_POOL_ADDRESS_P SYMBOL_REFs. If for MEM recursive call
|
on MEM's address failed, try avoid_constant_pool_reference and
|
on MEM's address failed, try avoid_constant_pool_reference and
|
recurse if it returned something different.
|
recurse if it returned something different.
|
(loc_descriptor): If for MEM mem_loc_descriptor failed on the
|
(loc_descriptor): If for MEM mem_loc_descriptor failed on the
|
address, try avoid_constant_pool_reference and recurse if it
|
address, try avoid_constant_pool_reference and recurse if it
|
returned something different.
|
returned something different.
|
(dw_loc_list_1): If for MEM mem_loc_descriptor failed on the
|
(dw_loc_list_1): If for MEM mem_loc_descriptor failed on the
|
address and avoid_constant_pool_reference returned something
|
address and avoid_constant_pool_reference returned something
|
different, don't set have_address.
|
different, don't set have_address.
|
|
|
2010-01-27 Alexandre Oliva
|
2010-01-27 Alexandre Oliva
|
|
|
PR debug/42861
|
PR debug/42861
|
* var-tracking.c (val_store): Add modified argument, obey it.
|
* var-tracking.c (val_store): Add modified argument, obey it.
|
Adjust callers.
|
Adjust callers.
|
(count_uses): Move down logging of main.
|
(count_uses): Move down logging of main.
|
(compute_bb_dataflow): Use val_store for MO_VAL_USEs that
|
(compute_bb_dataflow): Use val_store for MO_VAL_USEs that
|
don't need resolution.
|
don't need resolution.
|
(emit_notes_in_bb): Likewise.
|
(emit_notes_in_bb): Likewise.
|
|
|
2010-01-27 Richard Guenther
|
2010-01-27 Richard Guenther
|
|
|
PR middle-end/42878
|
PR middle-end/42878
|
* tree-inline.c (remap_decl): Delay remapping of SSA name
|
* tree-inline.c (remap_decl): Delay remapping of SSA name
|
default definitions until we need them.
|
default definitions until we need them.
|
|
|
2010-01-27 Jakub Jelinek
|
2010-01-27 Jakub Jelinek
|
|
|
* config/rs6000/rs6000.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
|
* config/rs6000/rs6000.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
|
(rs6000_delegitimize_address): New function.
|
(rs6000_delegitimize_address): New function.
|
|
|
* config/s390/s390.c (s390_delegitimize_address): Call
|
* config/s390/s390.c (s390_delegitimize_address): Call
|
delegitimize_mem_from_attrs.
|
delegitimize_mem_from_attrs.
|
|
|
PR middle-end/42874
|
PR middle-end/42874
|
* tree-inline.c (cannot_copy_type_1): Removed.
|
* tree-inline.c (cannot_copy_type_1): Removed.
|
(copy_forbidden): Don't forbid copying of functions containing
|
(copy_forbidden): Don't forbid copying of functions containing
|
records/unions with variable length fields.
|
records/unions with variable length fields.
|
|
|
2010-01-27 Christian Bruel
|
2010-01-27 Christian Bruel
|
|
|
Revert:
|
Revert:
|
PR target/42841
|
PR target/42841
|
* config/sh/sh.c (find_barrier): Increase length for non delayed
|
* config/sh/sh.c (find_barrier): Increase length for non delayed
|
conditional branches.
|
conditional branches.
|
|
|
2010-01-27 Matthias Klose
|
2010-01-27 Matthias Klose
|
|
|
* configure.ac (gnu-unique-object): Fix ldd version check.
|
* configure.ac (gnu-unique-object): Fix ldd version check.
|
* configure: Regenerate.
|
* configure: Regenerate.
|
|
|
2010-01-26 Rainer Orth
|
2010-01-26 Rainer Orth
|
|
|
* config/sparc/sparc.c (sparc_elf_asm_named_section): Test for
|
* config/sparc/sparc.c (sparc_elf_asm_named_section): Test for
|
HAVE_GNU_AS value.
|
HAVE_GNU_AS value.
|
* config/sparc/sysv4.h [HAVE_GNU_AS] (TARGET_ASM_NAMED_SECTION):
|
* config/sparc/sysv4.h [HAVE_GNU_AS] (TARGET_ASM_NAMED_SECTION):
|
Test for HAVE_GNU_AS value.
|
Test for HAVE_GNU_AS value.
|
|
|
2010-01-26 Rainer Orth
|
2010-01-26 Rainer Orth
|
|
|
* config.gcc (mips-sgi-irix[56]*): Set use_gcc_stdint.
|
* config.gcc (mips-sgi-irix[56]*): Set use_gcc_stdint.
|
* config/mips/iris.h (INT8_TYPE, INT16_TYPE, INT32_TYPE,
|
* config/mips/iris.h (INT8_TYPE, INT16_TYPE, INT32_TYPE,
|
INT64_TYPE): Define.
|
INT64_TYPE): Define.
|
(UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE): Define.
|
(UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE): Define.
|
(INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE,
|
(INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE,
|
INT_LEAST64_TYPE): Define.
|
INT_LEAST64_TYPE): Define.
|
(UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE,
|
(UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE,
|
UINT_LEAST64_TYPE): Define.
|
UINT_LEAST64_TYPE): Define.
|
(INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE)
|
(INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE)
|
INT_FAST64_TYPE): Define.
|
INT_FAST64_TYPE): Define.
|
(UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE,
|
(UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE,
|
UINT_FAST64_TYPE): Define.
|
UINT_FAST64_TYPE): Define.
|
(INTMAX_TYPE, UINTMAX_TYPE): Define.
|
(INTMAX_TYPE, UINTMAX_TYPE): Define.
|
(INTPTR_TYPE, UINTPTR_TYPE): Define.
|
(INTPTR_TYPE, UINTPTR_TYPE): Define.
|
(SIG_ATOMIC_TYPE): Define.
|
(SIG_ATOMIC_TYPE): Define.
|
|
|
2010-01-26 Richard Guenther
|
2010-01-26 Richard Guenther
|
|
|
* df-scan.c (df_scan_set_bb_info): Remove assert.
|
* df-scan.c (df_scan_set_bb_info): Remove assert.
|
(df_insn_rescan_debug_internal): Merge asserts.
|
(df_insn_rescan_debug_internal): Merge asserts.
|
(df_install_ref): Likewise.
|
(df_install_ref): Likewise.
|
(df_mark_reg): Use bitmap_set_range.
|
(df_mark_reg): Use bitmap_set_range.
|
(df_hard_reg_used_p): Remove assert.
|
(df_hard_reg_used_p): Remove assert.
|
(df_hard_reg_used_count): Likewise.
|
(df_hard_reg_used_count): Likewise.
|
|
|
2010-01-26 Richard Guenther
|
2010-01-26 Richard Guenther
|
|
|
PR rtl-optimization/42685
|
PR rtl-optimization/42685
|
* web.c (web_main): Ignore DEBUG_INSNs.
|
* web.c (web_main): Ignore DEBUG_INSNs.
|
|
|
2010-01-26 Joern Rennecke
|
2010-01-26 Joern Rennecke
|
|
|
* doc/tm.texi (TARGET_HANDLE_C_OPTION): Explain arguments.
|
* doc/tm.texi (TARGET_HANDLE_C_OPTION): Explain arguments.
|
|
|
(TARGET_RESOLVE_OVERLOADED_BUILTIN): Add loc parameter.
|
(TARGET_RESOLVE_OVERLOADED_BUILTIN): Add loc parameter.
|
Fix types of fndecl and arglist parameters.
|
Fix types of fndecl and arglist parameters.
|
|
|
2010-01-26 Richard Guenther
|
2010-01-26 Richard Guenther
|
|
|
PR middle-end/42806
|
PR middle-end/42806
|
* tree-eh.c (unsplit_eh): Skip debug insns.
|
* tree-eh.c (unsplit_eh): Skip debug insns.
|
|
|
2010-01-26 Richard Guenther
|
2010-01-26 Richard Guenther
|
|
|
PR tree-optimization/42250
|
PR tree-optimization/42250
|
* ipa-type-escape.c (type_escape_execute): Do not analyze clones.
|
* ipa-type-escape.c (type_escape_execute): Do not analyze clones.
|
|
|
2010-01-26 Jakub Jelinek
|
2010-01-26 Jakub Jelinek
|
|
|
PR fortran/42866
|
PR fortran/42866
|
* omp-low.c (expand_omp_sections): Only use single_pred if
|
* omp-low.c (expand_omp_sections): Only use single_pred if
|
l2_bb is single_pred_p.
|
l2_bb is single_pred_p.
|
|
|
2010-01-25 Christian Bruel
|
2010-01-25 Christian Bruel
|
|
|
PR target/42841
|
PR target/42841
|
* config/sh/sh.c (find_barrier): Increase length for non delayed
|
* config/sh/sh.c (find_barrier): Increase length for non delayed
|
conditional branches.
|
conditional branches.
|
(sh_insn_length_adjustment): Use JUMP_TABLE_DATA_P.
|
(sh_insn_length_adjustment): Use JUMP_TABLE_DATA_P.
|
|
|
2010-01-24 David S. Miller
|
2010-01-24 David S. Miller
|
|
|
* config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Only
|
* config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Only
|
define if not using GAS.
|
define if not using GAS.
|
* config/sparc/sparc.c (sparc_elf_asm_named_section):
|
* config/sparc/sparc.c (sparc_elf_asm_named_section):
|
Likewise. Delete SECTION_MERGE code, which is only applicable
|
Likewise. Delete SECTION_MERGE code, which is only applicable
|
when using GAS.
|
when using GAS.
|
|
|
2010-01-24 Mark Mitchell
|
2010-01-24 Mark Mitchell
|
|
|
PR c++/42748
|
PR c++/42748
|
* config/arm/arm.c (arm_mangle_type): Do not warn about changes to
|
* config/arm/arm.c (arm_mangle_type): Do not warn about changes to
|
mangling of va_list in system headers.
|
mangling of va_list in system headers.
|
|
|
2010-01-23 Toon Moene
|
2010-01-23 Toon Moene
|
|
|
* tree-predcom.c (combine_chains): Return NULL, not false.
|
* tree-predcom.c (combine_chains): Return NULL, not false.
|
|
|
2010-01-23 Joern Rennecke
|
2010-01-23 Joern Rennecke
|
|
|
* tree-loop-distribution.c (distribute_loop): Fix declaration and
|
* tree-loop-distribution.c (distribute_loop): Fix declaration and
|
initialization of variable res to agree with return type.
|
initialization of variable res to agree with return type.
|
|
|
2010-01-22 Steve Ellcey
|
2010-01-22 Steve Ellcey
|
|
|
* Makefile.in (tree-sra.o): Add $(EXPR_H) dependency.
|
* Makefile.in (tree-sra.o): Add $(EXPR_H) dependency.
|
* tree-sra.c: Add include of expr.h.
|
* tree-sra.c: Add include of expr.h.
|
|
|
2010-01-22 Jakub Jelinek
|
2010-01-22 Jakub Jelinek
|
|
|
* tree-into-ssa.c (maybe_register_def): If stmt ends the bb,
|
* tree-into-ssa.c (maybe_register_def): If stmt ends the bb,
|
insert the debug stmt on the single non-EH edge from the stmt.
|
insert the debug stmt on the single non-EH edge from the stmt.
|
|
|
2010-01-22 Richard Henderson
|
2010-01-22 Richard Henderson
|
|
|
PR tree-opt/42833
|
PR tree-opt/42833
|
* tree-sra.c (sra_modify_assign): Delay re-gimplification of
|
* tree-sra.c (sra_modify_assign): Delay re-gimplification of
|
the RHS until after generate_subtree_copies has insertted its
|
the RHS until after generate_subtree_copies has insertted its
|
code before the current statement.
|
code before the current statement.
|
|
|
2010-01-22 Joern Rennecke
|
2010-01-22 Joern Rennecke
|
|
|
* doc/tm.texi (TARGET_MIN_DIVISIONS_FOR_RECIP_MUL): Fix return type.
|
* doc/tm.texi (TARGET_MIN_DIVISIONS_FOR_RECIP_MUL): Fix return type.
|
|
|
* gcc-plugin.h (plugin_init): Use "C" likage for c++.
|
* gcc-plugin.h (plugin_init): Use "C" likage for c++.
|
|
|
2010-01-21 Martin Jambor
|
2010-01-21 Martin Jambor
|
|
|
PR tree-optimization/42585
|
PR tree-optimization/42585
|
* tree-sra.c (struct access): New field grp_total_scalarization.
|
* tree-sra.c (struct access): New field grp_total_scalarization.
|
(dump_access): Dump the new field.
|
(dump_access): Dump the new field.
|
(should_scalarize_away_bitmap): New variable.
|
(should_scalarize_away_bitmap): New variable.
|
(cannot_scalarize_away_bitmap): Likewise.
|
(cannot_scalarize_away_bitmap): Likewise.
|
(sra_initialize): Allocate new bitmaps.
|
(sra_initialize): Allocate new bitmaps.
|
(sra_deinitialize): Free new bitmaps.
|
(sra_deinitialize): Free new bitmaps.
|
(create_access_1): New function.
|
(create_access_1): New function.
|
(create_access): Parts moved to create_access_1.
|
(create_access): Parts moved to create_access_1.
|
(type_consists_of_records_p): New function.
|
(type_consists_of_records_p): New function.
|
(completely_scalarize_record): Likewise.
|
(completely_scalarize_record): Likewise.
|
(build_access_from_expr): Set bit in cannot_scalarize_away_bitmap.
|
(build_access_from_expr): Set bit in cannot_scalarize_away_bitmap.
|
(build_accesses_from_assign): Set bits in should_scalarize_away_bitmap.
|
(build_accesses_from_assign): Set bits in should_scalarize_away_bitmap.
|
(sort_and_splice_var_accesses): Hint groups with a total_scalarization
|
(sort_and_splice_var_accesses): Hint groups with a total_scalarization
|
access.
|
access.
|
(analyze_all_variable_accesses): Completely scalarize small eligible
|
(analyze_all_variable_accesses): Completely scalarize small eligible
|
records.
|
records.
|
|
|
2010-01-21 Martin Jambor
|
2010-01-21 Martin Jambor
|
|
|
* tree-sra.c (build_ref_for_offset_1): Allow for zero size fields.
|
* tree-sra.c (build_ref_for_offset_1): Allow for zero size fields.
|
|
|
2010-01-21 Andrew Haley
|
2010-01-21 Andrew Haley
|
|
|
* gcc.c (process_command): Move lang_specific_driver before
|
* gcc.c (process_command): Move lang_specific_driver before
|
setting cc_libexec_prefix.
|
setting cc_libexec_prefix.
|
|
|
2010-01-21 Richard Guenther
|
2010-01-21 Richard Guenther
|
|
|
PR middle-end/19988
|
PR middle-end/19988
|
* fold-const.c (negate_expr_p): Pretend only negative
|
* fold-const.c (negate_expr_p): Pretend only negative
|
real constants are easily negatable.
|
real constants are easily negatable.
|
|
|
2010-01-20 Janis Johnson
|
2010-01-20 Janis Johnson
|
Jason Merrill
|
Jason Merrill
|
|
|
* tree.h (TYPE_TRANSPARENT_UNION): Replace with ...
|
* tree.h (TYPE_TRANSPARENT_UNION): Replace with ...
|
(TYPE_TRANSPARENT_AGGR): this, for union and record.
|
(TYPE_TRANSPARENT_AGGR): this, for union and record.
|
* calls.c (initialize argument_information): Handle it.
|
* calls.c (initialize argument_information): Handle it.
|
* c-common.c (handle_transparent_union_attribute): Use new name.
|
* c-common.c (handle_transparent_union_attribute): Use new name.
|
* c-decl.c (finish_struct): Ditto.
|
* c-decl.c (finish_struct): Ditto.
|
* c-typeck.c (type_lists_compatible_p): Ditto.
|
* c-typeck.c (type_lists_compatible_p): Ditto.
|
(convert_for_assignment): Use new name and also handle record.
|
(convert_for_assignment): Use new name and also handle record.
|
* function.c (aggregate_value_p): Handle it.
|
* function.c (aggregate_value_p): Handle it.
|
(pass_by_reference): Ditto.
|
(pass_by_reference): Ditto.
|
(assign_parm_data_types): Ditto.
|
(assign_parm_data_types): Ditto.
|
* print-tree.c (print_node): Ditto.
|
* print-tree.c (print_node): Ditto.
|
* lto-streamer-in.c (unpack_ts_type_value_fields): Ditto.
|
* lto-streamer-in.c (unpack_ts_type_value_fields): Ditto.
|
* lto-streamer-out.c (pack_ts_type_value_fields): Ditto.
|
* lto-streamer-out.c (pack_ts_type_value_fields): Ditto.
|
* tree.c (first_field): New fn.
|
* tree.c (first_field): New fn.
|
|
|
2010-01-21 Dave Korn
|
2010-01-21 Dave Korn
|
|
|
PR target/42818
|
PR target/42818
|
* config/i386/cygwin.h (CXX_WRAP_SPEC_LIST): Always apply wrappers,
|
* config/i386/cygwin.h (CXX_WRAP_SPEC_LIST): Always apply wrappers,
|
even when linking statically, for now.
|
even when linking statically, for now.
|
|
|
2010-01-20 Alexandre Oliva
|
2010-01-20 Alexandre Oliva
|
|
|
PR debug/42715
|
PR debug/42715
|
* var-tracking.c (use_type): Choose MO_VAL_SET for REGs set
|
* var-tracking.c (use_type): Choose MO_VAL_SET for REGs set
|
without a cselib val.
|
without a cselib val.
|
(count_uses): Accept MO_VAL_SET with no val on stores.
|
(count_uses): Accept MO_VAL_SET with no val on stores.
|
(add_stores): Likewise.
|
(add_stores): Likewise.
|
|
|
2010-01-20 Jakub Jelinek
|
2010-01-20 Jakub Jelinek
|
|
|
* var-tracking.c (check_value_val): Add a compile time assertion.
|
* var-tracking.c (check_value_val): Add a compile time assertion.
|
(dv_is_decl_p): Simplify.
|
(dv_is_decl_p): Simplify.
|
(dv_as_decl, dv_as_value, dv_from_decl, dv_from_value): Only use
|
(dv_as_decl, dv_as_value, dv_from_decl, dv_from_value): Only use
|
gcc_assert if ENABLE_CHECKING.
|
gcc_assert if ENABLE_CHECKING.
|
|
|
2010-01-20 Alexandre Oliva
|
2010-01-20 Alexandre Oliva
|
|
|
PR debug/42782
|
PR debug/42782
|
* var-tracking.c: Include tree-flow.h.
|
* var-tracking.c: Include tree-flow.h.
|
(mem_dies_at_call): New.
|
(mem_dies_at_call): New.
|
(dataflow_set_preserve_mem_locs): Use it.
|
(dataflow_set_preserve_mem_locs): Use it.
|
(dataflow_set_remove_mem_locs): Likewise.
|
(dataflow_set_remove_mem_locs): Likewise.
|
(dump_var): Renamed from dump_variable. Adjust all callers.
|
(dump_var): Renamed from dump_variable. Adjust all callers.
|
(dump_var_slot): Renamed from dump_variable_slot. Likewise.
|
(dump_var_slot): Renamed from dump_variable_slot. Likewise.
|
* Makefile.in (var-tracking.o): Adjust deps.
|
* Makefile.in (var-tracking.o): Adjust deps.
|
|
|
2010-01-20 Joern Rennecke
|
2010-01-20 Joern Rennecke
|
|
|
* doc/tm.texi (TARGET_SCHED_SET_SCHED_FLAGS): Fix argument list.
|
* doc/tm.texi (TARGET_SCHED_SET_SCHED_FLAGS): Fix argument list.
|
|
|
2010-01-20 Richard Guenther
|
2010-01-20 Richard Guenther
|
|
|
PR tree-optimization/42717
|
PR tree-optimization/42717
|
* tree-ssa-dce.c (get_live_post_dom): Remove.
|
* tree-ssa-dce.c (get_live_post_dom): Remove.
|
(forward_edge_to_pdom): Take an arbitrary edge to copy
|
(forward_edge_to_pdom): Take an arbitrary edge to copy
|
degenerate PHI args from.
|
degenerate PHI args from.
|
(remove_dead_stmt): Use the first post-dominator even if it
|
(remove_dead_stmt): Use the first post-dominator even if it
|
does not contain live statements as redirection destination.
|
does not contain live statements as redirection destination.
|
|
|
2010-01-20 Richard Guenther
|
2010-01-20 Richard Guenther
|
|
|
* tree-inline.c (estimate_num_insns): Handle EH builtins.
|
* tree-inline.c (estimate_num_insns): Handle EH builtins.
|
|
|
2010-01-20 Jakub Jelinek
|
2010-01-20 Jakub Jelinek
|
|
|
* sel-sched.c (create_speculation_check): Remove set but not used
|
* sel-sched.c (create_speculation_check): Remove set but not used
|
variable twin.
|
variable twin.
|
(try_transformation_cache): Remove set but not used variable ds.
|
(try_transformation_cache): Remove set but not used variable ds.
|
(calculate_privileged_insns): Remove set but not used variables
|
(calculate_privileged_insns): Remove set but not used variables
|
cur_insn and min_spec_insn.
|
cur_insn and min_spec_insn.
|
(find_best_expr): Remove set but not used variable avail_n.
|
(find_best_expr): Remove set but not used variable avail_n.
|
* tree-predcom.c (base_names_in_chain_on): Remove set but not used
|
* tree-predcom.c (base_names_in_chain_on): Remove set but not used
|
variable e.
|
variable e.
|
* cgraphunit.c (assemble_thunk): Remove set but not used variable
|
* cgraphunit.c (assemble_thunk): Remove set but not used variable
|
false_label.
|
false_label.
|
* haifa-sched.c (remove_notes): Remove set but not used variable prev.
|
* haifa-sched.c (remove_notes): Remove set but not used variable prev.
|
* graphite-clast-to-gimple.c (gloog): Remove set but not used variable
|
* graphite-clast-to-gimple.c (gloog): Remove set but not used variable
|
new_scop_exit_edge.
|
new_scop_exit_edge.
|
|
|
2010-01-20 Felyza Wishbringer
|
2010-01-20 Felyza Wishbringer
|
|
|
PR bootstrap/42786
|
PR bootstrap/42786
|
* config.gcc (i[34567]86-*-*): Fix handling of athlon64 and athlon-fx
|
* config.gcc (i[34567]86-*-*): Fix handling of athlon64 and athlon-fx
|
cpu types. Add support for *-sse3 cpu types.
|
cpu types. Add support for *-sse3 cpu types.
|
(x86_64-*-*): Ditto.
|
(x86_64-*-*): Ditto.
|
|
|
2010-01-20 Jakub Jelinek
|
2010-01-20 Jakub Jelinek
|
|
|
PR middle-end/42803
|
PR middle-end/42803
|
* varasm.c (narrowing_initializer_constant_valid_p): Add CACHE
|
* varasm.c (narrowing_initializer_constant_valid_p): Add CACHE
|
argument, call initializer_constant_valid_p_1 instead of
|
argument, call initializer_constant_valid_p_1 instead of
|
initializer_constant_valid_p, pass CACHE to it, return NULL
|
initializer_constant_valid_p, pass CACHE to it, return NULL
|
immediately if first call returns NULL.
|
immediately if first call returns NULL.
|
(initializer_constant_valid_p_1): New function.
|
(initializer_constant_valid_p_1): New function.
|
(initializer_constant_valid_p): Use it.
|
(initializer_constant_valid_p): Use it.
|
|
|
2010-01-20 Thomas Quinot
|
2010-01-20 Thomas Quinot
|
|
|
* tree.def (PLACEHOLDER_EXPR): Fix comment.
|
* tree.def (PLACEHOLDER_EXPR): Fix comment.
|
|
|
2010-01-20 Jakub Jelinek
|
2010-01-20 Jakub Jelinek
|
|
|
* dwarf2out.c (mem_loc_descriptor): Use DW_OP_mod for UMOD instead
|
* dwarf2out.c (mem_loc_descriptor): Use DW_OP_mod for UMOD instead
|
of MOD, handle MOD using DW_OP_{over,over,div,mul,minus}.
|
of MOD, handle MOD using DW_OP_{over,over,div,mul,minus}.
|
(loc_list_from_tree): Don't handle unsigned division. Handle
|
(loc_list_from_tree): Don't handle unsigned division. Handle
|
signed modulo using DW_OP_{over,over,div,mul,minus}.
|
signed modulo using DW_OP_{over,over,div,mul,minus}.
|
* unwind-dw2.c (execute_stack_op): Handle DW_OP_mod using unsigned
|
* unwind-dw2.c (execute_stack_op): Handle DW_OP_mod using unsigned
|
modulo instead of signed.
|
modulo instead of signed.
|
|
|
2010-01-20 DJ Delorie
|
2010-01-20 DJ Delorie
|
|
|
* config/h8300/h8300.c (F): Add "in_epilogue" flag.
|
* config/h8300/h8300.c (F): Add "in_epilogue" flag.
|
(Fpa): Pass it
|
(Fpa): Pass it
|
(h8300_emit_stack_adjustment): Propogate it.
|
(h8300_emit_stack_adjustment): Propogate it.
|
(push): Pass it.
|
(push): Pass it.
|
(h8300_expand_prologue): Likewise.
|
(h8300_expand_prologue): Likewise.
|
(h8300_expand_epilogue): Likewise.
|
(h8300_expand_epilogue): Likewise.
|
|
|
2010-01-19 Michael Matz
|
2010-01-19 Michael Matz
|
|
|
PR tree-optimization/41783
|
PR tree-optimization/41783
|
* tree-data-ref.c (toplevel): Include flags.h.
|
* tree-data-ref.c (toplevel): Include flags.h.
|
(dump_data_dependence_relation): Also dump the inputs if the
|
(dump_data_dependence_relation): Also dump the inputs if the
|
result will be unknown.
|
result will be unknown.
|
(split_constant_offset_1): Look through some conversions.
|
(split_constant_offset_1): Look through some conversions.
|
* tree-predcom.c (determine_roots_comp): Restart a new chain if
|
* tree-predcom.c (determine_roots_comp): Restart a new chain if
|
the offset from last element is too large.
|
the offset from last element is too large.
|
(ref_at_iteration): Deal also with MISALIGNED_INDIRECT_REF.
|
(ref_at_iteration): Deal also with MISALIGNED_INDIRECT_REF.
|
(reassociate_to_the_same_stmt): Handle vector registers.
|
(reassociate_to_the_same_stmt): Handle vector registers.
|
* tree-vect-data-refs.c (vect_equal_offsets): Handle unary operations
|
* tree-vect-data-refs.c (vect_equal_offsets): Handle unary operations
|
(e.g. conversions).
|
(e.g. conversions).
|
* tree-vect-loop-manip.c (vect_gen_niters_for_prolog_loop): Add
|
* tree-vect-loop-manip.c (vect_gen_niters_for_prolog_loop): Add
|
wide_prolog_niters argument, emit widening instructions.
|
wide_prolog_niters argument, emit widening instructions.
|
(vect_do_peeling_for_alignment): Adjust caller, use widened
|
(vect_do_peeling_for_alignment): Adjust caller, use widened
|
variant of the iteration cound.
|
variant of the iteration cound.
|
* Makefile.in (tree-data-ref.o): Add $(FLAGS_H).
|
* Makefile.in (tree-data-ref.o): Add $(FLAGS_H).
|
|
|
2010-01-19 Ramana Radhakrishnan
|
2010-01-19 Ramana Radhakrishnan
|
|
|
PR target/38697
|
PR target/38697
|
* config/arm/neon-testgen.m (emit_automatics): New parameter
|
* config/arm/neon-testgen.m (emit_automatics): New parameter
|
features. Adjust for Fixed_return_reg feature.
|
features. Adjust for Fixed_return_reg feature.
|
(test_intrinsic): Call emit_automatics with new feature.
|
(test_intrinsic): Call emit_automatics with new feature.
|
* config/arm/neon.ml: Update copyright years.
|
* config/arm/neon.ml: Update copyright years.
|
(features): New Fixed_return_reg feature.
|
(features): New Fixed_return_reg feature.
|
(ops): Update feature for Vget_low.
|
(ops): Update feature for Vget_low.
|
|
|
2010-01-19 Jakub Jelinek
|
2010-01-19 Jakub Jelinek
|
|
|
PR tree-optimization/42719
|
PR tree-optimization/42719
|
* tree-outof-ssa.c (trivially_conflicts_p): Don't consider debug
|
* tree-outof-ssa.c (trivially_conflicts_p): Don't consider debug
|
stmt uses.
|
stmt uses.
|
|
|
PR debug/42728
|
PR debug/42728
|
* fwprop.c (all_uses_available_at): Return false if def_set dest
|
* fwprop.c (all_uses_available_at): Return false if def_set dest
|
is a REG that is used in def_insn.
|
is a REG that is used in def_insn.
|
|
|
2010-01-19 Joern Rennecke
|
2010-01-19 Joern Rennecke
|
|
|
* doc/tm.texi (TARGET_FIXED_CONDITION_CODE_REGS): Add argument names.
|
* doc/tm.texi (TARGET_FIXED_CONDITION_CODE_REGS): Add argument names.
|
|
|
(TARGET_CC_MODES_COMPATIBLE): Put return value in braces.
|
(TARGET_CC_MODES_COMPATIBLE): Put return value in braces.
|
Add argument names.
|
Add argument names.
|
|
|
(TARGET_SCHED_INIT_SCHED_CONTEXT): Clarify language.
|
(TARGET_SCHED_INIT_SCHED_CONTEXT): Clarify language.
|
|
|
* target.h (struct gcc_target) : Change type
|
* target.h (struct gcc_target) : Change type
|
of last argument to secondary_reload_info *.
|
of last argument to secondary_reload_info *.
|
|
|
2010-01-18 Uros Bizjak
|
2010-01-18 Uros Bizjak
|
|
|
PR target/42774
|
PR target/42774
|
* config/alpha/predicates.md (aligned_memory_operand): Return 0 for
|
* config/alpha/predicates.md (aligned_memory_operand): Return 0 for
|
memory references with unaligned offsets. Remove CQImode handling.
|
memory references with unaligned offsets. Remove CQImode handling.
|
(unaligned_memory_operand): Return 1 for memory references with
|
(unaligned_memory_operand): Return 1 for memory references with
|
unaligned offsets. Remove CQImode handling.
|
unaligned offsets. Remove CQImode handling.
|
|
|
2010-01-18 Richard Guenther
|
2010-01-18 Richard Guenther
|
|
|
PR middle-end/39954
|
PR middle-end/39954
|
* cfgexpand.c (expand_call_stmt): TER pointer arguments in
|
* cfgexpand.c (expand_call_stmt): TER pointer arguments in
|
builtin calls.
|
builtin calls.
|
|
|
2010-01-18 Richard Guenther
|
2010-01-18 Richard Guenther
|
|
|
PR tree-optimization/42781
|
PR tree-optimization/42781
|
* tree-ssa-structalias.c (find_what_var_points_to): Skip
|
* tree-ssa-structalias.c (find_what_var_points_to): Skip
|
restrict processing only if the original variable was artificial.
|
restrict processing only if the original variable was artificial.
|
|
|
2010-01-18 Joern Rennecke
|
2010-01-18 Joern Rennecke
|
|
|
* doc/tm.texi (TARGET_ASM_FUNCTION_EPILOGUE): Update text on where to
|
* doc/tm.texi (TARGET_ASM_FUNCTION_EPILOGUE): Update text on where to
|
find number of popped argument bytes.
|
find number of popped argument bytes.
|
|
|
(TARGET_INVALID_WITHIN_DOLOOP): Put return value in braces.
|
(TARGET_INVALID_WITHIN_DOLOOP): Put return value in braces.
|
Fix the text that describes the return value for invalid insns.
|
Fix the text that describes the return value for invalid insns.
|
|
|
(TARGET_SCHED_NEEDS_BLOCK_P): Fix return type. Fix argument list.
|
(TARGET_SCHED_NEEDS_BLOCK_P): Fix return type. Fix argument list.
|
|
|
(TARGET_SCHED_IS_COSTLY_DEPENDENCE): Fix argument types.
|
(TARGET_SCHED_IS_COSTLY_DEPENDENCE): Fix argument types.
|
Clarify what 'cost of the -dependence' is. Fix quoting.
|
Clarify what 'cost of the -dependence' is. Fix quoting.
|
|
|
* toplev.c (default_get_pch_validity): Rename argument to "sz".
|
* toplev.c (default_get_pch_validity): Rename argument to "sz".
|
* doc/tm.texi (TARGET_GET_PCH_VALIDITY): Likewise.
|
* doc/tm.texi (TARGET_GET_PCH_VALIDITY): Likewise.
|
|
|
2010-01-17 Jakub Jelinek
|
2010-01-17 Jakub Jelinek
|
|
|
* dwarf2out.c (mem_loc_descriptor): Don't ICE on
|
* dwarf2out.c (mem_loc_descriptor): Don't ICE on
|
{S,U}S_{PLUS,MINUS,NEG,ABS,ASHIFT}.
|
{S,U}S_{PLUS,MINUS,NEG,ABS,ASHIFT}.
|
|
|
2010-01-17 Richard Guenther
|
2010-01-17 Richard Guenther
|
|
|
PR middle-end/42248
|
PR middle-end/42248
|
* function.c (split_complex_args): Take a VEC to modify.
|
* function.c (split_complex_args): Take a VEC to modify.
|
(assign_parms_augmented_arg_list): Build a VEC instead of
|
(assign_parms_augmented_arg_list): Build a VEC instead of
|
a chain of PARM_DECLs.
|
a chain of PARM_DECLs.
|
(assign_parms_unsplit_complex): Take a VEC of arguments.
|
(assign_parms_unsplit_complex): Take a VEC of arguments.
|
Do not fixup unmodified parms.
|
Do not fixup unmodified parms.
|
(assign_parms): Deal with the VEC.
|
(assign_parms): Deal with the VEC.
|
(gimplify_parameters): Likewise.
|
(gimplify_parameters): Likewise.
|
|
|
2010-01-17 Richard Guenther
|
2010-01-17 Richard Guenther
|
|
|
* tree-ssa-uncprop.c (uncprop_into_successor_phis): Fix PHI
|
* tree-ssa-uncprop.c (uncprop_into_successor_phis): Fix PHI
|
node existence check.
|
node existence check.
|
* tree-vect-loop.c (vect_analyze_loop_form): Likewise.
|
* tree-vect-loop.c (vect_analyze_loop_form): Likewise.
|
* tree-cfgcleanup.c (merge_phi_nodes): Likewise.
|
* tree-cfgcleanup.c (merge_phi_nodes): Likewise.
|
* tree-ssa-dce.c (forward_edge_to_pdom): Likewise.
|
* tree-ssa-dce.c (forward_edge_to_pdom): Likewise.
|
* tree-cfg.c (gimple_execute_on_growing_pred): Likewise.
|
* tree-cfg.c (gimple_execute_on_growing_pred): Likewise.
|
(gimple_execute_on_growing_pred): Likewise.
|
(gimple_execute_on_growing_pred): Likewise.
|
|
|
2010-01-17 Richard Guenther
|
2010-01-17 Richard Guenther
|
|
|
PR tree-optimization/42773
|
PR tree-optimization/42773
|
* tree-ssa-pre.c (phi_translate_set): Fix check for PHI node existence.
|
* tree-ssa-pre.c (phi_translate_set): Fix check for PHI node existence.
|
(compute_antic_aux): Likewise.
|
(compute_antic_aux): Likewise.
|
(compute_partial_antic_aux): Likewise.
|
(compute_partial_antic_aux): Likewise.
|
|
|
2010-01-17 Jie Zhang
|
2010-01-17 Jie Zhang
|
|
|
PR debug/42767
|
PR debug/42767
|
* dwarf2out.c (mem_loc_descriptor): Handle SS_TRUNCATE
|
* dwarf2out.c (mem_loc_descriptor): Handle SS_TRUNCATE
|
and US_TRUNCATE.
|
and US_TRUNCATE.
|
|
|
2010-01-17 Joern Rennecke
|
2010-01-17 Joern Rennecke
|
|
|
* doc/tm.texi (TARGET_INIT_LIBFUNCS): Put @findex entries in order of
|
* doc/tm.texi (TARGET_INIT_LIBFUNCS): Put @findex entries in order of
|
appearance.
|
appearance.
|
|
|
(TARGET_LEGITIMATE_ADDRESS_P): Add return type.
|
(TARGET_LEGITIMATE_ADDRESS_P): Add return type.
|
Fix markup for strict argument.
|
Fix markup for strict argument.
|
|
|
(TARGET_SCHED_REORDER2): Fix argument types.
|
(TARGET_SCHED_REORDER2): Fix argument types.
|
|
|
(TARGET_SCHED_DFA_PRE_CYCLE_INSN): Fix return type.
|
(TARGET_SCHED_DFA_PRE_CYCLE_INSN): Fix return type.
|
(TARGET_SCHED_DFA_POST_CYCLE_INSN): Likewise.
|
(TARGET_SCHED_DFA_POST_CYCLE_INSN): Likewise.
|
|
|
(TARGET_SCHED_DFA_PRE_ADVANCE_CYCLE): Fix name.
|
(TARGET_SCHED_DFA_PRE_ADVANCE_CYCLE): Fix name.
|
(TARGET_SCHED_DFA_POST_ADVANCE_CYCLE): Likewise.
|
(TARGET_SCHED_DFA_POST_ADVANCE_CYCLE): Likewise.
|
|
|
(TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD):
|
(TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD):
|
Add argument name.
|
Add argument name.
|
|
|
(TARGET_SCHED_ALLOC_SCHED_CONTEXT): Remove duplicate documentation.
|
(TARGET_SCHED_ALLOC_SCHED_CONTEXT): Remove duplicate documentation.
|
(TARGET_SCHED_INIT_SCHED_CONTEXT): Likewise.
|
(TARGET_SCHED_INIT_SCHED_CONTEXT): Likewise.
|
(TARGET_SCHED_SET_SCHED_CONTEXT): Likewise.
|
(TARGET_SCHED_SET_SCHED_CONTEXT): Likewise.
|
(TARGET_SCHED_CLEAR_SCHED_CONTEXT): Likewise.
|
(TARGET_SCHED_CLEAR_SCHED_CONTEXT): Likewise.
|
(TARGET_SCHED_FREE_SCHED_CONTEXT): Likewise.
|
(TARGET_SCHED_FREE_SCHED_CONTEXT): Likewise.
|
|
|
(TARGET_SCHED_SET_SCHED_CONTEXT): Fix typo.
|
(TARGET_SCHED_SET_SCHED_CONTEXT): Fix typo.
|
|
|
(TARGET_SCHED_GEN_SPEC_CHECK): Fix name.
|
(TARGET_SCHED_GEN_SPEC_CHECK): Fix name.
|
|
|
(TARGET_ASM_RELOC_RW_MASK): Add return type.
|
(TARGET_ASM_RELOC_RW_MASK): Add return type.
|
(TARGET_MANGLE_DECL_ASSEMBLER_NAME): Fix return type.
|
(TARGET_MANGLE_DECL_ASSEMBLER_NAME): Fix return type.
|
|
|
(TARGET_STRIP_NAME_ENCODING): Fix markup of return type and parameter.
|
(TARGET_STRIP_NAME_ENCODING): Fix markup of return type and parameter.
|
|
|
(TARGET_ASM_FILE_START): Put @findex before paragraph start.
|
(TARGET_ASM_FILE_START): Put @findex before paragraph start.
|
Use prototype.
|
Use prototype.
|
|
|
(TARGET_ASM_NAMED_SECTION): Fix argument list.
|
(TARGET_ASM_NAMED_SECTION): Fix argument list.
|
|
|
(TARGET_HAVE_NAMED_SECTIONS): Use @deftypevr.
|
(TARGET_HAVE_NAMED_SECTIONS): Use @deftypevr.
|
(TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): Likewise.
|
(TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): Likewise.
|
|
|
(TARGET_ASM_RECORD_GCC_SWITCHES_SECTION): Use @deftypevr.
|
(TARGET_ASM_RECORD_GCC_SWITCHES_SECTION): Use @deftypevr.
|
|
|
(TARGET_ASM_ASSEMBLE_VISIBILITY): Fix argument types.
|
(TARGET_ASM_ASSEMBLE_VISIBILITY): Fix argument types.
|
|
|
(TARGET_ASM_MARK_DECL_PRESERVED): Fix argument and markup
|
(TARGET_ASM_MARK_DECL_PRESERVED): Fix argument and markup
|
referring to it. Fix language.
|
referring to it. Fix language.
|
|
|
(TARGET_HAVE_CTORS_DTORS): Use @deftypevr.
|
(TARGET_HAVE_CTORS_DTORS): Use @deftypevr.
|
|
|
(TARGET_ASM_FINAL_POSTSCAN_INSN): Adjust name of first argument.
|
(TARGET_ASM_FINAL_POSTSCAN_INSN): Adjust name of first argument.
|
|
|
(TARGET_ASM_EMIT_UNWIND_LABEL): Add argument types.
|
(TARGET_ASM_EMIT_UNWIND_LABEL): Add argument types.
|
|
|
(TARGET_ASM_EMIT_EXCEPT_TABLE_LABEL): Add type to argument.
|
(TARGET_ASM_EMIT_EXCEPT_TABLE_LABEL): Add type to argument.
|
|
|
(TARGET_UNWIND_EMIT): Remove space between 'FILE *' and
|
(TARGET_UNWIND_EMIT): Remove space between 'FILE *' and
|
'@var{stream}. Remove stray 'and'.
|
'@var{stream}. Remove stray 'and'.
|
|
|
(TARGET_ARM_EABI_UNWINDER): Use @deftypevr.
|
(TARGET_ARM_EABI_UNWINDER): Use @deftypevr.
|
|
|
(TARGET_ASM_OUTPUT_DWARF_DTPREL): Adjust name of first argument.
|
(TARGET_ASM_OUTPUT_DWARF_DTPREL): Adjust name of first argument.
|
|
|
(TARGET_SET_DEFAULT_TYPE_ATTRIBUTES): Add missing article.
|
(TARGET_SET_DEFAULT_TYPE_ATTRIBUTES): Add missing article.
|
|
|
(TARGET_OPTION_VALID_ATTRIBUTE_P): Fix name, it was
|
(TARGET_OPTION_VALID_ATTRIBUTE_P): Fix name, it was
|
misspelled as TARGET_VALID_OPTION_ATTRIBUTE_P.
|
misspelled as TARGET_VALID_OPTION_ATTRIBUTE_P.
|
|
|
(TARGET_GET_PCH_VALIDITY): Put 'void *' in braces.
|
(TARGET_GET_PCH_VALIDITY): Put 'void *' in braces.
|
Fix description of return value.
|
Fix description of return value.
|
Rename argument "sz" to "len."
|
Rename argument "sz" to "len."
|
|
|
(TARGET_CXX_GUARD_MASK_BIT): Add missing article.
|
(TARGET_CXX_GUARD_MASK_BIT): Add missing article.
|
Clarify meaning of 'true' return value.
|
Clarify meaning of 'true' return value.
|
|
|
(TARGET_SHIFT_TRUNCATION_MASK): Fix return type.
|
(TARGET_SHIFT_TRUNCATION_MASK): Fix return type.
|
|
|
(TARGET_MODE_REP_EXTENDED): Fix two inconsisent uses of
|
(TARGET_MODE_REP_EXTENDED): Fix two inconsisent uses of
|
rep_mode versus mode_rep.
|
rep_mode versus mode_rep.
|
|
|
(TARGET_HANDLE_PRAGMA_EXTERN_PREFIX): Document.
|
(TARGET_HANDLE_PRAGMA_EXTERN_PREFIX): Document.
|
|
|
(TARGET_BUILTIN_DECL): Fix name.
|
(TARGET_BUILTIN_DECL): Fix name.
|
|
|
(TARGET_COMMUTATIVE_P): Fix type of first argument.
|
(TARGET_COMMUTATIVE_P): Fix type of first argument.
|
|
|
(TARGET_SET_CURRENT_FUNCTION): Mention possibility of cfun being NULL.
|
(TARGET_SET_CURRENT_FUNCTION): Mention possibility of cfun being NULL.
|
|
|
(TARGET_BRANCH_TARGET_REGISTER_CLASS): Fix return type.
|
(TARGET_BRANCH_TARGET_REGISTER_CLASS): Fix return type.
|
|
|
(TARGET_USE_LOCAL_THUNK_ALIAS_P): Document as macro instead of hook.
|
(TARGET_USE_LOCAL_THUNK_ALIAS_P): Document as macro instead of hook.
|
|
|
(TARGET_RELAXED_ORDERING): Use @deftypevr.
|
(TARGET_RELAXED_ORDERING): Use @deftypevr.
|
|
|
(TARGET_GET_DRAP_RTX): Note that this is a hook.
|
(TARGET_GET_DRAP_RTX): Note that this is a hook.
|
Clarify language.
|
Clarify language.
|
|
|
(TARGET_BUILTIN_RECIPROCAL): Fix argument types.
|
(TARGET_BUILTIN_RECIPROCAL): Fix argument types.
|
Rename argument tm_fn to md_fn.
|
Rename argument tm_fn to md_fn.
|
|
|
(TARGET_OPTION_PRINT): Fix argument list.
|
(TARGET_OPTION_PRINT): Fix argument list.
|
|
|
2010-01-16 Harsha Jagasia
|
2010-01-16 Harsha Jagasia
|
|
|
PR target/42664
|
PR target/42664
|
* config/i386/i386.c (ix86_fixup_binary_operands):
|
* config/i386/i386.c (ix86_fixup_binary_operands):
|
Revert FMA4 fixup of operands.
|
Revert FMA4 fixup of operands.
|
|
|
2010-01-16 Ralf Wildenhues
|
2010-01-16 Ralf Wildenhues
|
|
|
PR gcc/42525
|
PR gcc/42525
|
* Makefile.in (write_entries_to_file, install-plugin):
|
* Makefile.in (write_entries_to_file, install-plugin):
|
Use \012 instead of \n with tr.
|
Use \012 instead of \n with tr.
|
|
|
2010-01-16 Richard Sandiford
|
2010-01-16 Richard Sandiford
|
|
|
* configure.ac (HAVE_AS_REF): New C macro.
|
* configure.ac (HAVE_AS_REF): New C macro.
|
* configure: Regenerate.
|
* configure: Regenerate.
|
* config.in: Likewise.
|
* config.in: Likewise.
|
* collect2.c (main): Only postpone SCAN_DWEH to the second pass
|
* collect2.c (main): Only postpone SCAN_DWEH to the second pass
|
if HAVE_AS_REF.
|
if HAVE_AS_REF.
|
* config/rs6000/aix.h (ASM_OUTPUT_DWARF_TABLE_REF): Only define
|
* config/rs6000/aix.h (ASM_OUTPUT_DWARF_TABLE_REF): Only define
|
if HAVE_AS_REF.
|
if HAVE_AS_REF.
|
|
|
2010-01-16 Joern Rennecke
|
2010-01-16 Joern Rennecke
|
|
|
* doc/tm.texi (TARGET_USE_BLOCKS_FOR_CONSTANT_P): Fix argument types.
|
* doc/tm.texi (TARGET_USE_BLOCKS_FOR_CONSTANT_P): Fix argument types.
|
|
|
(TARGET_SUPPORT_VECTOR_MISALIGNMENT): Fix argument types.
|
(TARGET_SUPPORT_VECTOR_MISALIGNMENT): Fix argument types.
|
|
|
(TARGET_USE_ANCHORS_FOR_SYMBOL_P): Fix argument types.
|
(TARGET_USE_ANCHORS_FOR_SYMBOL_P): Fix argument types.
|
|
|
(TARGET_SCHED_ALLOC_SCHED_CONTEXT): Put 'void *' in braces.
|
(TARGET_SCHED_ALLOC_SCHED_CONTEXT): Put 'void *' in braces.
|
|
|
(TARGET_IN_SMALL_DATA_P): Fix argument type.
|
(TARGET_IN_SMALL_DATA_P): Fix argument type.
|
|
|
(TARGET_BINDS_LOCAL_P): Fix argument type.
|
(TARGET_BINDS_LOCAL_P): Fix argument type.
|
|
|
(TARGET_ASM_FILE_END): Use prototype.
|
(TARGET_ASM_FILE_END): Use prototype.
|
|
|
(TARGET_ASM_RECORD_GCC_SWITCHES): Don't put 'int' in braces.
|
(TARGET_ASM_RECORD_GCC_SWITCHES): Don't put 'int' in braces.
|
|
|
(TARGET_DWARF_CALLING_CONVENTION): Fix argument type.
|
(TARGET_DWARF_CALLING_CONVENTION): Fix argument type.
|
|
|
(TARGET_COMP_TYPE_ATTRIBUTES): Fix argument types.
|
(TARGET_COMP_TYPE_ATTRIBUTES): Fix argument types.
|
|
|
(TARGET_VALID_DLLIMPORT_ATTRIBUTE_P): Fix argument type.
|
(TARGET_VALID_DLLIMPORT_ATTRIBUTE_P): Fix argument type.
|
|
|
(TARGET_EMUTLS_VAR_ALIGN_FIXED): Don't put 'bool' in braces.
|
(TARGET_EMUTLS_VAR_ALIGN_FIXED): Don't put 'bool' in braces.
|
(TARGET_EMUTLS_DEBUG_FORM_TLS_ADDRESS): Likewise.
|
(TARGET_EMUTLS_DEBUG_FORM_TLS_ADDRESS): Likewise.
|
|
|
(TARGET_PCH_VALID_P): Put 'const char *' in braces.
|
(TARGET_PCH_VALID_P): Put 'const char *' in braces.
|
(TARGET_CHECK_PCH_TARGET_FLAGS): Likewise.
|
(TARGET_CHECK_PCH_TARGET_FLAGS): Likewise.
|
|
|
(TARGET_ADDR_SPACE_LEGITIMATE_ADDRESS_P): Don't put 'bool' in braces.
|
(TARGET_ADDR_SPACE_LEGITIMATE_ADDRESS_P): Don't put 'bool' in braces.
|
(TARGET_ADDR_SPACE_SUBSET_P): Likewise.
|
(TARGET_ADDR_SPACE_SUBSET_P): Likewise.
|
(TARGET_ADDR_SPACE_LEGITIMIZE_ADDRESS): Don't put 'rtx' in braces.
|
(TARGET_ADDR_SPACE_LEGITIMIZE_ADDRESS): Don't put 'rtx' in braces.
|
(TARGET_ADDR_SPACE_CONVERT): Likewise.
|
(TARGET_ADDR_SPACE_CONVERT): Likewise.
|
|
|
(TARGET_CASE_VALUES_THRESHOLD): Put 'unsigned int' in braces.
|
(TARGET_CASE_VALUES_THRESHOLD): Put 'unsigned int' in braces.
|
|
|
(TARGET_MACHINE_DEPENDENT_REORG: Use prototype.
|
(TARGET_MACHINE_DEPENDENT_REORG: Use prototype.
|
|
|
(TARGET_INIT_BUILTINS): Use prototype.
|
(TARGET_INIT_BUILTINS): Use prototype.
|
|
|
(TARGET_INVALID_ARG_FOR_UNPROTOTYPED_FN):
|
(TARGET_INVALID_ARG_FOR_UNPROTOTYPED_FN):
|
Put 'const char *' in braces. Fix parameter types.
|
Put 'const char *' in braces. Fix parameter types.
|
(TARGET_INVALID_CONVERSION): Fix parameter types.
|
(TARGET_INVALID_CONVERSION): Fix parameter types.
|
(TARGET_INVALID_UNARY_OP, TARGET_INVALID_BINARY_OP): Likewise.
|
(TARGET_INVALID_UNARY_OP, TARGET_INVALID_BINARY_OP): Likewise.
|
(TARGET_INVALID_PARAMETER_TYPE, TARGET_INVALID_RETURN_TYPE): Likewise.
|
(TARGET_INVALID_PARAMETER_TYPE, TARGET_INVALID_RETURN_TYPE): Likewise.
|
|
|
(TARGET_PROMOTED_TYPE): Remove braces around 'tree'.
|
(TARGET_PROMOTED_TYPE): Remove braces around 'tree'.
|
Fix argument type.
|
Fix argument type.
|
|
|
(TARGET_CONVERT_TO_TYPE): Remove braces around 'tree'.
|
(TARGET_CONVERT_TO_TYPE): Remove braces around 'tree'.
|
|
|
(TARGET_ALLOCATE_STACK_SLOTS_FOR_ARGS): Remove braces around 'bool'.
|
(TARGET_ALLOCATE_STACK_SLOTS_FOR_ARGS): Remove braces around 'bool'.
|
|
|
2010-01-15 Joern Rennecke
|
2010-01-15 Joern Rennecke
|
|
|
* doc/tm.texi (TARGET_HELP): Fix return type.
|
* doc/tm.texi (TARGET_HELP): Fix return type.
|
|
|
(TARGET_PROMOTE_FUNCTION_MODE): Put 'enum machine_mode'
|
(TARGET_PROMOTE_FUNCTION_MODE): Put 'enum machine_mode'
|
in braces. Fix argument types.
|
in braces. Fix argument types.
|
|
|
(TARGET_LIBGCC_CMP_RETURN_MODE): Use prototype.
|
(TARGET_LIBGCC_CMP_RETURN_MODE): Use prototype.
|
|
|
(TARGET_LIBGCC_SHIFT_COUNT_MODE): Use prototype.
|
(TARGET_LIBGCC_SHIFT_COUNT_MODE): Use prototype.
|
|
|
(TARGET_MS_BITFIELD_LAYOUT_P): Fix argument type.
|
(TARGET_MS_BITFIELD_LAYOUT_P): Fix argument type.
|
|
|
(TARGET_DECIMAL_FLOAT_SUPPORTED_P): Don't put 'bool' in braces.
|
(TARGET_DECIMAL_FLOAT_SUPPORTED_P): Don't put 'bool' in braces.
|
(TARGET_FIXED_POINT_SUPPORTED_P): Likewise.
|
(TARGET_FIXED_POINT_SUPPORTED_P): Likewise.
|
|
|
(TARGET_MANGLE_TYPE): Fix argument types.
|
(TARGET_MANGLE_TYPE): Fix argument types.
|
|
|
(TARGET_IRA_COVER_CLASSES): Use prototype.
|
(TARGET_IRA_COVER_CLASSES): Use prototype.
|
|
|
(TARGET_BUILTIN_SETJMP_FRAME_VALUE): Fix return type. Use prototype.
|
(TARGET_BUILTIN_SETJMP_FRAME_VALUE): Fix return type. Use prototype.
|
|
|
(TARGET_CAN_ELIMINATE): Use identifiers for argument names.
|
(TARGET_CAN_ELIMINATE): Use identifiers for argument names.
|
|
|
(TARGET_PROMOTE_PROTOTYPES): Fix argument type.
|
(TARGET_PROMOTE_PROTOTYPES): Fix argument type.
|
|
|
(TARGET_MUST_PASS_IN_STACK): Fix argument type.
|
(TARGET_MUST_PASS_IN_STACK): Fix argument type.
|
|
|
(TARGET_CALLEE_COPIES): Fix argument types.
|
(TARGET_CALLEE_COPIES): Fix argument types.
|
|
|
(TARGET_SPLIT_COMPLEX_ARG): Fix argument type.
|
(TARGET_SPLIT_COMPLEX_ARG): Fix argument type.
|
|
|
(TARGET_GIMPLIFY_VA_ARG_EXPR): Fix argument types.
|
(TARGET_GIMPLIFY_VA_ARG_EXPR): Fix argument types.
|
|
|
(TARGET_FUNCTION_VALUE): Fix argument types.
|
(TARGET_FUNCTION_VALUE): Fix argument types.
|
|
|
(TARGET_RETURN_IN_MSB): Fix argument type.
|
(TARGET_RETURN_IN_MSB): Fix argument type.
|
|
|
(TARGET_RETURN_IN_MEMORY): Fix argument types.
|
(TARGET_RETURN_IN_MEMORY): Fix argument types.
|
|
|
(TARGET_ASM_CAN_OUTPUT_MI_THUNK): Fix argument types.
|
(TARGET_ASM_CAN_OUTPUT_MI_THUNK): Fix argument types.
|
|
|
(TARGET_EXTRA_LIVE_ON_ENTRY): Fix argument type.
|
(TARGET_EXTRA_LIVE_ON_ENTRY): Fix argument type.
|
|
|
(TARGET_STRICT_ARGUMENT_NAMING): Make literal in text
|
(TARGET_STRICT_ARGUMENT_NAMING): Make literal in text
|
agree with return type.
|
agree with return type.
|
|
|
(TARGET_PRETEND_OUTGOING_VARARGS_NAMED): Add Prototype.
|
(TARGET_PRETEND_OUTGOING_VARARGS_NAMED): Add Prototype.
|
|
|
2010-01-15 Jing Yu
|
2010-01-15 Jing Yu
|
|
|
PR rtl-optimization/42691
|
PR rtl-optimization/42691
|
* combine.c (try_combine): Set changed_i3_dest to 1 when I2 and I3 set
|
* combine.c (try_combine): Set changed_i3_dest to 1 when I2 and I3 set
|
a pseudo to a constant and are merged, and adjust comments.
|
a pseudo to a constant and are merged, and adjust comments.
|
|
|
2010-01-15 Eric Botcazou
|
2010-01-15 Eric Botcazou
|
|
|
* config/i386/sse.md (avx_vperm2f1283): Fix typo.
|
* config/i386/sse.md (avx_vperm2f1283): Fix typo.
|
|
|
2010-01-15 Richard Guenther
|
2010-01-15 Richard Guenther
|
|
|
PR middle-end/42739
|
PR middle-end/42739
|
* tree-cfgcleanup.c (remove_forwarder_block): Move destination
|
* tree-cfgcleanup.c (remove_forwarder_block): Move destination
|
labels of computed or non-local gotos to the destination.
|
labels of computed or non-local gotos to the destination.
|
* tree-cfg.c (gimple_verify_flow_info): Verify that a EH
|
* tree-cfg.c (gimple_verify_flow_info): Verify that a EH
|
landing pad label is the first label.
|
landing pad label is the first label.
|
|
|
2010-01-15 Richard Guenther
|
2010-01-15 Richard Guenther
|
|
|
* tree-ssa-loop-im.c (gen_lsm_tmp_name): Fix bogus fallthru.
|
* tree-ssa-loop-im.c (gen_lsm_tmp_name): Fix bogus fallthru.
|
|
|
2010-01-14 Michael Meissner
|
2010-01-14 Michael Meissner
|
|
|
PR target/42747
|
PR target/42747
|
* config/rs6000/rs6000.md (sqrtdf2): Split into expander and insn
|
* config/rs6000/rs6000.md (sqrtdf2): Split into expander and insn
|
to allow generation of the xssqrtdp instruction on power7.
|
to allow generation of the xssqrtdp instruction on power7.
|
(sqrtdf2_fpr): Ditto.
|
(sqrtdf2_fpr): Ditto.
|
|
|
2010-01-14 Jakub Jelinek
|
2010-01-14 Jakub Jelinek
|
|
|
PR middle-end/42674
|
PR middle-end/42674
|
* c-decl.c (finish_function): Don't emit -Wreturn-type warnings in
|
* c-decl.c (finish_function): Don't emit -Wreturn-type warnings in
|
functions with noreturn attribute.
|
functions with noreturn attribute.
|
|
|
PR c++/42608
|
PR c++/42608
|
* varasm.c (declare_weak): Add weak attribute to decl if it
|
* varasm.c (declare_weak): Add weak attribute to decl if it
|
doesn't have one already.
|
doesn't have one already.
|
(assemble_external): Only add decls to weak_decls if they also
|
(assemble_external): Only add decls to weak_decls if they also
|
have weak attribute.
|
have weak attribute.
|
|
|
2010-01-14 Alexandre Oliva
|
2010-01-14 Alexandre Oliva
|
|
|
* var-tracking.c (var_reg_delete): Don't delete the association
|
* var-tracking.c (var_reg_delete): Don't delete the association
|
between REGs and values or one-part variables if the register
|
between REGs and values or one-part variables if the register
|
isn't clobbered.
|
isn't clobbered.
|
|
|
2010-01-14 Jakub Jelinek
|
2010-01-14 Jakub Jelinek
|
|
|
PR debug/42657
|
PR debug/42657
|
* tree-inline.c (copy_debug_stmt): Don't reset debug stmt just
|
* tree-inline.c (copy_debug_stmt): Don't reset debug stmt just
|
because its first operand is a non-localized variable.
|
because its first operand is a non-localized variable.
|
|
|
2010-01-14 Martin Jambor
|
2010-01-14 Martin Jambor
|
|
|
PR tree-optimization/42706
|
PR tree-optimization/42706
|
* tree-sra.c (encountered_recursive_call): New variable.
|
* tree-sra.c (encountered_recursive_call): New variable.
|
(encountered_unchangable_recursive_call): Likewise.
|
(encountered_unchangable_recursive_call): Likewise.
|
(sra_initialize): Initialize both new variables.
|
(sra_initialize): Initialize both new variables.
|
(callsite_has_enough_arguments_p): New function.
|
(callsite_has_enough_arguments_p): New function.
|
(scan_function): Call decl and flags check only for IPA-SRA, check
|
(scan_function): Call decl and flags check only for IPA-SRA, check
|
whether there is a recursive call and whether it has enough arguments.
|
whether there is a recursive call and whether it has enough arguments.
|
(all_callers_have_enough_arguments_p): New function.
|
(all_callers_have_enough_arguments_p): New function.
|
(convert_callers): Look for recursive calls only when
|
(convert_callers): Look for recursive calls only when
|
encountered_recursive_call is set.
|
encountered_recursive_call is set.
|
(ipa_early_sra): Bail out either if
|
(ipa_early_sra): Bail out either if
|
!all_callers_have_enough_arguments_p or
|
!all_callers_have_enough_arguments_p or
|
encountered_unchangable_recursive_call.
|
encountered_unchangable_recursive_call.
|
|
|
2010-01-14 Alexander Monakov
|
2010-01-14 Alexander Monakov
|
|
|
* sel-sched.c: Add 2010 to copyright years.
|
* sel-sched.c: Add 2010 to copyright years.
|
* sel-sched-ir.c: Likewise.
|
* sel-sched-ir.c: Likewise.
|
* sel-sched-ir.h: Likewise.
|
* sel-sched-ir.h: Likewise.
|
|
|
2010-01-14 Martin Jambor
|
2010-01-14 Martin Jambor
|
|
|
PR tree-optimization/42714
|
PR tree-optimization/42714
|
* tree-sra.c (sra_ipa_modify_assign): Handle incompatible-type
|
* tree-sra.c (sra_ipa_modify_assign): Handle incompatible-type
|
constructors specially.
|
constructors specially.
|
|
|
2010-01-14 Andi Kleen
|
2010-01-14 Andi Kleen
|
|
|
* config/i386/drivers-i386.c (detect_caches_intel):
|
* config/i386/drivers-i386.c (detect_caches_intel):
|
Add l2sizekb parameter and fill in.
|
Add l2sizekb parameter and fill in.
|
(host_detect_local_cpu): Add l2sizekb, fill in.
|
(host_detect_local_cpu): Add l2sizekb, fill in.
|
Add Atom small cache heuristic.
|
Add Atom small cache heuristic.
|
|
|
2010-01-14 Andi Kleen
|
2010-01-14 Andi Kleen
|
|
|
* config/i386/drivers-i386.c (detect_caches_cpuid4):
|
* config/i386/drivers-i386.c (detect_caches_cpuid4):
|
Add level3 parameter and fill in.
|
Add level3 parameter and fill in.
|
(detect_caches_intel): Handle level3 cache.
|
(detect_caches_intel): Handle level3 cache.
|
|
|
2010-01-14 Andi Kleen
|
2010-01-14 Andi Kleen
|
|
|
* config/i386/drivers-i386.c (host_detect_local_cpu):
|
* config/i386/drivers-i386.c (host_detect_local_cpu):
|
Fix core duo detection.
|
Fix core duo detection.
|
|
|
2010-01-14 Andi Kleen
|
2010-01-14 Andi Kleen
|
|
|
* config/i386/drivers-i386.c (host_detect_local_cpu):
|
* config/i386/drivers-i386.c (host_detect_local_cpu):
|
Fix Atom detection.
|
Fix Atom detection.
|
|
|
2010-01-14 Alexander Monakov
|
2010-01-14 Alexander Monakov
|
|
|
* config/rs6000/rs6000.c (rs6000_variable_issue): Rename to...
|
* config/rs6000/rs6000.c (rs6000_variable_issue): Rename to...
|
(rs6000_variable_issue_1): this. Use...
|
(rs6000_variable_issue_1): this. Use...
|
(rs6000_variable_issue): here. Reimplement. Print debug info.
|
(rs6000_variable_issue): here. Reimplement. Print debug info.
|
|
|
2010-01-14 Alexander Monakov
|
2010-01-14 Alexander Monakov
|
|
|
* sel-sched-ir.c (sel_restore_other_notes): Rename to
|
* sel-sched-ir.c (sel_restore_other_notes): Rename to
|
sel_restore_notes. Update all callers. Call reemit_notes
|
sel_restore_notes. Update all callers. Call reemit_notes
|
for all insns.
|
for all insns.
|
|
|
2010-01-14 Andrey Belevantsev
|
2010-01-14 Andrey Belevantsev
|
|
|
PR rtl-optimization/42246
|
PR rtl-optimization/42246
|
* sel-sched-ir.h (get_all_loop_exits): Include exits from inner
|
* sel-sched-ir.h (get_all_loop_exits): Include exits from inner
|
loops.
|
loops.
|
|
|
2010-01-14 Andrey Belevantsev
|
2010-01-14 Andrey Belevantsev
|
|
|
* sel-sched.c (compute_av_set_at_bb_end): Do not test that number of
|
* sel-sched.c (compute_av_set_at_bb_end): Do not test that number of
|
all successors is the same as number of successors in current region.
|
all successors is the same as number of successors in current region.
|
|
|
2010-01-14 Alexander Monakov
|
2010-01-14 Alexander Monakov
|
|
|
* sel-sched.c (maybe_emit_renaming_copy): Exit early when expression
|
* sel-sched.c (maybe_emit_renaming_copy): Exit early when expression
|
to rename is not separable. Otherwise check that its LHS is not NULL.
|
to rename is not separable. Otherwise check that its LHS is not NULL.
|
|
|
2010-01-14 Alexander Monakov
|
2010-01-14 Alexander Monakov
|
|
|
* sel-sched.c (choose_best_reg_1): Loop over all regs for mode.
|
* sel-sched.c (choose_best_reg_1): Loop over all regs for mode.
|
|
|
2010-01-14 Alexander Monakov
|
2010-01-14 Alexander Monakov
|
|
|
* sel-sched.c (mark_unavailable_hard_regs): Do not try to search
|
* sel-sched.c (mark_unavailable_hard_regs): Do not try to search
|
available registers when failed to discover LHS register class.
|
available registers when failed to discover LHS register class.
|
Fix indentation. Update comment.
|
Fix indentation. Update comment.
|
|
|
2010-01-14 Andrey Belevantsev
|
2010-01-14 Andrey Belevantsev
|
Alexander Monakov
|
Alexander Monakov
|
|
|
PR rtl-optimization/42389
|
PR rtl-optimization/42389
|
* sel-sched.c (advance_one_cycle): Set FENCE_ISSUE_MORE
|
* sel-sched.c (advance_one_cycle): Set FENCE_ISSUE_MORE
|
to can_issue_more.
|
to can_issue_more.
|
(advance_state_on_fence): Likewise.
|
(advance_state_on_fence): Likewise.
|
(sel_target_adjust_priority): Print debug output only when
|
(sel_target_adjust_priority): Print debug output only when
|
sched_verbose >= 4, not 2.
|
sched_verbose >= 4, not 2.
|
(get_expr_cost): Do not issue all unique insns on the next cycle.
|
(get_expr_cost): Do not issue all unique insns on the next cycle.
|
(fill_insns): Initialize can_issue_more from the value saved
|
(fill_insns): Initialize can_issue_more from the value saved
|
with the fence.
|
with the fence.
|
* sel-sched-ir.c (flist_add): New parameter issue_more.
|
* sel-sched-ir.c (flist_add): New parameter issue_more.
|
Init FENCE_ISSUE_MORE with it.
|
Init FENCE_ISSUE_MORE with it.
|
(merge_fences): Likewise.
|
(merge_fences): Likewise.
|
(init_fences): Update call to flist_add.
|
(init_fences): Update call to flist_add.
|
(add_to_fences, add_clean_fence_to_fences)
|
(add_to_fences, add_clean_fence_to_fences)
|
(add_dirty_fence_to_fences): Likewise.
|
(add_dirty_fence_to_fences): Likewise.
|
(move_fence_to_fences): Update call to merge_fences.
|
(move_fence_to_fences): Update call to merge_fences.
|
(invoke_reorder_hooks): Do not reset can_issue_more on insns from
|
(invoke_reorder_hooks): Do not reset can_issue_more on insns from
|
sched groups.
|
sched groups.
|
* sel-sched-ir.h (struct _fence): New field issue_more.
|
* sel-sched-ir.h (struct _fence): New field issue_more.
|
(FENCE_ISSUE_MORE): New accessor macro.
|
(FENCE_ISSUE_MORE): New accessor macro.
|
|
|
2010-01-14 Andrey Belevantsev
|
2010-01-14 Andrey Belevantsev
|
|
|
PR rtl-optimization/42388
|
PR rtl-optimization/42388
|
* sel-sched-ir.c (maybe_tidy_empty_bb): Do not delete empty blocks
|
* sel-sched-ir.c (maybe_tidy_empty_bb): Do not delete empty blocks
|
that have no predecessors nor successors. Do not call move_bb_info
|
that have no predecessors nor successors. Do not call move_bb_info
|
for empty blocks outside of current region.
|
for empty blocks outside of current region.
|
|
|
2010-01-14 Alexander Monakov
|
2010-01-14 Alexander Monakov
|
|
|
PR rtl-optimization/42294
|
PR rtl-optimization/42294
|
* sel-sched-ir.h (struct _sel_insn_data): Update comment.
|
* sel-sched-ir.h (struct _sel_insn_data): Update comment.
|
* sel-sched.c (move_exprs_to_boundary): Transitively add all
|
* sel-sched.c (move_exprs_to_boundary): Transitively add all
|
originators' originators.
|
originators' originators.
|
|
|
2010-01-14 Alexander Monakov
|
2010-01-14 Alexander Monakov
|
|
|
PR rtl-optimization/39453
|
PR rtl-optimization/39453
|
PR rtl-optimization/42246
|
PR rtl-optimization/42246
|
* sel-sched-ir.c (considered_for_pipelining_p): Do not test
|
* sel-sched-ir.c (considered_for_pipelining_p): Do not test
|
for pipelining_p.
|
for pipelining_p.
|
(sel_add_loop_preheaders): Add preheader to last_added_blocks.
|
(sel_add_loop_preheaders): Add preheader to last_added_blocks.
|
|
|
2010-01-14 Andrey Belevantsev
|
2010-01-14 Andrey Belevantsev
|
Alexander Monakov
|
Alexander Monakov
|
|
|
PR middle-end/42245
|
PR middle-end/42245
|
* sel-sched-ir.c (sel_recompute_toporder): New. Use it...
|
* sel-sched-ir.c (sel_recompute_toporder): New. Use it...
|
(maybe_tidy_empty_bb): ... here. Make static. Add new
|
(maybe_tidy_empty_bb): ... here. Make static. Add new
|
argument. Update all callers.
|
argument. Update all callers.
|
(tidy_control_flow): ... and here. Recompute topological order
|
(tidy_control_flow): ... and here. Recompute topological order
|
of basic blocks in region if necessary.
|
of basic blocks in region if necessary.
|
(sel_redirect_edge_and_branch): Change return type. Return true
|
(sel_redirect_edge_and_branch): Change return type. Return true
|
if topological order might have been invalidated.
|
if topological order might have been invalidated.
|
(purge_empty_blocks): Export and move from...
|
(purge_empty_blocks): Export and move from...
|
* sel-sched.c (purge_empty_blocks): ... here.
|
* sel-sched.c (purge_empty_blocks): ... here.
|
* sel-sched-ir.h (sel_redirect_edge_and_branch): Update prototype.
|
* sel-sched-ir.h (sel_redirect_edge_and_branch): Update prototype.
|
(maybe_tidy_empty_bb): Delete prototype.
|
(maybe_tidy_empty_bb): Delete prototype.
|
(purge_empty_blocks): Declare.
|
(purge_empty_blocks): Declare.
|
|
|
2010-01-14 Andrey Belevantsev
|
2010-01-14 Andrey Belevantsev
|
|
|
PR rtl-optimization/42249
|
PR rtl-optimization/42249
|
* sel-sched.c (try_replace_dest_reg): When chosen register
|
* sel-sched.c (try_replace_dest_reg): When chosen register
|
and original register is the same, do not bail out early, but
|
and original register is the same, do not bail out early, but
|
still check all original insns for validity of replacing destination
|
still check all original insns for validity of replacing destination
|
register. Set EXPR_TARGET_AVAILABLE to 1 before leaving function
|
register. Set EXPR_TARGET_AVAILABLE to 1 before leaving function
|
in this case.
|
in this case.
|
|
|
2010-01-14 Jakub Jelinek
|
2010-01-14 Jakub Jelinek
|
|
|
PR c/42721
|
PR c/42721
|
Port from no-undefined-overflow branch:
|
Port from no-undefined-overflow branch:
|
2009-03-09 Richard Guenther
|
2009-03-09 Richard Guenther
|
|
|
* fold-const.c (add_double_with_sign): Fix unsigned overflow detection.
|
* fold-const.c (add_double_with_sign): Fix unsigned overflow detection.
|
|
|
2010-01-14 Richard Guenther
|
2010-01-14 Richard Guenther
|
|
|
PR lto/42665
|
PR lto/42665
|
* gimple.c (iterative_hash_gimple_type): Avoid hashing error_mark_node.
|
* gimple.c (iterative_hash_gimple_type): Avoid hashing error_mark_node.
|
|
|
2010-01-14 Ira Rosen
|
2010-01-14 Ira Rosen
|
|
|
PR tree-optimization/42709
|
PR tree-optimization/42709
|
* tree-vect-slp.c (vect_get_constant_vectors): Use constant's type
|
* tree-vect-slp.c (vect_get_constant_vectors): Use constant's type
|
as scalar type in creation of constant vector operand.
|
as scalar type in creation of constant vector operand.
|
|
|
2010-01-14 Ralf Wildenhues
|
2010-01-14 Ralf Wildenhues
|
|
|
PR testsuite/42414
|
PR testsuite/42414
|
* Makefile.in ($(TESTSUITEDIR)/site.exp, check-%)
|
* Makefile.in ($(TESTSUITEDIR)/site.exp, check-%)
|
(check-parallel-%): Match `testsuite' directory component only
|
(check-parallel-%): Match `testsuite' directory component only
|
at the end.
|
at the end.
|
|
|
2010-01-14 Shujing Zhao
|
2010-01-14 Shujing Zhao
|
|
|
PR translation/39521
|
PR translation/39521
|
* gcc.c (do_spec_1): Wrapped the error and notice messages of specs
|
* gcc.c (do_spec_1): Wrapped the error and notice messages of specs
|
strings with _().
|
strings with _().
|
|
|
2010-01-13 Richard Guenther
|
2010-01-13 Richard Guenther
|
|
|
PR tree-optimization/42730
|
PR tree-optimization/42730
|
* tree-ssa-ccp.c (maybe_fold_stmt_indirect): Add shortcut for
|
* tree-ssa-ccp.c (maybe_fold_stmt_indirect): Add shortcut for
|
offset zero.
|
offset zero.
|
|
|
2010-01-13 Steve Ellcey
|
2010-01-13 Steve Ellcey
|
|
|
PR target/pr42542
|
PR target/pr42542
|
* config/ia64/ia64.c (ia64_expand_vecint_compare): Convert GTU to GT
|
* config/ia64/ia64.c (ia64_expand_vecint_compare): Convert GTU to GT
|
for V2SI by subtracting (-(INT MAX) - 1) from both operands to make
|
for V2SI by subtracting (-(INT MAX) - 1) from both operands to make
|
them signed.
|
them signed.
|
|
|
2010-01-13 Bernd Schmidt
|
2010-01-13 Bernd Schmidt
|
|
|
* config/bfin/libgcc-bfin.ver: Regenerate based on current
|
* config/bfin/libgcc-bfin.ver: Regenerate based on current
|
libgcc-std.ver. Add entries for ___smulsi3_highpart and
|
libgcc-std.ver. Add entries for ___smulsi3_highpart and
|
___umulsi3_highpart.
|
___umulsi3_highpart.
|
|
|
* config/bfin/bfin.c (bfin_reorg): Call run_selective_scheduling
|
* config/bfin/bfin.c (bfin_reorg): Call run_selective_scheduling
|
rather than schedule_insns if the pass is enabled.
|
rather than schedule_insns if the pass is enabled.
|
|
|
2010-01-13 Martin Jambor
|
2010-01-13 Martin Jambor
|
|
|
PR tree-optimization/42704
|
PR tree-optimization/42704
|
* tree-sra.c (sra_modify_assign): Do not delete assignments to
|
* tree-sra.c (sra_modify_assign): Do not delete assignments to
|
SSA_NAMEs.
|
SSA_NAMEs.
|
|
|
2010-01-13 Martin Jambor
|
2010-01-13 Martin Jambor
|
|
|
PR tree-optimization/42703
|
PR tree-optimization/42703
|
* tree-sra.c (analyze_access_subtree): Check that we can build a
|
* tree-sra.c (analyze_access_subtree): Check that we can build a
|
reference to the original data within the aggregate.
|
reference to the original data within the aggregate.
|
|
|
2010-01-13 Richard Guenther
|
2010-01-13 Richard Guenther
|
|
|
PR tree-optimization/42705
|
PR tree-optimization/42705
|
* tree-ssa-reassoc.c (build_and_add_sum): Insert stmts after labels.
|
* tree-ssa-reassoc.c (build_and_add_sum): Insert stmts after labels.
|
|
|
2010-01-13 Richard Guenther
|
2010-01-13 Richard Guenther
|
|
|
PR middle-end/42716
|
PR middle-end/42716
|
* fold-const.c (fold_unary_loc): Fold INDIRECT_REFs.
|
* fold-const.c (fold_unary_loc): Fold INDIRECT_REFs.
|
|
|
2010-01-13 Jakub Jelinek
|
2010-01-13 Jakub Jelinek
|
|
|
PR debug/41371
|
PR debug/41371
|
* var-tracking.c (values_to_unmark): New variable.
|
* var-tracking.c (values_to_unmark): New variable.
|
(find_loc_in_1pdv): Clear VALUE_RECURSED_INTO of values in
|
(find_loc_in_1pdv): Clear VALUE_RECURSED_INTO of values in
|
values_to_unmark vector. Moved body to...
|
values_to_unmark vector. Moved body to...
|
(find_loc_in_1pdv_1): ... this. Don't clear VALUE_RECURSED_INTO,
|
(find_loc_in_1pdv_1): ... this. Don't clear VALUE_RECURSED_INTO,
|
instead queue it into values_to_unmark vector.
|
instead queue it into values_to_unmark vector.
|
(vt_find_locations): Free values_to_unmark vector.
|
(vt_find_locations): Free values_to_unmark vector.
|
|
|
2010-01-13 Wolfgang Gellerich
|
2010-01-13 Wolfgang Gellerich
|
|
|
* config/s390/s390.c (override_options): Set
|
* config/s390/s390.c (override_options): Set
|
default of max-pending-list-length to 256
|
default of max-pending-list-length to 256
|
|
|
2010-01-13 Richard Guenther
|
2010-01-13 Richard Guenther
|
|
|
PR lto/42678
|
PR lto/42678
|
* tree-pass.h (PROP_gimple_lcx): New.
|
* tree-pass.h (PROP_gimple_lcx): New.
|
* cfgexpand.c (pass_expand): Require PROP_gimple_lcx.
|
* cfgexpand.c (pass_expand): Require PROP_gimple_lcx.
|
* passes.c (init_optimization_passes): Move pass_lower_complex_O0
|
* passes.c (init_optimization_passes): Move pass_lower_complex_O0
|
before the final cleanup_eh.
|
before the final cleanup_eh.
|
(dump_properties): Dump PROP_gimple_lcx.
|
(dump_properties): Dump PROP_gimple_lcx.
|
* tree-complex.c (pass_lower_complex): Provide PROP_gimple_lcx.
|
* tree-complex.c (pass_lower_complex): Provide PROP_gimple_lcx.
|
(tree_lower_complex_O0): Remove.
|
(tree_lower_complex_O0): Remove.
|
(gate_no_optimization): Run if PROP_gimple_lcx is not set.
|
(gate_no_optimization): Run if PROP_gimple_lcx is not set.
|
(pass_lower_complex_O0): Provide PROP_gimple_lcx. Run
|
(pass_lower_complex_O0): Provide PROP_gimple_lcx. Run
|
tree_lower_complex, schedule TODO_update_ssa.
|
tree_lower_complex, schedule TODO_update_ssa.
|
* lto-streamer-out.c (output_function): Stream the functions
|
* lto-streamer-out.c (output_function): Stream the functions
|
properties.
|
properties.
|
* lto-streamer-in.c (input_function): Likewise.
|
* lto-streamer-in.c (input_function): Likewise.
|
(lto_read_body): Do not override them here.
|
(lto_read_body): Do not override them here.
|
|
|
2010-01-12 Joseph Myers
|
2010-01-12 Joseph Myers
|
|
|
PR c/42708
|
PR c/42708
|
* c-typeck.c (build_c_cast): Fold value cast to union type before
|
* c-typeck.c (build_c_cast): Fold value cast to union type before
|
wrapping it in a CONSTRUCTOR.
|
wrapping it in a CONSTRUCTOR.
|
|
|
2010-01-12 Jakub Jelinek
|
2010-01-12 Jakub Jelinek
|
|
|
PR rtl-optimization/42699
|
PR rtl-optimization/42699
|
* cse.c (cse_insn): Optimize lhs ZERO_EXTRACT if only CONST_INTs are
|
* cse.c (cse_insn): Optimize lhs ZERO_EXTRACT if only CONST_INTs are
|
involved.
|
involved.
|
|
|
2010-01-12 Rainer Orth
|
2010-01-12 Rainer Orth
|
|
|
* config/mips/iris6.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
|
* config/mips/iris6.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
|
SUBTARGET_WARN_UNUSED_SPEC): Move ...
|
SUBTARGET_WARN_UNUSED_SPEC): Move ...
|
config/mips/iris.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
|
config/mips/iris.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
|
SUBTARGET_WARN_UNUSED_SPEC): ... here
|
SUBTARGET_WARN_UNUSED_SPEC): ... here
|
* config/mips/iris5.h (LIBGCC_SPEC): Define.
|
* config/mips/iris5.h (LIBGCC_SPEC): Define.
|
|
|
2010-01-12 Julian Brown
|
2010-01-12 Julian Brown
|
|
|
* config/arm/neon-schedgen.ml (Utils): Don't try to
|
* config/arm/neon-schedgen.ml (Utils): Don't try to
|
open missing module.
|
open missing module.
|
(find_with_result): New.
|
(find_with_result): New.
|
|
|
2010-01-12 Jakub Jelinek
|
2010-01-12 Jakub Jelinek
|
|
|
PR debug/42662
|
PR debug/42662
|
* simplify-rtx.c (simplify_relational_operation_1): Avoid invalid rtx
|
* simplify-rtx.c (simplify_relational_operation_1): Avoid invalid rtx
|
sharing when canonicalizing ({lt,ge}u (plus a b) b).
|
sharing when canonicalizing ({lt,ge}u (plus a b) b).
|
|
|
PR tree-optimization/42645
|
PR tree-optimization/42645
|
* tree-inline.c (processing_debug_stmt): Move earlier. Make static.
|
* tree-inline.c (processing_debug_stmt): Move earlier. Make static.
|
(remap_ssa_name): If processing_debug_stmt and name wasn't found in
|
(remap_ssa_name): If processing_debug_stmt and name wasn't found in
|
decl_map, set processing_debug_stmt to -1 and return name without
|
decl_map, set processing_debug_stmt to -1 and return name without
|
any remapping.
|
any remapping.
|
|
|
2010-01-11 Dave Korn
|
2010-01-11 Dave Korn
|
|
|
* doc/install.texi (Specific#x-x-cygwin): Document minimum required
|
* doc/install.texi (Specific#x-x-cygwin): Document minimum required
|
binutils version, and reword target configuration description.
|
binutils version, and reword target configuration description.
|
|
|
2010-01-11 Andy Hutchinson
|
2010-01-11 Andy Hutchinson
|
|
|
* config/avr/avr.h (LINKER_NAME): Remove.
|
* config/avr/avr.h (LINKER_NAME): Remove.
|
|
|
2010-01-11 Janis Johnson
|
2010-01-11 Janis Johnson
|
|
|
PR target/42416
|
PR target/42416
|
* config/rs6000/rs6000.c (rs6000_override_options): On targets
|
* config/rs6000/rs6000.c (rs6000_override_options): On targets
|
that support VSX, warn for -mno-altivec if vsx is not disabled,
|
that support VSX, warn for -mno-altivec if vsx is not disabled,
|
and disable vsx.
|
and disable vsx.
|
|
|
2010-01-11 Joseph Myers
|
2010-01-11 Joseph Myers
|
Shujing Zhao
|
Shujing Zhao
|
|
|
PR translation/42469
|
PR translation/42469
|
* common.opt (Wframe-larger-than=, fcompare-debug=, fdbg-cnt=,
|
* common.opt (Wframe-larger-than=, fcompare-debug=, fdbg-cnt=,
|
fira-verbose=, flto-compression-level=, fplugin-arg-): Use tab
|
fira-verbose=, flto-compression-level=, fplugin-arg-): Use tab
|
character between option name and help text.
|
character between option name and help text.
|
* c.opt (imultilib): Likewise.
|
* c.opt (imultilib): Likewise.
|
|
|
2010-01-10 Rafael Avila de Espindola
|
2010-01-10 Rafael Avila de Espindola
|
|
|
* lto-streamer-out.c (output_unreferenced_globals): Output static
|
* lto-streamer-out.c (output_unreferenced_globals): Output static
|
variables.
|
variables.
|
|
|
2010-01-10 Steven Bosscher
|
2010-01-10 Steven Bosscher
|
|
|
PR rtl-optimization/42621
|
PR rtl-optimization/42621
|
* bb-reorder.c (gate_duplicated_computed_gotos): Only run if not
|
* bb-reorder.c (gate_duplicated_computed_gotos): Only run if not
|
optimizing for size.
|
optimizing for size.
|
(duplicate_computed_gotos): Remove now-redundant check.
|
(duplicate_computed_gotos): Remove now-redundant check.
|
|
|
2010-01-10 Steve Ellcey
|
2010-01-10 Steve Ellcey
|
|
|
PR target/37454
|
PR target/37454
|
* configure.ac: Save and restore LDFLAGS and LIBS
|
* configure.ac: Save and restore LDFLAGS and LIBS
|
* configure: Regenerate.
|
* configure: Regenerate.
|
|
|
2010-01-10 Richard Guenther
|
2010-01-10 Richard Guenther
|
|
|
PR middle-end/42667
|
PR middle-end/42667
|
* builtins.c (fold_builtin_strlen): Add type argument and
|
* builtins.c (fold_builtin_strlen): Add type argument and
|
convert the resulting length to it.
|
convert the resulting length to it.
|
(fold_builtin_1): Adjust.
|
(fold_builtin_1): Adjust.
|
|
|
2010-01-09 Jakub Jelinek
|
2010-01-09 Jakub Jelinek
|
|
|
* config/rs6000/rs6000.c (rs6000_emit_set_long_const): Shorten
|
* config/rs6000/rs6000.c (rs6000_emit_set_long_const): Shorten
|
sequence for DImode constants >= 0x80000000UL <= 0xFFFFFFFFUL by
|
sequence for DImode constants >= 0x80000000UL <= 0xFFFFFFFFUL by
|
1 insn.
|
1 insn.
|
(num_insns_constant_wide): Adjust for that change.
|
(num_insns_constant_wide): Adjust for that change.
|
|
|
2010-01-09 Alexandre Oliva
|
2010-01-09 Alexandre Oliva
|
|
|
PR debug/42631
|
PR debug/42631
|
* web.c (union_defs): Add used argument, to combine uses of
|
* web.c (union_defs): Add used argument, to combine uses of
|
uninitialized regs.
|
uninitialized regs.
|
(entry_register): Adjust type and tests of used argument.
|
(entry_register): Adjust type and tests of used argument.
|
(web_main): Widen used for new use. Pass it to union_defs.
|
(web_main): Widen used for new use. Pass it to union_defs.
|
* df.h (union_defs): Adjust prototype.
|
* df.h (union_defs): Adjust prototype.
|
|
|
2010-01-09 Alexandre Oliva
|
2010-01-09 Alexandre Oliva
|
|
|
PR debug/42630
|
PR debug/42630
|
* loop-unroll.c (referenced_in_one_insn_in_loop_p): Count debug
|
* loop-unroll.c (referenced_in_one_insn_in_loop_p): Count debug
|
uses in new incoming argument. Free body.
|
uses in new incoming argument. Free body.
|
(reset_debug_uses_in_loop): New.
|
(reset_debug_uses_in_loop): New.
|
(analyze_insn_to_expand_var): Call the latter if the former found
|
(analyze_insn_to_expand_var): Call the latter if the former found
|
anything. Fix whitespace. Reject invalid dest overlaps before
|
anything. Fix whitespace. Reject invalid dest overlaps before
|
going through all insns in the loop.
|
going through all insns in the loop.
|
|
|
2010-01-09 Alexandre Oliva
|
2010-01-09 Alexandre Oliva
|
|
|
PR debug/42629
|
PR debug/42629
|
* haifa-sched.c (dying_use_p): Debug insns don't count.
|
* haifa-sched.c (dying_use_p): Debug insns don't count.
|
|
|
2010-01-09 Alexandre Oliva
|
2010-01-09 Alexandre Oliva
|
|
|
PR middle-end/42363
|
PR middle-end/42363
|
* gimplify.c (gimplify_modify_expr): Drop lhs on noreturn calls.
|
* gimplify.c (gimplify_modify_expr): Drop lhs on noreturn calls.
|
* tree-cfg.c (is_ctrl_altering_stmt): Don't compute flags twice.
|
* tree-cfg.c (is_ctrl_altering_stmt): Don't compute flags twice.
|
(verify_gimple_call): Reject LHS in noreturn calls.
|
(verify_gimple_call): Reject LHS in noreturn calls.
|
|
|
2010-01-09 Alexandre Oliva
|
2010-01-09 Alexandre Oliva
|
|
|
PR debug/42604
|
PR debug/42604
|
PR debug/42395
|
PR debug/42395
|
* tree-vect-loop-manip.c (adjust_info): New type.
|
* tree-vect-loop-manip.c (adjust_info): New type.
|
(adjust_vec): New pointer to vector.
|
(adjust_vec): New pointer to vector.
|
(adjust_debug_stmts_now, adjust_vec_debug_stmts): New.
|
(adjust_debug_stmts_now, adjust_vec_debug_stmts): New.
|
(adjust_debug_stmts, adjust_phi_and_debug_stmts): New.
|
(adjust_debug_stmts, adjust_phi_and_debug_stmts): New.
|
(slpeel_update_phis_for_duplicate_loop): Use them.
|
(slpeel_update_phis_for_duplicate_loop): Use them.
|
(slpeel_update_phi_nodes_for_guard1): Likewise.
|
(slpeel_update_phi_nodes_for_guard1): Likewise.
|
(slpeel_update_phi_nodes_for_guard2): Likewise.
|
(slpeel_update_phi_nodes_for_guard2): Likewise.
|
(slpeel_tree_peel_loop_to_edge): Likewise.
|
(slpeel_tree_peel_loop_to_edge): Likewise.
|
(vect_update_ivs_after_vectorizer): Likewise.
|
(vect_update_ivs_after_vectorizer): Likewise.
|
|
|
2010-01-09 Alexandre Oliva
|
2010-01-09 Alexandre Oliva
|
|
|
* vec.h (DEF_VEC_ALLOC_FUNC_O_STACK): Drop excess paren.
|
* vec.h (DEF_VEC_ALLOC_FUNC_O_STACK): Drop excess paren.
|
(DEF_VEC_ALLOC_FUNC_I_STACK): Likewise.
|
(DEF_VEC_ALLOC_FUNC_I_STACK): Likewise.
|
|
|
2010-01-09 Alexandre Oliva
|
2010-01-09 Alexandre Oliva
|
|
|
* config/i386/i386.c (ix86_vectorize_builtin_vec_perm): Silence
|
* config/i386/i386.c (ix86_vectorize_builtin_vec_perm): Silence
|
bogus uninitialized warning.
|
bogus uninitialized warning.
|
|
|
2010-01-09 Richard Guenther
|
2010-01-09 Richard Guenther
|
|
|
PR middle-end/42512
|
PR middle-end/42512
|
* tree-scalar-evolution.c (interpret_loop_phi): Make sure
|
* tree-scalar-evolution.c (interpret_loop_phi): Make sure
|
the evolution is compatible with the initial condition.
|
the evolution is compatible with the initial condition.
|
|
|
2010-01-09 Jakub Jelinek
|
2010-01-09 Jakub Jelinek
|
|
|
* gcc.c (process_command): Update copyright notice dates.
|
* gcc.c (process_command): Update copyright notice dates.
|
* gcov.c (print_version): Likewise.
|
* gcov.c (print_version): Likewise.
|
* gcov-dump.c (print_version): Likewise.
|
* gcov-dump.c (print_version): Likewise.
|
* mips-tfile.c (main): Likewise.
|
* mips-tfile.c (main): Likewise.
|
* mips-tdump.c (main): Likewise.
|
* mips-tdump.c (main): Likewise.
|
|
|
2010-01-08 Andy Hutchinson
|
2010-01-08 Andy Hutchinson
|
|
|
PR target/41885
|
PR target/41885
|
* config/avr/avr.md (rotlqi3): Add CONST_INT_P check.
|
* config/avr/avr.md (rotlqi3): Add CONST_INT_P check.
|
(rotlhi3): Delete.
|
(rotlhi3): Delete.
|
(rotlhi3_8): Delete.
|
(rotlhi3_8): Delete.
|
(rotlsi3): Delete.
|
(rotlsi3): Delete.
|
(rotlsi3_8): Delete.
|
(rotlsi3_8): Delete.
|
(rotlsi3_16): Delete.
|
(rotlsi3_16): Delete.
|
(rotlsi3_24): Delete.
|
(rotlsi3_24): Delete.
|
(rotl3): New.
|
(rotl3): New.
|
(*rotw3): New.
|
(*rotw3): New.
|
(*rotb3): New.
|
(*rotb3): New.
|
* config/avr/avr.c (avr_rotate_bytes): New function.
|
* config/avr/avr.c (avr_rotate_bytes): New function.
|
* config/avr/avr-proto.h (avr_rotate_bytes): New function.
|
* config/avr/avr-proto.h (avr_rotate_bytes): New function.
|
|
|
2010-01-08 Steve Ellcey
|
2010-01-08 Steve Ellcey
|
|
|
PR target/37454
|
PR target/37454
|
* configure.ac: Modify -rdynamic check.
|
* configure.ac: Modify -rdynamic check.
|
* configure: Regenerate.
|
* configure: Regenerate.
|
|
|
2010-01-08 DJ Delorie
|
2010-01-08 DJ Delorie
|
|
|
* config/sh/sh.c (sh_expand_epilogue): Fix interrupt handler
|
* config/sh/sh.c (sh_expand_epilogue): Fix interrupt handler
|
register popping order.
|
register popping order.
|
|
|
2010-01-08 Richard Guenther
|
2010-01-08 Richard Guenther
|
|
|
PR lto/42528
|
PR lto/42528
|
* c.opt (fsigned-char): Also let LTO handle this option.
|
* c.opt (fsigned-char): Also let LTO handle this option.
|
(funsigned-char): Likewise.
|
(funsigned-char): Likewise.
|
|
|
2010-01-07 Richard Guenther
|
2010-01-07 Richard Guenther
|
|
|
* gimple.h (gss_for_code): Wrap gcc_assert in ENABLE_CHECKING.
|
* gimple.h (gss_for_code): Wrap gcc_assert in ENABLE_CHECKING.
|
(gimple_op): Likewise.
|
(gimple_op): Likewise.
|
(gimple_op_ptr): Likewise.
|
(gimple_op_ptr): Likewise.
|
(gimple_assign_set_lhs): Remove gcc_assert.
|
(gimple_assign_set_lhs): Remove gcc_assert.
|
(gimple_assign_set_rhs1): Likewise.
|
(gimple_assign_set_rhs1): Likewise.
|
(gimple_assign_set_rhs2): Likewise.
|
(gimple_assign_set_rhs2): Likewise.
|
(gimple_call_set_lhs): Likewise.
|
(gimple_call_set_lhs): Likewise.
|
(gimple_call_set_fn): Likewise.
|
(gimple_call_set_fn): Likewise.
|
(gimple_call_set_fndecl): Likewise.
|
(gimple_call_set_fndecl): Likewise.
|
(gimple_call_fndecl): Likewise.
|
(gimple_call_fndecl): Likewise.
|
(gimple_call_return_type): Likewise.
|
(gimple_call_return_type): Likewise.
|
(gimple_call_set_chain): Likewise.
|
(gimple_call_set_chain): Likewise.
|
(gimple_call_num_args): Likewise.
|
(gimple_call_num_args): Likewise.
|
(gimple_call_set_arg): Likewise.
|
(gimple_call_set_arg): Likewise.
|
(gimple_cond_set_code): Likewise.
|
(gimple_cond_set_code): Likewise.
|
(gimple_cond_set_lhs): Likewise.
|
(gimple_cond_set_lhs): Likewise.
|
(gimple_cond_set_rhs): Likewise.
|
(gimple_cond_set_rhs): Likewise.
|
(gimple_cond_set_true_label): Likewise.
|
(gimple_cond_set_true_label): Likewise.
|
(gimple_cond_set_false_label): Likewise.
|
(gimple_cond_set_false_label): Likewise.
|
(gimple_label_set_label): Likewise.
|
(gimple_label_set_label): Likewise.
|
(gimple_goto_set_dest): Likewise.
|
(gimple_goto_set_dest): Likewise.
|
(gimple_debug_bind_get_var): Wrap gcc_assert in ENABLE_CHECKING.
|
(gimple_debug_bind_get_var): Wrap gcc_assert in ENABLE_CHECKING.
|
(gimple_debug_bind_get_value): Likewise.
|
(gimple_debug_bind_get_value): Likewise.
|
(gimple_debug_bind_get_value_ptr): Likewise.
|
(gimple_debug_bind_get_value_ptr): Likewise.
|
(gimple_debug_bind_set_var): Likewise.
|
(gimple_debug_bind_set_var): Likewise.
|
(gimple_debug_bind_set_value): Likewise.
|
(gimple_debug_bind_set_value): Likewise.
|
(gimple_debug_bind_reset_value): Likewise.
|
(gimple_debug_bind_reset_value): Likewise.
|
(gimple_debug_bind_has_value_p): Likewise.
|
(gimple_debug_bind_has_value_p): Likewise.
|
(gimple_return_retval_ptr): Remove gcc_assert.
|
(gimple_return_retval_ptr): Remove gcc_assert.
|
(gimple_return_retval): Likewise.
|
(gimple_return_retval): Likewise.
|
(gimple_return_set_retval): Likewise.
|
(gimple_return_set_retval): Likewise.
|
* tree-flow.h (struct gimple_df): Remove nonlocal_all member.
|
* tree-flow.h (struct gimple_df): Remove nonlocal_all member.
|
(safe_referenced_var_iterator): Remove.
|
(safe_referenced_var_iterator): Remove.
|
(FOR_EACH_REFERENCED_VAR_SAFE): Likewise.
|
(FOR_EACH_REFERENCED_VAR_SAFE): Likewise.
|
* tree-flow-inline.h (gimple_nonlocal_all): Remove.
|
* tree-flow-inline.h (gimple_nonlocal_all): Remove.
|
(fill_referenced_var_vec): Remove.
|
(fill_referenced_var_vec): Remove.
|
(first_readonly_imm_use): Remove redundant gcc_assert.
|
(first_readonly_imm_use): Remove redundant gcc_assert.
|
(phi_arg_index_from_use): Combine gcc_asserts.
|
(phi_arg_index_from_use): Combine gcc_asserts.
|
(move_use_after_head): Wrap gcc_assert in ENABLE_CHECKING.
|
(move_use_after_head): Wrap gcc_assert in ENABLE_CHECKING.
|
(first_imm_use_stmt): Remove redundant gcc_assert.
|
(first_imm_use_stmt): Remove redundant gcc_assert.
|
* tree-cfg.c (verify_gimple_call): Verify function and chain
|
* tree-cfg.c (verify_gimple_call): Verify function and chain
|
operands. Verify arguments.
|
operands. Verify arguments.
|
(verify_types_in_gimple_stmt): Verify condition code and labels.
|
(verify_types_in_gimple_stmt): Verify condition code and labels.
|
|
|
2010-01-07 Richard Guenther
|
2010-01-07 Richard Guenther
|
|
|
PR tree-optimization/42641
|
PR tree-optimization/42641
|
* sese.c (rename_map_elt_info): Use the SSA name version, do
|
* sese.c (rename_map_elt_info): Use the SSA name version, do
|
not hash pointers.
|
not hash pointers.
|
|
|
2010-01-07 Jakub Jelinek
|
2010-01-07 Jakub Jelinek
|
|
|
PR tree-optimization/42625
|
PR tree-optimization/42625
|
* cgraph.c (cgraph_make_node_local): Clear DECL_COMDAT*,
|
* cgraph.c (cgraph_make_node_local): Clear DECL_COMDAT*,
|
TREE_PUBLIC, DECL_WEAK and DECL_EXTERNAL also for same_body aliases.
|
TREE_PUBLIC, DECL_WEAK and DECL_EXTERNAL also for same_body aliases.
|
|
|
2010-01-07 Duncan Sands
|
2010-01-07 Duncan Sands
|
|
|
* Makefile.in (PLUGIN_HEADERS): Add version.h.
|
* Makefile.in (PLUGIN_HEADERS): Add version.h.
|
|
|
2010-01-07 Uros Bizjak
|
2010-01-07 Uros Bizjak
|
|
|
PR target/42511
|
PR target/42511
|
* ifcvt.c (dead_or_predicable): Also remove REG_EQUAL note when
|
* ifcvt.c (dead_or_predicable): Also remove REG_EQUAL note when
|
note itself is not function_invariant_p.
|
note itself is not function_invariant_p.
|
|
|
2009-01-07 Steven Bosscher
|
2009-01-07 Steven Bosscher
|
|
|
* gcse.c (execute_rtl_cprop, execute_rtl_pre, execute_rtl_hoist):
|
* gcse.c (execute_rtl_cprop, execute_rtl_pre, execute_rtl_hoist):
|
Do not add the DF_NOTE problem.
|
Do not add the DF_NOTE problem.
|
* store-motion.c (execute_rtl_store_motion): Likewise.
|
* store-motion.c (execute_rtl_store_motion): Likewise.
|
|
|
2010-01-07 Martin Jambor
|
2010-01-07 Martin Jambor
|
|
|
PR tree-optimization/42157
|
PR tree-optimization/42157
|
* tree-sra.c (compare_access_positions): Stabilize sort if both
|
* tree-sra.c (compare_access_positions): Stabilize sort if both
|
accesses have integer types, return zero immediately if they are the
|
accesses have integer types, return zero immediately if they are the
|
same.
|
same.
|
|
|
2010-01-06 Richard Henderson
|
2010-01-06 Richard Henderson
|
|
|
PR middle-end/41883
|
PR middle-end/41883
|
* haifa-sched.c (add_to_note_list): Merge into ...
|
* haifa-sched.c (add_to_note_list): Merge into ...
|
(concat_note_lists): ... here, and ...
|
(concat_note_lists): ... here, and ...
|
(unlink_other_notes, rm_other_notes): Merge into...
|
(unlink_other_notes, rm_other_notes): Merge into...
|
(remove_notes): ... here. Create REG_SAVE_NOTEs for
|
(remove_notes): ... here. Create REG_SAVE_NOTEs for
|
NOTE_INSN_EPILOGUE_BEG.
|
NOTE_INSN_EPILOGUE_BEG.
|
|
|
2010-01-06 Richard Guenther
|
2010-01-06 Richard Guenther
|
|
|
* ipa-inline.c (cgraph_decide_inlining_incrementally): Do
|
* ipa-inline.c (cgraph_decide_inlining_incrementally): Do
|
not inline regular functions into always-inline functions.
|
not inline regular functions into always-inline functions.
|
|
|
2010-01-06 Nick Clifton
|
2010-01-06 Nick Clifton
|
|
|
* config/rx/rx.h (enum rx_cpu_type): Add RX200.
|
* config/rx/rx.h (enum rx_cpu_type): Add RX200.
|
(CC1_SPEC): Issue an error message if -mcpu=rx200 and -fpu are
|
(CC1_SPEC): Issue an error message if -mcpu=rx200 and -fpu are
|
used together.
|
used together.
|
(OVERRIDE_OPTIONS): Delete.
|
(OVERRIDE_OPTIONS): Delete.
|
(OPTIMIZATION_OPTIONS): Define.
|
(OPTIMIZATION_OPTIONS): Define.
|
(ALLOW_RX_FPU_INSNS): Define only in terms of -fpu option.
|
(ALLOW_RX_FPU_INSNS): Define only in terms of -fpu option.
|
* config/rx/rx.c (rx_handle_option): Issue an error message if
|
* config/rx/rx.c (rx_handle_option): Issue an error message if
|
-mcpu=rx200 and -fpu are used together.
|
-mcpu=rx200 and -fpu are used together.
|
(rx_set_optimization_options): New function. Issue an error
|
(rx_set_optimization_options): New function. Issue an error
|
message if an optimization attribute attempts to reset the FPU/
|
message if an optimization attribute attempts to reset the FPU/
|
math optimization pairing.
|
math optimization pairing.
|
* config/rx/rx-protos.h (rx_set_optimization_options): Prototype.
|
* config/rx/rx-protos.h (rx_set_optimization_options): Prototype.
|
* config/rx/rx.opt: Set the default to 32-bit doubles.
|
* config/rx/rx.opt: Set the default to 32-bit doubles.
|
* config/rx/t-rx: Add multilibs for -nofpu option.
|
* config/rx/t-rx: Add multilibs for -nofpu option.
|
* doc/invoke.texi: Update documentation of RX options.
|
* doc/invoke.texi: Update documentation of RX options.
|
|
|
2010-01-06 Richard Guenther
|
2010-01-06 Richard Guenther
|
|
|
* tree-ssa-pre.c (name_to_id): New global.
|
* tree-ssa-pre.c (name_to_id): New global.
|
(alloc_expression_id): Simplify SSA name handling.
|
(alloc_expression_id): Simplify SSA name handling.
|
(lookup_expression_id): Likewise.
|
(lookup_expression_id): Likewise.
|
(init_pre): Zero name_to_id.
|
(init_pre): Zero name_to_id.
|
(fini_pre): Free it.
|
(fini_pre): Free it.
|
|
|
2010-01-06 Uros Bizjak
|
2010-01-06 Uros Bizjak
|
|
|
* ifcvt.c (if_convert): Output slim multiple dumps with TDF_SLIM.
|
* ifcvt.c (if_convert): Output slim multiple dumps with TDF_SLIM.
|
|
|
2010-01-05 H.J. Lu
|
2010-01-05 H.J. Lu
|
|
|
PR target/42542
|
PR target/42542
|
* config/i386/sse.md (smaxv2di3): New.
|
* config/i386/sse.md (smaxv2di3): New.
|
(umaxv2di3): Likewise.
|
(umaxv2di3): Likewise.
|
(sminv2di3): Likewise.
|
(sminv2di3): Likewise.
|
(uminv2di3): Likewise.
|
(uminv2di3): Likewise.
|
|
|
2010-01-05 Eric Botcazou
|
2010-01-05 Eric Botcazou
|
|
|
PR target/42564
|
PR target/42564
|
* config/sparc/sparc.h (SPARC_SYMBOL_REF_TLS_P): Delete.
|
* config/sparc/sparc.h (SPARC_SYMBOL_REF_TLS_P): Delete.
|
* config/sparc/sparc-protos.h (legitimize_pic_address): Likewise.
|
* config/sparc/sparc-protos.h (legitimize_pic_address): Likewise.
|
(legitimize_tls_address): Likewise.
|
(legitimize_tls_address): Likewise.
|
(sparc_tls_referenced_p): Likewise.
|
(sparc_tls_referenced_p): Likewise.
|
* config/sparc/sparc.c (sparc_expand_move): Use legitimize_tls_address
|
* config/sparc/sparc.c (sparc_expand_move): Use legitimize_tls_address
|
and adjust calls to legitimize_pic_address.
|
and adjust calls to legitimize_pic_address.
|
(legitimate_constant_p) Use sparc_tls_referenced_p.
|
(legitimate_constant_p) Use sparc_tls_referenced_p.
|
(legitimate_pic_operand_p): Likewise.
|
(legitimate_pic_operand_p): Likewise.
|
(sparc_legitimate_address_p): Do not use SPARC_SYMBOL_REF_TLS_P.
|
(sparc_legitimate_address_p): Do not use SPARC_SYMBOL_REF_TLS_P.
|
(sparc_tls_symbol_ref_1): Delete.
|
(sparc_tls_symbol_ref_1): Delete.
|
(sparc_tls_referenced_p): Make static, recognize specific patterns.
|
(sparc_tls_referenced_p): Make static, recognize specific patterns.
|
(legitimize_tls_address): Make static, handle CONST patterns.
|
(legitimize_tls_address): Make static, handle CONST patterns.
|
(legitimize_pic_address): Make static, remove unused parameter and
|
(legitimize_pic_address): Make static, remove unused parameter and
|
adjust recursive calls.
|
adjust recursive calls.
|
(sparc_legitimize_address): Make static, use sparc_tls_referenced_p
|
(sparc_legitimize_address): Make static, use sparc_tls_referenced_p
|
and adjust call to legitimize_pic_address.
|
and adjust call to legitimize_pic_address.
|
(sparc_output_mi_thunk): Likewise.
|
(sparc_output_mi_thunk): Likewise.
|
|
|
2010-01-05 Paolo Bonzini
|
2010-01-05 Paolo Bonzini
|
H.J. Lu
|
H.J. Lu
|
|
|
PR target/42542
|
PR target/42542
|
* config/i386/i386.c (ix86_expand_int_vcond): Convert GTU to GT
|
* config/i386/i386.c (ix86_expand_int_vcond): Convert GTU to GT
|
for V4SI and V2DI by subtracting (-(INT MAX) - 1) from both
|
for V4SI and V2DI by subtracting (-(INT MAX) - 1) from both
|
operands to make them signed.
|
operands to make them signed.
|
|
|
Revert:
|
Revert:
|
2010-01-04 H.J. Lu
|
2010-01-04 H.J. Lu
|
|
|
PR target/42542
|
PR target/42542
|
* config/i386/i386.c (ix86_expand_int_vcond): Don't convert
|
* config/i386/i386.c (ix86_expand_int_vcond): Don't convert
|
GTU to GT for V4SI and V2DI.
|
GTU to GT for V4SI and V2DI.
|
|
|
* config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
|
* config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
|
(umin3): Removed.
|
(umin3): Removed.
|
(uminv8hi3): New.
|
(uminv8hi3): New.
|
(uminv4si3): Likewise.
|
(uminv4si3): Likewise.
|
|
|
2010-01-05 Martin Jambor
|
2010-01-05 Martin Jambor
|
|
|
PR tree-optimization/42462
|
PR tree-optimization/42462
|
* ipa-inline.c (compute_inline_parameters): Pass node->decl instead of
|
* ipa-inline.c (compute_inline_parameters): Pass node->decl instead of
|
current_function_decl to helper functions and macros.
|
current_function_decl to helper functions and macros.
|
|
|
2010-01-05 Rainer Orth
|
2010-01-05 Rainer Orth
|
|
|
PR bootstrap/41771
|
PR bootstrap/41771
|
* flags.h: Don't include real.h.
|
* flags.h: Don't include real.h.
|
(HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES, HONOR_SIGNED_ZEROS,
|
(HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES, HONOR_SIGNED_ZEROS,
|
HONOR_SIGN_DEPENDENT_ROUNDING): Move ...
|
HONOR_SIGN_DEPENDENT_ROUNDING): Move ...
|
* real.h (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES,
|
* real.h (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES,
|
HONOR_SIGNED_ZEROS, HONOR_SIGN_DEPENDENT_ROUNDING): ... here.
|
HONOR_SIGNED_ZEROS, HONOR_SIGN_DEPENDENT_ROUNDING): ... here.
|
* dominance.c: Update copyright.
|
* dominance.c: Update copyright.
|
* gimple.c (walk_gimple_op): Remove inline.
|
* gimple.c (walk_gimple_op): Remove inline.
|
* tree-ssa-reassoc.c: Include real.h.
|
* tree-ssa-reassoc.c: Include real.h.
|
* Makefile.in (FLAGS_H): Remove $(REAL_H).
|
* Makefile.in (FLAGS_H): Remove $(REAL_H).
|
(tree-ssa-reassoc.o): Depend on $(REAL_H).
|
(tree-ssa-reassoc.o): Depend on $(REAL_H).
|
|
|
2010-01-05 Nick Clifton
|
2010-01-05 Nick Clifton
|
|
|
* config/rx/rx.c (rx_get_stack_layout): Fix allocation of second
|
* config/rx/rx.c (rx_get_stack_layout): Fix allocation of second
|
register to push into the stack frame when the accumulator has to
|
register to push into the stack frame when the accumulator has to
|
be saved during interrupts.
|
be saved during interrupts.
|
|
|
2010-01-05 Eric Fisher
|
2010-01-05 Eric Fisher
|
|
|
* doc/invoke.texi: Remove the documentation about option
|
* doc/invoke.texi: Remove the documentation about option
|
-Wunreachable-code.
|
-Wunreachable-code.
|
* common.opt (Wunreachable-code): Preserved for backward
|
* common.opt (Wunreachable-code): Preserved for backward
|
compatibility.
|
compatibility.
|
* tree-cfg.c: Remove the implementation of -Wunreachable-code.
|
* tree-cfg.c: Remove the implementation of -Wunreachable-code.
|
* opts.c (common_handle_option): Add OPT_Wunreachable_code to
|
* opts.c (common_handle_option): Add OPT_Wunreachable_code to
|
the backward compatibility flag section.
|
the backward compatibility flag section.
|
|
|
2010-01-05 Richard Guenther
|
2010-01-05 Richard Guenther
|
|
|
* tree-ssa-pre.c (bitmap_value_insert_into_set): Optimize.
|
* tree-ssa-pre.c (bitmap_value_insert_into_set): Optimize.
|
|
|
2010-01-05 Jakub Jelinek
|
2010-01-05 Jakub Jelinek
|
|
|
PR other/42611
|
PR other/42611
|
* cfgexpand.c (expand_one_var): Diagnose too large variables.
|
* cfgexpand.c (expand_one_var): Diagnose too large variables.
|
|
|
PR tree-optimization/42508
|
PR tree-optimization/42508
|
* tree-sra.c (convert_callers): Check for recursive call
|
* tree-sra.c (convert_callers): Check for recursive call
|
by comparing cgraph nodes instead of decls.
|
by comparing cgraph nodes instead of decls.
|
(modify_function): Call ipa_modify_formal_parameters also
|
(modify_function): Call ipa_modify_formal_parameters also
|
on all same_body aliases.
|
on all same_body aliases.
|
|
|
* cgraphunit.c (cgraph_materialize_all_clones): Compare
|
* cgraphunit.c (cgraph_materialize_all_clones): Compare
|
cgraph nodes when checking for same_body aliases.
|
cgraph nodes when checking for same_body aliases.
|
|
|
2010-01-05 Richard Guenther
|
2010-01-05 Richard Guenther
|
|
|
* tree-ssa-pre.c (get_or_alloc_expr_for_name): Avoid redundant
|
* tree-ssa-pre.c (get_or_alloc_expr_for_name): Avoid redundant
|
allocation and lookup.
|
allocation and lookup.
|
(get_or_alloc_expr_for_constant): Likewise.
|
(get_or_alloc_expr_for_constant): Likewise.
|
(phi_translate): Sink allocation.
|
(phi_translate): Sink allocation.
|
|
|
2010-01-04 Richard Guenther
|
2010-01-04 Richard Guenther
|
|
|
* tree-ssa-sccvn.c (get_or_alloc_constant_value_id): Allocate
|
* tree-ssa-sccvn.c (get_or_alloc_constant_value_id): Allocate
|
a new entry only if needed.
|
a new entry only if needed.
|
* tree-ssa-dom.c (lookup_avail_expr): Likewise.
|
* tree-ssa-dom.c (lookup_avail_expr): Likewise.
|
* tree-ssa-coalesce.c (find_coalesce_pair): Avoid one
|
* tree-ssa-coalesce.c (find_coalesce_pair): Avoid one
|
hashtable lookup.
|
hashtable lookup.
|
* tree-ssa-pre.c (sorted_array_from_bitmap_set): Pre-allocate
|
* tree-ssa-pre.c (sorted_array_from_bitmap_set): Pre-allocate
|
the result array.
|
the result array.
|
(phi_translate): Handle CONSTANTs early.
|
(phi_translate): Handle CONSTANTs early.
|
|
|
2010-01-04 Martin Jambor
|
2010-01-04 Martin Jambor
|
|
|
PR tree-optimization/42398
|
PR tree-optimization/42398
|
* tree-sra.c (struct access): Removed flag grp_different_types.
|
* tree-sra.c (struct access): Removed flag grp_different_types.
|
(dump_access): Do not dump the removed flag.
|
(dump_access): Do not dump the removed flag.
|
(sort_and_splice_var_accesses): Do not set the removed flag.
|
(sort_and_splice_var_accesses): Do not set the removed flag.
|
(sra_modify_expr): Check for type compatibility directly.
|
(sra_modify_expr): Check for type compatibility directly.
|
|
|
2010-01-04 Martin Jambor
|
2010-01-04 Martin Jambor
|
|
|
PR tree-optimization/42366
|
PR tree-optimization/42366
|
* ipa-cp.c (ipcp_init_stage): Always call ipa_compute_jump_functions on
|
* ipa-cp.c (ipcp_init_stage): Always call ipa_compute_jump_functions on
|
edges with variable number of parameters.
|
edges with variable number of parameters.
|
* ipa-prop.c (ipa_write_node_info): Stream out uses_analysis_done
|
* ipa-prop.c (ipa_write_node_info): Stream out uses_analysis_done
|
flag instead of asserting it.
|
flag instead of asserting it.
|
(ipa_read_node_info): Read uses_analysis_done flag.
|
(ipa_read_node_info): Read uses_analysis_done flag.
|
|
|
2010-01-04 Richard Guenther
|
2010-01-04 Richard Guenther
|
|
|
* tree-ssa-sccvn.c (vn_reference_op_compute_hash): Use
|
* tree-ssa-sccvn.c (vn_reference_op_compute_hash): Use
|
iterative_hash_* as intended.
|
iterative_hash_* as intended.
|
(vn_reference_compute_hash): Likewise. Simplify hashing
|
(vn_reference_compute_hash): Likewise. Simplify hashing
|
SSA names.
|
SSA names.
|
(vn_reference_lookup_2): Likewise.
|
(vn_reference_lookup_2): Likewise.
|
(vn_nary_op_compute_hash): Likewise.
|
(vn_nary_op_compute_hash): Likewise.
|
(vn_phi_compute_hash): Likewise.
|
(vn_phi_compute_hash): Likewise.
|
(expressions_equal_p): Remove strange code.
|
(expressions_equal_p): Remove strange code.
|
* tree-ssa-pre.c (pre_expr_eq): Use gcc_unreachable ().
|
* tree-ssa-pre.c (pre_expr_eq): Use gcc_unreachable ().
|
(pre_expr_hash): Likewise. Simplify hashing SSA names.
|
(pre_expr_hash): Likewise. Simplify hashing SSA names.
|
(bitmap_insert_into_set_1): Take value-id as parameter.
|
(bitmap_insert_into_set_1): Take value-id as parameter.
|
(add_to_value): Pass it.
|
(add_to_value): Pass it.
|
(bitmap_insert_into_set): Likewise.
|
(bitmap_insert_into_set): Likewise.
|
(bitmap_value_insert_into_set): Likewise. Remove redundant check.
|
(bitmap_value_insert_into_set): Likewise. Remove redundant check.
|
|
|
2010-01-04 Jakub Jelinek
|
2010-01-04 Jakub Jelinek
|
|
|
PR driver/42442
|
PR driver/42442
|
* gcc.c (SWITCH_IGNORE_PERMANENTLY): Define.
|
* gcc.c (SWITCH_IGNORE_PERMANENTLY): Define.
|
(do_self_spec): For switches with SWITCH_IGNORE set set also
|
(do_self_spec): For switches with SWITCH_IGNORE set set also
|
SWITCH_IGNORE_PERMANENTLY.
|
SWITCH_IGNORE_PERMANENTLY.
|
(check_live_switch): Check SWITCH_IGNORE_PERMANENTLY instead
|
(check_live_switch): Check SWITCH_IGNORE_PERMANENTLY instead
|
of SWITCH_IGNORE.
|
of SWITCH_IGNORE.
|
|
|
2010-01-04 Rafael Avila de Espindola
|
2010-01-04 Rafael Avila de Espindola
|
|
|
* lto-streamer-out.c (output_unreferenced_globals): Output the full
|
* lto-streamer-out.c (output_unreferenced_globals): Output the full
|
tree of an unreferenced global var.
|
tree of an unreferenced global var.
|
|
|
2010-01-04 H.J. Lu
|
2010-01-04 H.J. Lu
|
|
|
PR target/42542
|
PR target/42542
|
* config/i386/i386.c (ix86_expand_int_vcond): Don't convert
|
* config/i386/i386.c (ix86_expand_int_vcond): Don't convert
|
GTU to GT for V4SI and V2DI.
|
GTU to GT for V4SI and V2DI.
|
|
|
* config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
|
* config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
|
(umin3): Removed.
|
(umin3): Removed.
|
(uminv8hi3): New.
|
(uminv8hi3): New.
|
(uminv4si3): Likewise.
|
(uminv4si3): Likewise.
|
|
|
2010-01-04 H.J. Lu
|
2010-01-04 H.J. Lu
|
|
|
PR lto/42581
|
PR lto/42581
|
* collect2.c (main): Turn on trace in collect2 if -v is passed
|
* collect2.c (main): Turn on trace in collect2 if -v is passed
|
to gcc with LTO.
|
to gcc with LTO.
|
|
|
2010-01-03 Jerry Quinn
|
2010-01-03 Jerry Quinn
|
|
|
* doc/c-tree.texi (RETURN_STMT): Change to RETURN_EXPR. Update
|
* doc/c-tree.texi (RETURN_STMT): Change to RETURN_EXPR. Update
|
description of expression operand.
|
description of expression operand.
|
|
|
2010-01-03 Andrew Jenner
|
2010-01-03 Andrew Jenner
|
|
|
* configure.ac: Add install-html to target_list for Make-hooks.
|
* configure.ac: Add install-html to target_list for Make-hooks.
|
* configure: Regenerate.
|
* configure: Regenerate.
|
* fortran/Make-lang.in (F95_HTMLFILES): New.
|
* fortran/Make-lang.in (F95_HTMLFILES): New.
|
(fortran.html): Use it.
|
(fortran.html): Use it.
|
(fortran.install-html): New.
|
(fortran.install-html): New.
|
* Makefile.in (install-html): Add lang.install-html.
|
* Makefile.in (install-html): Add lang.install-html.
|
* java/Make-lang.in (JAVA_HTMLFILES): New.
|
* java/Make-lang.in (JAVA_HTMLFILES): New.
|
(java.html): Use it.
|
(java.html): Use it.
|
(java.install-html): New.
|
(java.install-html): New.
|
* objc/Make-lang.in (objc.install-html): New.
|
* objc/Make-lang.in (objc.install-html): New.
|
* objcp/Make-lang.in (obj-c++.install-html): New.
|
* objcp/Make-lang.in (obj-c++.install-html): New.
|
* cp/Make-lang.in (c++.install-html): New.
|
* cp/Make-lang.in (c++.install-html): New.
|
* ada/gcc-interface/Make-lang.in (ada.install-html): New.
|
* ada/gcc-interface/Make-lang.in (ada.install-html): New.
|
* lto/Make-lang.in (lto.install-html): New.
|
* lto/Make-lang.in (lto.install-html): New.
|
|
|
2010-01-03 H.J. Lu
|
2010-01-03 H.J. Lu
|
|
|
PR lto/42520
|
PR lto/42520
|
* gcc.c (LINK_COMMAND_SPEC): Pass -m* and -v to -plugin-opt.
|
* gcc.c (LINK_COMMAND_SPEC): Pass -m* and -v to -plugin-opt.
|
|
|
2009-01-03 Steven Bosscher
|
2009-01-03 Steven Bosscher
|
|
|
PR rtl-optimization/41862
|
PR rtl-optimization/41862
|
* store-motion.c (store_killed_in_insn, compute_store_table,
|
* store-motion.c (store_killed_in_insn, compute_store_table,
|
remove_reachable_equiv_notes, replace_store_insn,
|
remove_reachable_equiv_notes, replace_store_insn,
|
build_store_vectors): Ignore all DEBUG_INSNs.
|
build_store_vectors): Ignore all DEBUG_INSNs.
|
|
|
2010-01-03 H.J. Lu
|
2010-01-03 H.J. Lu
|
|
|
PR lto/41564
|
PR lto/41564
|
* common.opt: Add dumpdir.
|
* common.opt: Add dumpdir.
|
|
|
* gcc.c (cc1_options): Add "-dumpbase %B" only if -dumpbase
|
* gcc.c (cc1_options): Add "-dumpbase %B" only if -dumpbase
|
isn't specified.
|
isn't specified.
|
(option_map): Add --dumpdir.
|
(option_map): Add --dumpdir.
|
|
|
* gcc.h (DEFAULT_WORD_SWITCH_TAKES_ARG): Add dumpdir.
|
* gcc.h (DEFAULT_WORD_SWITCH_TAKES_ARG): Add dumpdir.
|
|
|
* lto-wrapper.c (run_gcc): Add -dumpbase and -dumpdir for -o.
|
* lto-wrapper.c (run_gcc): Add -dumpbase and -dumpdir for -o.
|
|
|
* opts.c (decode_options): Try dump_dir_name first if
|
* opts.c (decode_options): Try dump_dir_name first if
|
dump_base_name isn't an absolute path.
|
dump_base_name isn't an absolute path.
|
(common_handle_option): Handle OPT_dumpdir.
|
(common_handle_option): Handle OPT_dumpdir.
|
|
|
* toplev.c (dump_dir_name): New.
|
* toplev.c (dump_dir_name): New.
|
(print_switch_values): Also ignore -dumpdir.
|
(print_switch_values): Also ignore -dumpdir.
|
|
|
* toplev.h (dump_dir_name): New.
|
* toplev.h (dump_dir_name): New.
|
|
|
2010-01-03 Richard Guenther
|
2010-01-03 Richard Guenther
|
|
|
PR tree-optimization/42589
|
PR tree-optimization/42589
|
* tree-ssa-math-opts.c (execute_optimize_bswap): Allow
|
* tree-ssa-math-opts.c (execute_optimize_bswap): Allow
|
double-word expansion of bswap32.
|
double-word expansion of bswap32.
|
|
|
2010-01-03 Steven Bosscher
|
2010-01-03 Steven Bosscher
|
|
|
* postreload-gcse.c (insert_expr_in_table): Replace BLOCK_NUM
|
* postreload-gcse.c (insert_expr_in_table): Replace BLOCK_NUM
|
with BLOCK_FOR_INSN.
|
with BLOCK_FOR_INSN.
|
* auto-inc-dec.c (attempt_change, get_next_ref, find_inc): Likewise.
|
* auto-inc-dec.c (attempt_change, get_next_ref, find_inc): Likewise.
|
* ifcvt.c (noce_get_alt_condition, noce_try_abs,
|
* ifcvt.c (noce_get_alt_condition, noce_try_abs,
|
noce_process_if_block): Likewise.
|
noce_process_if_block): Likewise.
|
* gcse.c (compute_local_properties, insert_expr_in_table,
|
* gcse.c (compute_local_properties, insert_expr_in_table,
|
insert_set_in_table, canon_list_insert, find_avail_set,
|
insert_set_in_table, canon_list_insert, find_avail_set,
|
pre_insert_copy_insn): Likewise.
|
pre_insert_copy_insn): Likewise.
|
|
|
* basic-block.h (BLOCK_NUM): Move from here...
|
* basic-block.h (BLOCK_NUM): Move from here...
|
* sched-int.h (BLOCK_NUM): ... to here to localize it in the scheduler.
|
* sched-int.h (BLOCK_NUM): ... to here to localize it in the scheduler.
|
|
|
2010-01-03 Richard Guenther
|
2010-01-03 Richard Guenther
|
|
|
PR tree-optimization/42438
|
PR tree-optimization/42438
|
* tree-ssa-pre.c (struct bb_bitmap_sets): Add
|
* tree-ssa-pre.c (struct bb_bitmap_sets): Add
|
contains_may_not_return_call flag.
|
contains_may_not_return_call flag.
|
(BB_MAY_NOTRETURN): New.
|
(BB_MAY_NOTRETURN): New.
|
(valid_in_sets): Trapping nary operations are not valid
|
(valid_in_sets): Trapping nary operations are not valid
|
in blocks that may not return.
|
in blocks that may not return.
|
(insert_into_preds_of_block): Remove check for trapping expressions.
|
(insert_into_preds_of_block): Remove check for trapping expressions.
|
(compute_avail): Compute also BB_MAY_NOTRETURN.
|
(compute_avail): Compute also BB_MAY_NOTRETURN.
|
|
|
2010-01-03 Gerald Pfeifer
|
2010-01-03 Gerald Pfeifer
|
|
|
* doc/invoke.texi: Add 2010 to copyright years.
|
* doc/invoke.texi: Add 2010 to copyright years.
|
|
|
2010-01-03 Eric Botcazou
|
2010-01-03 Eric Botcazou
|
|
|
* config/sparc/sparc.c: Fix formatting nits.
|
* config/sparc/sparc.c: Fix formatting nits.
|
|
|
2010-01-02 Gerald Pfeifer
|
2010-01-02 Gerald Pfeifer
|
Alexander Monakov
|
Alexander Monakov
|
|
|
* doc/invoke.texi (Optimize Options): Reword introduction a bit.
|
* doc/invoke.texi (Optimize Options): Reword introduction a bit.
|
|
|
2010-01-02 Richard Guenther
|
2010-01-02 Richard Guenther
|
|
|
PR middle-end/42577
|
PR middle-end/42577
|
* tree-vrp.c (check_all_array_refs): Skip non-excutable blocks.
|
* tree-vrp.c (check_all_array_refs): Skip non-excutable blocks.
|
(simplify_switch_using_ranges): Mark to be removed edges
|
(simplify_switch_using_ranges): Mark to be removed edges
|
as non-executable.
|
as non-executable.
|
|
|
2010-01-02 John David Anglin
|
2010-01-02 John David Anglin
|
|
|
* config/pa/t-slibgcc-dwarf-ver (SHLIB_SOVERSION): Bump by two.
|
* config/pa/t-slibgcc-dwarf-ver (SHLIB_SOVERSION): Bump by two.
|
|
|
* collect2.c (scan_libraries): Add missing argument in call to
|
* collect2.c (scan_libraries): Add missing argument in call to
|
scan_prog_file.
|
scan_prog_file.
|
|
|
2010-01-02 Uros Bizjak
|
2010-01-02 Uros Bizjak
|
|
|
PR target/42448
|
PR target/42448
|
* config/alpha/predicates.md (aligned_memory_operand): Return false
|
* config/alpha/predicates.md (aligned_memory_operand): Return false
|
for CQImode.
|
for CQImode.
|
(unaligned_memory_operand): Return true for CQImode.
|
(unaligned_memory_operand): Return true for CQImode.
|
* config/alpha/alpha.c (get_aligned_mem): Assert that location
|
* config/alpha/alpha.c (get_aligned_mem): Assert that location
|
doesn not cross aligned SImode word boundary.
|
doesn not cross aligned SImode word boundary.
|
|
|
2010-01-02 Anatoly Sokolov
|
2010-01-02 Anatoly Sokolov
|
|
|
* config/avr/avr.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P, XEXP_):
|
* config/avr/avr.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P, XEXP_):
|
Remove.
|
Remove.
|
* config/avr/avr-protos.h (avr_init_once, avr_optimization_options,
|
* config/avr/avr-protos.h (avr_init_once, avr_optimization_options,
|
avr_change_section, avr_reg_class_from_letter) : Remove declaration.
|
avr_change_section, avr_reg_class_from_letter) : Remove declaration.
|
|
|
2010-01-02 Richard Guenther
|
2010-01-02 Richard Guenther
|
|
|
PR lto/41597
|
PR lto/41597
|
* toplev.c (compile_file): Emit LTO marker properly. Change
|
* toplev.c (compile_file): Emit LTO marker properly. Change
|
it to __gnu_lto_v1.
|
it to __gnu_lto_v1.
|
* collect2.c (scan_prog_file): Adjust for changed LTO marker.
|
* collect2.c (scan_prog_file): Adjust for changed LTO marker.
|
|
|
2010-01-01 Richard Guenther
|
2010-01-01 Richard Guenther
|
|
|
PR debug/42455
|
PR debug/42455
|
* tree-sra.c (analyze_all_variable_accesses): Work in DECL_UID order.
|
* tree-sra.c (analyze_all_variable_accesses): Work in DECL_UID order.
|
|
|
2010-01-01 Richard Guenther
|
2010-01-01 Richard Guenther
|
|
|
PR c/42570
|
PR c/42570
|
* c-decl.c (grokdeclarator): For zero-size arrays force
|
* c-decl.c (grokdeclarator): For zero-size arrays force
|
structural equality checks as layout_type does.
|
structural equality checks as layout_type does.
|
|
|
2010-01-01 H.J. Lu
|
2010-01-01 H.J. Lu
|
|
|
* builtins.c: Update copyright to 2010.
|
* builtins.c: Update copyright to 2010.
|
|
|
2010-01-01 H.J. Lu
|
2010-01-01 H.J. Lu
|
|
|
PR lto/42531
|
PR lto/42531
|
* lto-streamer-out.c (produce_asm): Revert the last change.
|
* lto-streamer-out.c (produce_asm): Revert the last change.
|
(copy_function): Likewise.
|
(copy_function): Likewise.
|
|
|
* lto-streamer.c (lto_get_section_name): Skip any leading
|
* lto-streamer.c (lto_get_section_name): Skip any leading
|
asterisk in name.
|
asterisk in name.
|
|
|
2010-01-01 Richard Guenther
|
2010-01-01 Richard Guenther
|
|
|
PR middle-end/42559
|
PR middle-end/42559
|
* builtins.c (get_object_alignment): Do not use DECL_ALIGN
|
* builtins.c (get_object_alignment): Do not use DECL_ALIGN
|
for LABEL_DECLs.
|
for LABEL_DECLs.
|
|
|
|
|
Copyright (C) 2010 Free Software Foundation, Inc.
|
Copyright (C) 2010 Free Software Foundation, Inc.
|
|
|
Copying and distribution of this file, with or without modification,
|
Copying and distribution of this file, with or without modification,
|
are permitted in any medium without royalty provided the copyright
|
are permitted in any medium without royalty provided the copyright
|
notice and this notice are preserved.
|
notice and this notice are preserved.
|
|
|