1. 17 Jan, 2002 1 commit
  2. 08 Jan, 2002 1 commit
  3. 09 Dec, 2001 1 commit
    • 1750a.md: Add default case in switch. · b3656137
      	* 1750a.md: Add default case in switch.
      	* alpha/vms.h (INITIAL_ELIMINATION_OFFSET): Add abort clause in
      	if-else statement.
      	* dsp16xx.c (print_operand_address): Likewise.
      	* i386/osf1elf.h (FUNCTION_PROFILER): Const-ify.
      	* ia64.md: Add missing braces.
      	* rs6000-protos.h (s8bit_cint_operand): Prototype.
      	* s390.h (INITIAL_ELIMINATION_OFFSET): Add abort clause in
              if-else statement.
      	* stormy16.h (REG_CLASS_CONTENTS): Add missing braces.
      	* v850.h (OUTPUT_ADDR_CONST_EXTRA): Don't issue a `return'.
      	* dbxout.c (dbxout_source_file): Move a variable into the scope
      	where it is used.
      	* final.c (profile_function): Mark parameter with
      	ATTRIBUTE_UNUSED.
      	* genemit.c (gen_expand): Likewise for generated file.
      	* insn-addr.h (INSN_ADDRESSES_NEW): Avoid undefined behavior.
      
      From-SVN: r47812
      Kaveh R. Ghazi committed
  4. 30 Nov, 2001 2 commits
  5. 14 Nov, 2001 1 commit
    • dbxout.c (dbxout_symbol_location): Update call of alter_subreg. · 49d801d3
      	* dbxout.c (dbxout_symbol_location): Update call of alter_subreg.
      	* final.c (walk_alter_subreg): Take pointer; update call of alter_subreg.
      	(final_scan_insn): Update call of alter_subreg.
      	(cleanup_subreg_operands): Likewise.
      	(alter_subreg): Rewrite using simplify_subreg.
      	(output_address, output_operand): Update call of alter_subreg.
      	* output.h (alter_subreg): Update prototype.
      	* sdbout.c (sdbout_symbol): Update call of alter_subreg.
      	* simplify-rtx.c (simplify_subreg): Copy ORIGINAL_REGNO.
      	* Makefile.in (final.o): Add depdendancy on expr.h
      
      From-SVN: r47013
      Jan Hubicka committed
  6. 12 Nov, 2001 1 commit
  7. 09 Nov, 2001 1 commit
    • c-lang.c (LANG_HOOKS_NAME): New. · 3ac88239
      	* c-lang.c (LANG_HOOKS_NAME): New.
      	(lang_hooks): Constify.
      	(c_init_options): Update.
      	(lang_identify): Remove.
      	* c-parse.in (language_string): Remove.
      	* dbxout.c: Include langhooks.h.
      	(dbxout_symbol_location): Update.
      	* dwarf2out.c: Include langhooks.h.
      	(gen_compile_unit_die): Update.
      	* dwarfout.c: Include langhooks.h.
      	(prototyped_attribute, output_compile_unit_die): Update.
      	* langhooks-def.h (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): New.
      	(LANG_HOOKS_INITIALIZER): Update.
      	* langhooks.h (struct lang_hooks): New members.  Constify.
      	* stringpool.c: Don't include toplev.h.
      	(set_identifier_size): Remove.
      	* toplev.c (toplev_main): Initialize identifier size.
      	(print_version): Update.
      	* tree.h (language_string, init_lex, lang_identify,
      	set_identifier_size): Remove.
      	* Makefile.in: Update dependencies.
      	* config/darwin.c: Include langhooks.h.
      	(func_name_maybe_scoped): Update.
      	* config/darwin.h (ASM_END_FILE): Update.
      	* config/nextstep.h (ASM_END_FILE): Update.
      	* config/nextstep21.h (ASM_END_FILE): Update.
      	* config/i386/sun386.h (ASM_END_FILE): Update.
      	* config/rs6000/rs6000.c (ASM_END_FILE): Include langhooks.h.
      	(rs6000_output_function_epilogue): Update.
      ada:
      	* misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
      	(struct lang_hooks): Constify.
      	(language_string, lang_identify): Remove.
      	* utils.c (init_decl_processing): Update.
      cp:
      	* cp-lang.c (LANG_HOOKS_NAME): Override.
      	(struct lang_hooks): Constify.
      	* lex.c (cxx_init_options): Update.
      	(lang_identify): Remove.
      	* parse.y (language_string): Remove.
      f:
      	* com.c (language_string, lang_identify): Remove.
      	(struct lang_hooks): Constify.
      	(LANG_HOOKS_NAME): Override.
      	(init_parse): Update.
      java:
      	* jcf-parse.c (init_lex): Remove.
      	* lang.c (language_string, lang_identify): Remove.
      	(struct lang_hooks): Constify.
      	(LANG_HOOKS_NAME): Override.
      	(init_parse): Update.
      objc:
      	* objc-act.c (LANG_HOOKS_NAME): Override.
      	(struct lang_hooks): Constify.
      	(objc_init_options): Update.
      	(lang_identify): Remove.
      
      From-SVN: r46874
      Neil Booth committed
  8. 04 Nov, 2001 1 commit
    • Makefile.in (dbxout.o): Depend on function.h. · c3fb23f4
      	* Makefile.in (dbxout.o): Depend on function.h.
      	* collect2.c (is_in_list): Hide unused function.
      	* dbxout.c: Include function.h.
      	(source_label_number, dbxout_source_line, dbxout_source_file,
      	dbxout_function_end, dbxout_begin_function): Wrap/move inside
      	macros controlling usage.
      	* gcc.c (TARGET_EXECUTABLE_SUFFIX): Undef before defining.
      	* output.h (exports_section): Prototype.
      
      From-SVN: r46759
      Kaveh R. Ghazi committed
  9. 11 Oct, 2001 1 commit
    • alias.c: Remove uses of "register" specifier in declarations of arguments and local... · b3694847
      2001-10-10  Stan Shebs  <shebs@apple.com>
      
              * alias.c: Remove uses of "register" specifier in declarations
              of arguments and local variables.
              * c-common.c: Ditto.
              * c-convert.c: Ditto.
              * c-decl.c: Ditto.
              * c-format.c: Ditto.
              * c-semantics.c: Ditto.
              * c-typeck.c: Ditto.
              * caller-save.c: Ditto.
              * calls.c: Ditto.
              * cfg.c: Ditto.
              * cfgbuild.c: Ditto.
              * cfgrtl.c: Ditto.
              * collect2.c: Ditto.
              * combine.c: Ditto.
              * convert.c: Ditto.
              * cppexp.c: Ditto.
              * cppfiles.c: Ditto.
              * cse.c: Ditto.
              * dbxout.c: Ditto.
              * defaults.h: Ditto.
              * df.c: Ditto.
              * dwarf2out.c: Ditto.
              * dwarfout.c: Ditto.
              * emit-rtl.c: Ditto.
              * explow.c: Ditto.
              * expmed.c: Ditto.
              * expr.c: Ditto.
              * final.c: Ditto.
              * fix-header.c: Ditto.
              * floatlib.c: Ditto.
              * flow.c: Ditto.
              * fold-const.c: Ditto.
              * function.c: Ditto.
              * gcc.c: Ditto.
              * gcse.c: Ditto.
              * gen-protos.c: Ditto.
              * genattrtab.c: Ditto.
              * gencheck.c: Ditto.
              * genconfig.c: Ditto.
              * genemit.c: Ditto.
              * genextract.c: Ditto.
              * genflags.c: Ditto.
              * gengenrtl.c: Ditto.
              * genoutput.c: Ditto.
              * genpeep.c: Ditto.
              * genrecog.c: Ditto.
              * gensupport.c: Ditto.
              * global.c: Ditto.
              * gmon.c: Ditto.
              * graph.c: Ditto.
              * haifa-sched.c: Ditto.
              * hard-reg-set.h: Ditto.
              * hash.c: Ditto.
              * integrate.c: Ditto.
              * jump.c: Ditto.
              * lists.c: Ditto.
              * local-alloc.c: Ditto.
              * loop.c: Ditto.
              * mips-tdump.c: Ditto.
              * mips-tfile.c: Ditto.
              * optabs.c: Ditto.
              * prefix.c: Ditto.
              * print-rtl.c: Ditto.
              * read-rtl.c: Ditto.
              * real.c: Ditto.
              * recog.c: Ditto.
              * reg-stack.c: Ditto.
              * regclass.c: Ditto.
              * regmove.c: Ditto.
              * reload.c: Ditto.
              * reload1.c: Ditto.
              * reorg.c: Ditto.
              * resource.c: Ditto.
              * rtl.c: Ditto.
              * rtlanal.c: Ditto.
              * scan.c: Ditto.
              * sched-deps.c: Ditto.
              * sched-rgn.c: Ditto.
              * sdbout.c: Ditto.
              * simplify-rtx.c: Ditto.
              * stmt.c: Ditto.
              * stor-layout.c: Ditto.
              * toplev.c: Ditto.
              * tradcif.y: Ditto.
              * tradcpp.c: Ditto.
              * tree.c: Ditto.
              * unroll.c: Ditto.
              * varasm.c: Ditto.
              * xcoffout.c: Ditto.
      
      From-SVN: r46173
      Stan Shebs committed
  10. 13 Sep, 2001 1 commit
    • c-parse.in (yyerror): Const-ification and/or static-ization. · 83182544
      	* c-parse.in (yyerror): Const-ification and/or static-ization.
      	* c-typeck.c (push_member_name): Likewise.
      	* collect2.c (main): Likewise.
      	* dbxout.c (dbxout_parms): Likewise.
      	* diagnostic.c (format_with_decl): Likewise.
      	* dwarf2out.c (output_ranges): Likewise.
      	* dwarfout.c (fundamental_type_code): Likewise.
      	* except.c (dw2_output_call_site_table): Likewise.
      	* gcc.c (do_spec_1): Likewise.
      	* genopinit.c (optabs): Likewise.
      	* objc/objc-act.c (synth_id_with_class_suffix, start_class,
      	gen_declaration_1, handle_impent): Likewise.
      	* protoize.c (default_include, in_system_include_dir, abspath):
      	Likewise.
      	* sched-vis.c (visualize_stall_cycles): Likewise.
      	* sdbout.c (plain_type_1, sdbout_end_function,
      	sdbout_end_epilogue): Likewise.
      	* varasm.c (decode_reg_name): Likewise.
      
      	* 1750a.c (mod_regno_adjust): Likewise.
      	* alpha.c (alpha_write_one_linkage,
      	unicosmk_output_default_externs): Likewise.
      	* arm.c (arm_condition_codes): Likewise.
      	* arm.h (arm_condition_codes): Likewise.
      	* avr.c (output_movsisf, encode_section_info): Likewise.
      	* darwin.h (GEN_BINDER_NAME_FOR_STUB, GEN_SYMBOL_NAME_FOR_SYMBOL):
      	Likewise.
      	* i386.c (hi_reg_name, qi_reg_name, qi_high_reg_name): Likewise.
      	* i386.h (hi_reg_name, qi_reg_name, qi_high_reg_name): Likewise.
      	* m88k.c (output_function_profiler): Likewise.
      	* mips.c (mips_output_conditional_branch): Likewise.
      	* ns32k.c (ns32k_out_reg_names): Likewise.
      	* ns32k.h (ns32k_out_reg_names): Likewise.
      	* pj.c (pj_output_rval): Likewise.
      	* rs6000.c (GEN_LOCAL_LABEL_FOR_SYMBOL): Likewise.
      	* sparc.c (sparc_flat_function_prologue,
      	sparc_flat_function_epilogue): Likewise.
      
      cp:
      	* decl.c (warn_extern_redeclared_static, cp_make_fname_decl):
      	Const-ification.
      	* pt.c (tsubst_decl): Likewise.
      
      f:
      	* bad.c (ffebad_finish): Const-ification and/or static-ization.
      	* intrin.c (ffeintrin_cmp_name_): Likewise.
      	* stc.c (ffestc_R904): Likewise.
      
      java:
      	* expr.c (expand_invoke): Const-ification.
      	* parse.y (patch_method_invocation): Likewise.
      
      From-SVN: r45581
      Kaveh R. Ghazi committed
  11. 11 Sep, 2001 1 commit
  12. 22 Aug, 2001 1 commit
    • Makefile.in, [...]: replace "GNU CC" with "GCC". · 1322177d
      	* Makefile.in, alias.c, basic-block.h, bb-reorder.c, bitmap.c,
      	bitmap.h, builtin-types.def, builtins.c, builtins.def,
      	c-aux-info.c, c-common.c, c-common.def, c-common.h,
      	c-convert.c, c-decl.c, c-dump.c, c-dump.h, c-errors.c,
      	c-format.c, c-lang.c, c-lex.c, c-lex.h, c-parse.in,
      	c-pragma.c, c-pragma.h, c-semantics.c, c-tree.h, c-typeck.c,
      	caller-save.c, calls.c, collect2.c, collect2.h, combine.c,
      	conditions.h, config.gcc, configure.frag, configure.in,
      	conflict.c, convert.c, convert.h, cppspec.c, crtstuff.c,
      	cse.c, cselib.c, cselib.h, dbxout.c, dbxout.h, defaults.h,
      	dependence.c, df.c, df.h, diagnostic.c, diagnostic.h,
      	doloop.c, dominance.c, dwarf.h, dwarf2.h, dwarf2asm.c,
      	dwarf2asm.h, dwarf2out.c, dwarf2out.h, dwarfout.c,
      	emit-rtl.c, errors.c, errors.h, except.c, except.h,
      	exgettext, explow.c, expmed.c, expr.c, expr.h, final.c,
      	fixproto, flags.h, flow.c, fold-const.c, fp-test.c,
      	function.c, function.h, gbl-ctors.h, gcc.c, gcc.h, gcc.hlp,
      	gccspec.c, gcov-io.h, gcse.c, genattr.c, genattrtab.c,
      	gencheck.c, gencodes.c, genconfig.c, genemit.c,
      	genextract.c, genflags.c, gengenrtl.c, genmultilib,
      	genopinit.c, genoutput.c, genpeep.c, genrecog.c,
      	gensupport.c, gensupport.h, ggc-callbacks.c, ggc-common.c,
      	ggc-none.c, ggc-page.c, ggc-simple.c, ggc.h, global.c,
      	graph.c, graph.h, gthr-aix.h, gthr-dce.h, gthr-posix.h,
      	gthr-rtems.h, gthr-single.h, gthr-solaris.h, gthr-vxworks.h,
      	gthr-win32.h, gthr.h, haifa-sched.c, halfpic.c, halfpic.h,
      	hard-reg-set.h, hwint.h, ifcvt.c, input.h, insn-addr.h,
      	integrate.c, integrate.h, jump.c, lcm.c, libgcc2.c,
      	libgcc2.h, lists.c, local-alloc.c, loop.c, loop.h,
      	machmode.def, machmode.h, main.c, mbchar.c, mbchar.h,
      	mips-tdump.c, mips-tfile.c, mklibgcc.in, mkmap-flat.awk,
      	mkmap-symver.awk, optabs.c, output.h, params.c, params.def,
      	params.h, predict.c, predict.def, predict.h, prefix.c,
      	prefix.h, print-rtl.c, print-tree.c, profile.c, protoize.c,
      	read-rtl.c, real.c, real.h, recog.c, recog.h, reg-stack.c,
      	regclass.c, regmove.c, regrename.c, regs.h, reload.c,
      	reload.h, reload1.c, reorg.c, resource.c, resource.h, rtl.c,
      	rtl.def, rtl.h, rtlanal.c, sbitmap.c, sbitmap.h,
      	sched-deps.c, sched-ebb.c, sched-int.h, sched-rgn.c,
      	sched-vis.c, sdbout.c, sdbout.h, sibcall.c, simplify-rtx.c,
      	ssa-ccp.c, ssa-dce.c, ssa.c, ssa.h, stmt.c, stor-layout.c,
      	stringpool.c, system.h, timevar.c, timevar.def, timevar.h,
      	tlink.c, toplev.c, toplev.h, tree.c, tree.def, tree.h,
      	tsystem.h, unroll.c, unwind-dw2-fde.c, unwind-dw2-fde.h,
      	unwind-dw2.c, unwind-pe.h, unwind-sjlj.c, unwind.h,
      	unwind.inc, varasm.c, varray.c, varray.h, xcoffout.c,
      	xcoffout.h: replace "GNU CC" with "GCC".
      
      From-SVN: r45105
      Lars Brinkhoff committed
  13. 08 Aug, 2001 1 commit
    • dbxout.c: Fix comment formatting. · 30f7a378
      	* dbxout.c: Fix comment formatting.
      	* dependence.c: Likewise.
      	* df.c: Likewise.
      	* diagnostic.c: Likewise.
      	* dominance.c: Likewise.
      	* doprint.c: Likewise.
      	* dwarf2out.c: Likewise.
      	* dwarfout.c: Likewise.
      	* emit-rtl.c: Likewise.
      	* except.c: Likewise.
      	* explow.c: Likewise.
      	* expmed.c: Likewise.
      	* expr.c: Likewise.
      	* flow.c: Likewise.
      	* fold-const.c: Likewise.
      	* function.c: Likewise.
      
      From-SVN: r44729
      Kazu Hirata committed
  14. 04 Aug, 2001 1 commit
    • target.h (gcc_target): Add asm_out.named_section, section_type_flags, have_named_sections. · 7c262518
      	* target.h (gcc_target): Add asm_out.named_section,
      	section_type_flags, have_named_sections.
      	* target-def.h (TARGET_ASM_NAMED_SECTION): New.
      	(TARGET_HAVE_NAMED_SECTIONS): New.
      	(TARGET_SECTION_TYPE_FLAGS): New.
      
      	* Makefile.in (toplev.o): Depend on TARGET_H.
      	(varasm.o, dbxout.o): Likewise.
      	* c-common.c (decl_attributes): Check targetm.have_named_sections
      	instead of ifdef ASM_OUTPUT_SECTION_NAME.
      	* dbxout.c (dbxout_function_decl): Likewise.
      	(dbxout_function_end): Likewise.
      	* toplev.c (compile_file): Likewise.
      	* varasm.c (exception_section): Likewise.
      	* cp/decl2.c (finish_objects): Likewise.
      
      	* defaults.h (EH_FRAME_SECTION): Remove.
      	(EH_FRAME_SECTION_ASM_OP): Remove.
      	(EH_FRAME_SECTION_NAME): New.
      	(UNIQUE_SECTION): Don't depend on ASM_OUTPUT_SECTION_NAME.
      	(UNIQUE_SECTION_P): Remove.
      	* dwarf2out.c (SECTION_FORMAT): Remove.
      	(ASM_OUTPUT_SECTION): Remove.
      	(output_call_frame_info): Use named_section_flags.
      	(output_comp_unit, dwarf2out_start_source_file): Likewise.
      	(dwarf2out_end_source_file, dwarf2out_define): Likewise.
      	(dwarf2out_undef, dwarf2out_init, dwarf2out_finish): Likewise.
      	* varasm.c (in_eh_frame, eh_frame_section): Remove.
      	(named_section_flags): New.
      	(named_section): Use it and targetm.section_type_flags.
      	(resolve_unique_section): New.
      	(assemble_start_function): Use it.
      	(asm_emit_uninitialised, assemble_variable): Likewise.
      	(default_section_type_flags): New.
      	(default_no_named_section, default_elf_asm_named_section): New.
      	(default_coff_asm_named_section, default_pe_asm_named_section): New.
      	* output.h: Update varasm.c decls.
      	(SECTION_*): New flags.
      
      	* crtstuff.c: Check EH_FRAME_SECTION_NAME not EH_FRAME_SECTION_ASM_OP.
      	(__EH_FRAME_BEGIN__, __FRAME_END__): Use attribute section.
      
      	* config/elfos.h (UNIQUE_SECTION_P): Remove.
      	* config/alpha/elf.h, config/arm/linux-elf.h: Likewise.
      	* config/arm/pe.h, config/arm/unknown-elf.h: Likewise.
      	* config/i386/cygwin.h, config/i386/djgpp.h: Likewise.
      	* config/i386/i386-interix.h, config/i386/win32.h: Likewise.
      	* config/ia64/sysv4.h, config/mcore/mcore-pe.h: Likewise.
      	* config/mips/elf.h, config/mips/elf64.h: Likewise.
      	* config/mips/iris6gld.h, config/mips/mips.h: Likewise.
      	* config/pa/pa64-hpux.h,
      
      	* config/elfos.h (ASM_OUTPUT_SECTION_NAME): Remove.
      	(TARGET_ASM_NAMED_SECTION): New.
      	* config/psos.h, config/a29k/a29k.h, config/alpha/elf.h: Likewise.
      	* config/alpha/vms.h, config/arm/coff.h: Likewise.
      	* config/arm/conix-elf.h, config/arm/elf.h: Likewise.
      	* config/arm/linux-elf.h, config/arm/pe.h: Likewise.
      	* config/arm/unknown-elf.h, config/avr/avr.h: Likewise.
      	* config/c4x/c4x.h, config/h8300/h8300.h: Likewise.
      	* config/i386/cygwin.h, config/i386/djgpp.h: Likewise.
      	* config/i386/i386-interix.h, config/i386/i386elf.h : Likewise.
      	* config/i386/sco5.h, config/i386/win32.h: Likewise.
      	* config/m68k/coff.h, config/mcore/mcore-pe.h: Likewise.
      	* config/mcore/mcore.h, config/mips/elf.h: Likewise.
      	* config/mips/elf64.h, config/mips/iris6.h: Likewise.
      	* config/mips/netbsd.h, config/mips/openbsd.h: Likewise.
      	* config/pa/pa64-hpux.h, config/rs6000/sysv4.h: Likewise.
      	* config/rs6000/xcoff.h, config/sh/sh.h: Likewise.
      	* config/sparc/sysv4.h: Likewise.
      
      	* config/nextstep.h: Error until named sections implemented.
      
      	* config/a29k/a29k.c (a29k_asm_named_section): New.
      	* config/alpha/alpha.c (SECTION_VMS_OVERLAY): New.
      	(vms_section_type_flags, vms_asm_named_section): New.
      	* config/arm/arm.c (arm_elf_asm_named_section): New.
      	* config/avr/avr.c (asm_output_section_name): Remove.
      	* config/avr/avr-protos.h: Update.
      	* config/c4x/c4x.c (c4x_asm_named_section): New.
      	* config/h8300/h8300.c (h8300_asm_named_section): New.
      	* config/i386/i386.c (sco_asm_named_section): New.
      	* config/i386/winnt.c (SECTION_PE_SHARED): New.
      	(i386_pe_section_type_flags): New.
      	(i386_pe_asm_named_section): New.
      	* config/i386/i386-protos.h: Update.
      	* config/m68k/m68k.c (m68k_coff_asm_named_section): New.
      	* config/mcore/mcore.c (mcore_asm_named_section): New.
      	* config/mips/mips.c (iris6_asm_named_section): New.
      	* config/mips/mips.h (ENCODE_SECTION_INFO): Use DECL_ONE_ONLY
      	instead of UNIQUE_SECTION_P.
      	* config/rs6000/rs6000.c (rs6000_elf_section_type_flags): New.
      	(xcoff_asm_named_section): New.
      	* config/sh/sh.c (sh_asm_named_section): New.
      	* config/sparc/sparc.c (sparc_elf_asm_named_section): New.
      
      	* config/i386/djgpp.h (EH_FRAME_SECTION_ASM_OP): Remove.
      	* config/i386/sco5.h (EH_FRAME_SECTION_ASM_OP*): Remove.
      	(EH_FRAME_SECTION_NAME): New.
      	(EXCEPTION_SECTION): New.
      	* config/ia64/ia64.h (EH_FRAME_SECTION_ASM_OP): Remove.
      	(DEBUG_*_SECTION): Remove.
      	* config/m68k/rtemself.h (EH_FRAME_SECTION_ASM_OP): Remove.
      	* config/mips/iris6.h (DEBUG_*_SECTION): Remove.
      	(EH_FRAME_SECTION_ASM_OP): Remove.
      
      	* doc/tm.texi (UNIQUE_SECTION_P): Remove.
      	(ASM_OUTPUT_SECTION_NAME): Remove.
      	(TARGET_ASM_NAMED_SECTION): New.
      	(TARGET_HAVE_NAMED_SECTIONS): New.
      	(TARGET_SECTION_TYPE_FLAGS): New.
      	(EH_FRAME_SECTION_ASM_OP): Remove.
      	(EH_FRAME_SECTION_NAME): New.
      
      From-SVN: r44623
      Richard Henderson committed
  15. 03 Aug, 2001 1 commit
  16. 26 Jul, 2001 1 commit
  17. 25 Jul, 2001 1 commit
    • dbxout.c: Consistently use putc instead of fputc. · 02e3f1a8
      	* dbxout.c: Consistently use putc instead of fputc.
       	(print_wide_int): New function; call instead of direct fprintf.
      	(dbxout_type_index): Adjust calls of CHARS to be more accurate.
      	(dbxout_type_fields, dbxout_type_method_1): Likewise.
      	(dbxout_type_methods, dbxout_range_type, dbxout_type): Likewise.
      	(print_int_cst_octal): Likewise.
      	(print_octal): Show we wrote characters.
      	(dbxout_type): Set have_used_extensions in more places.
      
      From-SVN: r44367
      Richard Kenner committed
  18. 22 Jul, 2001 2 commits
  19. 21 Jul, 2001 1 commit
    • dbxout.c (dbxout_global_decl): New. · f7e10587
      	* dbxout.c (dbxout_global_decl): New.
      	(xcoff_debug_hooks, dbx_debug_hooks): Use it.
      	* sdbout.c (sdbout_finish): New.
      	(sdbout_debug_hooks): Use it, add comments.
      	(sdbout_global_decl): Defer initialised public vars to
      	sdbout_finish.
      	* varasm.c (assemble_variable): Don't output debug information
      	for file-scope variables.
      
      Co-Authored-By: Richard Henderson <rth@redhat.com>
      
      From-SVN: r44232
      Neil Booth committed
  20. 19 Jul, 2001 2 commits
    • Makefile.in (emit-rtl.o, c-decl.o): Depend on debug.h. · e1772ac0
      	* Makefile.in (emit-rtl.o, c-decl.o): Depend on debug.h.
      	(final.o): Don't depend on xcoffout.h, dbxout.h or sdbout.h.
      	(toplev.o): Don't depend on xcoffout.h.
      	* c-decl.c: Include debug.h
      	(duplicate_decls): Use debug hook.
      	* dbxout.c (dbxout_source_file, dbxout_args): Make static.
      	(dbx_debug_hooks, xcoff_debug_hooks): Update.
      	(dbxout_types): Remove.
      	* dbxout.h (dbxout_source_file, dbxout_types, dbxout_args): Remove.
      	* debug.c (do_nothing_debug_hooks): Update.
      	(debug_true_tree, debug_nothing_rtx): New.
      	* debug.h (struct rtx_def): New.
      	(struct gcc_debug_hooks): New hooks ignore_block,
      	outlining_inline_function and label.
      	(debug_true_tree, debug_nothing_rtx, dwarf2out_frame_init,
      	dwarf2out_frame_finish): New.
      	* dwarf2out.c (dwarf2out_ignore_block, dwarf2out_abstract_function):
      	Make static, update prototype.
      	(dwarf2_debug_hooks): Update.
      	* dwarf2out.h (dwarf2out_ignore_block, dwarf2out_abstract_function,
      	dwarf2out_frame_init, dwarf2out_frame_finish): Remove.
      	* dwarfout.c (dwarf_debug_hooks): Update.
      	* emit-rtl.c: Include debug.h.
      	(remove_unnecessary_notes): Use debug hook.
      	* final.c: Don't include dbxout.h, xcoffout.h or sdbout.h.
      	(final_scan_insn): Use debug hook.
      	* integrate.c (output_inline_function): Use debug hook.
      	* sdbout.c (sdbout_toplevel_data, sdbout_label): Make static.
      	(sdb_debug_hooks): Update.
      	* sdbout.h (sdbout_label, sdbout_toplevel_data): Remove.
      	* toplev.c: Don't include xcoffout.h.
      	(note_outlining_of_inline_function, debug_ignore_block): Remove.
      	* toplev.h (note_outlining_of_inline_function, debug_ignore_block):
      	Remove.
      	* tree.h (dwarf2out_do_frame): Remove.
      
      From-SVN: r44163
      Neil Booth committed
    • Makefile.in (toplev.o, [...]): Don't depend on dwarfout.h. · 2b85879e
      	* Makefile.in (toplev.o, dwarfout.o, final.o): Don't depend on
      	dwarfout.h.
      	* dbxout.c (dbxout_function): Rename dbxout_funciton_decl, move
      	to conditionally compiled block.
      	(dbx_debug_hooks, xcoff_debug_hooks): Update.
      	* dbxout.h (dbxout_function): Remove.
      	* debug.c (do_nothing_debug_hooks): Update.
      	* debug.h (struct gcc_debug_hooks): New hooks function_decl,
      	global_decl, deferred_inline_function.
      	* dwarf2out.c (dwarf2_debug_hooks): Update.
      	(dwarf2out_global_decl): New.
      	* dwarfout.c: Don't include dwarfout.h.
      	(dwarfout_global_decl, dwarfout_function_decl,
      	dwarfout_deferred_inline_function): New.
      	(dwarf_debug_hooks): Update.
      	* dwarfout.h: Remove.
      	* final.c: Don't include dwarfout.h.
      	* sdbout.c (sdbout_global_decl): New.
      	(sdbout_debug_hooks): Update.
      	* toplev.c: Don't include dwarfout.h.
      	(check_global_declarations, rest_of_compilation): Use new debug hooks.
      	(note_deferral_of_defined_inline_function): Remove.
      	* toplev.h (note_deferral_of_defined_inline_function): Remove.
      	* ch/Makefile.in (lex.o): No dependence on dwarfout.h.
      	* ch/lex.c: Don't include dwarfout.h.
      	* cp/Make-lang.in (decl2.o): No dependence on dwarfout.h, dwarf2out.h.
      	(semantics.o, optimize.o): Depend on debug.h not dwarfout.h.
      	* cp/decl2.c: Don't include dwarfout.h and dwarf2out.h.
      	* cp/optimize.c: Include debug.h.
      	(maybe_clone_body): Use debug hook.
      	* cp/semantics.c: Include debug.h.
      	(expand_body): Use debug hook.
      	* po/POTFILES.in: Remove dwarfout.h.
      
      From-SVN: r44145
      Neil Booth committed
  21. 17 Jul, 2001 1 commit
    • dbxout.c (dbxout_really_begin_function): Rename to dbxout_begin_function. · 653e276c
      	* dbxout.c (dbxout_really_begin_function): Rename to
      	dbxout_begin_function.
      	(dbx_debug_hooks, xcoff_debug_hooks): Update.
      	(dbxout_begin_function): Remove.
      	(dbxout_function): Update.
      	(dbxout_source_line): Update prototype.
      	* dbxout.h (dbxout_begin_function): Remove.
      	* debug.c (do_nothing_debug_hooks): Update.
      	(debug_nothing_tree): Update.
      	(debug_nothing_charstar_rtx): Remove.
      	* debug.h (union tree_node): Declare.
      	(struct rtx_def): Remove.
      	(gcc_debug_hooks): New hooks begin_prologue, end_prologue,
      	begin_function.  Change source_line prototype.
      	(debug_nothing_tree): New.
      	(debug_nothing_charstar_rtx): Delete.
      	(dwarf2out_begin_prologue): Moved from ...
      	* tree.h: ... here.
      	* dwarf2out.c (dwarf2_debug_hooks): Update.
      	(dwarf2out_begin_prologue): Update prototype.  If genuine dwarf2
      	debug info, call dwarf2out_source_line.
      	(dwarf2out_souce_line): Update prototype.
      	* dwarfout.c (dwarfout_begin_function): Rename dwarfout_end_prologue.
      	Change prototype, make static.
      	(dwarfout_source_line): Update prototype.
      	(dwarf_debug_hooks): Update.
      	* dwarfout.h (dwarfout_begin_function): Remove.
      	* final.c (final_start_function, final_scan_insn): Use appropriate
      	debug hooks, update to use notice_source_line.
      	(output_source_line): Rename notice_source_line.  Don't call the
      	source_line debug hook.
      	* sdbout.c (sdbout_begin_function): Rename sdbout_begin_prologue,
      	make static, update prototype.
      	(sdbout_mark_begin_function): Rename sdbout_begin_function, update
      	prototype.
      	(sdbout_end_prologue): New.
      	(sdbout_source_line): Update prototype.
      	(sdbout_debug_hooks): Update.
      	(sdbout_symbol): Remove unused var.
      	* sdbout.h (sdbout_begin_function, sdbout_mark_begin_function):
      	Delete.
      	* varasm.c: Include debug.h.
      	(assemble_start_function): Use begin_function debug_hook.
      	* xcoffout.c (xcoffout_begin_prologue): Rename xcoffout_begin_function,
      	update with prototype.
      	(xcoffout_source_line): Update prototype.
      	* xcoffout.h (xcoffout_begin_prologue): Rename xcoffout_begin_function,
      	update prototype.
      	(xcoffout_source_line): Update prototype.
      
      From-SVN: r44087
      Neil Booth committed
  22. 15 Jul, 2001 1 commit
    • dbxout.c (dbxout_source_line): Make static, update prototype. · e2a12aca
      	* dbxout.c (dbxout_source_line): Make static, update prototype.
      	(dbx_debug_hooks, xcoff_debug_hooks): Add new hooks.
      	(dbxout_init, dbxout_finish, dbxout_source_line,
      	dbxout_begin_block, dbxout_end_block): Update for new prototypes.
      	* dbxout.h (dbxout_source_line): Delete.
      	* debug.c (debug_nothing_file, debug_nothing_file_int,
      	debug_nothing_file_charstar_rtx): New.
      	(do_nothing_debug_hooks): Update.
      	(debug_nothing_void, debug_nothing_charstar_rtx,
      	dwarf2out_end_epilogue): New.
      	(debug_nothing_file_charstar, debug_nothing_file_int_int): Rename.
      	* debug.h (struct rtx_def): Declare.
      	(gcc_debug_hooks): New hooks source_line, end_epilogue
      	and end_function.
      	(debug_nothing_void, debug_nothing_charstar_rtx,
      	dwarf2out_end_epilogue): New.
      	(debug_nothing_file_charstar, debug_nothing_file_int_int): Rename.
      	* dwarf2out.c (dwarf2out_source_line): Make static, update prototype.
      	(dwarf2_debug_hooks): Update.
      	(dwarf2out_init, dwarf2out_finish, dwarf2out_source_line,
      	dwarf2out_begin_block, dwarf2out_end_block): Update for new prototypes.
      	* dwarf2out.h (dwarf2out_source_line): Remove.
      	* dwarfout.c (dwarfout_end_epilogue, dwarfout_end_function):
      	Make static, update prototype.
      	(dwarfout_init, dwarfout_finish, dwarfout_source_line,
      	dwarfout_begin_block, dwarfout_end_block): Update for new prototypes.
      	(dwarf_debug_hooks): Update.
      	* dwarfout.h (dwarfout_end_epilogue, dwarfout_source_line,
      	dwarfout_end_function): Remove.
      	* final.c (profile_function): Use debug hooks for ending functions
      	and epilogues.
      	(output_source_line, final_end_function): Update prototype,
      	use debug hooks.
      	(final_start_function, final_scan_insn): Update.
      	* output.h (sdb_begin_function_line): Remove.
      	(final_end_function): Update prototype.
      	* sdbout.c (sdb_begin_function_line): Make static.
      	(PUT_SDB_EPILOGUE_END): Move to sdbout_end_epilogue.
      	(sdbout_source_line): New.
      	(sdbout_end_epilogue, sdbout_end_function): Make static, update
      	prototypes.
      	(sdb_debug_hooks): Update.
      	(sdbout_init, sdbout_source_line,
      	sdbout_begin_block, sdbout_end_block): Update for new prototypes.
      	* sdbout.h (sdbout_end_epilogue, sdbout_end_function): Remove.
      	* toplev.c (compile_file, rest_of_compilation): Update.
      	* tree.h (dwarf2out_end_epilogue): Move to debug.h.
      	* xcoffout.c (xcoffout_source_line, xcoffout_begin_block,
      	xcoffout_end_block, xcoffout_end_epilogue, xcoffout_end_function):
      	Update for prototype changes.
      	* xcoffout.h (xcoffout_source_line, xcoffout_begin_block,
      	xcoffout_end_block, xcoffout_end_epilogue): Update prototypes.
      
      From-SVN: r44017
      Neil Booth committed
  23. 12 Jul, 2001 1 commit
    • Makefile.in (final.o): Depend on debug.h. · a5a42b92
      	* Makefile.in (final.o): Depend on debug.h.
      	* dbxout.c (dbxout_begin_block, dbxout_end_block): New.
      	(dbx_debug_hooks): Add new hooks.
      	(xcoff_debug_hooks): New.
      	* debug.c (debug_nothing_file_int_int): New.
      	(do_nothing_debug_hooks): Update.
      	* debug.h (gcc_debug_hooks): New hooks begin_block and end_block.
      	(debug_nothing_file_int_int): New.
      	* dwarf2out.c (dwarf2out_begin_block, dwarf2out_end_block): Make
      	static, update prototype.
      	(dwarf2_debug_hooks): Update.
      	* dwarf2out.h (dwarf2out_begin_block, dwarf2out_end_block): Remove.
      	* dwarfout.c (dwarfout_begin_block, dwarfout_end_block): Make
      	static, update prototype.
      	(dwarf_debug_hooks): Update.
      	* dwarfout.h (dwarfout_begin_block, dwarfout_end_block): Remove.
      	* final.c: Include debug.h.
      	(final_scan_insn): Use debug hooks when beginning and ending blocks.
      	* sdbout.c (sdbout_begin_block, sdbout_end_block): Make
      	static, update prototype.
      	(sdb_debug_hooks): Update.
      	* sdbout.h (sdbout_begin_block, sdbout_end_block): Remove.
      	* toplev.c: Distinguish between xcoff and dbx.
      
      	* f/lex.c (ffelex_file_pop_, ffelex_file_push_, ffelex_hash_):
      	Call all debug hooks, not just dwarf ones.
      
      From-SVN: r43959
      Neil Booth committed
  24. 11 Jul, 2001 1 commit
    • Makefile.in (c-lex.o): Wrap long lines. · 7f905405
      	* Makefile.in (c-lex.o): Wrap long lines.  Depend on debug.h.
      	* c-lex.c (cb_file_change, cb_define, cb_undef): Use debug
      	hooks directly.
      	* dbxout.c (dbx_debug_hooks): Add new hooks.
      	(dbxout_start_new_source_file): Rename dbxout_start_source_file,
      	make static.
      	(dbxout_resume_previous_source_file): Rename dbxout_end_source_file,
      	make static.
      	* dbxout.h (dbxout_start_new_source_file,
      	dbxout_resume_previous_source_file): Delete.
      	* debug.c (do_nothing_debug_hooks): Add new hooks.
      	(debug_nothing_init_finish): Rename debug_nothing_file_charstar.
      	(debug_nothing_int_charstar, debug_nothing_int): New.
      	* debug.h (gcc_debug_hooks): New hooks define, undef,
      	start_source_file and end_source_file.
      	(debug_nothing_init_finish): Rename debug_nothing_file_charstar.
      	(debug_nothing_int_charstar, debug_nothing_int): New.
      	* dwarf2out.c (dwarf2_debug_hooks): Add new hooks.
      	(dwarf2out_start_source_file, dwarf2out_end_source_file,
      	dwarf2out_define, dwarf2out_undef): Make static.
      	* dwarf2out.h (dwarf2out_start_source_file, dwarf2out_end_source_file,
      	dwarf2out_define, dwarf2out_undef): Remove.
      	* dwarfout.c (dwarf_debug_hooks): Add new hooks.
      	(dwarfout_start_source_file, dwarfout_end_source_file,
      	dwarfout_define, dwarfout_undef): Make static.
      	(dwarfout_start_source_file_check,
      	dwarfout_end_source_file_check): New.
      	(dwarfout_define, dwarfout_finish): Update.
      	* dwarfout.h (dwarfout_start_new_source_file,
      	dwarfout_resume_previous_source_file, dwarfout_define,
      	dwarfout_undef): Remove.
      	* sdbout.c (sdb_debug_hooks): Add new hooks.
      	(sdbout_start_new_source_file): Rename sdbout_start_source_file,
      	make static.
      	(sdbout_resume_previous_source_file): Rename sdbout_end_source_file,
      	make static, take an arg.
      	* sdbout.h (sdbout_start_new_source_file,
      	sdbout_resume_previous_source_file): Delete.
      	* toplev.c (debug_start_source_file, debug_end_source_file,
      	debug_define, debug_undef): Delete.
      	* toplev.h (debug_start_source_file, debug_end_source_file,
      	debug_define, debug_undef): Delete.
      
      	* java/jcf-parse.c: Include debug.h.
      	(parse_class_file): Update to use debug hooks directly.
      	* java/Make-lang.in (jcf-parse.o): Depend on debug.h.
      
      From-SVN: r43952
      Neil Booth committed
  25. 10 Jul, 2001 1 commit
    • Makefile.in (toplev.o, [...]): Depend on debug.h, wrap long lines. · a51d908e
      	* Makefile.in (toplev.o, sdbout.o, dbxout.o, dwarfout.o,
      	dwarf2out.o): Depend on debug.h, wrap long lines.
      	* dbxout.c: Include debug.h.
      	(dbx_debug_hooks): New.
      	(dbxout_init): Make static, take just 2 args.
      	(dbxout_finish): Make static.
      	* dbxout.h (dbxout_init, dbxout_finish): Delete.
      	* debug.c: New file.
      	* debug.h: New file.
      	* dwarf2out.c: Include debug.h.
      	(dwarf2_debug_hooks): New.
      	(dwarf2out_init): Make static.
      	(dwarf2out_finish): Make static, take 2 args.
      	* dwarf2out.h (dwarf2out_init, dwarf2out_finish): Delete.
      	* dwarfout.c: Include debug.h.
      	(dwarf_debug_hooks): New.
      	(dwarfout_init): Make static.
      	(dwarfout_finish): Make static, take 2 args.
      	* dwarfout.h (dwarfout_init, dwarfout_finish): Delete.
      	* sdbout.c: Include debug.h.
      	(sdb_debug_hooks): New.
      	(sdbout_init): Make static, take 2 args.
      	* sdbout.h (sdbout_init): Delete.
      	* toplev.c: Include debug.h.
      	(debug_hooks): New.
      	(compile_file): Set deubg_hooks based on command line options.
      	Use the hooks unconditionally rather than conditional compilation.
      
      From-SVN: r43908
      Neil Booth committed
  26. 08 Jun, 2001 1 commit
  27. 25 May, 2001 1 commit
  28. 23 May, 2001 1 commit
  29. 21 May, 2001 1 commit
  30. 18 May, 2001 1 commit
  31. 17 May, 2001 1 commit
  32. 01 May, 2001 1 commit
    • dbxout.c, [...]: Always include gstab.h, not system stab.h. · 7719ffbf
      	* dbxout.c, mips-tfile.c, config/mips/mips.c, xcoffout.c:
      	Always include gstab.h, not system stab.h.  Don't provide
      	default definitions of N_CATCH or N_OPT.  Always use the
      	gstab.h variant of STAB_CODE_TYPE.
      	* final.c: Don't include stab.h/gstab.h at all, or provide
      	defaults for N_SLINE and N_SOL.
      
      	* xcoffout.c: Can assume N_MAIN, N_DSLINE, N_BSLINE, N_BINCL,
      	N_EINCL, N_EXCL, N_M2C, N_SCOPE, N_CATCH, and N_OPT are
      	available.
      	* sdbout.c: Always include gsyms.h instead of system syms.h.
      
      	* configure.in: No need to check for stab.h.
      	* configure, config.in: Regenerate.
      	* Makefile.in (final.o): Don't depend on gstab.h.
      
      From-SVN: r41713
      Zack Weinberg committed
  33. 23 Apr, 2001 1 commit
    • collect2.c (main): Use concat in lieu of xmalloc/sprintf. · d4c3ec27
      	* collect2.c (main): Use concat in lieu of xmalloc/sprintf.
      	(write_c_file_stat): Likewise.
      
      	* dbxout.c (dbxout_init): Likewise.
      
      	* profile.c (output_func_start_profiler): Likewise.
      
      cp:
      	* xref.c (GNU_xref_file): Use concat in lieu of xmalloc/sprintf.
      
      f:
      	* com.c (ffecom_subscript_check_): Use concat in lieu of
      	xmalloc/sprintf.
      
      java:
      	* jvspec.c (lang_specific_driver): Fix memory allocation
      	deficit, by using concat in lieu of xmalloc/sprintf.
      
      From-SVN: r41495
      Kaveh R. Ghazi committed
  34. 18 Apr, 2001 1 commit
    • dbxout.c (dbxout_init): If DBX_OUTPUT_GCC_MARKER is defined, use it instead of… · ad087b92
      dbxout.c (dbxout_init): If DBX_OUTPUT_GCC_MARKER is defined, use it instead of blindly generating a .stabs.
      
      	* dbxout.c (dbxout_init): If DBX_OUTPUT_GCC_MARKER is defined,
      	use it instead of blindly generating a .stabs.
      	* xcoffout.h: Define DBX_OUTPUT_GCC_MARKER so we put the type
      	in the right place.
      	* xcoffout.c: Don't bother defining default for N_CATCH.
      	(UNKNOWN_STAB): Use internal_error.
      	(stab_to_sclass): Remove now-unnecessary aborts.
      	Remove #if 0'ed case N_BROWS.  Add #ifdef N_OPT block.
      
      From-SVN: r41404
      Zack Weinberg committed
  35. 17 Apr, 2001 1 commit
  36. 16 Apr, 2001 1 commit
    • toplev.c (output_lang_identify): Delete. · acb0db7b
      	* toplev.c (output_lang_identify): Delete.
      	(compile_file): Don't call ASM_IDENTIFY_GCC or ASM_IDENTIFY_LANGUAGE.
      	Don't generate gcc2_compiled. label.  Don't emit a nop if profiling.
      	If IDENT_ASM_OP is defined, emit an .ident "GCC (GNU) <version>"
      	after calling ASM_FILE_END.
      
      	* dbxout.c (dbxout_init): Don't call ASM_IDENTIFY_GCC_AFTER_SOURCE.
      	Instead, unconditionally emit an N_OPT stab with string equal
      	to STABS_GCC_MARKER, which defaults to "gcc2_compiled."
      
      	* defaults.h: Don't provide default for ASM_IDENTIFY_LANGUAGE.
      
      	* config/dbxelf.h, config/freebsd.h, config/nextstep.h,
      	config/psos.h, config/ptx4.h, config/1750a/1750a.h,
      	config/alpha/alpha.h, config/alpha/elf.h, config/arc/arc.h,
      	config/arm/aof.h, config/arm/coff.h, config/arm/elf.h,
      	config/arm/linux-elf.h, config/avr/avr.h, config/d30v/d30v.h,
      	config/dsp16xx/dsp16xx.h, config/h8300/h8300.h,
      	config/i370/i370.h, config/i386/beos-elf.h,
      	config/i386/osf1elf.h, config/i386/osfrose.h,
      	config/ia64/sysv4.h, config/m68k/3b1.h, config/m68k/auxgas.h,
      	config/m68k/crds.h, config/m68k/hp320.h, config/m68k/m68kv4.h,
      	config/m68k/mot3300.h, config/m68k/news.h, config/m68k/sgs.h,
      	config/m68k/tower-as.h, config/mcore/mcore-elf.h,
      	config/mips/iris6.h, config/mips/osfrose.h,
      	config/mips/sni-svr4.h, config/pa/som.h, config/pdp11/pdp11.h,
      	config/sparc/sp64-elf.h:
      	Delete definitions of any or all of: ASM_IDENTIFY_GCC,
      	ASM_IDENTIFY_GCC_AFTER_SOURCE, and ASM_IDENTIFY_LANGUAGE.
      
      	* config/elfos.h, config/freebsd.h, config/linux.h,
      	config/alpha/elf.h, config/arm/linux-elf.h, config/i386/i386elf.h,
      	config/i386/ptx4-i.h, config/mips/gnu.h, config/mips/linux.h,
      	config/sparc/linux.h, config/sparc/linux64.h: Delete definitions
      	of ASM_FILE_START which merely emit a .version directive.  Delete
      	definitions of ASM_FILE_END which merely emit an .ident directive.
      
      	* config/avr/avr.h, config/vax/vax.h: Delete definition of
      	ASM_IDENTIFY_GCC and move part of its logic into
      	ASM_FILE_START.
      
      	* config/i386/att.h, config/i386/gas.h, config/i386/linux.h,
      	config/sparc/linux-aout.h: Don't emit .version directive in
      	ASM_FILE_START.
      
      	* config/i386/dgux.c, config/m88k/m88k.c, config/sh/sh.c
      	(output_file_start): Correct comment.
      
      	* config/i386/osfrose.h: Don't emit trailing .ident directive.
      	* config/m68k/mot3300.h: Override STABS_GCC_MARKER to "gcc2_compiled%"
      	to match gdb.
      	* config/pa/lib2funcs.asm: Delete gcc_compiled. label.
      	* config/rs6000/aix.h: Correct comment.
      
      	* config/i386/i386afe.h: Delete.
      	* config.gcc: Remove references to i386afe.h.
      
      	* tm.texi: Delete documentation of ASM_IDENTIFY_GCC.  The
      	other macros deleted by this patch were undocumented.
      
      From-SVN: r41385
      Zack Weinberg committed
  37. 03 Apr, 2001 1 commit
    • Use byte offsets in SUBREGs instead of words. · ddef6bc7
      2001-04-03  Jakub Jelinek  <jakub@redhat.com>
      	    David S. Miller  <davem@pierdol.cobaltmicro.com>
                  Andrew MacLeod  <amacleod@redhat.com>
      
      	Use byte offsets in SUBREGs instead of words.
      
      	* alias.c (nonlocal_mentioned_p): Use subreg_regno function.
      	* caller-save.c (mark_set_regs): Change callers of subreg_hard_regno
      	to pass new argument.
      	(add_stored_regs): Use subreg_regno_offset function.
      	* calls.c (expand_call): For non-paradoxical SUBREG take endianess
      	into account.
      	(precompute_arguments): Use gen_lowpart_SUBREG.
      	* combine.c (try_combine): Replace explicit XEXP with SUBREG_REG.
      	(combine_simplify_rtx): Rework to use SUBREG_BYTE.
      	(simplify_set): Rework to use SUBREG_BYTE.
      	(expand_field_assignment): Use SUBREG_BYTE.
      	(make_extraction): Use SUBREG_BYTE.
      	(if_then_else_cond): Use SUBREG_BYTE.
      	(apply_distributive_law): Use SUBREG_BYTE and fixup subreg comments.
      	(gen_lowpart_for_combine): Compute full byte offset.
      	* cse.c (mention_regs): Use SUBREG_BYTE.
      	(remove_invalid_subreg_refs): Rework to use SUBREG_BYTE.
      	(canon_hash): Use SUBREG_BYTE.
      	(fold_rtx): Pass SUBREG_BYTE div UNITS_PER_WORD to operand_subword.
      	(gen_lowpart_if_possible): Formatting.
      	* dbxout.c (dbxout_symbol_location): Compute SUBREG hard regnos
      	correctly.
      	* dwarf2out.c (is_pseudo_reg): Fixup explicit XEXP into SUBREG_REG
      	(mem_loc_descriptor): Fixup explicit XEXP into SUBREG_REG
      	(loc_descriptor): Fixup explicit XEXP into SUBREG_REG
      	* dwarfout.c (is_pseudo_reg): Fixup explicit XEXP into SUBREG_REG
      	(output_mem_loc_descriptor): Fixup explicit XEXP into SUBREG_REG
      	(output_loc_descriptor): Fixup explicit XEXP into SUBREG_REG
      	* emit-rtl.c (gen_rtx_SUBREG): New function, used to verify
      	certain invariants about SUBREGs the compiler creates.
      	(gen_lowpart_SUBREG): New function.
      	(subreg_hard_regno): New function to get the final register number.
      	(gen_lowpart_common): Use SUBREG_BYTE.
      	(gen_imagpart): Spacing nits.
      	(subreg_realpart_p): Use SUBREG_BYTE.
      	(gen_highpart): Use SUBREG_BYTE.
      	(subreg_lowpart_p): Always compute endian corrected goal offset,
      	even at the byte level, then compare against that.
      	(constant_subword): New function, pulled out all constant cases
      	from operand_subword and changed second argument name to offset.
      	(operand_subword): Detect non REG/SUBREG/CONCAT/MEM cases early
      	and call constant_subword to do the work.  Return const0_rtx if
      	looking for a word outside of OP.
      	(operand_subword_force): Change second arg name to offset.
      	* expmed.c (store_bit_field): Use SUBREG_BYTE.
      	(store_split_bit_field): Use SUBREG_BYTE.
      	(extract_bit_field): Use SUBREG_BYTE.
      	(extract_split_bit_field): Use SUBREG_BYTE.
      	(expand_shift): Use SUBREG_BYTE.
      	* expr.c (store_expr, expand_expr): Use gen_lowpart_SUBREG.
      	* final.c (alter_subreg) Use subreg_hard_regno and SUBREG_BYTE.
      	* flow.c (set_noop_p): Use SUBREG_BYTE.
      	(mark_set_1): Remove ALTER_HARD_SUBREG. Use subreg_regno_offset instead.
      	* function.c (fixup_var_refs_1): Fixup explicit XEXP into a SUBREG_REG.
      	(fixup_memory_subreg): Use SUBREG_BYTE and remove byte endian
      	correction code.
      	(optimize_bit_field): Use SUBREG_BYTE.
      	(purge_addressof_1): Use SUBREG_BYTE.
      	(purge_single_hard_subreg_set): Use subreg_regno_offset function.
      	(assign_params): Mark arguments SUBREG_PROMOTED_VAR_P if they are
      	actually promoted by the caller and PROMOTE_FOR_CALLS_ONLY is true.
      	* gengenrtl.c (special_rtx): Add SUBREG.
      	* global.c (mark_reg_store): Use SUBREG_BYTE.
      	(set_preference): Rework to use subreg_regno_offset and SUBREG_BYTE.
      	* ifcvt (noce_emit_move_insn): Use SUBREG_BYTE.
      	* integrate.c (copy_rtx_and_substitute): Use SUBREG_BYTE and make sure
      	final byte offset is congruent to subreg's mode size.
      	(subst_constants): Use SUBREG_BYTE.
      	(mark_stores): Use subreg_regno_offset function.
      	* jump.c (rtx_renumbered_equal_p, true_regnum): Use subreg_regno_offset
      	function and SUBREG_BYTE.
      	* local-alloc.c (combine_regs): Use subreg_regno_offset function.
      	(reg_is_born): Use subreg_hard_regno.
      	* recog.c (valid_replace_rtx_1): Use SUBREG_BYTE and remove byte
      	endian correction code.  Don't combine subregs unless resulting
      	offset aligns with type.  Fix subreg constant extraction for DImode.
      	Simplify SUBREG of VOIDmode CONST_DOUBLE.
      	(general_operand): Remove dead mode_altering_drug code.
      	(indirect_operand): Use SUBREG_BYTE.
      	(constrain_operands): Use subreg_regno_offset function.
      	* reg-stack.c (get_true_reg): Use subreg_regno_offset function.
      	* regmove.c (regmove_optimize): Use SUBREG_BYTE.
      	(optimize_reg_copy_3): Use gen_lowpart_SUBREG.
      	* regs.h (REG_SIZE): Allow target to override.
      	(REGMODE_NATURAL_SIZE): New macro which target can override.
      	* reload.c (reload_inner_reg_of_subreg): subreg_regno should be used
      	on the entire subreg rtx.
      	(push_reload): Use SUBREG_BYTE in comments and code.
      	(find_dummy_reload): Use subreg_regno_offset.  Only adjust offsets
      	for hard registers inside subregs.
      	(operands_match_p): Use subreg_regno_offset.
      	(find_reloads): Use SUBREG_BYTE and only advance offset for subregs
      	containing hard regs.
      	(find_reload_toplev): Use SUBREG_BYTE.  Remove byte endian
      	corrections when fixing up MEM subregs.
      	(find_reloads_address_1): Use SUBREG_BYTE, subreg_regno, and
      	subreg_regno_offset where appropriate.
      	(find_reloads_subreg_address): Use SUBREG_BYTE.  Remove
      	byte endian corrections when fixing up MEM subregs.
      	(subst_reloads): When combining two subregs, make sure final
      	offset is congruent to subreg's mode size.
      	(find_replacement): Use SUBREG_BYTE and subreg_regno_offset.
      	(refers_to_regno_for_reload_p): Use subreg_regno.
      	(reg_overlap_mentioned_for_reload_p): Use subreg_regno_offset.
      	* reload1.c (eliminate_regs) Use SUBREG_BYTE. Remove byte endian
      	correction code for memory subreg fixups.
      	(forget_old_reload_1): Use subreg_regno_offset.
      	(choose_reload_regs): Use subreg_regno.
      	(emit_input_reload_insns): Use SUBREG_BYTE.
      	(reload_combine_note_store): Use subreg_regno_offset.
      	(move2add_note_store): Use subreg_regno_offset.
      	* resource.c (update_live_status, mark_referenced_resources): Use
      	subreg_regno function.
      	(mark_set_resources): Use subreg_regno function.
      	* rtl.h (SUBREG_WORD): Rename to SUBREG_BYTE.
      	(subreg_regno_offset, subreg_regno): Define prototypes.
      	(subreg_hard_regno, constant_subword, gen_rtx_SUBREG): Newi functions.
      	(gen_lowpart_SUBREG): Add prototype.
      	* rtl.texi (subreg): Update to reflect new byte offset representation.
      	Add mentioning of the effect that BYTES_BIG_ENDIAN has on subregs now.
      	* rtlanal.c (refers_to_regno_p): Use subreg_regno.
      	(reg_overlap_mentioned_p): Use subreg_regno.
      	(replace_regs); Make sure final offset of combined subreg is
      	congruent to size of subreg's mode.
      	(subreg_regno_offset): New function.
      	(subreg_regno): New function.
      	* sched-vis.c (print_value): Change SUBREG_WORD to SUBREG_BYTE.
      	* sdbout.c (sdbout_symbol): Compute offset using alter_subreg.
      	* stmt.c (expand_anon_union_decl): Use gen_lowpart_SUBREG.
      	* tm.texi (ALTER_HARD_SUBREG): Remove, it is now dead.
      	(SUBREG_REGNO_OFFSET): Describe SUBREG_REGNO_OFFSET overrides.
      	* config/a29k/a29k.c (gpc_reg_operand): Use subreg_regno.
      	(a29k_get_reloaded_address): Use SUBREG_BYTE.
      	(print_operand): Use SUBREG_BYTE.
      	* config/alpha/alpha.c (print_operand_address): Use SUBREG_BYTE.
      	* config/arm/arm.c (arm_reload_in_hi): Use SUBREG_BYTE.
      	(arm_reload_out_hi): Use SUBREG_BYTE.
      	* config/d30v/d30v.c (d30v_split_double): Use subreg_regno_offset
      	instead of SUBREG_WORD.
      	(d30v_print_operand_memory_reference): Use subreg_regno_offset.
      	* config/dsp16xx/dsp16xx.md (extendqihi2, zero_extendqihi2): Fix
      	SUBREG creation to use byte offset.
      	* config/h8300/h8300.md (Unnamed HImode zero extraction and 16bit
      	inverted load insns): Fix explicit rtl subregs to use byte
      	offsets.
      	* config/i370/i370.md (cmpstrsi, movstrsi, mulsi3, divsi3,
      	udivsi3, umodsi3): Generate SUBREGs with byte offsets.
      	* config/i860/i860.c (single_insn_src_p): Use SUBREG_BYTE.
      	* config/i860/i860.md (mulsi3_big): Fixup explicit SUBREGs in rtl
      	to use byte offsets.
      	(unnamed fmlow.dd insn): Fixup SUBREGS to use byte offsets.
      	* config/i960/i960.md (extendhisi2): Generate SUBREGs with byte
      	offsets, also make sure it is congruent to SUBREG's mode size.
      	(extendqisi2, extendqihi2, zero_extendhisi2, zero_extendqisi2,
      	unnamed ldob insn): Generate SUBREGs with byte offset.
      	(zero_extendqihi2): SUBREG's are byte offsets.
      	* config/m68hc11/m68hc11.c (m68hc11_gen_lowpart): Use SUBREG_BYTE.
      	(m68hc11_gen_highpart): Use SUBREG_BYTE.
      	* config/m68k/m68k.md (zero_extendhisi2, zero_extendqihi2,
      	zero-extendqisi2): Generate SUBREGs with byte offset.
      	(umulsidi3, mulsidi3, subreghi1ashrdi_const32,
      	subregsi1ashrdi_const32, subreg1lshrdi_const32): Fixup explicit
      	subregs in rtl to use byte offsets.
      	* config/m88k/m88k.md (extendsidi2): fixup subregs to use byte offset.
      	* config/mips/mips.c (mips_move_1word): Use subreg_regno_offset.
      	(mips_move_2words): Use subreg_regno_offset.
      	(mips_secondary_reload_class): Use subreg_regno_offset.
      	* config/mips/mips.md (DImode plus, minus, move, and logical op
      	splits): Fixup explicit subregs in rtl to use byte offsets.
      	* config/mn10200/mn10200.c (print_operand): Use subreg_regno function.
      	* config/mn10300/mn10300.c (print_operand): Use subreg_regno function.
      	* config/ns32k/ns32k.md (udivmoddisi4): Fix explicit subregs in
      	rtl to use byte offsets.
      	* config/pa/pa.c (emit_move_sequence): Use SUBREG_BYTE.
      	* config/pa/pa.md (floatunssisf2, floatunssidf2, mulsi3): fix explicit
      	subregs to use byte offsets.
      	* config/pdp11/pdp11.md (zero_extendhisi2, modhi3, modhi3+1):
      	Fixup explicit subregs in rtl to use byte offsets.
      	* config/romp/romp.c (memory_offset_in_range_p): Use SUBREG_BYTE
      	and remove byte endian correction code.
      	* config/sh/sh.c (output_movedouble): Use subreg_regno.
      	(gen_ashift_hi): Use SUBREG_BYTE.
      	(regs_used): Use subreg_regno_offset.
      	(machine_dependent_reorg): Use subreg_regno_offset.
      	* config/sh/sh.h (INDEX_REGISTER_RTX_P): Use SUBREG_BYTE.
      	* config/sh/sh.md (DImode and DFmode move splits): Use subreg_regno.
      	(movdf_i4): Subregs are byte offsets now.
      	* config/sparc/sparc.c (ultra_find_type): Use SUBREG_BYTE.
      	* config/sparc/sparc.h (ALTER_HARD_SUBREG): Removed.
      	(REGMODE_NATURAL_SIZE): Override.
      	(REG_SIZE): For SUBREG check float mode on SUBREG_REG's mode.
      	* config/sparc/sparc.md (TFmode move splits): Generate SUBREGs
      	with byte offsets.
      	(zero_extendhisi2, zero_extendqidi2_insn, extendhisi2,
      	extendqihi2, sign_extendqihi2_insn, sign_extendqisi2_insn,
      	extendqidi2): Generate SUBREGs with byte offsets, also make sure
      	it is congruent to SUBREG's mode size.
      	(smulsi3_highpart_v8plus): Fix explicit subregs in rtl to use byte
      	offsets.
      	(cmp_siqi_trunc, cmp_siqi_trunc_set, cmp_diqi_trunc,
      	cmp_diqi_trunc_set, lshrdi3_v8plus+1, lshrdi3_v8plus+2,
      	lshrdi3_v8plus+3, lshrdi3_v8plus+4): Use proper
      	SUBREG_BYTE offset for non-paradoxical subregs in patterns.
      	* config/v850/v850.c (print_operand, output_move_double): Use
      	subreg_regno function.
      
      Co-Authored-By: Andrew MacLeod <amacleod@redhat.com>
      Co-Authored-By: David S. Miller <davem@pierdol.cobaltmicro.com>
      
      From-SVN: r41058
      Jakub Jelinek committed