1. 26 Jul, 2012 14 commits
    • Do not use 'with ... as ...' in validate_failures.py · 55b073ba
      Some of the hosts were we run this script are still using Python 2.4.
      This patch replaces the use of 'with ... as ...' to avoid syntax errors.
      
      2012-07-26   Diego Novillo  <dnovillo@google.com>
      
      	* testsuite-management/validate_failures.py: Do not use
      	'with ... as ...' constructs.
      
      From-SVN: r189893
      Diego Novillo committed
    • mn10300.c (REG_SAVE_BYTES): Delete. · e902c266
      	* config/mn10300/mn10300.c (REG_SAVE_BYTES): Delete.
      	(mn10300_get_live_callee_saved_regs): If requested return a count
      	of the number of bytes in the mask.
      	(mn10300_expand_prologue): Add argument to invocation of
      	mn10300_get_live_callee_regs.
      	(mn10300_expand_epilogue): Compute reg_save_bytes by calling
      	mn10300_get_live_callee_saved_regs.
      	(mn10300_initial_offset): Likewise.
      	* config/mn10300/mn10300-protos.h (mn10300_get_live_callee_saved_regs):
      	Update prototype.
      	* config/mn10300/mn10300.md (return_ret): Add argument to
      	invocation of mn10300_get_live_callee_saved_regs.
      
      From-SVN: r189892
      Nick Clifton committed
    • re PR regression/54084 (Bunch of fails for x86) · d38933a0
      	PR regression/54084
      	* sel-sched-ir.c (cmp_v_in_regset_pool): Clarify logic, fix
      	pointer difference check.
      
      From-SVN: r189891
      Steven Bosscher committed
    • tree-ssa-loop-ivopts.c (mbc_entry_hash): Remove. · 6dd8f4bb
      2012-07-26  Bill Schmidt  <wschmidt@linux.ibm.com>
      
      	* tree-ssa-loop-ivopts.c (mbc_entry_hash): Remove.
      	(mbc_entry_eq): Likewise.
      	(mult_costs): Likewise.
      	(cost_tables_exist): Likewise.
      	(initialize_costs): Likewise.
      	(finalize_costs): Likewise.
      	(tree_ssa_iv_optimize_init): Remove call to initialize_costs.
      	(add_regs_cost): Remove.
      	(multiply_regs_cost): Likewise.
      	(add_const_cost): Likewise.
      	(extend_or_trunc_reg_cost): Likewise.
      	(negate_reg_cost): Likewise.
      	(struct mbc_entry): Likewise.
      	(multiply_by_const_cost): Likewise.
      	(get_address_cost): Change add_regs_cost calls to add_cost lookups;
      	change multiply_by_const_cost to mult_by_coeff_cost.
      	(force_expr_to_var_cost): Likewise.
      	(difference_cost): Change multiply_by_const_cost to mult_by_coeff_cost.
      	(get_computation_cost_at): Change add_regs_cost calls to add_cost
      	lookups; change multiply_by_const_cost to mult_by_coeff_cost.
      	(determine_iv_cost): Change add_regs_cost calls to add_cost lookups.
      	(tree_ssa_iv_optimize_finalize): Remove call to finalize_costs.
      	* tree-ssa-address.c (expmed.h): New #include.
      	(most_expensive_mult_to_index): Change multiply_by_const_cost to
      	mult_by_coeff_cost.
      	* gimple-ssa-strength-reduction.c (expmed.h): New #include.
      	(stmt_cost): Change to use mult_by_coeff_cost, mul_cost, add_cost,
      	neg_cost, and convert_cost instead of IVOPTS interfaces.
      	(execute_strength_reduction): Remove calls to initialize_costs and
      	finalize_costs.
      	* expmed.c (struct init_expmed_rtl): Add convert rtx_def.
      	(init_expmed_one_mode): Initialize convert rtx_def; initialize
      	x_convert_cost for related modes.
      	(mult_by_coeff_cost): New function.
      	* expmed.h (NUM_MODE_INT): New #define.
      	(struct target_expmed): Add x_convert_cost matrix.
      	(set_convert_cost): New inline function.
      	(convert_cost): Likewise.
      	(mult_by_coeff_cost): New extern decl.
      	* tree-flow.h (initialize_costs): Remove decl.
      	(finalize_costs): Likewise.
      	(multiply_by_const_cost): Likewise.
      	(add_regs_cost): Likewise.
      	(multiply_regs_cost): Likewise.
      	(add_const_cost): Likewise.
      	(extend_or_trunc_reg_cost): Likewise.
      	(negate_reg_cost): Likewise.
      	* Makefile.in (gimple-ssa-strength-reduction.o): Update dependencies.
      	(tree-ssa-address.o): Update dependencies.
      
      From-SVN: r189890
      Bill Schmidt committed
    • bitmap.h: Add explanation of sparse set as linked-list bitmap. · 0263463d
      	* bitmap.h: Add explanation of sparse set as linked-list bitmap.
      	* sbitmap.h: Add explanation about non-sparse sets as simple bitmap.
      	(TEST_BIT): Make a static inline function for stronger type checking.
      	(SET_BIT): Don't handle sbitmaps with popcount.
      	(RESET_BIT): Likewise.
      	(SET_BIT_WITH_POPCOUNT): New, like SET_BIT but with popcount.
      	(RESET_BIT_WITH_POPCOUNT): New, like RESET_BIT but with popcount.
      	* ebitmap.c (ebitmap_clear_bit): Use SET_BIT_WITH_POPCOUNT and
      	RESET_BIT_WITH_POPCOUNT on wordmask bitmaps.
      	(ebitmap_set_bit, ebitmap_and_into, ebitmap_and, ebitmap_ior_into,
      	ebitmap_and_compl_into, ebitmap_and_compl): Likewise.
      	* sparseset.h: Add explanation of sparse set representation.
      
      From-SVN: r189888
      Steven Bosscher committed
    • contiguous_1.f90: Update dg-error. · 6b4496db
      2012-07-26  Tobias Burnus  <burnus@net-b.de>
      
              * gfortran.dg/contiguous_1.f90: Update dg-error.
              * gfortran.dg/proc_ptr_32.f90: Ditto.
      
      From-SVN: r189887
      Tobias Burnus committed
    • re PR tree-optimization/54098 (ICE on valid code) · 2f33158f
      2012-07-26  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/54098
      	* tree-vrp.c (vrp_visit_phi_node): Iterate once more if the
      	original range was UNDEFINED.
      
      	* gcc.dg/torture/pr54098.c: New testcase.
      
      From-SVN: r189885
      Richard Guenther committed
    • neon.ml (ops): Fix regexp for vld1Q_dups64 and vld1Q_dupu64 tests. · da7d74c2
      
      
      
      2012-07-26  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
      
      	* config/arm/neon.ml (ops): Fix regexp for vld1Q_dups64 and
      	vld1Q_dupu64 tests.
      
      2012-07-26  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
      
      	* gcc.target/arm/neon/vld1Q_dupu64.c: Regenerate.
      	* gcc.target/arm/neon/vld1Q_dups64.c: Likewise.
      
      From-SVN: r189884
      Ramana Radhakrishnan committed
    • re PR fortran/44354 (implied do loop with its own variable name as upper bound) · b63b1f86
      fortran/
      	PR fortran/44354
      	* trans-array.c (gfc_trans_array_constructor_value):
      	Evaluate the iteration bounds before the inner variable shadows
      	the outer.
      
      testsuite/
      	PR fortran/44354
      	* gfortran.dg/array_constructor_39.f90: New test.
      
      From-SVN: r189883
      Mikael Morin committed
    • re PR fortran/44354 (implied do loop with its own variable name as upper bound) · ca27d5ae
      fortran/
      	PR fortran/44354
      	* array.c (sought_symbol): New variable.
      	(expr_is_sought_symbol_ref, find_symbol_in_expr): New functions.
      	(resolve_array_list): Check for references to the induction
      	variable in the iteration bounds and issue a diagnostic if some
      	are found.
      
      testsuite/
      	PR fortran/44354
      	* gfortran.dg/array_constructor_38.f90: New test.
      
      From-SVN: r189882
      Mikael Morin committed
    • module.c (mio_array_spec): Don't read as->lower for assumed-rank arrays. · b573c9d6
      2012-07-26  Alessandro Fanfarillo  <fanfarillo.gcc@gmail.com>
                  Tobias Burnus  <burnus@net-b.de>
      
              * module.c (mio_array_spec): Don't read as->lower for
              assumed-rank arrays.
      
      
      Co-Authored-By: Tobias Burnus <burnus@net-b.de>
      
      From-SVN: r189881
      Alessandro Fanfarillo committed
    • re PR target/51244 ([SH] Inefficient conditional branch and code around T bit) · f34ee0b2
      	PR target/51244
      	* config/sh/sh.opt (mzdcbranch): New option.
      	* doc/invoke.texi: Document it.
      	* config/sh/sh.md (negsi_cond): Use TARGET_ZDCBRANCH as condition
      	instead of TARGET_HARD_SH4.
      	* config/sh/sh.c (sh_option_override): Set TARGET_ZDCBRANCH as default
      	for TARGET_HARD_SH4.
      
      From-SVN: r189877
      Oleg Endo committed
    • Daily bump. · 3b29b58c
      From-SVN: r189876
      GCC Administrator committed
  2. 25 Jul, 2012 24 commits
    • Fix ChangeLog formatting. · f2962e2d
      From-SVN: r189873
      Oleg Endo committed
    • re PR target/54089 ([SH] Refactor shift patterns) · d8a48c21
      	PR target/54089
      	* config/sh/predicates.md (shift_count_operand): Handle not-SHMEDIA
      	case.
      	(p27_shift_count_operand, not_p27_shift_count_operand): New predicates.
      	* config/sh/sh.md (ashlsi3): Remove parallel and T_REG clobber
      	from expander.  Do not emit shift insn for not-SHMEDIA case.
      	(ashlsi3_std): Replace with ...
      	(ashlsi3_k, ashlsi3_d): ... these new insns.
      	* config/sh/sh.c (gen_ashift): Make static.  Add sanity checks.
      	Emit ashlsi3_k insn instead of ashlsi3_std in ASHIFT case.
      	(gen_ashift_hi): Make static.
      	* config/sh/sh-protos.h (gen_ashift, gen_ashift_hi): Remove forward
      	declaration.
      
      From-SVN: r189872
      Oleg Endo committed
    • Pass -be8 by default for armv7-a when configured big-endian. · b0c724c2
      config/arm/bpabi.h (BE8_LINK_SPEC): Set according to
      TARGET_BIG_ENDIAN_DEFAULT.
      
      Co-Authored-By: Jim Wilson <jimwilso@cisco.com>
      
      From-SVN: r189867
      Bharathi Seshadri committed
    • gimple-low.c (lower_try_catch): New function. · f778c049
      	* gimple-low.c (lower_try_catch): New function.
      	(lower_stmt) <GIMPLE_TRY>: Use it to lower GIMPLE_TRY_CATCH.
      	<GIMPLE_CATCH>: Delete.
      	<GIMPLE_EH_FILTER>: Likewise.
      
      From-SVN: r189865
      Eric Botcazou committed
    • expr.c (expand_expr_real_1): Do not expand operand #1 and #2 of BIT_FIELD_REF for ignored results. · ea814c66
      	* expr.c (expand_expr_real_1): Do not expand operand #1 and #2
      	of BIT_FIELD_REF for ignored results.
      	* fold-const.c (fold_ternary_loc) <BIT_FIELD_REF>: Check that the
      	CONSTRUCTOR has vector type before using vector accessors on it.
      	* gimplify.c (gimplify_compound_lval): Do not gimplify operand #1 and
      	#2 of BIT_FIELD_REF.
      	(gimplify_expr) <BIT_FIELD_REF>: Likewise.
      	* tree-nested.c (convert_nonlocal_reference_op) <BIT_FIELD_REF>: Do
      	not process operand #1 and #2.
      	(convert_local_reference_op): Likewise.
      	* tree-ssa-pre.c (create_component_ref_by_pieces_1): Remove superfluous
      	breaks throughout.
      	<BIT_FIELD_REF>: Reuse operand #1 and #2 directly.
      	* tree.c (stabilize_reference) <BIT_FIELD_REF>: Do not stabilize
      	operand #1 and #2.
      	(UPDATE_FLAGS): Do not consider operand #2 of BIT_FIELD_REF.
      	(build6_stat): Delete.
      	* tree.h (build6_stat, build6, build6_stat_loc, build6_loc): Likewise.
      ada/
      	* gcc-interface/utils2.c (gnat_stabilize_reference) <BIT_FIELD_REF>: Do
      	not stabilize operand #1 and #2.
      
      From-SVN: r189864
      Eric Botcazou committed
    • re PR libstdc++/54075 ([4.7.1] unordered_map insert still slower than 4.6.2) · 2514d7f1
      2012-07-25  François Dumont  <fdumont@gcc.gnu.org>
      
      	PR libstdc++/54075
      	* include/bits/hashtable.h
      	(_Hashtable<>::_Hashtable(_InputIterator, _InputIterator,
      	size_type, ...): Remove std::max usage to guarantee that hashtable
      	state is consistent with hash policy state.
      	(_Hashtable<>::rehash): Likewise. Set _M_prev_resize to 0 to avoid
      	the hashtable to be shrinking on next insertion.
      	* testsuite/23_containers/unordered_set/modifiers/reserve.cc: New.
      	* testsuite/23_containers/unordered_multiset/modifiers/reserve.cc: New.
      	* testsuite/23_containers/unordered_map/modifiers/reserve.cc: New.
      	* testsuite/23_containers/unordered_multimap/modifiers/reserve.cc: New.
      
      From-SVN: r189863
      François Dumont committed
    • re PR tree-optimization/30318 (VRP does not create ANTI_RANGEs on overflow) · 933a2c39
      2012-07-25 Marc Glisse <marc.glisse@inria.fr>
      
      	PR tree-optimization/30318
      	* tree-vrp.c (extract_range_from_binary_expr_1) [PLUS_EXPR]:
      	Handle __int128.
      	[MINUS_EXPR]: Merge with PLUS_EXPR.
      
      From-SVN: r189861
      Marc Glisse committed
    • re PR target/53633 (__attribute__((naked)) should disable -Wreturn-type) · d45eae79
      2012-07-25  Sandra Loosemore  <sandra@codesourcery.com>
      	    Paul Brook  <paul@codesourcery.com>
      
      	PR target/53633
      
      	gcc/
      	* target.def (warn_func_return): New hook.
      	* doc/tm.texi.in (TARGET_WARN_FUNC_RETURN): New hook.
      	* doc/tm.texi: Regenerate.
      	* doc/sourcebuild.texi (Effective-Target Keywords): Document
      	naked_functions.
      	* ipa-pure-const.c (warn_function_noreturn): Check
      	targetm.warn_func_return.
      	* tree-cfg.c (execute_warn_function_return): Likewise.
      	* config/spu/spu.c (spu_warn_func_return): New.
      	(TARGET_WARN_FUNC_RETURN): Define.
      	* config/rx/rx.c (rx_warn_func_return): New.
      	(TARGET_WARN_FUNC_RETURN): Define.
      	* config/avr/avr.c (avr_warn_func_return): New.
      	(TARGET_WARN_FUNC_RETURN): Define.
      	* config/arm/arm.c (arm_warn_func_return): New.
      	(TARGET_WARN_FUNC_RETURN): Define.
      	* config/mcore/mcore.c (mcore_warn_func_return): New.
      	(TARGET_WARN_FUNC_RETURN): Define.
      	(saved_warn_return_type, saved_warn_return_type_count): Remove.
      	(mcore_reorg, mcore_handle_naked_attribute): Remove warn_return hack.
      
      	gcc/cp/
      	* decl.c (finish_function): Check targetm.warn_func_return.
      
      	gcc/testsuite/
      	* lib/target-suports.exp (check_effective_target_naked_functions):
      	New.
      	* c-c++-common/pr53633.c: New test.
      
      Co-Authored-By: Paul Brook <paul@codesourcery.com>
      
      From-SVN: r189860
      Sandra Loosemore committed
    • trans-types.c (gfc_real16_is_float128): Fix spelling in a comment. · 62732c30
      2012-07-25  Tobias Burnus  <burnus@net-b.de>
      
              * trans-types.c (gfc_real16_is_float128): Fix spelling
              in a comment.
              * trans.h (struct gfc_array_info): Ditto.
              * gfortran.h (gfc_expr): Ditto.
              * simplify.c (gfc_count): Ditto.
              * trans-expr.c (gfc_copy_class_to_class,
              conv_parent_component_references,
              gfc_trans_pointer_assignment): Ditto.
              * expr.c (check_pointer_assign): Fix diagnostic spelling.
              * interface.c (compare_parameter): Ditto.
              * parse.c (use_modules, parse_associate): Ditto.
              * decl.c (match_char_length): Fix spelling of the
              an function argument.
      
      From-SVN: r189859
      Tobias Burnus committed
    • list_read.c (list_formatted_read_scalar): Fix copying real value back to temporary. · a35c9bef
      * io/list_read.c (list_formatted_read_scalar): Fix copying real
      value back to temporary.
      
      From-SVN: r189856
      Andreas Schwab committed
    • Split out do_assembler_dialects. · d1658619
      	* final.c [ASSEMBLER_DIALECT](do_assembler_dialects): New
      	function to implement assembler dialects.
      	(output_asm_insn): Use do_assembler_dialects.
      	(asm_fprintf): Likewise.
      
      	* gcc.target/i386/asm-dialect-1.c: New test case.
      
      From-SVN: r189854
      Siddhesh Poyarekar committed
    • re PR bootstrap/54092 (Bootstrap fails while building Ada at stage 1) · 5714c34f
      PR bootstrap/54092
      
              * libfuncs.h: Don't include optabs.h.
              (struct libfunc_entry): Use "int" for op, mode1, mode2 members.
              * optabs.c (hash_libfunc): Don't cast members to int.
              * Makefile.in (LIBFUNCS_H): Don't include OPTABS_H.
      
      From-SVN: r189853
      Richard Henderson committed
    • re PR c++/54086 (GCC should allow constexpr and const together) · 452ed9e7
      	PR c++/54086
      	* decl.c (grokdeclarator): Allow const and constexpr together.
      
      From-SVN: r189852
      Jason Merrill committed
    • re PR c++/54020 ([c++0x] incorrectly accepted constexpr functions) · 9155a6dd
      	PR c++/54020
      	* semantics.c (potential_constant_expression_1) [COND_EXPR]: Call
      	maybe_constant_value.
      
      From-SVN: r189851
      Jason Merrill committed
    • cp-tree.h (tsubst_flags): Remove tf_no_access_control. · 5e7b9f60
      	* cp-tree.h (tsubst_flags): Remove tf_no_access_control.
      	* call.c (standard_conversion): Don't set it.
      	* class.c (resolve_address_of_overloaded_function): Don't check it.
      	* decl.c (check_default_argument): Call
      	perform_implicit_conversion_flags.
      
      From-SVN: r189850
      Jason Merrill committed
    • * pt.c (print_candidates_1): Use inform instead of error. · 25a92d2f
      From-SVN: r189849
      Jason Merrill committed
    • Fix typo in comment in basic-block.h · 229ecb89
      gcc/
      
      	* basic-block.c: Fix typo in comment.
      
      From-SVN: r189845
      Dodji Seketeli committed
    • Changelog entry: · e61c94dd
      2012-07-25  Kirill Yukhin  <kirill.yukhin@intel.com>
                  Michael Zolotukhin  <michael.v.zolotukhin@intel.com>
      
              * common/config/i386/i386-common.c (OPTION_MASK_ISA_PRFCHW_SET): New.
              (OPTION_MASK_ISA_PRFCHW_UNSET): Likewise.
              (ix86_handle_option): Handle mprfchw option.
              * config.gcc (i[34567]86-*-*): Add prfchwintrin.h.
              (x86_64-*-*): Likewise.
              * config/i386/prfchwintrin.h: New header.
              * config/i386/cpuid.h (bit_PRFCHW): New.
              (bit_BMI): Formatting fix.
              (bit_HLE): Likewise.
              (bit_RTM): Likewise.
              * config/i386/driver-i386.c (host_detect_local_cpu): Detect
              PREFETCHW support.
              * config/i386/i386-c.c: Define __PRFCHW__ if needed.
              * config/i386/i386.c (ix86_target_string): Define
              -mprfchw option. Formatting fixes.
              (PTA_HLE): Formatting fix.
              (PTA_PRFCHW): New.
              (ix86_option_override_internal): Handle new option.
              (ix86_valid_target_attribute_inner_p): Add OPT_mprfchw.
              * config/i386/i386.h (TARGET_PRFCHW): New.
              * config/i386/i386.md (prefetch): Enable for TARGET_PRFCHW.
              * config/i386/i386.opt (mprfchw): New.
              * config/i386/mm3dnow.h: Move _m_prefetchw from here to
              prfchwintrin.h.
              * config/i386/x86intrin.h: Include prfchwintrin.h.
      
      testsuite/Changelog entry:
      2012-07-24  Kirill Yukhin  <kirill.yukhin@intel.com>
                  Michael Zolotukhin  <michael.v.zolotukhin@intel.com>
      
              * gcc.target/i386/prefetchw-1.c: New.
              * gcc.target/i386/sse-12.c: Add -mprfchw.
              * gcc.target/i386/sse-13.c: Ditto.
              * gcc.target/i386/sse-14.c: Ditto.
              * g++.dg/other/i386-2.C: Ditto.
              * g++.dg/other/i386-3.C: Ditto.
      
      
      
      
      Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
      
      From-SVN: r189844
      Kirill Yukhin committed
    • i386.md (stack_protect_set): Disable the pattern for Android since Android libc… · 4bd5abca
      i386.md (stack_protect_set): Disable the pattern for Android since Android libc (bionic) does not provide...
      
      2012-07-25 Sergey Melnikov <sergey.melnikov@intel.com>
      
              * config/i386/i386.md (stack_protect_set): Disable the pattern
              for Android since Android libc (bionic) does not provide random
              value for stack protection guard at gs:0x14. Guard value
              will be provided from external symbol (default implementation).
              (stack_protect_set_<mode>): Likewise.
              (stack_protect_test): Likewise.
              (stack_protect_test_<mode>): Likewise.
              * gcc/defaults.h: Define macro TARGET_HAS_BIONIC to 0 - target does
              not have Bionic by default
              * config/linux.h: Redefine macro TARGET_HAS_BIONIC to (OPTION_BIONIC)
              Macro OPTION_BIONIC is defined in this file and provides Bionic
              accessibility status
      
      From-SVN: r189840
      Sergey Melnikov committed
    • AMD btver2 enablement · e32bfc16
      From-SVN: r189838
      Venkataramanan Kumar committed
    • tm.texi: Regenerate. · 92345349
      2012-07-24  Bill Schmidt  <wschmidt@linux.ibm.com>
      
      	* doc/tm.texi: Regenerate.
      	* targhooks.c (default_init_cost): Add prologue and epilogue costs.
      	(default_add_stmt_cost): Likewise; also handle NULL stmt_info.
      	(default_finish_cost): Add prologue and epilogue costs.
      	* targhooks.h (default_add_stmt_cost): Change parameter list.
      	(default_finish_cost): Likewise.
      	* target.def (init_cost): Change documentation string.
      	(add_stmt_cost): Change documentation string and parameter list.
      	(finish_cost): Likewise.
      	* target.h (vect_cost_model_location): New enum.
      	* tree-vectorizer.h (struct _slp_tree): Remove cost substruct.
      	(struct _slp_instance): Remove cost substruct; rename stmt_cost_vec
      	to body_cost_vec.
      	(SLP_INSTANCE_OUTSIDE_OF_LOOP_COST): Remove.
      	(SLP_INSTANCE_STMT_COST_VEC): Rename to SLP_INSTANCE_BODY_COST_VEC.
      	(SLP_TREE_OUTSIDE_OF_LOOP_COST): Remove.
      	(struct _vect_peel_extended_info): Rename stmt_cost_vec to
      	body_cost_vec.
      	(struct _stmt_vec_info): Remove cost substruct.
      	(STMT_VINFO_OUTSIDE_OF_LOOP_COST): Remove.
      	(stmt_vinfo_set_outside_of_loop_cost): Remove.
      	(builtin_vectorization_cost): New function.
      	(vect_get_stmt_cost): Change to use builtin_vectorization_cost.
      	(add_stmt_cost): Change parameter list.
      	(finish_cost): Likewise.
      	(vect_model_simple_cost): Likewise.
      	(vect_model_store_cost): Likewise.
      	(vect_model_load_cost): Likewise.
      	(record_stmt_cost): Likewise.
      	(vect_get_load_cost): Likewise.
      	(vect_get_known_peeling_cost): Likewise.
      	* tree-vect-loop.c (vect_get_known_peeling_cost): Change parameter
      	list; call record_stmt_cost for prologue and epilogue costs.
      	(vect_estimate_min_profitable_iters): Call add_stmt_cost for
      	prologue and epilogue costs; remove computation of vec_outside_cost;
      	return vec_prologue_cost and vec_epilogue_cost from finish_cost.
      	(vect_model_reduction_cost): Revise call to add_stmt_cost for body
      	costs; call add_stmt_cost for prologue and epilogue costs.
      	(vect_model_induction_cost): Revise call to add_stmt_cost for body
      	costs; call add_stmt_cost for prologue costs.
      	* tree-vect-data-refs.c (vect_get_data_access_cost): Change parameter
      	list for function and arguments for calls to vect_get_load_cost and
      	vect_get_store_cost.
      	(vect_peeling_hash_get_lowest_cost): Change argument list for calls to
      	vect_get_data_access_cost and vect_get_known_peeling_cost; use
      	temporary vectors prologue_cost_vec and epilogue_cost_vec for the
      	latter call and discard their results; rename stmt_cost_vec to
      	body_cost_vec; correct possible storage leak for body_cost_vec.
      	(vect_peeling_hash_choose_best_peeling): Rename stmt_cost_vec to
      	body_cost_vec.
      	(vect_enhance_data_refs_alignment): Rename stmt_cost_vec to
      	body_cost_vec; add extra dummy parameter on calls to
      	vect_get_data_access_cost; tolerate null si->stmt; add vect_body to
      	argument list on call to add_stmt_cost.
      	* tree-vect-stmts.c (record_stmt_cost): Change parameter list;
      	rename stmt_cost_vec to body_cost_vec; tolerate null stmt_info; call
      	builtin_vectorization_cost; add "where" parameter on call to
      	add_stmt_cost.
      	(vect_model_simple_cost): Change parameter list; call record_stmt_cost
      	for prologue costs; remove call to stmt_vinfo_set_outside_of_loop_cost;
      	rename stmt_cost_vec to body_cost_vec.
      	(vect_model_promotion_demotion_cost): Add vect_body argument to call
      	to add_stmt_cost; call add_stmt_cost for prologue costs; remove call
      	to stmt_vinfo_set_outside_of_loop_cost.
      	(vect_model_store_cost): Change parameter list; call record_stmt_cost
      	for prologue costs; add vect_body argument to call to record_stmt_cost;
      	rename stmt_cost_vec to body_cost_vec; remove call to
      	stmt_vinfo_set_outside_of_loop_cost.
      	(vect_get_store_cost): Rename stmt_cost_vec to body_cost_vec; add
      	vect_body argument to calls to record_stmt_cost.
      	(vect_model_load_cost): Change parameter list; rename stmt_cost_vec to
      	body_cost_vec; add vect_body argument to calls to record_stmt_cost;
      	remove call to stmt_vinfo_set_outside_of_loop_cost.
      	(vect_get_load_cost): Change parameter list; rename stmt_cost_vec to
      	body_cost_vec; add vect_body argument to calls to record_stmt_cost;
      	call record_stmt_cost for prologue costs.
      	(vectorizable_store): Change argument list for call to
      	vect_model_store_cost.
      	(vectorizable_load): Change argument list for call to
      	vect_model_load_cost.
      	(new_stmt_vec_info): Remove assignment to
      	STMT_VINFO_OUTSIDE_OF_LOOP_COST.
      	* config/spu/spu.c (spu_init_cost): Add prologue and epilogue costs.
      	(spu_add_stmt_cost): Likewise; also handle NULL stmt_info.
      	(spu_finish_cost): Add prologue and epilogue costs.
      	* config/i386/i386.c (i386_init_cost): Add prologue and epilogue costs.
      	(i386_add_stmt_cost): Likewise; also handle NULL stmt_info.
      	(i386_finish_cost): Add prologue and epilogue costs.
      	* config/rs6000/rs6000.c (rs6000_init_cost): Add prologue and epilogue
      	costs.
      	(rs6000_add_stmt_cost): Likewise; also handle NULL stmt_info.
      	(rs6000_finish_cost): Add prologue and epilogue costs.
      	* tree-vect-slp.c (vect_free_slp_instance): Rename
      	SLP_INSTANCE_STMT_COST_VEC to SLP_INSTANCE_BODY_COST_VEC.
      	(vect_create_new_slp_node): Remove assignment to
      	SLP_TREE_OUTSIDE_OF_LOOP_COST.
      	(vect_get_and_check_slp_defs): Change parameter list; change argument
      	lists to calls to vect_model_store_cost and vect_model_simple_cost.
      	(vect_build_slp_tree): Change parameter list; change argument lists
      	to calls to vect_model_load_cost, vect_get_and_check_slp_defs, and
      	recursive self-calls; remove setting of outside_cost from
      	SLP_TREE_OUTSIDE_OF_LOOP_COST; add vect_body argument to call to
      	record_stmt_cost.
      	(vect_analyze_slp_instance): Rename stmt_cost_vec to body_cost_vec;
      	rename SLP_INSTANCE_STMT_COST_VEC to SLP_INSTANCE_BODY_COST_VEC;
      	remove assignment to SLP_INSTANCE_OUTSIDE_OF_LOOP_COST; record SLP
      	prologue costs.
      	(vect_bb_vectorization_profitable_p): Rename stmt_cost_vec to
      	body_cost_vec; handle null ci->stmt; add vect_body argument to call
      	to add_stmt_cost; simplify calls to targetm.vectorize.
      	builtin_vectorization_cost; return vec_prologue_cost and
      	vec_epilogue_cost from finish_cost.
      	(vect_update_slp_costs_according_to_vf): Rename stmt_cost_vec to
      	body_cost_vec; add vect_body argument to call to add_stmt_cost.
      
      From-SVN: r189836
      Bill Schmidt committed
    • Daily bump. · ad777141
      From-SVN: r189832
      GCC Administrator committed
  3. 24 Jul, 2012 2 commits