Commit Graph

277 Commits

Author SHA1 Message Date
Richard Sandiford
b5edaa2ca1 system.h (IN_RANGE): Cast each argument individually.
gcc/
	* system.h (IN_RANGE): Cast each argument individually.

From-SVN: r129531
2007-10-21 10:47:22 +00:00
Kaveh R. Ghazi
b1d5455a5e system.h (CONST_CAST2, [...]): New macros for type-specific casts.
* system.h (CONST_CAST2, CONST_CAST_TREE, CONST_CAST_RTX,
	CONST_CAST_BB): New macros for type-specific casts.
	(CONST_CAST): Add a TYPE parameter and define it in terms of
	CONST_CAST2.

	* c-decl.c (c_make_fname_decl): Supply a TYPE for CONST_CAST.
	* c-lex.c (cb_ident, lex_string): Likewise,
	* c-typeck.c (free_all_tagged_tu_seen_up_to): Likewise,
	* config/i386/i386.c (ix86_function_regparm,
	ix86_function_sseregparm): Use CONST_CAST_TREE.
	* config/mmix/mmix.c (mmix_encode_section_info): Supply a TYPE for
	CONST_CAST.
	* gcc.c (set_spec, read_specs, for_each_path, execute, do_spec_1,
	give_switch, set_multilib_dir): Likewise,
	* gengtype-parse.c (string_seq, typedef_name): Likewise,
	* gimple-low.c (block_may_fallthru): Use CONST_CAST_TREE.
	* jump.c (reversed_comparison_code_parts): Use CONST_CAST_RTX.
	* passes.c (execute_one_pass): Supply a TYPE for CONST_CAST.
	* prefix.c (update_path): Likewise,
	* pretty-print.c (pp_base_destroy_prefix): Likewise,
	* rtlanal.c (keep_with_call_p): Use CONST_CAST_RTX.
	* tree-cfg.c (tree_can_merge_blocks_p,
	tree_block_ends_with_condjump_p): Use CONST_CAST_BB.
	* tree-eh.c (lookup_stmt_eh_region_fn): USe CONST_CAST_TREE.
	* tree.c (build_string): Supply a TYPE for CONST_CAST.
	(attribute_list_contained): Use CONST_CAST_TREE.

cp:
	* call.c (name_as_c_string): Supply a TYPE for CONST_CAST.
	* decl.c (cp_make_fname_decl): Likewise,
	* parser.c (cp_parser_string_literal): Likewise,
	* tree.c (pod_type_p, zero_init_p): Use CONST_CAST_TREE.
	* typeck.c (cp_type_quals, cp_type_readonly, cp_has_mutable_p):
	Likewise,

fortran:
	* gfortranspec.c (lang_specific_driver): Use CONST_CAST2.
	* options.c (gfc_post_options): Supply a TYPE for CONST_CAST.
	* parse.c (parse_omp_structured_block): Likewise,
	* st.c (gfc_free_statement): Likewise,

java:
	* jcf-parse.c (read_class, java_parse_file): Supply a TYPE for
	CONST_CAST.
	* jcf.h (JCF_FINISH): Likewise.

From-SVN: r128051
2007-09-03 17:09:20 +00:00
Kazu Hirata
15dc95cbcc arm.c, [...]: Fix comment typos.
* config/arm/arm.c, config/rs6000/ppu_intrinsics.h,
	config/spu/spu.c, df-scan.c, fixed-value.c, fold-const.c,
	ginclude/tgmath.h, haifa-sched.c, optabs.c, recog.c,
	sched-deps.c, sched-int.h, system.h, target.h,
	tree-ssa-live.c, tree-vect-transform.c, tree-vectorizer.c,
	tree.def: Fix comment typos.

From-SVN: r128016
2007-09-01 20:13:45 +00:00
Kaveh R. Ghazi
755478019a c-common.c (const_strip_array_types): Delete.
* c-common.c (const_strip_array_types): Delete.
	* c-common.h (const_strip_array_types): Likewise.
	* emit-rtl.c (const_next_insn, const_previous_insn,
	const_next_nonnote_insn, const_prev_nonnote_insn,
	const_next_real_insn, const_prev_real_insn,
	const_next_active_insn, const_prev_active_insn, const_next_label,
	const_prev_label): Delete.
	* gimple-low.c (block_may_fallthru): Use expr_last.
	* jump.c (reversed_comparison_code_parts): Use prev_nonnote_insn.
	* rtl.h (const_previous_insn, const_next_insn,
	const_prev_nonnote_insn, const_next_nonnote_insn,
	const_prev_real_insn, const_next_real_insn,
	const_prev_active_insn, const_next_active_insn, const_prev_label,
	const_next_label): Delete.
	* rtlanal.c (keep_with_call_p): Use next_nonnote_insn.
	* system.h (CONST_CAST): Update comment.
	* tree-cfg.c (tree_can_merge_blocks_p): Use last_stmt.
	(const_first_stmt, const_last_stmt): Delete.
	(tree_block_ends_with_condjump_p): Use last_stmt.
	* tree-flow.h (const_first_stmt, const_last_stmt): Delete.
	* tree-iterator.c (const_expr_first, const_expr_last,
	const_expr_only): Delete.
	* tree.c (const_lookup_attribute): Likewise.
	(attribute_list_contained): Use lookup_attribute.
	* tree.h (const_lookup_attribute, const_expr_first,
	const_expr_last, const_expr_only): Delete.
	
cp:
	* tree.c (pod_type_p, zero_init_p): Use strip_array_types.
	* typeck.c (cp_type_quals, cp_type_readonly, cp_has_mutable_p):
	Likewise.

From-SVN: r128014
2007-09-01 17:18:03 +00:00
Kaveh R. Ghazi
fe9a259855 system.h: Activate -Wcast-qual as warning-only.
* system.h: Activate -Wcast-qual as warning-only.

From-SVN: r127913
2007-08-29 20:28:33 +00:00
Kaveh R. Ghazi
0b51511b2f system.h (CONST_CAST): Avoid union for gcc-4.0.x.
* system.h (CONST_CAST): Avoid union for gcc-4.0.x.

From-SVN: r127878
2007-08-29 02:34:22 +00:00
Kaveh R. Ghazi
68a57691dc system.h (CONST_CAST): New.
* system.h (CONST_CAST): New.
	* c-decl.c (c_make_fname_decl): Use it.
	* c-lex.c (cb_ident, lex_string): Likewise.
	* c-typeck.c (free_all_tagged_tu_seen_up_to): Likewise.
	* gcc.c (set_spec, read_specs, for_each_path, execute, do_spec_1,
	give_switch, set_multilib_dir): Likewise.
	* gengtype-parse.c (string_seq, typedef_name): Likewise.
	* passes.c (execute_one_pass): Likewise.
	* prefix.c (update_path): Likewise.
	* pretty-print.c (pp_base_destroy_prefix): Likewise.
	* tree.c (build_string): Likewise.

cp:
	* call.c (name_as_c_string): Use CONST_CAST.
	* decl.c (build_decl): Likewise.
	* parser.c (cp_parser_string_literal): Likewise.

fortran:
	* gfortranspec.c (lang_specific_driver): Use CONST_CAST.
	* options.c (gfc_post_options): Likewise.
	* parse.c (parse_omp_structured_block): Likewise.
	* st.c (gfc_free_statement): Likewise.

java:
	* jcf-parse.c (read_class, java_parse_file): Use CONST_CAST.
	* jcf.h (JCF_FINISH): Likewise.

From-SVN: r127344
2007-08-10 17:53:58 +00:00
Nick Clifton
9dcd6f09a3 Change copyright header to refer to version 3 of the GNU General Public License and to point readers at the COPYING3 file and the FSF's license web page.
From-SVN: r126948
2007-07-26 08:37:01 +00:00
Brooks Moses
df58283300 re PR bootstrap/31776 (Bootstrap fails with "error: conflicting types for strsignal")
PR bootstrap/31776
* system.h: Remove inclusion of double-int.h
* tree.h: Include double-int.h
* gengtype.c: Likewise
* cfgloop.h: Likewise
* Makefile.in: Adjust dependencies on double-int.h

From-SVN: r124373
2007-05-02 23:14:52 -07:00
Steve Ellcey
67e47f30d0 system.h (ASM_MAKE_LABEL_LINKONCE): Poison.
* system.h (ASM_MAKE_LABEL_LINKONCE): Poison.
	* varasm.c (globalize_decl): Remove ASM_MAKE_LABEL_LINKONCE ifdef.

From-SVN: r120976
2007-01-19 18:38:30 +00:00
Volker Reichelt
ddaf3b8666 re PR driver/22600 (Exit code should be different from 1 for internal compiler error)
PR driver/22600	
	* system.h (ICE_EXIT_CODE): New macro.
	* diagnostic.c (diagnostic_count_diagnostic): Exit with ICE_EXIT_CODE.
	(diagnostic_action_after_output): Likewise.
	* gcc.c (fatal_ice): New function.
	(execute): Use it instead of fatal.
	(fancy_abort): Likewise.
	* doc/invoke.texi (-pass-exit-codes): Document return code for ICEs.

	* fortran/error.c (gfc_fatal_error): Return ICE_EXIT_CODE instead of 4.

From-SVN: r112292
2006-03-22 19:36:22 +00:00
Kazu Hirata
0243368307 bfin.h (UNALIGNED_WORD_ASM_OP): Remove.
* config/bfin/bfin.h (UNALIGNED_WORD_ASM_OP): Remove.
	* system.h (UNALIGNED_WORD_ASM_OP): Poison.

From-SVN: r112061
2006-03-14 18:14:52 +00:00
Zdenek Dvorak
f82783bdda gengtype.c (main): Handle double_int type.
* gengtype.c (main): Handle double_int type.
	* tree.h (struct tree_int_cst): Make type of int_cst double_int.
	* double-int.c: New file.
	* double-int.h: New file.
	* system.h: Include doubleint.h.
	* Makefile.in (SYSTEM_H): Include double-int.h.
	(double-int.o): Add.

From-SVN: r111663
2006-03-03 00:38:20 +00:00
Richard Sandiford
f5e605e540 * doc/tm.texi (ASM_OUTPUT_SHARED_COMMON, ASM_OUTPUT_SHARED_BSS)
(ASM_OUTPUT_SHARED_LOCAL): Delete.
	* doc/invoke.texi (-fshared-data): Delete.
	* common.opt (fshared-data): Delete.
	* varasm.c (asm_emit_uninitialised): Remove flag_shared_data handling.
	(assemble_static_space): Remove #if 0 code.
	* system.h (ASM_OUTPUT_SHARED_COMMON, ASM_OUTPUT_SHARED_BSS)
	(ASM_OUTPUT_SHARED_LOCAL): Poison.
	* config/cris/cris.h: Remove FIXME.

From-SVN: r111330
2006-02-21 08:51:26 +00:00
Alan Modra
00dcee0c2b re PR driver/20425 (-print-search-dirs doesn't honor mutil-os/multilib settings)
PR driver/20425
	* gcc.c (for_each_path): New function.
	(add_to_obstack, file_at_path): New functions.
	(struct file_at_path_info, struct add_to_obstack_info): New.
	(build_search_list): Rewrite using for_each_path.  Constify struct
	path_prefix pointer.  Add do_multi param.  Adjust all callers.
	(find_a_file): Similarly, but just change existing param to bool.
	(putenv_from_prefixes): Add do_multi param, make "paths" const.
	(do_spec_path): Delete.
	(struct spec_path_info): New.
	(spec_path): New function.
	(do_spec_1): Use for_each_path for %D and %I.
	(find_file): Adjust for find_a_file changes.
	(main): Search multilibs for specs.  Print multilib lib path for
	-print-search-dirs.  Likewise add multilibs to LIBRARY_PATH_ENV.
	(read_specs): Search multilibs for %include and %include_noerr.
	(is_directory): Remove second string param.  Change last param
	to a bool.  Don't use concat.  Remove SMALL_ARG_MAX test, always
	check path is a dir.  Update all callers.
	* doc/hostconfig.texi (SMALL_ARG_MAX): Remove mention.
	* system.h (SMALL_ARG_MAX): Poison.
	* config.gcc: Don't define SMALL_ARG_MAX.
	* config.host: Likewise.
	* config.build: Likewise.

From-SVN: r108635
2005-12-16 20:16:22 +10:30
Richard Sandiford
d6b5193bfc alpha.c (alpha_start_function): Use switch_to_section.
* config/alpha/alpha.c (alpha_start_function): Use switch_to_section.
	(alpha_elf_select_rtx_section): Return the selected section rather
	than emitting assembly code.
	(alpha_write_linkage): Emit a ".link" directive directly and then
	set in_section to NULL.
	(vms_asm_out_constructor): Use switch_to_section.
	(vms_asm_out_destructor): Likewise.
	(unicosmk_output_common): Set in_section to NULL instead of calling
	the dummy common_section function.
	(unicosmk_text_section): Delete in favor of...
	(unicosmk_output_text_section_asm_op): ...this new function.
	(unicosmk_data_section): Delete in favor of...
	(unicosmk_output_data_section_asm_op): ...this new function.
	(unicosmk_init_sections): New function.
	(unicosmk_output_deferred_case_vectors): Use switch_to_section.
	(unicosmk_output_ssib): Set in_section to NULL instead of calling
	the dummy ssib_section function.
	(unicosmk_section_buf): Delete.
	* config/alpha/alpha-protos.h (unicosmk_text_section): Delete.
	(unicosmk_data_section): Delete.
	* config/alpha/elf.h (ASM_OUTPUT_ALIGNED_LOCAL): Use switch_to_section.
	(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS, sbss_section, sdata_section)
	(SECTION_FUNCTION_TEMPLATE): Delete.
	* config/alpha/unicosmk.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP)
	(READONLY_DATA_SECTION, EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS)
	(common_section, COMMON_SECTION, ssib_section, SSIB_SECTION): Delete.
	(ASM_OUTPUT_ALIGNED_LOCAL): Use switch_to_section.
	(TARGET_ASM_INIT_SECTIONS): Define.
	* config/alpha/vms.h (LINK_SECTION_ASM_OP, LITERALS_SECTION_ASM_OP)
	(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
	(link_section, literals_section): Delete.
	(ASM_OUTPUT_DEF): Emit the ".literal" directive directly and then
	set in_section to NULL.

	* config/arm/aof.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): Delete.
	(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS, ZERO_INIT_SECTION): Delete.
	(COMMON_SECTION): Delete.
	(TARGET_ASM_INIT_SECTIONS): Define.
	(ASM_OUTPUT_COMMON): Set in_section to NULL rather than calling
	the dummy common_section function.
	* config/arm/aout.h (ASM_OUTPUT_ALIGNED_LOCAL): Use switch_to_section.
	* config/arm/arm.c (get_jump_table_size): Use pointer comparison
	between readonly_data_section and text_section to check whether
	read-only data is being put in the text section.
	(arm_output_function_epilogue): Use switch_to_section.
	(arm_elf_asm_constructor): Likewise.
	(thumb_call_via_reg): Replace call to in_text_section with
	a comparison between in_section and text_section.
	(arm_file_end): Use switch_to_section.
	(aof_text_section): Delete in favor of...
	(aof_output_text_section_asm_op): ...this new function.
	(aof_data_section): Delete in favor of...
	(aof_output_data_section_asm_op): ...this new function.
	(aof_asm_init_sections): New function.
	(zero_init_section): Moved from config/arm/aof.h.
	(aof_dump_imports, aof_file_start): Use switch_to_section.
	* config/arm/arm.h (thumb_call_via_label): Update comment.
	* config/arm/arm-protos.h (aof_text_section, aof_data_section): Delete.
	(common_section): Delete.
	* config/arm/pe.h (ASM_DECLARE_FUNCTION_NAME): Use switch_to_section.
	(ASM_DECLARE_OBJECT_NAME): Update the type of save_section.  Use the
	global switch_to_section function instead of the old port-local one.
	(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS, DRECTVE_SECTION_FUNCTION)
	(SWITCH_TO_SECTION_FUNCTION): Delete.
	(drectve_section): Redefine as a macro.
	* config/arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_BSS):
	(ASM_OUTPUT_ALIGNED_DECL_LOCAL): Use get_named_section and
	switch_to_section.

	* config/avr/avr.c (progmem_section): New variable.
	(avr_output_progmem_section_asm_op): New function.
	(avr_asm_init_sections): New function.
	(avr_output_addr_vec_elt): Use switch_to_section.
	* config/avr/avr.h (progmem_section): Declare.
	(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
	(READONLY_DATA_SECTION): Delete.
	(TARGET_ASM_INIT_SECTIONS): Define.
	(ASM_OUTPUT_CASE_LABEL): Use switch_to_section.
	* config/avr/avr-protos.h (progmem_section): Delete.

	* config/bfin/bfin.h (ASM_OUTPUT_LOCAL): Use switch_to_section.

	* config/c4x/c4x.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS)
	(INIT_SECTION_FUNCTION, FINI_SECTION_FUNCTION): Delete.

	* config/darwin-sections.def: New file.
	* config/darwin.c: Define all sections in darwin-sections.def.
	(output_objc_section_asm_op, darwin_init_sections): New functions.
	(machopic_output_indirection): Use switch_to_section.
	(machopic_select_section): Return the selected section rather than
	emitting assembly code.  Replace the static function table with
	inline conditional expressions.  Update the tests of last_text_section
	and move them into the FUNCTION_DECL block.
	(machopic_select_rtx_section): Return the selected section rather than
	emitting assembly code.
	(machopic_asm_out_constructor, machopic_asm_out_destructor)
	(darwin_file_end): Use switch_to_section.
	* config/darwin.h: Use darwin-sections.def to declare sections.
	(INIT_SECTION_ASM_OP): Remove empty definition.
	(HAS_INIT_SECTION): Define this instead.
	(SECTION_FUNCTION, EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
	(READONLY_DATA_SECTION, TARGET_ASM_EXCEPTION_SECTION): Delete.
	(TARGET_ASM_EH_FRAME_SECTION): Delete.
	(TARGET_ASM_INIT_SECTIONS): Define.
	* config/darwin-protos.h (darwin_init_sections): Declare.
	(machopic_picsymbol_stub_section, machopic_picsymbol_stub1_section)
	(machopic_symbol_stub_section, machopic_symbol_stub1_section): Delete.
	(machopic_lazy_symbol_ptr_section, machopic_nl_symbol_ptr_section)
	(constructor_section, destructor_section, mod_init_section): Delete.
	(mod_term_section): Delete.
	(darwin_exception_section, darwin_eh_frame_section): Delete.
	(machopic_select_section): Return a section.
	(machopic_select_rtx_section): Likewise.
	(text_coal_section, text_unlikely_section, text_unlikely_coal_section)
	(const_section, const_coal_section, const_data_section): Delete.
	(const_data_coal_section, data_coal_section, cstring_section): Delete.
	(literal4_section, literal8_section, constructor_section): Delete.
	(mod_init_section, mod_term_section, destructor_section): Delete.
	(objc_class_section, objc_meta_class_section, objc_category_section)
	(objc_class_vars_section, objc_instance_vars_section): Delete.
	(objc_cls_meth_section, objc_inst_meth_section): Delete.
	(objc_cat_cls_meth_section, objc_cat_inst_meth_section): Delete.
	(objc_selector_refs_section, objc_selector_fixup_section): Delete.
	(objc_symbols_section, objc_module_info_section): Delete.
	(objc_image_info_section, objc_protocol_section): Delete.
	(objc_string_object_section, objc_constant_string_object_section)
	(objc_class_names_section, objc_meth_var_names_section): Delete.
	(objc_meth_var_types_section, objc_cls_refs_section): Delete.
	(machopic_lazy_symbol_ptr_section, machopic_nl_symbol_ptr_section)
	(machopic_symbol_stub_section, machopic_picsymbol_stub_section)
	(darwin_exception_section, darwin_eh_frame_section): Delete.
	* config/t-darwin (darwin.o): Depend on config/darwin-sections.def.

	* config/frv/frv.c (frv_asm_out_constructor): Use switch_to_section.
	(frv_asm_out_destructor): Likewise.
	* config/frv/frv.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
	(SDATA_SECTION_FUNCTION, FIXUP_SECTION_FUNCTION): Delete.
	(ASM_OUTPUT_ALIGNED_DECL_LOCAL): Use switch_to_section and
	get_named_section.
	(ASM_OUTPUT_CASE_LABEL): Use switch_to_section.
	* config/frv/frv-protos.h (fixup_section, sdata_section, sbss_section)
	(data_section): Delete.

	* config/i386/cygming.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS)
	(DRECTVE_SECTION_FUNCTION): Delete.
	(drectve_section): Redefine as a macro that sets in_section after
	emitting the directive.
	(SWITCH_TO_SECTION_FUNCTION): Delete.
	* config/i386/darwin.h (ASM_OUTPUT_ALIGN): Replace call to
	in_text_section with comparison between in_section and text_section.
	* config/i386/i386.c (x86_64_elf_select_section): Return the section
	rather than emitting assembly code.  Use get_named_section.
	(x86_output_aligned_bss, ix86_file_end): Use switch_to_section and
	get_named_section.
	(machopic_output_stub): Use switch_to_section.
	* config/i386/nwld.c (nwld_named_section_asm_out_constructor)
	(nwld_named_section_asm_out_destructor): Use get_section and
	switch_to_section.

	* config/ia64/ia64.c (ia64_select_rtx_section): Return the section
	rather than emitting assembly code.
	(ia64_rwreloc_select_section): Likewise.
	(ia64_rwreloc_select_rtx_section): Likewise.
	* config/ia64/ia64-protos.h (sdata_section, sbss_section): Delete.
	* config/ia64/sysv4.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Use
	switch_to_section.
	(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
	(SDATA_SECTION_FUNCTION, SBSS_SECTION_FUNCTION): Delete.

	* config/iq2000/iq2000.c (iq2000_select_rtx_section): Return the
	section rather than emitting assembly code.
	(iq2000_select_section): Likewise.
	* config/iq2000/iq2000.h (rdata_section, sdata_section): Delete.
	(sbss_section): Delete.

	* config/m32r/m32r.h (ASM_OUTPUT_ALIGNED_BSS): Use switch_to_section
	and get_named_section.
	* config/m32r/m32r-protos.h (sbss_section, sdata_section): Delete.

	* config/mcore/mcore-elf.h (EXPORTS_SECTION_ASM_OP): Delete.
	(SUBTARGET_EXTRA_SECTIONS, SUBTARGET_EXTRA_SECTION_FUNCTIONS): Delete.
	(EXPORT_SECTION_FUNCTION, SUBTARGET_SWITCH_SECTIONS): Delete.
	(MCORE_EXPORT_NAME): Emit the exports directive directly, then set
	in_section to NULL.
	(ASM_DECLARE_FUNCTION_NAME): Use switch_to_section.
	(ASM_DECLARE_OBJECT_NAME): Update the type of save_section.  Use the
	global switch_to_section function instead of the old port-local one.
	* config/mcore/mcore.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS)
	(SWITCH_SECTION_FUNCTION): Delete.
	* config/mcore/mcore-pe.h (SUBTARGET_SWITCH_SECTIONS): Delete.
	(DRECTVE_SECTION_ASM_OP, SUBTARGET_EXTRA_SECTIONS): Delete.
	(SUBTARGET_EXTRA_SECTION_FUNCTIONS, DRECTVE_SECTION_FUNCTION): Delete.
	(MCORE_EXPORT_NAME): Emit ".section .drectve" directly, then set
	in_section to NULL.
	(ASM_DECLARE_OBJECT_NAME): Update the type of save_section.  Use the
	global switch_to_section function instead of the old port-local one.
	(ASM_DECLARE_FUNCTION_NAME): Use switch_to_section.

	* config/mips/mips.c (mips_file_start): Update comment.
	(mips_output_aligned_bss): Use switch_to_section and get_named_section.
	(mips_output_aligned_decl_common): Use switch_to_section.
	(mips_select_rtx_section): Return the section rather than emitting
	assembly code.  Use get_named_section.
	(mips_function_rodata_section: Likewise get_section.
	(build_mips16_function_stub): Use switch_to_section.
	* config/mips/mips.h (ASM_OUTPUT_IDENT): Use switch_to_section.
	(SDATA_SECTION_ASM_OP): Delete.
	* config/mips/vxworks.h (EXTRA_SECTIONS): Delete.
	(EXTRA_SECTION_FUNCTIONS): Delete.

	* config/mmix/mmix.c (mmix_file_start, mmix_file_end)
	(mmix_asm_output_aligned_local): Use switch_to_section.

	* config/pa/pa.c (som_readonly_data_section, som_one_only_data_section)
	(som_one_only_readonly_data_section): New variables.
	(pa_output_function_epilogue): Set in_section to NULL instead of
	calling forget_section.
	(output_deferred_plabels): Use select_section.
	(pa_asm_output_mi_thunk): Likewise.  Set in_section to NULL instead
	of calling forget_section.
	(pa_asm_output_aligned_bss, pa_asm_output_aligned_common)
	(pa_asm_output_aligned_local): Use select_section.
	(som_text_section_asm_op): Delete in favor of...
	(som_output_text_section_asm_op): ...this new function.
	(pa_som_asm_init_sections): New function.
	(pa_select_section): Return the section rather than emitting
	assembly code.
	* config/pa/pa.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
	(SOM_READONLY_DATA_SECTION_FUNCTION): Delete.
	(SOM_ONE_ONLY_READONLY_DATA_SECTION_FUNCTION): Delete.
	(SOM_ONE_ONLY_DATA_SECTION_FUNCTION, FORGET_SECTION_FUNCTION): Delete.
	* config/pa/pa-protos.h (som_text_section_asm_op): Delete.
	(som_readonly_data_section, som_one_only_readonly_data_section)
	(som_one_only_data_section, forget_section): Delete.
	* config/pa/som.h (TEXT_SECTION_ASM_OP): Delete.
	(TARGET_ASM_INIT_SECTIONS): Define.
	(READONLY_DATA_SECTION, TARGET_ASM_EXCEPTION_SECTION): Delete.

	* config/rs6000/rs6000.c (read_only_data_section): New variable.
	(private_data_section, read_only_private_data_section): New variables.
	(sdata2_section, toc_section): New variables.
	(rs6000_file_start): Use switch_to_section.
	(rs6000_assemble_integer): Use comparisons against in_section
	instead of calling in_toc_section and in_text_section.  Use
	unlikely_text_section_p.
	(rs6000_elf_output_toc_section_asm_op): New function, derived
	from the old rs6000/sysv4.h toc_section function.
	(rs6000_elf_asm_init_sections): New function.
	(rs6000_elf_select_rtx_section, rs6000_elf_select_section): Return
	the section rather than emitting assembly code.
	(machopic_output_stub): Use switch_to_section.
	(toc_section): Delete dummy function.
	(rs6000_elf_asm_out_constructor, rs6000_elf_asm_out_destructor): Use
	switch_to_section and get_section.
	(rs6000_xcoff_output_readonly_section_asm_op): New function.
	(rs6000_xcoff_output_readwrite_section_asm_op): New function.
	(rs6000_xcoff_output_toc_section_asm_op): New function, derived from
	the old rs6000/xcoff.h toc_section function.
	(rs6000_xcoff_asm_init_sections): New function.
	(rs6000_xcoff_select_section, rs6000_xcoff_select_rtx_section): Return
	the section rather than emitting assembly code.
	(rs6000_xcoff_file_start): Use switch_to_section.
	(rs6000_xcoff_file_end): Likewise.
	* config/rs6000/rs6000-protos.h (toc_section, sdata_section): Delete.
	(sdata2_section, sbss_section, private_data_section): Delete.
	(read_only_data_section, read_only_private_data_section): Delete.
	* config/rs6000/sysv4.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS)
	(TOC_SECTION_FUNCTION, SDATA_SECTION_FUNCTION, SDATA2_SECTION_FUNCTION)
	(SBSS_SECTION_FUNCTION, INIT_SECTION_FUNCTION): Delete.
	(FINI_SECTION_FUNCTION): Delete.
	(TARGET_ASM_INIT_SECTIONS): Define.
	(ASM_OUTPUT_ALIGNED_LOCAL): Use switch_to_section.
	* config/rs6000/xcoff.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS)
	(READ_ONLY_DATA_SECTION_FUNCTION, PRIVATE_DATA_SECTION_FUNCTION)
	(READ_ONLY_PRIVATE_DATA_SECTION_FUNCTION, TOC_SECTION_FUNCTION)
	(READONLY_DATA_SECTION): Delete.
	(TARGET_ASM_INIT_SECTIONS): Define.
	(ASM_DECLARE_FUNCTION_NAME): Use switch_to_section.  Set in_section
	to NULL rather than no_section.
	(TARGET_ASM_EXCEPTION_SECTION): Delete.

	* config/sh/sh.c (sh_file_start): Use switch_to_section.

	* config/sparc/sparc.c (emit_pic_helper): Use switch_to_section.
	(sparc_output_deferred_case_vectors): Likewise.  Remove argument
	from call to current_function_section.

	* config/stormy16/stormy16.c: Include ggc.h and gt-storm16.h.
	(bss100_section): New variable.
	(xstormy16_asm_output_aligned_common): Use switch_to_section.
	(xstormy16_asm_init_sections): New function.
	(xstormy16_asm_out_destructor, xstormy16_asm_out_constructor): Use
	switch_to_section and get_section.
	(xstormy16_output_addr_vec): Use switch_to_section.  Remove argument
	from calls to current_function_section.
	* config/stormy16/stormy16.h (EXTRA_SECTIONS): Delete.
	(XSTORMY16_SECTION_FUNCTION, EXTRA_SECTION_FUNCTIONS): Delete.
	(TARGET_ASM_INIT_SECTIONS): Define.
	* config/stormy16/stormy16-protos.h (bss100_section): Delete.

	* config/svr3.h (ASM_OUTPUT_LOCAL): Use switch_to_section.
	(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS, INIT_SECTION_FUNCTION)
	(FINI_SECTION_FUNCTION): Delete.

	* config/v850/v850.c: Include gt-v850.h.
	(rosdata_section, rozdata_section, tdata_section, zdata_section)
	(zbss_section): New variables.
	(v850_output_aligned_bss): Use switch_to_section.
	(v850_asm_init_sections): New function.
	(v850_select_section): Return the section rather than emitting
	assembly code.
	* config/v850/v850.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS)
	(ZDATA_SECTION_ASM_OP, ZBSS_SECTION_ASM_OP, TDATA_SECTION_ASM_OP)
	(ROSDATA_SECTION_ASM_OP, ROZDATA_SECTION_ASM_OP): Delete.
	(TARGET_ASM_INIT_SECTIONS): Define.
	* config/v850/v850-protos.h (sdata_section, rosdata_section): Delete.
	(sbss_section, tdata_section, zdata_section, rozdata_section): Delete.
	(zbss_section): Delete.

	* config/vax/vaxv.h (ASM_OUTPUT_LOCAL): Use switch_to_section.

	* config/vx-common.h (vxworks_exception_section): Delete.
	(TARGET_ASM_EXCEPTION_SECTION): Delete.

	* config/xtensa/xtensa.c (xtensa_select_rtx_section): Return the
	section rather than emitting assembly code.
	* config/xtensa/xtensa.h (ASM_OUTPUT_POOL_PROLOGUE): Use
	switch_to_section.

	* Makefile.in (GTFILES): Add $(srcdir)/output.h.
	* coretypes.h (section): New union and typedef.
	* dbxout.c (FORCE_TEXT): Use switch_to_section.  Remove argument
	from call to current_function_section.
	(dbxout_function_end, dbxout_init, dbxout_source_file, dbxout_finish)
	(dbxout_symbol_location): Use switch_to_section.
	* dwarf2out.c (named_section_eh_frame_section): Delete, moving
	most of the code into...
	(default_eh_frame_section): ...here.  Return a section.
	(collect2_eh_frame_section): Delete, moving most of the code into..
	(switch_to_eh_frame_section): ...this new function.
	(debug_info_section, debug_abbrev_section, debug_aranges_section)
	(debug_macinfo_section, debug_line_section, debug_loc_section)
	(debug_pubnames_section, debug_str_section, debug_ranges_section): New
	variables.
	(output_call_frame_info): Call switch_to_eh_frame_section instead of
	eh_frame_section.  Use switch_to_section and get_section.
	(dwarf2out_begin_prologue): Use switch_to_section.
	(AT_string_form): Check the flags in debug_str_section instead of
	DEBUG_STR_SECTION_FLAGS.
	(output_comp_unit): Use switch_to_section, get_section, and
	debug_info_section.
	(output_line_info, secname_for_decl): Use unlikely_text_section_p.
	(dwarf2out_begin_block): Use switch_to_section.  Remove argument
	from call to current_function_section.
	(dwarf2out_var_location): Use unlikely_text_section_p.
	(dwarf2out_source_line): Use switch_to_section.  Remove argument
	from call to current_function_section.
	(dwarf2out_start_source_file, dwarf2out_end_source_file)
	(dwarf2out_define, dwarf2out_undef: Use switch_to_section and
	debug_macinfo_section.
	(dwarf2out_init): Initialize the new section variables.  Use them
	instead of calls to named_section_flags.  Use switch_to_section.
	(output_indirect_string): Use switch_to_section and debug_str_section.
	(dwarf2out_finish): Use switch_to_section and the new section
	variables.
	* except.c (default_exception_section): Return the section instead
	of emitting assembly code.
	(output_function_exception_table): Use the global exception_section
	variable instead of the target hook.  Use switch_to_section.  Remove
	argument from call to current_function_section.
	* final.c (HAVE_READONLY_DATA_SECTION): Delete.
	(shorten_branches): Use pointer comparisons to detect whether the
	text section is the same as readonly_data_section.
	(profile_function): Use switch_to_section.  Remove argument from
	call to current_function_section.
	(final_scan_insn): Likewise.  Update use of last_text_section.
	* gengtype.c (open_base_files): Add an include of output.h.
	* output.h (text_section, data_section, readonly_data_section)
	(ctors_section, dtors_section, bss_section, init_section)
	(fini_section, sdata_section): Turn into section pointers.
	(in_text_section, in_unlikely_text_section, exports_section)
	(drectve_section, named_section, mergeable_string_section)
	(last_text_section_name): Delete.
	(default_exception_section, default_eh_frame_section): Return sections.
	(SECTION_DECLARED, SECTION_NAMED): New macros.
	(SECTION_MACH_DEP): Bump value.
	(section_common, named_section, unnamed_section): New structures.
	(unnamed_section_callback): New typedef.
	(section): New union.
	(sbss_section, exception_section, eh_frame_section): New variables.
	(in_section, last_text_section): Turn into section pointers.
	(get_unnamed_section, get_section, get_named_section): New functions.
	(mergeable_constant_section, function_section): Return a section.
	(unlikely_text_section): Likewise.
	(current_function_section): Likewise.  Remove the decl argument.
	(unlikely_text_section_p, switch_to_section): New functions.
	(output_section_asm_op): New function.
	(set_named_section_flags, named_section_flags, named_section_real)
	(named_section_first_declaration): Delete.
	(default_select_section, default_elf_select_section): Return a section.
	(default_elf_select_section_1, default_function_rodata_section)
	(default_no_function_rodata_section, default_select_rtx_section)
	(default_elf_select_rtx_section): Likewise.
	* rtl.h (in_data_section): Delete.
	* sdbout.c (sdbout_one_type): Use switch_to_section.
	* system.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Poison.
	(READONLY_DATA_SECTION, TARGET_ASM_EXCEPTION_SECTION): Poison.
	(TARGET_ASM_EH_FRAME_SECTION): Poison.
	* target-def.h (TARGET_ASM_INIT_SECTIONS): New macro.
	(TARGET_ASM_EXCEPTION_SECTION, TARGET_ASM_EH_FRAME_SECTION): Delete.
	(TARGET_ASM_OUT): Update after above changes.
	* target.h (init_sections): New hook.
	(exception_section, eh_frame_section): Delete.
	(select_section, select_rtx_section, function_rodata_section): Return
	a section rather than emitting assembly code.
	* varasm.c (text_section, data_section, readonly_data_section)
	(ctors_section, dtors_section, bss_section, init_section)
	(fini_section): Turn into section pointers.
	(sdata_section, sbss_section, exception_section): New variables.
	(eh_frame_section): New variable.
	(in_section): Make global and turn into a section pointer.
	(last_text_section): Turn into a section pointer.
	(unnamed_sections): New variable.
	(in_named_name, last_text_section_name): Delete.
	(EXTRA_SECTION_FUNCTIONS): Delete.
	(in_named_entry): Delete.
	(section_htab): New variable, replacing...
	(in_named_htab): ...this deleted variable.
	(section_entry_eq, section_entry_hash): New functions, based on...
	(in_named_entry_eq, in_named_entry_hash): ...these deleted functions.
	(get_unnamed_section, get_section): New functions.
	(unlikely_text_section): Return a section instead of emitting
	assembly code.
	(in_text_section, in_unlikely_text_section, in_data_section): Delete.
	(get_named_section_flags, named_section_first_declaration): Delete.
	(unlikely_text_section_p): New function.
	(named_section_real, named_section): Delete.
	(get_named_section): New function.
	(asm_output_bss, asm_output_aligned_bss): Use switch_to_section.
	(function_section): Return a section rather than emitting
	assembly code.
	(current_function_section): Likewise.  Remove argument.  Use
	last_text_section if nonnull, otherwise use function_section.
	(default_function_rodata_section): Return a section rather than
	emitting assembly code.  Use get_section.
	(default_no_function_rodata_section): Return a section rather than
	emitting assembly code.
	(variable_section): Use switch_to_section and get_named_section.
	(mergeable_string_section): Return a section rather than emitting
	assembly code.  Use get_section.  Make static.  Don't take special
	countermeasures for empty strings.
	(mergeable_constant_section): Return a section rather than emitting
	assembly code.  Use get_section.
	(default_named_section_asm_out_destructor): Use switch_to_section
	and get_section.
	(default_dtor_section_asm_out_destructor): Use switch_to_section.
	(default_named_section_asm_out_constructor): Use switch_to_section
	and get_section.
	(default_ctor_section_asm_out_constructor): Use switch_to_section.
	(assemble_start_function): Likewise.  Set last_text_section to
	NULL rather than no_section.  Change the type of save_section.
	(assemble_zeros, assemble_variable): Use the section flags to detect
	whether or not a section is text.
	(assemble_static_space): Use switch_to_section.
	(assemble_trampoline_template): Likewise.
	(output_constant_def_contents): Use switch_to_section and
	get_named_section.
	(output_constant_pool_1): Use switch_to_section.  Use the section
	flags to see whether sections contain mergeable data.
	(init_varasm_once): Initialize section_htab instead of in_named_htab.
	Initialize new section variables.  Call TARGET_ASM_INIT_SECTIONS.
	(default_elf_asm_named_section): Use SECTION_DECLARED to detect
	whether a section has already been declared.
	(default_select_section, default_elf_select_section): Return a
	section rather than emitting assembly code.
	(default_elf_select_section_1): Likewise.  Use bss_section for
	SECCAT_BSS if nonnull.  Use get_named_section.
	(default_select_rtx_section): Return a section rather than
	emitting assembly code.
	(default_elf_select_rtx_section): Likewise.  Use get_named_section.
	(file_end_indicate_exec_stack): Use switch_to_section and get_section.
	(output_section_asm_op, switch_to_section): New functions.
	* vmsdbgout.c (vmsdbgout_finish): Use switch_to_section and
	get_named_section.

	* doc/tm.texi: Expand the introduction to the sections documentation.
	(TRAMPOLINE_SECTION): Document new interface.
	(SDATA_SECTION_ASM_OP): Document new macro.
	(READONLY_DATA_SECTION): Delete.
	(SDATA_SECTION_ASM_OP): Document new macro.
	(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
	(TARGET_ASM_INIT_SECTIONS): Document new hook.
	(TARGET_ASM_SELECT_SECTION, TARGET_ASM_FUNCTION_RODATA_SECTION)
	(TARGET_ASM_SELECT_RTX_SECTION): Adjust for new interface.
	(TARGET_EXCEPTION_SECTION, TARGET_EH_FRAME_SECTION): Delete.

gcc/java/
	* class.c (build_utf8_ref, emit_register_classes): Use
	switch_to_section and get_section.

From-SVN: r108152
2005-12-07 07:53:14 +00:00
Kaveh R. Ghazi
06145cb9b4 aclocal.m4 (gcc_AC_FUNC_PRINTF_PTR): Delete.
* aclocal.m4 (gcc_AC_FUNC_PRINTF_PTR): Delete.
	* configure.ac: Don't call gcc_AC_FUNC_PRINTF_PTR.
	* system.h (HOST_PTR_PRINTF): Don't define, poison it.

	* bitmap.c, c-decl.c, config/i386/i386-interix.h,
	config/iq2000/iq2000.c, mips-tfile.c, print-rtl.c, print-tree.c:
	Delete HOST_PTR_PRINTF.

	* configure, config.in: Regenerate.

cp:
	* name-lookup.c, ptree.c: Delete HOST_PTR_PRINTF.

From-SVN: r103135
2005-08-16 00:13:53 +00:00
Kazu Hirata
c2acaf06aa gensupport.c (old_preds): Don't reference PREDICATE_CODES.
* gensupport.c (old_preds): Don't reference PREDICATE_CODES.
	(old_special_pred_table): Don't reference
	SPECIAL_MODE_PREDICATES.
	* system.h (PREDICATE_CODES, SPECIAL_MODE_PREDICATES): Poison.
	* config/arc/arc.h: Don't mention PREDICATE_CODES.
	* config/sh/predicates.h: Don't mention
	SPECIAL_MODE_PREDICATES.
	* doc/tm.texi (PREDICATE_CODES, SPECIAL_MODE_PREDICATES):
	Remove.

From-SVN: r102215
2005-07-21 00:55:20 +00:00
Kazu Hirata
c249f60870 cfgexpand.c (tree_expand_cfg): Don't use FINALIZE_PIC.
* cfgexpand.c (tree_expand_cfg): Don't use FINALIZE_PIC.
	* system.h: Poison FINALIZE_PIC.
	* doc/tm.texi (FINALIZE_PIC): Remove.

From-SVN: r101794
2005-07-08 20:59:49 +00:00
Kaz Kojima
b48f503c98 target.h (gcc_target): New field allocate_initial_value.
* target.h (gcc_target): New field allocate_initial_value.
	* target-def.h (TARGET_ALLOCATE_INITIAL_VALUE): New macro.
	(TARGET_INITIALIZER): Include it.
	* integrate.c (allocate_initial_values): Use
	targetm.allocate_initial_value.
	* system.h: Poison ALLOCATE_INITIAL_VALUE.
	* config/sh/sh-protos.h (sh_pr_n_sets): Delete.
	* config/sh/sh.c (sh_pr_n_sets): Make it static.
	(sh_allocate_initila_value): New function.
	(TARGET_ALLOCATE_INITIAL_VALUE): Override default.
	* config/sh/sh.h (ALLOCATE_INITIAL_VALUE): Delete.
	* doc/tm.texi (TARGET_ALLOCATE_INITIAL_VALUE): Rename and
	update from ALLOCATE_INITIAL_VALUE.

From-SVN: r101411
2005-06-29 01:24:27 +00:00
Kelley Cook
366ccddb2b Update FSF address.
From-SVN: r101317
2005-06-25 02:02:01 +00:00
Eric Botcazou
fdbe66f28c re PR debug/21889 (Native Solaris assembler cannot grok DTP-relative debug symbols)
PR target/21889
	* target.h (gcc_target) <asm_out>: New field output_dwarf_dtprel.
	* target-def.h (TARGET_ASM_OUTPUT_DWARF_DTPREL): New macro.
	(TARGET_ASM_OUT): Add it.
	* doc/tm.texi (Debugging Info): Document it.
	* dwarf2out.c (output_loc_operands) <INTERNAL_DW_OP_tls_addr>:
	Test it instead of ASM_OUTPUT_DWARF_DTPREL.
	(loc_descriptor_from_tree_1) <VAR_DECL>: Likewise.
	* system.h: Poison ASM_OUTPUT_DWARF_DTPREL.
	* config/frv/frv-protos.h (frv_output_dwarf_dtprel): Delete.
	* config/frv/frv.c (frv_output_dwarf_dtprel): Make static and unused.
	(gen_inlined_tls_plt): Remove unused variable MEM.
	(TARGET_ASM_OUTPUT_DWARF_DTPREL): Define to frv_output_dwarf_dtprel.
	* config/frv/frv.h (ASM_OUTPUT_DWARF_DTPREL): Delete.
	* config/i386/i386-protos.h (i386_output_dwarf_dtprel): Delete.
	* config/i386/i386.c (i386_output_dwarf_dtprel): Make static and
	unused.
	(TARGET_ASM_OUTPUT_DWARF_DTPREL): Define to i386_output_dwarf_dtprel.
	* config/i386/i386.h (ASM_OUTPUT_DWARF_DTPREL): Delete.
	* config/ia64/ia64-protos.h (ia64_output_dwarf_dtprel): Delete.
	* config/ia64/ia64.c (ia64_output_dwarf_dtprel): Make static and
	unused.
	(TARGET_ASM_OUTPUT_DWARF_DTPREL): Define to ia64_output_dwarf_dtprel.
	* config/ia64/ia64.h (ASM_OUTPUT_DWARF_DTPREL): Delete.
	* config/rs6000/rs6000-protos.h (rs6000_output_dwarf_dtprel): Delete.
	* config/rs6000/rs6000.c (rs6000_output_dwarf_dtprel): Make static and
	unused.
	(TARGET_ASM_OUTPUT_DWARF_DTPREL): Define to rs6000_output_dwarf_dtprel
	* config/rs6000/rs6000.h (ASM_OUTPUT_DWARF_DTPREL): Delete.
	* config/s390/s390-protos.h (s390_output_dwarf_dtprel): Delete.
	* config/s390/s390.c (s390_output_dwarf_dtprel): Make static and
	unused.
	(TARGET_ASM_OUTPUT_DWARF_DTPREL): Define to s390_output_dwarf_dtprel.
	* config/s390/s390.h (ASM_OUTPUT_DWARF_DTPREL): Delete.
	* config/sparc/sol2-gas.h (TARGET_SUN_TLS): Define to 0.
	(TARGET_GNU_TLS): Define to 1.
	* config/sparc/sparc-protos.h (sparc_output_dwarf_dtprel): Delete.
	* config/sparc/sparc.c (sparc_output_dwarf_dtprel): Make static and
	unused.
	(TARGET_ASM_OUTPUT_DWARF_DTPREL): Define to sparc_output_dwarf_dtprel
	if TARGET_GNU_TLS only.
	* config/sparc/sparc.h (ASM_OUTPUT_DWARF_DTPREL): Delete.

	* config.gcc (sparc64-*-solaris2*): Include tm-dwarf2.h last.
	(sparc-*-solaris2*): Likewise on Solaris 7 and up.

From-SVN: r100742
2005-06-08 05:05:45 +00:00
Eric Christopher
f1c9d07dc5 system.h: Poison EXTRA_CC_MODES.
2005-06-07  Eric Christopher  <echristo@redhat.com>

	* system.h: Poison EXTRA_CC_MODES.
	* config/frv/frv.h (SELECT_CC_MODE): Rewrite comment.
	* config/ia64/ia64.h (SELECT_CC_MODE): Ditto.
	* doc/md.texi (Jump Patterns): Replace reference to
	EXTRA_CC_MODES with machine-modes.def.
	* doc/rtl.texi (Machine Modes): Ditto.

From-SVN: r100737
2005-06-08 00:28:41 +00:00
Richard Sandiford
bacf5b96ed system.h (TARGET_OPTIONS, [...]): Poison.
* system.h (TARGET_OPTIONS, TARGET_SWITCHES): Poison.
	* opts.h (print_filtered_help): Delete.
	* opts.c (handle_option, decode_options): Remove calls to
	set_target_switch.
	(print_target_help): New function.
	(common_option, print_help): Call print_target_help instead of
	display_target_options.
	(print_filtered_help): Make static.
	* toplev.h (display_target_options, set_target_switch): Delete.
	* toplev.c (target_switches, target_options, display_target_options)
	(set_target_switch): Delete.
	(print_switch_values): Remove handling of TARGET_SWITCHES and
	TARGET_OPTIONS.
	(default_get_pch_validity): Likewise.  Only treat target_flags
	specially if targetm.check_pch_target_flags is nonnull.
	(pch_option_mismatch): New function.
	(default_pch_valid_p): Use it.  Remove handling of TARGET_SWITCHES
	and TARGET_OPTIONS.  Only treat target_flags specially if
	targetm.check_pch_target_flags is nonnull.
	* config/ia64/ia64.c (ia64_override_options): Don't mention
	TARGET_OPTIONS in comment.
	* config/m68k/m68k-none.h (CC1_SPEC): Likewise.
	* doc/invoke.texi: Remove a reference to TARGET_SWITCHES.
	* doc/tm.texi (TARGET_DEFAULT_TARGET_FLAGS): Don't mention the
	interaction with TARGET_SWITCHES.
	(TARGET_@var{featurename}, TARGET_SWITCHES, TARGET_OPTIONS): Delete.

From-SVN: r100432
2005-06-01 07:02:36 +00:00
Kelley Cook
68d5a1cdf6 system.h: Poison BYTEORDER and HOST_WORDS_BIG_ENDIAN.
2005-05-05  Kelley Cook  <kcook@gcc.gnu.org>

	* system.h: Poison BYTEORDER and HOST_WORDS_BIG_ENDIAN.

From-SVN: r99252
2005-05-05 02:55:04 +00:00
Kaveh R. Ghazi
042630ad4a system.h (fopen, [...]): Define these to the unlocked libiberty functions.
fixincludes:
	* system.h (fopen, fdopen, freopen): Define these to the unlocked
	libiberty functions.

gcc:
	* system.h (fopen, fdopen, freopen): Define these to the unlocked
	libiberty functions.

libcpp:
	* system.h (fopen, fdopen, freopen): Define these to the unlocked
	libiberty functions.

From-SVN: r98407
2005-04-19 12:37:08 +00:00
Ian Lance Taylor
81a60083ea * system.h: Poison DONT_ACCESS_GBLS_AFTER_EPILOGUE.
From-SVN: r98295
2005-04-17 21:26:00 +00:00
Eric Botcazou
367e831921 configure.ac (gcc_AC_CHECK_DECLS): Add vsnprintf.
* configure.ac (gcc_AC_CHECK_DECLS): Add vsnprintf.
	* configure: Regenerate.
	* config.in: Likewise.
	* system.h: Declare vsnprintf if not already declared.

From-SVN: r98080
2005-04-13 09:13:27 +00:00
Kaveh R. Ghazi
0d667716cb configure.ac (fixincludes_UNLOCKED_FUNCS): New.
fixincludes:
	* configure.ac (fixincludes_UNLOCKED_FUNCS): New.
	(AC_CHECK_FUNCS, AC_CHECK_DECLS): Check for fixincludes_UNLOCKED_FUNCS.
	* system.h (putchar, getc, getchar, clearerr, feof, fileno,
	fflush, fgetc, fgets, ferror, fread): Redefine to the associated
	_unlocked function.
	(fwrite_unlocked): Fix prototype.

	* configure, config.h.in: Regenerate.

gcc:
	PR/17092
	* configure.ac (gcc_UNLOCKED_FUNCS): New.
	(AC_CHECK_FUNCS, AC_CHECK_DECLS): Check for gcc_UNLOCKED_FUNCS.
	* system.h (putchar, getc, getchar, clearerr, feof, fileno,
	fflush, fgetc, fgets, ferror, fread): Redefine to the associated
	_unlocked function.
	(fwrite_unlocked): Fix prototype.

	* configure, config.in: Regenerate.

libcpp:
	* configure.ac (libcpp_UNLOCKED_FUNCS): New.
	(AC_CHECK_FUNCS, AC_CHECK_DECLS): Check for libcpp_UNLOCKED_FUNCS.
	* system.h (putchar, getc, getchar, clearerr, feof, fileno,
	fflush, fgetc, fgets, ferror, fread): Redefine to the associated
	_unlocked function.
	(fwrite_unlocked): Fix prototype.

	* configure, config.in: Regenerate.

From-SVN: r97986
2005-04-11 21:46:59 +00:00
Kaveh R. Ghazi
627aa08ae9 * system.h: Revert last change.
From-SVN: r97826
2005-04-08 11:23:32 +00:00
Kaveh R. Ghazi
d502f210b9 system.h: Poison PARAMS.
* system.h: Poison PARAMS.

java:
	* java-tree.h: Don't use PARAMS().

From-SVN: r97816
2005-04-08 01:02:59 +00:00
Paolo Bonzini
9e9126f355 system.h: Fix typo.
2005-04-05  Paolo Bonzini  <bonzini@gnu.org>

	* system.h: Fix typo.

From-SVN: r97624
2005-04-05 12:10:59 +00:00
Richard Sandiford
251e2ff23f system.h (GCOV_SIZE_TYPE): Unposion.
* system.h (GCOV_SIZE_TYPE): Unposion.
	* gcov-io.h (GCOV_TYPE_NODE): Delete, replacing with...
	(GCOV_TYPE_SIZE): ...this new macro.
	* coverage.h (get_gcov_type, GCOV_TYPE_NODE): Declare.
	* coverage.c (get_gcov_type, get_gcov_unsigned_t): New functions.
	(rtl_coverage_counter_ref): Use GCOV_TYPE_SIZE.
	(build_fn_info_type, build_fn_info_value, build_ctr_info_type)
	(build_ctr_info_value, build_gcov_info): Use get_gcov_unsigned_t
	instead of unsigned_intSI_type_node.
	* rtl-profile.c (rtl_gen_interval_profiler, rtl_gen_pow2_profiler)
	(rtl_gen_one_value_profiler_no_edge_manipulation)
	(rtl_gen_const_delta_profiler): Use GCOV_TYPE_SIZE.
	* value-prof.c: Include coverage.h.

From-SVN: r97570
2005-04-04 19:41:14 +00:00
Joseph Myers
d101034cd8 langhooks.h (truthvalue_conversion): Remove.
* langhooks.h (truthvalue_conversion): Remove.
	* langhooks-def.h (LANG_HOOKS_INITIALIZER): Remove
	LANG_HOOKS_TRUTHVALUE_CONVERSION.
	* system.h (LANG_HOOKS_TRUTHVALUE_CONVERSION): Poison.
	* gimplify.c (gimple_boolify): Don't use truthvalue_conversion.
	* c-objc-common.h (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove.

ada:
	* misc.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove.

cp:
	* cp-objcp-common.h (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove.

fortran:
	* f95-lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove.

java:
	* lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove.

treelang:
	* treetree.c (LANG_HOOKS_TRUTHVALUE_CONVERSION,
	tree_lang_truthvalue_conversion): Remove.
	* tree-convert.c: Don't call truthvalue_conversion.

From-SVN: r96947
2005-03-23 19:47:09 +00:00
Daniel Jacobowitz
57642751f5 tm.texi (LINK_LIBGCC_SPECIAL): Remove.
* doc/tm.texi (LINK_LIBGCC_SPECIAL): Remove.
	(LINK_LIBGCC_SPECIAL_1): Don't mention it.
	* gcc.c: Don't check for LINK_LIBGCC_SPECIAL.
	* system.h: Poison LINK_LIBGCC_SPECIAL.

From-SVN: r95476
2005-02-23 23:11:08 +00:00
Kazu Hirata
a4de48bc6c c-objc-common.h, [...]: Update copyright.
* c-objc-common.h, c-pretty-print.c, cgraphunit.c, except.c,
	genautomata.c, langhooks.c, langhooks.h, system.h,
	config/arm/lib1funcs.asm: Update copyright.

From-SVN: r95331
2005-02-21 14:39:52 +00:00
Zack Weinberg
c5ff069dc4 re PR middle-end/18785 (isdigit builtin function fails with EBCDIC character sets)
PR 18785
libcpp:
	* charset.c (LAST_POSSIBLY_BASIC_SOURCE_CHAR): New helper macro.
	(cpp_host_to_exec_charset): New function.
	* include/cpplib.h: Declare cpp_host_to_exec_charset.

gcc:
	* langhooks.h (struct lang_hooks): Add to_target_charset.
	* langhooks.c (lhd_to_target_charset): New function.
	* langhooks-def.h: Declare lhd_to_target_charset.
	(LANG_HOOKS_TO_TARGET_CHARSET): New macro.
	(LANG_HOOKS_INITIALIZER): Update.
	* c-common.c (c_common_to_target_charset): New function.
	* c-common.h: Declare it.
	* c-objc-common.h (LANG_HOOKS_TO_TARGET_CHARSET): Set to
	c_common_to_target_charset.

	* defaults.c (TARGET_BELL, TARGET_BS, TARGET_CR, TARGET_DIGIT0)
	(TARGET_ESC, TARGET_FF, TARGET_NEWLINE, TARGET_TAB, TARGET_VT):
	Delete definitions.
	* system.h: Poison them.
	* doc/tm.texi: Don't discuss them.
	* builtins.c (fold_builtin_isdigit): Use lang_hooks.to_target_charset.
	* c-pretty-print.c (pp_c_integer_constant): Don't use pp_c_char.
	(pp_c_char): Do not attempt to generate letter escapes for
	newline, tab, etc.
	* config/arm/arm.c (output_ascii_pseudo_op): Likewise.
	* config/mips/mips.c (mips_output_ascii): Likewise.
gcc/cp:
	* cp-objcp-common.h (LANG_HOOKS_TO_TARGET_CHARSET): Set to
	c_common_to_target_charset.  Delete bogus comment.
gcc/testsuite:
	* gcc.dg/charset/builtin1.c: New test.

From-SVN: r95304
2005-02-20 17:01:32 +00:00
Richard Henderson
78a52f1158 target.h (targetm.calls.arg_partial_bytes): New.
* target.h (targetm.calls.arg_partial_bytes): New.
	* target-def.h (TARGET_ARG_PARTIAL_BYTES): New.
	* calls.c (store_unaligned_arguments_into_pseudos): Update for
	partial in bytes.
	(load_register_parameters): Likewise.
	(store_one_arg): Likewise.
	(initialize_argument_information): Use targetm.calls.arg_partial_bytes.
	(emit_library_call_value_1): Likewise.
	* expr.c (block_move_libcall_safe_for_call_parm): Likewise.
	(emit_push_insn): Update for partial in bytes.
	* expr.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
	* function.c (assign_parm_find_entry_rtl): Use
	targetm.calls.arg_partial_bytes.  Update for result in bytes.
	(locate_and_pad_parm): Update for partial in bytes.
	* system.h (FUNCTION_ARG_PARTIAL_NREGS): Poison.
	* targhooks.c (hook_int_CUMULATIVE_ARGS_mode_tree_bool_0): New.
	* targhooks.h (hook_int_CUMULATIVE_ARGS_mode_tree_bool_0): Declare.
	* doc/tm.texi (TARGET_ARG_PARTIAL_BYTES): Rename and update from
	FUNCTION_ARG_PARTIAL_NREGS.

	* config/arc/arc.h, config/c4x/c4x.h, config/i386/i386.h,
	config/i860/i860.h, config/m68hc11/m68hc11.h, config/m68k/m68k.h,
	config/pdp11/pdp11.h, config/s390/s390.h, config/stormy16/stormy16.h,
	config/xtensa/xtensa.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.

	* config/alpha/alpha.c (alpha_arg_partial_bytes): New.
	(TARGET_ARG_PARTIAL_BYTES): New.
	* config/alpha/alpha.h, config/alpha/unicosmk.h,
	config/alpha/vms.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.

	* config/arm/arm.h (FUNCTION_ARG_PARTIAL_NREGS): Move ...
	* config/arm/arm.c (arm_arg_partial_bytes): ... here.
	(TARGET_ARG_PARTIAL_BYTES): New.

	* config/cris/cris.h (FUNCTION_ARG_PARTIAL_NREGS): Move ...
	* config/cris/cris.c (cris_arg_partial_bytes): ... here.
	(TARGET_ARG_PARTIAL_BYTES): New.

	* config/fr30/fr30.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
	* config/fr30/fr30.c (fr30_arg_partial_bytes): Rename from
	fr30_function_arg_partial_nregs.  Adjust to return bytes.
	(TARGET_ARG_PARTIAL_BYTES): New.
	* config/fr30/fr30-protos.h: Update.

	* config/frv/frv.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
	* config/frv/frv.c (frv_arg_partial_bytes): Rename from
	frv_function_arg_partial_nregs.  Adjust to return bytes.
	(TARGET_ARG_PARTIAL_BYTES): New.
	* config/frv/frv-protos.h: Update.

	* config/ia64/ia64.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
	* config/ia64/ia64.c (ia64_arg_partial_bytes): Rename from
	ia64_function_arg_partial_nregs.  Adjust to return bytes.
	(TARGET_ARG_PARTIAL_BYTES): New.
	* config/ia64/ia64-protos.h: Update.

	* config/iq2000/iq2000.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
	* config/iq2000/iq2000.c (iq2000_arg_partial_bytes): Rename from
	function_arg_partial_nregs.  Adjust to return bytes.
	(TARGET_ARG_PARTIAL_BYTES): New.
	* config/iq2000/iq2000-protos.h: Update.

	* config/m32r/m32r.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
	* config/m32r/m32r.c (m32r_arg_partial_bytes): Rename from
	function_arg_partial_nregs.  Adjust to return bytes.
	(TARGET_ARG_PARTIAL_BYTES): New.
	* config/m32r/m32r-protos.h: Update.

	* config/mcore/mcore.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
	* config/mcore/mcore.c (mcore_arg_partial_bytes): Rename from
	mcore_function_arg_partial_nregs.  Adjust to return bytes.
        (TARGET_ARG_PARTIAL_BYTES): New.
	* config/mcore/mcore-protos.h: Update.

	* config/mips/mips.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
	* config/mips/mips.c (mips_arg_partial_bytes): Rename from
	function_arg_partial_nregs.  Adjust to return bytes.
	(TARGET_ARG_PARTIAL_BYTES): New.
	* config/mips/mips-protos.h: Update.

	* config/mn10300/mn10300.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
	* config/mn10300/mn10300.c (mn10300_arg_partial_bytes): Rename from
	function_arg_partial_nregs.  Adjust to return bytes.
	(TARGET_ARG_PARTIAL_BYTES): New.
	* config/mn10300/mn10300-protos.h: Update.

	* config/ns32k/ns32k.h (FUNCTION_ARG_PARTIAL_NREGS): Move ...
	* config/ns32k/ns32k.c (ns32k_arg_partial_bytes): ... here.
	(TARGET_ARG_PARTIAL_BYTES): New.

	* config/pa/pa.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
	* config/pa/pa.c (pa_arg_partial_bytes): Rename from
	function_arg_partial_nregs.  Handle 32-bit.  Adjust to return bytes.
	(TARGET_ARG_PARTIAL_BYTES): New.
	* config/pa/pa-protos.h: Update.

	* config/rs6000/rs6000.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
	* config/rs6000/rs6000.c (rs6000_arg_partial_bytes): Rename from
	function_arg_partial_nregs.  Adjust to return bytes.
	(TARGET_ARG_PARTIAL_BYTES): New.
	* config/rs6000/rs6000-protos.h: Update.

	* config/sh/sh.h (FUNCTION_ARG_PARTIAL_NREGS): Move ...
	* config/sh/sh.c (sh_arg_partial_bytes): ... here.
	(TARGET_ARG_PARTIAL_BYTES): New.

	* config/sparc/sparc.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
	* config/sparc/sparc.c (sparc_arg_partial_bytes): Rename from
	function_arg_partial_nregs.  Adjust to return bytes.
        (TARGET_ARG_PARTIAL_BYTES): New.
	* config/sparc/sparc-protos.h: Update.

	* config/v850/v850.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
	* config/v850/v850.c (v850_arg_partial_bytes): Rename from
        function_arg_partial_nregs.  Adjust to return bytes.
        (TARGET_ARG_PARTIAL_BYTES): New.
	* config/v850/v850-protos.h: Update.

From-SVN: r92726
2004-12-29 19:08:18 -08:00
Nathan Sidwell
938802033e system.h (IN_RANGE): Restore HOST_WIDE_INT cast.
* system.h (IN_RANGE): Restore HOST_WIDE_INT cast.
	* tree.h (IS_EXPR_CODE_CLASS): Do not use IN_RANGE.

From-SVN: r92511
2004-12-22 22:06:35 +00:00
Nathan Sidwell
38b3627d6f system.c (IN_RANGE): Use plain unsigned, not unsigned HOST_WIDE_INT.
* system.c (IN_RANGE): Use plain unsigned, not unsigned
	HOST_WIDE_INT.
	* tree.def (VOID_TYPE, INTEGER_TYPE, REAL_TYPE, COMPLEX_TYPE,
	VECTOR_TYPE, OFFSET_TYPE, ENUMERAL_TYPE, BOOLEAN_TYPE, CHAR_TYPE,
	POINTER_TYPE, REFERENCE_TYPE, METHOD_TYPE, FUNCTION_TYPE,
	FILE_TYPE, ARRAY_TYPE, RECORD_TYPE, UNION_TYPE,
	QUAL_UNION_TYPE): Reorder for better code efficiency.
	(CONST_DECL, TYPE_DECL, VAR_DECL, FIELD_DECL, PARM_DECL): Likewise.
	(INDIRECT_REF, ALIGN_INDIRECT_REF, MISALIGNED_INDIRECT_REF): Likewise.
	* tree.h (INDIRECT_REF_P): Reorder checks for better optimization.
	(IS_EXPR_CODE_CLASS): Use IN_RANGE.
	(INTEGRAL_TYPE_P, FLOAT_TYPE_P): Reorder checks for better
	optimization.

	* cp/cp-tree.def (TEMPLATE_TYPE_PARM,
	BOUND_TEMPLATE_TEMPLATE_PARM, TYPE_OF_TYPE, TYPENAME_TYPE): Reorder
	for better code efficiency.
	* cp/cp-tree.h (CLASS_TYPE_P): Short circuit IS_AGGR_TYPE check.
	(CAN_HAVE_FULL_LANG_DECL_P): Reorder for better optimization.
	(INTEGRAL_CODE_P, CP_INTEGRAL_TYPE_P,
	INTEGRAL_OR_ENUMERATION_TYPE_P, SCALAR_TYPE_P,
	CP_AGGREGATE_TYPE_P, TYPE_PTROB_P, TYPE_REF_OBJ_P,
	TYPE_PTROBV_P): Likewise.

From-SVN: r92463
2004-12-21 17:43:27 +00:00
Mark Mitchell
57829bc4f0 defaults.h (ASM_OUTPUT_INTERNAL_LABEL): New macro.
* defaults.h (ASM_OUTPUT_INTERNAL_LABEL): New macro.
	* output.h (assemble_name_raw): Declare it.
	* system.h (ASM_OUTPUT_INTERNAL_LABEL): Do not poison it.
	* varasm.c (assemble_name_raw): New function.
	(assemble_name): Use it.
	(default_internal_label): Likewise.
	* config/darwin.c (darwin_asm_output_dwarf_delta): Likewise.
	* doc/tm.texi (ASM_OUTPUT_INTERNAL_LABEL): Document.

From-SVN: r92401
2004-12-20 02:08:57 +00:00
Steven Bosscher
6be85b25c2 cfgcleanup.c (outgoing_edges_match, [...]): Remove CASE_DROPS_THROUGH checks, it is never defined.
* cfgcleanup.c (outgoing_edges_match, try_crossjump_to_edge):
	Remove CASE_DROPS_THROUGH checks, it is never defined.
	* cfglyout.c (fixup_reorder_chain): Likewise.
	* cfgrtl.c (rtl_verify_flow_info): Likewise.
	* stmt.c (expand_case): Likewise.
	* cfgbuild.c (make_edges): Likewise.  Also remove force_fallthru,
	it is now always 0.
	* system.h (CASE_DROPS_THROUGH): Poison.
	* doc/md.texi (casesi): Remove documentation of CASE_DROPS_THROUGH.
	* doc/tm.texi (casesi): Remove documentation of CASE_DROPS_THROUGH.

	* config/v850/v850.h: Remove commented out CASE_DROPS_THROUGH.

From-SVN: r91488
2004-11-29 20:46:14 +00:00
Eric Botcazou
033797e23c target.h (late_rtl_prologue_epilogue): Remove.
* target.h (late_rtl_prologue_epilogue): Remove.
	* target-def.h (TARGET_LATE_RTL_PROLOGUE_EPILOGUE): Remove.
	* system.h: Poison TARGET_LATE_RTL_PROLOGUE_EPILOGUE.
	* passes.c (rest_of_handle_prologue_epilogue): Remove and move
	remaining bits to...
	(rest_of_handle_flow2): ...here.
	(rest_of_compilation): Remove call to rest_of_handle_prologue_epilogue.
	* doc/tm.texi (TARGET_LATE_RTL_PROLOGUE_EPILOGUE): Remove.

From-SVN: r91140
2004-11-24 08:39:34 +00:00
Zack Weinberg
6e14af161c function.h (struct function): Remove calls_longjmp.
* function.h (struct function): Remove calls_longjmp.
	(current_function_calls_longjmp): Delete.
	* tree.h (ECF_LONGJMP): Delete.
	(ECF_SIBCALL, ECF_PURE, ECF_SP_DEPRESSED, ECF_ALWAYS_RETURN)
	(ECF_LIBCALL_BLOCK): Everybody slide down one.
	(ECF_CONST, ECF_NORETURN, ECF_SIBCALL): Clarify comments.
	* builtins.c (expand_builtin_longjmp): Don't set
	current_function_calls_longjmp.
	* calls.c (special_function_p): Mark longjmp and siglongjmp
	with ECF_NORETURN, not ECF_LONGJMP.
	(emit_call_1, expand_call, emit_library_call_value_1):
	Don't check for ECF_LONGJMP.
	* tree-cfg.c (make_exit_edges, is_ctrl_altering_stmt)
	(need_fake_edge_p): Likewise.

	* config/avr/avr.h, config/ip2k/ip2k.h: Don't define NON_SAVING_SETJMP.
	* system.h: Poison NON_SAVING_SETJMP.
	* function.c (use_register_for_decl)
	* gcse.c (compute_hash_table_work, compute_store_table)
	* postreload-gcse.c (record_opr_changes)
	* reload.c (find_equiv_reg)
	* reload1.c (reload)
	* config/i386/i386.c (ix86_can_use_return_insn_p):
	Remove code conditional on NON_SAVING_SETJMP.
	* doc/tm.texi: Delete documentation of NON_SAVING_SETJMP.

	* config/i386/sysv3.h: Delete file.
	* config/i386/i386.c (ix86_svr3_asm_out_constructor): Delete.

From-SVN: r91101
2004-11-23 19:55:24 +00:00
Zack Weinberg
cf249358ea defaults.h, darwin.h: Don't define TARGET_SUPPORTS_HIDDEN.
* defaults.h, config/darwin.h: Don't define TARGET_SUPPORTS_HIDDEN.
	* system.h: Poison it.
	* doc/tm.texi: Delete its documentation.

From-SVN: r90840
2004-11-18 01:10:12 +00:00
Kazu Hirata
37bf6443fe sdbout.c (SDB_GENERATE_FAKE): Remove.
* sdbout.c (SDB_GENERATE_FAKE): Remove.
	(gen_fake_label): Don't use SDB_GENERATE_FAKE.
	* system.h: Poison SDB_GENERATE_FAKE.
	* doc/tm.texi (SDB_GENERATE_FAKE): Remove.

From-SVN: r90061
2004-11-04 13:23:23 +00:00
Zack Weinberg
93a27b7bad dbxout.c: Include obstack.h.
* dbxout.c: Include obstack.h.
	(ASM_STABS_OP): Take XCOFF_DEBUGGING_INFO into account in
	default definition.
	(ASM_STABD_OP, NO_DBX_MAIN_SOURCE_DIRECTORY, DBX_CONTIN_CHAR):
	Default-define here.
	(DBX_CONTIN_LENGTH): Move definition with others.
	(DBX_FINISH_STABS): New target macro.
	(current_sym_code, current_sym_value, current_sym_addr)
	(current_sym_nchars, CHARS, dbxout_continue)
	(print_int_cst_octal, print_octal, print_wide_int)
	(dbxout_prepare_symbol, dbxout_finish_symbol): Delete.
	(stabstr_ob, stabstr_last_contin_point): New variables.
	(NUMBER_FMT_LOOP): New improper macro.
	(dbxout_int, dbxout_stab_value_zero, dbxout_stab_value_label)
	(dbxout_stab_value_label_diff, dbxout_stab_value_internal_label)
	(dbxout_stab_value_internal_label_diff, dbxout_stabd)
	(dbxout_begin_stabn, dbxout_begin_stabn_sline)
	(dbxout_begin_simple_stabs, dbxout_begin_simple_stabs_desc)
	(dbxout_begin_complex_stabs, dbxout_finish_complex_stabs)
	(stabstr_C, stabstr_S, stabstr_I, stabstr_D, stabstr_U, stabstr_O)
	(stabstr_continue, DECL_ACCESSIBILITY_CHAR)
	New functions and/or proper function-like macros.
	(CONTIN): Use stabstr_continue, unconditionally.
	(get_lang_number): Define unconditionally, with ATTRIBUTE_UNUSED.
	(dbxout_init): Initialize stabstr_ob.  Check
	NO_DBX_MAIN_SOURCE_DIRECTORY.  Only write out the Ltext label
	if it was used.  Use the new interfaces.
	(dbxout_source_file): Remove file argument; always write to
	asm_out_file.  Use the new interfaces.
	(dbxout_type_method_1): Remove second argument which is always
	DECL_ASSEMBLER_NAME of the first argument.  Use the new interfaces.
	(dbxout_type_methods): Remove write-only variables.  Use the
	new interfaces.
	(dbxout_parms): Refactor to remove code duplicated in each of
	several successive if-else-if blocks.  Use the new interfaces.
	(dbxout_function_end, emit_bincl_stab, dbxout_end_source_file)
	(dbxout_source_line, dbxout_finish, dbxout_type_index)
	(dbxout_type_fields, dbxout_range_type, dbxout_type, dbxout_type_name)
	(dbxout_class_name_qualifiers, dbxout_symbol, dbxout_symbol_location)
	(dbxout_symbol_name, dbxout_reg_parms, dbxout_args)
	(dbx_output_lbrac, dbx_output_rbrac, dbxout_block):
	Use the new interfaces.
	* Makefile.in (dbxout.o): Update dependencies.

	* defaults.h: Don't define ASM_STABD_OP.
	* output.h: Prototype new dbxout_* interfaces.
	* system.h: Poison DBX_OUTPUT_GCC_MARKER and DBX_FINISH_SYMBOL.
	* varasm.c: Don't define ASM_STABS_OP.
	(default_stabs_asm_out_constructor, default_stabs_asm_out_destructor):
	Use the new dbxout.c interfaces.  Call sorry if neither
	DBX_DEBUGGING_INFO nor XCOFF_DEBUGGING_INFO is defined.

	* xcoffout.h: Don't define ASM_STABS_OP.
	(DBX_FINISH_SYMBOL): Rewrite and rename DBX_FINISH_STABS.
	(DBX_OUTPUT_MAIN_SOURCE_DIRECTORY, DBX_OUTPUT_GCC_MARKER): Delete.
	(NO_DBX_MAIN_SOURCE_DIRECTORY, NO_DBX_GCC_MARKER): Define.
	(DBX_OUTPUT_MAIN_SOURCE_FILE_END): Change bare block to
	do { ... } while (0) idiom.

	* config/alpha/alpha.c (num_source_filenames): Export.
	* config/alpha/alpha.h (num_source_filenames): Declare.
	(DBX_OUTPUT_SOURCE_LINE): Use new interfaces.
	(SDB_OUTPUT_SOURCE_LINE): Add missing newline.
	* config/m32r/m32r.h (DBX_OUTPUT_SOURCE_LINE): Use new interfaces.
	Always use .debugsym.  Update commentary.
	* config/mips/mips.h (DBX_OUTPUT_SOURCE_LINE): Use new interfaces.
	(SDB_OUTPUT_SOURCE_LINE): Add missing newline.
	* config/rs6000/linux64.h (DBX_OUTPUT_SOURCE_LINE, DBX_OUTPUT_BRAC):
	Use new interfaces.
	* config/rs6000/rs6000.c: If TARGET_MACHO, include gstab.h.
	(macho_branch_islands): Use new interfaces.

	* doc/tm.texi: Update.

From-SVN: r89623
2004-10-27 01:29:42 +00:00
Kazu Hirata
d0ed471f09 dbxout.c (dbxout_function_decl): Don't use DBX_OUTPUT_FUNCTION_END.
* dbxout.c (dbxout_function_decl): Don't use
	DBX_OUTPUT_FUNCTION_END.
	* system.h: Poison DBX_OUTPUT_FUNCTION_END.
	* doc/tm.texi (DBX_OUTPUT_FUNCTION_END): Remove.

From-SVN: r89496
2004-10-23 20:31:24 +00:00
Zack Weinberg
ac746f1dbb dbxout.c: Remove unnecessary #undefs.
* dbxout.c: Remove unnecessary #undefs.
	(GDB_INV_REF_REGPARM_STABS_LETTER, DBX_MEMPARM_STABS_LETTER)
	(FILE_NAME_JOINER, STABS_GCC_MARKER): Remove; fold sole
	definition into use sites.
	(cwd): Make local to dbxout_init.
	(dbxout_init): Restructure cwd-using logic for clarity.  Use
	IS_DIR_SEPARATOR.
	* xcoffout.h (DBX_OUTPUT_GCC_MARKER): Definition of
	STABS_GCC_MARKER folded in here.
	* system.h: Poison now-unused macros.
	* doc/tm.texi: Remove documentation of now-unused macros.

From-SVN: r89387
2004-10-21 17:22:01 +00:00
Kazu Hirata
9e749a8b42 defaults.h (DWARF2_GENERATE_TEXT_SECTION_LABEL): Remove.
* defaults.h (DWARF2_GENERATE_TEXT_SECTION_LABEL): Remove.
	* dwarf2out.c (dwarf2out_init): Remove references to
	DWARF2_GENERATE_TEXT_SECTION_LABEL.
	* system.h: Poison DWARF2_GENERATE_TEXT_SECTION_LABEL.
	* doc/tm.texi (DWARF2_GENERATE_TEXT_SECTION_LABEL): Remove.

From-SVN: r88631
2004-10-06 22:20:31 +00:00