Commit Graph

81729 Commits

Author SHA1 Message Date
Seongbae Park
467f79e82d combine.c (subst): Fix typo.
2007-06-11  Seongbae Park <seongbae.park@gmail.com>

	* combine.c (subst): Fix typo.

From-SVN: r125635
2007-06-12 01:39:25 +00:00
Seongbae Park
46cc214143 combine.c (subst): Use reg_overlap_mentioned_p instead of comparing register numbers directly.
2007-06-11  Seongbae Park <seongbae.park@gmail.com>

	* combine.c (subst): Use reg_overlap_mentioned_p
	instead of comparing register numbers directly.

From-SVN: r125634
2007-06-12 01:11:03 +00:00
GCC Administrator
b1db1d9b26 Daily bump.
From-SVN: r125631
2007-06-12 00:17:06 +00:00
Paul Thomas
9d99ee7be4 re PR fortran/29786 (Initialization of overlapping variables: Not implemented)
2007-06-12  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/29786
	PR fortran/30875
	* trans-common.c (get_init_field): New function.
	(create_common): Call get_init_field for overlapping
	initializers in equivalence blocks.
	* resolve.c (resolve_equivalence_derived, resolve_equivalence):
	Remove constraints on initializers in equivalence blocks.
	* target-memory.c (expr_to_char, gfc_merge_initializers):
	New functions.
	(encode_derived): Add the bit offset to the byte offset to get
	the total offset to the field.
	* target-memory.h : Add prototype for gfc_merge_initializers.


2007-06-12  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/29786
	* gfortran.dg/equiv_7.f90: New test.
	* gfortran.dg/equiv_constraint_7.f90: Change error message.


	PR fortran/30875
	* gfortran.dg/equiv_constraint_5.f90: Correct code and error.

From-SVN: r125628
2007-06-11 22:39:21 +00:00
Kenneth Zadeck
b0384c544e reload1.c (mark_home_live_1): Use the mode parameter.
2007-06-11  Kenneth Zadeck <zadeck@naturalbridge.com>

	* reload1.c (mark_home_live_1): Use the mode parameter.

From-SVN: r125627
2007-06-11 22:03:01 +00:00
Andreas Tobler
5c596005de setjmp-3.c: Rename raise to raise0.
2007-06-11  Andreas Tobler  <a.tobler@schweiz.org>

	* gcc.dg/setjmp-3.c: Rename raise to raise0.
	* gcc.dg/setjmp-4.c: Likewise.
	* gcc.target/i386/980211-1.c: Rename __signbitl to __signbitl0.

From-SVN: r125626
2007-06-11 21:07:34 +02:00
Kenneth Zadeck
0a41f3b2c8 df-scan.c (df_insn_delete, [...]): Fixed spelling of word "deferred".
2007-06-11  Kenneth Zadeck <zadeck@naturalbridge.com>

	* df-scan.c (df_insn_delete, df_insn_rescan, df_insn_rescan_all,
	df_process_deferred_rescans, df_notes_rescan): Fixed spelling of
	word "deferred".
	* df-core.c: Ditto.

From-SVN: r125625
2007-06-11 18:22:49 +00:00
Daniel Berlin
6fb5fa3cbc Merge dataflow branch into mainline
From-SVN: r125624
2007-06-11 18:02:15 +00:00
Uros Bizjak
a91d32a4a6 i386.md ("*movtf_internal): Penalize moves to and from integer registers.
* config/i386/i386.md ("*movtf_internal): Penalize moves to and
        from integer registers.
        (FP mode splitters): Handle TFmode.

From-SVN: r125623
2007-06-11 18:06:19 +02:00
Arnaud Charlet
7a9007db0c Add new tests
From-SVN: r125622
2007-06-11 18:04:46 +02:00
Rafael Espindola
12753674ec really remove signed(_or_unsigned)?_type langhooks
From-SVN: r125621
2007-06-11 15:40:55 +00:00
Eric Botcazou
73fd4ad6cd tree-ssa-structalias.c (find_what_p_points_to): Return false for ref-all pointers that point-to anything.
* tree-ssa-structalias.c (find_what_p_points_to): Return false
	for ref-all pointers that point-to anything.

From-SVN: r125620
2007-06-11 15:40:52 +00:00
Joseph Myers
afcc986d03 arm.c (arm_output_dwarf_dtprel, [...]): New.
* config/arm/arm.c (arm_output_dwarf_dtprel,
	TARGET_ASM_OUTPUT_DWARF_DTPREL): New.

From-SVN: r125619
2007-06-11 15:55:06 +01:00
Paolo Bonzini
abca47391d MAINTAINERS (Various Maintainer): Add myself as dataflow maintainer.
2007-06-11  Paolo Bonzini  <bonzini@gnu.org>

	* MAINTAINERS (Various Maintainer): Add myself as
	dataflow maintainer.

From-SVN: r125618
2007-06-11 13:33:29 +00:00
Bernd Schmidt
0ea80eb62c bfin.md (movdi_insn, [...]): Don't allow constant to memory moves.
* config/bfin/bfin.md (movdi_insn, movsi_insn, movv2hi_insn,
	movhi_insn, movqi_insn, movsf_insn, movdf_insn): Don't allow constant
	to memory moves.

From-SVN: r125617
2007-06-11 11:29:00 +00:00
Rafael Espindola
b0464c8897 remove signed(_or_unsigned)?_type langhooks
From-SVN: r125616
2007-06-11 10:23:11 +00:00
Uros Bizjak
69c553ef2a re PR target/32280 (_mm_srli_si128, heinous code for some shifts)
PR target/32280
	* config/i386/sse.md ("sse2_ashlti", "sse2_lshrti3"): Move ...
	* config/i386/i386.md ("sse2_ashlti", "sse2_lshrti3"): ... to here.

testsuite/ChangeLog:
	
	PR target/32280
	* gcc.target/i386/pr32280.c: New test.

From-SVN: r125615
2007-06-11 12:13:00 +02:00
Uros Bizjak
f1da2df1e9 re PR middle-end/32279 (Fold 1.0/sqrt(x/y) to sqrt(y/x))
PR middle-end/32279
	* fold-const (fold_binary) [RDIV_EXPR]: Optimize a/sqrt(b/c)
	into a*sqrt(c/b) if flag_unsafe_math_optimizations is set.

testsuite/ChangeLog:

	PR middle-end/32279
	* gcc.dg/builtins-11.c: Also check folding of a/sqrt(b/c).

From-SVN: r125614
2007-06-11 11:09:24 +02:00
Bob Duff
93e17a25c4 Resync
From-SVN: r125613
2007-06-11 08:44:41 +02:00
Bob Duff
2133b4c055 g-stsifd-sockets.adb (Create): Work around strange behavior of 'bind' on windows that causes 'connect' to fail...
2007-06-11  Bob Duff  <duff@adacore.com>
	    Thomas Quinot  <quinot@adacore.com>

	* g-stsifd-sockets.adb (Create): Work around strange behavior of
	'bind' on windows that causes 'connect' to fail intermittently, by
	retrying the 'bind'.
	(GNAT.Sockets.Thin.Signalling_Fds): New procedure Close.

From-SVN: r125612
2007-06-11 08:41:43 +02:00
Jerry DeLisle
85e053e972 re PR fortran/32235 (incorrectly position text file after backspace)
2007-06-10  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/32235
	* gfortran.dg/backspace_9.f: New test.

From-SVN: r125611
2007-06-11 03:06:01 +00:00
GCC Administrator
00af1407c2 Daily bump.
From-SVN: r125609
2007-06-11 00:16:58 +00:00
Jerry DeLisle
82fa3fc0d3 re PR fortran/32235 (incorrectly position text file after backspace)
2007-06-10  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/32235
	* io/transfer.c (st_read): Remove test for end of file condition.
	(next_record_r): Add test for end of file condition.

From-SVN: r125606
2007-06-10 22:50:47 +00:00
Jan Sjodin
51c0074eed lambda-code.c (remove_iv): New.
* lambda-code.c (remove_iv): New.
	(lambda_loopnest_to_gcc_loopnest): Use remove_iv.


Co-Authored-By: Sebastian Pop <sebpop@gmail.com>

From-SVN: r125605
2007-06-10 21:00:59 +00:00
Zdenek Dvorak
79f5e44262 tree-data-ref.c (dr_analyze_alias): Handle case smt is NULL.
* tree-data-ref.c (dr_analyze_alias): Handle case smt is NULL.
	* tree-predcom.c (mark_virtual_ops_for_renaming): Exported.
	* tree-ssa-loop-prefetch.c: Include optabs.h.
	(FENCE_FOLLOWING_MOVNT): New macro.
	(struct mem_ref): Add independent_p and storent_p fields.
	(record_ref): Initalize the new fields.
	(gather_memory_references_ref): Return true if the reference
	could be analysed.
	(gather_memory_references): Check whether all memory accesses
	in loop were recorded.
	(should_issue_prefetch_p): Return false for nontemporal stores.
	(nontemporal_store_p, mark_nontemporal_store, emit_mfence_after_loop,
	may_use_storent_in_loop_p, mark_nontemporal_stores): New functions.
	(determine_loop_nest_reuse): Detect independent memory references.
	(loop_prefetch_arrays): Call mark_nontemporal_stores.
	* tree-flow.h (mark_virtual_ops_for_renaming): Declare.
	* Makefile.in (tree-ssa-loop-prefetch.o): Add OPTABS_H dependency.
	* config/i386/i386.h (x86_mfence): Declare.
	(FENCE_FOLLOWING_MOVNT): Return x86_mfence.
	* config/i386/i386.c (x86_mfence): New variable.
	(ix86_init_mmx_sse_builtins): Initialize x86_mfence.

	* tree-pretty-print.c (dump_generic_node): Mark nontemporal stores.
	* optabs.c (init_optabs): Initialize storent_optab.
	* optabs.h (enum optab_index): Add OTI_storent.
	(storent_optab): Declare.
	* genopinit.c (optabs): Add initialization for storent_optab.
	* tree.h (MOVE_NONTEMPORAL): New macro.
	* expr.c (expand_assignment, store_expr, store_constructor_field,
	store_constructor, store_field, expand_expr_real_1): Propagate
	nontemporality of the expanded store.
	(emit_storent_insn): New function.
	* expr.h (expand_assignment, store_expr): Declaration changed.
	* function.c (assign_parm_setup_reg): Pass false as nontemporality
	to expand_assignment.
	* stmt.c (expand_asm_expr): Ditto.
	* calls.c (initialize_argument_information): Pass false as
	nontemporality to store_expr.
	* config/i386/sse.md (storentv4sf, storentv2df, storentv2di,
	storentsi): New.

	* gcc.dg/tree-ssa/prefetch-7.c: New test.

From-SVN: r125604
2007-06-10 20:39:22 +00:00
Daniel Berlin
6bdff197e6 tree-ssa-structalias.c (set_uids_in_ptset): Add is_deref'd parameter, use it.
2007-06-09  Daniel Berlin  <dberlin@dberlin.org>

	* tree-ssa-structalias.c (set_uids_in_ptset): Add is_deref'd
	parameter, use it.
	(find_what_p_points_to): Pass new parameter to set_uids_in_ptset.

From-SVN: r125603
2007-06-10 20:21:48 +00:00
Duncan Sands
1bbf850280 decl.c (gnat_to_gnu_entity): Use pointers to dummy nodes...
* decl.c (gnat_to_gnu_entity): Use pointers to dummy nodes, rather
	than to void, for the fields when making a new fat pointer type.
	(gnat_substitute_in_type): Now substitute_in_type.
	* gigi.h (gnat_substitute_in_type): Likewise.
	* trans.c (gnat_gimplify_expr): Remove COMPONENT_REF kludge.
	* utils.c (update_pointer_to): Update fat pointers by updating the
	dummy node pointers used for the fields.

From-SVN: r125602
2007-06-10 18:36:40 +00:00
Daniel Berlin
55edccf416 tree-data-ref.c (dr_may_alias_p): Check that decl_a != decl_b, and allow DECL_P here.
2007-06-09  Daniel Berlin  <dberlin@dberlin.org>

	* tree-data-ref.c (dr_may_alias_p): Check that decl_a != decl_b,
	and allow DECL_P here.

From-SVN: r125601
2007-06-10 14:13:18 +00:00
Benjamin Kosnik
28ec62e0a7 testsuite_performance.h: Add cstring include for memset.
2007-06-10  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/util/testsuite_performance.h: Add cstring include for
	memset.

From-SVN: r125600
2007-06-10 09:14:43 +00:00
GCC Administrator
e463de681e Daily bump.
From-SVN: r125598
2007-06-10 00:16:56 +00:00
Zdenek Dvorak
9e824336e5 tree-scalar-evolution.c (follow_ssa_edge_in_rhs, [...]): Keep more precise track of the size of the expression.
* tree-scalar-evolution.c (follow_ssa_edge_in_rhs,
	follow_ssa_edge_in_condition_phi, follow_ssa_edge): Keep more precise
	track of the size of the expression.
	* cfghooks.c (merge_blocks): Remove block from loops structure only
	after call of the merge_blocks hook.

	* gcc.dg/tree-ssa/loop-28.c: New testcase.

From-SVN: r125595
2007-06-09 21:34:08 +00:00
Keith Seitz
408a86c03e dummyagent.c (Agent_OnLoad): Add missing return value.
* testsuite/libjava.jvmti/dummyagent.c (Agent_OnLoad):
        Add missing return value.

From-SVN: r125594
2007-06-09 17:32:42 +00:00
Tom Tromey
0da300cde3 c-decl.c (grokdeclarator): Added 'deprecated_state' argument.
* c-decl.c (grokdeclarator): Added 'deprecated_state' argument.
	(deprecated_state): Removed.
	(start_decl): Update.
	(enum deprecated_states): Moved earlier.
	(groktypename): Update.
	(push_parm_decl): Likewise.
	(grokfield): Likewise.
	(start_function): Likewise.

From-SVN: r125593
2007-06-09 16:48:47 +00:00
Ian Lance Taylor
9c4ed267d6 re PR tree-optimization/32169 (Ice in set_value_range, at tree-vrp.c:326)
./:	PR tree-optimization/32169
	* tree-vrp.c (extract_range_from_unary_expr): For NOP_EXPR and
	CONVERT_EXPR, check whether min and max both converted to an
	overflow infinity representation.
testsuite/:
	PR tree-optimization/32169
	* gcc.c-torture/compile/pr32169.c: New test.

From-SVN: r125591
2007-06-09 16:28:31 +00:00
Vladimir Prus
84152c25a5 cppfiles.c (open_file): Account for the fact that on windows, opening a directory gives EACCES.
* cppfiles.c (open_file): Account for the
        fact that on windows, opening a directory gives
        EACCES.

From-SVN: r125590
2007-06-09 10:16:52 +00:00
Paolo Carlini
ad365750b1 install.html: Adjust consistently with libstdc++/31717.
2007-06-08  Paolo Carlini  <pcarlini@suse.de>

	* docs/html/install.html: Adjust consistently with libstdc++/31717.

From-SVN: r125587
2007-06-09 00:55:43 +00:00
GCC Administrator
198cfd96e3 Daily bump.
From-SVN: r125585
2007-06-09 00:17:00 +00:00
Eric Botcazou
36808d08a5 reload1.c (fixup_abnormal_edges): Clear bb field for insns not inserted on the edge.
* reload1.c (fixup_abnormal_edges): Clear bb field for insns
	not inserted on the edge.

From-SVN: r125582
2007-06-08 23:22:46 +00:00
Uros Bizjak
9510f6eb7d * ChangeLog fix * ChangeLog fix.
From-SVN: r125578
2007-06-08 22:55:46 +02:00
Bob Wilson
582711fee4 lib1funcs.asm (__udivsi3): Use hardware divide instructions if they are supported.
* config/xtensa/lib1funcs.asm (__udivsi3): Use hardware divide
	instructions if they are supported.
	(__divsi3, __umodsi3, __modsi3): Likewise.
	(__ashldi3, __ashrdi3, __lshrdi3): New.
	* config/xtensa/t-xtensa (LIB1ASMFUNCS): Add DImode shift functions.

From-SVN: r125577
2007-06-08 16:49:23 +00:00
Harsha Jagasia
792ed98bb7 extend.texi: Add fvect-cost-model flag.
gcc/ChangeLog:
2007-06-08  Harsha Jagasia <harsha.jagasia@amd.com>
            Tony Linthicum <tony.linthicum@amd.com>

	* doc/extend.texi: Add fvect-cost-model flag.
	* common.opt (fvect-cost-model): New flag.
	* tree-vectorizer.c (new_stmt_vec_info): Initialize inside and outside
	cost fields in stmt_vec_info struct for STMT.
	* tree-vectorizer.h (stmt_vec_info): Define inside and outside cost
	fields in stmt_vec_info struct and access functions for the same.
	(TARG_COND_BRANCH_COST): Define cost of conditional branch.
	(TARG_VEC_STMT_COST): Define cost of any vector operation, excluding
	load, store and vector to scalar operation.
	(TARG_VEC_TO_SCALAR_COST): Define cost of vector to scalar operation.
	(TARG_VEC_LOAD_COST): Define cost of aligned vector load.
	(TARG_VEC_UNALIGNED_LOAD_COST): Define cost of misasligned vector load.
	(TARG_VEC_STORE_COST): Define cost of vector store.
	(vect_estimate_min_profitable_iters): Define new function.
	* tree-vect-analyze.c (vect_analyze_operations): Add a compile-time
	check to evaluate if loop iterations are less than minimum profitable
	iterations determined by cost model or minimum vect loop bound defined
	by user, whichever is more conservative.
	* tree-vect-transform.c (vect_do_peeling_for_loop_bound): Add a
	run-time check to evaluate if loop iterations are less than minimum
	profitable iterations determined by cost model or minimum vect loop
	bound defined by user, whichever is more conservative.
	(vect_estimate_min_profitable_iterations): New function to estimate
	mimimimum iterartions required for vector version of loop to be
	profitable over scalar version.
        (vect_model_reduction_cost): New function.
	(vect_model_induction_cost): New function.
	(vect_model_simple_cost): New function.
	(vect_cost_strided_group_size): New function.
	(vect_model_store_cost): New function.
	(vect_model_load_cost): New function.
	(vectorizable_reduction): Call vect_model_reduction_cost during
	analysis phase.
	(vectorizable_induction): Call vect_model_induction_cost during
	analysis phase.
	(vectorizable_load): Call vect_model_load_cost during analysis phase.
	(vectorizable_store): Call vect_model_store_cost during analysis phase.
	(vectorizable_call, vectorizable_assignment, vectorizable_operation,
	vectorizable_promotion, vectorizable_demotion): Call 
	vect_model_simple_cost during analysis phase.

gcc/testsuite/ChangeLog:
2007-06-08  Harsha Jagasia <harsha.jagasia@amd.com>

	* gcc.dg/vect/costmodel: New directory.
	* gcc.dg/vect/costmodel/i386: New directory.
	* gcc.dg/vect/costmodel/i386/i386-costmodel-vect.exp: New testsuite.
	* gcc.dg/vect/costmodel/i386/costmodel-fast-math-vect-pr29925.c:
	New test.
	* gcc.dg/vect/costmodel/i386/costmodel-vect-31.c: New test.
	* gcc.dg/vect/costmodel/i386/costmodel-vect-33.c: New test.
	* gcc.dg/vect/costmodel/i386/costmodel-vect-68.c: New test.
	* gcc.dg/vect/costmodel/i386/costmodel-vect-reduc-1char.c: New test.
	* gcc.dg/vect/costmodel/x86_64: New directory.
	* gcc.dg/vect/costmodel/x86_64/x86_64-costmodel-vect.exp:
	New testsuite.	
	* gcc.dg/vect/costmodel/x86_64/costmodel-fast-math-vect-pr29925.c:
	New test.
	* gcc.dg/vect/costmodel/x86_64/costmodel-vect-31.c: New test.
	* gcc.dg/vect/costmodel/x86_64/costmodel-vect-33.c: New test.
	* gcc.dg/vect/costmodel/x86_64/costmodel-vect-68.c: New test.
	* gcc.dg/vect/costmodel/x86_64/costmodel-vect-reduc-1char.c: New test.
	* gcc.dg/vect/costmodel/x86_64/costmodel-pr30843.c: New test.

Co-Authored-By: Tony Linthicum <tony.linthicum@amd.com>

From-SVN: r125575
2007-06-08 16:30:49 +00:00
Simon Baldwin
c8e2516ccf reg-stack.c (get_true_reg): Readability change.
* reg-stack.c (get_true_reg): Readability change.  Moved default case
label into direct switch statement scope.

From-SVN: r125574
2007-06-08 16:17:01 +00:00
Simon Baldwin
2c5cfd1fc6 tree-flow-inline.h (var_ann): Replaced erroneous '=' assignment in gcc_assert() with '==' comparison.
* tree-flow-inline.h (var_ann): Replaced erroneous '=' assignment
in gcc_assert() with '==' comparison.

From-SVN: r125573
2007-06-08 16:15:41 +00:00
Francesco Palagi
9735f6ba52 fstream: Add Table 92 in comment.
2007-06-08  Francesco Palagi  <palagi@arcetri.astro.it>

	* include/std/fstream: Add Table 92 in comment.

From-SVN: r125571
2007-06-08 13:16:38 +00:00
Uros Bizjak
837a895482 i386.c (override_options): Merge TARGET_SSE4_2 and TARGET_ABM handling of x86_popcnt variable.
* config/i386/i386.c (override_options): Merge TARGET_SSE4_2 and
	TARGET_ABM handling of x86_popcnt variable.

From-SVN: r125570
2007-06-08 13:34:56 +02:00
Uros Bizjak
5513e23973 extend.texi (X86 Built-in Functions): Document __builtin_fabsq, __builtin_copysignq and __builtin_infq built-in functions.
* doc/extend.texi (X86 Built-in Functions): Document __builtin_fabsq,
	__builtin_copysignq and __builtin_infq built-in functions.

From-SVN: r125569
2007-06-08 13:22:44 +02:00
Uros Bizjak
291d9a2db0 extend.texi (X86 Built-in Functions): Add missing `@item's in SSE4.2 section.
* doc/extend.texi (X86 Built-in Functions): Add missing `@item's in
	SSE4.2 section.  Correct built-in function names in SSE4A section.

From-SVN: r125568
2007-06-08 13:08:12 +02:00
Uros Bizjak
459e691ae8 re PR tree-optimization/32243 (ICE in vectorizable_type_promotion, at tree-vect-transform.c:2890)
PR tree-optimization/32243
	* tree-vect-transform.c (vectorizable_type_promotion): Move check
	for ncopies after ratio check between nunits_out and nunits_in.
	(vectorizable_type_demotion): Remove single-use variable "scalar_type".

testsuite/ChangeLog:
	
	PR tree-optimization/32243
	* gcc.dg/vect/vect.exp: Add support for -O3 tests.  Reset default
	flags for -Os tests.
	* gcc.dg/vect/03-vect-pr32243.c: New test.

From-SVN: r125567
2007-06-08 11:06:46 +02:00
Dorit Nuzman
0d2665809f re PR tree-optimization/32224 (ICE in vect_analyze_operations, at tree-vect-analyze.c:374)
PR tree-optimization/32224
        * tree-vect-analyze.c (vect_determine_vectorization_factor): Fail
        vectorization upon a non GIMPLE_MODIFY_STMT.

From-SVN: r125566
2007-06-08 08:57:54 +00:00
Francois-Xavier Coudert
2dbc83d953 * trans-intrinsic.c: Revert Lee's 2007-06-04 patch.
From-SVN: r125565
2007-06-08 08:01:10 +00:00