bernds [Wed, 30 Jun 2010 14:16:28 +0000 (14:16 +0000)]
PR tree-optimization/39799
* tree-inline.c (remap_ssa_name): Initialize variable only if
SSA_NAME_OCCURS_IN_ABNORMAL_PHI.
testsuite/
PR tree-optimization/39799
* c-c++-common/uninit-17.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161605
138bc75d-0d04-0410-961f-
82ee72b054a4
froydnj [Wed, 30 Jun 2010 12:20:54 +0000 (12:20 +0000)]
gcc/
* c-parser.c (c_parser_omp_for_loop): Use a VEC for for_block.
gcc/cp/
* parser.c (cp_parser_omp_for_loop): Use a VEC for for_block.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161599
138bc75d-0d04-0410-961f-
82ee72b054a4
froydnj [Wed, 30 Jun 2010 12:13:34 +0000 (12:13 +0000)]
* repo.c (pending_repo): Change type to a VEC.
(finish_repo): Adjust for new type of pending_repo.
(repo_emit_p): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161598
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 30 Jun 2010 11:09:37 +0000 (11:09 +0000)]
2010-06-30 Richard Guenther <rguenther@suse.de>
PR target/44722
* config/i386/i386.md (peephole2 for fix:SSEMODEI24): Guard
against oscillation with reverse peephole2.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161597
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 30 Jun 2010 09:47:25 +0000 (09:47 +0000)]
2010-06-30 H.J. Lu <hongjiu.lu@intel.com>
PR target/44721
* config/i386/i386.md (peephole2 for arithmetic ops with memory):
Fix last commit.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161594
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Wed, 30 Jun 2010 08:50:14 +0000 (08:50 +0000)]
* config/rx/rx-modes.def: New file.
* config/rx/rx.h (FIRST_PSEUDO_REGISTER): Increase to 17.
(CC_REGNUM): Define.
(FIXED_REGISTERS, CALL_USED_REGISTERS, REGISTER_NAMES): Add cc
register.
(CC_NO_CARRY, NOTICE_UPDATE_CC): Delete.
(SELECT_CC_MODE): Define.
* config/rx/rx.md (CC_REG): Define. Update all patterns to use
(reg:CC CC_REG) instead of (cc0).
(attr "cc"): Delete.
(cbranchsi4): Do not split compare and branch here. Instead move
it to...
(cbranchsi4_<code>): ... here. New patterns.
(cmpsi): Call rx-compare_redundant to find out if it is necessary
to emit the compare instruction.
* config/rx/rx.c (rx_gen-cond_branch_template): Remove tests of
cc_status flags.
(rx_get_stack_layout): Iterate up to before CC_REGNUM not
FIRST_PSEUDO_REGNUM.
(rx_expand_prologue, rx_expand_epilogue): Likewise.
(rx_notice_update_cc): Delete.
(rx_cc_modes_compatible): New function.
(flags_needed_for_conditional): New function.
(flags_from_mode): New function.
(rx_compare_redundant): New function - scans backwards through
insn list to find out if condition flags are already set
correctly.
(TARGET_CC_MODES_COMPATIBLE): Define.
* config/rx/rx-protos.h (rx_compare_redundant): Prototype.
* config/rx/rx.h (BRANCH_COST): Define.
(REGISTER_MOVE_COST): Define.
* config/rx/predicates (rx_source_operand): Allow all constant
types.
* config/rx/rx.md (addsi3): Add alternative for swapped operands.
(tstsi4): New pattern.
* config/rx/rx.c (rx_memory_move_cost): Define.
(TARGET_MEMORY_MOVE_COST): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161592
138bc75d-0d04-0410-961f-
82ee72b054a4
manu [Wed, 30 Jun 2010 07:39:21 +0000 (07:39 +0000)]
2010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
* tree.h (block_may_fallthru): Declare here.
* tree-flow.h (block_may_fallthru): Do not declare here.
* c-typeck.c: Do not include tree-flow.h. Include gimple.h and
bitmap.h
* Makefile.in (c-typeck.o): Update dependencies.
c-family/
* c-gimplify.c: Do not include tree-flow.h
cp/
* tree.c: Include gimple.h. Do not include tree-flow.h
* decl.c: Do not include tree-flow.h
* Make-lang.in: Adjust dependencies.
ada/
* gcc-interface/trans.c: Do not include tree-flow.h.
* gcc-interface/Make-lang.in: Adjust dependencies.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161591
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Wed, 30 Jun 2010 06:12:22 +0000 (06:12 +0000)]
PR debug/44694
* cselib.h (cselib_preserve_cfa_base_value): Add regno argument.
* cselib.c (cfa_base_preserved_regno): New static variable.
(cselib_reset_table): Don't reset cfa_base_preserved_regno instead
of REGNO (cfa_base_preserved_val->locs->loc).
(cselib_preserve_cfa_base_value): Add regno argument, set
cfa_base_preserved_regno to it.
(cselib_invalidate_regno): Allow removal of registers other than
cfa_base_preserved_regno from cfa_base_preserved_val.
(cselib_finish): Set cfa_base_preserved_regno to INVALID_REGNUM.
* var-tracking.c (adjust_mems): Replace sp or hfp even outside
of MEM addresses, if not on LHS.
(reverse_op): Don't add reverse ops for cfa_base_rtx.
(vt_init_cfa_base): Adjust cselib_preserve_cfa_base_value caller.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161587
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Wed, 30 Jun 2010 01:38:42 +0000 (01:38 +0000)]
2010-06-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/43298
* gfortran.dg/read_infnan_1.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161586
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Wed, 30 Jun 2010 01:35:56 +0000 (01:35 +0000)]
2010-06-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/43298
* io/read.c: Add code to parse and read Inf, Infinity, NaN, and Nan with
optional parenthesis.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161585
138bc75d-0d04-0410-961f-
82ee72b054a4
froydnj [Wed, 30 Jun 2010 01:26:14 +0000 (01:26 +0000)]
* decl.c (incomplete_var): Declare. Declare VECs containing them.
(incomplete_vars): Adjust comment. Change type to a VEC.
(maybe_register_incomplete_var): Adjust for new type.
(complete_vars): Adjust iteration over incomplete_vars.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161584
138bc75d-0d04-0410-961f-
82ee72b054a4
froydnj [Wed, 30 Jun 2010 01:24:53 +0000 (01:24 +0000)]
* decl.c (struct named_label_entry): Change type of bad_decls field
to a VEC.
(poplevel_named_label_1): Adjust for new type of bad_decls.
(check_goto): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161583
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 30 Jun 2010 00:51:44 +0000 (00:51 +0000)]
Enable implicitly declared move constructor/operator= (N3053).
gcc/cp/
* class.c (add_implicitly_declared_members): A class with no
explicitly declared copy or move constructor gets both declared
implicitly, and similarly for operator=.
(check_bases): A type with no copy ctor does not inhibit
a const copy ctor in a derived class.
(check_field_decl): Likewise.
(check_bases_and_members): A nonexistent copy ctor/op= is non-trivial.
* tree.c (type_has_nontrivial_copy_init): Adjust semantics.
(trivially_copyable_p): Likewise.
* call.c (convert_like_real): Use type_has_nontrivial_copy_init.
* class.c (finish_struct_bits): Likewise.
* tree.c (build_target_expr_with_type): Likewise.
* typeck2.c (store_init_value): Likewise.
libstdc++-v3/
* include/bits/unordered_map.h: Explicitly default copy constructors.
* include/bits/unordered_set.h: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161582
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 30 Jun 2010 00:51:29 +0000 (00:51 +0000)]
Enable implicitly deleted functions (N2346)
* class.c (check_bases_and_members): Adjust lambda flags.
* method.c (implicitly_declare_fn): Set DECL_DELETED_FN if appropriate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161581
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 30 Jun 2010 00:51:13 +0000 (00:51 +0000)]
* decl2.c (mark_used): Adjust error for use of deleted function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161580
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 30 Jun 2010 00:50:57 +0000 (00:50 +0000)]
Machinery to support implicit delete/move.
* cp-tree.h: (struct lang_type_class): Add lazy_move_assign,
has_complex_move_ctor, has_complex_move_assign bitfields.
(CLASSTYPE_LAZY_MOVE_ASSIGN): New.
(TYPE_HAS_COMPLEX_MOVE_ASSIGN): New.
(TYPE_HAS_COMPLEX_MOVE_CTOR): New.
(enum special_function_kind): Add sfk_move_assignment.
(LOOKUP_SPECULATIVE): New.
* call.c (build_over_call): Return early if it's set.
(build_over_call): Use trivial_fn_p.
* class.c (check_bases): If the base has no default constructor,
the derived one is non-trivial. Handle move ctor/op=.
(check_field_decl): Likewise.
(check_bases_and_members): Handle move ctor/op=.
(add_implicitly_declared_members): Handle CLASSTYPE_LAZY_MOVE_ASSIGN.
(type_has_move_constructor, type_has_move_assign): New.
* decl.c (grok_special_member_properties): Handle move ctor/op=.
* method.c (type_has_trivial_fn, type_set_nontrivial_flag): New.
(trivial_fn_p): New.
(do_build_copy_constructor): Use it.
(do_build_assign_ref): Likewise. Handle move assignment.
(build_stub_type, build_stub_object, locate_fn_flags): New.
(locate_ctor): Use locate_fn_flags.
(locate_copy, locate_dtor): Remove.
(get_dtor, get_default_ctor, get_copy_ctor, get_copy_assign): New.
(process_subob_fn, synthesized_method_walk): New.
(maybe_explain_implicit_delete): New.
(implicitly_declare_fn): Use synthesized_method_walk,
type_has_trivial_fn, and type_set_nontrivial_flag.
(defaulted_late_check): Set DECL_DELETED_FN.
(defaultable_fn_check): Handle sfk_move_assignment.
(lazily_declare_fn): Clear CLASSTYPE_LAZY_* early. Don't declare
implicitly deleted move ctor/op=.
* search.c (lookup_fnfields_1): Handle sfk_move_assignment.
(lookup_fnfields_slot): New.
* semantics.c (omp_clause_info_fndecl): Remove.
(cxx_omp_create_clause_info): Use get_default_ctor, get_copy_ctor,
get_copy_assign, trivial_fn_p.
(trait_expr_value): Adjust call to locate_ctor.
* tree.c (special_function_p): Handle sfk_move_assignment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161579
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 30 Jun 2010 00:50:45 +0000 (00:50 +0000)]
* class.c (type_has_virtual_destructor): New.
* cp-tree.h: Declare it.
* semantics.c (trait_expr_value): Use it.
* call.c (build_over_call): Only give warnings with tf_warning.
* name-lookup.c (pop_scope): Handle NULL_TREE.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161578
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 30 Jun 2010 00:50:34 +0000 (00:50 +0000)]
* cp-tree.h (TYPE_HAS_ASSIGN_REF): Rename to TYPE_HAS_COPY_ASSIGN.
(TYPE_HAS_CONST_ASSIGN_REF): Rename to TYPE_HAS_CONST_COPY_ASSIGN.
(TYPE_HAS_INIT_REF): Rename to TYPE_HAS_COPY_CTOR.
(TYPE_HAS_CONST_INIT_REF): Rename to TYPE_HAS_CONST_COPY_CTOR.
(TYPE_HAS_COMPLEX_ASSIGN_REF): Rename to TYPE_HAS_COMPLEX_COPY_ASSIGN.
(TYPE_HAS_COMPLEX_INIT_REF): Rename to TYPE_HAS_COMPLEX_COPY_CTOR.
(TYPE_HAS_TRIVIAL_ASSIGN_REF): Rename to TYPE_HAS_TRIVIAL_COPY_ASSIGN.
(TYPE_HAS_TRIVIAL_INIT_REF): Rename to TYPE_HAS_TRIVIAL_COPY_CTOR.
(CLASSTYPE_LAZY_ASSIGNMENT_OP): Rename to CLASSTYPE_LAZY_COPY_ASSIGN.
(sfk_assignment_operator): Rename to sfk_copy_assignment.
* decl.c, call.c, class.c, init.c, method.c, pt.c, ptree.c: Adjust.
* search.c, semantics.c, tree.c: Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161577
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 30 Jun 2010 00:17:19 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161574
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Tue, 29 Jun 2010 22:29:30 +0000 (22:29 +0000)]
* recog.c (peep2_do_rebuild_jump_labels, peep2_do_cleanup_cfg): New
static variables.
(peep2_buf_position): New static function.
(peep2_regno_dead_p, peep2_reg_dead_p, peep2_find_free_register,
peephole2_optimize): Use it.
(peep2_attempt, peep2_update_life): New static functions, broken out
of peephole2_optimize.
(peep2_fill_buffer): New static function.
(peephole2_optimize): Change the main loop to try to fill the buffer
with the maximum number of insns before matching them against
peepholes. Use a forward scan. Remove special case for targets with
conditional execution.
* genrecog.c (change_state): Delete dead code.
* config/i386/i386.md (peephole2 for arithmetic ops with memory):
Rewrite so as not to expect the second insn to have had a peephole
applied yet.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161570
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Tue, 29 Jun 2010 21:40:38 +0000 (21:40 +0000)]
2010-06-29 Janus Weil <janus@gcc.gnu.org>
PR fortran/44718
* resolve.c (is_external_proc): Prevent procedure pointers from being
regarded as external procedures.
2010-06-29 Janus Weil <janus@gcc.gnu.org>
PR fortran/44718
* gfortran.dg/proc_ptr_28.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161569
138bc75d-0d04-0410-961f-
82ee72b054a4
froydnj [Tue, 29 Jun 2010 20:54:53 +0000 (20:54 +0000)]
* genhooks.c (emit_findices): Cast field precision to int.
(emit_documentation): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161568
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 29 Jun 2010 19:46:05 +0000 (19:46 +0000)]
PR tree-optimization/43801
* cgraph.c (cgraph_create_virtual_clone): Clear DECL_SECTION_NAME
if old_decl was DECL_ONE_ONLY.
* g++.dg/torture/pr43801.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161564
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 29 Jun 2010 19:37:46 +0000 (19:37 +0000)]
PR debug/44668
* dwarf2out.c (add_accessibility_attribute): New function.
(gen_subprogram_die, gen_variable_die, gen_field_die): Use it
instead of adding DW_AT_accessibility manually.
(gen_enumeration_type_die, gen_struct_or_union_type_die,
gen_typedef_die): Use it.
* g++.dg/debug/dwarf2/accessibility1.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161563
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 29 Jun 2010 19:29:14 +0000 (19:29 +0000)]
* pt.c (dependent_scope_ref_p): Remove.
(value_dependent_expression_p): Don't call it.
(type_dependent_expression_p): Here either.
* init.c (build_offset_ref): Set TREE_TYPE on a qualified-id
if the scope isn't dependent.
* pt.c (convert_nontype_argument): Use mark_lvalue_use if we want
a reference.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161560
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 29 Jun 2010 19:29:02 +0000 (19:29 +0000)]
PR c++/44587
* pt.c (has_value_dependent_address): New.
(value_dependent_expression_p): Check it.
(convert_nontype_argument): Likewise. Call decay_conversion before
folding if we want a pointer.
* semantics.c (finish_id_expression): Don't add SCOPE_REF if the
scope is the current instantiation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161559
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Tue, 29 Jun 2010 19:26:56 +0000 (19:26 +0000)]
* config/m68k/m68k.c (targetm.sched.init_global): Update comment.
(targetm.sched.init): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161558
138bc75d-0d04-0410-961f-
82ee72b054a4
rupp [Tue, 29 Jun 2010 19:15:12 +0000 (19:15 +0000)]
* vmsdbgout.c (full_name): Just output the file name if not native.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161557
138bc75d-0d04-0410-961f-
82ee72b054a4
rupp [Tue, 29 Jun 2010 19:11:47 +0000 (19:11 +0000)]
* vmsdbgout.c (func_table): Replace with VEC func{nam,num}_tables.
(funcnam_table): New static table.
(funcnum_table): New static table.
(write_rtnbeg): Write value saved in funcnum_table.
(write_rtnend): Write value saved in funcnum_table.
(vmsdbgout_begin_function): Save current function info in
(vmsdbgout_init): Initialize func{nam,num}_tables. Minor reformatting.
(vmsdbgout_finish): Iterate over funcnum_table.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161556
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Tue, 29 Jun 2010 19:09:25 +0000 (19:09 +0000)]
* Makefile.in (s-tm-texi): Remove stray tab / rule.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161555
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Tue, 29 Jun 2010 19:06:07 +0000 (19:06 +0000)]
2010-06-29 Janus Weil <janus@gcc.gnu.org>
PR fortran/44696
* trans-intrinsic.c (gfc_conv_associated): Handle polymorphic variables
passed as second argument of ASSOCIATED.
2010-06-29 Janus Weil <janus@gcc.gnu.org>
PR fortran/44696
* gfortran.dg/associated_target_4.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161554
138bc75d-0d04-0410-961f-
82ee72b054a4
rupp [Tue, 29 Jun 2010 19:05:53 +0000 (19:05 +0000)]
* vmsdbgout.c (vmsdbgout_begin_epilogue): Declare
(vmsdbgout_type_decl): Declare
(vmsdbg_debug_hooks): Add entry for type_decl and begin_epilogue.
(FUNC_EPILOGUE_LABEL): New macro
(vmsdbgout_begin_epilogue): New function.
(vmsdbgout_type_decl): New function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161553
138bc75d-0d04-0410-961f-
82ee72b054a4
rupp [Tue, 29 Jun 2010 19:04:12 +0000 (19:04 +0000)]
Committed as obvious.
* vmsdbg.h: Update copyright.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161552
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Tue, 29 Jun 2010 18:57:43 +0000 (18:57 +0000)]
2010-06-29 Paul Thomas <pault@gcc.gnu.org>
PR fortran/44582
* trans-expr.c (arrayfunc_assign_needs_temporary): New function
to determine if a function assignment can be made without a
temporary.
(gfc_trans_arrayfunc_assign): Move all the conditions that
suppress the direct function call to the above new functon and
call it.
2010-06-29 Paul Thomas <pault@gcc.gnu.org>
PR fortran/44582
* gfortran.dg/aliasing_array_result_1.f90 : New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161550
138bc75d-0d04-0410-961f-
82ee72b054a4
rupp [Tue, 29 Jun 2010 18:53:39 +0000 (18:53 +0000)]
* vmsdbg.h (DST_K_TBG): New DST constant.
* vmsdbgout.c (addr_const_to_string): Removed, not referenced.
(write_modbeg): Cast module_language to avoid warning.
(write_rtnbeg): Use DST_K_TBG vice magic mystery number.
Minor reformatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161549
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Tue, 29 Jun 2010 18:22:00 +0000 (18:22 +0000)]
gcc:
PR other/44034
* target.def, doc/tm.texi.in, genhooks.c: New files.
* target.h: Instead of defining individual hook members,
define DEFHOOKPOD / DEFHOOK / DEFHOOK_UNDOC / HOOKSTRUCT and
include target.def.
* target-def.h: Instead of defining individual hook initializers,
include target-hooks-def.h.
* df-scan.c, haifa-sched.c, sel-sched.c: Rename targetm members:
targetm.live_on_entry -> targetm.extra_live_on_entry
targetm.sched.md_finish ->targetm.sched.finish
targetm.sched.md_init -> targetm.sched.init
targetm.sched.md_init_global -> targetm.sched.init_global
targetm.asm_out.unwind_label -> targetm.asm_out.emit_unwind_label
targetm.asm_out.except_table_label ->
targetm.asm_out.emit_except_table_label
targetm.asm_out.visibility -> targetm.asm_out.assemble_visibility
targetm.target_help -> targetm.help
targetm.vectorize.builtin_support_vector_misalignment ->
targetm.vectorize.support_vector_misalignment
targetm.file_start_app_off -> targetm.asm_file_start_app_off
targetm.file_start_file_directive ->
targetm.asm_file_start_file_directive
* dwarf2out.c, opts.c, tree-vect-data-refs.c, except.c: Likewise.
* varasm.c, config/alpha/alpha.c, config/cris/cris.c: Likewise.
* gcc/config/spu/spu.c, config/ia64/ia64.c: Rename target macros:
TARGET_VECTOR_ALIGNMENT_REACHABLE ->
TARGET_VECTORIZE_VECTOR_ALIGNMENT_REACHABLE
TARGET_SUPPORT_VECTOR_MISALIGNMENT ->
TARGET_VECTORIZE_SUPPORT_VECTOR_MISALIGNMENT
TARGET_UNWIND_EMIT -> TARGET_ASM_UNWIND_EMIT
* config/rs6000/rs6000.c, config/arm/arm.c: Likewise.
* Makefile.in (TARGET_H): Depend on target.def.
(TARGET_DEF_H): Depend on target-hooks-def.h.
(target-hooks-def.h, tm.texi, s-target-hooks-def-h): New rules.
(s-tm-texi, build/genhooks.o, build/genhooks): Likewise.
* doc/tm.texi: Regenerate.
gcc/c-family:
* c-common.c: Rename targetm member:
targetm.enum_va_list -> targetm.enum_va_list_p
gcc/po:
* EXCLUDES: Add genhooks.c.
Index: gcc/doc/tm.texi
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161547
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Tue, 29 Jun 2010 16:35:06 +0000 (16:35 +0000)]
* lib/lto.exp (lto_prune_warns): Also accept leading single quote.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161541
138bc75d-0d04-0410-961f-
82ee72b054a4
froydnj [Tue, 29 Jun 2010 15:57:06 +0000 (15:57 +0000)]
PR bootstrap/44713
* config/i386/i386.c (type_natural_mode): Const-ify CUM parameter.
(function_arg_advance_32): Const-ify TYPE parameter.
(function_arg_advance_64): Likewise. Change type of NAMED to bool.
(ix86_function_arg_advance): Change type of NAMED to bool.
(function_arg_32): Const-ify CUM and TYPE parameters.
(function_arg_64): Likewise. Change type of NAMED to bool.
(function_arg_ms_64): Const-ify CUM parameter. Change type of NAMED
to bool.
(ix86_function_arg): Change type of NAMED to bool.
(ix86_setup_incoming_varargs): Call ix86_function_arg_advance. Pass
last argument as a bool.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161540
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Tue, 29 Jun 2010 15:03:06 +0000 (15:03 +0000)]
ChangeLog typo fix.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161539
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Tue, 29 Jun 2010 14:38:13 +0000 (14:38 +0000)]
* doc/tm.texi (TARGET_OPTION_OVERRIDE): Document.
(OVERRIDE_OPTIONS): Add note of obsolescence.
Replace references with references to TARGET_OPTION_OVERRIDE.
(Except for C_COMMON_OVERRIDE_OPTIONS, which remains similar to
the macro).
* targhooks.c (default_target_option_override): New function.
* targhooks.h (default_target_option_override): Declare.
* target.h (struct gcc_target): Add override member to
target_option emmber.
* toplev.c (process_options): Replace OVERRIDE_OPTIONS use with
targetm.target_option.override call.
* target-def.h (TARGET_OPTION_OVERRIDE): Define.
(TARGET_OPTION_HOOKS): Add TARGET_OPTION_OVERRIDE.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161538
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Tue, 29 Jun 2010 14:26:00 +0000 (14:26 +0000)]
* tree-inline.c: Replace incomming by incomin and clonning by cloning.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161537
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Tue, 29 Jun 2010 14:14:15 +0000 (14:14 +0000)]
* predict.c (propagate_freq): Clear EXIT_BLOCK_PTR frequency if it is
unreachable.
(rebuild_frequencies): New function.
* predict.h (rebuild_frequencies): Declare.
* tree-inline.c (copy_cfg_body): Compute properly count & frequency of
entry block and edge reaching new_entry.
(tree_function_versioning): When doing partial cloning, rebuild frequencies
when done.
* passes.c (execute_function_todo): Use rebild_frequencies.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161536
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 29 Jun 2010 14:02:23 +0000 (14:02 +0000)]
2010-06-29 Richard Guenther <rguenther@suse.de>
* tree-dfa.c (dump_variable): Remove noalias_state dumping.
* tree-flow.h (enum noalias_state): Remove.
(struct var_ann_d): Remove noalias_state member.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161535
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Tue, 29 Jun 2010 13:51:37 +0000 (13:51 +0000)]
Revert parts of the change for PR25130.
* cse.c (exp_equiv_p): For MEMs, if for_gcse, only compare
MEM_ALIAS_SET.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161534
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Tue, 29 Jun 2010 13:43:57 +0000 (13:43 +0000)]
PR target/43902
* config/arm/arm.md (maddsidi4, umaddsidi4): New expanders.
(maddhisi4): Renamed from mulhisi3addsi. Operands renumbered.
(maddhidi4): Likewise.
testsuite/
PR target/43902
* gcc.target/arm/wmul-1.c: Test for smlabb instead of smulbb.
* gcc.target/arm/wmul-3.c: New test.
* gcc.target/arm/wmul-4.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161533
138bc75d-0d04-0410-961f-
82ee72b054a4
froydnj [Tue, 29 Jun 2010 12:24:04 +0000 (12:24 +0000)]
* calls.c, dse.c, expr.c, function.c: Call targetm.calls.function_arg,
targetm.calls.function_incoming_arg, and
targetm.calls.function_arg_advance instead of FUNCTION_ARG,
FUNCTION_INCOMING_ARG, and FUNCTION_ARG_ADVANCE, respectively.
* target.h (struct gcc_target): Add function_arg_advance,
function_arg, and function_incoming_arg fields.
* target-def.h (TARGET_FUNCTION_ARG_ADVANCE, TARGET_FUNCTION_ARG):
(TARGET_FUNCTION_INCOMING_ARG): Define.
(TARGET_CALLS): Add TARGET_FUNCTION_ARG_ADVANCE, TARGET_FUNCTION_ARG,
and TARGET_FUNCTION_INCOMING_ARG.
* targhooks.h (default_function_arg_advance): Declare.
(default_function_arg, default_function_incoming_arg): Declare.
* targhooks.c (default_function_arg_advance): New function.
(default_function_arg, default_function_incoming_arg): New function.
* config/i386/i386.c (function_arg_advance): Rename to...
(ix86_function_arg_advance): ...this. Make static.
(function_arg): Rename to...
(ix86_function_arg): ...this. Make static.
(TARGET_FUNCTION_ARG_ADVANCE): Define.
(TARGET_FUNCTION_ARG): Define.
* config/i386/i386.h (FUNCTION_ARG_ADVANCE): Delete.
(FUNCTION_ARG): Delete.
* config/i386/i386-protos.h (function_arg_advance): Delete prototype.
(function_arg): Delete prototype.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161530
138bc75d-0d04-0410-961f-
82ee72b054a4
froydnj [Tue, 29 Jun 2010 12:21:37 +0000 (12:21 +0000)]
* gcc-interface/gigi.h (gnat_build_constructor): Take a VEC instead
of a TREE_LIST. Update comment.
* gcc-interface/trans.c (gigi): Build a VEC instead of a TREE_LIST.
Adjust call to gnat_build_constructor.
(Attribute_to_gnu): Likewise.
(gnat_to_gnu): Likewise.
(pos_to_constructor): Likewise.
(extract_values): Likewise.
* gcc-interface/utils.c (build_template): Likewise.
(convert_vms_descriptor64): Likewise.
(convert_vms_descriptor32): Likewise.
(convert_to_fat_pointer): Likewise.
(convert): Likewise.
(unchecked_convert): Likewise.
* gcc-interface/decl.c (gnat_to_gnu_entity): Likewise.
* gcc-interface/utils2.c (build_allocator): Likewise.
(fill_vms_descriptor): Likewise.
(gnat_build_constructor): Take a VEC instead of a TREE_LIST.
(compare_elmt_bitpos): Adjust for parameters being constructor_elts
instead of TREE_LISTs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161529
138bc75d-0d04-0410-961f-
82ee72b054a4
froydnj [Tue, 29 Jun 2010 12:18:36 +0000 (12:18 +0000)]
* reginfo.c (init_reg_sets_1): Adjust comments.
* combine-stack-adj.c (rest_of_handle_stack_adjustments): Likewise.
* calls.c (prepare_call_address): Likewise.
(emit_call_1): Use targetm.calls.return_pops_args.
(expand_call): Likewise.
* function.c (assign_parms): Likewise.
* system.h (RETURN_POPS_ARGS): Add to #pragma poison list.
* target.h (struct gcc_target) [struct calls]: Add
return_pops_args field.
* targhooks.h (default_return_pops_args): Declare.
* targhooks.c (default_return_pops_args): Define.
* target-def.h (TARGET_RETURN_POPS_ARGS): Define.
(TARGET_CALLS): Add TARGET_RETURN_POPS_ARGS.
* doc/tm.texi (RETURN_POPS_ARGS): Rename to...
(TARGET_RETURN_POPS_ARGS): ...this. Use deftypefn. Adjust
documentation.
* config/alpha/alpha.h (RETURN_POPS_ARGS): Delete.
* config/arc/arc.h (RETURN_POPS_ARGS): Likewise.
* config/arm/arm.h (RETURN_POPS_ARGS): Likewise.
* config/avr/avr.h (RETURN_POPS_ARGS): Likewise.
* config/bfin/bfin.h (RETURN_POPS_ARGS): Likewise.
* config/cris/cris.h (RETURN_POPS_ARGS): Likewise.
* config/crx/crx.h (RETURN_POPS_ARGS): Likewise.
* config/fr30/fr30.h (RETURN_POPS_ARGS): Likewise.
* config/frv/frv.h (RETURN_POPS_ARGS): Likewise.
* config/h8300/h8300.h (RETURN_POPS_ARGS): Likewise.
* config/ia64/ia64.h (RETURN_POPS_ARGS): Likewise.
* config/iq2000/iq2000.h (RETURN_POPS_ARGS): Likewise.
* config/lm32/lm32.h (RETURN_POPS_ARGS): Likewise.
* config/m32c/m32c.h (RETURN_POPS_ARGS): Likewise.
* config/m32r/m32r.h (RETURN_POPS_ARGS): Likewise.
* config/m68hc11/m68hc11.h (RETURN_POPS_ARGS): Likewise.
* config/mcore/mcore.h (RETURN_POPS_ARGS): Likewise.
* config/mep/mep.h (RETURN_POPS_ARGS): Likewise.
* config/mips/mips.h (RETURN_POPS_ARGS): Likewise.
* config/mmix/mmix.h (RETURN_POPS_ARGS): Likewise.
* config/mn10300/mn10300.h (RETURN_POPS_ARGS): Likewise.
* config/moxie/moxie.h (RETURN_POPS_ARGS): Likewise.
* config/pa/pa.h (RETURN_POPS_ARGS): Likewise.
* config/pdp11/pdp11.h (RETURN_POPS_ARGS): Likewise.
* config/picochip/picochip.h (RETURN_POPS_ARGS): Likewise.
* config/rs6000/rs6000.h (RETURN_POPS_ARGS): Likewise.
* config/rx/rx.h (RETURN_POPS_ARGS): Likewise.
* config/s390/s390.h (RETURN_POPS_ARGS): Likewise.
* config/score/score.h (RETURN_POPS_ARGS): Likewise.
* config/sh/sh.h (RETURN_POPS_ARGS): Likewise.
* config/sparc/sparc.h (RETURN_POPS_ARGS): Likewise.
* config/spu/spu.h (RETURN_POPS_ARGS): Likewise.
* config/stormy16/stormy16.h (RETURN_POPS_ARGS): Likewise.
* config/v850/v850.h (RETURN_POPS_ARGS): Likewise.
* config/xtensa/xtensa.h (RETURN_POPS_ARGS): Likewise.
* config/i386/i386-protos.h (ix86_return_pops_args): Delete.
* config/i386/i386.h (RETURN_POPS_ARGS): Delete.
* config/i386/i386.c (ix86_return_pops_args): Make static.
Constify arguments.
(TARGET_RETURN_POPS_ARGS): Define.
* config/m68k/m68k.h (RETURN_POPS_ARGS): Move to...
* config/m68k/m68k.c (m68k_return_pops_args): ...here. New function.
(TARGET_RETURN_POPS_ARGS): Define.
* config/vax/vax.h (RETURN_POPS_ARGS): Move to...
* config/vax/vax.c (vax_return_pops_args): ...here. New function.
(TARGET_RETURN_POPS_ARGS): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161528
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 29 Jun 2010 12:12:10 +0000 (12:12 +0000)]
2010-06-29 Richard Guenther <rguenther@suse.de>
PR middle-end/44667
* tree-inline.c (initialize_inlined_parameters): Make sure
to remap the inlined parameter variable substitutions types.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161527
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Tue, 29 Jun 2010 10:03:36 +0000 (10:03 +0000)]
2010-06-29 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/44708
* include/ext/algorithm (copy_n): Qualify __copy_n call with
__gnu_cxx::
* testsuite/ext/rope/44708.cc: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161524
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Tue, 29 Jun 2010 09:24:34 +0000 (09:24 +0000)]
PR rtl-optimization/44659
* combine.c (make_compound_operation) <SUBREG>: Do not return the
result of force_to_mode if it partially re-expanded the compound.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161523
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 29 Jun 2010 00:17:05 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161521
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Mon, 28 Jun 2010 21:16:25 +0000 (21:16 +0000)]
PR middle-end/44671
* ipa-split.c (test_nonssa_use, mark_nonssa_use): Check also uses of RESULT_DECL.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161514
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 28 Jun 2010 20:12:31 +0000 (20:12 +0000)]
PR c++/44682
* class.c (build_base_path): If want_pointer, call mark_rvalue_use
on expr.
* g++.dg/warn/Wunused-var-14.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161511
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Mon, 28 Jun 2010 20:04:40 +0000 (20:04 +0000)]
2010-06-28 Tobias Burnus <burnus@net-b.de>
PR fortran/43298
* list_read.c (parse_real, read_real): Support NAN(alphanum).
2010-06-28 Tobias Burnus <burnus@net-b.de>
PR fortran/43298
* gfortran.dg/nan_6.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161510
138bc75d-0d04-0410-961f-
82ee72b054a4
aesok [Mon, 28 Jun 2010 18:23:16 +0000 (18:23 +0000)]
* double-int.h (force_fit_type_double): Remove declaration.
* double-int.c (force_fit_type_double): Move to tree.c.
* tree.h (force_fit_type_double): Declare.
* tree.h (force_fit_type_double): Moved from double-int.c. Use
double_int type for 'cst' argument. Use double_int_fits_to_tree_p and
double_int_to_tree instead of fit_double_type and build_int_cst_wide.
* convert.c (convert_to_pointer): Adjust call to
force_fit_type_double.
* tree-vrp.c (extract_range_from_assert,
extract_range_from_unary_expr): Adjust call to force_fit_type_double.
* fold-const.c: Update comment.
(int_const_binop, fold_convert_const_int_from_int,
fold_convert_const_int_from_real, fold_convert_const_int_from_fixed,
extract_muldiv_1, fold_div_compare, fold_sign_changed_comparison,
fold_unary_loc, fold_negate_const, fold_abs_const, fold_not_const,
round_up_loc): Adjust call to force_fit_type_double.
/c-family
* c-common.c (shorten_compare): Adjust call to force_fit_type_double.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161509
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Mon, 28 Jun 2010 17:52:59 +0000 (17:52 +0000)]
* config/rs6000/rs6000.h (PROCESSOR_TITAN): Declare.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161507
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Mon, 28 Jun 2010 17:25:49 +0000 (17:25 +0000)]
Add a testcase for PR tree-optimization/43781.
2010-06-28 H.J. Lu <hongjiu.lu@intel.com>
PR tree-optimization/43781
* gcc.dg/torture/pr43781.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161505
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Mon, 28 Jun 2010 17:16:06 +0000 (17:16 +0000)]
2010-06-28 Paul Thomas <pault@gcc.gnu.org>
PR fortran/40158
* interface.c (argument_rank_mismatch): New function.
(compare_parameter): Call new function instead of generating
the error directly.
2010-06-28 Paul Thomas <pault@gcc.gnu.org>
PR fortran/40158
* gfortran.dg/actual_rank_check_1.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161504
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Mon, 28 Jun 2010 16:47:55 +0000 (16:47 +0000)]
2010-06-26 Martin Jambor <mjambor@suse.cz>
* tree-sra.c (convert_callers): New parameter, change fndecls of
recursive calls.
(modify_function): Pass the old decl to convert_callers.
* testsuite/gcc.dg/ipa/ipa-sra-6.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161503
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Mon, 28 Jun 2010 16:43:09 +0000 (16:43 +0000)]
2010-06-28 Martin Jambor <mjambor@suse.cz>
* ipa-cp.c (ipcp_init_cloned_node): Replace calls to
ipa_check_create_node_params and ipa_initialize_node_params with
checking asserts they are not necessary.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161502
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Mon, 28 Jun 2010 15:51:25 +0000 (15:51 +0000)]
PR tree-optimization/44687
* gcc.c-torture/compile/pr44687.c
PR tree-optimization/44687
* ipa-split.c (split_function): Use DECL_RESULT to store return value.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161500
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Mon, 28 Jun 2010 15:42:01 +0000 (15:42 +0000)]
2010-06-28 Martin Jambor <mjambor@suse.cz>
PR c++/44535
* gimple-fold.c (get_first_base_binfo_with_virtuals): New function.
(gimple_get_relevant_ref_binfo): Use get_first_base_binfo_with_virtuals
instead of BINFO_BASE_BINFO.
* testsuite/g++.dg/torture/pr44535.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161498
138bc75d-0d04-0410-961f-
82ee72b054a4
matz [Mon, 28 Jun 2010 15:14:31 +0000 (15:14 +0000)]
PR middle-end/44592
* gimple-fold.c (gimplify_and_update_call_from_tree): Maintain
proper VDEF chain for intermediate stores in the sequence.
testsuite/
PR middle-end/44592
* gfortran.dg/pr44592.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161496
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Mon, 28 Jun 2010 15:12:11 +0000 (15:12 +0000)]
PR tree-optimization/44357
* ipa-inline.c (add_new_edges_to_heap): Do not add edges to uninlinable
functions.
PR tree-optimization/44357
* g++.dg/torture/pr44357.C: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161495
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Mon, 28 Jun 2010 14:02:07 +0000 (14:02 +0000)]
* gcc.dg/tree-ssa/ltrans-1.c: Add -march=i486 for i?86-*-* && ilp32.
* gcc.dg/tree-ssa/ltrans-3.c: Likewise.
* gcc.dg/tree-ssa/ltrans-4.c: Likewise.
* gcc.dg/tree-ssa/ltrans-5.c: Likewise.
* gcc.dg/tree-ssa/ltrans-6.c: Likewise.
* gcc.dg/tree-ssa/ltrans-8.c: Likewise.
* gcc.dg/tree-ssa/vrp47.c: Add -march=i586 for i?86-*-* && ilp32.
* gfortran.dg/ltrans-7.f90: Add -march=i486 for i?86-*-* && ilp32.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161492
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Mon, 28 Jun 2010 13:22:47 +0000 (13:22 +0000)]
2010-06-28 Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
* config.gcc (powerpc*-*-*): Handle titan.
* config/rs6000/rs6000.c (titan_cost): New costs.
(rs6000_override_options): Add "titan" to processor_target_table.
Add Titan to branch alignment logic.
Correctly set rs6000_cost for titan.
* config/rs6000/rs6000.md (cpu): Add titan. Include "titan.md".
* config/rs6000/titan.md: New file.
* doc/invoke.texi (RS/6000 and PowerPC Options): Document -mcpu=titan.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161491
138bc75d-0d04-0410-961f-
82ee72b054a4
froydnj [Mon, 28 Jun 2010 13:06:43 +0000 (13:06 +0000)]
* tree-browser.c (TB_history_stack): Convert to a VEC.
(TB_SET_HEAD): Adjust for new type of TB_history_stack.
(TB_history_prev): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161490
138bc75d-0d04-0410-961f-
82ee72b054a4
froydnj [Mon, 28 Jun 2010 12:06:52 +0000 (12:06 +0000)]
* java-tree.h (struct lang_type) [catch_classes]: Change type to a
VEC.
* except.c (prepare_eh_table_type): Call CONSTRUCTOR_APPEND_ELT
instead of tree_cons.
* class.c (make_class): Add dummy entry to TYPE_CATCH_CLASSES.
(emit_catch_table): Adjust for new type of TYPE_CATCH_CLASSES.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161487
138bc75d-0d04-0410-961f-
82ee72b054a4
froydnj [Mon, 28 Jun 2010 12:04:54 +0000 (12:04 +0000)]
gcc/
* vec.h (vec_heap_free): Add parentheses around free.
gcc/fortran/
* trans-openmp.c (dovar_init): Define. Define VECs containing it.
(gfc_trans_omp_do): Use a VEC to accumulate variables and their
initializers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161486
138bc75d-0d04-0410-961f-
82ee72b054a4
steven [Mon, 28 Jun 2010 10:52:46 +0000 (10:52 +0000)]
gcc/ChangeLog:
2010-06-28 Steven Bosscher <steven@gcc.gnu.org>
* system.h: Poison GCC_EXCEPT_H for front-end files.
* langhooks.h (struct lang_hooks): Add eh_protect_cleanup_actions
langhook.
* langhooks-def.h (LANG_HOOKS_EH_PROTECT_CLEANUP_ACTIONS) New.
Define to NULL by default.
* except.h: Define GCC_EXCEPT_H.
(doing_eh): Remove prototype.
(init_eh, init_eh_for_function): Move prototypes to toplev.h.
(lang_protect_cleanup_actions): Remove.
* except.c (lang_protect_cleanup_actions): Remove.
(doing_eh): Remove.
(gen_eh_region): Don't check doing_eh here.
* toplev.h (init_eh, init_eh_for_function_): Moved from except.h.
* tree-eh.c (honor_protect_cleanup_actions): Use new langhook
instead of lang_protect_cleanup_actions.
* omp-low.c (maybe_catch_exception): Likewise.
* Makefile.in: Update dependencies.
gcc/c-family/ChangeLog:
2010-06-28 Steven Bosscher <steven@gcc.gnu.org>
* c-cppbuiltin.c: Do not include except.h.
gcc/objc/ChangeLog:
2010-06-28 Steven Bosscher <steven@gcc.gnu.org>
* objc-act.c: Do not include except.h.
gcc/cp/ChangeLog:
2010-06-28 Steven Bosscher <steven@gcc.gnu.org>
* init.c: Do not include except.h.
* decl.c: Likewise.
* expr.c: Likewise.
* cp-lang.c: Likewise.
* pt.c: Likewise.
* semantics.c: Likewise.
* decl2.c: Likewise.
* except.c: Likewise.
(init_exception_processing): Do not set the removed
lang_protect_cleanup_actions here.
(cp_protect_cleanup_actions): Make non-static and remove prototype.
(doing_eh): New, moved from except.c but removed the do_warning flag.
(expand_start_catch_block): Update doing_eh call.
(expand_end_catch_block): Likewise.
(build_throw): Likewise.
* cp-tree.h: Prototype cp_protect_cleanup_actions.
* cp-objcp-common.h: Set LANG_HOOKS_EH_PROTECT_CLEANUP_ACTIONS to
cp_protect_cleanup_actions.
* Make-lang.in: Update dependencies.
gcc/objcp/ChangeLog:
2010-06-28 Steven Bosscher <steven@gcc.gnu.org>
* objcp-lang.c: Do not include except.h.
* Make-lang.in: Update dependencies.
gcc/java/ChangeLog:
2010-06-28 Steven Bosscher <steven@gcc.gnu.org>
* lang.c: Do not include except.h
* except.c: Likewise.
(doing_eh): New, moved from except.c (in gcc/) but removed the
do_warning flag.
(maybe_start_try): Update doing_eh call.
* Make-lang.in: Update dependencies.
gcc/ada/ChangeLog:
2010-06-28 Steven Bosscher <steven@gcc.gnu.org>
* gcc-interface/misc.c: Do not include except.h.
* gcc-interface/Make-lang.in: Update dependencies.
gcc/fortran/ChangeLog:
2010-06-28 Steven Bosscher <steven@gcc.gnu.org>
* Make-lang.in: Update dependencies.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161484
138bc75d-0d04-0410-961f-
82ee72b054a4
meibf [Mon, 28 Jun 2010 10:39:38 +0000 (10:39 +0000)]
2010-06-28 Bingfeng Mei <bmei@broadcom.com>
* cgraph.h (struct varpool_node): new used_from_object_file flag.
(struct cgraph_local_info): new used_from_object_file flag.
* cgraph.c (dump_cgraph_node): dump used_from_object_file flag.
(cgraph_clone_node): initialize used_from_object_file.
(cgraph_create_virtual_clone): initialize used_from_object_file.
* lto-symbtab.c (lto_symtab_merge_decls_1): Set
used_from_object_file flags for symbols of LDPR_PREVAILING_DEF
when compiling with -fwhole-program.
(lto_symtab_resolve_symbols) Use LDPR_PREVAILING_DEF_IRONLY for
internal resolver.
* ipa.c (function_and_variable_visibility): Set externally_visible
flag of varpool_node if used_from_object_file flag is set.
(cgraph_externally_visible_p): check used_from_object_file flag.
* doc/invoke.texi (-fwhole-program option): Change description of
externally_visible attribute accordingly.
* doc/extend.texi (externally_visible): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161483
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Mon, 28 Jun 2010 00:31:05 +0000 (00:31 +0000)]
* params.def (max-inline-insns-auto): Default to 40.
* doc/invoke.texi (max-inline-insns-auto): Document the change.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161481
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 28 Jun 2010 00:17:06 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161480
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Mon, 28 Jun 2010 00:10:34 +0000 (00:10 +0000)]
PR middle-end/44671
PR middle-end/44686
* tree.c (build_function_decl_skip_args): Clear DECL_BUILT_IN on signature
change.
* ipa-split.c (split_function): Always clear DECL_BUILT_IN.
* ipa-prop.c (ipa_modify_formal_parameters): Likewise.
* gcc.c-torture/pr44686.c: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161476
138bc75d-0d04-0410-961f-
82ee72b054a4
froydnj [Sun, 27 Jun 2010 20:00:50 +0000 (20:00 +0000)]
* gfortran.h (gfc_code): Split backend_decl field into cycle_label
and exit_label fields.
* trans-openmp.c (gfc_trans_omp_do): Assign to new fields
individually.
* trans-stmt.c (gfc_trans_simple_do): Likewise.
(gfc_trans_do): Likewise.
(gfc_trans_do_while): Likewise.
(gfc_trans_cycle): Use cycle_label directly.
(gfc_trans_exit): Use exit_label directly.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161473
138bc75d-0d04-0410-961f-
82ee72b054a4
aesok [Sun, 27 Jun 2010 11:40:42 +0000 (11:40 +0000)]
* target.h (struct gcc_target): Add register_move_cost field.
* target-def.h (TARGET_REGISTER_MOVE_COST): New.
(TARGET_INITIALIZER): Use TARGET_REGISTER_MOVE_COST.
* targhooks.c (default_register_move_cost): New function.
* targhooks.h (default_register_move_cost): Declare function.
* defaults.h (REGISTER_MOVE_COST): Delete.
* ira-int.h (ira_register_move_cost): Update comment.
* ira.c: (ira_register_move_cost): Update comment.
* reload.h (register_move_cost): Declare.
* reginfo.c (register_move_cost): New function.
(move_cost): Update comment.
(init_move_cost, memory_move_secondary_cost): Replace
REGISTER_MOVE_COST with register_move_cost.
* postreload.c (reload_cse_simplify_set): (Ditto.).
* reload.c (find_valid_class, find_reloads): (Ditto.).
* reload1.c (choose_reload_regs): (Ditto.).
* doc/tm.texi (TARGET_REGISTER_MOVE_COST): New.
(REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Update documentation.
* doc/md.texi (can_create_pseudo_p): Update documentation.
* config/i386/i386.h (MEMORY_MOVE_COST): Remove macro.
* config/i386/i386-protos.h (int ix86_memory_move_cost): Remove.
* config/i386/i386.h (ix86_memory_move_cost): Make static.
(TARGET_MEMORY_MOVE_COST): Define.
* config/ia64/ia64.h (MEMORY_MOVE_COST): Remove macro.
* config/ia64/ia64-protos.h (int ia64_memory_move_cost): Remove.
* config/ia64/ia64.h (ia64_memory_move_cost): Make static.
(TARGET_MEMORY_MOVE_COST): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161470
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Sun, 27 Jun 2010 11:16:46 +0000 (11:16 +0000)]
2010-06-27 Richard Guenther <rguenther@suse.de>
PR tree-optimization/44683
* tree-ssa-dom.c (record_edge_info): Record equivalences for the
false edge from the inverted condition.
* gcc.c-torture/execute/pr44683.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161467
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sun, 27 Jun 2010 10:59:55 +0000 (10:59 +0000)]
Fix typo
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161465
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Sun, 27 Jun 2010 09:29:25 +0000 (09:29 +0000)]
2010-06-27 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/regex_compiler.h: Trivial formatting / stylistic fixes.
* include/bits/regex_grep_matcher.tcc: Likewise.
* include/bits/regex_cursor.h: Likewise.
* include/bits/regex.h: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161462
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sun, 27 Jun 2010 08:47:23 +0000 (08:47 +0000)]
* gcc-interface/trans.c: Include tree-flow.h.
(gnu_switch_label_stack): Delete.
(Case_Statement_to_gnu): Do not emit the goto at the end of a case if
its associated block cannot fall through. Do not emit the final label
if no cases branche to it.
* gcc-interface/Make-lang.in (ada/trans.o): Add $(TREE_FLOW_H).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161461
138bc75d-0d04-0410-961f-
82ee72b054a4
domob [Sun, 27 Jun 2010 08:40:40 +0000 (08:40 +0000)]
2010-06-27 Daniel Kraft <d@domob.eu>
* dump-parse-tree.c (show_symbol): Dump target-expression for
associate names.
(show_code_node): Make distinction between BLOCK and ASSOCIATE.
(show_namespace): Use show_level for correct indentation of
"inner namespaces" (contained procedures or BLOCK).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161460
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Sun, 27 Jun 2010 08:10:45 +0000 (08:10 +0000)]
2010-06-27 Richard Guenther <rguenther@suse.de>
PR middle-end/44684
* 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
for register LHS. Or non-store assignments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161456
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 27 Jun 2010 00:16:50 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161451
138bc75d-0d04-0410-961f-
82ee72b054a4
tkoenig [Sat, 26 Jun 2010 22:54:39 +0000 (22:54 +0000)]
2010-06-27 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/44678
* dump-parse-tree.c (show_code_node): Show namespace for
EXEC_BLOCK.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161444
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Sat, 26 Jun 2010 21:34:36 +0000 (21:34 +0000)]
* call.c (add_function_candidate): Set LOOKUP_COPY_PARM for any
constructor called with a single argument that takes a reference
to the constructor's class.
(BAD_CONVERSION_RANK): New.
(compare_ics): Use it to compare bad ICSes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161443
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sat, 26 Jun 2010 21:08:46 +0000 (21:08 +0000)]
* config/sparc/sparc.c (sparc_emit_set_const32): Make static.
(sparc_emit_set_const64): Likewise. Remove disabled code.
* config/sparc/sparc-protos.h (sparc_emit_set_const32): Delete.
(sparc_emit_set_const64): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161442
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Sat, 26 Jun 2010 20:11:20 +0000 (20:11 +0000)]
2010-06-26 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/util/testsuite_hooks.h: Cast fn to bool.
2010-06-26 Kees Cook <kees.cook@canonical.com>
* testsuite/27_io/ios_base/sync_with_stdio/1.cc: Verify freopen.
* testsuite/27_io/objects/wchar_t/9520.cc: Likewise.
* testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
* testsuite/27_io/objects/wchar_t/12048-2.cc: Likewise.
* testsuite/27_io/objects/wchar_t/12048-4.cc: Likewise.
* testsuite/27_io/objects/wchar_t/11.cc: Likewise.
* testsuite/27_io/objects/wchar_t/12048-1.cc: Likewise.
* testsuite/27_io/objects/wchar_t/12048-3.cc: Likewise.
* testsuite/27_io/objects/wchar_t/10.cc: Likewise.
* testsuite/27_io/objects/wchar_t/12048-5.cc: Likewise.
* testsuite/27_io/objects/char/9661-1.cc: Likewise.
* testsuite/27_io/objects/char/12048-2.cc: Likewise.
* testsuite/27_io/objects/char/12048-4.cc: Likewise.
* testsuite/27_io/objects/char/9.cc: Likewise.
* testsuite/27_io/objects/char/12048-1.cc: Likewise.
* testsuite/27_io/objects/char/12048-3.cc: Likewise.
* testsuite/27_io/objects/char/12048-5.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Likewise.
* testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc: Verify fgets.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc: Verify
fwrite.
* testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.
* testsuite/ext/stdio_sync_filebuf/char/1.cc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161441
138bc75d-0d04-0410-961f-
82ee72b054a4
clm [Sat, 26 Jun 2010 19:27:04 +0000 (19:27 +0000)]
2010-06-26 Catherine Moore <clm@codesourcery.com>
* config/mips/mips.md (alu_type): New attribute.
(type): Infer type from alu_type.
(*add<mode>3, *add<mode>3_mips16, *addsi3_extended,
*baddu_si_eb, *baddu_si_el, *baddu_di, sub<mode>3,
*subsi3_extended, negsi2, negdi2, *low<mode>,
*low<mode>_mips16, *ior<mode>3, *ior<mode>3_mips16,
xor<mode>3, *nor<mode>3,
*zero_extend<GPR:mode>_trunc<SHORT:mode>,
*zero_extendhi_truncqi): Set alu_type instead of type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161440
138bc75d-0d04-0410-961f-
82ee72b054a4
rupp [Sat, 26 Jun 2010 17:44:58 +0000 (17:44 +0000)]
Fix typo in last ChangeLog entry.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161438
138bc75d-0d04-0410-961f-
82ee72b054a4
rupp [Sat, 26 Jun 2010 17:42:58 +0000 (17:42 +0000)]
Fix the Alpha/VMS build. Installed as obvious.
* config/alpha/alpha.c (alpha_need_linkage): Adjust
splay_tree_new_gcc_call.
(alpha_use_linkage): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161437
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Sat, 26 Jun 2010 17:04:16 +0000 (17:04 +0000)]
* collect2.c (main): Remove SWITCHES_NEED_SPACES conditional.
* doc/tm.texi (SWITCHES_NEED_SPACES): Don't document.
* gcc.c (SWITCHES_NEED_SPACES, switches_need_spaces): Remove.
(static_specs): Remove switches_need_spaces.
(process_command, do_self_spec): Hardcode handling "-o" instead of
checking switches_need_spaces.
* system.h (SWITCHES_NEED_SPACES): Poison.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161436
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Sat, 26 Jun 2010 15:55:05 +0000 (15:55 +0000)]
2010-06-26 Richard Guenther <rguenther@suse.de>
PR tree-optimization/44393
* tree-loop-distribution.c (generate_loops_for_partition): Fix
stmt removal and VOP renaming.
(generate_memset_zero): Remove redundant stmt updating.
* tree-flow.h (mark_virtual_ops_in_bb): Remove.
* tree-cfg.c (mark_virtual_ops_in_bb): Likewise.
* gcc.dg/pr44393.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161434
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Sat, 26 Jun 2010 14:45:40 +0000 (14:45 +0000)]
* gcc.dg/tree-ssa/ipa-split-2.c: New testcase.
* ipa-split.c (consider_split): PHI in entry block is OK as long as all
edges comming from header are equivalent.
(visit_bb): Handle PHIs correctly.
* tree-inline.c (copy_phis_for_bb): Be able to copy
PHI from entry edge.
(copy_cfg_body): Produce edge from entry BB before copying
PHIs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161433
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Sat, 26 Jun 2010 13:24:57 +0000 (13:24 +0000)]
2010-06-26 Richard Guenther <rguenther@suse.de>
PR middle-end/44674
* tree-ssa-alias.c (refs_may_alias_p_1): Allow all kind of
decls. Handle LABEL_DECLs like FUNCTION_DECLs.
* gcc.dg/pr44674.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161431
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Sat, 26 Jun 2010 13:11:04 +0000 (13:11 +0000)]
* gcc.c (n_switches_alloc, n_infiles_alloc, alloc_infile,
add_infile, alloc_switch): New.
(process_command): Remove variable lang_n_infiles. Process
options in a single pass. Use new functions for allocating
infiles and switches arrays. Properly skip operands of
-Xpreprocessor and -Xassembler.
testsuite:
* gcc.dg/opts-3.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161430
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Sat, 26 Jun 2010 13:03:49 +0000 (13:03 +0000)]
2010-06-26 Tobias Burnus <burnus@net-b.de>
* decl.c (gfc_match_decl_type_spec): Support
TYPE(intrinsic-type-spec).
2010-06-26 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/type_decl_1.f90: New.
* gfortran.dg/type_decl_2.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161429
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Sat, 26 Jun 2010 11:38:57 +0000 (11:38 +0000)]
PR middle-end/44671
* cgraphunit.c (cgraph_function_versioning): Remove wrong cgraph_make_decl_local
call; fix typo copying RTL data.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161428
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Sat, 26 Jun 2010 06:19:57 +0000 (06:19 +0000)]
2010-06-26 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/semicolon_fixed.f: Fix dg syntax..
* gfortran.dg/semicolon_fixed_2.f: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161426
138bc75d-0d04-0410-961f-
82ee72b054a4
dj [Sat, 26 Jun 2010 03:30:19 +0000 (03:30 +0000)]
* config/m32c/m32c-protos.h (m32c_note_pragma_address): Declare.
(m32c_output_aligned_common): Likewise.
* config/m32c/m32c.h (ASM_OUTPUT_ALIGNED_DECL_COMMON): New.
(ASM_OUTPUT_ALIGNED_DECL_LOCAL): New.
* config/m32c/m32c-pragma.c (m32c_pragma_address): New.
(m32c_register_pragmas): Register it.
* config/m32c/m32c.c (m32c_get_pragma_address): New.
(m32c_insert_attributes): Set #pragma address decls volatile.
(pragma_entry_eq): New.
(pragma_entry_hash): New.
(m32c_note_pragma_address): New.
(m32c_get_pragma_address): New.
(m32c_output_aligned_common): New.
* doc/extend.texi: Document the new pragma.
* config/m32c/m32c.c (m32c_illegal_subreg_p): Reject illegal MEMs
also.
* config/m32c/predicates.md (m32c_any_operand): Check the code
instead of memory_operand so as to allow matching volatile MEMs.
(m32c_nonimmediate_operand): Likewise.
(mra_operand): Allow volatiles.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161425
138bc75d-0d04-0410-961f-
82ee72b054a4