1. 07 Mar, 2012 1 commit
    • coverage.c (get_gcov_type): Use type_for_mode. · 0f250839
      2012-03-07  Richard Guenther  <rguenther@suse.de>
      
      	* coverage.c (get_gcov_type): Use type_for_mode.
      	(get_gcov_unsigned_t): Likewise.
      	* expr.c (store_constructor): Use type_for_mode.
      	(try_casesi): Likewise.
      	* tree-ssa-loop-ivopts.c (add_standard_iv_candidates_for_size):
      	Remove.
      	(add_standard_iv_candidates): Use standard type trees.
      	* dojump.c (do_jump): Remove dead code.
      
      From-SVN: r185048
      Richard Guenther committed
  2. 09 Feb, 2012 1 commit
  3. 18 Aug, 2011 1 commit
    • tm.texi.in (TARGET_RTX_COSTS): Add an opno paramter. · 68f932c4
      gcc/
      	* doc/tm.texi.in (TARGET_RTX_COSTS): Add an opno paramter.
      	* doc/tm.texi: Regenerate.
      	* target.def (rtx_costs): Add an opno parameter.
      	* hooks.h (hook_bool_rtx_int_int_intp_bool_false): Replace with...
      	(hook_bool_rtx_int_int_int_intp_bool_false): ...this.
      	* hooks.c (hook_bool_rtx_int_int_intp_bool_false): Replace with...
      	(hook_bool_rtx_int_int_int_intp_bool_false): ...this.
      	* cse.c (COST_IN): Add an opno parameter.
      	(notreg_cost): Likewise.  Update call to rtx_cost.
      	(COST, fold_rtx): Update accordingly.
      	* dojump.c (prefer_and_bit_test): Update call to rtx_cost.
      	* expmed.c (emit_store_flag): Likewise.
      	* optabs.c (avoid_expensive_constant): Add an opno parameter.
      	Update call to rtx_cost.
      	(expand_binop_directly, expand_binop): Likewise.
      	(expand_twoval_binop, prepare_cmp_insn): Likewise.
      	* rtl.h (rtx_cost, get_full_rtx_cost): Add opno parameters.
      	(set_src_cost, get_full_set_src_cost): Update accordingly.
      	* rtlanal.c (rtx_cost): Add an opno parameter.  Update call
      	to target hook.
      	(get_full_rtx_cost): Add an opno paramter.  Update calls to rtx_cost.
      	(default_adress_cost): Update calls to rtx_cost.
      
      	* config/arm/arm.c (arm_rtx_costs_1, arm_size_rtx_costs)
      	(arm_slowmul_rtx_costs): Adjust calls to rtx_cost.
      	(arm_rtx_costs): Add an opno parameter.
      	* config/alpha/alpha.c (alpha_rtx_costs): Add an opno parameter and
      	adjust any recursive rtx-cost calls.
      	* config/avr/avr.c (avr_operand_rtx_cost, avr_rtx_costs): Likewise.
      	* config/bfin/bfin.c (bfin_rtx_costs): Likewise.
      	* config/c6x/c6x.c (c6x_rtx_costs): Likewise.
      	* config/cris/cris.c (cris_rtx_costs): Likewise.
      	* config/frv/frv.c (frv_rtx_costs): Likewise.
      	* config/h8300/h8300.c (h8300_rtx_costs): Likewise.
      	* config/i386/i386.c (ix86_rtx_costs): Likewise.
      	* config/ia64/ia64.c (ia64_rtx_costs): Likewise.
      	* config/iq2000/iq2000.c (iq2000_rtx_costs): Likewise.
      	* config/lm32/lm32.c (lm32_rtx_costs): Likewise.
      	* config/m32c/m32c.c (m32c_rtx_costs): Likewise.
      	* config/m32r/m32r.c (m32r_rtx_costs): Likewise.
      	* config/m68k/m68k.c (m68k_rtx_costs): Likewise.
      	* config/mcore/mcore.c (mcore_rtx_costs): Likewise.
      	* config/mep/mep.c (mep_rtx_cost): Likewise.
      	* config/microblaze/microblaze.c (microblaze_rtx_costs): Likewise.
      	* config/mips/mips.c (mips_binary_cost): Update call to rtx_cost.
      	(mips_zero_extend_cost): Add an opno parameter.
      	* config/mmix/mmix.c (mmix_rtx_costs): Likewise.
      	* config/mn10300/mn10300.c (mn10300_address_cost): Update call
      	to rtx_cost.
      	(mn10300_rtx_costs): Add an opno parameter and adjust any recursive
      	rtx-cost calls.
      	* config/pa/pa.c (hppa_rtx_costs): Likewise.
      	* config/pdp11/pdp11.c (pdp11_rtx_costs): Likewise.
      	* config/picochip/picochip.c (picochip_rtx_costs): Likewise.
      	* config/rs6000/rs6000.c (rs6000_rtx_costs): Likewise.
      	(rs6000_debug_rtx_costs): Likewise.
      	* config/s390/s390.c (s390_rtx_costs): Likewise.
      	* config/score/score-protos.h (score_rtx_costs): Likewise.
      	* config/score/score.c (score_rtx_costs): Likewise.
      	* config/sh/sh.c (andcosts): Update call to rtx_cost.
      	(sh_rtx_costs): Add an opno parameter.
      	* config/sparc/sparc.c (sparc_rtx_costs): Likewise.
      	* config/spu/spu.c (spu_rtx_costs): Likewise.
      	* config/stormy16/stormy16.c (xstormy16_rtx_costs): Likewise.
      	* config/v850/v850.c (v850_rtx_costs): Likewise.
      	* config/vax/vax.c (vax_rtx_costs): Likewise.
      	* config/xtensa/xtensa.c (xtensa_rtx_costs): Likewise.
      
      From-SVN: r177852
      Richard Sandiford committed
  4. 02 Jun, 2011 1 commit
    • arm-protos.h (tune_params): Add branch_cost hook. · 153668ec
      	gcc/
      	* config/arm/arm-protos.h (tune_params): Add branch_cost hook.
      	* config/arm/arm.c (arm_default_branch_cost): New.
      	(arm_slowmul_tune, arm_fastmul_tune, arm_xscale_tune, arm_9e_tune)
      	(arm_v6t2_tune, arm_cortex_tune, arm_cortex_a9_tune)
      	(arm_fa726_tune): Set branch_cost field using
      	arm_default_branch_cost.
      	* config/arm/arm.h (BRANCH_COST): Use branch_cost hook from
      	current_tune structure.
      	* dojump.c (tm_p.h): Include file.
      
      From-SVN: r174578
      Julian Brown committed
  5. 24 Mar, 2011 1 commit
  6. 19 May, 2010 1 commit
    • double-int.h (double_int_ior): New function. · 1961ffb8
      	* double-int.h (double_int_ior): New function.
      	* tree.h (build_int_cst_wide_type): Remove.
      	* tree.c (build_int_cst_wide_type): Remove.
      	* fold-const.c (native_interpret_int): Use double_int_to_tree instead
      	of build_int_cst_wide_type.
      	* stor-layout.c (set_sizetype): (Ditto.).
      	* dojump.c (do_jump): Use build_int_cstu instead of
      	build_int_cst_wide_type.
      
      /java
      	* jcf-parse.c (get_constant): Use double_int_to_tree instead of
      	build_int_cst_wide_type.
      
      From-SVN: r159595
      Anatoly Sokolov committed
  7. 20 Apr, 2010 1 commit
    • double-int.h (double_int_setbit): Declare. · 54fb1ae0
      	* double-int.h (double_int_setbit): Declare.
      	* double-int.c (double_int_setbit): New function.
      	* rtl.h (immed_double_int_const): Declare.
      	* emit-rtl.c (immed_double_int_const): New function.
      	* builtins.c (expand_builtin_signbit): Clean up, use double_int_*
      	and immed_double_int_const functions.
      	* optabs.c (expand_absneg_bit, expand_copysign_absneg,
      	expand_copysign_bit):  (Ditto.).
      	* simplify-rtx.c (simplify_binary_operation_1): (Ditto.).
      	* tree-ssa-address.c (addr_for_mem_ref): (Ditto.).
      	* dojump.c (prefer_and_bit_test): (Ditto.).
      	* expr.c (convert_modes, reduce_to_bit_field_precision,
      	const_vector_from_tree): (Ditto.).
      	* expmed.c (mask_rtx, lshift_value): (Ditto.).
      
      From-SVN: r158566
      Anatoly Sokolov committed
  8. 19 Feb, 2010 2 commits
    • re PR middle-end/42233 (c++ builtin_expect code generation regression) · 8ac074e8
      	PR middle-end/42233
      	* dojump.c (do_jump) <case TRUTH_NOT_EXPR>: Invert priority.
      
      From-SVN: r156903
      Jakub Jelinek committed
    • re PR middle-end/42233 (c++ builtin_expect code generation regression) · 40e90eac
      	PR middle-end/42233
      	* expr.h (jumpifnot, jumpifnot_1, jumpif, jumpif_1, do_jump,
      	do_jump_1, do_compare_rtx_and_jump): Add PROB argument.
      	* dojump.c: Include output.h.
      	(inv): New inline function.
      	(jumpifnot, jumpifnot_1, jumpif, jumpif_1, do_jump_1, do_jump,
      	do_jump_by_parts_greater_rtx, do_jump_by_parts_greater,
      	do_jump_by_parts_zero_rtx, do_jump_by_parts_equality_rtx,
      	do_jump_by_parts_equality, do_compare_and_jump): Add PROB
      	argument, pass it down to other calls.
      	(do_compare_rtx_and_jump): Likewise.  If PROB is not -1,
      	add REG_BR_PROB note to the conditional jump.
      	* cfgexpand.c (add_reg_br_prob_note): Removed.
      	(expand_gimple_cond): Don't call it, add the probability
      	as last argument to jumpif_1/jumpifnot_1.
      	* Makefile.in (dojump.o): Depend on output.h.
      	* builtins.c (expand_errno_check): Adjust do_compare_rtx_and_jump
      	callers.
      	* expmed.c (emit_store_flag_force, do_cmp_and_jump): Likewise.
      	* stmt.c (do_jump_if_equal): Likewise.
      	* cfgrtl.c (rtl_lv_add_condition_to_bb): Likewise.
      	* loop-unswitch.c (compare_and_jump_seq): Likewise.
      	* config/rs6000/rs6000.c (rs6000_aix_emit_builtin_unwind_init):
      	Likewise.
      	* optabs.c (expand_doubleword_shift, expand_abs): Likewise.
      	* expr.c (expand_expr_real_1): Adjust do_jump, jumpifnot and
      	jumpifnot_1 callers.
      	(expand_expr_real_2): Adjust jumpifnot_1 and do_compare_rtx_and_jump
      	callers.
      	(store_expr): Adjust jumpifnot caller.
      	(store_constructor): Adjust jumpif caller.
      
      From-SVN: r156889
      Jakub Jelinek committed
  9. 13 Dec, 2009 1 commit
  10. 25 Aug, 2009 1 commit
    • expr.h (jumpifnot_1, [...]): Declare. · 4df62c77
              * expr.h (jumpifnot_1, jumpif_1, do_jump_1): Declare.
              * dojump.c (do_jump_by_parts_greater): Take two operands instead of
              full expression.
              (do_jump_by_parts_equality, do_compare_and_jump): Ditto.
              (jumpifnot_1, jumpif_1): New wrappers for do_jump_1.
              (do_jump): Split out code for simple binary comparisons into ...
              (do_jump_1): ... this, taking the individual operands and code.
              Change callers to helper function above accordingly.
              * expr.c (expand_expr_real_1): Use jumpifnot_1 for simple binary
              comparisons.
      
      From-SVN: r151080
      Michael Matz committed
  11. 28 Jun, 2009 2 commits
  12. 12 May, 2009 1 commit
  13. 07 May, 2009 1 commit
  14. 30 Mar, 2009 1 commit
  15. 09 Jan, 2009 1 commit
  16. 11 Sep, 2008 1 commit
    • dojump.c (do_jump): Move below. · 30821654
      2008-09-11  Paolo Bonzini  <bonzini@gnu.org>
      
      	* dojump.c (do_jump) [BIT_AND_EXPR]: Move below.  Fall through to
      	TRUTH_AND_EXPR for boolean (1-bit precision) expressions.
      	(do_jump) [BIT_IOR_EXPR]: Compile as TRUTH_OR_EXPR.
      
      	* tree-flow.h (simplify_stmt_using_ranges): Accept a GSI, return a bool.
      	* tree-ssa-propagate.c (substitute_and_fold): Pass a GSI to
      	VRP's simplify_stmt_using_ranges.  Do simplify_stmt_using_ranges
      	before finalizing the changes.
      	* tree-vrp.c (extract_range_from_binary_expr): Add limited support
      	for BIT_IOR_EXPR.
      	(simplify_truth_ops_using_ranges): New.
      	(simplify_div_or_mod_using_ranges, simplify_abs_using_ranges,
      	simplify_cond_using_ranges, simplify_switch_using_ranges): Return
      	whether a simplification was made.
      	(simplify_stmt_using_ranges): Ditto, and accept a GSI.  For GS_ASSIGN,
      	use a switch statement and also call simplify_truth_ops_using_ranges.
      
      testsuite:
      2008-09-11  Paolo Bonzini  <bonzini@gnu.org>
      
      	* gcc.dg/tree-ssa/vrp47.c: New.
      	* gcc.target/i386/andor-2.c: New.
      
      From-SVN: r140288
      Paolo Bonzini committed
  17. 31 Aug, 2008 1 commit
    • fwprop.c (should_replace_address): Add speed attribute. · f40751dd
      	* fwprop.c (should_replace_address): Add speed attribute.
      	(PR_OPTIMIZE_FOR_SPEED): New flag.
      	(propagate_rtx_1): Use it.
      	(propagate_rtx): Set it.
      	(try_fwprop_subst): Update call of rtx_costs.
      	(forward_propagate_and_simplify): LIkewise.
      	* hooks.c (hook_int_rtx_bool_0): New
      	(hook_bool_rtx_int_int_intp_false): Replace by ...
      	(hook_bool_rtx_int_int_intp_bool_false): .. thisone.
      	* hooks.h (hook_int_rtx_bool_0): New
      	(hook_bool_rtx_int_int_intp_false): Replace by ...
      	(hook_bool_rtx_int_int_intp_bool_false): .. thisone.
      	* optabs.c (avoid_expensive_constant): UPdate call of rtx_cost.
      	(prepare_cmp_insn): UPdate call of rtx_cost.
      	* postreload.c (reload_cse_simplify_set): Update call of rtx_cost.
      	(reload_cse_simplify_operands): Update call of rtx_cost.
      	(reload_cse_move2add): call of rtx_cost.
      	* target.h (struct gcc_target): Update rtx_costs and address_costs.
      	* rtlanal.c (rtx_cost): Add speed argument.
      	(address_cost): Add speed argument
      	(default_address_cost): Likewise.
      	(insn_rtx_cost): Likewise.
      	* cfgloopanal.c (seq_cost): Add speed argument.
      	(target_reg_cost, target_spill_cost): Turn to array.
      	(init_set_costs): Update for speed.
      	(estimate_reg_pressure_cost): Add speed argument.
      	* auto-inc-dec.c (attempt_change): Update call of rtx_cost.
      	* dojump.c (prefer_and_bit_test): UPdate call of rtx_cost.
      	* tree-ssa-loop-ivopts.c (struct ivopts_data): New field speed.
      	(seq_cost): Add speed argument.
      	(computation_cost): Add speed arugment.
      	(add_cost, multiply_by_const, get_address_cost): add speed argument.
      	(force_expr_to_var_cost): Update for profile info.
      	(force_var_cost): Likewise.
      	(split_address_cost): Likewise.
      	(ptr_difference_cost): Likewise.
      	(difference_cost): Likewise.
      	(get_computation_cost_at): Likewise.
      	(determine_iv_cost): Likewise.
      	(ivopts_global_cost_for_size): Likewise.
      	(rewrite_use_address): Likewise.
      	(tree_ssa_iv_optimize_loop): Initialize speed field.
      	* cse.c (optimize_this_for_speed_p): New static var.
      	(notreg_cost): Update call of rtx_cost.
      	(cse_extended_basic_block): set optimize_this_for_speed_p.
      	* ifcvt.c (cheap_bb_rtx_cost_p): Update call of rtx_cost.
      	(noce_try_cmove_arith): Likewise.
      	(noce_try_sign_mask): LIkewise.
      	* expr.c (compress_float_constant): Update rtx_cost calls.
      	* tree-ssa-address.c (most_expensive_mult_to_index): Add speed argument.
      	(addr_to_parts): Likewise.
      	(create_mem_ref): Likewise.
      	* dse.c (find_shift_sequence): Add speed argument.
      	(replace_read): Update call.
      	* calls.c (precompute_register_parameters): Update call of rtx_cost.
      	* expmed.c (sdiv_pow2_cheap, smod_pow2_cheap, zero_cost, add_cost,
      	* neg_cost, shift_cost, shiftadd_cost,
      	shiftsub_cost, mul_cost, sdiv_cost, udiv_cost ,mul_widen_cost,
      	mul_highpart_cost): Increase dimension.
      	(init_expmed): Initialize for both size and speed.
      	(expand_shift): Use profile.
      	(synth_mult): Use profile.
      	(choose_mult_variant): Use profile.
      	(expand_mult): Use profile.
      	(expand_mult_highpart_optab): Use profile.
      	(expand_mult_highpart): Use profile.
      	(expand_smod_pow2): Use profile.
      	(expand_divmod): Use profile.
      	* simplify-rtx.c (simplify_binary_operation_1): Update call of rtx_cost.
      	* loop-invariant.c (create_new_invariant): Use profile.
      	(gain_for_invariant): Add speed parameter.
      	(best_gain_for_invariant): Likewise.
      	(find_invariants_to_move): Likewise.
      	(move_single_loop_invariants): Set it.
      	* target-def.h (TARGET_RTX_COSTS): Use hook.
      	* rtl.h (rtx_cost, address_cost, insn_rtx_cost): Update prototpe.
      	(optimize_insn_for_size_p, optimize_insn_for_speed_p): Declare.
      	* output.h (default_address_cost): Update prototype.
      	* combine.c (optimize_this_for_speed_p): New static var.
      	(combine_validate_cost): Update call of rtx_cost.
      	(combine_instructions): Set optimize_this_for_speed_p.
      	(expand_compound_operation): Update call of rtx_cost.
      	(make_extraction):Update call of rtx_cost.
      	(force_to_mode):Update call of rtx_cost.
      	(distribute_and_simplify_rtx):Update call of rtx_cost.
      	* cfgloop.h (target_reg_cost, target_spill_cost): Turn to array.
      	(estimate_reg_pressure_cost): Update prototype.
      	* tree-flow.h (multiply_by_cost, create_mem_ref): Update prototype.
      	* basic-block.h (optimize_insn_for_size_p, optimize_insn_for_speed_p):
      	Remove.
      	* config/alpha/alpha.c (alpha_rtx_costs): Update.
      	(alpha_rtx_costs): Update.
      	* config/frv/frv.c (frv_rtx_costs): Update.
      	* config/s390/s390.c (s390_rtx_costs): Update.
      	* config/m32c/m32c.c (m32c_memory_move_cost): Update.
      	(m32c_rtx_costs): Update.
      	* config/spu/spu.c (TARGET_ADDRESS_COST): Upate.
      	(spu_rtx_costs): Update.
      	* config/sparc/sparc.c (sparc_rtx_costs): Update.
      	* config/m32r/m32r.c (m32r_rtx_costs): Update.
      	* config/i386/i386.c (:ix86_address_cost): Update.
      	(ix86_rtx_costs): Update.
      	* config/sh/sh.c (sh_rtx_costs, sh_address_cost): Update.
      	* config/pdp11/pdp11.c (pdp11_rtx_costs): Update.
      	* config/avr/avr.c (avr_rtx_costs, avr_address_cost): Update.
      	* config/crx/crx.c (crx_address_cost): Update.
      	* config/xtensa/xtensa.c (xtensa_rtx_costs): Update.
      	* config/stormy16/stormy16.c
      	(xstormy16_address_cost, xstormy16_rtx_costs): Update.
      	* config/m68hc11/m68hc11.c
      	(m68hc11_address_cost, m68hc11_rtx_costs): Update.
      	* config/cris/cris.c (cris_rtx_costs, cris_address_cost): Update.
      	* config/iq2000/iq2000.c (iq2000_rtx_costs, iq2000_address_cost): Update.
      	* config/mn10300/mn10300.c (mn10300_address_cost, mn10300_rtx_costs): Update
      	* config/ia64/ia64.c (ia64_rtx_costs): Update.
      	* config/m68k/m68k.c (m68k_rtx_costs): Update.
      	* config/rs6000/rs6000.c (rs6000_rtx_costs): Update.
      	* config/arc/arc.c (arc_rtx_costs, arc_address_cost): Update.
      	* config/mcore/mcore.c (TARGET_ADDRESS_COST): Update.
      	(mcore_rtx_costs): update.
      	* config/score/score3.c (score3_rtx_costs): Update.
      	* config/score/score7.c (score7_rtx_costs): Update.
      	* config/score/score3.h (score3_rtx_costs):Update.
      	* config/score/score7.h (score7_rtx_costs): Update.
      	* config/score/score.c (score_rtx_costs): Update.
      	* config/arm/arm.c (arm_address_cost): Update.
      	(arm_rtx_costs_1): Update.
      	(arm_rtx_costs_1): Update.
      	(arm_size_rtx_costs): Update.
      	(arm_size_rtx_costs): Update.
      	(arm_size_rtx_costs): Update.
      	(arm_xscale_rtx_costs): Update.
      	(arm_thumb_address_cost): Update.
      	* config/pa/pa.c (hppa_address_cost): Update.
      	* config/mips/mips.c (mips_rtx_costs): Update.
      	* config/vax/vax.c (vax_address_cost): Update.
      	* config/h8300/h8300.c (h8300_shift_costs): Update.
      	(h8300_rtx_costs): Update.
      	* config/v850/v850.c (TARGET_ADDRESS_COST): Update.
      	(v850_rtx_costs): Update.
      	* config/mmix/mmix.c (mmix_rtx_costs, mmix_rtx_costs): Update.
      	* config/bfin/bfin.c
      	(bfin_address_cost): Update.
      	(bfin_rtx_costs): Update.
      	* stmt.c (lshift_cheap_p): Update.
      
      From-SVN: r139821
      Jan Hubicka committed
  18. 30 Aug, 2008 2 commits
    • optabs.c (expand_abs_nojump): Update BRANCH_COST call. · 3a4fd356
      	* optabs.c (expand_abs_nojump): Update BRANCH_COST call.
      	* fold-cost.c (LOGICAL_OP_NON_SHORT_CIRCUIT, fold_truthop): Likewise.
      	* dojump.c (do_jump): Likewise.
      	* ifcvt.c (MAX_CONDITIONAL_EXECUTE): Likewise.
      	(note-if_info): Add BRANCH_COST.
      	(noce_try_store_flag_constants, noce_try_addcc, noce_try_store_flag_mask,
      	noce_try_cmove_arith, noce_try_cmove_arith, noce_try_cmove_arith,
      	noce_find_if_block, find_if_case_1, find_if_case_2): Use compuated
      	branch cost.
      	* expr.h (BRANCH_COST): Update default.
      	* predict.c (predictable_edge_p): New function.
      	* expmed.c (expand_smod_pow2, expand_sdiv_pow2, emit_store_flag):
      	Update BRANCH_COST call.
      	* basic-block.h (predictable_edge_p): Declare.
      	* config/alpha/alpha.h (BRANCH_COST): Update.
      	* config/frv/frv.h (BRANCH_COST): Update.
      	* config/s390/s390.h (BRANCH_COST): Update.
      	* config/spu/spu.h (BRANCH_COST): Update.
      	* config/sparc/sparc.h (BRANCH_COST): Update.
      	* config/m32r/m32r.h (BRANCH_COST): Update.
      	* config/i386/i386.h (BRANCH_COST): Update.
      	* config/i386/i386.c (ix86_expand_int_movcc): Update use of BRANCH_COST.
      	* config/sh/sh.h (BRANCH_COST): Update.
      	* config/pdp11/pdp11.h (BRANCH_COST): Update.
      	* config/avr/avr.h (BRANCH_COST): Update.
      	* config/crx/crx.h (BRANCH_COST): Update.
      	* config/xtensa/xtensa.h (BRANCH_COST): Update.
      	* config/stormy16/stormy16.h (BRANCH_COST): Update.
      	* config/m68hc11/m68hc11.h (BRANCH_COST): Update.
      	* config/iq2000/iq2000.h (BRANCH_COST): Update.
      	* config/ia64/ia64.h (BRANCH_COST): Update.
      	* config/rs6000/rs6000.h (BRANCH_COST): Update.
      	* config/arc/arc.h (BRANCH_COST): Update.
      	* config/score/score.h (BRANCH_COST): Update.
      	* config/arm/arm.h (BRANCH_COST): Update.
      	* config/pa/pa.h (BRANCH_COST): Update.
      	* config/mips/mips.h (BRANCH_COST): Update.
      	* config/vax/vax.h (BRANCH_COST): Update.
      	* config/h8300/h8300.h (BRANCH_COST): Update.
      	* params.def (PARAM_PREDICTABLE_BRANCH_OUTCOME): New.
      	* doc/invoke.texi (predictable-branch-cost-outcome): Document.
      	* doc/tm.texi (BRANCH_COST): Update.
      
      From-SVN: r139804
      Jan Hubicka committed
  19. 12 Aug, 2008 1 commit
  20. 26 Jul, 2008 1 commit
    • cgraph.c (cgraph_function_possibly_inlined_p): Do not rely on DECL_INLINE. · c37f4ba4
      	* cgraph.c (cgraph_function_possibly_inlined_p): Do not rely on DECL_INLINE.
      	* cgraphunit.c (record_cdtor_fn): Do not initialize DECL_INLINE
      	(cgraph_preserve_function_body_p): Do not rely on DECL_INLINE.
      	* dojump.c (clear_pending_stack_adjust): Likewise.
      	* print-tree.c (print_node): Ignore DECL_INLINE.
      	* tree-inline.c (inlinable_function_p): Likewise.
      
      From-SVN: r138165
      Jan Hubicka committed
  21. 09 May, 2008 1 commit
    • pa.c (reloc_needed): Use CASE_CONVERT. · 1043771b
              * config/pa/pa.c (reloc_needed): Use CASE_CONVERT.
      
              * tree-cfg.c (verify_expr, verify_gimple_expr): Likewise.
      
              * tree-ssa-structalias.c (get_constraint_for): Likewise.
      
              * c-common.c (c_common_truthvalue_conversion): Likewise.
      
              * tree-object-size.c (compute_object_offset): Likewise.
      
              * tree-inline.c (estimate_num_insns_1): Likewise.
      
              * varasm.c (const_hash_1, compare_constant, copy_constant)
              (compute_reloc_for_constant, output_addressed_constants)
              (initializer_constant_valid_p): Likewise.
      
              * c-omp.c (check_omp_for_incr_expr): Likewise.
      
              * gimplify.c (gimplify_expr): Likewise.
      
              * c-typeck.c (c_finish_return): Likewise.
      
              * tree-vectorizer.c (supportable_widening_operation)
              (supportable_narrowing_operation): Likewise.
      
              * c-pretty-print.c (pp_c_cast_expression, pp_c_expression):
              Likewise.
      
              * matrix-reorg.c (can_calculate_expr_before_stmt): Likewise.
      
              * expr.c (highest_pow2_factor, expand_expr_real_1): Likewise.
      
              * dwarf2out.c (loc_descriptor_from_tree_1, add_bound_info)
              (descr_info_loc): Likewise.
      
              * tree-ssa-loop-ivopts.c (may_be_nonaddressable_p): Likewise.
      
              * fold-const.c (operand_equal_p, make_range, extract_muldiv_1)
              (fold_unary): Likewise.
      
              * builtins.c (get_pointer_alignment): Likewise.
      
              * tree-scalar-evolution.c (interpret_rhs_modify_stmt)
              (instantiate_parameters_1): Likewise.
      
              * tree.c (expr_align, stabilize_reference): Likewise.
      
              * tree-pretty-print.c (dump_generic_node, op_prio): Likewise.
      
              * tree-ssa-loop-niter.c (derive_constant_upper_bound): Likewise.
      
              * convert.c (strip_float_extensions): Use CONVERT_EXPR_P.
      
              * tree-ssa-threadedge.c (simplify_control_stmt_condition):
              Likewise.
      
              * config/alpha/alpha.c (va_list_skip_additions): Likewise.
      
              * c-common.c (c_alignof_expr, check_function_arguments_recurse):
              Likewise.
      
              * tree-ssa.c (tree_ssa_useless_type_conversion): Likewise.
      
              * varasm.c (initializer_constant_valid_p, output_constant):
              Likewise.
      
              * tree-ssa-forwprop.c (get_prop_source_stmt, can_propagate_from)
              (forward_propagate_addr_expr_1, forward_propagate_addr_expr)
              (forward_propagate_comparison)
              (tree_ssa_forward_propagate_single_use_vars): Likewise.
      
              * cfgexpand.c (discover_nonconstant_array_refs_r): Likewise.
      
              * emit-rtl.c (component_ref_for_mem_expr)
              (set_mem_attributes_minus_bitpos): Likewise.
      
              * tree-ssa-phiopt.c (conditional_replacement): Likewise.
      
              * gimplify.c (gimplify_conversion, goa_lhs_expr_p,
              gimplify_expr): Likewise.
      
              * c-typeck.c (default_function_array_conversion,
              build_indirect_ref)
              (build_function_call, pointer_diff, build_compound_expr)
              (c_finish_return): Likewise.
      
              * tree-vect-analyze.c (vect_determine_vectorization_factor):
              Likewise.
      
              * matrix-reorg.c (get_inner_of_cast_expr,
              may_flatten_matrices_1): Likewise.
      
              * tree-ssa-ifcombine.c (recognize_single_bit_test): Likewise.
      
              * expr.c (is_aligning_offset): Likewise.
      
              * tree-ssa-alias.c (is_escape_site): Likewise.
      
              * tree-stdarg.c (va_list_counter_bump, check_va_list_escapes)
              (check_all_va_list_escapes): Likewise.
      
              * tree-ssa-loop-ivopts.c (determine_base_object)
              (determine_common_wider_type): Likewise.
      
              * dojump.c (do_jump): Likewise.
      
              * tree-ssa-sccvn.c (simplify_unary_expression): Likewise.
      
              * tree-gimple.c (is_gimple_cast): Likewise.
      
              * fold-const.c (decode_field_reference, )
              (fold_sign_changed_comparison, fold_unary, fold_comparison)
              (fold_binary): Likewise.
      
              * tree-ssa-alias-warnings.c (find_alias_site_helper)
              (already_warned_in_frontend_p): Likewise.
      
              * builtins.c (get_memory_rtx, fold_builtin_next_arg): Likewise.
      
              * tree.c (really_constant_p, get_unwidened): Likewise.
      
              * tree-ssa-loop-niter.c (expand_simple_operations): Likewise.
      
              * tree-ssa-loop-im.c (rewrite_bittest): Likewise.
      
              * tree-vrp.c (register_edge_assert_for_2,
              register_edge_assert_for_1): Likewise.
      
              * tree.h (STRIP_NOPS, STRIP_SIGN_NOPS, STRIP_TYPE_NOPS): Use
              CONVERT_EXPR_P.
              (CONVERT_EXPR_P): Define.
              (CASE_CONVERT): Define.
      
      From-SVN: r135114
      Tomas Bily committed
  22. 25 Apr, 2008 1 commit
    • re PR testsuite/35843 (-fdump-rtl-expand does not exist anymore) · e3b5732b
      	PR testsuite/35843
      	* cfgexpand.c (pass_expand): Turn into RTL pass.
      	* passes.c (execute_one_pass): Do pass typechecking after execution.
      	* tree-pass.h (pass_expand): Turn into RTL pass.
      
      	* function.h (struct rtl_data): Move here fields
      	accesses_prior_frames, calls_eh_return, saves_all_registers,
      	has_nonlocal_goto, has_asm_statement, is_thunk,
      	all_throwers_are_sibcalls, limit_stack, profile, uses_const_pool,
      	uses_pic_offset_table, uses_eh_lsda, tail_call_emit,
      	arg_pointer_save_area_init from struct function; turn into bool.
      	(struct function): Move
      	calls_eh_return, saves_all_registers, has_nonlocal_goto,
      	has_asm_statement, is_thunk, all_throwers_are_sibcalls, limit_stack,
      	profile, uses_const_pool, uses_pic_offset_table, uses_eh_lsda,
      	tail_call_emit, arg_pointer_save_area_init
      	into struct rtl_data.  Remove recursive_call_emit and gimplified flags.
      	(current_function_returns_struct, current_function_returns_pcc_struct,
      	current_function_calls_setjmp, current_function_calls_alloca,
      	current_function_accesses_prior_frames,
      	current_function_calls_eh_return, current_function_is_thunk,
      	current_function_stdarg, current_function_profile,
      	current_function_limit_stack, current_function_uses_pic_offset_table,
      	current_function_uses_const_pool, current_function_has_nonlocal_label,
      	current_function_saves_all_registers,
      	current_function_has_nonlocal_goto,
      	current_function_has_asm_statement): Remove accesor macros.
      	* ra-conflict.c (global_conflicts): Update.
      	* tree-tailcall.c (suitable_for_tail_opt_p): Update.
      	(suitable_for_tail_call_opt_p): Update.
      	* builtins.c (expand_builtin_return_addr): Update.
      	(expand_builtin_setjmp_setup): Update.
      	(expand_builtin_nonlocal_goto): Update.
      	* final.c (final_start_function): Update.
      	(profile_function): Update.
      	(leaf_function_p): Update.
      	(only_leaf_regs_used): Update.
      	* df-scan.c (df_get_exit_block_use_set): Update.
      	* dojump.c (clear_pending_stack_adjust): Update.
      	* tree-stdarg.c (gate_optimize_stdarg): Update.
      	* gimple-low.c (lower_function_body): Update.
      	* global.c (compute_regsets): Update.
      	(global_alloc): Update.
      	* dwarf2out.c (dwarf2out_begin_prologue): Update.
      	* expr.c (expand_assignment): Update.
      	* dse.c (dse_step0): Update.
      	(dse_step1): Update.
      	* c-decl.c (store_parm_decls): Update.
      	* local-alloc.c (combine_regs): Update.
      	(find_free_reg): Update.
      	* function.c (assign_parms_augmented_arg_list): Update.
      	(assign_parm_find_data_types): Update.
      	(assign_parms): Update.
      	(allocate_struct_function): Update.
      	(expand_function_start): Update.
      	(expand_function_end): Update.
      	(get_arg_pointer_save_area): Update.
      	(thread_prologue_and_epilogue_insns): Update.
      	(rest_of_match_asm_constraints): Update.
      	* stor-layout.c (variable_size): Update.
      	* gcse.c (gcse_main): Update.
      	(bypass_jumps): Update.
      	* gimplify.c (gimplify_function_tree): Update.
      	* calls.c (emit_call_1): Update.
      	(expand_call): Update.
      	* bt-load.c (compute_defs_uses_and_gen): Update.
      	* except.c (sjlj_assign_call_site_values): Update.
      	(sjlj_emit_function_enter): Update.
      	(can_throw_external): Update.
      	(set_nothrow_function_flags): Update.
      	(expand_builtin_unwind_init): Update.
      	(expand_eh_return): Update.
      	(convert_to_eh_region_ranges): Update.
      	(output_function_exception_table): Update.
      	* emit-rtl.c (gen_tmp_stack_mem): Update.
      	* cfgexpand.c (expand_used_vars): Update.
      	(tree_expand_cfg): Update.
      	* cfgcleanup.c (rest_of_handle_jump): Update.
      	* explow.c (allocate_dynamic_stack_space): Update.
      	* varasm.c (assemble_start_function): Update.
      	(force_const_mem): Update.
      	(mark_constant_pool): Update.
      	* tree-optimize.c (tree_rest_of_compilation): Update.
      	* stack-ptr-mod.c (notice_stack_pointer_modification): Update.
      	* tree-cfg.c (notice_special_calls): Update.
      	(is_ctrl_altering_stmt): Update.
      	(tree_can_make_abnormal_goto): Update.
      	(tree_purge_dead_abnormal_call_edges): Update.
      	* config/alpha/predicates.md: Update.
      	* config/alpha/alpha.c (alpha_sa_mask): Update.
      	(alpha_sa_size): Update.
      	(alpha_does_function_need_gp): Update.
      	(alpha_expand_prologue): Update.
      	(alpha_start_function): Update.
      	(alpha_output_function_end_prologue): Update.
      	(alpha_expand_epilogue): Update.
      	* config/frv/frv.c (frv_stack_info): Update.
      	(frv_expand_epilogue): Update.
      	* config/s390/s390.c (s390_regs_ever_clobbered): Update.
      	(s390_register_info): Update.
      	(s390_frame_info): Update.
      	(s390_init_frame_layout): Update.
      	(s390_can_eliminate): Update.
      	(save_gprs): Update.
      	* config/spu/spu.c (spu_split_immediate): Update.
      	(need_to_save_reg): Update.
      	(spu_expand_prologue): Update.
      	(spu_expand_epilogue): Update.
      	* config/sparc/sparc.md: Update.
      	* config/sparc/sparc.c (eligible_for_return_delay): Update.
      	(sparc_tls_got): Update.
      	(legitimize_pic_address): Update.
      	(sparc_emit_call_insn): Update.
      	(sparc_expand_prologue): Update.
      	(output_return): Update.
      	(print_operand): Update.
      	(sparc_function_ok_for_sibcall): Update.
      	* config/sparc/sparc.h (EXIT_IGNORE_STACK): Update.
      	* config/m32r/m32r.md: Update.
      	* config/m32r/m32r.c (MUST_SAVE_RETURN_ADDR): Update.
      	(m32r_compute_frame_size): Update.
      	(m32r_expand_prologue): Update.
      	(m32r_expand_epilogue): Update.
      	(m32r_legitimize_pic_address): Update.
      	* config/m32r/m32r.h (FRAME_POINTER_REQUIRED): Update.
      	* config/i386/linux.h (SUBTARGET_FRAME_POINTER_REQUIRED): Update.
      	* config/i386/i386.c (ix86_frame_pointer_required): Update.
      	(gen_push): Update.
      	(ix86_save_reg): Update.
      	(ix86_compute_frame_layout): Update.
      	(ix86_expand_prologue): Update.
      	(ix86_expand_epilogue): Update.
      	* config/sh/sh.c (output_stack_adjust): Update.
      	(calc_live_regs): Update.
      	(sh5_schedule_saves): Update.
      	(sh_expand_prologue): Update.
      	(sh_expand_epilogue): Update.
      	(sh_setup_incoming_varargs): Update.
      	(sh_allocate_initial_value): Update.
      	(sh_get_pr_initial_val): Update.
      	* config/sh/sh.h (SHMEDIA_REGS_STACK_ADJUST): Update.
      	* config/sh/sh.md (label:): Update.
      	* config/avr/avr.c (out_movhi_mr_r): Update.
      	* config/crx/crx.h (enum): Update.
      	* config/xtensa/xtensa.h (along): Update.
      	* config/stormy16/stormy16.c Update.
      	(xstormy16_compute_stack_layout): Update.
      	* config/fr30/fr30.c (MUST_SAVE_RETURN_POINTER): Update.
      	(fr30_expand_prologue): Update.
      	* config/cris/cris.c (cris_conditional_register_usage): Update.
      	(cris_reg_saved_in_regsave_area): Update.
      	(cris_initial_frame_pointer_offset): Update.
      	(cris_simple_epilogue): Update.
      	(cris_expand_prologue): Update.
      	(cris_expand_epilogue): Update.
      	(cris_expand_pic_call_address): Update.
      	(cris_asm_output_symbol_ref): Update.
      	(cris_asm_output_label_ref): Update.
      	* config/cris/cris.md Update.
      	* config/iq2000/iq2000.c (compute_frame_size): Update.
      	(iq2000_expand_epilogue): Update.
      	* config/mt/mt.h (save_direction): Update.
      	* config/mn10300/mn10300.c (mn10300_function_value): Update.
      	* config/ia64/ia64.c (ia64_compute_frame_size): Update.
      	(ia64_secondary_reload_class): Update.
      	* config/m68k/m68k.c (m68k_save_reg): Update.
      	(m68k_expand_prologue): Update.
      	(m68k_expand_epilogue): Update.
      	(legitimize_pic_address): Update.
      	* config/rs6000/rs6000.c (rs6000_got_register): Update.
      	(first_reg_to_save): Update.
      	(first_altivec_reg_to_save): Update.
      	(compute_vrsave_mask): Update.
      	(compute_save_world_info): Update.
      	(rs6000_stack_info): Update.
      	(spe_func_has_64bit_regs_p): Update.
      	(rs6000_ra_ever_killed): Update.
      	(rs6000_emit_eh_reg_restore): Update.
      	(rs6000_emit_allocate_stack): Update.
      	(rs6000_emit_prologue): Update.
      	(rs6000_emit_epilogue): Update.
      	(rs6000_output_function_epilogue): Update.
      	(output_profile_hook): Update.
      	(rs6000_elf_declare_function_name): Update.
      	* config/rs6000/rs6000.h (rs6000_args): Update.
      	* config/rs6000/rs6000.md: Update.
      	* config/mcore/mcore.c (mcore_expand_prolog): Update.
      	* config/arc/arc.c (arc_output_function_epilogue): Update.
      	* config/arc/arc.h (FRAME_POINTER_REQUIRED): Update.
      	* config/darwin.c (machopic_function_base_name): Update.
      	* config/score/score3.c (score3_compute_frame_size): Update.
      	(rpush): Update.
      	(rpop): Update.
      	(score3_epilogue): Update.
      	* config/score/score7.c (score7_compute_frame_size): Update.
      	(score7_prologue): Update.
      	(score7_epilogue): Update.
      	* config/score/score.h (FRAME_POINTER_REQUIRED): Update.
      	* config/arm/linux-elf.h (SUBTARGET_FRAME_POINTER_REQUIRED): Update.
      	* config/arm/arm.c (use_return_insn): Update.
      	(require_pic_register): Update.
      	(arm_load_pic_register): Update.
      	(arm_compute_save_reg0_reg12_mask): Update.
      	(arm_compute_save_reg_mask): Update.
      	(thumb1_compute_save_reg_mask): Update.
      	(output_return_instruction): Update.
      	(arm_output_function_prologue): Update.
      	(arm_output_epilogue): Update.
      	(arm_get_frame_offsets): Update.
      	(arm_expand_prologue): Update.
      	(thumb_pushpop): Update.
      	(thumb_exit): Update.
      	(thumb1_expand_prologue): Update.
      	(thumb1_expand_epilogue): Update.
      	(arm_unwind_emit): Update.
      	(arm_output_fn_unwind): Update.
      	* config/arm/arm.h (FRAME_POINTER_REQUIRED): Update.
      	* config/arm/arm.md: Update.
      	* config/pa/pa.md: Update.
      	* config/pa/pa.c (legitimize_pic_address): Update.
      	(compute_frame_size): Update.
      	(hppa_expand_prologue): Update.
      	(hppa_expand_epilogue): Update.
      	(borx_reg_operand): Update.
      	* config/pa/pa.h (FRAME_POINTER_REQUIRED): Update.
      	(HARD_REGNO_RENAME_OK): Update.
      	* config/mips/mips.c (mips_global_pointer): Update.
      	(mips_save_reg_p): Update.
      	(mips_compute_frame_info): Update.
      	(mips_frame_pointer_required): Update.
      	(mips_expand_prologue): Update.
      	(mips_expand_epilogue): Update.
      	(mips_can_use_return_insn): Update.
      	(mips_reorg_process_insns): Update.
      	* config/v850/v850.c (compute_register_save_size): Update.
      	* config/mmix/mmix.h (FRAME_POINTER_REQUIRED): Update.
      	* config/mmix/mmix.c (along): Update.
      	(mmix_expand_epilogue): Update.
      	* config/bfin/bfin.c (legitimize_pic_address): Update.
      	(must_save_p): Update.
      	(stack_frame_needed_p): Update.
      	(add_to_reg): Update.
      	(bfin_expand_prologue): Update.
      	* stmt.c (expand_asm_operands): Update.
      	* reload1.c (reload): Update.
      	(init_elim_table): Update.
      
      From-SVN: r134682
      Jan Hubicka committed
  23. 23 Apr, 2008 1 commit
    • tree-cfg.c (verify_expr): Check for NON_LVALUE_EXPR as unreachable case. · a134e5f3
              * tree-cfg.c (verify_expr): Check for NON_LVALUE_EXPR as
              unreachable case.
      
              * tree-vrp.c (extract_range_from_unary_expr): Removed unused
              NON_LVALUE_EXPR.
      
              * tree-ssa-threadedge.c (simplify_control_stmt_condition):
              Likewise.
              
              * tree-ssa-structalias.c (get_constraint_for): Likewise.
      
              * tree-inline.c (estimate_num_insns_1): Likewise.
      
              * varasm.c (const_hash_1, compare_constant, copy_constant)
              (compute_reloc_for_constant, output_addressed_constants):
              Likewise.
      
              * emit-rtl.c (component_ref_for_mem_expr)
              (set_mem_attributes_minus_bitpos): Likewise.
      
              * expr.c (highest_pow2_factor, expand_expr_real_1, )
              (is_aligning_offset): Likewise.
      
              * dwarf2out.c (loc_descriptor_from_tree_1, add_bound_info):
              Likewise.
      
              * tree-ssa-loop-ivopts.c (may_be_nonaddressable_p): Likewise.
      
              * dojump.c (do_jump): Likewise.
      
              * builtins.c (get_pointer_alignment, get_memory_rtx)
              (integer_valued_real_p, fold_builtin_next_arg): Likewise.
      
              * tree-scalar-evolution.c (instantiate_parameters_1): Likewise.
      
      From-SVN: r134591
      Tomas Bily committed
  24. 09 Aug, 2007 1 commit
    • optabs.c (expand_widen_pattern_expr): Use optabs accestors. · 166cdb08
      	* optabs.c (expand_widen_pattern_expr): Use optabs accestors.
      	(expand_ternary_op): Likewise.
      	(expand_vec_shift_expr): Likewise.
      	(expand_binop_directly): Likewise.
      	(expand_binop): Likewise.
      	(sign_expand_binop): Likewise.
      	(expand_twoval_unop): Likewise.
      	(expand_twoval_binop): Likewise.
      	(expand_twoval_binop_libfunc): Likewise.
      	(widen_clz): Likewise.
      	(widen_bswap): Likewise.
      	(expand_parity): Likewise.
      	(expand_unop): Likewise.
      	(expand_abs_nojump): Likewise.
      	(expand_copysign): Likewise.
      	(emit_no_conflict_block): Likewise.
      	(emit_libcall_block): Likewise.
      	(can_compare_p): Likewise.
      	(prepare_cmp_insn): Likewise.
      	(emit_cmp_and_jump_insn_1): Likewise.
      	(prepare_float_lib_cmp): Likewise.
      	(emit_conditional_add): Likewise.
      	(gen_add2_insn): Likewise.
      	(have_add2_insn): Likewise.
      	(gen_sub2_insn): Likewise.
      	(have_sub2_insn): Likewise.
      	(can_extend_p): Likewise.
      	(can_fix_p): Likewise.
      	(can_float_p): Likewise.
      	(expand_float): Likewise.
      	(expand_fix): Likewise.
      	(expand_sfix_optab): Likewise.
      	(new_optab): Likewise.
      	(new_convert_optab): Likewise.
      	(init_libfuncs): Likewise.
      	(init_interclass_conv_libfuncs): Likewise.
      	(init_intraclass_conv_libfuncs): Likewise.
      	(set_conv_libfunc): Likewise.
      	(init_optabs): Likewise.
      	(debug_optab_libfuncs): Likewise.
      	(gen_cond_trap): Likewise.
      	* optabs.h (optab_handler, convert_optab_hanlder): New.
      	* genopinit.c: Update optabs generation table.
      	* reload.c (find_reloads_address_1): Use optabs accestors.
      	* builtins.c (expand_builtin_mathfn): Likewise.
      	(expand_builtin_mathfn_2): Likewise.
      	(expand_builtin_mathfn_3): Likewise.
      	(expand_builtin_interclass_mathfn): Likewise.
      	(expand_builtin_sincos): Likewise.
      	(expand_builtin_cexpi): Likewise.
      	(expand_builtin_powi): Likewise.
      	(expand_builtin_strlen): Likewise.
      	* dojump.c (do_jump): Likewise.
      	* expr.c (convert_move): Likewise.
      	(move_by_pieces): Likewise.
      	(move_by_pieces_ninsns): Likewise.
      	(can_store_by_pieces): Likewise.
      	(store_by_pieces_1): Likewise.
      	(emit_move_via_integer): Likewise.
      	(emit_move_complex): Likewise.
      	(emit_move_ccmode): Likewise.
      	(emit_move_insn_1): Likewise.
      	(emit_single_push_insn): Likewise.
      	(store_constructor): Likewise.
      	(expand_expr_real_1): Likewise.
      	(do_store_flag): Likewise.
      	* ada/misc.c (gnat_compute_largest_alignment): Likewise.
      	(enumerate_modes): Likewise.
      	* tree-vectorizer.c (vect_supportable_dr_alignment): Likewise.
      	(supportable_widening_operation): Likewise.
      	(supportable_narrowing_operation): Likewise.
      	* expmed.c (store_bit_field_1): Likewise.
      	(extract_bit_field_1): Likewise.
      	(expand_mult_highpart_optab): Likewise.
      	(expand_smod_pow2): Likewise.
      	(expand_divmod): Likewise.
      	(emit_store_flag): Likewise.
      	* tree-vect-patterns.c
      	(vect_pattern_recog_1): Likewise.
      	* tree-ssa-loop-prefetch.c
      	(nontemporal_store_p): Likewise.
      	* tree-vect-transform.c (vect_model_reduction_cost): Likewise.
      	(vect_create_epilog_for_reduction): Likewise.
      	(vectorizable_reduction): Likewise.
      	(vectorizable_operation): Likewise.
      	(vect_strided_store_supported): Likewise.
      	(vectorizable_store): Likewise.
      	(vect_strided_load_supported): Likewise.
      	(vectorizable_load): Likewise.
      	* combine.c (simplify_comparison): Likewise.
      	* tree-vect-generic.c
      	(type_for_widest_vector_mode): Likewise.
      	(expand_vector_operations_1): Likewise.
      	* config/spu/spu.c (spu_expand_mov): Likewise.
      	(spu_emit_vector_compare): Likewise.
      	* config/rs6000/rs6000.c
      	(rs6000_emit_vector_compare): Likewise.
      	* stmt.c (add_case_node): Likewise.
      	* reload1.c (gen_reload):
      
      From-SVN: r127317
      Jan Hubicka committed
  25. 26 Jul, 2007 1 commit
  26. 11 Nov, 2006 1 commit
    • extended.texi (__builtin_expect): We no longer require second argument to be constant. · ef950eba
      	* extended.texi (__builtin_expect): We no longer require second argument
      	to be constant.
      	* gengtype.c (adjust_field_rtx_def): Drop NOTE_INSN_EXPECTED_VALUE.
      	* builtins.c (expand_builtin_expect): Simplify.
      	(expand_builtin_expect_jump): Kill.
      	* final.c (final_scan_insn): Do not skip the removed notes.
      	* insn-notes.def (LOOP_BEG, LOOP_END, REPEATED_LINE_NUMBER,
      	EXPECTED_VALUE): Remove.
      	* dojump.c (do_jump): Do not care about __builtin_expect.
      	* predict.c (expected_value_to_br_prob): Kill.
      	* function.c (expand_function_end): Do not expand
      	NOTE_INSN_REPEATED_LINE_NUMBER.
      	* print-rtl.c (print_rtx): Do not pretty print the removed notes.
      	* expect.c (sjlj_emit_function_enter): Emit directly branch probability.
      	* cfgexpand.c (add_reg_br_prob_note): Export.
      	* cfgcleanup.c (rest_of_handle_jump2): Do not call
      	expected_value_to_br_prob.
      	* cfglayout.c (duplicate_insn_chain): Do not deal with removed notes.
      	* rtl.h (add_reg_br_prob_note): Declare.
      
      From-SVN: r118696
      Jan Hubicka committed
  27. 07 Jul, 2006 1 commit
    • pointer-set.c (pointer_set_destroy): Correct whitespace. · 83f676b3
      	* pointer-set.c (pointer_set_destroy): Correct whitespace.
      	* cfgloopanal.c (dump_graph): Likewise.
      	* dojump.c (discard_pending_stack_adjust): Likewise.
      	* fix-header.c (TARGET_EXTRA_INCLUDE, TARGET_EXTRA_PRE_INCLUDES):
      	Likewise.
      	* alloc-pool.c (dump_alloc_pool_statistics): Likewise.
      	* function.c (finalize_block_changes): Likewise.
      	* gcc-common.c (ggc_free_overhead, dump_gcc_loc_statistics): Likewise.
      	* tree-ssa-dce.c (clear_control_dependence_bitmap): Likewise.
      	* rtl.c (dump_rtx_statistics): Likewise.
      	* tree-ssa-structalias.c (sort_fieldstack, init_alias_heapvars): 
      	Likewise.
      	* varray.c (dump_varray_statistics): Likewise.
      	* dfp.c (encode_decimal32, decode_decimal32, encode_decimal64,
      	decode_decimal64, encode_decimal128, decode_decimal128,
      	decimal_real_to_decimal): Likewise.
      
      From-SVN: r115258
      Roger Sayle committed
  28. 03 Apr, 2006 1 commit
    • builtins.c (dummy_object): Use build_int_cst instead of convert. · b6f65e3c
      	* builtins.c (dummy_object): Use build_int_cst instead of convert.
      	* tree-ssa-ccp.c (maybe_fold_stmt_addition): Use fold_convert
      	instead of convert.
      	* dojump.c (do_jump): Likewise.
      	* expr.h (ADD_PARM_SIZE, SUB_PARM_SIZE, ARGS_SIZE_TREE): Likewise.
      	* gimplify.c (gimple_boolify, gimplify_init_constructor,
      	gimplify_boolean_expr): Likewise.
      	* emit-rtl.c (set_mem_attributes_minus_bitpos): Likewise.
      	* varasm.c (array_size_for_constructor): Likewise.
      	* tree-object-size.c (compute_object_offset): Likewise.
      
      From-SVN: r112633
      Roger Sayle committed
  29. 14 Feb, 2006 3 commits
  30. 13 Feb, 2006 1 commit
    • re PR middle-end/25724 (Emits call to __cmpdi2 for long long comparison in switches) · feb04780
      	PR middle-end/25724
      	* dojump.c (do_jump): Call do_compare_rtx_and_jump.
      	(do_jump_parts_zero_rtx): New function renamed from
      	do_jump_parts_equality_rtx.  Made static.  Add a mode argument.
      	(do_jump_parts_equality_rtx): New function split out from
      	do_jump_parts_equality.  Old implementation renamed as above.
      	Call do_jump_parts_zero_rtx if either operand is zero.
      	(do_jump_parts_equality): Call do_jump_parts_equality_rtx to
      	do all of the heavy lifting.
      	(do_compare_rtx_and_jump): Handle multi-word comparisons by
      	calling either do_jump_by_parts_greater_rtx or
      	do_jump_by_parts_equality_rtx.
      	* expr.h (do_jump_by_parts_equality_rtx): Remove prototype.
      	* expmed.c (do_cmp_and_jump): Now multi-word optimization has
      	moved to do_compare_rtx_and_jump, call it directly.
      	* stmt.c (do_jump_if_equal): Remove static prototype.  Add a
      	mode argument.  Call do_compare_rtx_and_jump.
      	(emit_case_nodes): Update calls to do_jump_if_equal.
      
      From-SVN: r110906
      Roger Sayle committed
  31. 31 Jan, 2006 1 commit
    • expr.h (expand_normal): new inline function. · 84217346
      2006-01-30  Marcin Dalecki  <martin@dalecki.de>
      
      	* expr.h (expand_normal): new inline function.
      	* builtins.c: use it, use EXPAND_NORMAL explicitely.
      	* dojump.c: use it.
      	* dwarf2out.c: use it.
      	* expr.c: use it.
      	* calls.c: use it.
      	* expmed.c: use it.
      	* except.c: use it.
      	* config/sparc/sparc.c: use it.
      	* config/i386/i386.c: use it.
      	* config/rs6000/rs6000.c: use it.
      	* config/arm/arm.c: use it.
      	* config/mips/mips.c: use it.
      	* stmt.c: use it, use EXPAND_NORMAL explicitely.
      
      From-SVN: r110428
      Marcin Dalecki committed
  32. 21 Oct, 2005 1 commit
  33. 19 Oct, 2005 1 commit
  34. 06 Jul, 2005 1 commit
  35. 25 Jun, 2005 1 commit