Commit Graph

106273 Commits

Author SHA1 Message Date
Martin Jambor
e4cba915b8 re PR tree-optimization/47382 (g++.dg/ipa/devirt-d-1.C FAILs with -finline-functions)
2011-01-25  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/47382
	* gimple-fold.c (gimple_fold_obj_type_ref_call): Removed.
	(gimple_fold_call): Do not call gimple_fold_obj_type_ref_call.

	* testsuite/g++.dg/torture/pr47382.C: New test.
	* testsuite/g++.dg/opt/devirt1.C: Xfail.

From-SVN: r169245
2011-01-25 18:08:47 +01:00
Janne Blomqvist
15fb94aef9 PR 47375 getlog thread safety
From-SVN: r169243
2011-01-25 18:46:00 +02:00
Joel Sherrill
f822b8eab1 m32r.c: Define TARGET_EXCEPT_UNWIND_INFO to sjlj_except_unwind_info.
2011-01-25  Joel Sherrill <joel.sherrill@oarcorp.com>

	* config/m32r/m32r.c: Define TARGET_EXCEPT_UNWIND_INFO to
	sjlj_except_unwind_info.

From-SVN: r169242
2011-01-25 16:43:37 +00:00
Richard Guenther
194313e274 re PR tree-optimization/47426 (wrong code with -O2 -fipa-pta)
2011-01-25  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/47426
	* tree-ssa-structalias.c (ipa_pta_execute): Make externally
	visible functions results escape.

	* gcc.dg/torture/pr47426-1.c: New testcase.
	* gcc.dg/torture/pr47426-2.c: Likewise.

From-SVN: r169241
2011-01-25 16:38:26 +00:00
Jakub Jelinek
147a0bcfc7 re PR target/45701 (Fail to prefer using r3 for padding a push/pop multiple to 8-byte alignment)
PR target/45701
	* config/arm/arm.c (any_sibcall_uses_r3): New function.
	(arm_get_frame_offsets): Use it.

2011-01-25  Yao Qi  <yao@codesourcery.com>

        PR target/45701
        * gcc.target/arm/pr45701-1.c: New test.
        * gcc.target/arm/pr45701-2.c: New test.
	* gcc.target/arm/pr45701-3.c: New test.

From-SVN: r169240
2011-01-25 17:22:34 +01:00
Ian Lance Taylor
e3bb089d5f lto-plugin.c (gold_version): New static variable.
* lto-plugin.c (gold_version): New static variable.
	(all_symbols_read_handler): Don't check pass_through_items if
	using gold 1.11 or later.
	(onload): Set gold_version if we see LDPT_GOLD_VERSION.

From-SVN: r169237
2011-01-25 15:29:02 +00:00
Sebastian Pop
db963b5287 Fix PR47271: only if-convert full writes.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
	    Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/47271
	* tree-if-conv.c (bb_postdominates_preds): New.
	(if_convertible_bb_p): Call bb_postdominates_preds.
	(if_convertible_loop_p_1): Compute CDI_POST_DOMINATORS.
	(predicate_scalar_phi): Call bb_postdominates_preds.

	* gcc.dg/tree-ssa/ifc-pr47271.c: New.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>

From-SVN: r169233
2011-01-25 14:51:23 +00:00
Nick Clifton
bcddd3b99c rx.h (LIBCALL_VALUE): Do not promote complex types.
* config/rx/rx.h (LIBCALL_VALUE): Do not promote complex types.
	* config/rx/rx.c (rx_function_value): Likewise.
	(rx_promote_function_mode): Likewise.
	(gen_safe_add): Place an outsized immediate value inside an UNSPEC
	in order to make it legitimate.
	* config/rx/rx.md (adddi3_internal): If the second operand is a
	MEM make sure that the first operand is the same as the result
	register.
	(addsi3_unspec): Delete.
	(subdi3): Do not accept immediate operands.
	(subdi3_internal): Likewise.

	* gcc.target/rx/builtins.c: Allow -fipa-cp-clone.
	(saturate_add): Delete.
	(exchange): Delete.
	(main): Do not run saturate_add.
	(set_interrupts): Delete.

From-SVN: r169232
2011-01-25 14:32:52 +00:00
Jeff Law
7e6cb02214 re PR rtl-optimization/37273 (IRA does not re-materializes addresses (loads from the TOC))
PR rtl-optimization/37273
	* ira-costs.c (scan_one_insn): Detect constants living in memory and
	handle them like argument loads from stack slots.  Do not double
	count memory for memory constants and argument loads from stack slots.

From-SVN: r169231
2011-01-25 07:10:46 -07:00
Tobias Burnus
315d905fd5 re PR fortran/47448 (Invalid check for ASSIGNMENT(=))
2011-01-25  Tobias Burnus  <burnus@net-b.de>

        PR fortran/47448
        * interface.c (gfc_check_operator_interface): Fix
        defined-assignment check.

2011-01-25  Tobias Burnus  <burnus@net-b.de>

        PR fortran/47448
        * gfortran.dg/redefined_intrinsic_assignment_2.f90: New.

From-SVN: r169228
2011-01-25 14:30:32 +01:00
Jakub Jelinek
9ffa621ead re PR tree-optimization/47427 (ICE in process_constraint, at tree-ssa-structalias.c:2901)
PR tree-optimization/47427
	PR tree-optimization/47428
	* tree-ssa-copyrename.c (copy_rename_partition_coalesce): Don't
	coalesce if the new root var would be TREE_READONLY.

	* gcc.c-torture/compile/pr47427.c: New test.
	* gcc.c-torture/compile/pr47428.c: New test.

From-SVN: r169226
2011-01-25 13:01:54 +01:00
Richard Guenther
ae5b7e39b6 re PR tree-optimization/47411 (Bootstrap failure on x86-64/Darwin)
2011-01-25  Richard Guenther  <rguenther@suse.de>

	PR middle-end/47411
	* gcc.dg/torture/pr47411.c: New testcase.

From-SVN: r169225
2011-01-25 10:26:20 +00:00
Richard Guenther
5bd6e6526c re PR rtl-optimization/47414 (wrong code with -O -freorder-blocks -fschedule-insns2 -fno-early-inlining -fstrict-aliasing -ftracer)
2011-01-25  Richard Guenther  <rguenther@suse.de>

	PR middle-end/47414
	* tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Use the
	correct type for TBAA.

From-SVN: r169223
2011-01-25 09:55:54 +00:00
Sebastian Pop
7c48ea6910 Do not use a data ref with indices invalid in the loop of the close_phi.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-sese-to-poly.c (dr_indices_valid_in_loop): New.
	(close_phi_written_to_memory): Call for_each_index with
	dr_indices_valid_in_loop.

	* gfortran.dg/graphite/id-24.f: New.
	* gfortran.dg/graphite/id-25.f: New.

From-SVN: r169220
2011-01-25 06:48:52 +00:00
Sebastian Pop
38013f25bc Only copy PBB_DOMAIN when it is initialized.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-sese-to-poly.c (new_pbb_from_pbb): Only copy PBB_DOMAIN
	when it is initialized.

	* gfortran.dg/graphite/id-23.f: New.

From-SVN: r169219
2011-01-25 06:48:42 +00:00
Sebastian Pop
5c640e296a Pass to dr_analyze_indices the analysis loop for subscripts.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-scop-detection.c (stmt_has_simple_data_refs_p): Update
	call to graphite_find_data_references_in_stmt.
	* graphite-sese-to-poly.c (outermost_loop_in_sese_1): New.
	(try_generate_gimple_bb): Call outermost_loop_in_sese_1.  Update
	call to graphite_find_data_references_in_stmt.
	(analyze_drs_in_stmts): Same.
	* tree-data-ref.c (dr_analyze_indices): Pass in parameter the loop
	in which the scalar analysis of indices is performed.
	(create_data_ref): Same.  Update call to dr_analyze_indices.
	(find_data_references_in_stmt): Update call to create_data_ref.
	(graphite_find_data_references_in_stmt): Same.
	* tree-data-ref.h (graphite_find_data_references_in_stmt): Update
	declaration.
	(create_data_ref): Same.
	* tree-ssa-loop-prefetch.c (determine_loop_nest_reuse): Update
	call to create_data_ref.

From-SVN: r169218
2011-01-25 06:48:32 +00:00
Sebastian Pop
ac53c0698a Move rewrite_commutative_reductions_out_of_ssa before find_scop_parameters.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-sese-to-poly.c (build_poly_scop): Move
	rewrite_commutative_reductions_out_of_ssa before
	find_scop_parameters.

From-SVN: r169217
2011-01-25 06:48:20 +00:00
Sebastian Pop
64c69d8cd1 Patch not merged, update ChangeLog.graphite.
From-SVN: r169216
2011-01-25 06:48:11 +00:00
Sebastian Pop
ab4173cf3b Fail when PPL 0.11 is not present and CLooG has been requested.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

	* configure.ac: Call AC_MSG_ERROR when PPL 0.11 is not present and
	CLooG has been requested.
	* configure: Regenerated.

From-SVN: r169215
2011-01-25 06:47:58 +00:00
Sebastian Pop
cc2c5a6674 Patch not merged, update ChangeLog.graphite.
From-SVN: r169214
2011-01-25 06:47:46 +00:00
Sebastian Pop
3d17df1562 Do not create the temporary array for reductions into VAR_DECL, PARM_DECL, and RESULT_DECL.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-sese-to-poly.c (close_phi_written_to_memory): Also allow
	VAR_DECL, PARM_DECL, and RESULT_DECL.

	* gfortran.dg/graphite/interchange-3.f90: Un-XFAILed.

From-SVN: r169213
2011-01-25 06:47:34 +00:00
Sebastian Pop
c513da01e3 Allow several reductions in a reduction PBB.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-dependences.c (reduction_dr_1): Allow several reductions
	in a reduction PBB.
	* graphite-sese-to-poly.c (split_reduction_stmt): Do not split PBBs
	that have already been marked as PBB_IS_REDUCTION.

From-SVN: r169212
2011-01-25 06:47:21 +00:00
Sebastian Pop
3a292d5909 Remove duplicate close phi nodes in the canonical close phi representation.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-scop-detection.c (same_close_phi_node): New.
	(remove_duplicate_close_phi): New.
	(make_close_phi_nodes_unique): New.
	(canonicalize_loop_closed_ssa): Call make_close_phi_nodes_unique.

From-SVN: r169211
2011-01-25 06:47:09 +00:00
Sebastian Pop
ba85844784 Relax the definition of same_pdr_p.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-dependences.c (new_poly_ddr): Call same_pdr_p.
	* graphite-poly.h (same_pdr_p): Do not expect that the PDR_TYPE
	of both data references to be the same.

From-SVN: r169210
2011-01-25 06:46:56 +00:00
Sebastian Pop
8d865c568a Pass 0 as the number of parameters to PIP when testing for integer feasibility.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-dependences.c (build_lexicographical_constraint): Remove the
	gdim parameter.
	(build_lexicographical_constraint): Adjust call to ppl_powerset_is_empty.
	(dependence_polyhedron): Same.
	(graphite_legal_transform_dr): Same.
	(graphite_carried_dependence_level_k): Same.
	* graphite-ppl.c (ppl_powerset_is_empty): Remove the nb_params parameter.
	* graphite-ppl.h (ppl_powerset_is_empty): Adjust declaration.

From-SVN: r169209
2011-01-25 06:46:43 +00:00
Sebastian Pop
50034a3643 Remove the temporary array for reductions written to memory.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-sese-to-poly.c
	(translate_scalar_reduction_to_array_for_stmt): Call unshare_expr.
	(close_phi_written_to_memory): New.
	(translate_scalar_reduction_to_array): Call close_phi_written_to_memory
	and unshare_expr.

	* gcc.dg/graphite/block-0.c: Un-XFAILed.
	* gcc.dg/graphite/block-1.c: Un-XFAILed.
	* gcc.dg/graphite/block-7.c: Un-XFAILed.
	* gcc.dg/graphite/block-8.c: Un-XFAILed.
	* gcc.dg/graphite/interchange-12.c: Un-XFAILed.
	* gcc.dg/graphite/interchange-14.c: Un-XFAILed.
	* gcc.dg/graphite/interchange-15.c: Un-XFAILed.
	* gcc.dg/graphite/interchange-8.c: Un-XFAILed.
	* gcc.dg/graphite/interchange-mvt.c: Un-XFAILed.

From-SVN: r169208
2011-01-25 06:46:31 +00:00
Sebastian Pop
0deada9e5b Expect at least the version 0.11 of PPL.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

toplev/
	* configure: Regenerated.
	* configure.ac: Check for version 0.11 (or later revision) of PPL.

toplev/gcc/
	* doc/install.texi: Update the expected version number of PPL to 0.11.
	* graphite-ppl.c (ppl_powerset_is_empty): Remove now dead code under
	#if PPL_VERSION_MINOR < 11.

From-SVN: r169207
2011-01-25 06:46:19 +00:00
Sebastian Pop
d7d3d6af69 Minimize the number of expensive calls to ppl_powerset_is_empty.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-dependences.c: Include graphite-cloog-util.h.
	(new_poly_ddr): Inlined into dependence_polyhedron.
	(free_poly_ddr): Moved close by new_poly_ddr.
	(dependence_polyhedron_1): Renamed dependence_polyhedron.
	Early return NULL when ppl_powerset_is_empty returns true.
	(dependence_polyhedron): Renamed new_poly_ddr.  Call only once
	poly_drs_may_alias_p.  Avoid one call to ppl_powerset_is_empty.
	(graphite_legal_transform_dr): Call new_poly_ddr.
	(graphite_carried_dependence_level_k): Same.
	(dot_original_deps_stmt_1): Renamed dot_deps_stmt_2.  Use new_poly_ddr.
	(dot_transformed_deps_stmt_1): Removed.
	(dot_deps_stmt_1): Call dot_deps_stmt_2.
	(dot_original_deps): Renamed dot_deps_2.  Call new_poly_ddr.
	(dot_deps_1): Call dot_deps_2.
	* Makefile.in (graphite-dependences.o): Add missing dependence on
	graphite-cloog-util.h.

From-SVN: r169206
2011-01-25 06:46:07 +00:00
Sebastian Pop
28c5db5784 Use PIP to determine the integer feasibility of a constraint system.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-dependences.c (new_poly_dr): Call ppl_powerset_is_empty.
	(build_lexicographical_constraint): Same.
	(dependence_polyhedron_1): Same.
	(graphite_legal_transform_dr): Same.
	(graphite_carried_dependence_level_k): Same.
	* graphite-ppl.c (ppl_powerset_is_empty): New.
	* graphite-ppl.h (ppl_powerset_is_empty): Declared.
	* tree-data-ref.c (dump_data_reference): Print the basic block index.

	* gcc.dg/graphite/block-0.c: Add documentation.
	* gcc.dg/graphite/block-4.c: Same.
	* gcc.dg/graphite/block-7.c: Same.
	* gcc.dg/graphite/block-8.c: New.
	* gcc.dg/graphite/interchange-1.c: Un-XFAILed.
	* gcc.dg/graphite/interchange-11.c: Un-XFAILed.
	* gcc.dg/graphite/interchange-12.c: Add documentation.
	* gcc.dg/graphite/interchange-13.c: New.
	* gcc.dg/graphite/interchange-14.c: New.
	* gcc.dg/graphite/interchange-15.c: New.
	* gcc.dg/graphite/interchange-8.c: Add documentation.
	* gcc.dg/graphite/interchange-mvt.c: Same.

From-SVN: r169205
2011-01-25 06:45:54 +00:00
Sebastian Pop
5168d98f3d Correct the precedence relation.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-dependences.c (build_pairwise_scheduling): Correctly compute
	the "a followed by b" relation and document it.

From-SVN: r169204
2011-01-25 06:45:42 +00:00
Sebastian Pop
4a40293ae1 speedup compilation
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-dependences.c (build_lexicographical_constraint): Stop the
	iteration when the bag of constraints is empty.

From-SVN: r169203
2011-01-25 06:45:29 +00:00
Sebastian Pop
271fb6fae1 Fix pbb_remove_duplicate_pdrs.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-poly.c (pbb_remove_duplicate_pdrs): Make it work.

From-SVN: r169202
2011-01-25 06:45:16 +00:00
Sebastian Pop
92d236802c Test the profitability of interchange on the perfect nest.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-interchange.c (lst_interchange_profitable_p): Takes a loop
	nest and two loop depths as parameters.
	(lst_try_interchange_loops): Call lst_interchange_profitable_p after
	lst_perfect_nestify.

From-SVN: r169201
2011-01-25 06:45:04 +00:00
Sebastian Pop
2f51defffd Print the data dependence polyhedron in the PPL format.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-dependences.c (print_pddr): Call
	ppl_io_fprint_Pointset_Powerset_C_Polyhedron.

From-SVN: r169200
2011-01-25 06:44:53 +00:00
Sebastian Pop
07f3593c36 Add debug_gmp_value.
2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-ppl.c (debug_gmp_value): New.
	* graphite-ppl.h (debug_gmp_value): Declared.

From-SVN: r169199
2011-01-25 06:44:41 +00:00
Tobias Grosser
27b9aa80ca Update required cloog to 0.16.1.
2011-01-25  Tobias Grosser  <grosser@fim.uni-passau.de>

	* configure: Regenerated.
	* configure.ac: Use CLOOG_CHECK_VERSION(0,16,1).

From-SVN: r169198
2011-01-25 06:44:30 +00:00
Tobias Grosser
3fae6099f4 Document availability of cloog-0.16
2011-01-25 Tobias Grosser <grosser@fim.uni-passau.de>

	* doc/install.texi: Document availability of cloog-0.16.

From-SVN: r169197
2011-01-25 06:44:20 +00:00
Vladimir Kargov
d8c649a414 Patch not merged, update ChangeLog.graphite.
From-SVN: r169196
2011-01-25 06:44:12 +00:00
Vladimir Kargov
f8799f7ae2 Patch not merged, update ChangeLog.graphite.
From-SVN: r169195
2011-01-25 06:44:05 +00:00
Sebastian Pop
1c3ba85bea Free invalid postdominance info.
2011-01-25  Vladimir Kargov  <kargov@gmail.com>

	* graphite-scop-detection.c (canonicalize_loop_closed_ssa): Free
	invalid postdominance info.

From-SVN: r169194
2011-01-25 06:43:57 +00:00
Sebastian Pop
f1189b6d4f Add changelogs of patches that will not be merged to trunk.
From-SVN: r169193
2011-01-25 06:43:48 +00:00
Ian Lance Taylor
0544ed0caa re PR go/47452 (Bootstrap fails in libgo (argument has incompatible type))
PR go/47452
Pick up local .gox files for specially built packages.

From-SVN: r169192
2011-01-25 05:45:21 +00:00
Ian Lance Taylor
d62d06b6ff libgo: Fix typo in syscalls/socket_bsd.go.
From-SVN: r169190
2011-01-25 00:40:00 +00:00
GCC Administrator
b74385f07c Daily bump.
From-SVN: r169189
2011-01-25 00:18:38 +00:00
Ian Lance Taylor
ca11cc98b9 Recognize m68k, mips, PPC. Don't require arch syscall files to exist.
From-SVN: r169185
2011-01-24 23:42:22 +00:00
Jan Hubicka
e8ba94fc1f re PR c/21659 ([unit-at-a-time] "weak declaration must precede definition" error missing at >= O1)
PR c/21659
	* doc/extend.texi (weak pragma): Drop claim that it must
	appear before definition.
	* varasm.c (merge_weak, declare_weak): Only sanity check
	that DECL is not output at a time it is declared weak.

From-SVN: r169184
2011-01-24 23:07:25 +00:00
Ian Lance Taylor
71c67403a2 syscalls/sleep_rtems.go: Add missing package clause.
From-SVN: r169183
2011-01-24 22:44:52 +00:00
Kenneth Zadeck
2b6e2d13ff machmode.def: Fixed comments.
2011-01-24  Kenneth Zadeck  <zadeck@naturalbridge.com>

	* machmode.def: Fixed comments.

From-SVN: r169179
2011-01-24 20:08:06 +00:00
Graham Reed
083fcbcbc3 re PR libstdc++/47387 (AIX ctype 'mask' override not working)
2011-01-24  Graham Reed  <greed@pobox.com>

	PR libstdc++/47387
	* config/os/aix/ctype_inline.h (ctype<char>::is): Use _M_table if
	provided.

From-SVN: r169178
2011-01-24 19:53:35 +00:00
Kai Tietz
9841210f04 emit-rtl.c (reg_attrs_htab_hash): Replace long by intptr_t.
2011-01-24  Kai Tietz  <kai.tietz@onevision.com>

        * emit-rtl.c (reg_attrs_htab_hash): Replace long by intptr_t.

Additionally correct ChangeLog date entry for Koenig.

From-SVN: r169176
2011-01-24 19:49:20 +01:00