Commit Graph

98034 Commits

Author SHA1 Message Date
Dodji Seketeli
58be9ce9c3 Revert commit of PR c++/42634, which was commit r155868
From-SVN: r155936
2010-01-15 12:23:29 +01:00
Richard Guenther
cbe80ff867 tree-ssa-loop-im.c (gen_lsm_tmp_name): Fix bogus fallthru.
2010-01-15  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-loop-im.c (gen_lsm_tmp_name): Fix bogus fallthru.

From-SVN: r155934
2010-01-15 10:34:24 +00:00
Jerry DeLisle
3f298330df re PR fortran/42684 (ICE when interface operator(xx) available through host and use assoc in module procedure)
2010-01-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>

	PR fortran/42684
	* gfortran.dg/interface_31.f90: New test.

From-SVN: r155931
2010-01-15 02:06:23 +00:00
Jerry DeLisle
0175478dec re PR fortran/42684 (ICE when interface operator(xx) available through host and use assoc in module procedure)
2010-01-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>

	PR fortran/42684
	* interface.c (check_interface1): Pass symbol name rather than NULL to
	gfc_compare_interfaces.	(gfc_compare_interfaces): Add assert to
	trap MULL.
	* resolve.c (check_generic_tbp_ambiguity): Pass symbol name rather
	than NULL to gfc_compare_interfaces.

From-SVN: r155930
2010-01-15 01:47:43 +00:00
GCC Administrator
ab69346017 Daily bump.
From-SVN: r155928
2010-01-15 00:19:26 +00:00
Michael Meissner
c919858d6a Fix 42747, make -mvsx enable sqrt
From-SVN: r155923
2010-01-14 22:52:02 +00:00
Jakub Jelinek
ef5d11818d re PR middle-end/42674 (Bogus "no return statement in function returning non-void" warning)
PR middle-end/42674
	* c-decl.c (finish_function): Don't emit -Wreturn-type warnings in
	functions with noreturn attribute.

	* decl.c (finish_function): Don't emit -Wreturn-type warnings in
	functions with noreturn attribute.

	* c-c++-common/pr42674.c: New test.

From-SVN: r155920
2010-01-14 23:43:56 +01:00
Jakub Jelinek
5b1cbe1453 re PR c++/42608 (Undefined reference not reported in case of explicit template instantiation)
PR c++/42608
	* varasm.c (declare_weak): Add weak attribute to decl if it
	doesn't have one already.
	(assemble_external): Only add decls to weak_decls if they also
	have weak attribute.

	* g++.dg/template/instantiate11.C: New test.

From-SVN: r155919
2010-01-14 23:41:02 +01:00
Alexandre Oliva
7d2a845248 var-tracking.c (var_reg_delete): Don't delete the association between REGs and values or one-part variables if...
* var-tracking.c (var_reg_delete): Don't delete the association
	between REGs and values or one-part variables if the register
	isn't clobbered.

From-SVN: r155918
2010-01-14 23:39:25 +01:00
Jakub Jelinek
d17af14789 re PR debug/42657 (Missing debug info for a variable)
PR debug/42657
	* tree-inline.c (copy_debug_stmt): Don't reset debug stmt just
	because its first operand is a non-localized variable.

From-SVN: r155917
2010-01-14 23:38:29 +01:00
Jason Merrill
6700a2857f re PR c++/42701 (ICE on error recovery)
PR c++/42701
	* call.c (build_new_method_call): Don't free the vec here.

From-SVN: r155916
2010-01-14 17:32:24 -05:00
Jason Merrill
2d1a618e84 re PR c++/42655 (! causes the qualified types for rvalue)
PR c++/42655
	* call.c (convert_like_real): Do full decay_conversion for ck_rvalue.

From-SVN: r155913
2010-01-14 15:21:58 -05:00
Paolo Carlini
5f3e3df666 cstring (memchr): Forward to the builtin.
2010-01-14  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/c_std/cstring (memchr): Forward to the builtin.
	* include/c_std/cstring: Remove redundant casts; use names consistent
	with the letter of the Standard.
	* include/c_global/cstring: Likewise.

From-SVN: r155912
2010-01-14 18:15:37 +00:00
Martin Jambor
2f3cdcf502 re PR tree-optimization/42706 (ICE in gimple_op, at gimple.h:1634, (IPA SRA))
2010-01-14  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/42706
	* tree-sra.c (encountered_recursive_call): New variable.
	(encountered_unchangable_recursive_call): Likewise.
	(sra_initialize): Initialize both new variables.
	(callsite_has_enough_arguments_p): New function.
	(scan_function): Call decl and flags check only for IPA-SRA, check
	whether there is a recursive call and whether it has enough arguments.
	(all_callers_have_enough_arguments_p): New function.
	(convert_callers): Look for recursive calls only when
	encountered_recursive_call is set.
	(ipa_early_sra): Bail out either if
	!all_callers_have_enough_arguments_p or
	encountered_unchangable_recursive_call.

	* testsuite/gcc.dg/ipa/pr42706.c: New testcase.

From-SVN: r155911
2010-01-14 19:00:34 +01:00
H.J. Lu
7767706d58 Use __SIZE_TYPE__ to define size_t.
2010-01-14  H.J. Lu  <hongjiu.lu@intel.com>

	* g++.dg/graphite/pr42681.C (size_t): Use __SIZE_TYPE__.

From-SVN: r155910
2010-01-14 06:45:47 -08:00
Alexander Monakov
c02e2d5cc5 sel-sched.c: Add 2010 to copyright years.
2010-01-14  Alexander Monakov  <amonakov@ispras.ru>

	* sel-sched.c: Add 2010 to copyright years.
	* sel-sched-ir.c: Likewise.
	* sel-sched-ir.h: Likewise.

From-SVN: r155906
2010-01-14 16:50:09 +03:00
Martin Jambor
92e97cdd7d re PR tree-optimization/42714 (ICE in create_tmp_var, at gimplify.c:504)
2010-01-14  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/42714
	* tree-sra.c (sra_ipa_modify_assign): Handle incompatible-type
	constructors specially.

	* gcc/testsuite/g++.dg/torture/pr42714.C: New test.

From-SVN: r155905
2010-01-14 14:29:44 +01:00
Andi Kleen
a0463099e7 drivers-i386.c (detect_caches_intel): Add l2sizekb parameter and fill in.
2010-01-14  Andi Kleen  <ak@linux.intel.com>

	* config/i386/drivers-i386.c (detect_caches_intel):
	Add l2sizekb parameter and fill in.
	(host_detect_local_cpu): Add l2sizekb, fill in.
	Add Atom small cache heuristic.

2010-01-14  Andi Kleen  <ak@linux.intel.com>

	* config/i386/drivers-i386.c (detect_caches_cpuid4):
	Add level3 parameter and fill in.
	(detect_caches_intel): Handle level3 cache.

2010-01-14  Andi Kleen  <ak@linux.intel.com>

	* config/i386/drivers-i386.c (host_detect_local_cpu):
	Fix core duo detection.

2010-01-14  Andi Kleen  <ak@linux.intel.com>

	* config/i386/drivers-i386.c (host_detect_local_cpu):
	Fix Atom detection.

From-SVN: r155904
2010-01-14 13:48:09 +01:00
Alexander Monakov
dd6739e322 rs6000.c (rs6000_variable_issue): Rename to...
2010-01-14  Alexander Monakov  <amonakov@ispras.ru>

	* config/rs6000/rs6000.c (rs6000_variable_issue): Rename to...
	(rs6000_variable_issue_1): this.  Use...
	(rs6000_variable_issue): here.  Reimplement.  Print debug info.

From-SVN: r155902
2010-01-14 14:27:11 +03:00
Alexander Monakov
7898b93b57 sel-sched-ir.c (sel_restore_other_notes): Rename to sel_restore_notes.
2010-01-14  Alexander Monakov  <amonakov@ispras.ru>

	* sel-sched-ir.c (sel_restore_other_notes): Rename to sel_restore_notes.
	Update all callers.  Call reemit_notes for all insns.

From-SVN: r155901
2010-01-14 14:25:25 +03:00
Andrey Belevantsev
65b659ff8a re PR rtl-optimization/42246 (ICE in init_seqno for 186.crafty with sel-sched)
PR rtl-optimization/42246
        * sel-sched-ir.h (get_all_loop_exits): Include exits from inner
        loops.

From-SVN: r155900
2010-01-14 14:22:20 +03:00
Andrey Belevantsev
c648655209 sel-sched.c (compute_av_set_at_bb_end): Do not test that number of all successors is the same as number of successors...
* 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.

From-SVN: r155899
2010-01-14 14:19:25 +03:00
Alexander Monakov
f07013eb07 sel-sched.c (maybe_emit_renaming_copy): Exit early when expression to rename is not separable.
2010-01-14  Alexander Monakov  <amonakov@ispras.ru>

	* sel-sched.c (maybe_emit_renaming_copy): Exit early when expression
	to rename is not separable.  Otherwise check that its LHS is not NULL.

From-SVN: r155898
2010-01-14 14:16:02 +03:00
Alexander Monakov
a9ced68beb sel-sched.c (choose_best_reg_1): Loop over all regs for mode.
2010-01-14  Alexander Monakov  <amonakov@ispras.ru>

	* sel-sched.c (choose_best_reg_1):  Loop over all regs for mode.

From-SVN: r155897
2010-01-14 14:15:07 +03:00
Alexander Monakov
0c94f956cf sel-sched.c (mark_unavailable_hard_regs): Do not try to search available registers when failed to discover LHS register class.
2010-01-14  Alexander Monakov  <amonakov@ispras.ru>

	* sel-sched.c (mark_unavailable_hard_regs): Do not try to search
	available registers when failed to discover LHS register class.
	Fix indentation.  Update comment.

From-SVN: r155896
2010-01-14 14:13:36 +03:00
Andrey Belevantsev
136e01a3a9 re PR rtl-optimization/42389 (ICE in advance_state_on_fence with sel-schd for 175.vpr)
PR rtl-optimization/42389
        * sel-sched.c (advance_one_cycle): Set FENCE_ISSUE_MORE
        to can_issue_more.
        (advance_state_on_fence): Likewise.
        (sel_target_adjust_priority): Print debug output only when
        sched_verbose >= 4, not 2.
        (get_expr_cost): Do not issue all unique insns on the next cycle.
        (fill_insns): Initialize can_issue_more from the value saved
        with the fence.
        * sel-sched-ir.c (flist_add): New parameter issue_more.
        Init FENCE_ISSUE_MORE with it.
        (merge_fences): Likewise.
        (init_fences): Update call to flist_add.
        (add_to_fences, add_clean_fence_to_fences)
        (add_dirty_fence_to_fences): Likewise.
        (move_fence_to_fences): Update call to merge_fences.
        (invoke_reorder_hooks): Do not reset can_issue_more on insns from
        sched groups.
        * sel-sched-ir.h (struct _fence): New field issue_more.
        (FENCE_ISSUE_MORE): New accessor macro.

From-SVN: r155895
2010-01-14 14:07:39 +03:00
Andrey Belevantsev
762bffbac1 re PR rtl-optimization/42388 (ICE in move_bb_info with sel-sched and modulo-sched for 176.gcc)
PR rtl-optimization/42388
        * 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
        for empty blocks outside of current region.

From-SVN: r155894
2010-01-14 14:02:18 +03:00
Alexander Monakov
14f30b877f re PR rtl-optimization/42294 (ICE in code_motion_path_driver for 416.gamess)
2010-01-14  Alexander Monakov  <amonakov@ispras.ru>

	PR rtl-optimization/42294
	* sel-sched-ir.h (struct _sel_insn_data): Update comment.
	* sel-sched.c (move_exprs_to_boundary): Transitively add all
	originators' originators.

	* gfortran.dg/pr42294.f: New.

From-SVN: r155893
2010-01-14 13:46:57 +03:00
Alexander Monakov
8ec4d0ada3 re PR rtl-optimization/39453 (ICE : in init_seqno, at sel-sched.c:6433)
2010-01-14  Alexander Monakov  <amonakov@ispras.ru>

	PR rtl-optimization/39453
	PR rtl-optimization/42246
	* sel-sched-ir.c (considered_for_pipelining_p): Do not test
	for pipelining_p.
	(sel_add_loop_preheaders): Add preheader to last_added_blocks.

	* gcc.dg/pr39453.c: New.
	* gcc.dg/pr42246.c: New.

From-SVN: r155892
2010-01-14 13:40:19 +03:00
Alexander Monakov
2b342bc1fb Add tests missing from previous commit.
PR middle-end/42245
	* gcc.dg/pr42245.c: New.
	* gcc.dg/pr42245-2.c: New.

From-SVN: r155891
2010-01-14 13:38:14 +03:00
Alexander Monakov
b59ab5709e re PR middle-end/42245 (ICE in verify_backedges for 197.parser with sel-sched)
2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
	    Alexander Monakov  <amonakov@ispras.ru>

	PR middle-end/42245
	* sel-sched-ir.c (sel_recompute_toporder): New.  Use it...
	(maybe_tidy_empty_bb): ... here.  Make static.  Add new
	argument.  Update all callers.
	(tidy_control_flow): ... and here.  Recompute topological order
	of basic blocks in region if necessary.
	(sel_redirect_edge_and_branch): Change return type.  Return true
	if topological order might have been invalidated.
	(purge_empty_blocks): Export and move from...
	* sel-sched.c (purge_empty_blocks): ... here.
	* sel-sched-ir.h (sel_redirect_edge_and_branch): Update prototype.
        (maybe_tidy_empty_bb): Delete prototype.
	(purge_empty_blocks): Declare.

	* gcc.dg/pr42245.c: New.
	* gcc.dg/pr42245-2.c: New.

From-SVN: r155890
2010-01-14 13:28:47 +03:00
Andrey Belevantsev
0666ff4e33 re PR rtl-optimization/42294 (ICE in code_motion_path_driver for 416.gamess)
PR rtl-optimization/42294
        * sel-sched.c (try_replace_dest_reg): When chosen register
        and original register is the same, do not bail out early, but
        still check all original insns for validity of replacing destination
        register.  Set EXPR_TARGET_AVAILABLE to 1 before leaving function
        in this case.

From-SVN: r155889
2010-01-14 13:16:01 +03:00
Jakub Jelinek
5f8d50239b re PR c/42721 (possible integer wrong code bug)
PR c/42721
	Port from no-undefined-overflow branch
	2009-03-09  Richard Guenther  <rguenther@suse.de>

	* fold-const.c (add_double_with_sign): Fix unsigned overflow
	detection.

	* gcc.c-torture/execute/pr42721.c: New test.

From-SVN: r155887
2010-01-14 10:47:09 +01:00
Richard Guenther
429c98c9a8 re PR lto/42665 (Internal compiler exception in with gfortran when using -fwhole-program -flto -fopenmp)
2010-01-14  Richard Guenther  <rguenther@suse.de>

	PR lto/42665
	* gimple.c (iterative_hash_gimple_type): Avoid hashing
	error_mark_node.

From-SVN: r155885
2010-01-14 09:38:56 +00:00
Sebastian Pop
3c7c015805 re PR tree-optimization/42681 (ICE: in build2_stat, at tree.c:3664 with "-O1 -fgraphite-identity")
Fix PR42681.

2010-01-14  Sebastian Pop  <sebastian.pop@amd.com>

	PR middle-end/42681
	* graphite-clast-to-gimple.c (gloog_error): New static variable.
	(clast_to_gcc_expression): Do not build MULT_EXPR of POINTER_TYPE_P.
	Set gloog_error when such an expression failed to be built.
	(translate_clast): Early return when gloog_error is set.
	(gloog): Clear gloog_error.  When gloog_error is set, call
	set_ifsese_condition to enable the original code.  Return the status
	of the code generation based on gloog_error.
	* sese.c (set_ifsese_condition): New.
	* sese.h (set_ifsese_condition): Declared.

	* testsuite/g++.dg/graphite/pr42681.C: New.

From-SVN: r155884
2010-01-14 08:37:26 +00:00
Ira Rosen
cd481d83ed re PR tree-optimization/42709 (error: type mismatch in pointer plus expression)
PR tree-optimization/42709
	* tree-vect-slp.c (vect_get_constant_vectors): Use constant's type
	as scalar type in creation of constant vector operand.

From-SVN: r155882
2010-01-14 07:49:39 +00:00
Sebastian Pop
a7bf45dee5 re PR tree-optimization/42732 ([graphite] ICE: verify_ssa failed)
Fix PR42732.

2010-01-14  Sebastian Pop  <sebastian.pop@amd.com>

	PR middle-end/42732
	* graphite-clast-to-gimple.c (gloog): Call scev_reset_htab and
	rename_nb_iterations.
	* sese.c (rename_variables_in_operand): New.
	(rename_variables_in_expr): New.
	(rename_nb_iterations): New.
	(sese_adjust_liveout_phis): Update the rename_map.
	* sese.h (rename_nb_iterations): Declared.
	* tree-scalar-evolution.c (scev_reset_htab): New.
	(scev_reset): Call scev_reset_htab.
	* tree-scalar-evolution.h (scev_reset_htab): Declared.

	* testsuite/gfortran.dg/graphite/pr42732.f: New.

From-SVN: r155881
2010-01-14 07:38:15 +00:00
Ralf Wildenhues
453897b4dd re PR testsuite/42414 (arbitrary path modification by a sed statement breaks testsuite if testsuite is in the absolute path)
Fix PR testsuite/42414.

gcc/:
	PR testsuite/42414
	* Makefile.in ($(TESTSUITEDIR)/site.exp, check-%)
	(check-parallel-%): Match `testsuite' directory component only
	at the end.

From-SVN: r155880
2010-01-14 07:20:31 +00:00
Shujing Zhao
5bc69b925d re PR translation/39521 (specs diagnostics translation problems)
po/
2010-01-14  Shujing Zhao  <pearly.zhao@oracle.com>

        PR translation/39521
        * exgettext: Extracted all specs %n strings and the %e strings that %e
        is at the start of a line.

2010-01-14  Shujing Zhao  <pearly.zhao@oracle.com>

        PR translation/39521
        * gcc.c (do_spec_1): Wrapped the error and notice messages of specs
        strings with _().

From-SVN: r155878
2010-01-14 06:28:27 +00:00
Paul Thomas
40c3294835 re PR fortran/41478 (Corrupted memory using PACK for derived-types with allocated components)
2010-01-14  Paul Thomas  <pault@gcc.gnu.org>

        PR fortran/41478
        * trans-array.c (duplicate_allocatable):  Static version of
	gfc_duplicate_allocatable with provision to handle scalar
	components. New boolean argument to switch off call to malloc
	if true.
	(gfc_duplicate_allocatable): New function to call above with
	new argument false.
	(gfc_copy_allocatable_data): New function to call above with
	new argument true.
	(structure_alloc_comps): Do not apply indirect reference to
	scalar pointers. Add new section to copy allocatable components
	of arrays. Extend copying of allocatable components to include
	scalars.
	(gfc_copy_only_alloc_comp): New function to copy allocatable
	component derived types, without allocating the base structure.
	* trans-array.h : Add primitive for gfc_copy_allocatable_data.
	Add primitive for gfc_copy_only_alloc_comp.
	* trans-expr.c (gfc_conv_procedure_call): After calls to
	transformational functions with results that are derived types
	with allocatable components, copy the components in the result.
	(gfc_trans_arrayfunc_assign): Deallocate allocatable components
	of lhs derived types before allocation.
	

2010-01-14  Paul Thomas  <pault@gcc.gnu.org>

        PR fortran/41478
        * gfortran.dg/alloc_comp_scalar_1.f90: New test.
        * gfortran.dg/alloc_comp_transformational_1.f90: New test.

From-SVN: r155877
2010-01-14 06:17:38 +00:00
Paul Thomas
08b0203633 re PR fortran/42481 (generic interface not recognized)
2010-01-14  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/42481
	* module.c (load_generic_interfaces): If a procedure that is
	use associated but not generic is given an interface that
	includes itself, then make it generic.

2010-01-14  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/42481
	* gfortran.dg/generic_19.f90 : New test.

From-SVN: r155876
2010-01-14 06:13:19 +00:00
GCC Administrator
671ec5cbcf Daily bump.
From-SVN: r155875
2010-01-14 00:17:43 +00:00
Richard Guenther
5db959b648 re PR tree-optimization/42730 (ice: verify_stmts failed)
2010-01-13  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/42730
	* tree-ssa-ccp.c (maybe_fold_stmt_indirect): Add shortcut for
	offset zero.

	* gcc.c-torture/compile/pr42730.c: New testcase.

From-SVN: r155872
2010-01-13 22:21:25 +00:00
Steve Ellcey
30c73d1a36 PR target/pr42542
2010-01-13  Steve Ellcey  <sje@cup.hp.com>

	PR target/pr42542
	* gcc.target/ia64/pr42542-1.c: New.
	* gcc.target/ia64/pr42542-2.c: New.
	* gcc.target/ia64/pr42542-3.c: New.

From-SVN: r155871
2010-01-13 22:17:27 +00:00
Steve Ellcey
9540f5ef92 PR target/pr42542
2010-01-13  Steve Ellcey  <sje@cup.hp.com>

	PR target/pr42542
	* config/ia64/ia64.c (ia64_expand_vecint_compare): Convert GTU to GT
	for V2SI by subtracting (-(INT MAX) - 1) from both operands to make
	them signed.

From-SVN: r155870
2010-01-13 22:16:25 +00:00
Dodji Seketeli
a5859aaf07 re PR c++/42634 (ICE with -g -O2 -std=c++0x in copy_fn_p, at cp/decl.c:9973)
Fix PR c++/42634

gcc/cp/ChangeLog:
	PR c++/42634
	* error.c (dump_template_parms): Use innermost template
	arguments before calling count_non_default_template_args.
	(count_non_default_template_args): We are being called with
	template innermost arguments now. There is no need to ensure
	that again.

gcc/testsuite/ChangeLog:
	PR c++/42634
	* g++.dg/template/error45.C: New test.

From-SVN: r155868
2010-01-13 21:06:26 +01:00
Bernd Schmidt
6cca15ea85 bfin.c (bfin_reorg): Call run_selective_scheduling rather than schedule_insns if the pass is enabled.
* config/bfin/bfin.c (bfin_reorg): Call run_selective_scheduling
	rather than schedule_insns if the pass is enabled.

From-SVN: r155867
2010-01-13 20:00:03 +00:00
Bernd Schmidt
84fb8ff511 libgcc-bfin.ver: Regenerate based on current libgcc-std.ver.
* config/bfin/libgcc-bfin.ver: Regenerate based on current
	libgcc-std.ver.  Add entries for ___smulsi3_highpart and
	___umulsi3_highpart.

From-SVN: r155866
2010-01-13 19:53:01 +00:00
Martin Jambor
19656178bc re PR tree-optimization/42704 (ICE in verify_ssa after early SRA)
2010-01-13  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/42704
	* tree-sra.c (sra_modify_assign): Do not delete assignments to
	SSA_NAMEs.

	* testsuite/g++.dg/torture/pr42704.C: New test.

From-SVN: r155865
2010-01-13 19:47:19 +01:00
Benjamin Kosnik
2a2ace66e9 iterator_tracker.h: Add copyright.
2010-01-13  Benjamin Kosnik  <bkoz@redhat.com>

	* include/profile/iterator_tracker.h: Add copyright.

From-SVN: r155864
2010-01-13 18:31:25 +00:00