1. 16 Oct, 2010 2 commits
    • avr.h (PREFERRED_RELOAD_CLASS): Remove. · 4b0b4ab0
      	* config/avr/avr.h (PREFERRED_RELOAD_CLASS): Remove.
      	* config/avr/avr-protos.h (preferred_reload_class): Remove.
      	* config/avr/avr.c (preferred_reload_class): Remove.
      	* config/pa/pa.h (PREFERRED_RELOAD_CLASS): Remove.
      	* config/pa/pa.c (emit_move_sequence): Update comment
      	* config/arc/arc.h (PREFERRED_RELOAD_CLASS): Remove.
      	* config/crx/crx.h (PREFERRED_RELOAD_CLASS): Remove.
      	* config/fr30/fr30.h (PREFERRED_RELOAD_CLASS): Remove.
      	* config/frv/frv.h (PREFERRED_RELOAD_CLASS): Remove.
      	* config/h8300/h8300.h (PREFERRED_RELOAD_CLASS): Remove.
      	* config/lm32/lm32.h (PREFERRED_RELOAD_CLASS): Remove.
      	* config/m32r/m32r.h (PREFERRED_RELOAD_CLASS): Remove.
      	* config/moxie/moxie.h (PREFERRED_RELOAD_CLASS): Remove.
      	* config/picochip/picochip.h (PREFERRED_RELOAD_CLASS): Remove.
      	* config/rx/rx.h (PREFERRED_RELOAD_CLASS): Remove.
      	* config/spu/spu.h (PREFERRED_RELOAD_CLASS): Remove.
      	* config/v850/v850.h (PREFERRED_RELOAD_CLASS): Remove.
      	* config/vax/vax.h (PREFERRED_RELOAD_CLASS): Remove.
      
      From-SVN: r165541
      Anatoly Sokolov committed
    • arm.c (arm_option_optimization): Set flag_section_anchors to 1 not 2. · 0a587f65
      	* config/arm/arm.c (arm_option_optimization): Set
      	flag_section_anchors to 1 not 2.
      	* config/i386/i386.c (ix86_option_override_internal): Check
      	global_options_set.x_flag_zee and
      	global_options_set.x_flag_omit_frame_pointer.
      	(ix86_option_optimization): Don't set flag_omit_frame_pointer and
      	flag_zee to 2.
      	* config/i386/sol2-10.h (SUBTARGET_OVERRIDE_OPTIONS): Check
      	global_options_set.x_flag_omit_frame_pointer.
      	* config/rs6000/rs6000.c (rs6000_option_init_struct): Set
      	opts->x_flag_section_anchors to 1 not 2.
      	* config/sh/sh.c (sh_option_optimization): Don't set
      	flag_schedule_insns to 2.
      	(sh_option_override): Check
      	global_options_set.x_flag_schedule_insns.
      	* opts.c (finish_options): Check opts_set->x_flag_section_anchors.
      
      From-SVN: r165539
      Joseph Myers committed
  2. 15 Oct, 2010 7 commits
    • i386.md (*movdfcc_1_rex64): Correct mode attribute. · ba492752
      	* config/i386/i386.md (*movdfcc_1_rex64): Correct mode attribute.
      	(*movdfcc_1): ditto.
      
      From-SVN: r165520
      Uros Bizjak committed
    • target.def (target_option.init_struct): New hook. · 7e4aae92
      	* target.def (target_option.init_struct): New hook.
      	* doc/tm.texi.in (TARGET_OPTION_INIT_STRUCT): New @hook.
      	* doc/tm.texi: Regenerate.
      	* hooks.c (hook_void_gcc_optionsp): New.
      	* hooks.h (hook_void_gcc_optionsp): Declare.
      	* langhooks-def.h (lhd_init_options_struct): Remove.
      	(LANG_HOOKS_INIT_OPTIONS_STRUCT): Define to
      	hook_void_gcc_optionsp.
      	* langhooks.c (lhd_init_options_struct): Remove.
      	* opts.c (init_options_struct): Also call
      	targetm.target_option.init_struct.
      	* config/i386/i386.c (ix86_option_init_struct,
      	TARGET_OPTION_INIT_STRUCT): New.
      	(ix86_option_optimization): Move some settings to
      	ix86_option_init_struct.
      	* config/pdp11/pdp11.c (pdp11_option_init_struct,
      	TARGET_OPTION_INIT_STRUCT): New.
      	(pdp11_option_optimization): Move some settings to
      	pdp11_option_init_struct.
      	* config/rs6000/rs6000.c (rs6000_option_optimization): Replace by
      	rs6000_option_init_struct.  Use options structure pointer.
      	(TARGET_OPTION_OPTIMIZATION): Replace by
      	TARGET_OPTION_INIT_STRUCT.
      	* config/s390/s390.c (s390_option_init_struct,
      	TARGET_OPTION_INIT_STRUCT): New.
      	(s390_option_optimization): Don't set
      	flag_asynchronous_unwind_tables here.
      	* config/sh/sh.c (sh_option_init_struct,
      	TARGET_OPTION_INIT_STRUCT): New.
      	(sh_option_optimization): Don't set flag_finite_math_only here.
      	* config/spu/spu.c (spu_option_optimization): Replace by
      	spu_option_optimization.  Use options structure pointer.
      	(TARGET_OPTION_OPTIMIZATION): Replace by
      	TARGET_OPTION_INIT_STRUCT.
      
      From-SVN: r165519
      Joseph Myers committed
    • Add fma support · 1b1562a5
      From-SVN: r165515
      Michael Meissner committed
    • rx.c (rx_option_optimization): Change to rx_override_options_after_change. · a32b99ad
      	* config/rx/rx.c (rx_option_optimization): Change to
      	rx_override_options_after_change.  Don't change
      	flag_lto_compression_level.  Don't check for changes to whether
      	FPU instructions can be used.  Check and set only
      	flag_finite_math_only, not other fast-math flags.
      	(rx_option_override): Call rx_override_options_after_change.
      	(TARGET_OPTION_OPTIMIZATION): Remove.
      	(TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE): Define.
      
      From-SVN: r165508
      Joseph Myers committed
    • rs6000.c (rs6000_option_optimization): Don't disable section anchors for lang_hooks.name[4] != 'O'. · b534dca5
      	* config/rs6000/rs6000.c (rs6000_option_optimization): Don't
      	disable section anchors for lang_hooks.name[4] != 'O'.
      
      From-SVN: r165506
      Joseph Myers committed
    • frv.c (frv_option_optimization, [...]): Remove. · 25b0dd68
      	* config/frv/frv.c (frv_option_optimization,
      	TARGET_OPTION_OPTIMIZATION): Remove.
      	* config/frv/frv.h (RCSP_SOFTWARE_PIPELINING): Remove.
      
      From-SVN: r165505
      Joseph Myers committed
    • re PR debug/45447 (ICE with `-g -femit-struct-debug-baseonly') · 56f01f0b
      gcc/
      
              PR target/45447
              * config/arm/arm.c (arm_build_builtin_va_list): Assign
              va_list_name to TYPE_STUB_DECL (va_list_type).
      
      gcc/testsuite/
      
              PR target/45447
              * gcc.target/arm/pr45447.c: New test.
      
      From-SVN: r165493
      Yao Qi committed
  3. 14 Oct, 2010 4 commits
    • Partial merge of 'ObjC GC' from FSF apple 'trunk' branch. · 560d6bd5
      	* config/darwin-c.c (darwin_cpp_builtins): Define __weak and
      	__strong macros.
      
      From-SVN: r165469
      Iain Sandoe committed
    • config.gcc (arm*-*-linux-*eabi): Add bpabi.h from libgcc. · 8ac7fdcb
      gcc/
      	* config.gcc (arm*-*-linux-*eabi) <tm_file>: Add bpabi.h from
      	libgcc.
      	(arm*-*-uclinux*eabi) <tm_file>: Likewise.
      	(arm*-*-eabi*) <tm_file>: Likewise.
      	(frv-*-elf) <tm_file>: Add frv-abi.h from libgcc.
      	(frv-*-*linux*) <tm_file>: Likewise.
      	* config/arm/bpabi.h: Delete DECLARE_LIBRARY_RENAMES stanzas
      	and associated helper macros.
      	* config/frv/frv-abi.h: Delete.
      
      libgcc/
      	* config/arm/bpabi.h: New file.
      	* config/frv/frv-abi.h: New file.
      
      From-SVN: r165463
      Nathan Froyd committed
    • params.c (params_finished): New. · 48476d13
      	* params.c (params_finished): New.
      	(add_params): Assert !params_finished.
      	(finish_params): New.
      	(set_param_value_internal): Take params and params_set
      	parameters.  Assert params_finished.
      	(set_param_value, maybe_set_param_value): Take params and
      	params_set parameters.  Update calls to set_param_value_internal.
      	(set_default_param_value): Assert !params_finished.  Don't use
      	set_param_value_internal.
      	(default_param_value, init_param_values): New.
      	* params.h (struct param_info): Change value to default_value.
      	Remove set.
      	(set_param_value, maybe_set_param_value): Add params and
      	params_set parameters.
      	(PARAM_VALUE): Get parameters from global_options.
      	(PARAM_SET_P): Remove.
      	(finish_params, default_param_value, init_param_values): New.
      	* common.opt (param_values): New Variable.
      	* config/arm/arm.c (arm_option_override): Pass extra arguments to
      	maybe_set_param_value.
      	* config/i386/i386.c (ix86_option_override_internal): Pass extra
      	arguments to maybe_set_param_value.
      	* config/picochip/picochip.c (picochip_option_override): Pass
      	extra arguments to maybe_set_param_value.
      	* config/rs6000/rs6000.c (rs6000_option_override_internal): Pass
      	extra arguments to maybe_set_param_value.
      	* config/s390/s390.c (s390_option_override): Use
      	maybe_set_param_value instead of set_param_value.  Pass extra
      	arguments to maybe_set_param_value.
      	* config/sparc/sparc.c (sparc_option_override): Pass extra
      	arguments to maybe_set_param_value.
      	* config/spu/spu.c (spu_option_override): Pass extra arguments to
      	maybe_set_param_value.
      	* opts.c (handle_param): Take opts and opts_set parameters.
      	Update call to set_param_value.
      	(initial_min_crossjump_insns,
      	initial_max_fields_for_field_sensitive,
      	initial_loop_invariant_max_bbs_in_loop): Remove.
      	(init_options_once): Don't set them.
      	(init_options_struct): Initialize parameters structures.
      	(default_options_optimization): Use default_param_value when
      	restoring defaults.  Update calls to maybe_set_param_value.
      	(finish_options): Update calls to maybe_set_param_value.
      	(common_handle_option): Update calls to handle_param and
      	set_param_value.
      	* toplev.c (DEFPARAM): Update definition for changes to
      	param_info.
      	(general_init): Call finish_params.
      
      From-SVN: r165460
      Joseph Myers committed
    • mn10300.h (CONSTANT_ALIGNMENT): Define. · 4af476d7
              * config/mn10300/mn10300.h (CONSTANT_ALIGNMENT): Define.
              (DATA_ALIGNMENT, LOCAL_ALIGNMENT): Define.
              (FIRST_PSEUDO_REGISTER): Increase by one.
              (FIXED_REGISTERS, CALL_USED_REGISTERS): Update with CC_REG.
              (HARD_REGNO_MODE_OK): Call mn10300_hard_regno_mode_ok.
              (MODES_TIEABLE): Call mn10300_modes_tieable.
              (REG_CLASS_NAMES, REG_CLASS_CONTENTS, REGNO_REG_CLASS): Add
              CC_REGS.
              (LEGITIMATE_CONSTANT_P): Call mn10300_legitimate_constant_p.
              (CC_OVERFLOW_UNUSABLE, CC_NO_CARRY, NOTICE_UPDATE_CC)
              (SELECT_CC_MODE, REVERSIBLE_CC_MODE): Delete.
              (REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): Add CC register.
              (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Delete.
              (mn10300_cc_status_mdep): Delete.
              (CC_STATUS_MDEP, CC_STATUS_MDEP_INIT): Delete.
              * config/mn10300/mn10300 (mn10300_option_override): Stop disabling
              the combine-stack-adjust pass.
              (print_operand): Use the mode of the comparison operation to
              select the comparison suffix.
              (notice_update_cc): Delete.
              (mn10300_secondary_reload_class): Remove test for stack pointer
              based arithmetic.
              (output_tst): Rename to mn10300_output_cmp.
              (impossible_plus_operand): Move into predicates.md.
              (mn10300_legitimize_address): Make static.
              (mn10300_legitimate_address_p): Make static.  Only allow SI sized
              constant pic operands.
              (mn10300_legitimate_constant_p): New function.
              (mn10300_case_values_threshold): Make static.
              (mn10300_hard_regno_mode_ok): New function.
              (mn10300_modes_tieable): New function.
              (mn10300_select_cc_mode): New function.
              * config/mn10300/predicates.md (impossible_plus_operand): Define.
              * config/mn10300/mn10300-protos.h: Tidy.
              (mn10300_legitimate_constant_p, mn10300_modes_tieable)
              (mn10300_hard_regno_mode_ok, mn10300_select_cc_mode): Prototype.
              * config/mn10300/mn10300.md (cc attribute): Delete.  Replace
              with clobbers or sets of CC_REG.
              (CC_REG): Define.
              (mov*): Remove use of CLR instruction.
              (cbranch_si4_<code>): New pattern/split.
              (integer_conditional_branch): New pattern.
              (cbranch_sf4_<code>): New pattern/split.
              (float_conditional_branch): New pattern.
              (casesi): Use addsi3 pattern instead of movsi pattern to add and
              move a value at the same time.
              (cc0 peepholes): Remove.
      
      From-SVN: r165459
      Nick Clifton committed
  4. 13 Oct, 2010 2 commits
    • Addd 256bit AVX vectorizer patterns. · 1e27129f
      2010-10-13  H.J. Lu  <hongjiu.lu@intel.com>
      
      	* config/i386/i386.c (ix86_build_const_vector): Check vector
      	mode instead of scalar mode.
      	(ix86_build_signbit_mask): Likewise.
      	(ix86_expand_fp_absneg_operator): Updated.
      	(ix86_expand_copysign): Likewise.
      	(ix86_expand_int_vcond): Likewise.
      	(ix86_emit_swdivsf): Likewise.
      	(ix86_sse_copysign_to_positive): Likewise.
      	(ix86_expand_sse_fabs): Likewise.
      	* config/i386/i386.md (fixuns_trunc<mode>si2): Likewise.
      	* config/i386/sse.md (copysign<mode>3): Likewise.
      	(sse2_cvtudq2ps): Likewise.
      	(vec_unpacku_float_hi_v4si): Likewise.
      	(vec_unpacku_float_lo_v4si): Likewise.
      
      	* config/i386/i386.c (ix86_builtins): Add
      	IX86_BUILTIN_CPYSGNPS256 and IX86_BUILTIN_CPYSGNPD256.
      	(bdesc_args): Likewise.
      	(ix86_builtin_vectorized_function): Support 
      	IX86_BUILTIN_CPYSGNPS256, IX86_BUILTIN_CPYSGNPD256,
      	IX86_BUILTIN_SQRTPD256, IX86_BUILTIN_SQRTPS_NR256,
      	and IX86_BUILTIN_CVTPS2DQ256.
      	(ix86_builtin_reciprocal): Support IX86_BUILTIN_SQRTPS_NR256.
      
      	* config/i386/sse.md (STORENT_MODE): New.
      	(VEC_FLOAT_MODE): Likewise.
      	(VEC_EXTRACT_MODE): Likewise.
      	(*avx_cvtdq2pd256_2): Likewise.
      	(vec_pack_trunc_v4df): Likewise.
      	(vec_interleave_highv8sf): Likewise.
      	(vec_interleave_lowv8sf): Likewise.
      	(storent<mode>): Macroized.
      	(<code><mode>2: absneg): Likewise.
      	(copysign<mode>3): Likewise.
      	(vec_extract<mode>): Likewise.
      
      	PR target/44180
      	* config/i386/i386.c (expand_vec_perm_even_odd_1): Rewritten
      	for V8SFmode.
      
      2010-10-13  Richard Guenther  <rguenther@suse.de>
      	    H.J. Lu  <hongjiu.lu@intel.com>
      
      	* config/i386/sse.md (reduc_splus_v8sf): Add.
      	(reduc_splus_v4df): Likewise.
      	(vec_unpacks_hi_v8sf): Likewise.
      	(vec_unpacks_lo_v8sf): Likewise.
      	(*avx_cvtps2pd256_2): Likewise.
      	(vec_unpacks_float_hi_v8si): Likewise.
      	(vec_unpacks_float_lo_v8si): Likewise.
      	(vec_interleave_highv4df): Likewise.
      	(vec_interleave_lowv4df): Likewise.
      
      From-SVN: r165436
      H.J. Lu committed
    • arm.h (REG_CLASS_CONTENTS): Remove soft frame pointer from CORE_REGS and GENERAL_REGS classes. · 565d018d
      	gcc/
      	* config/arm/arm.h (REG_CLASS_CONTENTS): Remove soft frame pointer
      	from CORE_REGS and GENERAL_REGS classes.
      	* config/arm/arm.md (*thumb1_movsi_insn): Ignore all parts of
      	final constraint for register preferencing.
      
      From-SVN: r165424
      Julian Brown committed
  5. 12 Oct, 2010 5 commits
  6. 11 Oct, 2010 9 commits
    • linux-atomic.c (__sync_val_compare_and_swap_4): Return actual_oldval. · 5dbae367
      	* config/pa/linux-atomic.c (__sync_val_compare_and_swap_4): Return
      	actual_oldval.  Use __builtin_expect.
      	(SUBWORD_VAL_CAS): Likewise.
      
      From-SVN: r165339
      John David Anglin committed
    • i386.md (movmem<mode>): Macroize expander from movmem{si,di} using SWI48 mode iterator. · bbc8841b
      	* config/i386/i386.md (movmem<mode>): Macroize expander from
      	movmem{si,di} using SWI48 mode iterator.
      	(*strmovsi_1): Macroize insn pattern from *strmovsi_1 and
      	*strmovsi_rex_1 using P mode iterator.
      	(*strmovhi_1): Ditto from *strmovhi_1 and *strmovhi_rex_1.
      	(*strmovqi_1): Ditto from *strmovqi_1 and *strmovqi_rex_1.
      	(*rep_movsi): Ditto from *rep_movsi and *rep_movsi_rex64.
      	(*rep_movqi): Ditto from *rep_movqi and *rep_movqi_rex64.
      	(setmem<mode>): Macroize expander from setmem{si,di} using
      	SWI48 mode iterator.
      	(*strsetsi_1): Macroize insn pattern from *strsetsi_1 and
      	*strsetsi_rex_1 using P mode iterator.
      	(*strsethi_1): Ditto from *strsethi_1 and *strsethi_rex_1.
      	(*strsetqi_1): Ditto from *strsetqi_1 and *strsetqi_rex_1.
      	(*rep_stossi): Ditto from *rep_stossi and *rep_stossi_rex64.
      	(*rep_stosqi): Ditto from *rep_stosqi and *rep_stosqi_rex64.
      	(*cmpstrnqi_nz_1): Ditto from *cmpstrnqi_nz_1 and *cmpstrnqi_nz_rex_1.
      	(*cmpstrnqi_1): Ditto from *cmpstrnqi_1 and *cmpstrnqi_rex_1.
      	(strlen<mode>): Macroize expander from strlen{si,di} using SWI48x
      	mode iterator.
      	(*strlenqi_1): Macroize insn pattern from *strlenqi_1 and
      	*strlenqi_rex_1 using P mode iterator.
      
      From-SVN: r165331
      Uros Bizjak committed
    • target.def (preferred_reload_class): New hook. · fba42e24
      	* target.def (preferred_reload_class): New hook.
      	* doc/tm.texi.in (TARGET_PREFERRED_RELOAD_CLASS): Document.
      	* doc/tm.texi: Regenerate.
      	* targhooks.c (default_preferred_reload_class): New function.
      	* targhooks.h (default_preferred_reload_class): Declare.
      	* reload.c (find_dummy_reload): Change preferred_class variable type
      	from enum reg_class to reg_class_t. Use TARGET_PREFERRED_RELOAD_CLASS
      	target hook.
      	(find_reloads): Change goal_alternative array type from int to
      	reg_class_t. Use TARGET_PREFERRED_RELOAD_CLASS target hook.
      	(push_reload, find_reloads_address_part): Use
      	TARGET_PREFERRED_RELOAD_CLASS target hook.
      	* reload1.c (emit_input_reload_insns): Ditto.
      	* ira-costs.c (copy_cost): Use TARGET_PREFERRED_RELOAD_CLASS target
      	hook. Change rclass argument and secondary_class variable types from
      	'enum reg_class' to reg_class_t.
      
      	* config/i386/i386.h (PREFERRED_RELOAD_CLASS): Remove.
      	* config/i386/i386-protos (ix86_preferred_reload_class): Remove.
      	* config/i386/i386.c (ix86_preferred_reload_class): Make static.
      	Change regclass argument and result types from enum reg_class to
      	reg_class_t.
      	(TARGET_PREFERRED_RELOAD_CLASS): Define.
      
      From-SVN: r165321
      Anatoly Sokolov committed
    • re PR middle-end/45862 (SUPPORTS_WEAK is documented as a C expression, used as a… · 74b90fe2
      re PR middle-end/45862 (SUPPORTS_WEAK is documented as a C expression, used as a compile time constant)
      
      	PR middle-end/45862
      	* doc/tm.texi.in (SUPPORTS_WEAK): Update.
      	(TARGET_SUPPORTS_WEAK): New.
      	* doc/tm.texi: Regenerate.
      	* defaults.h (SUPPORTS_WEAK): Update comment.
      	(TARGET_SUPPORTS_WEAK): New.
      	* dwarf2asm.c (USE_LINKONCE_INDIRECT): Update define.
      	* varasm.c (assemble_external): Use TARGET_SUPPORTS_WEAK instead of
      	SUPPORTS_WEAK.
      	(merge_weak, declare_weak, do_assemble_alias, supports_one_only,
      	make_decl_one_only): Likewise.
      	* config/pa/som.h (SUPPORTS_WEAK): Rename defines to
      	TARGET_SUPPORTS_WEAK.
      	(SUPPORTS_ONE_ONLY, MAKE_DECL_ONE_ONLY): Use TARGET_SUPPORTS_WEAK
      	instead of SUPPORTS_WEAK.
      
      From-SVN: r165319
      John David Anglin committed
    • picochip-protos.h (picochip_function_arg): Delete. · c159751b
      	* config/picochip/picochip-protos.h (picochip_function_arg): Delete.
      	(picochip_incoming_function_arg): Delete.
      	(picochip_arg_advance): Delete.
      	* config/picochip/picochip.h (FUNCTION_ARG): Delete.
      	(FUNCTION_INCOMING_ARG): Delete.
      	(FUNCTION_ARG_ADVANCE): Delete.
      	* config/picochip/picochip.c (picochip_function_arg): Take a
      	const_tree and a bool.
      	(picochip_incoming_function_arg): Likewise.
      	(picochip_arg_advance): Likewise.
      	(TARGET_FUNCTION_ARG, TARGET_FUNCTION_INCOMING_ARG): Define.
      	(TARGET_FUNCTION_ARG_ADVANCE): Define.
      
      From-SVN: r165312
      Hariharan Sandanagobalane committed
    • params.c (set_param_value_internal): New. · 128dc8e2
      	* params.c (set_param_value_internal): New.
      	(set_param_value): Use set_param_value_internal.
      	(maybe_set_param_value, set_default_param_value): New.
      	* params.h (PARAM_VALUE, PARAM_SET_P): Make into rvalues.
      	(maybe_set_param_value, set_default_param_value): Declare.
      	* config/arm/arm.c (arm_option_override): Use
      	maybe_set_param_value.
      	* config/i386/i386.c (ix86_option_override_internal): Use
      	maybe_set_param_value.
      	* config/ia64/ia64.c (ia64_option_default_params,
      	TARGET_OPTION_DEFAULT_PARAMS): New.
      	(ia64_option_optimization): Move some code to
      	ia64_option_default_params.
      	* config/picochip/picochip.c (picochip_option_override): Use
      	maybe_set_param_value.
      	* config/rs6000/rs6000.c (rs6000_option_default_params,
      	TARGET_OPTION_DEFAULT_PARAMS): New.
      	(rs6000_option_override_internal): Use maybe_set_param_value.
      	(rs6000_option_optimization): Move some code to
      	rs6000_option_default_params.
      	* config/s390/s390.c (s390_option_override): Use
      	maybe_set_param_value.
      	* config/sh/sh.c (sh_option_default_params,
      	TARGET_OPTION_DEFAULT_PARAMS): New.
      	(sh_option_optimization): Move some code to
      	sh_option_default_params.
      	* config/sparc/sparc.c (sparc_option_override): Use
      	maybe_set_param_value.
      	* config/spu/spu.c (spu_option_default_params,
      	TARGET_OPTION_DEFAULT_PARAMS): New.
      	(spu_option_optimization): Move some code to
      	spu_option_default_params.
      	(spu_option_override): Use maybe_set_param_value.
      	* doc/tm.texi.in (TARGET_OPTION_DEFAULT_PARAMS): New @hook.
      	* doc/tm.texi: Regenerate.
      	* ggc-common.c (init_ggc_heuristics): Use set_default_param_value.
      	* opts.c (init_options_once): Use PARAM_VALUE not direct access to
      	compiler_params.
      	(default_options_optimization): Use maybe_set_param_value.
      	(finish_options): Use maybe_set_param_value.
      	* target.def (target_option.default_params): New hook.
      	* toplev.c (general_init): Call
      	targetm.target_option.default_params.
      
      From-SVN: r165303
      Joseph Myers committed
    • s390.md (*mov<mode>cc): lgoc -> locg and stgoc -> stocg. · a6510374
      2010-10-11  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	* config/s390/s390.md (*mov<mode>cc): lgoc -> locg and stgoc -> stocg.
      
      From-SVN: r165301
      Andreas Krebbel committed
    • re PR target/45870 (note: non-delegitimized UNSPEC 5 found (-O1 -g)) · 922a06c3
      	PR target/45870
      	* config/i386/i386.c (ix86_delegitimize_tls_address): New function.
      	(ix86_delegitimize_address): Use it.
      
      	* gcc.dg/tls/pr45870.c: New test.
      
      From-SVN: r165270
      Jakub Jelinek committed
  7. 10 Oct, 2010 2 commits
  8. 09 Oct, 2010 9 commits
    • pdp11.h (FUNCTION_ARG, [...]): Delete. · a5f4f531
      	* config/pdp11/pdp11.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
      	* config/pdp11/pdp11.c (pdp11_function_arg): New function.
      	(pdp11_function_arg_advance): New function.
      	(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
      
      From-SVN: r165239
      Nathan Froyd committed
    • mmix-protos.h (mmix_function_arg): Delete. · 9fb41e15
      	* config/mmix/mmix-protos.h (mmix_function_arg): Delete.
      	* config/mmix/mmix.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
      	* config/mmix/mmix.c (mmix_function_arg): Rename to...
      	(mmix_function_arg_1): ...this.  Make static.  Take a const_tree and
      	bool arguments.
      	(mmix_function_arg): New function.
      	(mmix_function_incoming_arg): New function.
      	(mmix_function_arg_advance): New function.
      	(TARGET_FUNCTION_ARG, TARGET_FUNCTION_INCOMING_ARG): Define.
      	(TARGET_FUNCTION_ARG_ADVANCE): Define.
      
      From-SVN: r165230
      Nathan Froyd committed
    • vax.h (FUNCTION_ARG, [...]): Delete. · 8f8a46ba
      	* config/vax/vax.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
      	* config/vax/vax.c (vax_function_arg): New function.
      	(vax_function_arg_advance): New function.
      	(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
      
      From-SVN: r165229
      Nathan Froyd committed
    • pa-protos.h (function_arg): Delete. · fd29bdaf
      	* config/pa/pa-protos.h (function_arg): Delete.
      	* config/pa/pa.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
      	* config/pa/pa.c (function_arg): Rename to...
      	(pa_function_arg): ...this.  Make static.  Take a const_tree and
      	a bool.
      	(pa_function_arg_advance): New function.
      	(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
      
      From-SVN: r165228
      Nathan Froyd committed
    • m68k.h (FUNCTION_ARG, [...]): Delete. · 13d3961c
      	* config/m68k/m68k.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
      	* config/m68k/m68k.c (m68k_function_arg): New function.
      	(m68k_function_arg_advance): New function.
      	(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
      
      From-SVN: r165227
      Nathan Froyd committed
    • avr-protos.h (function_arg): Delete. · 733bdfbd
      	* config/avr/avr-protos.h (function_arg): Delete.
      	(function_arg_advance): Delete.
      	* config/avr/avr.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
      	* config/avr/avr.c (function_arg): Rename to...
      	(avr_function_arg): ...this.  Make static.  Take a const_tree and
      	a bool.
      	(function_arg_advance):	Rename to...
      	(avr_function_arg_advance): ...this.  Make static.  Take a
      	const_tree and a bool.
      	(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
      
      From-SVN: r165226
      Nathan Froyd committed
    • alpha-protos.h (function_arg): Delete. · 0c3a9758
      	* config/alpha/alpha-protos.h (function_arg): Delete.
      	* config/alpha/alpha.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
      	* config/alpha/vms.h (FUNCTION_ARG_ADVANCE): Delete.
      	* config/alpha/alpha.c (function_arg): Rename to...
      	(alpha_function_arg): ...this.  Make static.  Take a const_tree and
      	a bool.  Delete TARGET_ABI_UNICOSMK code.
      	(alpha_function_arg_advance): New function.
      	(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
      
      From-SVN: r165225
      Nathan Froyd committed
    • mep-protos.h (mep_function_arg): Delete. · 0851c6e3
      	* config/mep/mep-protos.h (mep_function_arg): Delete.
      	(mep_function_arg_advance): Delete.
      	* config/mep/mep.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
      	* config/mep/mep.c (mep_function_arg): Make static.  Take a
      	const_tree and a bool.
      	(mep_function_arg_advance): Likewise.
      	(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
      
      From-SVN: r165224
      Nathan Froyd committed
    • Support "andhi/andsi/anddi" as a zero-extending move. · c2c795ff
      gcc/
      
      2010-10-08  H.J. Lu  <hongjiu.lu@intel.com>
      
      	PR target/45913
      	* config/i386/i386.c (ix86_binary_operator_ok): Support
      	"andhi/andsi/anddi" as a zero-extending move.
      
      gcc/testsuite/
      
      2010-10-08  H.J. Lu  <hongjiu.lu@intel.com>
      
      	PR target/45913
      	* gcc.target/i386/pr45913.c: New.
      
      From-SVN: r165215
      H.J. Lu committed