1. 11 Jun, 2007 2 commits
  2. 10 Jun, 2007 8 commits
    • re PR fortran/32235 (incorrectly position text file after backspace) · 82fa3fc0
      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
      Jerry DeLisle committed
    • lambda-code.c (remove_iv): New. · 51c0074e
      	* 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
      Jan Sjodin committed
    • tree-data-ref.c (dr_analyze_alias): Handle case smt is NULL. · 79f5e442
      	* 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
      Zdenek Dvorak committed
    • tree-ssa-structalias.c (set_uids_in_ptset): Add is_deref'd parameter, use it. · 6bdff197
      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
      Daniel Berlin committed
    • decl.c (gnat_to_gnu_entity): Use pointers to dummy nodes... · 1bbf8502
      	* 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
      Duncan Sands committed
    • tree-data-ref.c (dr_may_alias_p): Check that decl_a != decl_b, and allow DECL_P here. · 55edccf4
      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
      Daniel Berlin committed
    • testsuite_performance.h: Add cstring include for memset. · 28ec62e0
      2007-06-10  Benjamin Kosnik  <bkoz@redhat.com>
      
      	* testsuite/util/testsuite_performance.h: Add cstring include for
      	memset.
      
      From-SVN: r125600
      Benjamin Kosnik committed
    • Daily bump. · e463de68
      From-SVN: r125598
      GCC Administrator committed
  3. 09 Jun, 2007 7 commits
  4. 08 Jun, 2007 20 commits
    • reload1.c (fixup_abnormal_edges): Clear bb field for insns not inserted on the edge. · 36808d08
      	* reload1.c (fixup_abnormal_edges): Clear bb field for insns
      	not inserted on the edge.
      
      From-SVN: r125582
      Eric Botcazou committed
    • * ChangeLog fix * ChangeLog fix. · 9510f6eb
      From-SVN: r125578
      Uros Bizjak committed
    • lib1funcs.asm (__udivsi3): Use hardware divide instructions if they are supported. · 582711fe
      	* 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
      Bob Wilson committed
    • extend.texi: Add fvect-cost-model flag. · 792ed98b
      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
      Harsha Jagasia committed
    • reg-stack.c (get_true_reg): Readability change. · c8e2516c
      
      * reg-stack.c (get_true_reg): Readability change.  Moved default case
      label into direct switch statement scope.
      
      From-SVN: r125574
      Simon Baldwin committed
    • tree-flow-inline.h (var_ann): Replaced erroneous '=' assignment in gcc_assert()… · 2c5cfd1f
      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
      Simon Baldwin committed
    • fstream: Add Table 92 in comment. · 9735f6ba
      2007-06-08  Francesco Palagi  <palagi@arcetri.astro.it>
      
      	* include/std/fstream: Add Table 92 in comment.
      
      From-SVN: r125571
      Francesco Palagi committed
    • i386.c (override_options): Merge TARGET_SSE4_2 and TARGET_ABM handling of x86_popcnt variable. · 837a8954
      	* config/i386/i386.c (override_options): Merge TARGET_SSE4_2 and
      	TARGET_ABM handling of x86_popcnt variable.
      
      From-SVN: r125570
      Uros Bizjak committed
    • extend.texi (X86 Built-in Functions): Document __builtin_fabsq,… · 5513e239
      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
      Uros Bizjak committed
    • extend.texi (X86 Built-in Functions): Add missing `@item's in SSE4.2 section. · 291d9a2d
      	* 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
      Uros Bizjak committed
    • re PR tree-optimization/32243 (ICE in vectorizable_type_promotion, at tree-vect-transform.c:2890) · 459e691a
      	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
      Uros Bizjak committed
    • re PR tree-optimization/32224 (ICE in vect_analyze_operations, at tree-vect-analyze.c:374) · 0d266580
              PR tree-optimization/32224
              * tree-vect-analyze.c (vect_determine_vectorization_factor): Fail
              vectorization upon a non GIMPLE_MODIFY_STMT.
      
      From-SVN: r125566
      Dorit Nuzman committed
    • re PR target/29953 ([SH-4] Perfomance regression in loops. cmp/eq used instead of dt) · 4aa97413
      PR target/29953
      * config/sh/sh.md (doloop_end): New pattern and splitter.
      * loop-iv.c (simple_rhs_p): Check for hardware registers.
      
      From-SVN: r125564
      Christian Bruel committed
    • re PR middle-end/32209 (Boot failure Comparing stages 2 and 3 with --disable-checking) · 1fc3998d
      	PR middle-end/32209
      	* dominance.c (debug_dominance_tree, debug_dominance_tree_1): New
      	functions.
      	(verify_dominators): Do not change dominance tree.
      
      From-SVN: r125563
      Zdenek Dvorak committed
    • constraints.md: New file. · 32a7ab3d
      	* config/sh/constraints.md: New file.
      	* config/sh/sh.c: Include tm-constrs.h.
      	(reg_class_from_letter): Remove.
      	(prepare_cbranch_operands): Use satisfies_constraint_*
      	function instead of macro.
      	(andcosts, broken_move, sh_secondary_reload): Likewise.
      	* config/sh/predicates.md (trapping_target_operand): Likewise.
      	(and_operand, arith_operand, arith_reg_or_0_operand,
      	cmp_operand, logical_operand, target_operand,
      	ua_address_operand, ua_offset, xor_operand): Likewise.
      	* config/sh/sh.md: Include constraints.md.
      	(*movsicc_t_false): Use satisfies_constraint_* function
      	instead of macro.
      	(*movsicc_t_true, ashlsi3_std, ashlhi3_k, lshrsi3_m,
      	lshrsi3_k, movsi_const_16bit+2, *movhi_media+1,
      	movdi_const_16bit+1, beq, bne, *ptb): Likewise.
      	* config/sh/sh.h (reg_class_from_letter): Remove prototype.
      	(OVERRIDE_OPTIONS): Don't modify reg_class_from_letter.
      	(REG_CLASS_FROM_CONSTRAINT): Remove.
      	(CONSTRAINT_LEN, CONST_OK_FOR_I20, CONST_OK_FOR_I,
      	CONST_OK_FOR_J, CONST_OK_FOR_K16, CONST_OK_FOR_K,
      	CONST_OK_FOR_P27, CONST_OK_FOR_P, CONST_OK_FOR_M,
      	CONST_OK_FOR_N, CONST_OK_FOR_CONSTRAINT_P,
      	CONST_DOUBLE_OK_FOR_LETTER_P): Likewise.
      	(SECONDARY_INOUT_RELOAD_CLASS): Use satisfies_constraint_*
      	function instead of macro.
      	(SECONDARY_INPUT_RELOAD_CLASS): Likewise.
      	(EXTRA_CONSTRAINT_Q, EXTRA_CONSTRAINT_A,
      	EXTRA_CONSTRAINT_Bsc, EXTRA_CONSTRAINT_B,
      	EXTRA_CONSTRAINT_Css, EXTRA_CONSTRAINT_Csu): Remove.
      	(IS_PC_RELATIVE_LOAD_ADDR_P): New macro.
      	(IS_LITERAL_OR_SYMBOLIC_S16_P): Likewise.
      	(IS_LITERAL_OR_SYMBOLIC_U16_P): Likewise.
      	(IS_NON_EXPLICIT_CONSTANT_P): Likewise.
      	(EXTRA_CONSTRAINT_Csy, EXTRA_CONSTRAINT_Z, EXTRA_CONSTRAINT_W,
      	EXTRA_CONSTRAINT_Cpg, EXTRA_CONSTRAINT_C,
      	EXTRA_MEMORY_CONSTRAINT, EXTRA_CONSTRAINT_Sr0,
      	EXTRA_CONSTRAINT_Sua, EXTRA_CONSTRAINT_S,
      	EXTRA_CONSTRAINT_STR): Likewise.
      	(GO_IF_LEGITIMATE_INDEX): Fix indentation.
      
      From-SVN: r125561
      Kaz Kojima committed
    • re PR fortran/32223 (Backslash handling inconsistent) · a88a266c
      2007-06-07  Steven G. Kargl  <kargl@gcc.gnu.org>
      	    Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR fortran/32223
      	* match.c (gfc_match_special_char): New function.  Match special char.
      	Add handling '\0'.
      	* match.h: Add prototype.
      	* io.c (next_char): Use it.
      	* primary.c (next_string_char): Ditto.
      
      Co-Authored-By: Jerry DeLisle <jvdelisle@gcc.gnu.org>
      
      From-SVN: r125557
      Steven G. Kargl committed
    • cleanup-8.c: Run on i386-darwin9 and later. · 294e1a5b
      	* g++.dg/ext/cleanup-8.c: Run on i386-darwin9 and later.
      	* g++.dg/ext/cleanup-9.c: Run on i386-darwin9 and later.
      	* g++.dg/ext/cleanup-10.c: Run on i386-darwin9 and later.
      	* g++.dg/ext/cleanup-11.c: Run on i386-darwin9 and later.
      
      From-SVN: r125556
      Geoffrey Keating committed
    • darwin.h (STACK_BOUNDARY): Define. · 2734e1c3
      	* config/i386/darwin.h (STACK_BOUNDARY): Define.
      
      Co-Authored-By: Hui-May Chang <hm.chang@apple.com>
      
      From-SVN: r125555
      Geoffrey Keating committed
    • Daily bump. · 8df645e1
      From-SVN: r125549
      GCC Administrator committed
  5. 07 Jun, 2007 3 commits