1. 14 Jun, 2011 1 commit
    • jsm28's avatar
      * target-def.h (TARGET_HAVE_NAMED_SECTIONS): Move to · 218e3e4e
      jsm28 authored
      	common/common-target-def.h.
      	* target.def (default_target_flags, handle_option,
      	supports_split_stack, optimization_table, init_struct,
      	except_unwind_info, unwind_tables_default, have_named_sections):
      	Move to common/common-target.def.
      	* target.h (enum opt_levels, struct default_options): Move to
      	common/common-target.h.
      	* targhooks.c (default_except_unwind_info,
      	dwarf2_except_unwind_info, sjlj_except_unwind_info,
      	default_target_handle_option, empty_optimization_table): Move to
      	common/common-targhooks.c.
      	* targhooks.h (default_except_unwind_info,
      	dwarf2_except_unwind_info, sjlj_except_unwind_info,
      	default_target_handle_option, empty_optimization_table): Move to
      	common/common-targhooks.h.
      	* common/common-target-def.h: Include common/common-targhooks.h.
      	(TARGET_HAVE_NAMED_SECTIONS): Define if TARGET_ASM_NAMED_SECTION
      	defined.
      	* common/common-target.def (handle_option, option_init_struct,
      	option_optimization_table, default_target_flags,
      	except_unwind_info, supports_split_stack, unwind_tables_default,
      	have_named_sections): Move from target.def.
      	(HOOK_PREFIX): Undefine at end of file.
      	* common/common-target.h: Include input.h.
      	(enum opt_levels, struct default_options): Move from target.h.
      	* common/common-targhooks.c, common/common-targhooks.h: New.
      	* config.gcc (target_has_targetm_common): Default to yes.
      	(moxie*): Set target_has_targetm_common=no.
      	(hppa*-*-*): Don't set target_has_targetm_common=yes.
      	* doc/tm.texi: Regenerate.
      	* Makefile.in (COMMON_TARGET_H): Add $(INPUT_H).
      	(C_TARGET_DEF_H): Add common/common-targhooks.h.
      	(GCC_OBJS): Remove vec.o.
      	(OBJS): Remove hooks.o and vec.o.
      	(OBJS-libcommon-target): Add vec.o, hooks.o and
      	common/common-targhooks.o.
      	(c-family/c-common.o, c-family/c-cppbuiltin.o, lto-opts.o, tree.o,
      	tree-tailcall.o, opts.o, toplev.o, varasm.o, function.o, except.o,
      	expr.o, explow.o, dbxout.o, dwarf2out.o, cfgrtl.o, haifa-sched.o,
      	cfglayout.o, $(out_object_file), $(common_out_object_file)):
      	Update dependencies.
      	(common/common-targhooks.o): New.
      	* common/config/default-common.c: Include tm.h.  Add FIXME
      	comment.
      	* common/config/pa/pa-common.c: Include more headers.  Take
      	copyright dates from pa.c.
      	(pa_option_optimization_table, pa_handle_option,
      	TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_DEFAULT_TARGET_FLAGS,
      	TARGET_HANDLE_OPTION): Move from pa.c.
      	* common/config/alpha/alpha-common.c,
      	common/config/arm/arm-common.c, common/config/avr/avr-common.c,
      	common/config/bfin/bfin-common.c,
      	common/config/cris/cris-common.c,
      	common/config/fr30/fr30-common.c, common/config/frv/frv-common.c,
      	common/config/h8300/h8300-common.c,
      	common/config/i386/i386-common.c,
      	common/config/ia64/ia64-common.c,
      	common/config/iq2000/iq2000-common.c,
      	common/config/lm32/lm32-common.c,
      	common/config/m32c/m32c-common.c,
      	common/config/m32r/m32r-common.c,
      	common/config/m68k/m68k-common.c,
      	common/config/mcore/mcore-common.c,
      	common/config/mep/mep-common.c,
      	common/config/microblaze/microblaze-common.c,
      	common/config/mips/mips-common.c,
      	common/config/mmix/mmix-common.c,
      	common/config/mn10300/mn10300-common.c,
      	common/config/pdp11/pdp11-common.c,
      	common/config/picochip/picochip-common.c,
      	common/config/rs6000/rs6000-common.c,
      	common/config/rx/rx-common.c, common/config/s390/s390-common.c,
      	common/config/score/score-common.c, common/config/sh/sh-common.c,
      	common/config/sparc/sparc-common.c,
      	common/config/spu/spu-common.c, common/config/v850/v850-common.c,
      	common/config/vax/vax-common.c,
      	common/config/xstormy16/xstormy16-common.c,
      	common/config/xtensa/xtensa-common.c: New.
      	* config/alpha/alpha.c: Include common/common-target.h.
      	(alpha_option_optimization_table, alpha_handle_option,
      	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
      	TARGET_OPTION_OPTIMIZATION_TABLE): Move to alpha-common.c.
      	* config/arm/arm-protos.h (arm_except_unwind_info): Declare.
      	* config/arm/arm.c (arm_option_optimization_table,
      	TARGET_DEFAULT_TARGET_FLAGS, TARGET_OPTION_OPTIMIZATION_TABLE,
      	TARGET_EXCEPT_UNWIND_INFO, arm_except_unwind_info): Move to
      	arm-common.c.
      	* config/avr/avr.c (avr_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_EXCEPT_UNWIND_INFO): Move
      	to avr-common.c.
      	* config/bfin/bfin.c (struct bfin_cpu): Move to bfin.h.
      	(bfin_cpus, bfin_handle_option, TARGET_HANDLE_OPTION,
      	TARGET_DEFAULT_TARGET_FLAGS): Move to bfin-common.c.
      	* config/bfin/bfin.h struct bfin_cpu): Move from bfin.c.
      	* config/cris/cris.c (cris_option_optimization_table,
      	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
      	TARGET_OPTION_OPTIMIZATION_TABLE, cris_handle_option): Move to
      	cris-common.c.
      	* config/fr30/fr30.c (fr30_option_optimization_table,
      	TARGET_EXCEPT_UNWIND_INFO, TARGET_OPTION_OPTIMIZATION_TABLE): Move
      	to fr30-common.c.
      	* config/frv/frv.c (frv_option_optimization_table,
      	MASK_DEFAULT_ALLOC_CC, TARGET_DEFAULT_TARGET_FLAGS,
      	TARGET_OPTION_OPTIMIZATION_TABLE): Move to frv-common.c.
      	* config/h8300/h8300.c (h8300_option_optimization_table,
      	TARGET_DEFAULT_TARGET_FLAGS, TARGET_OPTION_OPTIMIZATION_TABLE,
      	TARGET_EXCEPT_UNWIND_INFO): Move to h8300-common.c.
      	* config/i386/i386-protos.h (ix86_handle_option): Declare.
      	* config/i386/i386.c: Include common/common-target.h.
      	(OPTION_MASK_ISA_MMX_SET, OPTION_MASK_ISA_3DNOW_SET,
      	OPTION_MASK_ISA_SSE_SET, OPTION_MASK_ISA_SSE2_SET,
      	OPTION_MASK_ISA_SSE3_SET, OPTION_MASK_ISA_SSSE3_SET,
      	OPTION_MASK_ISA_SSE4_1_SET, OPTION_MASK_ISA_SSE4_2_SET,
      	OPTION_MASK_ISA_AVX_SET, OPTION_MASK_ISA_FMA_SET,
      	OPTION_MASK_ISA_SSE4_SET, OPTION_MASK_ISA_SSE4A_SET,
      	OPTION_MASK_ISA_FMA4_SET, OPTION_MASK_ISA_XOP_SET,
      	OPTION_MASK_ISA_LWP_SET, OPTION_MASK_ISA_AES_SET,
      	OPTION_MASK_ISA_PCLMUL_SET, OPTION_MASK_ISA_ABM_SET,
      	OPTION_MASK_ISA_BMI_SET, OPTION_MASK_ISA_TBM_SET,
      	OPTION_MASK_ISA_POPCNT_SET, OPTION_MASK_ISA_CX16_SET,
      	OPTION_MASK_ISA_SAHF_SET, OPTION_MASK_ISA_MOVBE_SET,
      	OPTION_MASK_ISA_CRC32_SET, OPTION_MASK_ISA_FSGSBASE_SET,
      	OPTION_MASK_ISA_RDRND_SET, OPTION_MASK_ISA_F16C_SET,
      	OPTION_MASK_ISA_MMX_UNSET, OPTION_MASK_ISA_3DNOW_UNSET,
      	OPTION_MASK_ISA_3DNOW_A_UNSET, OPTION_MASK_ISA_SSE_UNSET,
      	OPTION_MASK_ISA_SSE2_UNSET, OPTION_MASK_ISA_SSE3_UNSET,
      	OPTION_MASK_ISA_SSSE3_UNSET, OPTION_MASK_ISA_SSE4_1_UNSET,
      	OPTION_MASK_ISA_SSE4_2_UNSET, OPTION_MASK_ISA_AVX_UNSET,
      	OPTION_MASK_ISA_FMA_UNSET, OPTION_MASK_ISA_SSE4_UNSET,
      	OPTION_MASK_ISA_SSE4A_UNSET, OPTION_MASK_ISA_FMA4_UNSET,
      	OPTION_MASK_ISA_XOP_UNSET, OPTION_MASK_ISA_LWP_UNSET,
      	OPTION_MASK_ISA_AES_UNSET, OPTION_MASK_ISA_PCLMUL_UNSET,
      	OPTION_MASK_ISA_ABM_UNSET, OPTION_MASK_ISA_BMI_UNSET,
      	OPTION_MASK_ISA_TBM_UNSET, OPTION_MASK_ISA_POPCNT_UNSET,
      	OPTION_MASK_ISA_CX16_UNSET, OPTION_MASK_ISA_SAHF_UNSET,
      	OPTION_MASK_ISA_MOVBE_UNSET, OPTION_MASK_ISA_CRC32_UNSET,
      	OPTION_MASK_ISA_FSGSBASE_UNSET, OPTION_MASK_ISA_RDRND_UNSET,
      	OPTION_MASK_ISA_F16C_UNSET, ix86_handle_option,
      	ix86_option_optimization_table, ix86_option_init_struct,
      	ix86_supports_split_stack, TARGET_DEFAULT_TARGET_FLAGS,
      	TARGET_HANDLE_OPTION, TARGET_OPTION_OPTIMIZATION_TABLE,
      	TARGET_OPTION_INIT_STRUCT, TARGET_SUPPORTS_SPLIT_STACK): Move to
      	i386-common.c.
      	* config/i386/t-i386 (i386.o): Update dependencies.
      	* config/ia64/ia64-protos.h (ia64_except_unwind_info): Declare.
      	* config/ia64/ia64.c (ia64_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_EXCEPT_UNWIND_INFO,
      	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
      	ia64_handle_option): Move to ia64-common.c.
      	* config/iq2000/iq2000.c (iq2000_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE): Move to iq2000-common.c.
      	* config/lm32/lm32.c (lm32_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_EXCEPT_UNWIND_INFO): Move
      	to lm32-common.c.
      	* config/m32c/m32c.c (TARGET_HAVE_NAMED_SECTIONS): Move to
      	m32c-common.c.
      	* config/m32r/m32r.c (m32r_option_optimization_table,
      	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
      	TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_EXCEPT_UNWIND_INFO,
      	m32r_handle_option): Move to m32r-common.c.
      	(m32r_memory_move_cost): Remove comment referring to
      	TARGET_HANDLE_OPTION.
      	* config/m68k/m68k.c (TARGET_HANDLE_OPTION, m68k_handle_option):
      	Move to m68k-common.c.
      	* config/mcore/mcore.c (mcore_option_optimization_table,
      	TARGET_DEFAULT_TARGET_FLAGS, TARGET_OPTION_OPTIMIZATION_TABLE,
      	TARGET_EXCEPT_UNWIND_INFO): Move to mcore-common.c.
      	* config/mep/mep.c (mep_option_optimization_table,
      	mep_handle_option, TARGET_HANDLE_OPTION,
      	TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_DEFAULT_TARGET_FLAGS):
      	Move to mep-common.c.
      	* config/microblaze/microblaze.c
      	(microblaze_option_optimization_table,
      	TARGET_DEFAULT_TARGET_FLAGS, TARGET_OPTION_OPTIMIZATION_TABLE,
      	TARGET_EXCEPT_UNWIND_INFO): Move to microblaze-common.c.
      	* config/mips/mips.c (mips_handle_option,
      	mips_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE,
      	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Move to
      	mips-common.c.
      	* config/mmix/mmix.c (mmix_option_optimization_table,
      	TARGET_DEFAULT_TARGET_FLAGS, TARGET_OPTION_OPTIMIZATION_TABLE):
      	Move to mmix-common.c.
      	* config/mn10300/mn10300.c (mn10300_option_optimization_table,
      	mn10300_handle_option, TARGET_EXCEPT_UNWIND_INFO,
      	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
      	TARGET_OPTION_OPTIMIZATION_TABLE): Move to mn10300-common.c.
      	* config/pa/pa.c: Include common/common-target.h.
      	(pa_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE,
      	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
      	pa_handle_option): Move to pa-common.c.
      	(pa_option_override): Use targetm_common.except_unwind_info.
      	(pa_asm_output_mi_thunk, pa_function_section): Use
      	targetm_common.have_named_sections.
      	* config/pdp11/pdp11.c (pdp11_option_optimization_table,
      	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
      	TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_OPTION_INIT_STRUCT,
      	pdp11_handle_option, pdp11_option_init_struct): Move to
      	pdp11-common.c.
      	* config/picochip/picochip.c (picochip_option_optimization_table,
      	TARGET_HAVE_NAMED_SECTIONS, TARGET_OPTION_OPTIMIZATION_TABLE,
      	TARGET_EXCEPT_UNWIND_INFO): Move to picochip-common.c.
      	* config/rs6000/rs6000.c: Include common/common-target.h.
      	(rs6000_option_optimization_table, TARGET_HANDLE_OPTION,
      	TARGET_OPTION_INIT_STRUCT, TARGET_OPTION_OPTIMIZATION_TABLE,
      	TARGET_DEFAULT_TARGET_FLAGS, rs6000_option_init_struct,
      	rs6000_handle_option): Move to rs6000-common.c.
      	* config/rs6000/t-rs6000 (rs6000.o): Update dependencies.
      	* config/rx/rx.c (rx_handle_option, rx_option_optimization_table,
      	TARGET_HANDLE_OPTION, TARGET_OPTION_OPTIMIZATION_TABLE,
      	TARGET_EXCEPT_UNWIND_INFO): Move to rx-common.c.
      	* config/s390/s390.c (processor_flags_table,
      	s390_option_optimization_table, s390_option_init_struct,
      	s390_handle_option, TARGET_DEFAULT_TARGET_FLAGS,
      	TARGET_HANDLE_OPTION, TARGET_OPTION_OPTIMIZATION_TABLE,
      	TARGET_OPTION_INIT_STRUCT): Move to s390-common.c.
      	* config/s390/s390.h (processor_flags_table): Declare.
      	* config/score/score.c (score_option_optimization_table,
      	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
      	TARGET_OPTION_OPTIMIZATION_TABLE, MASK_ALL_CPU_BITS,
      	score_handle_option): Move to score-common.c.
      	* config/sh/sh.c (sh_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_OPTION_INIT_STRUCT,
      	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
      	sh_handle_option, sh_option_init_struct): Move to sh-common.c.
      	* config/sparc/sparc.c: Include common/common-target.h.
      	(sparc_option_optimization_table, TARGET_DEFAULT_TARGET_FLAGS,
      	TARGET_OPTION_OPTIMIZATION_TABLE): Move to sparc-common.c.
      	* config/spu/spu.c (TARGET_DEFAULT_TARGET_FLAGS,
      	TARGET_OPTION_INIT_STRUCT, TARGET_EXCEPT_UNWIND_INFO,
      	spu_option_init_struct): Move to spu-common.c.
      	* config/stormy16/stormy16.c (xstorym16_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE): Move to xstormy16-common.c.
      	* config/v850/v850.c (small_memory_physical_max,
      	v850_handle_memory_optionn v850_handle_option,
      	v850_option_optimization_table, TARGET_DEFAULT_TARGET_FLAGS,
      	TARGET_HANDLE_OPTION, TARGET_OPTION_OPTIMIZATION_TABLE): Move to
      	v850-common.c.
      	* config/vax/vax.c (TARGET_DEFAULT_TARGET_FLAGS): Move to
      	vax-common.c.
      	* config/xtensa/xtensa.c (xtensa_option_optimization_table,
      	TARGET_DEFAULT_TARGET_FLAGS, TARGET_OPTION_OPTIMIZATION_TABLE):
      	Move to xtensa-common.c.
      	* cfglayout.c: Include common/common-target.h.
      	(fixup_reorder_chain): Use targetm_common.have_named_sections.
      	* cfgrtl.c: Include common/common-target.h.
      	(force_nonfallthru_and_redirect, commit_one_edge_insertion): Use
      	targetm_common.have_named_sections.
      	* dbxout.c: Include common/common-target.h.
      	(dbxout_function_end): Use targetm_common.have_named_sections.
      	* defaults.h (STACK_OLD_CHECK_PROTECT, STACK_CHECK_PROTECT): Use
      	targetm_common.except_unwind_info.
      	* dwarf2out.c: Include common/common-target.h.
      	(dwarf2out_do_frame, dwarf2out_do_cfi_asm,
      	dwarf2out_begin_prologue, dwarf2out_frame_init,
      	dwarf2out_frame_finish, dwarf2out_assembly_start): Use
      	targetm_common.except_unwind_info.
      	* except.c: Include common/common-target.h.
      	(init_eh, finish_eh_generation,
      	output_one_function_exception_table): Use
      	targetm_common.except_unwind_info.
      	(switch_to_exception_section): Use
      	targetm_common.have_named_sections.
      	* explow.c: Include common/common-target.h.
      	* expr.c: Include common/common-target.h.
      	(build_personality_function): Use
      	targetm_common.except_unwind_info.
      	* function.c: Include common/common-target.h.
      	(expand_function_end): Use targetm_common.except_unwind_info.
      	* haifa-sched.c: Include common/common-target.h.
      	(sched_create_recovery_edges): Use
      	targetm_common.have_named_sections.
      	* lto-opts.c: Include common/common-target.h instead of target.h.
      	(lto_reissue_options): Use targetm_common.handle_option.
      	* opts.c: Include common/common-target.h.
      	(target_handle_option): Use targetm_common.handle_option.
      	(init_options_struct): Update comment referring to
      	targetm.target_option.optimization.  Use
      	targetm_common.default_target_flags,
      	targetm_common.unwind_tables_default and
      	targetm_common.option_init_struct.
      	(default_options_optimization): Use
      	targetm_common.option_optimization_table.
      	(finish_options): Use targetm_common.except_unwind_info,
      	targetm_common.unwind_tables_default,
      	targetm_common.have_named_sections and
      	targetm_common.supports_split_stack.
      	* toplev.c: Include common/common-target.h.
      	(process_options): Use targetm_common.have_named_sections.
      	* tree-tailcall.c: Include common/common-target.h.
      	(suitable_for_tail_call_opt_p): Use
      	targetm_common.except_unwind_info.
      	* tree.c: Include common/common-target.h.
      	(build_common_builtin_nodes): Use
      	targetm_common.except_unwind_info.
      	* varasm.c: Include common/common-target.h.
      	(resolve_unique_section, hot_function_section,
      	default_function_section): Use targetm_common.have_named_sections.
      
      ada:
      	* gcc-interface/Make-lang.in (gnatbind$(exeext)): Use ggc-none.o.
      	(ada/utils.o): Update dependencies.
      	* gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Add
      	../../../libcpp/libcpp.a.
      	* gcc-interface/utils.c: Include common/common-target.h.
      	(process_attributes): Use targetm_common.have_named_sections.
      
      c-family:
      	* c-common.c: Include common/common-target.h.
      	(handle_section_attribute): Use
      	targetm_common.have_named_sections.
      	* c-cppbuiltin.c: Include common/common-target.h.
      	(c_cpp_builtins): Use targetm_common.except_unwind_info.
      
      cp:
      	* Make-lang.in (cp/method.o): Update dependencies.
      	* method.c: Include common/common-target.h.
      	(use_thunk): Use targetm_common.have_named_sections.
      
      go:
      	* Make-lang.in (go/go-lang.o, go/go-backend.o): Update
      	dependencies.
      	* go-backend.c: Include common/common-target.h.
      	(go_write_export_data): Use targetm_common.have_named_sections.
      	* go-lang.c: Include common/common-target.h.
      	(go_langhook_init_options_struct): Use
      	targetm_common.supports_split_stack.
      
      po:
      	* exgettext: Handle common/ directory and subdirectories.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175064 138bc75d-0d04-0410-961f-82ee72b054a4
      218e3e4e
  2. 27 Apr, 2011 1 commit
    • nickc's avatar
      * config/frv/frv.h (enum reg_class): Delete EVEN_ACC_REGS, · ca74bd85
      nickc authored
      	ACC_REGS, FEVEN_REGS, FPR_REGS, EVEN_REGS.
      	(REG_CLASS_NAMES): Likewise.
      	(REG_CLASS_CONTENTS): Likewise.
      	(EVEN_ACC_REGS): New macro.  Alias for QUAD_ACC_REGS.
      	(ACC_REGS): New macro.  Alias for QUAD_ACC_REGS.
      	(FEVEN_REGS): New macro.  Alias for QUAD_ACC_REGS.
      	(FPR_REGS): New macro.  Alias for QUAD_ACC_REGS.
      	(EVEN_REGS): New macro.  Alias for QUAD_REGS.
      	* config/frv/frv.c (frv_secondary_reload_class): Remove use of
      	duplicate register classes.
      	(frv_class_likely_spileld_p): Likewise.
      	(frv_register_move_cost): Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173016 138bc75d-0d04-0410-961f-82ee72b054a4
      ca74bd85
  3. 21 Apr, 2011 3 commits
    • froydnj's avatar
      * config/frv/frv.c (frv_init_builtins): Delete `endlink' variable. · fc6bcbe2
      froydnj authored
      	Call builtin_function_type_list instead of builtin_function_type.
      	(UNARY, BINARY, TRINARY, QUAD): Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172842 138bc75d-0d04-0410-961f-82ee72b054a4
      fc6bcbe2
    • rsandifo's avatar
      gcc/ · ca316360
      rsandifo authored
      	* target.def (legitimate_constant_p): New hook.
      	* doc/tm.texi.in (LEGITIMATE_CONSTANT_P): Replace with...
      	(TARGET_LEGITIMATE_CONSTANT_P): ...this.
      	* doc/tm.texi: Regenerate.
      	* hooks.h (hook_bool_mode_rtx_true): Declare.
      	* hooks.c (hook_bool_mode_rtx_true): Define.
      	* system.h (LEGITIMATE_CONSTANT_P): Poison.
      	* calls.c (precompute_register_parameters): Replace uses of
      	LEGITIMATE_CONSTANT_P with targetm.legitimate_constant_p.
      	(emit_library_call_value_1): Likewise.
      	* expr.c (move_block_to_reg, can_store_by_pieces, emit_move_insn)
      	(compress_float_constant, emit_push_insn, expand_expr_real_1): Likewise.
      	* ira-costs.c (scan_one_insn): Likewise.
      	* recog.c (general_operand, immediate_operand): Likewise.
      	* reload.c (find_reloads_toplev, find_reloads_address_part): Likewise.
      	* reload1.c (init_eliminable_invariants): Likewise.
      
      	* config/alpha/alpha-protos.h (alpha_legitimate_constant_p): Add a
      	mode argument.
      	* config/alpha/alpha.h (LEGITIMATE_CONSTANT_P): Delete.
      	* config/alpha/alpha.c (alpha_...
      ca316360
    • rsandifo's avatar
      gcc/ · 7d7d7bd2
      rsandifo authored
      	* target.def (cannot_force_const_mem): Add a mode argument.
      	* doc/tm.texi.in (TARGET_CANNOT_FORCE_CONST_MEM): Update accordingly.
      	* doc/tm.texi: Regenerate.
      	* hooks.h (hook_bool_mode_rtx_false): Declare.
      	* hooks.c (hook_bool_mode_const_rtx_false): Fix commentary.
      	(hook_bool_mode_const_rtx_true): Likewise.
      	(hook_bool_mode_rtx_false): New function.
      	* reload.c (CONST_POOL_OK_P): Take a mode argument and require it
      	to be non-VOID.  Update call to cannot_force_const_mem.
      	(find_reloads): Update accordingly.
      	* varasm.c (force_const_mem): Update call to cannot_force_const_mem.
      	* config/alpha/alpha.c (alpha_cannot_force_const_mem): Add a mode
      	argument.
      	* config/arm/arm-protos.h (arm_cannot_force_const_mem): Likewise.
      	* config/arm/arm.h (LEGITIMATE_CONSTANT_P): Update call.
      	* config/arm/arm.c (arm_cannot_force_const_mem): Add a mode argument.
      	* config/bfin/bfin.c (bfin_cannot_force_const_mem): Likewise.
      	* config/frv/frv.c (frv_cannot_force_const_mem): Likewise.
      	* config/i386/i386.c (ix86_cannot_force_const_mem): Likewise.
      	* config/ia64/ia64.c (ia64_cannot_force_const_mem): Likewise.
      	* config/m68k/m68k.c (TARGET_CANNOT_FORCE_CONST_MEM): Redefine to...
      	(m68k_cannot_force_const_mem): ...this new function.
      	* config/mips/mips.c (mips_cannot_force_const_mem): Add a mode
      	argument.
      	(mips_const_insns, mips_legitimize_const_move): Update calls.
      	(mips_secondary_reload_class): Likewise.
      	* config/pa/pa.c (TARGET_CANNOT_FORCE_CONST_MEM): Redefine to...
      	(pa_cannot_force_const_mem): ...this new function.
      	* config/rs6000/rs6000.c (TARGET_CANNOT_FORCE_CONST_MEM): Reefine
      	to...
      	(rs6000_cannot_force_const_mem): ...this new function.
      	* config/s390/s390.c (s390_cannot_force_const_mem): Add a mode
      	argument.
      	* config/sparc/sparc.c (sparc_cannot_force_const_mem): Likewise.
      	* config/xtensa/xtensa.c (TARGET_CANNOT_FORCE_CONST_MEM): Redefine
      	to...
      	(xtensa_cannot_force_const_mem): ...this new function.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172813 138bc75d-0d04-0410-961f-82ee72b054a4
      7d7d7bd2
  4. 22 Mar, 2011 2 commits
    • jsm28's avatar
      * config/frv/frv-opts.h: New. · 09f31110
      jsm28 authored
      	* config/frv/frv-protos.h (enum frv_cpu, frv_cpu_t): Move to
      	frv-opts.h.
      	(frv_cpu_type): Remove.
      	* config/frv/frv.c: Don't include opts.h.
      	(frv_cpu_type, frv_handle_option, TARGET_HANDLE_OPTION): Remove.
      	* config/frv/frv.opt (config/frv/frv-opts.h): New HeaderInclude
      	entry.
      	(frv_cpu_type): New Variable entry.
      	(frv_cpu): New Enum and EnumValue entries.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171316 138bc75d-0d04-0410-961f-82ee72b054a4
      09f31110
    • jsm28's avatar
      * target.def (handle_option): Take gcc_options and · fba5dd52
      jsm28 authored
      	cl_decoded_option pointers and location_t.
      	* doc/tm.texi.in (TARGET_HANDLE_OPTION): Update documentation.
      	* doc/tm.texi: Regenerate.
      	* hooks.c (hook_bool_size_t_constcharptr_int_true): Remove.
      	* hooks.h (hook_bool_size_t_constcharptr_int_true): Don't declare.
      	* lto-opts.c (lto_reissue_options): Generate option structure for
      	targetm.handle_option call.
      	* opts.c (target_handle_option): Update call to
      	targetm.handle_option.  Remove assertions about values now passed
      	down to hook.
      	* targhooks.c (default_target_handle_option): New.
      	* targhooks.h (default_target_handle_option): Declare.
      	* config/alpha/alpha.c: Include opts.h.
      	(alpha_handle_option): Update to new hook interface.
      	* config/arm/arm.c: Include opts.h.
      	(arm_handle_option): Update to new hook interface.
      	* config/arm/t-arm (arm.o): Update dependencies.
      	* config/bfin/bfin.c: Include opts.h.
      	(bfin_handle_option): Update to new hook interface.
      	* config/cris/cris.c: Include opts.h.
      	(cris_handle_option): Update to new hook interface.
      	* config/frv/frv.c: Include opts.h.
      	(frv_handle_option): Update to new hook interface.
      	* config/i386/i386.c: Include opts.h.
      	(ix86_handle_option): Update to new hook interface.
      	(ix86_valid_target_attribute_inner_p): Generate option structure
      	for call to ix86_handle_option.
      	* config/i386/t-i386 (i386.o): Update dependencies.
      	* config/ia64/ia64.c: Include opts.h.
      	(ia64_handle_option): Update to new hook interface.
      	* config/ia64/t-ia64 (ia64.o): Update dependencies.
      	* config/iq2000/iq2000.c: Include opts.h.
      	(iq2000_handle_option): Update to new hook interface.
      	* config/m32c/m32c.c: Include opts.h.
      	(m32c_handle_option): Update to new hook interface.
      	* config/m32r/m32r.c: Include opts.h.
      	(m32r_handle_option): Update to new hook interface.
      	* config/m68k/m68k.c: Include opts.h.
      	(m68k_handle_option): Update to new hook interface.
      	* config/mep/mep.c: Include opts.h.
      	(mep_handle_option): Update to new hook interface.
      	* config/microblaze/microblaze.c: Include opts.h.
      	(microblaze_handle_option): Update to new hook interface.
      	* config/mips/mips.c: Include opts.h.
      	(mips_handle_option): Update to new hook interface.
      	* config/mn10300/mn10300.c: Include opts.h.
      	(mn10300_handle_option): Update to new hook interface.
      	* config/pa/pa.c: Include opts.h.
      	(pa_handle_option): Update to new hook interface.
      	* config/pdp11/pdp11.c: Include opts.h.
      	(pdp11_handle_option): Update to new hook interface.
      	* config/rs6000/rs6000.c: Include opts.h.
      	(rs6000_handle_option): Update to new hook interface.
      	* config/rs6000/t-rs6000 (rs6000.o): Update dependencies.
      	* config/rx/rx.c: Include opts.h.
      	(rx_handle_option): Update to new hook interface.
      	* config/s390/s390.c: Include opts.h.
      	(s390_handle_option): Update to new hook interface.
      	* config/score/score.c: Include opts.h.
      	(score_handle_option): Update to new hook interface.
      	* config/sh/sh.c: Include opts.h.
      	(sh_handle_option): Update to new hook interface.
      	* config/sparc/sparc.c: Include opts.h.
      	(sparc_handle_option): Update to new hook interface.
      	* config/v850/v850.c: Include opts.h.
      	(v850_handle_option): Update to new hook interface.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171308 138bc75d-0d04-0410-961f-82ee72b054a4
      fba5dd52
  5. 15 Feb, 2011 1 commit
    • froydnj's avatar
      make frv use constraints.md · 759348d2
      froydnj authored
      	* config/frv/constraints.md: New file.
      	* config/frv/predicates.md: Include it.
      	* config/frv/frv.c (reg_class_from_letter): Delete.
      	(frv_option_override): Don't initialize it.
      	* config/frv/frv.h (REG_CLASS_FROM_LETTER): Delete.
      	(CONST_OK_FOR_I, CONST_OK_FOR_J, CONST_OK_FOR_K): Delete.
      	(CONST_OK_FOR_L, CONST_OK_FOR_M, CONST_OK_FOR_N): Delete.
      	(CONST_OK_FOR_O, CONST_OK_FOR_P, CONST_OK_FOR_LETTER_P): Delete.
      	(CONST_DOUBLE_OK_FOR_G, CONST_DOUBLE_OK_FOR_H): Delete.
      	(CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
      	(EXTRA_CONSTRAINT_FOR_Q, EXTRA_CONSTRAINT_FOR_R): Delete.
      	(EXTRA_CONSTRAINT_FOR_S, EXTRA_CONSTRAINT_FOR_T): Delete.
      	(EXTRA_CONSTRAINT_FOR_U, EXTRA_CONSTRAINT): Delete.
      	(EXTRA_MEMORY_CONSTRAINT, CONSTRAINT_LEN): Delete.
      	(REG_CLASS_FROM_CONSTRAINT): Delete.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@170171 138bc75d-0d04-0410-961f-82ee72b054a4
      759348d2
  6. 06 Dec, 2010 1 commit
    • amylaar's avatar
      PR target/46735 · 0c000b75
      amylaar authored
      	* config/frv/predicates.md (gpr_or_int12_operand): Use IN_RANGE.
      	(gpr_fpr_or_int12_operand, gpr_or_int10_operand): Likewise.
      	(int12_operand, int_2word_operand, uint16_operand): Likewise.
      	(fpr_or_int6_operand, int6_operand, int5_operand): Likewise.
      	(uint5_operand, uint4_operand): Likewise.
      	* config/frv/frv.h (IN_RANGE_P): Delete.
      	(GPR_P, FPR_P, CC_P, ICC_P, FCC_P, CR_P, ICR_P, FCR_P): Use IN_RANGE.
      	(ACC_P, ACCG_P, SPR_P, CONST_OK_FOR_I, CONST_OK_FOR_J): Likewise.
      	(CONST_OK_FOR_L, CONST_OK_FOR_M, CONST_OK_FOR_N): Likewise.
      	(CONST_OK_FOR_P): Likewise.
      	* config/frv/frv.md (*movqicc_internal2_int): Likewise.
      	(*movqicc_internal2_float, *movhicc_internal2_int): Likewise.
      	(*movhicc_internal2_float, *movsicc_internal2_int): Likewise.
      	(*movsicc_internal2_float, casesi): Likewise.
      	* config/frv/frv.c (frv_frame_offset_rtx): Likewise.
      	(frv_asm_output_mi_thunk, frv_legitimate_address_p_1): Likewise.
      	(frv_emit_movsi, output_move_single, frv_emit_cond_move): Likewise.
      	(frv_split_cond_move, frv_rtx_costs): Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@167508 138bc75d-0d04-0410-961f-82ee72b054a4
      0c000b75
  7. 01 Dec, 2010 1 commit
    • jsm28's avatar
      * common.opt (main_input_filename, main_input_basename, · 0e763b2a
      jsm28 authored
      	main_input_baselength): New Variable entries.  From toplev.c.
      	* final.c (output_quoted_string): Move from toplev.c.
      	* output.h (output_quoted_string): Move from toplev.h.
      	* opts-global.c (read_cmdline_options): Use gcc_options pointer to
      	access main_input_filename, main_input_baselength and
      	main_input_basename.
      	* targhooks.c: Include intl.h and opts.h.
      	(option_affects_pch_p, default_get_pch_validity): Move from
      	toplev.c.
      	* targhooks.h (option_affects_pch_p, default_get_pch_validity):
      	Move from toplev.h.
      	* toplev.c (main_input_filename, main_input_basename,
      	main_input_baselength): Move to common.opt.
      	(output_quoted_string): Move to final.c.
      	(warn_deprecated_use): Move to tree.c.
      	(option_affects_pch_p, default_get_pch_validity,
      	pch_option_mismatch, default_pch_valid_p): Move to targhooks.c.
      	* toplev.h (skip_leading_substring): Move to tree-dump.c.
      	(warn_deprecated_use): Move to tree.h.
      	(output_quoted_string): Move to output.h.
      	(main_input_filename, main_input_basename, main_input_baselength):
      	Move to common.opt.
      	(default_get_pch_validity, default_pch_valid_p): Move to
      	targhooks.c.
      	* tree-dump.c (skip_leading_substring): Move from toplev.h.
      	* tree.c (warn_deprecated_use): Move from toplev.c.
      	* tree.h (warn_deprecated_use): Move from toplev.h.
      	* c-typeck.c, config/alpha/alpha.c, config/arc/arc.c,
      	config/arm/arm.c, config/avr/avr.c, config/bfin/bfin.c,
      	config/cris/cris.c, config/crx/crx.c, config/fr30/fr30.c,
      	config/frv/frv.c, config/h8300/h8300.c, config/ia64/ia64.c,
      	config/iq2000/iq2000.c, config/lm32/lm32.c, config/m32c/m32c.c,
      	config/m32r/m32r.c, config/m68hc11/m68hc11.c, config/m68k/m68k.c,
      	config/mcore/mcore.c, config/mep/mep.c,
      	config/microblaze/microblaze.c, config/mips/mips.c,
      	config/mmix/mmix.c, config/mn10300/mn10300.c,
      	config/moxie/moxie.c, config/pa/pa.c, config/pdp11/pdp11.c,
      	config/picochip/picochip.c, config/s390/s390.c,
      	config/score/score.c, config/sh/sh.c, config/sparc/sparc.c,
      	config/spu/spu.c, config/stormy16/stormy16.c, config/v850/v850.c,
      	config/vax/vax.c, config/xtensa/xtensa.c, gimple-low.c,
      	graphite-sese-to-poly.c, plugin.c, tree-cfg.c, tree-inline.c,
      	varasm.c, xcoffout.c: Don't include toplev.h.
      	* Makefile.in (c-typeck.o, tree-inline.o, tree-cfg.o,
      	gimple-low.o, graphite-sese-to-poly.o, targhooks.o, plugin.o,
      	varasm.o, xcoffout.o): Update dependencies.
      	* config/arm/t-arm (arm.o): Update dependencies.
      	* config/spu/t-spu-elf (spu.o): Update dependencies.
      
      cp:
      	* cp-objcp-common.c, lex.c, typeck.c: Don't include toplev.h.
      	* Make-lang.in (cp/lex.o, cp/cp-objcp-common.o, cp/typeck2.o):
      	Update dependencies.
      
      java:
      	* jcf-parse.c: Don't include toplev.h.
      	* Make-lang.in (java/jcf-parse.o): Don't depend on toplev.h.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@167329 138bc75d-0d04-0410-961f-82ee72b054a4
      0e763b2a
  8. 29 Nov, 2010 1 commit
    • jsm28's avatar
      * system.h: Include "safe-ctype.h" instead of <safe-ctype.h>. · 967958e4
      jsm28 authored
      	Include <signal.h>, <sys/mman.h>, <sys/resource.h> and
      	<sys/times.h>.
      	(O_BINARY, SIGCHLD, MAP_FAILED, MAP_ANONYMOUS, kill):
      	Conditionally define.
      	(GET_ENVIRONMENT): Poison.
      	* configure.ac: Don't test for mincore.
      	* configure: Regenerate.
      	* config.in: Regenerate.
      	* collect2-aix.c: Don't include <sys/mman.h>.
      	* collect2.c: Don't include <signal.h>.
      	(SIGCHLD): Don't define.
      	(prefix_from_env): Use getenv instead of GET_ENVIRONMENT.
      	* config/alpha/alpha.c: Include "splay-tree.h" instead of
      	<splay-tree.h>.
      	* config/arm/arm.c (arm_target_help): Use getenv instead of
      	GET_ENVIRONMENT.
      	* config/avr/driver-avr.c: Don't include <stdlib.h>.
      	* config/frv/frv.c: Don't include <ctype.h>.
      	* config/host-darwin.c: Don't include <sys/mman.h>.
      	* config/host-hpux.c: Don't include <sys/mman.h> or <unistd.h>.
      	(MAP_FAILED): Don't define.
      	* config/host-linux.c: Don't include <sys/mman.h> or <limits.h>.
      	* config/host-solaris.c: Don't include <sys/mman.h>.
      	* config/i386/cygming.h: Don't include <stdio.h>.
      	* config/i386/driver-i386.c: Don't include <stdlib.h>.
      	* config/i386/host-cygwin.c: Don't include <sys/mman.h>.
      	* config/iq2000/iq2000.c: Don't include <signal.h>.
      	* config/m32c/m32c-pragma.c: Don't include <stdio.h>.
      	* config/m68hc11/m68hc11.c: Don't include <stdio.h>.
      	* config/mep/mep-pragma.c: Don't include <stdio.h>.
      	* config/microblaze/microblaze.c: Don't include <signal.h>.
      	* config/mips/mips.c: Don't include <signal.h>.
      	* config/rs6000/host-darwin.c: Don't include <signal.h>.
      	* cppdefault.c (cpp_relocated): Use getenv instead of
      	GET_ENVIRONMENT.
      	* defaults.h (GET_ENVIRONMENT): Don't define.
      	* et-forest.h: Don't include <ansidecl.h> or <stddef.h>.
      	* gcc.c: Don't include <signal.h>, <sys/mman.h> or <sys/types.h>.
      	(SIGCHLD, MAP_FAILED, kill): Don't define.
      	(process_command): Use getenv instead of GET_ENVIRONMENT.
      	* genhooks.c: Don't include <string.h>.
      	* ggc-common.c: Don't include <sys/resource.h>, <sys/mman.h> or
      	<sys/types.h>.
      	(MAP_FAILED): Don't define.
      	* ggc-page.c Don't include <sys/mman.h>.
      	(MAP_ANONYMOUS, MAP_FAILED): Don't define.
      	* ggc-zone.c: Don't include <sys/mman.h>.
      	(MAP_ANONYMOUS, MAP_FAILED): Don't define.
      	* graph.c: Include "config.h" instead of <config.h>.
      	* incpath.c (add_env_var_paths): Use getenv instead of
      	GET_ENVIRONMENT.
      	* lto-wrapper.c: Don't include <errno.h>, <signal.h> or
      	"libiberty.h".
      	(SIGCHLD, kill): Don't define.
      	* mips-tfile.c: Don't include <signal.h>.
      	* opts.c: Don't include <signal.h> or <sys/resource.h>.
      	(print_specific_help): Use getenv instead of GET_ENVIRONMENT.
      	* passes.c: Don't include <signal.h>, <sys/resource.h> or
      	<sys/times.h>.
      	* sparseset.h: Don't include <assert.h>.
      	* timevar.c: Don't include <sys/times.h> or <sys/resource.h>.
      	* tlink.c: Don't include "libiberty.h".
      	* toplev.c: Don't include <signal.h> or <sys/times.h>.
      	* tree-mudflap.c: Include "demangle.h" instead of <demangle.h>.
      	* tree-switch-conversion.c: Don't include <signal.h>.
      	* vmsdbgout.c: Don't include <errno.h> or <string.h>.
      
      c-family:
      	* c-opts.c (check_deps_environment_vars): Use getenv instead of
      	GET_ENVIRONMENT.
      	* c-pch.c (O_BINARY): Don't define here.
      	* c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
      
      fortran:
      	* gfortran.h (alloca): Don't include definitions.
      	(NULL): Don't define.
      
      java:
      	* boehm.c: Include "config.h" instead of <config.h>.
      	* builtins.c: Don't include <stdarg.h>.
      	* class.c: Don't include "stdio.h".
      	(O_BINARY): Don't define here.
      	* jcf-depend.c: Don't include <assert.h>.
      	(jcf_dependency_set_dep_file, jcf_dependency_init,
      	jcf_dependency_write): Use gcc_assert.
      	* jcf-io.c (O_BINARY): Don't define here.
      	* jcf-path.c: Don't include "tm.h".
      	(jcf_path_init): Use getenv instead of GET_ENVIRONMENT.
      	* resource.c: Don't include "stdio.h".
      	(O_BINARY): Don't define here.
      	* verify-impl.c: Don't include <stdio.h>.
      
      lto:
      	* lto-endian.h: Delete.
      	* lto-object.c: Don't include "libiberty.h".
      	(O_BINARY): Don't define.
      	* lto.c: Don't include "libiberty.h" or <sys/mman.h>.
      	(O_BINARY): Don't define.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@167241 138bc75d-0d04-0410-961f-82ee72b054a4
      967958e4
  9. 22 Nov, 2010 1 commit
    • froydnj's avatar
      * target.def (conditional_register_usage): Define. · b2d7ede1
      froydnj authored
      	* reginfo.c (init_reg_sets_1): Call
      	targetm.conditional_register_usage.
      	* system.h (CONDITIONAL_REGISTER_USAGE): Poison.
      	* doc/tm.texi.in (CONDITIONAL_REGISTER_USAGE): Adjust language
      	for making it a hook.
      	* doc/tm.texi: Regenerate.
      	* config/alpha/alpha.h (CONDITIONAL_REGISTER_USAGE): Move logic...
      	* config/alpha/alpha.c (alpha_conditional_register_usage): ...here.
      	New function.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/arc/arc.h (CONDITIONAL_REGISTER_USAGE): Move logic...
      	* config/arc/arc.c (arc_conditional_register_usage): ...here.
      	New function.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/arm/arm.h (CONDITIONAL_REGISTER_USAGE): Move logic...
      	* config/arm/arm.c (arm_conditional_register_usage): ...here.
      	New function.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/bfin/bfin.h (CONDITIONAL_REGISTER_USAGE): Delete.
      	* config/bfin/bfin-protos.h (conditional_register_usage): Delete.
      	* config/bfin/bfin.c (conditional_register_usage): Move code into...
      	(bfin_conditional_register_usage): ...here.  New function.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/cris/cris.h (CONDITIONAL_REGISTER_USAGE): Delete.
      	* config/cris/cris-protos.h (cris_conditional_register_usage): Delete.
      	* config/cris/cris.c (cris_conditional_register_usage): Make static.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/fr30/fr30.h (FIXED_REGISTERS): Adjust comment.
      	* config/frv/frv.h (CONDITIONAL_REGISTER_USAGE): Delete.
      	* config/frv/frv-protos.h (frv_conditional_register_usage): Delete.
      	* config/frv/frv.c (frv_conditional_register_usage): Make static.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/h8300/h8300.h (CONDITIONAL_REGISTER_USAGE): Move logic...
      	* config/h8300/h8300.c (h8300_conditional_register_usage): ...here.
      	New function.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/i386/i386.h (CONDITIONAL_REGISTER_USAGE): Delete.
      	* config/i386/i386-protos.h (ix86_conditional_register_usage): Delete.
      	* config/i386/i386.c (ix86_conditional_register_usage): Make static.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/m32c/m32c.h (CONDITIONAL_REGISTER_USAGE): Delete.
      	* config/m32c/m32c-protos.h (m32c_conditional_register_usage): Delete.
      	* config/m32c/m32c.c (m32c_conditional_register_usage): Make static.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/m32r/m32r.h (CONDITIONAL_REGISTER_USAGE): Move logic...
      	* config/m32r/m32r.c (m32r_conditional_register_usage): ...here.
      	New function.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/m68hc11/m68hc11.h (CONDITIONAL_REGISTER_USAGE): Delete.
      	* config/m68hc11/m68hc11-protos.h (m68hc11_conditional_register_usage):
      	Delete.
      	* config/m68hc11/m68hc11.c (m68hc11_conditional_register_usage): Make
      	static.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/mep/mep.h (CONDITIONAL_REGISTER_USAGE): Delete.
      	* config/mep/mep-protos.h (mep_conditional_register_usage): Delete.
      	* config/mep/mep.c (mep_conditional_register_usage): Make static.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/mips/mips.h (CONDITIONAL_REGISTER_USAGE): Delete.
      	* config/mips/mips-protos.h (mips_conditional_register_usage): Delete.
      	* config/mips/mips.c (mips_conditional_register_usage): Make static.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/mmix/mmix.h (CONDITIONAL_REGISTER_USAGE): Delete.
      	* config/mmix/mmix-protos.h (mmix_conditional_register_usage): Delete.
      	* config/mmix/mmix.c (mmix_conditional_register_usage): Make static.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/mn10300/mn10300.h (CONDITIONAL_REGISTER_USAGE): Move logic...
      	* config/mn10300/mn10300.c (mn10300_conditional_register_usage):
      	...here.  New function.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/pa/pa32-regs.h (CONDITIONAL_REGISTER_USAGE): Move logic...
      	* config/pa/pa64-regs.h (CONDITIONAL_REGISTER_USAGE): ...with this...
      	* config/pa/pa.c (pa_conditional_register_usage): ...here.
      	New function.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/pdp11/pdp11.h (CONDITIONAL_REGISTER_USAGE): Move logic...
      	* config/pdp11/pdp11.c (pdp11_conditional_register_usage): ...here.
      	New function.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/rs6000/rs6000.h (CONDITIONAL_REGISTER_USAGE): Delete.
      	* config/rs6000/rs6000-protos.h (rs6000_conditional_register_usage):
      	Delete.
      	* config/rs6000/rs6000.c (rs6000_conditional_register_usage): Make
      	static.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/rx/rx.h (CONDITIONAL_REGISTER_USAGE): Delete.
      	* config/rx/rx-protos.h (rx_conditional_register_usage): Delete.
      	* config/rx/rx.c (rx_conditional_register_usage): Make static.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/s390/s390.h (CONDITIONAL_REGISTER_USAGE): Delete.
      	* config/s390/s390-protos.h (s390_conditional_register_usage): Delete.
      	* config/s390/s390.c (s390_conditional_register_usage): Make static.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/score/score.h (CONDITIONAL_REGISTER_USAGE): Move logic...
      	* config/score/score.c (score_conditional_register_usage): ...here.
      	New function.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Move logic...
      	* config/sh/sh.c (sh_conditional_register_usage): ...here.
      	New function.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/sparc/sparc.h (CONDITIONAL_REGISTER_USAGE): Move logic...
      	* config/sparc/sparc.c (sparc_conditional_register_usage): ...here.
      	New function.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/spu/spu.h (CONDITIONAL_REGISTER_USAGE): Delete.
      	* config/spu/spu-protos.h (spu_conditional_register_usage): Delete.
      	* config/spu/spu.c (spu_conditional_register_usage): Make static.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      	* config/v850/v850.h (CONDITIONAL_REGISTER_USAGE): Move logic...
      	* config/v850/v850.c (v850_conditional_register_usage): ...here.
      	New function.
      	(TARGET_CONDITIONAL_REGISTER_USAGE): Define.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@167020 138bc75d-0d04-0410-961f-82ee72b054a4
      b2d7ede1
  10. 16 Nov, 2010 1 commit
    • froydnj's avatar
      * builtins.c (std_gimplify_va_arg_expr): Use · bd99ba64
      froydnj authored
      	targetm.calls.function_arg_boundary.
      	* function.c (assign_parms, locate_and_pad_parm): Likewise.
      	* calls.c (struct arg_data): Update comment.
      	* defaults.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* target.def (function_arg_boundary): Define.
      	* targhooks.h (default_function_arg_boundary): Declare.
      	* targhooks.c (default_function_arg_boundary): Define.
      	* doc/tm.texi.in (FUNCTION_ARG_PADDING): Use
      	TARGET_FUNCTION_ARG_BOUNDARY.
      	(FUNCTION_ARG_BOUNDARY): Delete.
      	(TARGET_FUNCTION_ARG_BOUNDARY): New.
      	* doc/tm.texi: Regenerate.
      	* system.h (FUNCTION_ARG_BOUNDARY): Poison.
      	* config/arc/arc.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/arc/arc.c (arc_function_arg_boundary): Define.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/arm/arm.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/arm/arm-protos.h (arm_needs_doubleword_align): Delete.
      	* config/arm/arm.c (arm_needs_doubleword_align): Make static.
      	(arm_function_arg_boundary): Define.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/frv/frv.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/frv/frv-protos.h (frv_function_arg_boundary): Delete.
      	* config/frv/frv.c (frv_function_arg_boundary): Make static.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/i386/i386.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/i386/i386-protos.h (ix86_function_arg_boundary): Delete.
      	* config/i386/i386.c (ix86_function_arg_boundary): Make static.
      	(ix86_compat_function_arg_boundary): Take and return unsigned int.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/ia64/ia64.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/ia64/ia64-protos.h (ia64_function_arg_boundary): Delete.
      	* config/ia64/ia64.c (ia64_function_arg_boundary): Make static.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/m32c/m32c.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/m32c/m32c.c (m32c_function_arg_boundary): Define.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/m32r/m32r.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/mcore/mcore.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/mcore/mcore.c (mcore_function_arg_boundary): Define.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/mips/mips.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/mips/mips-protos.h (mips_function_arg_boundary): Delete.
      	* config/mips/mips.c (mips_function_arg_boundary): Make static.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/pa/pa.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/pa/pa.c (pa_function_arg_boundary): Define.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/picochip/picochip.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/picochip/picochip-protos.h
      	(picochip_get_function_arg_boundary): Delete.
      	* config/picochip/picochip.c (picochip_get_function_arg_boundary):
      	Rename to...
      	(picochip_function_arg_boundary): ...this.  Make static.
      	(picochip_function_arg, picochip_arg_partial_bytes): Adjust.
      	(picochip_arg_advance): Adjust.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/rs6000/rs6000.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/rs6000/rs6000-protos.h (function_arg_boundary): Delete.
      	* config/rs6000/rs6000.c (function_arg_boundary): Rename to...
      	(rs6000_function_arg_boundary): ...this.  Make static.
      	(rs6000_parm_start, rs6000_gimplify_va_arg): Adjust.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/rx/rx.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/rx/rx.c (rx_function_arg_boundary): Define.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/sparc/sparc.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/sparc/sparc.c (sparc_function_arg_boundary): Define.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/xtensa/xtensa.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/xtensa/xtensa-protos.h (function_arg_boundary): Delete.
      	* config/xtensa/xtensa.c (function_arg_boundary): Rename to...
      	(xtensa_function_arg_boundary): ...this.  Make static.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166803 138bc75d-0d04-0410-961f-82ee72b054a4
      bd99ba64
  11. 08 Nov, 2010 1 commit
    • amylaar's avatar
      2010-11-08 Joern Rennecke <amylaar@spamcop.net> · 2da3e390
      amylaar authored
      	    Richard Henderson <rth@redhat.com>
      
      	PR target/44758
      	* config/frv/frv.md (attribute cpu): Cast value to enum attr_cpu.
      	(attribute acc_group): Cast value to enum attr_acc_group.
      	(*movdi_nodouble+6): Use gen_int_mode.
      	* config/frv/frv-protos.h (frv_trampoline_size): Declare no matter
      	if RTX_CODE is defined or not.
      	* config/frv/frv.c (enum frv_io_type): New enum, broken out of
      	struct frv_io.
      	(frv_handle_option): Mark parameter value with ATTRIBUTE_UNUSED.
      	(frv_frame_access, frv_expand_prologue): Remove unused variables.
      	(frv_expand_block_clear): Likewise.
      	(frv_trampoline_init): Use LCT_NORMAL.
      	(struct frv_packet_group): New struct, broken out of type of
      	frv_packet.
      	(frv_start_packet, frv_reorder_packet): Initialize group to GROUP_I,
      	use cast in loop counter increment.
      	(frv_extract_membar): Cast HOST_WIDE_INT to enum frv_io_type before
      	assigning to io->type.
      	(bdesc_set): Use rtx_code UNKNOWN in initializer.
      	(bdesc_1arg, bdesc_2arg, bdesc_int_void2arg): Likewise.
      	(bdesc_prefetches, bdesc_cut, bdesc_2argimm, bdesc_void2arg): Likewise.
      	(bdesc_void3arg, bdesc_voidacc, bdesc_loads, bdesc_stores): Likewise.
      	(frv_read_argument): Use expand_normal.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166447 138bc75d-0d04-0410-961f-82ee72b054a4
      2da3e390
  12. 28 Oct, 2010 1 commit
    • froydnj's avatar
      * config/frv/frv-protos.h (frv_function_arg): Delete. · 6a16a3b1
      froydnj authored
      	(frv_function_arg_advance): Delete.
      	* config/frv/frv.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
      	* config/frv/frv.c (frv_function_arg): Rename to...
      	(frv_function_arg_1): Make static.  Take const_tree and bool
      	arguments.
      	(frv_function_arg, frv_function_incoming_arg): New functions.
      	(frv_function_arg_advance): Make static.  Take a const_tree and
      	a bool.
      	(TARGET_FUNCTION_ARG, TARGET_FUNCTION_INCOMING_ARG): Define.
      	(TARGET_FUNCTION_ARG_ADVANCE): Define.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166033 138bc75d-0d04-0410-961f-82ee72b054a4
      6a16a3b1
  13. 22 Oct, 2010 1 commit
    • jsm28's avatar
      * target.h (enum opt_levels, struct default_options): New. · c17f64cc
      jsm28 authored
      	* target.def (handle_ofast): Remove hook.
      	(target_option.optimization): Change to
      	target_option.optimization_table.
      	* doc/tm.texi.in (TARGET_OPTION_OPTIMIZATION): Change to
      	TARGET_OPTION_OPTIMIZATION_TABLE.
      	(CAN_DEBUG_WITHOUT_FP): Remove.
      	* doc/tm.texi: Regenerate.
      	* opts.c (maybe_default_option, maybe_default_options,
      	default_options_table): New.
      	(default_options_optimization): Take extra parameters.  Don't
      	assert that global_options and global_options_set are in use.  Use
      	maybe_default_options.
      	(decode_options): Pass extra parameters to
      	default_options_optimization.
      	* common.opt (falign-loops): Use value 0 with Var.
      	(frerun-cse-after-loop, ftree-ter): Remove Init.
      	* system.h (CAN_DEBUG_WITHOUT_FP, TARGET_HANDLE_OFAST,
      	TARGET_OPTION_OPTIMIZATION): Remove.
      	* targhooks.c (empty_optimization_table): New.
      	* targhooks.h (empty_optimization_table): Declare.
      	* toplev.c (process_options): Don't set flag_rerun_cse_after_loop.
      	* config/alpha/alpha.c (alpha_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE): New.
      	* config/alpha/alpha.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/arm/arm.c (arm_option_optimization: Change to
      	arm_option_optimization_table.
      	(TARGET_OPTION_OPTIMIZATION): Change to
      	TARGET_OPTION_OPTIMIZATION_TABLE.
      	* config/arm/arm.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/avr/avr.c (avr_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE): New.
      	* config/avr/avr.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/cris/cris.c (cris_option_optimization): Change to
      	cris_option_optimization_table.
      	(TARGET_OPTION_OPTIMIZATION): Change to
      	TARGET_OPTION_OPTIMIZATION_TABLE.
      	* config/crx/crx.c (crx_option_optimization): Change to
      	crx_option_optimization_table.
      	(TARGET_OPTION_OPTIMIZATION): Change to
      	TARGET_OPTION_OPTIMIZATION_TABLE.
      	* config/crx/crx.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/fr30/fr30.c (fr30_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE): New.
      	* config/fr30/fr30.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/frv/frv.c (frv_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE): New.
      	* config/frv/frv.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/h8300/h8300.c (h8300_option_optimization): Change to
      	h8300_option_optimization_table.
      	(TARGET_OPTION_OPTIMIZATION): Change to
      	TARGET_OPTION_OPTIMIZATION_TABLE.
      	* config/h8300/h8300.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/i386/i386.c (ix86_option_optimization): Change to
      	ix86_option_optimization_table.
      	(TARGET_OPTION_OPTIMIZATION): Change to
      	TARGET_OPTION_OPTIMIZATION_TABLE.
      	* config/i386/sol2-10.h (SUBTARGET_OPTIMIZATION_OPTIONS): Define
      	as initializer.
      	* config/ia64/ia64.c (ia64_option_optimization): Change to
      	ia64_option_optimization_table.
      	(TARGET_OPTION_OPTIMIZATION): Change to
      	TARGET_OPTION_OPTIMIZATION_TABLE.
      	* config/ia64/ia64.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/ia64/vms.h (SUBTARGET_OPTIMIZATION_OPTIONS): Define as
      	initializer.
      	* config/iq2000/iq2000.c (iq2000_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE): New.
      	* config/iq2000/iq2000.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/lm32/lm32.c (lm32_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE): New.
      	* config/lm32/lm32.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/m32r/m32r.c (m32r_option_optimization): Change to
      	m32r_option_optimization_table.
      	(TARGET_OPTION_OPTIMIZATION): Change to
      	TARGET_OPTION_OPTIMIZATION_TABLE.
      	* config/m32r/m32r.h (SUBTARGET_OPTIMIZATION_OPTIONS,
      	CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/mcore/mcore.c (mcore_option_optimization): Change to
      	mcore_option_optimization_table.
      	(TARGET_OPTION_OPTIMIZATION): Change to
      	TARGET_OPTION_OPTIMIZATION_TABLE.
      	* config/mep/mep.c (mep_option_optimization): Change to
      	mep_option_optimization_table.
      	(TARGET_OPTION_OPTIMIZATION): Change to
      	TARGET_OPTION_OPTIMIZATION_TABLE.
      	* config/mep/mep.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/microblaze/microblaze.c
      	(microblaze_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE): New.
      	* config/microblaze/microblaze.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/mips/mips.c (mips_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE): New.
      	* config/mips/mips.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/mmix/mmix.c (mmix_option_optimization): Change to
      	mmix_option_optimization_table.
      	(TARGET_OPTION_OPTIMIZATION): Change to
      	TARGET_OPTION_OPTIMIZATION_TABLE.
      	* config/mmix/mmix.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/mn10300/mn10300.c (mn10300_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE): New.
      	* config/mn10300/mn10300.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/pa/pa.c (pa_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE): New.
      	* config/pa/pa.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/pdp11/pdp11.c (pdp11_option_optimization): Change to
      	pdp11_option_optimization_table.
      	(TARGET_OPTION_OPTIMIZATION): Change to
      	TARGET_OPTION_OPTIMIZATION_TABLE.
      	* config/picochip/picochip.c (picochip_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE): New.
      	* config/picochip/picochip.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/rs6000/rs6000.c (rs6000_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE): New.
      	* config/rs6000/rs6000.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/rx/rx.c (rx_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE): New.
      	* config/rx/rx.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/s390/s390.c (s390_option_optimization): Change to
      	s390_option_optimization_table.
      	(s390_option_override): Update comment.
      	(TARGET_OPTION_OPTIMIZATION): Change to
      	TARGET_OPTION_OPTIMIZATION_TABLE.
      	* config/s390/s390.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/score/score.c (score_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE): New.
      	* config/score/score.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/sh/sh.c (sh_option_optimization): Change to
      	sh_option_optimization_table.
      	(TARGET_OPTION_OPTIMIZATION): Change to
      	TARGET_OPTION_OPTIMIZATION_TABLE.
      	(sh_option_override): Set MASK_SAVE_ALL_TARGET_REGS here.
      	(sh_option_override, expand_block_move, multcosts, find_barrier,
      	barrier_align): Use optimize_size instead of TARGET_SMALLCODE.
      	* config/sh/sh.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	(LOOP_ALIGN, TRAMPOLINE_ALIGNMENT, MOVE_BY_PIECES_P,
      	STORE_BY_PIECES_P, SH_DYNAMIC_SHIFT_COST): Use optimize_size
      	instead of TARGET_SMALLCODE.
      	* config/sh/sh.opt (mspace): Make into an alias for -Os.
      	* config/sparc/sparc.c (sparc_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE): New.
      	* config/sparc/sparc.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/stormy16/stormy16.c (xstorym16_option_optimization_table,
      	TARGET_OPTION_OPTIMIZATION_TABLE): New.
      	* config/stormy16/stormy16.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/v850/v850.c (v850_option_optimization): Change to
      	v850_option_optimization_table.
      	(TARGET_OPTION_OPTIMIZATION): Change to
      	TARGET_OPTION_OPTIMIZATION_TABLE.
      	* config/v850/v850.h (CAN_DEBUG_WITHOUT_FP): Remove.
      	* config/xtensa/xtensa.c (xtensa_option_optimization): Change to
      	xtensa_option_optimization_table.
      	(TARGET_OPTION_OPTIMIZATION): Change to
      	TARGET_OPTION_OPTIMIZATION_TABLE.
      	* config/xtensa/xtensa.h (CAN_DEBUG_WITHOUT_FP): Remove.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165823 138bc75d-0d04-0410-961f-82ee72b054a4
      c17f64cc
  14. 15 Oct, 2010 1 commit
  15. 04 Oct, 2010 1 commit
    • jsm28's avatar
      * flags.h (g_switch_value, g_switch_set): Remove. · 13a54dd9
      jsm28 authored
      	* opts.c (g_switch_value, g_switch_set): Remove.
      	* config/g.opt (G): Add Var(g_switch_value).
      	* config/alpha/alpha.c (alpha_handle_option): Don't handle -G
      	here.
      	(alpha_option_override): Check global_options_set.x_g_switch_value
      	instead of g_switch_set.
      	(alpha_in_small_data_p): Remove cast in comparison with
      	g_switch_value.
      	* config/alpha/elf.h (ASM_OUTPUT_ALIGNED_LOCAL): Cast
      	g_switch_value to unsigned HOST_WIDE_INT.
      	* config/frv/frv.c (frv_const_unspec_p): Remove cast in comparison
      	with g_switch_value.
      	(frv_handle_option): Don't handle -G here.
      	(frv_option_override): Check global_options_set.x_g_switch_value
      	instead of g_switch_set.  Don't modify g_switch_set.
      	(frv_in_small_data_p): Remove cast in comparison with
      	g_switch_value.
      	* config/frv/frv.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Cast
      	g_switch_value to unsigned HOST_WIDE_INT.
      	* config/ia64/ia64.c (ia64_handle_option): Don't handle -G here.
      	(ia64_option_override): Check global_options_set.x_g_switch_value
      	instead of g_switch_set.
      	* config/lm32/lm32.c (lm32_handle_option, TARGET_HANDLE_OPTION):
      	Remove.
      	(lm32_in_small_data_p): Remove cast in comparison with
      	g_switch_value.
      	* config/lm32/lm32.h (ASM_OUTPUT_ALIGNED_LOCAL,
      	ASM_OUTPUT_ALIGNED_COMMON): Cast g_switch_value to unsigned
      	HOST_WIDE_INT.
      	* config/m32r/m32r.c (m32r_handle_option): Don't handle -G here.
      	(m32r_init): Check global_options_set.x_g_switch_value instead of
      	g_switch_set.
      	(m32r_in_small_data_p): Remove cast in comparison with
      	g_switch_value.
      	(m32r_file_start): Format g_switch_value with %d.
      	* config/m32r/m32r.h (ASM_OUTPUT_ALIGNED_COMMON,
      	ASM_OUTPUT_ALIGNED_BSS): Cast g_switch_value to unsigned
      	HOST_WIDE_INT.
      	* config/microblaze/microblaze.c (microblaze_handle_option): Don't
      	handle -G here.
      	(microblaze_option_override): Check
      	global_options_set.x_g_switch_value instead of g_switch_set.
      	* config/mips/mips.c (mips_handle_option): Don't handle -G here.
      	(mips_option_override): Check global_options_set.x_g_switch_value
      	instead of g_switch_set.
      	* config/rs6000/rs6000.c (rs6000_handle_option): Don't handle -G
      	here.
      	(rs6000_file_start): Format g_switch_value with %d.
      	(small_data_operand, rs6000_elf_in_small_data_p): Remove casts in
      	comparisons with g_switch_value.
      	* config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Check
      	global_options_set.x_g_switch_value instead of g_switch_set.
      	* config/rs6000/vxworks.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Check
      	global_options_set.x_g_switch_value instead of g_switch_set.
      	* config/score/score.c (score_handle_option): Don't handle -G
      	here.
      	* config/score/score3.c (score3_option_override): Check
      	global_options_set.x_g_switch_value instead of g_switch_set.
      	* config/score/score7.c (score7_option_override): Check
      	global_options_set.x_g_switch_value instead of g_switch_set.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164960 138bc75d-0d04-0410-961f-82ee72b054a4
      13a54dd9
  16. 24 Sep, 2010 1 commit
    • jakub's avatar
      PR middle-end/45234 · 60778e62
      jakub authored
      	* rtl.h (enum global_rtl_index): Add
      	GR_VIRTUAL_PREFERRED_STACK_BOUNDARY.
      	(LAST_VIRTUAL_POINTER_REGISTER): Define.
      	(virtual_preferred_stack_boundary_rtx,
      	VIRTUAL_PREFERRED_STACK_BOUNDARY_REGNUM): Define.
      	(LAST_VIRTUAL_REGISTER): Increase by one.
      	(REGNO_PTR_FRAME_P): Use LAST_VIRTUAL_POINTER_REGISTER
      	instead of LAST_VIRTUAL_REGISTER.
      	* function.c (instantiate_new_reg): Handle
      	virtual_preferred_stack_boundary_rtx.
      	* emit-rtl.c (init_virtual_regs): Handle
      	VIRTUAL_PREFERRED_STACK_BOUNDARY_REGNUM.
      	(init_emit_regs): Initialize virtual_preferred_stack_boundary_rtx.
      	* explow.c (round_push): If crtl->preferred_stack_boundary
      	is smaller than MAX_SUPPORTED_STACK_ALIGNMENT, use
      	virtual_preferred_stack_boundary_rtx alignment instead of
      	crtl->preferred_stack_boundary alignment.
      	(allocate_dynamic_stack_space): Use CONST_INT_P and REG_P
      	macros.  Never decrease crtl->preferred_stack_boundary,
      	use crtl->preferred_stack_boundary or MAX_SUPPORTED_STACK_ALIGNMENT
      	instead of PREFERRED_STACK_BOUNDARY.  Don't modify
      	stack_pointer_delta in dynamic allocation, even when size
      	is constant.
      	(probe_stack_range, anti_adjust_stack_and_probe): Use CONST_INT_P
      	macro.
      	* print-rtl.c (print_rtx): Handle
      	VIRTUAL_PREFERRED_STACK_BOUNDARY_REGNUM.
      	* config/alpha/alpha.h (NONSTRICT_REG_OK_FP_BASE_P): Use
      	LAST_VIRTUAL_POINTER_REGISTER instead of LAST_VIRTUAL_REGISTER.
      	* config/frv/frv.c (frv_emit_movsi): Likewise.
      	* config/arm/arm.c (thumb1_legitimate_address_p): Likewise.
      	* config/rs6000/rs6000.c (virtual_stack_registers_memory_p):
      	Likewise.
      
      	* gcc.dg/torture/stackalign/alloca-6.c: New test.
      	* gcc.target/i386/pr45234.c: New test.
      
      	Revert:
      	2010-09-17  H.J. Lu  <hongjiu.lu@intel.com>
      
      	PR middle-end/45234
      	* calls.c (expand_call): Make sure that all variable sized
      	adjustments are multiple of preferred stack boundary after
      	stack alignment.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164593 138bc75d-0d04-0410-961f-82ee72b054a4
      60778e62
  17. 16 Sep, 2010 2 commits
    • jsm28's avatar
      * target.def (target_option.optimization): New hook. · 02e53c17
      jsm28 authored
      	* doc/tm.texi.in (OPTIMIZATION_OPTIONS): Change to
      	TARGET_OPTION_OPTIMIZATION hook.
      	* doc/tm.texi: Regenerate.
      	* hooks.c (hook_void_int_int): New.
      	* hooks.h (hook_void_int_int): Declare.
      	* opts.c: Don't include tm_p.h.
      	(decode_options): Use targetm.target_option.optimization instead
      	of OPTIMIZATION_OPTIONS.
      	* system.h (OPTIMIZATION_OPTIONS): Poison.
      	* config/arm/arm-protos.h (arm_optimization_options): Remove.
      	* config/arm/arm.c (TARGET_OPTION_OPTIMIZATION): Define.
      	(arm_optimization_options): Rename to arm_option_optimization.
      	Make static.
      	* config/arm/arm.h (OPTIMIZATION_OPTIONS): Remove.
      	* config/cris/cris.c (TARGET_OPTION_OPTIMIZATION): Define.
      	(cris_option_optimization): New.
      	* config/cris/cris.h (OPTIMIZATION_OPTIONS): Remove.
      	* config/crx/crx.c (TARGET_OPTION_OPTIMIZATION): Define.
      	(crx_option_optimization): New.
      	* config/crx/crx.h (OPTIMIZATION_OPTIONS): Remove.
      	* config/frv/frv-protos.h (frv_optimization_options): Remove.
      	* config/frv/frv.c (TARGET_OPTION_OPTIMIZATION): Define.
      	(frv_optimization_options): Rename to frv_option_optimization.
      	Make static.
      	* config/frv/frv.h (OPTIMIZATION_OPTIONS): Remove.
      	* config/h8300/h8300.c (h8300_option_optimization): New.
      	(TARGET_OPTION_OPTIMIZATION): Define.
      	* config/h8300/h8300.h (OPTIMIZATION_OPTIONS): Remove.
      	* config/i386/i386-protos.h (optimization_options): Remove.
      	* config/i386/i386.c (optimization_options): Rename to
      	ix86_option_optimization.  Make static.
      	(TARGET_OPTION_OPTIMIZATION): Define.
      	* config/i386/i386.h (OPTIMIZATION_OPTIONS): Remove.
      	* config/ia64/ia64-protos.h (ia64_optimization_options): Remove.
      	* config/ia64/ia64.c (TARGET_OPTION_OPTIMIZATION): Define.
      	(ia64_optimization_options): Rename to ia64_option_optimization.
      	Make static.  Call SUBTARGET_OPTIMIZATION_OPTIONS.
      	* config/ia64/ia64.h (OPTIMIZATION_OPTIONS): Remove.  Remove
      	commented-out definition.
      	* config/ia64/vms.h (SUBTARGET_OPTIMIZATION_OPTIONS): Define
      	instead of OPTIMIZATION_OPTIONS.
      	* config/m32r/m32r.c (TARGET_OPTION_OPTIMIZATION): Define.
      	(m32r_option_optimization): New.
      	* config/m32r/m32r.h (OPTIMIZATION_OPTIONS): Remove.
      	* config/m68hc11/m68hc11-protos.h (m68hc11_optimization_options):
      	Remove.
      	* config/mcore/mcore.c (TARGET_OPTION_OPTIMIZATION): Define.
      	(mcore_option_optimization): New.
      	* config/mcore/mcore.h (OPTIMIZATION_OPTIONS): Remove.
      	* config/mep/mep-protos.h (mep_optimization_options): Remove.
      	* config/mep/mep.c (TARGET_OPTION_OPTIMIZATION): Define.
      	(mep_optimization_options): Rename to mep_option_optimization.
      	Make static.  Take unused level and size parameters.
      	* config/mep/mep.h (OPTIMIZATION_OPTIONS): Remove.
      	* config/mmix/mmix.c (TARGET_OPTION_OPTIMIZATION): Define.
      	(mmix_option_optimization): New.
      	* config/mmix/mmix.h (OPTIMIZATION_OPTIONS): Remove.
      	* config/pdp11/pdp11.c (TARGET_OPTION_OPTIMIZATION): Define.
      	(pdp11_option_optimization): New.
      	* config/pdp11/pdp11.h (OPTIMIZATION_OPTIONS): Remove.
      	* config/rs6000/rs6000-protos.h (optimization_options): Remove.
      	* config/rs6000/rs6000.c (TARGET_OPTION_OPTIMIZATION): Define.
      	(optimization_options): Rename to rs6000_option_optimization.
      	Make static.
      	* config/rs6000/rs6000.h (OPTIMIZATION_OPTIONS): Remove.
      	* config/rx/rx-protos.h (rx_set_optimization_options): Remove.
      	* config/rx/rx.c (rx_set_optimization_options): Rename to
      	rx_option_optimization.  Make static.  Take unused level and size
      	parameters.
      	(TARGET_OPTION_OPTIMIZATION): Define.
      	* config/rx/rx.h (OPTIMIZATION_OPTIONS): Remove.
      	* config/s390/s390-protos.h (optimization_options): Remove.
      	* config/s390/s390.c (optimization_options): Rename to
      	s390_option_optimization.  Make static.  Don't mark size parameter
      	unused.
      	(TARGET_OPTION_OPTIMIZATION): Define.
      	* config/s390/s390.h (OPTIMIZATION_OPTIONS): Remove.
      	* config/sh/sh-protos.h (sh_optimization_options): Remove.
      	* config/sh/sh.c (TARGET_OPTION_OPTIMIZATION): Define.
      	(sh_optimization_options): Rename to sh_option_optimization.  Make
      	static.  Don't mark parameters unused.
      	* config/sh/sh.h (OPTIMIZATION_OPTIONS): Remove.
      	* config/spu/spu-protos.h (spu_optimization_options): Remove.
      	* config/spu/spu.c (TARGET_OPTION_OPTIMIZATION): Define.
      	(spu_optimization_options): Rename to spu_option_optimization.
      	Make static.
      	* config/spu/spu.h (OPTIMIZATION_OPTIONS): Remove.
      	* config/v850/v850.c (TARGET_OPTION_OPTIMIZATION): Define.
      	(v850_option_optimization): New.
      	* config/v850/v850.h (OPTIMIZATION_OPTIONS): Remove.
      	* config/xtensa/xtensa.c (TARGET_OPTION_OPTIMIZATION): Define.
      	(xtensa_option_optimization): New.
      	* config/xtensa/xtensa.h (OPTIMIZATION_OPTIONS): Remove.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164335 138bc75d-0d04-0410-961f-82ee72b054a4
      02e53c17
    • jsm28's avatar
      * doc/tm.texi.in (OVERRIDE_OPTIONS): Remove documentation. · 4c834714
      jsm28 authored
      	(C_COMMON_OVERRIDE_OPTIONS): Don't refer to OVERRIDE_OPTIONS.
      	* doc/tm.texi: Regenerate.
      	* system.h (OVERRIDE_OPTIONS): Poison.
      	* target.def (override): Default to hook_void_void.
      	* targhooks.c (default_target_option_override): Remove.
      	* genmodes.c, machmode.def: Update comments mentioning
      	OVERRIDE_OPTIONS.
      	* config/alpha/alpha-modes.def: Update comment mentioning
      	alpha_override_options.
      	* config/alpha/alpha-protos.h (override_options): Remove.
      	* config/alpha/alpha.c (override_options): Rename to
      	alpha_option_override.  Call SUBTARGET_OVERRIDE_OPTIONS.  Make
      	static.
      	(TARGET_OPTION_OVERRIDE): Define.
      	* config/alpha/alpha.h (OVERRIDE_OPTIONS): Remove.
      	* config/alpha/vms.h (SUBTARGET_OVERRIDE_OPTIONS): Define instead
      	of OVERRIDE_OPTIONS.
      	* config/arc/arc-protos.h (arc_init): Remove.
      	* config/arc/arc.c (TARGET_OPTION_OVERRIDE): Define.
      	(arc_init): Rename to arc_option_override.  Make static.
      	* config/arc/arc.h (ARC_EXTENSION_CPU): Correct comment.
      	(OVERRIDE_OPTIONS): Remove.
      	* config/arm/arm-protos.h (arm_override_options): Remove.
      	* config/arm/arm.c (TARGET_OPTION_OVERRIDE): Define.
      	(arm_override_options): Rename to arm_option_override.  Make
      	static.  Call SUBTARGET_OVERRIDE_OPTIONS.
      	* config/arm/arm.h (OVERRIDE_OPTIONS): Remove.
      	* config/arm/arm.md: Update comment referring to
      	arm_override_options.
      	* config/arm/vxworks.h (SUBTARGET_OVERRIDE_OPTIONS): Define
      	instead of OVERRIDE_OPTIONS.
      	* config/avr/avr-protos.h (avr_override_options): Remove.
      	* config/avr/avr.c (TARGET_OPTION_OVERRIDE): Define.
      	(avr_override_options): Rename to avr_option_override.  Make
      	static.
      	* config/avr/avr.h (OVERRIDE_OPTIONS): Remove.
      	* config/bfin/bfin-protos.h (override_options): Remove (twice).
      	* config/bfin/bfin.c (override_options): Rename to
      	bfin_option_override.  Make static.
      	(TARGET_OPTION_OVERRIDE): Define.
      	* config/bfin/bfin.h (OVERRIDE_OPTIONS): Remove.
      	* config/cris/cris-protos.h (cris_override_options): Remove.
      	* config/cris/cris.c (TARGET_OPTION_OVERRIDE): Define.
      	(cris_override_options): Rename to cris_option_override.  Make
      	static.
      	* config/cris/cris.h (OVERRIDE_OPTIONS): Remove.
      	* config/frv/frv-protos.h (frv_override_options): Remove.
      	* config/frv/frv.c (TARGET_OPTION_OVERRIDE): Define.
      	(frv_override_options): Rename to frv_option_override.  Make
      	static.
      	* config/frv/frv.h (OVERRIDE_OPTIONS): Remove.
      	* config/h8300/h8300-protos.h (h8300_init_once): Remove.
      	* config/h8300/h8300.c (h8300_init_once): Rename to
      	h8300_option_override.  Make static.
      	(TARGET_OPTION_OVERRIDE): Define.
      	* config/h8300/h8300.h (OVERRIDE_OPTIONS): Remove.
      	* config/i386/i386-protos.h (override_options): Remove.
      	* config/i386/i386.c (override_options): Rename to
      	ix86_option_override_internal.  Make static.  Comments referring
      	to this function and callers changed.
      	(ix86_option_override): New.
      	(TARGET_OPTION_OVERRIDE): Define.
      	* config/i386/i386.h (OVERRIDE_OPTION): Remove.
      	* config/i386/linux64.h (DEFAULT_PCC_STRUCT_RETURN): Update
      	comment.
      	* config/ia64/ia64.c (ia64_file_start): Update comment referring
      	to ia64_override_options.
      	* config/iq2000/iq2000-protos.h (override_options): Remove.
      	* config/iq2000/iq2000.c (TARGET_OPTION_OVERRIDE): Define.
      	(override_options): Rename to iq2000_option_override.  Make
      	static.
      	* config/iq2000/iq2000.h (OVERRIDE_OPTIONS): Remove.
      	* config/lm32/lm32-protos.h (lm32_override_options): Remove.
      	* config/lm32/lm32.c (TARGET_OPTION_OVERRIDE): Define.
      	(lm32_override_options): Rename to lm32_option_override.  Make
      	static.
      	* config/lm32/lm32.h (OVERRIDE_OPTIONS): Remove.
      	* config/m32r/m32r.c (TARGET_OPTION_OVERRIDE): Define.
      	(m32r_option_override): New.
      	(m32r_init): Update comment.
      	* config/m32r/m32r.h (OVERRIDE_OPTIONS): Remove.
      	* config/m68hc11/m68hc11-protos.h (m68hc11_override_options):
      	Remove.
      	* config/m68hc11/m68hc11.c (TARGET_OPTION_OVERRIDE): Define.
      	(m68hc11_override_options): Rename to m68hc11_option_override.
      	Make static.  Return void.
      	* config/m68hc11/m68hc11.h (OVERRIDE_OPTIONS): Remove.
      	* config/m68k/m68k-protos.h (override_options): Remove.
      	* config/m68k/m68k.c (TARGET_OPTION_OVERRIDE): Define.
      	(override_options): Rename to m68k_option_override.  Make static.
      	* config/m68k/m68k.h (OVERRIDE_OPTIONS): Remove.
      	* config/mcore/mcore-protos.h (mcore_override_options): Remove.
      	* config/mcore/mcore.c (TARGET_OPTION_OVERRIDE): Define.
      	(mcore_override_options): Rename to mcore_option_override.  Make
      	static.
      	* config/mcore/mcore.h (OVERRIDE_OPTIONS): Remove.
      	* config/mep/mep-protos.h (mep_override_options): Remove.
      	* config/mep/mep.c (TARGET_OPTION_OVERRIDE): Define.
      	(mep_override_options): Rename to mep_option_override.  Make
      	static.
      	* config/mep/mep.h (OVERRIDE_OPTIONS): Remove.
      	* config/mmix/mmix-protos.h (mmix_override_options): Remove.
      	* config/mmix/mmix.c (TARGET_OPTION_OVERRIDE): Define.
      	(mmix_override_options): Rename to mmix_option_override.  Make
      	static.
      	* config/mmix/mmix.h (OVERRIDE_OPTIONS): Remove.
      	* config/mn10300/mn10300-protos.h (mn10300_override_options):
      	Remove.
      	* config/mn10300/mn10300.c (TARGET_OPTION_OVERRIDE): Define.
      	(mn10300_override_options): Rename to mn10300_option_override.
      	Make static.
      	* config/mn10300/mn10300.h (OVERRIDE_OPTIONS): Remove.
      	* config/moxie/moxie-protos.h (moxie_override_options): Remove.
      	* config/moxie/moxie.c (moxie_override_options): Rename to
      	moxie_option_override.  Make static.
      	(TARGET_OPTION_OVERRIDE): Define.
      	* config/moxie/moxie.h (OVERRIDE_OPTIONS): Remove.
      	* config/picochip/picochip-protos.h (picochip_override_options):
      	Remove.  Update comment referring to picochip_override_options.
      	* config/picochip/picochip.c (TARGET_OPTION_OVERRIDE): Define.
      	(picochip_override_options): Rename to picochip_option_override.
      	Make static.  Update comment and definition of
      	TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE.
      	* config/picochip/picochip.h (OVERRIDE_OPTIONS): Remove.
      	* config/rs6000/aix43.h (SUBTARGET_OVERRIDE_OPTIONS): Update
      	comment.
      	* config/rs6000/aix51.h (SUBTARGET_OVERRIDE_OPTIONS): Update
      	comment.
      	* config/rs6000/aix52.h (SUBTARGET_OVERRIDE_OPTIONS): Update
      	comment.
      	* config/rs6000/aix53.h (SUBTARGET_OVERRIDE_OPTIONS): Update
      	comment.
      	* config/rs6000/aix61.h (SUBTARGET_OVERRIDE_OPTIONS): Update
      	comment.
      	* config/rs6000/linux64.h (OPTION_TARGET_CPU_DEFAULT): Define
      	instead of OVERRIDE_OPTIONS.
      	* config/rs6000/rs6000-modes.def: Update comment referring to
      	rs6000_override_options.
      	* config/rs6000/rs6000-protos.h (rs6000_override_options): Remove.
      	* config/rs6000/rs6000.c (TARGET_OPTION_OVERRIDE): Define.
      	(rs6000_override_options): Rename to
      	rs6000_option_override_internal.  Make static.  Commented
      	referring to rs6000_override_options and OVERRIDE_OPTIONS updated.
      	(rs6000_option_override): New.
      	* config/rs6000/rs6000.h (OPTION_TARGET_CPU_DEFAULT): Define
      	instead of OVERRIDE_OPTIONS.
      	* config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Update
      	comment.
      	* config/s390/s390-protos.h (override_options): Remove.
      	* config/s390/s390.c (override_options): Rename to
      	s390_option_override.  Make static.
      	(TARGET_OPTION_OVERRIDE): Define.
      	* config/s390/s390.h (OVERRIDE_OPTIONS): Remove.
      	* config/score/score-protos.h (score_override_options): Remove.
      	* config/score/score.c (TARGET_OPTION_OVERRIDE): Define.
      	(score_override_options): Rename to score_option_override.  Make
      	static.
      	* config/score/score.h (OVERRIDE_OPTIONS): Remove.
      	Update comment referring to override_options.
      	* config/score/score3.c (score3_override_options): Rename to
      	score3_option_override.
      	* config/score/score3.h (score3_override_options): Rename to
      	score3_option_override.
      	* config/score/score7.c (score7_override_options): Rename to
      	score7_option_override.
      	* config/score/score7.h (score7_override_options): Rename to
      	score7_option_override.
      	* config/sh/sh.c: Update comments referring to OVERRIDE_OPTIONS.
      	* config/sparc/sparc.c (TARGET_OPTION_OVERRIDE): Define.
      	(sparc_override_options): Rename to sparc_option_override.  Make
      	static.  Call SUBTARGET_OVERRIDE_OPTIONS.
      	* config/sparc/sparc.h (OVERRIDE_OPTIONS): Remove.
      	* config/sparc/vxworks.h (SUBTARGET_OVERRIDE_OPTIONS): Define
      	instead of OVERRIDE_OPTIONS.
      	* config/spu/spu-protos.h (spu_override_options): Remove.
      	* config/spu/spu.c (TARGET_OPTION_OVERRIDE): Define.
      	(spu_override_options): Rename to spu_option_override.  Make
      	static.
      	* config/spu/spu.h (OVERRIDE_OPTIONS): Remove.
      	* config/vax/elf.h (SUBTARGET_OVERRIDE_OPTIONS): Define instead of
      	OVERRIDE_OPTIONS.
      	* config/vax/vax-protos.h (override_options): Remove.
      	* config/vax/vax.c (TARGET_OPTION_OVERRIDE): Define.
      	(override_options): Rename to vax_option_override.  Make static.
      	Call SUBTARGET_OVERRIDE_OPTIONS.
      	* config/vax/vax.h (OVERRIDE_OPTIONS): Remove.
      	* config/vxworks.c: Update comment referring to OVERRIDE_OPTIONS.
      	* config/vxworks.h: Update comment referring to OVERRIDE_OPTIONS.
      	* config/xtensa/xtensa-protos.h (override_options): Remove.
      	* config/xtensa/xtensa.c (TARGET_OPTION_OVERRIDE): Define.
      	(override_options): Rename to xtensa_option_override.  Make
      	static.
      	* config/xtensa/xtensa.h (OVERRIDE_OPTIONS): Remove.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164334 138bc75d-0d04-0410-961f-82ee72b054a4
      4c834714
  18. 12 Sep, 2010 1 commit
  19. 06 Sep, 2010 1 commit
  20. 30 Jul, 2010 1 commit
    • jsm28's avatar
      * common.opt (-G): Don't define option here. · d1e5a65f
      jsm28 authored
      	* config/g.opt: New.
      	* config.gcc: Use g.opt for alpha, frv, ia64, lm32, m32r, mips,
      	rs6000/powerpc and score targets.
      	* opts.c (common_handle_option): Don't handle -G here.
      	* config/alpha/alpha.c (alpha_handle_option): Handle -G.
      	* config/frv/frv.c (frv_handle_option): Handle -G.
      	* config/ia64/ia64.c (ia64_handle_option): Handle -G.
      	* config/lm32/lm32.c (lm32_handle_option, TARGET_HANDLE_OPTION):
      	New.
      	* config/m32r/m32r.c (m32r_handle_option): Handle -G.
      	* config/mips/mips.c (mips_handle_option): Handle -G.
      	* config/rs6000/rs6000.c (rs6000_handle_option) Handle -G.
      	* config/score/score.c (score_handle_option): Handle -G.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@162721 138bc75d-0d04-0410-961f-82ee72b054a4
      d1e5a65f
  21. 15 Jul, 2010 1 commit
    • froydnj's avatar
      gcc/ · 1767a056
      froydnj authored
      	* tree.h (DECL_CHAIN): Define.
      	* alias.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
      	* c-decl.c: Likewise.
      	* c-parser.c: Likewise.
      	* c-typeck.c: Likewise.
      	* cfgexpand.c: Likewise.
      	* cgraph.c: Likewise.
      	* cgraphunit.c: Likewise.
      	* combine.c: Likewise.
      	* config/alpha/alpha.c: Likewise.
      	* config/arm/arm.c: Likewise.
      	* config/frv/frv.c: Likewise.
      	* config/i386/i386.c: Likewise.
      	* config/i386/winnt-cxx.c: Likewise.
      	* config/ia64/ia64.c: Likewise.
      	* config/iq2000/iq2000.c: Likewise.
      	* config/mep/mep.c: Likewise.
      	* config/mips/mips.c: Likewise.
      	* config/pa/som.h: Likewise.
      	* config/rs6000/rs6000.c: Likewise.
      	* config/s390/s390.c: Likewise.
      	* config/sh/sh.c: Likewise.
      	* config/sh/symbian-cxx.c: Likewise.
      	* config/sparc/sparc.c: Likewise.
      	* config/spu/spu.c: Likewise.
      	* config/stormy16/stormy16.c: Likewise.
      	* config/vxworks.c: Likewise.
      	* config/xtensa/xtensa.c: Likewise.
      	* coverage.c: Likewise.
      	* dbxout.c: Likewise.
      	* dwarf2out.c: Likewise.
      	* emit-rtl.c: Likewise.
      	* expr.c: Likewise.
      	* function.c: Likewise.
      	* gimple-low.c: Likewise.
      	* gimple-pretty-print.c: Likewise.
      	* gimplify.c: Likewise.
      	* integrate.c: Likewise.
      	* ipa-inline.c: Likewise.
      	* ipa-prop.c: Likewise.
      	* ipa-split.c: Likewise.
      	* ipa-struct-reorg.c: Likewise.
      	* ipa-type-escape.c: Likewise.
      	* langhooks.c: Likewise.
      	* lto-cgraph.c: Likewise.
      	* omp-low.c: Likewise.
      	* stor-layout.c: Likewise.
      	* tree-cfg.c: Likewise.
      	* tree-complex.c: Likewise.
      	* tree-dfa.c: Likewise.
      	* tree-dump.c: Likewise.
      	* tree-inline.c: Likewise.
      	* tree-mudflap.c: Likewise.
      	* tree-nested.c: Likewise.
      	* tree-object-size.c: Likewise.
      	* tree-pretty-print.c: Likewise.
      	* tree-sra.c: Likewise.
      	* tree-ssa-live.c: Likewise.
      	* tree-ssa-loop-niter.c: Likewise.
      	* tree-ssa-math-opts.c: Likewise.
      	* tree-ssa-reassoc.c: Likewise.
      	* tree-ssa-sccvn.c: Likewise.
      	* tree-ssa-structalias.c: Likewise.
      	* tree-tailcall.c: Likewise.
      	* tree-vrp.c: Likewise.
      	* tree.c: Likewise.
      	* var-tracking.c: Likewise.
      	* varasm.c: Likewise.
      
      gcc/ada/
      	* gcc-interface/decl.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
      	* gcc-interface/trans.c: Likewise.
      	* gcc-interface/utils.c: Likewise.
      	* gcc-interface/utils2.c: Likewise.
      
      gcc/c-family/
      	* c-common.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
      	* c-format.c: Likewise.
      
      gcc/cp/
      	* cp-tree.h: Carefully replace TREE_CHAIN with DECL_CHAIN.
      	* call.c: Likewise.
      	* class.c: Likewise.
      	* cp-gimplify.c: Likewise.
      	* decl.c: Likewise.
      	* decl2.c: Likewise.
      	* init.c: Likewise.
      	* mangle.c: Likewise.
      	* name-lookup.c: Likewise.
      	* optimize.c: Likewise.
      	* parser.c: Likewise.
      	* pt.c: Likewise.
      	* rtti.c: Likewise.
      	* search.c: Likewise.
      	* semantics.c: Likewise.
      	* typeck.c: Likewise.
      	* typeck2.c: Likewise.
      
      gcc/fortran/
      	* f95-lang.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
      	* trans-common.c: Likewise.
      	* trans-decl.c: Likewise.
      	* trans-types.c: Likewise.
      	* trans.c: Likewise.
      
      gcc/java/
      	* java-tree.h: Carefully replace TREE_CHAIN with DECL_CHAIN.
      	* boehm.c: Likewise.
      	* class.c: Likewise.
      	* decl.c: Likewise.
      	* expr.c: Likewise.
      	* jcf-parse.c: Likewise.
      	* typeck.c: Likewise.
      	* verify-glue.c: Likewise.
      
      gcc/objc/
      	* objc-act.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
      
      gcc/testsuite/
      	* g++.dg/plugin/attribute_plugin.c: Carefully replace TREE_CHAIN
      	with DECL_CHAIN.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@162223 138bc75d-0d04-0410-961f-82ee72b054a4
      1767a056
  22. 08 Jul, 2010 1 commit
    • manu's avatar
      2010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org> · 0b205f4c
      manu authored
      	* toplev.h: Do not include diagnostic-core.h.
      	Include diagnostic-core.h in every file that includes toplev.h.
      	* c-tree.h: Do not include toplev.h.
      	* pretty-print.h: Update comment.
      	* Makefile.in: Update dependencies.
      	* alias.c: Include diagnostic-core.h in every file that includes
      	toplev.h.
      	* attribs.c: Likewise.
      	* auto-inc-dec.c: Likewise.
      	* bb-reorder.c: Likewise.
      	* bt-load.c: Likewise.
      	* caller-save.c: Likewise.
      	* calls.c: Likewise.
      	* cfg.c: Likewise.
      	* cfganal.c: Likewise.
      	* cfgbuild.c: Likewise.
      	* cfgcleanup.c: Likewise.
      	* cfghooks.c: Likewise.
      	* cfgloop.c: Likewise.
      	* combine.c: Likewise.
      	* config/alpha/alpha.c: Likewise.
      	* config/arc/arc.c: Likewise.
      	* config/arm/arm.c: Likewise.
      	* config/arm/pe.c: Likewise.
      	* config/avr/avr.c: Likewise.
      	* config/bfin/bfin.c: Likewise.
      	* config/cris/cris.c: Likewise.
      	* config/crx/crx.c: Likewise.
      	* config/darwin-c.c: Likewise.
      	* config/darwin.c: Likewise.
      	* config/fr30/fr30.c: Likewise.
      	* config/frv/frv.c: Likewise.
      	* config/h8300/h8300.c: Likewise.
      	* config/host-darwin.c: Likewise.
      	* config/i386/i386.c: Likewise.
      	* config/i386/netware.c: Likewise.
      	* config/i386/nwld.c: Likewise.
      	* config/i386/winnt-cxx.c: Likewise.
      	* config/i386/winnt-stubs.c: Likewise.
      	* config/i386/winnt.c: Likewise.
      	* config/ia64/ia64-c.c: Likewise.
      	* config/ia64/ia64.c: Likewise.
      	* config/iq2000/iq2000.c: Likewise.
      	* config/lm32/lm32.c: Likewise.
      	* config/m32c/m32c-pragma.c: Likewise.
      	* config/m32c/m32c.c: Likewise.
      	* config/m32r/m32r.c: Likewise.
      	* config/m68hc11/m68hc11.c: Likewise.
      	* config/m68k/m68k.c: Likewise.
      	* config/mcore/mcore.c: Likewise.
      	* config/mep/mep-pragma.c: Likewise.
      	* config/mep/mep.c: Likewise.
      	* config/mmix/mmix.c: Likewise.
      	* config/mn10300/mn10300.c: Likewise.
      	* config/moxie/moxie.c: Likewise.
      	* config/pa/pa.c: Likewise.
      	* config/pdp11/pdp11.c: Likewise.
      	* config/picochip/picochip.c: Likewise.
      	* config/rs6000/rs6000-c.c: Likewise.
      	* config/rs6000/rs6000.c: Likewise.
      	* config/rx/rx.c: Likewise.
      	* config/s390/s390.c: Likewise.
      	* config/score/score.c: Likewise.
      	* config/score/score3.c: Likewise.
      	* config/score/score7.c: Likewise.
      	* config/sh/sh.c: Likewise.
      	* config/sh/symbian-base.c: Likewise.
      	* config/sh/symbian-c.c: Likewise.
      	* config/sh/symbian-cxx.c: Likewise.
      	* config/sol2-c.c: Likewise.
      	* config/sol2.c: Likewise.
      	* config/sparc/sparc.c: Likewise.
      	* config/spu/spu.c: Likewise.
      	* config/stormy16/stormy16.c: Likewise.
      	* config/v850/v850-c.c: Likewise.
      	* config/v850/v850.c: Likewise.
      	* config/vax/vax.c: Likewise.
      	* config/vxworks.c: Likewise.
      	* config/xtensa/xtensa.c: Likewise.
      	* convert.c: Likewise.
      	* cse.c: Likewise.
      	* cselib.c: Likewise.
      	* dbgcnt.c: Likewise.
      	* dbxout.c: Likewise.
      	* ddg.c: Likewise.
      	* dominance.c: Likewise.
      	* emit-rtl.c: Likewise.
      	* explow.c: Likewise.
      	* expmed.c: Likewise.
      	* fixed-value.c: Likewise.
      	* fold-const.c: Likewise.
      	* fwprop.c: Likewise.
      	* gcse.c: Likewise.
      	* ggc-common.c: Likewise.
      	* ggc-page.c: Likewise.
      	* ggc-zone.c: Likewise.
      	* gimple-low.c: Likewise.
      	* gimplify.c: Likewise.
      	* graph.c: Likewise.
      	* haifa-sched.c: Likewise.
      	* ifcvt.c: Likewise.
      	* implicit-zee.c: Likewise.
      	* integrate.c: Likewise.
      	* ira-build.c: Likewise.
      	* ira-color.c: Likewise.
      	* ira-conflicts.c: Likewise.
      	* ira-costs.c: Likewise.
      	* ira-lives.c: Likewise.
      	* ira.c: Likewise.
      	* lists.c: Likewise.
      	* loop-doloop.c: Likewise.
      	* loop-iv.c: Likewise.
      	* lto-opts.c: Likewise.
      	* lto-symtab.c: Likewise.
      	* main.c: Likewise.
      	* modulo-sched.c: Likewise.
      	* optabs.c: Likewise.
      	* params.c: Likewise.
      	* plugin.c: Likewise.
      	* postreload-gcse.c: Likewise.
      	* postreload.c: Likewise.
      	* predict.c: Likewise.
      	* profile.c: Likewise.
      	* real.c: Likewise.
      	* regcprop.c: Likewise.
      	* reginfo.c: Likewise.
      	* regmove.c: Likewise.
      	* reorg.c: Likewise.
      	* resource.c: Likewise.
      	* rtl.c: Likewise.
      	* rtlanal.c: Likewise.
      	* sched-deps.c: Likewise.
      	* sched-ebb.c: Likewise.
      	* sched-rgn.c: Likewise.
      	* sdbout.c: Likewise.
      	* sel-sched-dump.c: Likewise.
      	* sel-sched-ir.c: Likewise.
      	* simplify-rtx.c: Likewise.
      	* stmt.c: Likewise.
      	* stor-layout.c: Likewise.
      	* store-motion.c: Likewise.
      	* targhooks.c: Likewise.
      	* tree-cfg.c: Likewise.
      	* tree-cfgcleanup.c: Likewise.
      	* tree-dump.c: Likewise.
      	* tree-eh.c: Likewise.
      	* tree-inline.c: Likewise.
      	* tree-nomudflap.c: Likewise.
      	* tree-object-size.c: Likewise.
      	* tree-optimize.c: Likewise.
      	* tree-outof-ssa.c: Likewise.
      	* tree-phinodes.c: Likewise.
      	* tree-profile.c: Likewise.
      	* tree-ssa-ccp.c: Likewise.
      	* tree-ssa-coalesce.c: Likewise.
      	* tree-ssa-live.c: Likewise.
      	* tree-ssa-loop-niter.c: Likewise.
      	* tree-ssa-loop-prefetch.c: Likewise.
      	* tree-ssa-loop.c: Likewise.
      	* tree-ssa-structalias.c: Likewise.
      	* tree-ssa-uninit.c: Likewise.
      	* tree-ssa.c: Likewise.
      	* tree-vect-data-refs.c: Likewise.
      	* tree-vect-loop-manip.c: Likewise.
      	* tree-vect-loop.c: Likewise.
      	* tree-vect-patterns.c: Likewise.
      	* tree-vect-stmts.c: Likewise.
      	* tree-vrp.c: Likewise.
      	* varasm.c: Likewise.
      	* vec.c: Likewise.
      	* web.c: Likewise.
      	* xcoffout.c: Likewise.
      
      c-family/
      	* c-common.h: Include diagnostic-core.h. Error if already
      	included.
      	* c-semantics.c: Do not define GCC_DIAG_STYLE here.
      cp/
      	* cp-tree.h: Do not include toplev.h.
      	
      java/
      	* boehm.c: Include diagnostic-core.h in every file that includes
      	toplev.h.
      	* class.c: Likewise.
      	* constants.c: Likewise.
      	* decl.c: Likewise.
      	* except.c: Likewise.
      	* expr.c: Likewise.
      	* jcf-parse.c: Likewise.
      	* mangle.c: Likewise.
      	* mangle_name.c: Likewise.
      	* resource.c: Likewise.
      	* typeck.c: Likewise.
      	* verify-glue.c: Likewise.
      ada/
      	* gcc-interface/utils.c: Include diagnostic-core.h in every file
      	that includes toplev.h.
      lto/
      	* lto-coff.c: Include diagnostic-core.h in every file that
      	includes toplev.h.
      	* lto-elf.c: Likewise.
      	* lto-lang.c: Likewise.
      	* lto-macho.c: Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161943 138bc75d-0d04-0410-961f-82ee72b054a4
      0b205f4c
  23. 04 Jul, 2010 1 commit
    • rsandifo's avatar
      gcc/ · 6b531606
      rsandifo authored
      	* optabs.h (reload_in_optab, reload_out_optab, code_to_optab)
      	(vcond_gen_code, vcondu_gen_code, movmem_optab, setmem_optab)
      	(cmpstr_optab, cmpstrn_optab, cmpmem_optab, sync_add_optab)
      	(sync_sub_optab, sync_ior_optab, sync_and_optab, sync_xor_optab)
      	(sync_nand_optab, sync_old_add_optab, sync_old_sub_optab)
      	(sync_old_ior_optab, sync_old_and_optab, sync_old_xor_optab)
      	(sync_old_nand_optab, sync_new_add_optab, sync_new_sub_optab)
      	(sync_new_ior_optab, sync_new_and_optab, sync_new_xor_optab)
      	(sync_new_nand_optab): Redefine as macros.
      	(sync_compare_and_swap, sync_lock_test_and_set, sync_lock_release):
      	Delete.
      	(direct_optab_index): New enum.
      	(direct_optab_d): New structure.
      	(direct_optab): New typedef.
      	(direct_optab_table): Declare.
      	(direct_optab_handler, set_direct_optab_handler): New functions.
      	(sync_compare_and_swap_optab, sync_lock_test_and_set_optab)
      	(sync_lock_release_optab): New macros.
      	* optabs.c (direct_optab_table): New variable.
      	(movcc_gen_code, vcond_gen_code, vcondu_gen_code): Delete.
      	(prepare_cmp_insn): Use direct_optab_handler for cmpmem_optab,
      	cmpstr_optab and cmpstrn_optab.
      	(emit_conditional_move): Likewise for movcc_optab.
      	(can_conditionally_move_p): Likewise for movcc_gen_code.
      	(init_insn_codes): Clear direct_optab_table.
      	(init_optabs): Don't initialize the new "direct optabs" here.
      	(get_vcond_icode): Use direct_optab_handler for vcondu_gen_code and
      	vcond_gen_code.
      	(expand_val_compare_and_swap): Likewise sync_compare_and_swap_optab.
      	(expand_bool_compare_and_swap): Likewise sync_compare_and_swap_optab.
      	(expand_compare_and_swap_loop): Likewise sync_compare_and_swap_optab.
      	(expand_sync_operation): Likewise other sync_*_optabs.
      	(expand_sync_fetch_operation): Likewise.  Rename sync_compare_and_swap
      	to sync_compare_and_swap_optab.
      	(expand_sync_lock_test_and_set): Use direct_optab_handler for
      	sync_lock_test_and_set and sync_compare_and_swap, adding "_optab"
      	to the names of both.
      	* builtins.c (expand_builtin_strcmp): Use direct_optab_handler for
      	cmpstr_optab and cmpstrn_optab.
      	(expand_builtin_lock_release): Likewise sync_lock_release.
      	* expr.c (movmem_optab, setmem_optab, cmpstr_optab, cmpstrn_optab)
      	(cmpmem_optab, sync_add_optab, sync_sub_optab, sync_ior_optab)
      	(sync_and_optab, sync_xor_optab, sync_nand_optab, sync_old_add_optab)
      	(sync_old_sub_optab, sync_old_ior_optab, sync_old_and_optab)
      	(sync_old_xor_optab, sync_old_nand_optab, sync_new_add_optab)
      	(sync_new_sub_optab, sync_new_ior_optab, sync_new_and_optab)
      	(sync_new_xor_optab, sync_new_nand_optab, sync_compare_and_swap)
      	(sync_lock_test_and_set, sync_lock_release): Delete.
      	(emit_block_move_via_movmem): Use direct_optab_handler for movmem_optab.
      	(emit_block_move_via_setmem): Use direct_optab_handler for setmem_optab.
      	* genopinit.c (optabs): Use set_direct_optab_handler for the new
      	macro optabs.
      	* omp-low.c (expand_omp_atomic_fetch_op): Update the type of
      	the "optab" local variable.  Use direct_optab_handler for optab and
      	sync_compare_and_swap_optab.
      	* reload1.c (reload_in_optab, reload_out_optab): Delete.
      	* targhooks.c (default_secondary_reload): Use direct_optab_handler for
      	reload_in_optab and reload_out_optab.
      	* config/alpha/alpha.c (alpha_secondary_reload): Likewise.
      	* config/frv/frv.c (frv_alloc_temp_reg): Likewise.
      	* config/pa/pa.c (pa_secondary_reload): Likewise.
      	* java/builtins.c (compareAndSwapInt_builtin): Use direct_optab_handler
      	for sync_compare_and_swap, renaming it to sync_compare_and_swap_optab.
      	(compareAndSwapLong_builtin, compareAndSwapObject_builtin): Likewise.
      	(VMSupportsCS8_builtin): Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161810 138bc75d-0d04-0410-961f-82ee72b054a4
      6b531606
  24. 30 Jun, 2010 1 commit
    • amylaar's avatar
      PR other/44566 · 964229b7
      amylaar authored
              * coretypes.h [!USED_FOR_TARGET] (reg_class_t): Define.
              * target.def (struct gcc_target): Replace enum reg_class with
              reg_class_t in hook argument / return types.
              * doc/tm.texi.in (TARGET_SECONDARY_RELOAD): Likewise.
              (TARGET_IRA_COVER_CLASSES, TARGET_MEMORY_MOVE_COST): Likewise.
              (TARGET_BRANCH_TARGET_REGISTER_CLASS): Likewise.
              * targhooks.h (default_branch_target_register_class): Likewise.
              (default_ira_cover_classes, default_secondary_reload): Likewise.
              (default_memory_move_cost, default_register_move_cost): Likewise.
              * targhooks.c (default_branch_target_register_class): Likewise.
              (default_ira_cover_classes, default_secondary_reload): Likewise.
              (default_memory_move_cost, default_register_move_cost): Likewise.
              * reload.c (push_secondary_reload, secondary_reload_class): Likewise.
              * bt-load.c (branch_target_load_optimize): Likewise.
              * ira.c (setup_cover_and_important_classes): Likewise.
              * ira-costs.c (copy_cost): Likewise.
              * reload1.c (emit_input_reload_insns): Likewise.
              * config/alpha/alpha.c (alpha_secondary_reload): Likewise.
              * config/frv/frv.c (frv_secondary_reload): Likewise.
              * config/s390/s390.c (s390_secondary_reload): Likewise.
              * config/i386/i386.c (i386_ira_cover_classes): Likewise.
              (ix86_secondary_reload, ix86_memory_move_cost): Likewise.
              (ix86_register_move_cost): Likewise.
              * config/sh/sh-protos.h (sh_secondary_reload): Likewise.
              * config/sh/sh.c (sh_target_reg_class, sh_secondary_reload): Likewise.
              * config/xtensa/xtensa.c (xtensa_secondary_reload): Likewise.
              * config/xtensa/xtensa-protos.h (xtensa_secondary_reload): Likewise.
              * config/rs6000/rs6000.c (rs6000_secondary_reload): Likewise.
              (rs6000_ira_cover_classes): Likewise.
              * config/picochip/picochip.c (picochip_secondary_reload): Likewise.
              * config/picochip/picochip-protos.h (picochip_secondary_reload):
              Likewise.
              * config/pa/pa.c (pa_secondary_reload): Likewise.
              * config/mips/mips.c (mips_ira_cover_classes): Likewise.
              * config/bfin/bfin.c (bfin_secondary_reload): Likewise.
              * config/ia64/ia64.c (ia64_register_move_cost): Likewise.
              * doc/tm.texi: Regenerate.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161633 138bc75d-0d04-0410-961f-82ee72b054a4
      964229b7
  25. 17 Jun, 2010 1 commit
    • froydnj's avatar
      * config/frv/frv-protos.h (frv_print_operand): Delete. · 70b366a2
      froydnj authored
      	(frv_print_operand_address): Delete.
      	* config/frv/frv.h (PRINT_OPERAND): Delete.
      	(PRINT_OPERAND_PUNCT_VALID_P): Delete.
      	(PRINT_OPERAND_ADDRESS): Delete.
      	* config/frv/frv.c (frv_print_operand_address): Make static.
      	(frv_print_operand): Make static.
      	(frv_print_operand_punct_valid_p): New function.
      	(TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS):
      	(TARGET_PRINT_OPERAND_ADDRESS): Define.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160937 138bc75d-0d04-0410-961f-82ee72b054a4
      70b366a2
  26. 08 Jun, 2010 1 commit
    • lauras's avatar
      gcc/ada: · ba72912a
      lauras authored
      2010-06-08  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
      
      	* gcc-interface/utils.c (init_gnat_to_gnu): Use typed GC
      	allocation.
      	(init_dummy_type): Likewise.
      	(gnat_pushlevel): Likewise.
      
      	* gcc-interface/trans.c (Attribute_to_gnu): Likewise.
      	(Subprogram_Body_to_gnu): Likewise.
      	(Compilation_Unit_to_gnu): Likewise.
      	(start_stmt_group): Likewise.
      	(extract_encoding): Likewise.
      	(decode_name): Likewise.
      
      	* gcc-interface/misc.c (gnat_printable_name): Likewise.
      
      	* gcc-interface/decl.c (annotate_value): Likewise.
      
      	* gcc-interface/ada-tree.h (struct lang_type): Add variable_size
      	GTY option.
      	(struct lang_decl): Likewise.
      	(SET_TYPE_LANG_SPECIFIC): Use typed GC allocation.
      	(SET_DECL_LANG_SPECIFIC): Likewise.
      
      gcc/c-family:
      
      2010-06-08  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
      
      	* c-pragma.c (push_alignment): Use typed GC allocation.
      	(handle_pragma_push_options): Likewise.
      
      	* c-common.c (parse_optimize_options): Likewise.
      
      	* c-common.h (struct sorted_fields_type): Add variable_size ...
      ba72912a
  27. 21 May, 2010 1 commit
    • steven's avatar
      gcc/ChangeLog: · a7a46268
      steven authored
      	* tree.h: Include real.h and fixed-value.h as basic datatypes.
      	* dfp.c, convert.c, reload1.c, reginfo.c, tree-flow.h,
      	tree-ssa-threadedge.c, tree-ssanames.c, tree-loop-linear.c,
      	tree-into-ssa.c, tree-vect-generic.c, tree-ssa-structalias.c,
      	tree-ssa-loop-im.c, tree-dump.c, tree-complex.c, tree-ssa-uninit.c,
      	genrecog.c, tree-ssa-threadupdate.c, tree-ssa-loop-niter.c,
      	tree-pretty-print.c, tree-loop-distribution.c,
      	tree-ssa-loop-unswitch.c, c-lex.c, optabs.c, postreload-gcse.c,
      	tree-ssa-loop-manip.c, postreload.c, tree-ssa-loop-ch.c,
      	tree-tailcall.c, tree.c, reload.c, tree-scalar-evolution.c, rtlanal.c,
      	tree-phinodes.c, builtins.c, final.c, genoutput.c, fold-const.c,
      	tree-ssa-dse.c, genautomata.c, tree-ssa-uncprop.c, toplev.c,
      	tree-chrec.c, genemit.c, c-cppbuiltin.c, tree-ssa-sccvn.c,
      	tree-ssa-ccp.c, tree-ssa-loop-ivopts.c, mode-switching.c,
      	tree-call-cdce.c, cse.c, genpeep.c, tree-ssa-math-opts.c,
      	tree-ssa-dom.c, tree-nrv.c, tree-ssa-propagate.c, tree-ssa-alias.c,
      	tree-ssa-sink.c, jump.c, ifcvt.c, dwarf2out.c, expr.c, genattrtab.c,
      	genconditions.c, tree-ssa-loop-ivcanon.c, tree-ssa-loop.c,
      	tree-parloops.c, recog.c, tree-ssa-address.c, lcm.c, tree-eh.c,
      	gimple-pretty-print.c, c-pretty-print.c, print-rtl.c, gcse.c,
      	tree-if-conv.c, tree-data-ref.c, tree-affine.c, gimplify.c,
      	tree-ssa-phiopt.c, implicit-zee.c, expmed.c, tree-dfa.c, emit-rtl.c,
      	store-motion.c, cselib.c, tree-cfgcleanup.c, simplify-rtx.c,
      	tree-ssa-pre.c, genpreds.c, tree-mudflap.c, print-tree.c,
      	tree-ssa-copy.c, tree-ssa-forwprop.c, tree-ssa-dce.c, varasm.c,
      	tree-nested.c, tree-ssa.c, tree-ssa-loop-prefetch.c, rtl.c,
      	tree-inline.c, integrate.c, tree-optimize.c, tree-ssa-phiprop.c,
      	fixed-value.c, combine.c, tree-profile.c, c-common.c, sched-vis.c,
      	tree-cfg.c, passes.c, tree-ssa-reassoc.c, config/alpha/alpha.c,
      	config/frv/frv.c, config/s390/s390.c, config/m32c/m32c.c,
      	config/spu/spu.c, config/sparc/sparc.c, config/mep/mep.c,
      	config/m32r/m32r.c, config/rx/rx.c, config/i386/i386.c,
      	config/sh/sh.c, config/pdp11/pdp11.c, config/avr/avr.c,
      	config/crx/crx.c, config/xtensa/xtensa.c, config/stormy16/stormy16.c,
      	config/fr30/fr30.c, config/lm32/lm32.c, config/moxie/moxie.c,
      	config/m68hc11/m68hc11.c, config/cris/cris.c, config/iq2000/iq2000.c,
      	config/mn10300/mn10300.c, config/ia64/ia64.c, config/m68k/m68k.c,
      	config/rs6000/rs6000.c, config/picochip/picochip.c, config/darwin.c,
      	config/arc/arc.c, config/mcore/mcore.c, config/score/score3.c,
      	config/score/score7.c, config/score/score.c, config/arm/arm.c,
      	config/pa/pa.c, config/mips/mips.c, config/vax/vax.c,
      	config/h8300/h8300.c, config/v850/v850.c, config/mmix/mmix.c,
      	config/bfin/bfin.c:
      	Clean up redundant includes.
      	* Makefile.in: Update accordingly.
      
      java/ChangeLog:
      	* typeck.c, decl.c, jcf-parse.c, except.c, expr.c:
      
      cp/Changelog:
      	* error.c, tree.c, typeck2.c, cxx-pretty-print.c, mangle.c:
      	Clean up redundant includes.
      
      fortran/ChangeLog:
      	* trans-const.c, trans-types.c, trans-intrinsic.c:
      	Clean up redundant includes.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@159663 138bc75d-0d04-0410-961f-82ee72b054a4
      a7a46268
  28. 31 Oct, 2009 1 commit
  29. 22 Sep, 2009 1 commit
  30. 25 Aug, 2009 1 commit
    • aesok's avatar
      * hooks.h (hook_bool_const_int_const_int_true): Declare. · cd90919d
      aesok authored
      	* hooks.c (hook_bool_const_int_const_int_true): New function.
      	* target.h (struct gcc_target): Add can_eliminate field.
      	* target-def.h (TARGET_CAN_ELIMINATE): Define.
      	(TARGET_INITIALIZER): Use TARGET_CAN_ELIMINATE.
      	* ira.c (setup_eliminable_regset): Use can_eliminate target hook.
      	* reload1.c (update_eliminables, init_elim_table): (Ditto.).
      	(elim_table): Revise comment.
      	* system.h (CAN_ELIMINATE): Poison.
      	* defaults.h (CAN_ELIMINATE): Remove.
      	* doc/tm.texi (CAN_ELIMINATE): Revise documentation.
      
      	* config/alpha/vms.h (CAN_ELIMINATE): Remove macro.
      	* config/alpha/alpha.c (TARGET_CAN_ELIMINATE) [TARGET_ABI_OPEN_VMS]:
      	Define macro.
      	(alpha_vms_can_eliminate): Declare as static, change return type to
      	bool.
      	* config/alpha/alpha-protos.h (alpha_vms_can_eliminate): Remove.
      
      	* config/arm/arm.h (CAN_ELIMINATE): Remove macro.
      	* config/arm/arm.c (TARGET_CAN_ELIMINATE): Define macro.
      	(arm_can_eliminate): New function.
      
      	* config/avr/avr.h (CAN_ELIMINATE): Remove macro.
      	* config/avr/avr.c (TARGET_CAN_ELIMINATE): Define macro.
      	(avr_can_eliminate): Declare as static.
      	* config/avr/avr-protos.h (avr_can_eliminate): Remove.
      
      	* config/bfin/bfin.h (CAN_ELIMINATE): Remove macro.
      	* config/bfin/bfin.c (TARGET_CAN_ELIMINATE): Define macro.
      	(bfin_can_eliminate): New function.
      
      	* config/crx/crx.h (CAN_ELIMINATE): Remove macro.
      	* config/crx/crx.c (TARGET_CAN_ELIMINATE): Define macro.
      	(crx_can_eliminate): New function.
      	
      	* config/fr30/fr30.h (CAN_ELIMINATE): Remove macro.
      	* config/fr30/fr30.c (TARGET_CAN_ELIMINATE): Define macro.
      	(fr30_can_eliminate): New function.
      
      	* config/frv/frv.h (CAN_ELIMINATE): Remove macro.
      	* config/frv/frv.c (TARGET_CAN_ELIMINATE): Define macro.
      	(frv_can_eliminate): New function.
      
      	* config/h8300/h8300.h (CAN_ELIMINATE): Remove macro.
      	* config/h8300/h8300.c (TARGET_CAN_ELIMINATE): Define macro.
      	(h8300_can_eliminate): New function.
      
      	* config/i386/i386.h (CAN_ELIMINATE): Remove macro.
      	* config/i386/i386.c (TARGET_CAN_ELIMINATE): Define macro.
      	(i386_can_eliminate): Declare as static, change return type to bool.
      	* config/i386/i386-protos.h (i386_can_eliminate): Remove.
      
      	* config/ia64/ia64.h (CAN_ELIMINATE): Remove macro.
      	* config/ia64/ia64.c (TARGET_CAN_ELIMINATE): Define macro.
      	(ia64_can_eliminate): New function.
      
      	* config/iq2000/iq2000.h (CAN_ELIMINATE): Remove macro.
      	* config/iq2000/iq2000.c (TARGET_CAN_ELIMINATE): Define macro.
      	(iq2000_can_eliminate): New function.
      
      	* config/m32r/m32r.h (CAN_ELIMINATE): Remove macro.
      	* config/m32r/m32r.c (TARGET_CAN_ELIMINATE): Define macro.
      	(m32r_can_eliminate): New function.
      
      	* config/m68hc11/m68hc11.h (CAN_ELIMINATE): Remove macro.
      	* config/m68hc11/m68hc11.c (TARGET_CAN_ELIMINATE): Define macro.
      	(m68hc11_can_eliminate): New function.
      
      	* config/m68k/m68k.h (CAN_ELIMINATE): Remove macro.
      	* config/m68k/m68k.c (TARGET_CAN_ELIMINATE): Define macro.
      	(m68k_can_eliminate): New function.
      
      	* config/mep/mep.h (CAN_ELIMINATE): Remove macro.
      	* config/mep/mep.c (TARGET_CAN_ELIMINATE): Define macro.
      	(mep_can_eliminate): New function.
      
      	* config/mips/mips.h (CAN_ELIMINATE): Remove macro.
      	* config/mips/mips.c (TARGET_CAN_ELIMINATE): Define macro.
      	(mips_can_eliminate): New function.
      
      	* config/rs6000/rs6000.h (CAN_ELIMINATE): Remove macro.
      	* config/rs6000/rs6000.c (TARGET_CAN_ELIMINATE): Define macro.
      	(rs6000_can_eliminate): New function.
      
      	* config/s390/s390.h (CAN_ELIMINATE): Remove macro.
      	* config/s390/s390.c (TARGET_CAN_ELIMINATE): Define macro.
      	(s390_can_eliminate): Declare as static.
      	* config/s390/s390-protos.h (sparc_can_eliminate): Remove.
      
      	* config/score/score.h (CAN_ELIMINATE): Remove macro.
      	* config/score/score.c (TARGET_CAN_ELIMINATE): Define macro.
      	(score_can_eliminate): New function.
      
      	* config/sparc/sparc.h (CAN_ELIMINATE): Remove macro.
      	* config/sparc/sparc.c (TARGET_CAN_ELIMINATE): Define macro.
      	(sparc_can_eliminate): Declare as static.
      	* config/sparc/sparc-protos.h (sparc_can_eliminate): Remove.
      
      	* config/stormy16/stormy16.h (CAN_ELIMINATE): Remove macro.
      	* config/stormy16/stormy16.c (TARGET_CAN_ELIMINATE): Define macro.
      	(xstormy16_can_eliminate): New function.
      
      	* config/v850/v850.h (CAN_ELIMINATE): Remove macro.
      	* config/v850/v850.c (TARGET_CAN_ELIMINATE): Define macro.
      	(v850_can_eliminate): New function.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151096 138bc75d-0d04-0410-961f-82ee72b054a4
      cd90919d
  31. 29 Jun, 2009 1 commit
    • aesok's avatar
      * target.h (struct gcc_target): Add frame_pointer_required field. · 5a1c68c3
      aesok authored
      	* target-def.h (TARGET_FRAME_POINTER_REQUIRED): New.
      	(TARGET_INITIALIZER): Use TARGET_FRAME_POINTER_REQUIRED.
      	* ira.c (setup_eliminable_regset): Use frame_pointer_required target
      	hook.
      	* reload1.c (update_eliminables): (Ditto.).
      	* gcc/system.h (FRAME_POINTER_REQUIRED): Poison.
      	* doc/tm.texi (FRAME_POINTER_REQUIRED): Revise documentation.
      	(INITIAL_FRAME_POINTER_OFFSET): (Ditto.).
      
      	* config/arc/arc.h (FRAME_POINTER_REQUIRED): Remove macro.
      
      	* config/arm/arm.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/arm/arm.c (TARGET_FRAME_POINTER_REQUIRED): Define.
      	(arm_frame_pointer_required): New function.
      
      	* config/avr/avr.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/avr/avr.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
      	(avr_frame_pointer_required_p): Declare as static.
      	* config/avr/avr-protos.h (avr_frame_pointer_required_p): Remove.
      
      	* config/bfin/bfin.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/bfin/bfin.c (TARGET_FRAME_POINTER_REQUIRED): Define.
      	(bfin_frame_pointer_required): Make as static, change return type
      	to bool.
      	* config/bfin/bfin-protos.h (bfin_frame_pointer_required): Remove.
      
      	* config/cris/cris.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/cris/cris.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
      	(cris_frame_pointer_required): New function.
      	
      	* config/crx/crx.h (FRAME_POINTER_REQUIRED): Remove macro.
      
      	* config/fr30/fr30.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/fr30/fr30.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
      	(fr30_frame_pointer_required): New function.
      	
      	* config/frv/frv.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/frv/frv.c (TARGET_FRAME_POINTER_REQUIRED): Define.
      	(frv_frame_pointer_required): Make as static, change return type
      	to bool.
      	* config/bfin/bfin-protos.h (frv_frame_pointer_required): Remove.
      
      	* config/i386/i386.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/i386/i386.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
      	(ix86_frame_pointer_required): Make as static, change return type to
      	bool.
      	* config/i386/i386-protos.h (ix86_frame_pointer_required): Remove.
      
      	* config/m32c/m32c.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/m32c/m32c.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
      
      	* config/m32r/m32r.h (FRAME_POINTER_REQUIRED): Remove macro.
      
      	* config/mcore/mcore.h (CAN_ELIMINATE): Remove macro.
      	
      	* config/mep/mep.h (FRAME_POINTER_REQUIRED): Remove macro.
      
      	* config/mips/mips.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/mips/mips.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
      	(mips_frame_pointer_required): Make as static.
      	* config/mips/mips-protos.h (mips_frame_pointer_required): Remove.
      	
      	* config/mmix/mmix.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/mmix/mmix.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
      	(mmix_frame_pointer_required): Mew function.
      
      	* config/moxie/moxie.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/moxie/moxie.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
      
      	* config/pa/pa.h (FRAME_POINTER_REQUIRED): Remove macro.
      
      	* config/score/score.h (FRAME_POINTER_REQUIRED): Remove macro.
      
      	* config/sh/sh.h (CAN_ELIMINATE): Remove macro.
      
      	* config/sparc/sparc.h (FRAME_POINTER_REQUIRED): Remove macro.
      	(CAN_ELIMINATE): Redefine.
      	* config/sparc/sparc.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
      	(sparc_frame_pointer_required): New function.
      	(sparc_can_eliminate): New function.
      	* config/sparc/sparc-protos.h (sparc_can_eliminate): Declare.
      
      	* config/vax/vax.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/vax/vax.c (TARGET_FRAME_POINTER_REQUIRED): Define.
      
      	* config/xtensa/xtensa.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/xtensa/xtensa.c (TARGET_FRAME_POINTER_REQUIRED): Define.
      	(xtensa_frame_pointer_required): Make as static, change return type
      	to bool.
      	* config/xtensa/xtensa-protos.h (xtensa_frame_pointer_required):
      	Remove.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@149065 138bc75d-0d04-0410-961f-82ee72b054a4
      5a1c68c3
  32. 15 May, 2009 1 commit
    • bonzini's avatar
      2009-05-15 Paolo Bonzini <bonzini@gnu.org> · bc409cb4
      bonzini authored
              * config/frv/frv.h: Clean up references to GO_IF_LEGITIMATE_ADDRESS.
              * config/frv/frv.c: Likewise.
              * config/s390/s390.c: Likewise.
              * config/sparc/sparc.h: Likewise.
              * config/i386/i386.h: Likewise.
              * config/i386/i386.c: Likewise.
              * config/crx/crx.c: Likewise.
              * config/m68hc11/m68hc11.h: Likewise.
              * config/iq2000/iq2000.c: Likewise.
              * config/mn10300/mn10300.h: Likewise.
              * config/mn10300/mn10300.c: Likewise.
              * config/m68k/m68k.c: Likewise.
              * config/rs6000/rs6000.c: Likewise.
              * config/rs6000/xcoff.h: Likewise.
              * config/rs6000/linux64.h: Likewise.
              * config/rs6000/sysv4.h: Likewise.
              * config/score/score3.c: Likewise.
              * config/score/score7.c: Likewise.
              * config/score/score.c: Likewise.
              * config/arm/arm.md: Likewise.
              * config/mips/mips.c: Likewise.
              * config/mips/mips.md: Likewise.
              * config/bfin/bfin.h: Likewise.
              * config/pa/pa.c: Likewise.
              * config/pa/constraints.md: Likewise.
      
              * config/pdp11/pdp11-protos.h (legitimate_address_p): Delete.
              * config/pdp11/pdp11.c (legitimate_address_p): Delete.
              * config/pdp11/pdp11.h: Use memory_address_p instead.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147560 138bc75d-0d04-0410-961f-82ee72b054a4
      bc409cb4
  33. 14 May, 2009 1 commit
    • bonzini's avatar
      2009-05-14 Paolo Bonzini <bonzini@gnu.org> · fd50b071
      bonzini authored
      	* doc/tm.texi (TARGET_LEGITIMATE_ADDRESS_P): Refer mainly to this
      	in the former documentation of...
      	(GO_IF_LEGITIMATE_ADDRESS): ... this.
      	* ira-conflicts.c (get_dup_num): Use address_operand.
      	* targhooks.c (default_legitimate_address_p): New.
      	* targhooks.h (default_legitimate_address_p): New.
      	* reload.c (strict_memory_address_p) [!GO_IF_LEGITIMATE_ADDRESS]:
      	Call hook.
      	* recog.c (memory_address_p) [!GO_IF_LEGITIMATE_ADDRESS]: Call hook.
      	* target.h (struct target): Add legitimate_address_p.
      	* target-def.h (TARGET_LEGITIMATE_ADDRESS_P): New.
      	(TARGET_INITIALIZER): Include it.
      
      	* config/alpha/alpha.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/alpha/alpha-protos.h (alpha_legitimate_address_p): Remove.
      	* config/alpha/alpha.c (alpha_legitimate_address_p): Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/frv/frv.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	(REG_OK_STRICT_P): Delete.
      	* config/frv/frv-protos.h (frv_legitimate_address_p): Rename to...
      	(frv_legitimate_address_p_1): ... this.
      	* config/frv/frv.c (frv_legitimate_address_p): Forward to...
      	(frv_legitimate_address_p_1): ... the renamed old
      	frv_legitimate_address_p.
      	* config/frv/predicates.md: Adjust calls to frv_legitimate_address_p.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/s390/s390.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/s390/s390-protos.h (legitimate_address_p): Remove.
      	* config/s390/s390.c (legitimate_address_p): Rename to...
      	(s390_legitimate_address_p): ... this, make static.
      	(legitimize_address): Adjust call.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      	* config/s390/constraints.md ("e"): Call strict_memory_address_p.
      
      	* config/m32c/m32c.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/m32c/m32c-protos.h (m32c_legitimate_address_p): Remove.
      	* config/m32c/m32c.c (m32c_legitimate_address_p): Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/spu/spu.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/spu/spu-protos.h (spu_legitimate_address): Remove.
      	* config/spu/spu.c (spu_legitimate_address): Rename to...
      	(spu_legitimate_address_p): ... this, make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/sparc/sparc.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/sparc/sparc-protos.h (legitimate_address_p): Remove.
      	* config/sparc/sparc.c (legitimate_address_p): Rename to...
      	(sparc_legitimate_address_p): ... this, make static and return bool.
      	(legitimize_address): Adjust call.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/i386/i386.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/i386/i386-protos.h (legitimate_address_p): Remove.
      	* config/i386/i386.c (legitimate_address_p): Rename to...
      	(ix86_legitimate_address_p): ... this, make static.
      	(constant_address_p): Move after it, adjust call.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/avr/avr.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/avr/avr-protos.h (legitimate_address_p): Remove.
      	* config/avr/avr.c (legitimate_address_p): Rename to...
      	(avr_legitimate_address_p): ... this, make static.
      	(legitimize_address): Adjust call.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/crx/crx.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/crx/crx-protos.h (crx_legitimate_address_p): Remove.
      	* config/crx/crx.c (crx_legitimate_address_p): Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/xtensa/xtensa.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/xtensa/xtensa-protos.h (xtensa_legitimate_address_p): Remove.
      	* config/xtensa/xtensa.c (xtensa_legitimate_address_p): Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/stormy16/stormy16.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/stormy16/stormy16-protos.h (xstormy16_legitimate_address_p):
      	Remove.
      	* config/stormy16/stormy16.c (xstormy16_legitimate_address_p):
      	Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/m68hc11/m68hc11.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/m68hc11/m68hc11-protos.h (m68hc11_go_if_legitimate_address):
      	Remove.
      	* config/m68hc11/m68hc11.c (m68hc11_go_if_legitimate_address):
      	Rename to...
      	(m68hc11_legitimate_address_p): ... this, make static.
      	(go_if_legitimate_address_internal): Rename to...
      	(m68hc11_legitimate_address_p_1): ... this.
      	(legitimize_address): Adjust call.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/iq2000/iq2000.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/iq2000/iq2000-protos.h (iq2000_legitimate_address_p):
      	Remove.
      	* config/iq2000/iq2000.c (iq2000_legitimate_address_p):
      	Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/mn10300/mn10300.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/mn10300/mn10300-protos.h (legitimate_address_p): Remove.
      	* config/mn10300/mn10300.c (legitimate_address_p): Rename to...
      	(mn10300_legitimate_address_p): ... this, make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/m68k/m68k.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/m68k/m68k-protos.h (m68k_legitimate_address_p): Remove.
      	* config/m68k/m68k.c (m68k_legitimate_address_p): Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/rs6000/rs6000.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	(REG_OK_STRICT_FLAG, REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P): Delete.
      	(INT_REG_OK_FOR_BASE_P, INT_REG_OK_FOR_INDEX_P): Move above.
      	* config/rs6000/rs6000.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/rs6000/rs6000-protos.h (rs6000_legitimate_address): Remove.
      	* config/rs6000/rs6000.c (rs6000_legitimate_address): Rename to...
      	(rs6000_legitimate_address_p): ... this, make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      	(REG_MODE_OK_FOR_BASE_P): Delete.
      	(rs6000_legitimize_reload_address): Use INT_REG_OK_FOR_BASE_P.
      
      	* config/picochip/picochip.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/picochip/picochip-protos.h (picochip_legitimate_address_p):
      	Delete.
      	* config/picochip/picochip.c (picochip_legitimate_address_p): Make
      	static, adjust types.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/score/score.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/score/score.c (score_address_p): Rename to...
      	(score_legitimate_address_p): ... this.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      	* config/score/score3.c (score3_address_p): Rename to...
      	(score3_legitimate_address_p): ... this.
      	* config/score/score7.c (score7_address_p): Rename to...
      	(score7_legitimate_address_p): ... this.
      
      	* config/arm/arm.h (ARM_GO_IF_LEGITIMATE_ADDRESS,
      	THUMB2_GO_IF_LEGITIMATE_ADDRESS, THUMB1_GO_IF_LEGITIMATE_ADDRESS,
      	GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/arm/arm-protos.h (thumb1_legitimate_address_p,
      	thumb2_legitimate_address_p): Delete.
      	(arm_legitimate_address_p): Rename to...
      	(arm_legitimate_address_outer_p): ... this.
      	* config/arm/constraints.md ("Uq"): Adjust call.
      	* config/arm/predicates.md (arm_extendqisi_mem_op): Likewise.
      	* config/arm/arm.c (arm_legitimate_address_p): New, rename old one to...
      	(arm_legitimate_address_outer_p): ... this.
      	(thumb1_legitimate_address_p, thumb2_legitimate_address_p): Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/mips/mips.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/mips/mips-protos.h (mips_legitimate_address_p): Remove.
      	* config/mips/mips.c (mips_legitimate_address_p): ... Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/vax/vax.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/vax/vax-protos.h (legitimate_address_p): Remove.
      	* config/vax/vax.c (legitimate_address_p): Rename to...
      	(vax_legitimate_address_p): ... this, make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/h8300/h8300.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/h8300/h8300-protos.h (h8300_legitimate_address_p): Remove.
      	* config/h8300/h8300.c (h8300_legitimate_address_p): ... Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/mmix/mmix.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/mmix/mmix-protos.h (mmix_legitimize_address): Remove.
      	* config/mmix/mmix.c (mmix_legitimate_address): Rename to...
      	(mmix_legitimate_address_p): ... this, make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/bfin/bfin.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/bfin/bfin-protos.h (bfin_legitimate_address_p): Remove.
      	* config/bfin/bfin.c (bfin_legitimate_address_p): ... Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147534 138bc75d-0d04-0410-961f-82ee72b054a4
      fd50b071
  34. 12 May, 2009 1 commit
  35. 04 May, 2009 1 commit
    • bonzini's avatar
      2009-05-04 Paolo Bonzini <bonzini@gnu.org> · 41e3a0c7
      bonzini authored
       	* doc/tm.texi (LEGITIMIZE_ADDRESS): Revise documentation.
      	* gcc/defaults.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/explow.c (memory_address): Use target hook.
      	* gcc/targhooks.c (default_legitimize_address): New.
      	* gcc/targhooks.h (default_legitimize_address): New.
      	* gcc/target.h (legitimize_address): New.
      	* gcc/target-def.h (TARGET_LEGITIMIZE_ADDRESS): New.
      	(TARGET_INITIALIZER): Include it.
      	* gcc/system.h (LEGITIMIZE_ADDRESS): Poison.
      
      	* config/bfin/bfin-protos.h (legitimize_address): Remove.
      	* config/bfin/bfin.c (legitimize_address): Remove.
      	* config/bfin/bfin.h (LEGITIMIZE_ADDRESS): Remove.
      	* config/m68hc11/m68hc11-protos.h (m68hc11_legitimize_address): Remove.
      	* config/m68hc11/m68hc11.c (m68hc11_legitimize_address): Remove.
      	* config/m68hc11/m68hc11.h (LEGITIMIZE_ADDRESS): Remove.
      
      	* gcc/config/arm/arm.h (LEGITIMIZE_ADDRESS, ARM_LEGITIMIZE_ADDRESS,
      	THUMB_LEGITIMIZE_ADDRESS, THUMB2_LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/s390/s390.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/m32c/m32c.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/sparc/sparc.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/m32r/m32r.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/i386/i386.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/sh/sh.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/avr/avr.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/m68hc11/m68hc11.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/iq2000/iq2000.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/mn10300/mn10300.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/m68k/m68k.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/score/score.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/pa/pa.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/mips/mips.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/alpha/alpha.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/frv/frv.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/spu/spu.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/xtensa/xtensa.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/cris/cris.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/rs6000/rs6000.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/picochip/picochip.h (LEGITIMIZE_ADDRESS): Delete.
      
      	* gcc/config/s390/s390-protos.h (legitimize_address): Delete.
      	* gcc/config/m32c/m32c-protos.h (m32c_legitimize_address): Delete.
      	* gcc/config/sparc/sparc-protos.h (legitimize_address): Delete.
      	* gcc/config/i386/i386-protos.h (legitimize_address): Delete.
      	* gcc/config/avr/avr-protos.h (legitimize_address): Delete.
      	* gcc/config/mn10300/mn10300-protos.h (legitimize_address): Delete.
      	* gcc/config/score/score-protos.h (score_legitimize_address): Delete.
      	* gcc/config/arm/arm-protos.h (arm_legitimize_address,
      	(thumb_legitimize_address): Delete.
      	* gcc/config/pa/pa-protos.h (hppa_legitimize_address): Delete.
      	* gcc/config/mips/mips-protos.h (mips_legitimize_address): Delete.
      	* gcc/config/alpha/alpha-protos.h (alpha_legitimize_address): Delete.
      	* gcc/config/frv/frv-protos.h (frv_legitimize_address): Delete.
      	* gcc/config/spu/spu-protos.h (spu_legitimize_address): Delete.
      	* gcc/config/xtensa/xtensa-protos.h (xtensa_legitimize_address): Delete.
      	* gcc/config/rs6000/rs6000-protos.h (rs6000_legitimize_address): Delete.
      
      	* config/arm/arm.c (arm_legitimize_address): Maybe call Thumb version.
      	* config/m32c/m32c.c (m32c_legitimize_address): Standardize.
      	* config/m32r/m32r.c (m32r_legitimize_address): New.
      	* config/m68k/m68k.c (m68k_legitimize_address): New.
      	* config/score/score.c (score_legitimize_address): Standardize.
      	* config/score/score3.c (score3_legitimize_address): Standardize.
      	* config/score/score3.h (score3_legitimize_address): Adjust.
      	* config/score/score7.c (score7_legitimize_address): Standardize.
      	* config/score/score7.h (score7_legitimize_address): Adjust.
      	* config/sh/sh.c (sh_legitimize_address): New.
      	* config/iq2000/iq2000.c (iq2000_legitimize_address): New.
      
      	* gcc/config/s390/s390.c (legitimize_address): Rename to...
       	(s390_legitimize_address): ... this.
      	* gcc/config/sparc/sparc.c (legitimize_address): Rename to...
      	(sparc_legitimize_address): ... this.
      	* gcc/config/i386/i386.c (legitimize_address): Rename to...
      	(ix86_legitimize_address): ... this.
      	* gcc/config/avr/avr.c (legitimize_address): Rename to...
      	(avr_legitimize_address): ... this.
      	* gcc/config/mn10300/mn10300.c (legitimize_address): Rename to...
      	(mn10300_legitimize_address): ... this.
      	* config/alpha/alpha.c (alpha_legitimize_address): Wrap...
      	(alpha_legitimize_address_1): ... the old alpha_legitimize_address.
      	(alpha_expand_mov): Adjust call.
      
      	* config/frv/frv.c (frv_legitimize_address): Return x on failure.
      	* config/spu/spu.c (spu_legitimize_address): Likewise.
      	* config/xtensa/xtensa.c (xtensa_legitimize_address): Likewise.
      	* config/rs6000/rs6000.c (rs6000_legitimize_address): Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147098 138bc75d-0d04-0410-961f-82ee72b054a4
      41e3a0c7
  36. 24 Apr, 2009 1 commit