1. 08 Dec, 2005 6 commits
    • call.c (build_conditional_expr): Print types in error messages. · f55ae172
      2005-12-08  Théodore Papadopoulo  <Theodore.Papadopoulo@sophia.inria.fr>
      
              * call.c (build_conditional_expr): Print types in error
                messages.
      
      From-SVN: r108222
      Théodore Papadopoulo committed
    • * tree.h (DECL_EXTERNAL): Clarify documentation. · 9783dd38
      From-SVN: r108221
      Gabriel Dos Reis committed
    • re PR target/25268 (ICE on lshrdi3_31 pattern) · 4989e88a
      2005-12-08  Andreas Krebbel  <krebbel1@de.ibm.com>
                  Jakub Jelinek  <jakub@redhat.com>
      
      	PR target/25268
      	* config/s390/s390.c (s390_decompose_shift_count): Remove BITS
      	argument.  Don't drop outer ANDs.
      	(s390_extra_constraint_str, print_shift_count_operand): Adjust callers.
      	* config/s390/s390-protos.h (s390_decompose_shift_count): Adjust
      	prototype.
      	* config/s390/predicates.md (setmem_operand): Remove.
      	(shift_count_operand): Rename to...
      	(shift_count_or_setmem_operand): ... this.  Adjust
      	s390_decompose_shift_count caller.
      	* config/s390/s390.md (<shift>di3_31_and, <shift>di3_64_and,
      	ashrdi3_cc_31_and, ashrdi3_cconly_31_and, ashrdi3_31_and,
      	ashrdi3_cc_64_and, ashrdi3_cconly_64_and, ashrdi3_64_and,
      	<shift>si3_and, ashrsi3_cc_and, ashrsi3_cconly_and, ashrsi3_and,
      	rotl<mode>3_and, setmem_long_and): New insns.
      	(<shift>di3_31, <shift>di3_64, ashrdi3_cc_31, ashrdi3_cconly_31,
      	ashrdi3_31, ashrdi3_cc_64, ashrdi3_cconly_64, ashrdi3_64,
      	<shift>si3, ashrsi3_cc, ashrsi3_cconly, ashrsi3, rotl<mode>3,
      	<shift>di3, ashrdi3): Use shift_count_or_setmem_operand instead
      	of shift_count_operand.
      	(setmem_long): Use shift_count_or_setmem_operand instead of
      	setmem_operand.
      
      2005-12-08  Andreas Krebbel  <krebbel1@de.ibm.com>
                  Jakub Jelinek  <jakub@redhat.com>
      
              PR target/25268
      	* gcc.c-torture/compile/20051207-1.c: New test.
      
      
      
      Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
      
      From-SVN: r108220
      Andreas Krebbel committed
    • Makefile.in (ALL_GTFILES_H): Replace sed statement with more portable tr expression. · 820715b8
      2005-12-08  Daniel Jacobowitz  <dan@codesourcery.com>  
      	    Andreas Tobler  <a.tobler@schweiz.ch>
      
      	* Makefile.in (ALL_GTFILES_H): Replace sed statement with more portable
      	tr expression.
      
      Co-Authored-By: Andreas Tobler <a.tobler@schweiz.ch>
      
      From-SVN: r108215
      Daniel Jacobowitz committed
    • i386-1.C, [...]: Also test on x86_64. · 9fecf303
      2005-12-06  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
      
      	* g++.dg/other/i386-1.C, gcc.c-torture/execute/990413-2.x,
      	gcc.dg/torture/pr18582-1.c,
      	gcc.target/i386/attributes-error.c: Also test on x86_64.
      
      	* gcc.dg/pr18928-1.c: Test on all targets supporting pic.
      
      From-SVN: r108209
      Kaveh R. Ghazi committed
    • Daily bump. · d3ca869a
      From-SVN: r108205
      GCC Administrator committed
  2. 07 Dec, 2005 28 commits
    • configopts.html ([--enable-libstdcxx-allocator]): Mention the SGI pooled allocator. · 638004cc
      2005-12-07  Paolo Carlini  <pcarlini@suse.de>
      
      	* docs/html/configopts.html ([--enable-libstdcxx-allocator]):
      	Mention the SGI pooled allocator.
      
      From-SVN: r108197
      Paolo Carlini committed
    • reload.h (reg_equiv_invariant): Declare. · 444aea52
      2005-12-07  J"orn Rennecke <joern.rennecke@st.com>
      
      	* reload.h (reg_equiv_invariant): Declare.
      	* reload.c (refers_to_regno_for_reload_p): Allow R to be a pseudo
      	register also when reg_equiv_invariant[R] is set.
      
      From-SVN: r108195
      J"orn Rennecke committed
    • * cp-gimplify.c (gimplify_cp_loop): Use fold_build3. · 3a0fddee
      From-SVN: r108192
      Volker Reichelt committed
    • darwin.h: Guard section variables with #ifndef USED_FOR_TARGET. · c3e23a08
      2005-12-07  Richard Sandiford  <richard@codesourcery.com>
      	    Andreas Tobler  <a.tobler@schweiz.ch>
      
      	* config/darwin.h: Guard section variables with #ifndef USED_FOR_TARGET.
      
      Co-Authored-By: Andreas Tobler <a.tobler@schweiz.ch>
      
      From-SVN: r108191
      Richard Sandiford committed
    • * newcvsroot: Remove. · 7a774079
      From-SVN: r108190
      Ben Elliston committed
    • re PR c++/19397 (ICE with invalid typedef) · b2fbe3f4
      	PR c++/19397
      	* g++.dg/template/typedef3.C: New test.
      
      	PR c++/19762
      	PR c++/19764
      	* g++.dg/template/dtor3.C: Fix error markers.
      
      From-SVN: r108187
      Volker Reichelt committed
    • tree-ssa-pre.c (bitmap_set_and): New function. · ff3fdad2
      2005-12-07  Daniel Berlin  <dberlin@dberlin.org>
      
      	* tree-ssa-pre.c (bitmap_set_and): New function.
      	(bitmap_set_and_compl): New function.
      	(bitmap_set_empty_p): New function.
      	(insert_extra_phis): New function.
      	(compute_avail): Use insert_extra_phis.
      
      From-SVN: r108183
      Daniel Berlin committed
    • s390.c (s390_expand_atomic): New function. · 45d18331
      2005-12-07  Adrian Straetling  <straetling@de.ibm.com>
      
      	* config/s390/s390.c (s390_expand_atomic): New function.
      	Adjust comment of helper functions.
      	* config/s390/s390-protos.h (s390_expand_atomic): Declare.
      	* config/s390/s390.md ("ATOMIC"): New code macro.
      	("atomic"): Corresponding new code attribute.
      	("sync_lock_test_and_set[hq]i", 
      	"sync_{new_,old_,}{and,ior,xor,add,sub,nand}[hq]i"): New pattern.
      
      From-SVN: r108180
      Adrian Straetling committed
    • s390.c (s390_expand_mask_and_shift, [...]): New. · 3093f076
      2005-12-07  Adrian Straetling  <straetling@de.ibm.com>
      
      	* config/s390/s390.c (s390_expand_mask_and_shift, 
      	struct alignment_context, init_alignment_context, 
      	s390_expand_cs_hqi): New.
      	* config/s390/s390-protos.h (s390_expand_cs_hqi): Declare.
      	* config/s390/s390.md ("sync_compare_and_swaphi",
      	"sync_compare_and_swapqi"): New pattern.
      
      	* lib/target-supports.exp (check_effective_target_sync_char_short):
      	Add s390*.
      
      From-SVN: r108178
      Adrian Straetling committed
    • Fix incorrect dates in ChangeLog. · 634010f7
      From-SVN: r108175
      Adrian Straetling committed
    • re PR tree-optimization/25291 (ICE in tree-check add_call_clobber_ops) · b0d008ab
      2005-12-07  Daniel Berlin <dberlin@dberlin.org>
      
      	Fix PR tree-optimization/25291
      	* tree-ssa-operands.c (add_call_clobber_ops): Remove
      	redundant and crashing check.
      
      From-SVN: r108168
      Daniel Berlin committed
    • re PR target/25212 (unrecognizable insn for facerec with odd optimization set) · 9024f4b8
      	PR target/25212
      	* config/rs6000/rs6000.c (legitimate_indexed_address_p): Relax
      	tests further when !strict && reload_in_progress.
      	(print_operand): Check that both operands of indexed address are regs.
      	(print_operand_address): Likewise.
      	* config/rs6000/rs6000.h (INT_REG_OK_FOR_INDEX_P): Simplify.
      	(INT_REG_OK_FOR_BASE_P): Correct.
      
      From-SVN: r108167
      Alan Modra committed
    • ffitarget.h: Remove obsolete sgidefs.h include. · 8a39029d
      2005-12-07  Thiemo Seufer  <ths@networkno.de>
      
      	* src/mips/ffitarget.h: Remove obsolete sgidefs.h include. Add
      	missing parentheses.
      	* src/mips/o32.S (ffi_call_O32): Code formatting. Define
      	and use A3_OFF, FP_OFF, RA_OFF. Micro-optimizations.
      	(ffi_closure_O32): Likewise, but with newly defined A3_OFF2,
      	A2_OFF2, A1_OFF2, A0_OFF2, RA_OFF2, FP_OFF2, S0_OFF2, GP_OFF2,
      	V1_OFF2, V0_OFF2, FA_1_1_OFF2, FA_1_0_OFF2, FA_0_1_OFF2,
      	FA_0_0_OFF2.
      	* src/mips/ffi.c (ffi_prep_args): Code formatting. Fix
      	endianness bugs.
      	(ffi_prep_closure): Improve trampoline instruction scheduling.
      	(ffi_closure_mips_inner_O32): Fix endianness bugs.
      
      From-SVN: r108165
      Thiemo Seufer committed
    • Preparation for PR rtl-optimization/20070 / part1 · 7f416ffb
      2005-12-07  J"orn Rennecke <joern.rennecke@st.com>
      
      	Preparation for PR rtl-optimization/20070 / part1
      	* basic-block.h (insns_match_p, flow_find_cross_jump): Declare.
      	* cfgcleanup.c (condjump_equiv_p): New function, broken out of
      	outgoing_edges_match.
      	(outgoing_edges_match): Use condjump_equiv_p.
      	(merge_memattrs, insns_match_p, flow_find_cross_jump): Move from here
      	into..
      	* struct-equiv.c: New file.
      	(death_notes_match_p) New function, broken out of insns_match_p.
      	* Makefile.in (OBJS-common): Add struct-equiv.o.
      	(struct-equiv.o): New target.
      
      From-SVN: r108164
      J"orn Rennecke committed
    • coretypes.h: Revert previous change. · 0e230dfa
      	* coretypes.h: Revert previous change.
      	* config/darwin.h: Revert previous reversion.
      	* config/avr/avr.h (progmem_section): Guard with #ifndef IN_LIBGCC2.
      
      From-SVN: r108163
      Richard Sandiford committed
    • coretypes.h (section): Provide dummy definition for target files. · 911ffe72
      	* coretypes.h (section): Provide dummy definition for target files.
      	* config/darwin.h: Revert previous change.
      
      From-SVN: r108159
      Richard Sandiford committed
    • sourcebuild.texi (all.build, [...]): Remove. · bd97af06
      gcc/
      	* doc/sourcebuild.texi (all.build, install-normal): Remove.
      	* configure.ac: Remove all.build and install-normal from target_list
      	* configure: Regenerate.
      	* Makefile.in (install): Don't depend on install-normal.
      gcc/java/
      	* Make-lang.in (java.all.build, java.install-normal): Remove.
      gcc/objc/
      	* Make-lang.in (objc.all.build, objc.install-normal): Remove.
      gcc/objcp/
      	* Make-lang.in (obj-c++.all.build, obj-c++.install-normal): Remove.
      gcc/cp/
      	* Make-lang.in (c++.all.build, c++.install-normal): Remove.
      gcc/ada/
      	* Make-lang.in (ada.install-normal): Remove.
      gcc/fortran/
      	* Make-lang.in (fortran.all.build, fortran.install-normal): Remove.
      gcc/treelang/
      	* Make-lang.in (treelang.all.build, treelang.install-normal): Remove.
      
      From-SVN: r108158
      Rafael Ávila de Espíndola committed
    • Makefile.in: Document the use of stamps. · f637f072
      	* Makefile.in: Document the use of stamps.
      
      From-SVN: r108156
      Rafael Ávila de Espíndola committed
    • gty.texi: Remove instructions for adding a dependency on s-gtype. · 2f4d2d18
      gcc/
      	* doc/gty.texi: Remove instructions for adding a dependency on s-gtype.
      	* Makefile.in: Add code to compute some dependencies on s-gtype
      	automatically.  Remove the declaration of those dependencies.
      gcc/java/
      	* Make-lang.in: Remove all dependencies on s-gtype, except for
      	gt-java-parse.h.
      gcc/objc/
      	* Make-lang.in: Remove all dependencies on s-gtype.
      gcc/objcp/
      	* Make-lang.in: Remove all dependencies on s-gtype.
      gcc/cp/
      	* Make-lang.in: Remove all dependencies on s-gtype.
      gcc/ada/
      	* Make-lang.in: Remove all dependencies on s-gtype.
      gcc/fortran/
      	* Make-lang.in: Remove all dependencies on s-gtype, except for
      	gt-fortran-trans.h.
      gcc/treelang/
      	* Make-lang.in: Remove all dependencies on s-gtype.
      
      From-SVN: r108155
      Alan Modra committed
    • reload.c (push_secondary_reload): Fix typo: s/insn_constraint/scratch_constraint/. · 58477b5d
      	* gcc/reload.c (push_secondary_reload): Fix typo:
      	s/insn_constraint/scratch_constraint/.
      
      From-SVN: r108154
      Richard Sandiford committed
    • alpha.c (alpha_start_function): Use switch_to_section. · d6b5193b
      	* 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
      Richard Sandiford committed
    • gcc.c (init_gcc_specs): Match braces inside conditionally compiled strings. · 5e4f1974
      	* gcc.c (init_gcc_specs): Match braces inside conditionally
      	compiled strings.
      
      From-SVN: r108151
      Alan Modra committed
    • * MAINTAINERS: Change email address. · a6d63770
      From-SVN: r108149
      Adam Nemet committed
    • re PR java/25283 (gcj generates invalid signature) · 53bbb42e
      	PR java/25283:
      	* parse.y (patch_new_array_init): Revert previous patch.
      	(lookup_method_invoke): Use size-less array type when creating an
      	anonymous constructor.
      
      From-SVN: r108143
      Tom Tromey committed
    • Daily bump. · 67c4e19e
      From-SVN: r108140
      GCC Administrator committed
  3. 06 Dec, 2005 6 commits