Richard Henderson
715bdd29f3
varasm.c (named_section_flags): Remove align parameter.
...
* varasm.c (named_section_flags): Remove align parameter.
* varasm.c, dwarf2out.c: Update all callers.
* output.h: Update prototypes.
* target.h (target.asm_out.named_section): Remove align parameter.
* varasm.c, config/a29k/a29k.c, config/alpha/alpha.c,
config/arm/arm.c, config/c4x/c4x.c, config/h8300/h8300.c,
config/i386/i386.c, config/i386/winnt.c, config/m68k/m68k.c,
config/mcore/mcore.c, config/mips/mips.c, config/rs6000/rs6000.c,
config/sh/sh.c, config/sparc/sparc.c: Update implementations to match.
* varasm.c (in_named_entry_eq, in_named_entry_hash): New.
(get_named_section_flags, set_named_section_flags): New.
(named_section_flags): Use them.
(named_section): Do decl vs section flags check here...
(default_section_type_flags): ... not here.
(init_varasm_once): Create in_named_htab.
(resolve_unique_section): Mark reloc unused.
From-SVN: r44953
2001-08-16 19:33:41 -07:00
Richard Henderson
d67c7dd855
m68k.c (m68k_svr3_asm_out_constructor): Protect with ifdef CTOR_LIST_BEGIN instead of INIT_SECTION_ASM_OP.
...
* config/m68k/m68k.c (m68k_svr3_asm_out_constructor): Protect with
ifdef CTOR_LIST_BEGIN instead of INIT_SECTION_ASM_OP.
From-SVN: r44770
2001-08-10 09:56:53 -07:00
Richard Henderson
2cc07db4b0
Move constructor/destructor handling into target hooks.
...
From-SVN: r44747
2001-08-09 15:33:35 -07:00
Richard Henderson
7c262518a4
target.h (gcc_target): Add asm_out.named_section, section_type_flags, have_named_sections.
...
* 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
2001-08-03 18:31:41 -07:00
Roman Zippel
8406d02387
m68k.md: Replace all general_operand with nonimmediate_operand for all destinations.
...
* config/m68k/m68k.md: Replace all general_operand with
nonimmediate_operand for all destinations.
* config/m68k/m68k.c (not_sp_operand): Likewise.
From-SVN: r44499
2001-07-30 20:45:08 -07:00
Roman Zippel
f18bff15c9
m68k.h (TARGET_SWITCHES/TARGET_OPTIONS): Add missing doc strings
...
* config/m68k/m68k.h (TARGET_SWITCHES/TARGET_OPTIONS):
Add missing doc strings
* config/m68k/linux-aout.h (SUBTARGET_SWITCHES): Likewise
* config/m68k/linux.h (SUBTARGET_SWITCHES): Likewise
From-SVN: r44489
2001-07-30 14:30:40 -07:00
Richard Henderson
97660e202f
m68k.c (const_uint32_operand): Abort if mode is <= 32 bits.
...
* m68k.c (const_uint32_operand): Abort if mode is <= 32 bits.
(const_sint32_operand): Likewise.
* m68k.md (anon mulsi pattern): Use const_int_operand not
const_sint32_operand.
(umulsi3_highpart): Zero extend a constant input.
(smulsi3_highpart): Don't bother checking SImode constant.
(const_umulsi3_highpart): Give op3 DImode.
(const_smulsi3_highpart): Likewise.
From-SVN: r44252
2001-07-22 21:46:53 -07:00
Roman Zippel
ed6ba1a5c3
m68k.md (zero_extend?i?i2 expander): Use gen_lowpart instead of doing the change by hand.
...
* m68k.md (zero_extend?i?i2 expander): Use gen_lowpart instead
of doing the change by hand.
Co-Authored-By: Jan Hubicka <jh@suse.cz>
From-SVN: r44212
2001-07-20 20:19:12 +00:00
Richard Henderson
6d5f49b2f4
m68k.c: Include expr.h and reload.h.
...
* config/m68k/m68k.c: Include expr.h and reload.h.
(print_operand_address) [16 bit int]: Cast INTVAL to int for %d.
[general int]: Use HOST_WIDE_INT_PRINT_DEC.
From-SVN: r44065
2001-07-16 23:54:45 -07:00
Marc Espie
f1cf4606f9
config.gcc (*-*-openbsd*): Add fragment to compile libgcc correctly for shared configurations.
...
2001-07-13 Marc Espie <espie@cvs.openbsd.org>
* config.gcc (*-*-openbsd*): Add fragment to compile libgcc
correctly for shared configurations.
* config/t-libgcc-pic: New.
* config/{i386,m68k,sparc}/t-openbsd: New.
* config/openbsd.h: Include cpu_spec in cpp_spec where needed.
Support -shared. Support debugging libraries with -g.
* config/i386/openbsd.h: Correct ASM_COMMENT_START. Ensure dwarf2
frame information does not emit pointer diffs.
* config/sparc/openbsd.h: Ensure dwarf2 frame information does not
emit pointer diffs.
From-SVN: r43988
2001-07-13 18:12:22 +00:00
Neil Booth
17b53c33a2
final.c (output_addr_const): Use target opening and closing parentheses.
...
* final.c (output_addr_const): Use target opening and
closing parentheses.
* target-def.h: Define TARGET_ASM_OPEN_PAREN, TARGET_ASM_CLOSE_PAREN
defaults, add to TARGET_ASM_OUT.
* target.h (struct gcc_target): Add open_paren and close_paren.
* doc/md.texi: Update.
* doc/tm.texi: Document TARGET_ASM_FUNCTION_END_PROLOGUE,
TARGET_ASM_FUNCTION_BEGIN_EPILOGUE, TARGET_ASM_OPEN_PAREN and
TARGET_ASM_CLOSE_PAREN.
config:
* i386/i386.c (TARGET_ASM_OPEN_PAREN, TARGET_ASM_CLOSE_PAREN):
Override.
* pdp11/pdp11.c (TARGET_ASM_OPEN_PAREN, TARGET_ASM_CLOSE_PAREN):
Override.
* 1750a/1750a.h (ASM_OPEN_PAREN, ASM_CLOSE_PAREN): Remove.
* a29k/a29k.h: Similarly.
* alpha/alpha.h: Similarly.
* arc/arc.h: Similarly.
* arm/aof.h: Similarly.
* arm/aout.h: Similarly.
* avr/avr.h: Similarly.
* c4x/c4x.h: Similarly.
* clipper/clipper.h: Similarly.
* convex/convex.h: Similarly.
* d30v/d30v.h: Similarly.
* dsp16xx/dsp16xx.h: Similarly.
* elxsi/elxsi.h: Similarly.
* fr30/fr30.h: Similarly.
* h8300/h8300.h: Similarly.
* i370/i370.h: Similarly.
* i386/i386.h: Similarly.
* i860/i860.h: Similarly.
* i960/i960.h: Similarly.
* ia64/ia64.h: Similarly.
* m32r/m32r.h: Similarly.
* m68hc11/m68hc11.h: Similarly.
* m68k/m68k.h: Similarly.
* m88k/m88k.h: Similarly.
* mcore/mcore.h: Similarly.
* mips/mips.h: Similarly.
* mn10200/mn10200.h: Similarly.
* mn10300/mn10300.h: Similarly.
* ns32k/ns32k.h: Similarly.
* pa/pa.h: Similarly.
* pdp11/pdp11.h: Similarly.
* pj/pj.h: Similarly.
* romp/romp.h: Similarly.
* rs6000/rs6000.h: Similarly.
* sh/sh.h: Similarly.
* sparc/sparc.h: Similarly.
* v850/v850.h: Similarly.
* vax/vax.h: Similarly.
* we32k/we32k.h: Similarly.
From-SVN: r43856
2001-07-09 06:10:09 +00:00
Stan Shebs
f6897b10e1
target.h (targetm): Rename global from "target", so as not to conflict with local variables.
...
* target.h (targetm): Rename global from "target", so as not to
conflict with local variables.
* c-decl.c: Ditto.
* c-typeck.c: Ditto.
* final.c: Ditto.
* tree.c: Ditto.
* cp/decl.c: Ditto.
* cp/decl2.c: Ditto.
* cp/typeck.c: Ditto.
* 1750a/1750a.c: Ditto.
* a29k/a29k.c: Ditto.
* arc/arc.c: Ditto.
* arm/arm.c: Ditto.
* avr/avr.c: Ditto.
* clipper/clipper.c: Ditto.
* convex/convex.c: Ditto.
* d30v/d30v.c: Ditto.
* dsp16xx/dsp16xx.c: Ditto.
* elxsi/elxsi.c: Ditto.
* fr30/fr30.c: Ditto.
* h8300/h8300.c: Ditto.
* i370/i370.c: Ditto.
* i386/i386.c: Ditto.
* i860/i860.c: Ditto.
* i960/i960.c: Ditto.
* ia64/ia64.c: Ditto.
* m32r/m32r.c: Ditto.
* m68hc11/m68hc11.c: Ditto.
* m68k/m68k.c: Ditto.
* m88k/m88k.c: Ditto.
* mips/mips.c: Ditto.
* ns32k/ns32k.c: Ditto.
* pa/pa.c: Ditto.
* pdp11/pdp11.c: Ditto.
* romp/romp.c: Ditto.
* rs6000/rs6000.c: Ditto.
* sh/sh.c: Ditto.
* sparc/sparc.c: Ditto.
* vax/vax.c: Ditto.
* we32k/we32k.c: Ditto.
* doc/tm.texi: Update the manual to match.
From-SVN: r43831
2001-07-07 01:07:22 +00:00
Neil Booth
08c148a85c
Makefile.in (final.o): Depend on target.h.
...
* Makefile.in (final.o): Depend on target.h.
* final.c: Include target.h.
(default_function_pro_epilogue): New.
(final_start_function): Use target structure for function prologues.
(final_end_function): Use target structure for function epilogues.
* fold-const.c (real_hex_to_f): Constify s and p.
* output.h (default_function_pro_epilogue): New.
* real.h (real_hex_to_f): Update prototype.
* target-def.h (TARGET_ASM_FUNCTION_PROLOGUE,
TARGET_ASM_FUNCTION_EPILOGUE, TARGET_ASM_OUT): New.
(TARGET_INITIALIZER): Update.
* target.h (gcc_target): Add struct asm_out.
* doc/tm.texi: Update.
config:
Update each arch to use TARGET_ASM_FUNCTION_PROLOGUE and
TARGET_ASM_FUNCTION_EPILOGUE. Move macro code to functions
in cpu/cpu.c, or rename old functions consistently. Take
a HOST_WIDE INT not an int as the SIZE parameter. Remove now
redundant macros and prototypes. Make new functions static.
* 1750a/1750a.c: Similarly.
* 1750a/1750a.h: Similarly.
* a29k/a29k-protos.h: Similarly.
* a29k/a29k.c: Similarly.
* a29k/a29k.h: Similarly.
* arc/arc-protos.h: Similarly.
* arc/arc.c: Similarly.
* arc/arc.h: Similarly.
* arm/arm-protos.h: Similarly.
* arm/arm.c: Similarly.
* arm/arm.h: Similarly.
* avr/avr-protos.h: Similarly.
* avr/avr.c: Similarly.
* avr/avr.h: Similarly.
* clipper/clipper-protos.h: Similarly.
* clipper/clipper.c: Similarly.
* clipper/clipper.h: Similarly.
* convex/convex.c: Similarly.
* convex/convex.h: Similarly.
* d30v/d30v-protos.h: Similarly.
* d30v/d30v.c: Similarly.
* d30v/d30v.h: Similarly.
* d30v/d30v.md: Similarly.
* dsp16xx/dsp16xx-protos.h: Similarly.
* dsp16xx/dsp16xx.c: Similarly.
* dsp16xx/dsp16xx.h: Similarly.
* elxsi/elxsi.c: Similarly.
* elxsi/elxsi.h: Similarly.
* fr30/fr30.c: Similarly.
* fr30/fr30.md: Similarly.
* h8300/h8300-protos.h: Similarly.
* h8300/h8300.c: Similarly.
* h8300/h8300.h: Similarly.
* i370/i370-protos.h: Similarly.
* i370/i370.c: Similarly.
* i370/i370.h: Similarly.
* i386/i386.c: Similarly.
* i386/osf1elf.h: Similarly.
* i386/osfrose.h: Similarly.
* i860/i860-protos.h: Similarly.
* i860/i860.c: Similarly.
* i860/i860.h: Similarly.
* i960/i960-protos.h: Similarly.
* i960/i960.c: Similarly.
* i960/i960.h: Similarly.
* ia64/ia64-protos.h: Similarly.
* ia64/ia64.c: Similarly.
* ia64/ia64.h: Similarly.
* m32r/m32r-protos.h: Similarly.
* m32r/m32r.c: Similarly.
* m32r/m32r.h: Similarly.
* m68hc11/m68hc11-protos.h: Similarly.
* m68hc11/m68hc11.c: Similarly.
* m68hc11/m68hc11.h: Similarly.
* m68k/crds.h: Similarly.
* m68k/dpx2.h: Similarly.
* m68k/m68k-protos.h: Similarly.
* m68k/m68k.c: Similarly.
* m68k/m68k.h: Similarly.
* m68k/news.h: Similarly.
* m88k/m88k-protos.h: Similarly.
* m88k/m88k.c: Similarly.
* m88k/m88k.h: Similarly.
* mips/mips-protos.h: Similarly.
* mips/mips.c: Similarly.
* mips/mips.h: Similarly.
* ns32k/merlin.h: Similarly.
* ns32k/ns32k.c: Similarly.
* ns32k/ns32k.h: Similarly.
* ns32k/tek6000.h: Similarly.
* pa/pa-protos.h: Similarly.
* pa/pa.c: Similarly.
* pa/pa.h: Similarly.
* pdp11/2bsd.h: Similarly.
* pdp11/pdp11-protos.h: Similarly.
* pdp11/pdp11.c: Similarly.
* pdp11/pdp11.h: Similarly.
* romp/romp-protos.h: Similarly.
* romp/romp.c: Similarly.
* romp/romp.h: Similarly.
* rs6000/rs6000-protos.h: Similarly.
* rs6000/rs6000.c: Similarly.
* rs6000/rs6000.h: Similarly.
* rs6000/sysv4.h: Similarly.
* sh/sh-protos.h: Similarly.
* sh/sh.c: Similarly.
* sh/sh.h: Similarly.
* sparc/sparc-protos.h: Similarly.
* sparc/sparc.c: Similarly.
* sparc/sparc.h: Similarly.
* vax/vax.c: Similarly.
* vax/vax.h: Similarly.
* vax/vms.h: Similarly.
* we32k/we32k.c: Similarly.
* we32k/we32k.h: Similarly.
From-SVN: r43817
2001-07-06 18:40:17 +00:00
Richard Kenner
b72f00afa4
explow.c (plus_constant_wide, case PLUS): Call find_constant_term and avoid checking for constant as first operand.
...
* explow.c (plus_constant_wide, case PLUS): Call find_constant_term
and avoid checking for constant as first operand.
* recog.c (find_constant_term_loc): No longer static.
(adj_offettable_operand): Delete.
* rtl.h (adj_offsettable_operand): Delete declaration.
(find_constant_term): Add declaration.
* caller-save.c: Replace calls to adj_offsettable_operand with calls
to adjust_address.
* config/arm/arm.c, config/c4x/c4x.c: Likewise.
* config/clipper/clipper.md, config/h8300/h8300.c: Likewise.
* config/i386/i386.c, config/i386/i386.md: Likewise.
* config/i860/i860.c, config/i960/i960.c: Likewise.
* config/i960/i960.md, config/m68hc11/m68hc11.c: Likewise.
* config/m68k/m68k.c, config/m68k/m68k.md: Likewise.
* config/m88k/m88k.md, config/mcore/mcore.c: Likewise.
* config/mips/mips.c, config/mips/mips.md: Likewise.
* config/mn10200/mn10200.c, config/mn10300/mn10300.c: Likewise.
* config/ns32k/ns32k.c, config/ns32k/ns32k.md: Likewise.
* config/pa/pa.c, config/pdp11/pdp11.c: Likewise.
* config/pdp11/pdp11.md, config/sh/sh.c, config/v850/v850.c: Likewise.
* config/vax/vax.md, config/ns32k/ns32k.c: Likewise.
* config/ns32k/ns32k.md: Likewise.
From-SVN: r43733
2001-07-03 15:44:20 -04:00
Richard Kenner
ed8908e739
explow.c (plus_constant_wide, [...]): New case.
...
* explow.c (plus_constant_wide, case LO_SUM): New case.
(plus_constant_for_output_wide): Delete.
* rtl.h (plus_constant_for_output): Delete.
* alias.c (canon_rtx, init_alias_analysis): Call plus_constant
instead of plus_constant_for_output.
* recog.c (offsettable_address_p, adj_offsettable_operand): Likewise.
* config/darwin.c, config/arm/arm.c, config/m68k/m68k.c: Likewise.
* config/m88k/m88k.c, config/mips/mips.c, config/pa/pa.c: Likewise.
* config/rs6000/rs6000.c, config/sparc/sparc.c: Likewise.
* config/sparc/sparc.md: Likewise.
Convert some change_address calls to adjust_address.
From-SVN: r43720
2001-07-02 21:58:35 -04:00
Richard Kenner
f4ef873c31
emit-rtl.c (adjust_address): New function.
...
* emit-rtl.c (adjust_address): New function.
* expr.h (adjust_address): Add declaration.
* builtins.c: Replace some calls to change_address with calls to it
or to validize_mem.
* caller-save.c, dwarf2out.c, except.c, expmed.c, expr.c: Likewise.
* function.c, config/a29k/a29k.md, config/alpha/alpha.c: Likewise.
* config/arm/arm.c, config/convex/convex.c: Likewise.
* config/dsp16xx/dsp16xx.md, config/fr30/fr30.c: Likewise.
* config/i386/i386.c, config/i386/i386.md: Likewise.
* config/ia64/ia64.c, config/ia64/ia64.md: Likewise.
* config/m32r/m32r.c, config/m68k/m68k.md: Likewise.
* config/m88k/m88k.c, config/mips/mips.md: Likewise.
* config/ns32k/ns32k.c, config/rs6000/rs6000.c: Likewise.
* config/sh/sh.c, config/sparc/sparc.md: Likewise.
From-SVN: r43702
2001-07-02 15:47:44 -04:00
Neil Booth
672a6f42e9
Makefile.in (TARGET_H, [...]): New.
...
* Makefile.in (TARGET_H, TARGET_DEF_H): New.
(c-decl.o, tree.o, c-typeck.o, $(out_object_file)): Update.
* c-decl.c (duplicate_decls): Use function pointer.
* c-typeck.c (common_type): Similarly.
* tree.c (valid_machine_attribute): Similarly.
(merge_machine_type_attributes): Rename merge_type_attributes.
(merge_machine_decl_attributes): Rename merge_decl_attributes.
(merge_dllimport_decl_attributes): New function.
* tree.h (merge_machine_type_attributes): Rename merge_type_attributes.
(merge_machine_decl_attributes): Rename merge_decl_attributes.
(merge_dllimport_decl_attributes): New prototype.
* target.h: New.
* target-def.h: New.
doc: (Joseph Myers)
* doc/gcc.texi, doc/tm.texi: Update documentation.
cp: Make-lang.in: Update dependencies.
* spew.c: Include target.h.
(duplicate_decls): Call target function.
* decl2.c: include target.h
(import_export_class): Use existence of target function pointer.
* typeck.c: Include target.h.
(qualify_type_recursive): Rename variable. Call target function.
(type_after_usual_arithmetic_conversions): Similarly.
(common_type): Similarly.
config: * 1750a/1750a.c, a29k/29k.c, alpha/alpha.c, arc/arc.c, arm/arm.c,
avr/avr.c, c4x/c4x.c, clipper/clipper.c, convex/convex.c,
d30v/d30v.c, dsp16xx/dsp16xx.c, elxsi/elxsi.c, fr30/fr30.c,
i370/i370.c, i386/i386.c, i860/i860.c, i960/i960.c, ia64/ia64.c,
m32r/m32r.c, m68hc11/m68hc11.c, m68k/m68k.c, m88k/m88k.c,
mips/mips.c, mn10200/mn10200.c, mn10300/mn10300.c, ns32k/ns32k.c,
pa/pa.c, pdp11/pdp11.c, pj/pj.c, romp/romp.c, rs6000/rs6000.c,
sh/sh.c, sparc/sparc.c, v850/v850.c, vax/vax.c, we32k/we32k.c)
: Include target.h and target-def.h. Define target.
* arc/arc-protos.h (arc_valid_machine_decl_attribute): Remove.
* arc/arc.c (arc_valid_machine_decl_attribute): Rename
arc_valid_decl_attribute, make static.
* arc/arc.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
* arm/arm-protos.h (arm_valid_machine_decl_attribute,
arm_valid_type_attribute_p, arm_pe_valid_machine_decl_attribute,
arm_pe_merge_machine_decl_attributes): Remove.
* arm/arm.c (arm_valid_machine_decl_attribute_p): Rename
arm_valid_decl_attribute_p, make static.
(arm_pe_valid_decl_attribute_p): Move from pe.c.
* arm/pe.c (arm_pe_valid_machine_decl_attribute_p): Move to arm.c.
(arm_pe_merge_machine_decl_attributes): Move to tree.c.
* arm/arm.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
* arm/coff.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
* arm/elf.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
* arm/pe.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): New.
(VALID_MACHINE_TYPE_ATTRIBUTE, VALID_MACHINE_DECL_ATTRIBUTE): Remove.
* avr/avr-protos.h (valid_machine_type_attribute,
valid_machine_decl_attribute): Remove.
* avr/avr.c (valid_machine_type_attribute,
valid_machine_decl_attribute): Rename and make static.
* avr/avr.h (VALID_MACHINE_TYPE_ATTRIBUTE,
VALID_MACHINE_DECL_ATTRIBUTE): Remove.
* c4x/c4x-protos.h (c4x_valid_type_attribute_p): Remove.
* c4x/c4x.c (c4x_valid_type_attribute_p): Make static.
* c4x/c4x.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
* d30v/d30v.h: Remove obsolete comments.
* h8300/h8300-protos.h (h8300_valid_machine_decl_attribute): Remove.
* h8300/h8300.c (h8300_valid_machine_decl_attribute): Rename, make
static.
* h8300/h8300.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
* i386/cygwin.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define.
(i386_pe_merge_decl_attributes, MERGE_MACHINE_DECL_ATTRIBUTES,
i386_pe_valid_type_attributes_p): Remove.
* i386/i386-protos.h (ix86_valid_decl_attribute_p,
ix86_valid_type_attribute_p): Remove.
* i386/i386.c (ix86_valid_decl_attribute_p): Remove.
(ix86_valid_type_attribute_p): Make static.
* i386/i386.h (VALID_MACHINE_DECL_ATTRIBUTE,
VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
* i386/winnt.c (i386_pe_merge_decl_attributes): Move to tree.c.
* ia64/ia64-protos.h (ia64_valid_type_attribute): Remove.
* ia64/ia64.c (ia64_valid_type_attribute): Make static.
* ia64/ia64.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
* m32r/m32r-protos.h (m32r_valid_machine_decl_attribute): Remove.
* m32r/m32r.c (m32r_valid_decl_attribute): Make static.
* m32r/m32r.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
* m68hc11/m68hc11-protos.h (m68hc11_valid_decl_attribute_p,
m68hc11_valid_type_attribute_p): Remove.
* m68hc11/m68hc11.c (m68hc11_valid_decl_attribute_p): Remove.
(m68hc11_valid_type_attribute_p): Make static.
* m68hc11/m68hc11.h (VALID_MACHINE_DECL_ATTRIBUTE,
VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
* mcore/mcore-protos.h (mcore_valid_machine_decl_attribute,
mcore_merge_machine_decl_attribute): Remove.
* mcore/mcore.c (mcore_valid_machine_decl_attribute): Rename,
make static.
(mcore_merge_machine_decl_attributes): Move to tree.c.
* mcore/mcore.h (VALID_MACHINE_DECL_ATTRIBUTE,
VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
(TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define.
* ns32k/ns32k-protos.h (ns32k_valid_decl_attribute_p,
ns32k_valid_type_attribute_p): Remove.
* ns32k/ns32k.c (ns32k_valid_decl_attribute_p): Remove.
(ns32k_valid_type_attribute_p): Make static.
* ns32k/ns32k.h (VALID_MACHINE_DECL_ATTRIBUTE,
VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
* rs6000/rs6000-protos.h (rs6000_valid_decl_attribute_p,
rs6000_valid_type_attribute_p): Remove.
* rs6000/rs6000.c (rs6000_valid_decl_attribute_p): Remove.
(rs6000_valid_type_attribute_p): Make static.
* rs6000/rs6000.h (VALID_MACHINE_DECL_ATTRIBUTE,
VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
* sh/sh-protos.h (sh_valid_machine_decl_attribute): Remove.
* sh/sh.c (sh_valid_machine_decl_attribute): Rename, make static.
* sh/sh.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
* v850/v850-protos.h (v850_valid_machine_decl_attribute): Remove.
* v850/v850.c (v850_valid_machine_decl_attribute): Rename, make static.
* v850/v850.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
From-SVN: r43585
2001-06-26 18:09:27 +00:00
Neil Booth
b2b263e1cf
defaults.h: Default escape sequences to ASCII.
...
* defaults.h: Default escape sequences to ASCII.
* config/i370/i370.h: Adjust for ASCII default.
* config/1750a/1750a.h: Remove escape sequence definitions.
* config/a29k/a29k.h: Similarly.
* config/alpha/alpha.h: Similarly.
* config/arc/arc.h: Similarly.
* config/arm/arm.h: Similarly.
* config/avr/avr.h: Similarly.
* config/c4x/c4x.h: Similarly.
* config/clipper/clipper.h: Similarly.
* config/convex/convex.h: Similarly.
* config/d30v/d30v.h: Similarly.
* config/dsp16xx/dsp16xx.h: Similarly.
* config/elxsi/elxsi.h: Similarly.
* config/fr30/fr30.h: Similarly.
* config/h8300/h8300.h: Similarly.
* config/i386/i386.h: Similarly.
* config/i860/i860.h: Similarly.
* config/i960/i960.h: Similarly.
* config/ia64/ia64.h: Similarly.
* config/m32r/m32r.h: Similarly.
* config/m68hc11/m68hc11.h: Similarly.
* config/m68k/m68k.h: Similarly.
* config/m88k/m88k.h: Similarly.
* config/mcore/mcore.h: Similarly.
* config/mips/mips.h: Similarly.
* config/mn10200/mn10200.h: Similarly.
* config/mn10300/mn10300.h: Similarly.
* config/ns32k/ns32k.h: Similarly.
* config/pa/pa.h: Similarly.
* config/pdp11/pdp11.h: Similarly.
* config/pj/pj.h: Similarly.
* config/romp/romp.h: Similarly.
* config/rs6000/rs6000.h: Similarly.
* config/sh/sh.h: Similarly.
* config/sparc/sparc.h: Similarly.
* config/v850/v850.h: Similarly.
* config/vax/vax.h: Similarly.
* config/we32k/we32k.h: Similarly.
* doc/tm.texi: Update documentation.
From-SVN: r43569
2001-06-26 06:36:44 +00:00
Peter Jakubek
54c6cfdcb6
* config/m68k/m68k.md (ashrdi_const): Fix right shift by 16.
...
From-SVN: r43100
2001-06-09 12:11:22 -07:00
Zack Weinberg
7857f13404
i * libgcc1-test.c, libgcc1.c, config/i386/perform.h: Delete file.
...
* testsuite/gcc.dg/complete-port.c: New (revised version of
libgcc1-test.c)
* po/POTFILES.in: Remove libgcc1-test.c and libgcc1.c.
* Makefile.in: Delete variables: OLDCC, CCLIBFLAGS, OLDAR,
OLDAR_FLAGS, LIBGCC1, LIBGCC1_TEST, CROSS_LIBGCC1,
LIB1FUNCS, and LIB1FUNCS_EXTRA. Delete rules: libgcc1-test,
libgcc1-test.o. Clarify commentary now that libgcc1 no longer exists.
* cross-make: Don't set LIBGCC1.
* mklibgcc.in: Delete all code for building from libgcc1.c.
Always honor LIB1ASMFUNCS if set.
* crtstuff.c, floatlib.c, longlong.h, config/fp-bit.c,
config/arc/lib1funcs.asm, config/arm/lib1funcs.asm,
config/d30v/libgcc1.asm, config/fr30/lib1funcs.asm,
config/h8300/lib1funcs.asm, config/i386/cygwin.asm,
config/i386/uwin.asm, config/m68hc11/larith.asm,
config/m68k/lb1sf68.asm, config/mcore/lib1.asm,
config/mn10200/lib1funcs.asm, config/sh/lib1funcs.asm,
config/sparc/lb1spc.asm, config/sparc/lb1spl.asm,
config/v850/lib1funcs.asm, config/c4x/libgcc.S:
Delete or update references to libgcc1 in commentary.
* config/t-libc-ok, config/t-linux, config/t-linux-aout,
config/t-netbsd, config/a29k/t-a29kbare, config/a29k/t-vx29k,
config/alpha/t-interix, config/alpha/t-osf, config/alpha/t-vms,
config/arc/t-arc, config/arm/t-arm-aout, config/arm/t-arm-coff,
config/arm/t-arm-elf, config/arm/t-linux, config/arm/t-pe,
config/arm/t-semi, config/arm/t-strongarm-coff,
config/arm/t-strongarm-elf, config/arm/t-strongarm-pe,
config/arm/t-xscale-coff, config/arm/t-xscale-elf, config/avr/t-avr,
config/c4x/t-c4x, config/d30v/t-d30v, config/fr30/t-fr30,
config/h8300/t-h8300, config/i386/t-beos, config/i386/t-cygwin,
config/i386/t-i386elf, config/i386/t-interix, config/i386/t-netware,
config/i386/t-next, config/i386/t-rtems-i386, config/i386/t-sol2,
config/i960/t-960bare, config/i960/t-vxworks960, config/ia64/t-ia64,
config/m32r/t-m32r, config/m68hc11/t-m68hc11-gas, config/m68k/t-lynx,
config/m68k/t-m68kbare, config/m68k/t-m68kelf,
config/m68k/t-mot3300-gald, config/m68k/t-mot3300-gas,
config/m68k/t-next, config/m68k/t-vxworks68, config/m88k/t-bug,
config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs,
config/m88k/t-luna, config/m88k/t-luna-gas, config/m88k/t-m88k,
config/m88k/t-m88k-gas, config/m88k/t-sysv4, config/mcore/t-mcore,
config/mcore/t-mcore-pe, config/mips/t-bsd, config/mips/t-bsd-gas,
config/mips/t-cross64, config/mips/t-ecoff, config/mips/t-elf,
config/mips/t-iris6, config/mips/t-r3900, config/mips/t-svr3,
config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas,
config/mips/t-ultrix, config/mn10200/t-mn10200,
config/mn10300/t-mn10300, config/pa/t-linux, config/pa/t-linux64,
config/pa/t-pa, config/pa/t-pa64, config/pa/t-pro,
config/pdp11/t-pdp11, config/pj/t-pj, config/rs6000/t-aix43,
config/rs6000/t-beos, config/rs6000/t-darwin, config/rs6000/t-newas,
config/rs6000/t-ppccomm, config/rs6000/t-rs6000, config/sh/t-linux,
config/sh/t-sh, config/sparc/t-chorus-elf, config/sparc/t-elf,
config/sparc/t-sol2, config/sparc/t-sp86x, config/sparc/t-sparcbare,
config/sparc/t-sparclite, config/sparc/t-splet,
config/sparc/t-sunos41, config/sparc/t-vxsparc,
config/sparc/t-vxsparc64, config/v850/t-v850:
Don't set any of LIBGCC1, CROSS_LIBGCC1, or LIBGCC1_TEST.
* config/alpha/alpha.h, config/i386/i386.h, config/i860/i860.h:
Don't set FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, INTIFY, or FLOATIFY.
* config/d30v/d30v.h: Don't mention LIBGCC_NEEDS_DOUBLE,
FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, FLOATIFY, INTIFY,
nongcc_SI_type, nongcc_word_type, or perform_*
* config/i860/fx2800: Don't define perform_umodsi3 or perform_modsi3.
* config/i386/386bsd.h, config/i386/beos-elf.h,
config/i386/linux-aout.h, config/i386/linux-oldld.h,
config/i386/linux.h, config/i386/mach.h, config/i386/netbsd.h,
config/i386/openbsd.h, config/i386/osfrose.h, config/i386/rtemself.h:
Don't include i386/perform.h.
* config/a29k/t-a29k, config/arm/t-semiaof, config/i370/t-i370,
config/i370/t-linux, config/i370/t-mvs, config/i370/t-oe,
config/i386/t-djgpp, config/i386/t-i386bare, config/i386/t-vsta,
config/ia64/t-hpux, config/mips/t-mips, config/mips/t-mips-gas,
config/mips/t-osfrose, config/sparc/t-sp64, config/sparc/t-sunos40,
config/vax/t-openbsd, config/vax/t-vax: Delete.
* config.gcc: Remove references to deleted files.
(arm-semi-aof): Use arm/t-semi for tmake_file.
* gcc.texi, install.texi, invoke.texi, tm.texi:
Delete or rewrite text which is no longer relevant now that
libgcc1 no longer exists.
* config/t-openbsd, config/alpha/t-interix, config/i386/t-interix:
No need to set INSTALL_ASSERT_H. (Missed in previous sweep.)
From-SVN: r42188
2001-05-17 03:16:18 +00:00
Zack Weinberg
4e70264f82
config.gcc: Don't default xmake_file to ${cpu_type}/x-${cpu_type}.
...
2001-05-01 Zack Weinberg <zackw@stanford.edu>
* config.gcc: Don't default xmake_file to ${cpu_type}/x-${cpu_type}.
Remove references to deleted files.
(*-*-openbsd): No need to override xmake_file.
(*-*-sysv4): Treat like *-*-sysv.
* configure.in: Probe for ldopen in various places, and set up
collect2 to be linked with them if found.
Don't dink with Windows registry stuff unless $host_os is a
Win32 os name. Check to see if we need -ladvapi32.
* configure: Regenerate.
* Makefile: Get rid of CLIB and HOST_CLIB.
Substitute in COLLECT2_LIBS and link collect2 against its contents.
* build-make: Get rid of HOST_CLIB.
* config/a29k/x-unix, config/alpha/x-osf, config/i386/x-aix,
config/i386/x-osfrose, config/m68k/x-dpx2, config/mips/x-iris3,
config/mips/x-mips, config/mips/x-osfrose, config/mips/x-sony,
config/mips/x-sysv, config/rs6000/x-aix31, config/rs6000/x-aix41,
config/rs6000/x-rs6000: Delete.
* config/i386/x-cygwin, config/m68k/t-aux, config/mips/x-iris:
Don't set CLIB.
24 x-host fragments remain, 0 x-cpu, 3 top level.
2001-05-01 Zack Weinberg <zackw@stanford.edu>
* aclocal.m4 (gcc_AC_C_CHAR_BIT): Correct test program.
* configure: Regenerate.
From-SVN: r41732
2001-05-01 17:45:05 +00:00
Zack Weinberg
acb0db7b38
toplev.c (output_lang_identify): Delete.
...
* 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
2001-04-16 18:30:48 +00:00
Zack Weinberg
b6d7afec45
config.gcc: Set default for xmake_file at top, not bottom.
...
* config.gcc: Set default for xmake_file at top, not bottom.
Change places that set xmake_file to "none" to set to the
empty string instead, or remove them entirely if there is no
default xmake_file for this cpu_type. Remove references to
deleted files.
* config/x-lynx, config/convex/x-convex, config/elxsi/x-elxsi,
config/i386/x-isc, config/i386/x-isc3, config/i386/x-ncr3000,
config/i386/x-next, config/i386/x-sco, config/i386/x-sysv3,
config/i386/x-vsta, config/i860/x-sysv4, config/m68k/x-amix,
config/m68k/x-apollo68, config/m68k/x-ccur, config/m68k/x-crds,
config/m68k/x-hp2bsd, config/m68k/x-mot3300, config/m68k/x-mot3300-gas,
config/m68k/x-tower, config/m88k/x-sysv4, config/mips/x-dec-osf1,
config/mips/x-sni-svr4, config/mips/x-ultrix, config/romp/x-mach,
config/romp/x-romp, config/rs6000/x-beos, config/rs6000/x-lynx,
config/rs6000/x-mach, config/rs6000/x-sysv4, config/sparc/x-sysv4:
Delete.
* config/a29k/x-unix, config/i386/x-aix, config/i386/x-osf1elf,
config/i386/x-osfrose, config/m68k/x-dpx2, config/mips/x-iris3,
config/mips/x-mips, config/mips/x-osfrose, config/mips/x-sony,
config/mips/x-sysv, config/rs6000/x-aix31:
Just set CLIB to -lld or -lmld, as appropriate.
* config/arm/x-riscix, config/i370/x-oe, config/i386/x-dgux,
config/i386/x-sco4, config/i386/x-sco5, config/m68k/x-hp320,
config/m68k/x-hp320g, config/m68k/x-next, config/m88k/x-dgux,
config/mips/x-iris, config/pa/x-pa:
Just set (some of) FIXPROTO_DEFINES, STMP_FIXPROTO,
OTHER_FIXINCLUDES_DIRS.
* config/i386/x-djgpp: Don't set LN or LN_S.
* config/m88k/x-dolph: Don't define __m88k__.
* config/m88k/x-tekXD88: Don't set AR_FLAGS.
* config/pa/x-pa-mpeix: Just set up quadlib.asm.
* config/i860/fx2800.h: No need to #undef SVR4.
38 x-host fragments remain, 2 x-cpu.
From-SVN: r41181
2001-04-07 20:44:56 +00:00
Zack Weinberg
547a559d01
xm-beos.h, [...]: Delete.
...
* config/i386/xm-beos.h, config/i386/xm-isc.h,
config/i386/xm-next.h, config/i386/xm-sco.h,
config/i386/xm-sco5.h, config/m68k/xm-plexus.h,
config/m88k/xm-m88k.h: Delete.
* config/i386/xm-djgpp.h: Don't define __MSDOS__.
* config/romp/xm-romp.h: Don't define bcopy.
* config/rs6000/xm-beos.h: Don't define bcopy, HAVE_VPRINTF,
HAVE_PUTENV, HAVE_RENAME, or USE_C_ALLOCA.
* config.gcc: Remove references to deleted files.
From-SVN: r41061
2001-04-03 17:38:23 +00:00
Jakub Jelinek
ddef6bc7a3
Use byte offsets in SUBREGs instead of words.
...
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
2001-04-03 15:06:12 +00:00
Richard Henderson
5e7f4a4ab9
mkconfig.sh: Include insn-flags.h.
...
* mkconfig.sh: Include insn-flags.h.
* Makefile.in (CONFIG_H): Include insn-flags.h.
(lots of objects): Remove insn-codes.h and insn-flags.h.
* alias.c, bb-reorder.c, calls.c, do-loop.c, flow.c, haifa-sched.c,
integrate.c, jump.c, loop.c, predict.c, profile.c, reg-stack.c,
regmove.c, reorg.c, a29k/a29k.c, alpha/alpha.c, arc/arc.c, arm/arm.c,
avr/avr.c, clipper/clipper.c, convex/convex.c, d30v/d30v.c,
dsp16xx/dsp16xx.c, fr30/fr30.c, h8300/h8300.c, i370/i370.c,
i386/i386.c, i860/i860.c, ia64/ia64.c, m32r/m32r.c, m68hc11/m68hc11.c,
m68k/m68k.c, m88k/m88k.c, mcore/mcore.c, mn10200/mn10200.c,
mn10300/mn10300.c, ns32k/ns32k.c, pa/pa.c, pdp11/pdp11.c,
pj/pj.c, romp/romp.c, rs6000/rs6000.c, sh/sh.c, sparc/sparc.c,
v850/v850.c, vax/vax.c:
Don't include insn-flags.h.
* diagnostic.c, expr.h, reload.c, toplev.c:
Don't include insn-codes.h.
* builtins.c, combine.c, except.c, explow.c, expmed.c, expr.c,
final.c, function.c, optabs.c, recog.c, reload1.c, stmt.c,
c4x/c4x.c, i960/i960.c, mips/mips.c:
Don't include insn-codes.h or insn-flags.h.
* genemit.c, genopinit.c, genoutput.c: Don't include insn-codes.h
or insn-flags.h in the generated code.
* genflags.c (gen_proto): Use "struct rtx_def *" instead of "rtx".
(main): Forward declare struct rtx_def.
From-SVN: r40754
2001-03-22 10:48:52 -08:00
Zack Weinberg
84c041a1ff
aclocal.m4 (gcc_AC_C_CHARSET, [...]): New macros.
...
* aclocal.m4 (gcc_AC_C_CHARSET, gcc_AC_C_COMPILE_BIGENDIAN,
gcc_AC_C_FLOAT_FORMAT): New macros.
* configure.in: Add AC_PROG_CPP after CC tests;
gcc_AC_C_CHARSET and gcc_AC_C_FLOAT_FORMAT after the sizeof
tests; and gcc_AC_C_COMPILE_BIGENDIAN after gcc_AC_C_CHAR_BIT.
* configure, config.in: Regenerate.
* config/a29k/xm-a29k.h, config/arc/xm-arc.h,
config/arm/xm-arm.h, config/c4x/xm-c4x.h,
config/convex/xm-convex.h, config/d30v/xm-d30v.h,
config/i370/xm-linux.h, config/i370/xm-oe.h,
config/ia64/xm-ia64.h, config/m32r/xm-m32r.h,
config/m68k/xm-m68k.h, config/mips/xm-mips.h,
config/pa/xm-linux.h, config/pa/xm-pa.h,
config/rs6000/xm-lynx.h, config/rs6000/xm-mach.h,
config/rs6000/xm-rs6000.h, config/rs6000/xm-sysv4.h,
config/sparc/xm-sparc.h, config/vax/xm-vax.h,
config/we32k/xm-we32k.h: Delete.
* config/i370/xm-mvs.h, config/m88k/m88k.h,
config/romp/xm-romp.h, config/rs6000/xm-beos.h,
config/vax/xm-vms.h: Don't define any of:
HOST_FLOAT_FORMAT, HOST_EBCDIC, HOST_WORDS_BIG_ENDIAN
* config/rs6000/aix.h: Define COLLECT_EXPORT_LIST here.
* config.gcc: Remove references to deleted files.
(i370-*-opened*): Use i370/xm-mvs.h (which now defines only
FATAL_EXIT_CODE, which is the same between oe and mvs).
From-SVN: r40478
2001-03-15 00:13:37 +00:00
Zack Weinberg
190c4cb481
config.gcc: Where xm-host.h used to include another xm-host.h...
...
* config.gcc: Where xm-host.h used to include another
xm-host.h, list the nested header directly in xm_file. Remove
references to deleted files. Can now use sparc/xm-sp64.h for
sparcv9-*-solaris*.
* config/xm-linux.h, config/arm/xm-linux.h,
config/i386/xm-dos.h, config/i386/xm-gnu.h,
config/i386/xm-linux.h, config/i386/xm-openbsd.h,
config/i860/xm-fx2800.h, config/m68k/xm-atari.h,
config/m68k/xm-linux.h, config/m68k/xm-sun3.h,
config/sparc/xm-linux.h, config/sparc/xm-sysv4-64.h:
Delete.
* config/alpha/xm-alpha-interix.h: Don't include alpha/xm-alpha.h.
* config/mips/xm-iris5.h: Don't include mips/xm-mips.h. Don't
bother to wrap #undef in #ifdef.
* config/pa/xm-linux.h, config/rs6000/xm-sysv4.h:
Don't include xm-linux.h.
* config/sparc/xm-sp64.h: Don't include sparc/xm-sparc.h.
* configure.in: Wrap regexps using [] in changequote block.
Use expr : not echo | grep. Simplify regexps.
* configure: Regenerate.
56 xm-files remain, 22 xm-arch.
From-SVN: r40392
2001-03-12 03:29:54 +00:00
Kaveh R. Ghazi
b19a539e02
xm-pc532-min.h, xm-we32k.h: Delete references to the MAXPATHLEN macro.
...
* config/ns32k/xm-pc532-min.h, config/we32k/xm-we32k.h: Delete
references to the MAXPATHLEN macro.
* config/alpha/xm-alpha.h, config/arm/xm-arm.h,
config/i386/xm-cygwin.h, config/xm-linux.h: Delete references to
the POSIX macro.
* config/i386/xm-gnu.h, config/xm-gnu.h,
config/alpha/xm-openbsd.h, config/i386/xm-openbsd.h,
config/m68k/xm-openbsd.h, config/mips/xm-openbsd.h,
config/sparc/xm-openbsd.h, config/xm-openbsd.h: Delete empty
and/or unused files.
* config.gcc: Define POSIX in xm_defines as appropriate in lieu of
doing so in various xm-*.h files.
f:
* com.c: Don't rely on the POSIX macro to define autoconf stuff.
From-SVN: r40323
2001-03-08 18:53:26 +00:00
Kaveh R. Ghazi
cf30ef8072
xm-mvs.h, [...]: Delete references to the USG macro.
...
* config/i370/xm-mvs.h, config/i370/xm-oe.h,
config/i386/xm-beos.h, config/i386/xm-mingw32.h,
config/m88k/xm-m88k.h, config/mips/xm-iris6.h,
config/mips/xm-openbsd.h, config/pa/xm-pa64hpux.h,
config/pa/xm-pahpux.h, config/rs6000/xm-beos.h,
config/rs6000/xm-darwin.h, config/rs6000/xm-mach.h,
config/rs6000/xm-rs6000.h, config/xm-interix.h: Delete references
to the USG macro.
* config/vax/xm-vaxv.h, config/a29k/xm-unix.h,
config/i370/xm-i370.h, config/i386/xm-dgux.h,
config/i386/xm-sun.h, config/i386/xm-sysv3.h,
config/m68k/xm-tower.h, config/m68k/xm-aux.h,
config/m68k/xm-hp320.h, config/m68k/xm-amix.h,
config/m68k/xm-altos3068.h, config/m68k/xm-mot3300.h,
config/m68k/xm-m68kv.h, config/m88k/xm-openbsd.h,
config/mips/xm-nws3250v4.h, config/mips/xm-sysv.h,
config/mips/xm-iris3.h, config/mips/xm-iris4.h, config/xm-svr3.h,
config/xm-svr4.h, config/sparc/xm-pbd.h, config/clipper/xm-clix.h:
Delete unused and/or empty files.
* config.gcc: Define USG in xm_defines as appropriate. Define
POSIX in lieu of xm-svr4.h. Delete all references to the SVR3
macro. Remove deleted xm-* files from $xm_files variable.
From-SVN: r40310
2001-03-08 00:02:09 +00:00
Brad Lucier
de6c597958
Brad's -ffast-math breakup.
...
From-SVN: r40300
2001-03-07 11:29:41 -08:00
Stephen L Moshier
07ed7ecf08
m68k.c (const_uint32_operand): Accept any const_int on a 32-bit host.
...
* config/m68k/m68k.c (const_uint32_operand): Accept any
const_int on a 32-bit host.
From-SVN: r40276
2001-03-06 17:22:40 -08:00
Kaveh R. Ghazi
68527d81dc
xm-a29k.h, [...]: Delete HOST_BITS_PER_* definitions which match the defaults provided in hwint.h.
...
* config/a29k/xm-a29k.h, config/a29k/xm-unix.h,
config/alpha/xm-alpha.h, config/arc/xm-arc.h, config/arm/xm-arm.h,
config/c4x/xm-c4x.h, config/clipper/xm-clix.h,
config/convex/xm-convex.h, config/d30v/xm-d30v.h,
config/dsp16xx/xm-dsp16xx.h, config/elxsi/xm-elxsi.h,
config/h8300/xm-h8300.h, config/i370/xm-i370.h,
config/i370/xm-linux.h, config/i370/xm-mvs.h, config/i370/xm-oe.h,
config/i386/xm-i386.h, config/i860/xm-i860.h,
config/i960/xm-i960.h, config/ia64/xm-ia64.h,
config/m32r/xm-m32r.h, config/m68k/xm-m68k.h,
config/m88k/xm-m88k.h, config/mcore/xm-mcore.h,
config/mips/xm-mips.h, config/mn10200/xm-mn10200.h,
config/mn10300/xm-mn10300.h, config/ns32k/xm-ns32k.h,
config/pa/xm-linux.h, config/pa/xm-pa.h, config/pa/xm-pa64hpux.h,
config/pa/xm-pahpux.h, config/pa/xm-papro.h, config/pj/xm-pj.h,
config/romp/xm-romp.h, config/rs6000/xm-beos.h,
config/rs6000/xm-lynx.h, config/rs6000/xm-rs6000.h,
config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
config/sparc/xm-sparc.h, config/sparc/xm-sysv4.h,
config/v850/xm-v850.h, config/vax/xm-vax.h, config/vax/xm-vms.h,
config/we32k/xm-we32k.h: Delete HOST_BITS_PER_* definitions which
match the defaults provided in hwint.h.
* config/i386/xm-lynx.h, config/m68k/xm-lynx.h,
config/sparc/xm-lynx.h, config/xm-std32.h: Delete files.
* config.gcc (xm_file): Don't set to files which are deleted.
* hwint.h: Provide default values for HOST_BITS_PER_*. No longer
guard this file against these macros being undefined.
From-SVN: r40262
2001-03-06 14:33:11 +00:00
Zack Weinberg
b548dffbda
aclocal.m4 (libiberty_AC_FUNC_C_ALLOCA): New.
...
libiberty:
* aclocal.m4 (libiberty_AC_FUNC_C_ALLOCA): New.
* configure.in: Replace all alloca logic with a simple use of
the above new macro.
* config.table: Kill *-*-beos* entry.
* config/mh-beos: Delete.
* configure, config.in: Regenerate.
* Makefile.in (ALLOCA, HFILES): Kill.
(REQUIRED_OFILES): Add alloca.o.
(alloca.o): Depend on libiberty.h.
(argv.o): Don't depend on alloca-conf.h.
* alloca-conf.h: Delete.
* alloca.c: Include libiberty.h. Kill all #ifdef emacs
blocks. Provide the C alloca unconditionally. Use PTR where
appropriate. Make i00afunc static.
* argv.c: Don't include alloca-conf.h.
include:
* libiberty.h: Prototype C_alloca; define alloca to either
__builtin_alloca or C_alloca as appropriate.
gcc:
* aclocal.m4 (AM_GNU_GETTEXT): Don't AC_REQUIRE
AC_FUNC_ALLOCA.
* configure, config.in: Regenerate.
* config.gcc: Remove references to deleted files.
* genattr.c, genattrtab.c, genextract.c, genoutput.c,
genrecog.c, rtl.c: Do not use alloca anywhere.
* Makefile.in, build-make, system.h, config/x-interix,
config/x-svr4, config/xm-interix.h, config/xm-openbsd.h,
config/alpha/xm-alpha.h, config/alpha/xm-vms.h,
config/arc/xm-arc.h, config/arm/xm-arm.h,
config/d30v/xm-d30v.h, config/dsp16xx/xm-dsp16xx.h,
config/h8300/xm-h8300.h, config/i370/x-oe,
config/i370/xm-linux.h, config/i386/x-aix, config/i386/x-beos,
config/i386/x-ncr3000, config/i386/x-sco5,
config/i386/xm-dgux.h, config/i860/x-sysv4,
config/i960/xm-i960.h, config/m32r/xm-m32r.h,
config/m68k/x-crds, config/m68k/x-dpx2, config/m68k/x-hp320,
config/m68k/x-hp320g, config/m69k/x-mot3300,
config/m68k/x-mot3300-gas, config/m68k/xm-amix.h,
config/m68k/xm-hp320.h, config/m68k/xm-m68kv.h,
config/m68k/xm-mot3300.h, config/m88k/x-dolph,
config/m88k/x-sysv4, config/m88k/x-tekXD88,
config/m88k/xm-m88k.h, config/mcore/xm-mcore.h,
config/mips/x-iris, config/mips/x-iris3,
config/mips/x-sni-svr4, config/mips/x-sysv,
config/mips/xm-iris6.h, config/mips/xm-mips.h,
config/mips/xm-nws3250v4.h, config/pa/x-hpux,
config/pa/x-pa-mpeix, config/pa/xm-pa.h,
config/pa/xm-pa64hpux.h, config/pa/xm-pahpux.h,
config/pa/xm-papro.h, config/romp/xm-romp.h,
config/rs6000/x-aix31, config/rs6000/x-aix41,
config/rs6000/x-beos, config/rs6000/x-lynx,
config/rs6000/x-mach, config/rs6000/x-rs6000,
config/rs6000/x-sysv4, config/rs6000/xm-rs6000.h,
config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
config/sparc/x-sysv4, config/sparc/xm-linux.h,
config/sparc/xm-pbd.h, config/sparc/xm-sparc.h,
config/vax/xm-vms.h: Eradicate all references to alloca and
related stuff.
* config/xm-alloca.h, config/clipper/x-clix,
config/i386/xm-sysv4.h, config/i860/x-fx2800,
config/i860/x-sysv3, config/m88k/x-sysv3,
config/sparc/xm-sol2.h, config/we32k/x-we32k: Delete
(contained only alloca related hacks).
* config/i386/xm-beos.h, config/rs6000/xm-beos.h: Just define
USE_C_ALLOCA.
From-SVN: r40259
2001-03-06 09:52:35 +00:00
Zack Weinberg
eaf4e6183e
configure.in: Kill tm.h.
...
* configure.in: Kill tm.h. Include the files in the $tm_file
list in all three of config.h, hconfig.h, tconfig.h, after the
relevant set of xm_files. Put TARGET_CPU_DEFAULT in all
three, include insn-codes.h in all three (#ifndef GENERATOR_FILE).
* configure: Regenerate.
* Makefile.in (clean): Don't delete tm.h.
* system.h: If SUCCESS_EXIT_CODE and FATAL_EXIT_CODE are not
defined, set them from EXIT_SUCCESS and EXIT_FAILURE. If
those are not defined, set SEC and FEC to 0 and 1.
* gcc.texi: Update to match.
* crtstuff.c: Include tconfig.h, not auto-host.h and tm.h.
* config/fp-bit.c, config/m68k/aux-crt2.asm,
config/m68k/aux-crtn.asm, config/m68k/aux-mcount.c:
Include tconfig.h, not tm.h.
* config/xm-lynx.h, config/xm-std32.h,
config/a29k/xm-a29k.h, config/a29k/xm-unix.h,
config/alpha/xm-alpha.h, config/arc/xm-arc.h,
config/avr/xm-avr.h, config/c4x/xm-c4x.h,
config/clipper/xm-clix.h, config/convex/xm-convex.h,
config/d30v/xm-d30v.h, config/dsp16xx/xm-dsp16xx.h,
config/elxsi/xm-elxsi.h, config/fr30/xm-fr30.h,
config/h8300/xm-h8300.h, config/i370/xm-linux.h,
config/i386/xm-i386.h, config/i860/xm-i860.h,
config/i960/xm-i960.h, config/ia64/xm-ia64.h,
config/m32r/xm-m32r.h, config/m68hc11/xm-m68hc11.h,
config/m88k/xm-m88k.h, config/mcore/xm-mcore.h,
config/mips/xm-mips.h, config/mn10200/xm-mn10200.h,
config/mn10300/xm-mn10300.h, config/ns32k/xm-ns32k.h,
config/pa/xm-linux.h, config/pa/xm-pa.h,
config/pa/xm-pa64hpux.h, config/pa/xm-pahpux.h,
config/pa/xm-papro.h, config/pdp11/xm-pdp11.h,
config/pj/xm-pj.h, config/romp/xm-romp.h,
config/rs6000/xm-beos.h, config/rs6000/xm-rs6000.h,
config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
config/sparc/xm-sparc.h, config/sparc/xm-sysv4.h,
config/v850/xm-v850.h, config/vax/xm-vax.h,
config/we32k/xm-we32k.h:
Don't include tm.h.
Don't define SUCCESS_EXIT_CODE or FATAL_EXIT_CODE.
* config/i370/xm-i370.h, config/i370/xm-mvs.h,
config/i370/xm-oe.h: Don't include tm.h. Don't define
SUCCESS_EXIT_CODE.
* config/vax/xm-vms.h: Don't include tm.h.
* config/xm-lynx.h, config/avr/xm-avr.h,
config/fr30/xm-fr30.h, config/pdp11/xm-pdp11.h,
Delete; made empty by above changes.
* config/i386/xm-lynx.h, config/m68k/xm-lynx.h,
config/rs6000/xm-lynx.h, config/sparc/xm-lynx.h:
Don't include config/xm-lynx.h or tm.h.
* config/xm-gnu.h: Don't include fcntl.h.
* config/sparc/xm-lynx.h: Don't include sys/types.h and
sys/wait.h.
* config/clipper/xm-clix.h, config/vax/xm-vax.h: Don't define isinf.
From-SVN: r40199
2001-03-03 03:32:55 +00:00
Zack Weinberg
d6edb99e92
xm-lynx.h, [...]: Do not define TRUE or FALSE.
...
* config/xm-lynx.h, config/xm-std32.h, config/a29k/xm-a29k.h,
config/a29k/xm-unix.h, config/alpha/xm-alpha.h,
config/arc/xm-arc.h, config/arm/xm-arm.h, config/c4x/xm-c4x.h,
config/clipper/xm-clix.h, config/convex/xm-convex.h,
config/d30v/xm-d30v.h, config/dsp16xx/xm-dsp16xx.h,
config/elxsi/xm-elxsi.h, config/fr30/xm-fr30.h,
config/h8300/xm-h8300.h, config/i370/xm-i370.h,
config/i370/xm-linux.h, config/i370/xm-mvs.h,
config/i370/xm-oe.h, config/i386/xm-aix.h,
config/i386/xm-i386.h, config/i386/xm-osf.h,
config/i860/xm-i860.h, config/i960/xm-i960.h,
config/ia64/xm-ia64.h, config/m32r/xm-m32r.h,
config/m68k/xm-m68k.h, config/m88k/xm-m88k.h,
config/mcore/xm-mcore.h, config/mips/xm-mips.h,
config/mn10200/xm-mn10200.h, config/mn10300/xm-mn10300.h,
config/ns32k/xm-ns32k.h, config/pa/xm-linux.h,
config/pa/xm-pa.h, config/pa/xm-pa64hpux.h,
config/pa/xm-pahpux.h, config/pa/xm-papro.h,
config/pj/xm-pj.h, config/romp/xm-romp.h,
config/rs6000/xm-beos.h, config/rs6000/xm-rs6000.h,
config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
config/sparc/xm-sparc.h, config/sparc/xm-sysv4.h,
config/v850/xm-v850.h, config/vax/xm-vax.h,
config/vax/xm-vms.h, config/we32k/xm-we32k.h:
Do not define TRUE or FALSE.
* config/i386/xm-aix.h, config/i386/xm-osf.h: Delete; made
empty by above change.
* config.gcc: Remove references to these files.
* configure.in: Detect stdbool.h.
* configure, config.in: Regenerate.
* system.h: Include stddef.h here if available. Set
HAVE__BOOL based on GCC_VERSION and __STDC_VERSION__. Then
set up a sensible boolean type at the very end.
* combine.c, cse.c, expr.c, fold-const.c, gensupport.c,
f/com.c, config/mcore/mcore.c:
Rename variables named 'true' and/or 'false'.
* hash.h: Delete 'boolean' typedef and related #undefs.
* f/proj.h: Delete 'bool' type. Don't include stddef.h here.
* function.c, ggc-common.c, hash.h, hash.c, tlink.c, cp/decl.c,
java/class.c, java/decl.c, java/java-tree.h:
Replace all uses of 'boolean' with 'bool'.
From-SVN: r40176
2001-03-02 01:51:02 +00:00
DJ Delorie
d676911f34
m68k.h (MOVE_BY_PIECES_P): Avoid pushing bytes, since that doesn't work the way gcc wants on a generic m68k.
...
* config/m68k/m68k.h (MOVE_BY_PIECES_P): Avoid pushing bytes,
since that doesn't work the way gcc wants on a generic m68k.
From-SVN: r40138
2001-02-28 17:54:22 -05:00
DJ Delorie
67935d3f86
m68k.c (output_function_prologue): Save the new CFA register, *then* define it as the new CFA.
...
* config/m68k/m68k.c (output_function_prologue): Save the new CFA
register, *then* define it as the new CFA.
From-SVN: r40104
2001-02-27 19:29:02 -05:00
Zack Weinberg
000b5f54b5
xm-interix.h, [...]: Don't define any of...
...
* xm-interix.h, xm-lynx.h, alpha/xm-vms.h, convex/xm-convex.h,
i370/xm-i370.h, i370/xm-linux.h, i370/xm-mvs.h, i370/xm-oe.h,
i386/xm-beos.h, i386/xm-dos.h, i386/xm-mingw32.h,
i860/xm-i860.h, m68k/xm-3b1.h, m68k/xm-amix.h, m68k/xm-aux.h,
m68k/xm-crds.h, m68k/xm-mot3300.h, m88k/xm-sysv3.h,
mips/xm-mips.h, rs6000/xm-beos.h, vax/xm-vms.h:
Don't define any of:
USE_PROTOTYPES, vfork, mktemp, SVR3, NO_SYS_PARAMS_H,
P_tmpdir, MVS, NO_DBX_FORMAT, USE_STDARGS, STDC_HEADERS,
NO_PRECOMPILES, i860, __PTR_TO_INT, __INT_TO_PTR, rindex,
index, FULL_PROTOTYPES, AUX, R_OK, W_OK, X_OK, F_OK,
STACK_DIRECTION, MIPS, MAX_READ_LEN, MAX_WRITE_LEN.
* alpha/xm-alpha.h, clipper/xm-clix.h, d30v/xm-d30v.h,
fr30/xm-fr30.h, i370/xm-linux.h: Remove commented-out macro
definitions.
* m68k/xm-3b1.h, m68k/xm-crds.h, m88k/xm-sysv3.h:
Delete now-empty file.
* alpha/vms.h: Define NEED_ATEXIT here...
* alpha/xm-vms.h: ...not here.
* i386/cygwin.h: Don't define PARAMS.
* mips/mips.c: Don't prototype mktemp. Don't define
P_tmpdir. Use make_temp_file to create temporary files.
Don't be clever and delete temporary files early.
* f/com.c: Don't define STDC_HEADERS, autoconf handles it.
* config.gcc: Drop references to deleted files. Don't define
FULL_PROTOTYPES.
* gcc.texi: Don't mention USE_PROTOTYPES.
From-SVN: r40048
2001-02-25 05:23:38 +00:00
Zack Weinberg
db00982534
config.gcc: Expunge references to alpha/t-pe...
...
* config.gcc: Expunge references to alpha/t-pe, pa/t-openbsd,
x-linux-aout, i386/t-go32, t-osf, m68k/x-m68kv,
ns32k/xm-netbsd.h, rs6000/t-openbsd, rs6000/t-xnewas,
rs6000/x-aix41-gld. These are nonexistent, empty, or obsolete.
(i750a-*-*): Error here if hosting on i750a.
(alpha*-*-winnt*, ix86-*-winnt3*): Remove stanzas entirely.
* x-linux-aout, xm-freebsd.h, i386/beos-pe.h, ns32k/xm-netbsd.h:
Remove (empty modulo comments).
* 1750a/xm-1750a.h, alpha/config-nt.sed, alpha/win-nt.h,
alpha/xm-winnt.h, i386/config-nt.sed, i386/os2.h,
i386/t-winnt, i386/win-nt.h, i386/xm-freebsd.h, i386/xm-os2.h,
i386/xm-winnt.h, m68k/x-alloca-c, m88k/x-dguxbcs,
mips/x-netbsd, mips/x-nws3250v4, rs6000/t-xnewas,
rs6000/t-xrs6000, rs6000/xm-cygwin.h: Remove (obsolete)
* i386/crtdll.h, i386/cygwin.h, i386/mingw32.h:
Remove reference to winnt.h in comment.
* rs6000/t-newas, rs6000/t-rs6000: Override LIBGCC1_TEST to null.
From-SVN: r40044
2001-02-25 01:06:15 +00:00
Zack Weinberg
1db87931be
Kill stray blank lines
...
From-SVN: r40036
2001-02-24 08:17:40 +00:00
Richard Kenner
400500c4a5
diagnostic.h (set_internal_error_function): Renamed.
...
* diagnostic.h (set_internal_error_function): Renamed.
* toplev.h (internal_error): Renamed from fatal.
(pfatal_with_name): Deleted.
(fatal_io_error): Now has printf-style arguments.
* diagnostic.c (pfatal_with_name): Deleted.
(fatal_io_error): Rework to have args in printf-style.
(set_internal_error_function): Renamed from set_fatal_function.
(internal_error): Renamed from fatal.
(error_recursion, fancy_abort): Call internal_error instead of fatal.
* dwarf2out.c (get_cfa_from_loc_descr): Likewise.
* emit-rtl.c (gen_realpart, gen_imagpart): Likewise.
* expr.c (check_max_integer_computation_mode, expand_expr): Likewise.
* flow.c (verify_flow_info): Likewise.
* config/arm/arm.c (thumb_unexpanded_epilogue): Likewise.
* config/mips/mips.c (save_restore_insns): Likewise.
* cp/init.c (build_java_class_ref): Likewise.
(dsp16xx_reg_class_from_letter): Likewise.
(limit_reload_class, double_reg_to_memory): Likewise.
(print_operand_address, emit_1600_code_shift): Likewise.
(gen_tst_reg, gen_compare_reg): Likewise.
* config/m68hc11/m68hc11.c (m68hc11_emit_libcall): Likewise.
* cp/decl.c (pushdecl): Likewise.
* java/check-init.c (check_init): Likewise.
* java/expr.c (java_lang_expand_expr): Likewise.
* java/jcf-parse.c (get_constant): Likewise.
* java/mangle.c (java_mangle_decl): Likewise.
* java/parse.y (make_nested_class_name, java_complete_lhs): Likewise.
(operator_string): Likewise.
* except.c (duplicate_eh_handlers): Call abort instead of fatal.
* flow.c (verify_flow_info): Likewise.
* ch/convert.c (convert): Likewise.
* ch/except.c (pop_handler, chill_check_no_handlers): Likewise.
* ch/expr.c (chill_expand_expr): Likewise.
* ch/parse.c (peek_token_, pushback_token, require): Likewise.
* config/arm/arm.c (thumb_load_double_from_address): Likewise.
* config/avr/avr.c (pttreg_to_str, unique_section): Likewise.
(avr_normalize_condition): Likewise.
* config/c4x/c4x.c (c4x_emit_libcall, c4x_valid_operands): Likewise.
* config/dsp16xx/dsp16xx.c (dsp16xx_reg_class_from_letter): Likewise.
(limit_reload_class, double_reg_to_memory): Likewise.
(print_operand_address, emit_1600_code_shift): Likewise.
(gen_tst_reg, gen_compare_reg): Likewise.
* config/m68hc11/m68hc11.c (m68hc11_emit_libcall): Likewise.
* cp/decl.c (pushdecl): Likewise.
* java/check-init.c (check_init): Likewise.
* java/class.c (build_class_ref): Likewise.
* java/constants.c (write_constant_pool): Likewise.
* java/decl.c (start_java_method): Likewise.
* java/expr.c (push_type, java_stack_pop, java_stack_swap): Likewise.
(java_stack_dup, encode_newarray_type): Likewise.
(build_java_array_length_access): Likewise.
(build_java_check_indexed_type, expand_java_pushc): Likewise.
(build_java_soft_divmod, build_invokeinterface): Likewise.
* java/java-tree.h (INNER_CLASS_P): Likewise.
* java/jcf-parse.c (parse_signature, get_name_constant): Likewise.
(give_name_to_class, get_class_constant): Likewise.
* java/jcf-write.c (CHECK_PUT, CHECK_OP, get_access_flags): Likewise.
(find_constant_index, generate_bytecode_conditional): Likewise.
(generate_bytecode_insns, perform_relocations): Likewise.
* java/lex.c (java_unget_unicode, java_lex): Likewise.
* java/mangle.c (mangle_type, mangle_record_type): Likewise.
(mangle_pointer_type, mangle_array_type, init_mangling): Likewise.
(finish_mangling): Likewise.
* java/parse.h (MARK_FINAL_PARMS): Likewise.
* java/parse.y (pop_current_osb, unreachable_stmt_error): Likewise.
(obtain_incomplete_type, java_complete_class): Likewise.
(java_check_regular_methods, java_complete_expand_method): Likewise.
(cut_identifier_in_qualified, check_deprecation): Likewise.
(patch_invoke, find_applicable_accessible_methods_list): Likewise.
(java_complete_lhs, lookup_name_in_blocks): Likewise.
(check_final_variable_indirect_assignment, build_unaryop): Likewise.
* java/typeck.c (set_local_type, parse_signature_type): Likewise.
(parse_signature_string, build_java_signature): Likewise;
(set_java_signature): Likewise.
* java/verify.c (type_stack_dup, CHECK_PC_IN_RANGE): Likewise.
* c-parse.in (methoddef): Call fatal_error instead of fatal.
* objc/objc-act.c (build_ivar_chain): Likewise.
* cp/except.c (decl_is_java_type): Likewise.
* cp/init.c (build_java_class_ref): Likewise.
* cp/init.c (build_new_1): Likewise.
* f/com.c (ffecom_init_0): Likewise.
* java/class.c (add_method, build_static_field_ref): Likewise.
* java/expr.c (build_known_method_ref, expand_invoke): Likewise.
* java/jcf-parse.c (get_constant, jcf_parse): Likewise.
* java/lex.c (java_new_new_lexer): Likewise.
* java/jv-scan.c (main): Likewise.
(fatal_error): Renamed from fatal.
* dwarfout.c (dwarfout_init): Call fatal_io_error instead of
pfatal_with_name.
* graph.c (clean_graph_dump_file): Likewise.
* profile.c (init_branch_prob): Likewise.
* ch/grant.c (write_grant_file): Likewise.
* ch/lex.c (init_parse, same_file, yywrap): Likewise.
* f/com.c (init_parse): Likewise.
* java/jcf-parse.c (yyparse): Likewise.
* objc/objc-act.c (objc_init): Likewise.
* java/jcf-parse.c (jcf_parse_source): Call fatal_io_error, not fatal.
(yyparse): Likewise.
* java/jcf-write.c (make_class_file_name, write_classfile): Likewise.
* java/lex.c (java_get_line_col): Likewise.
* hash.c (hash_allocate): Don't check for failure returns from
obstack functions that can't fail.
(hash_table_init_n, hash_table_init): Likewise; also now return void.
* hash.h (hash_table_init_n, hash_table_init): Now return void.
* cp/decl.c (build_typename_type): hash_table_init now returns void.
* ch/lang.c (GNU_xref_begin, GNU_xref_end): Deleted.
* ch/lex.c (convert_bitstring): Delete check for alloca failure.
* config/dsp16xx/dsp16xx.c (dsp16xx_invalid_register_for_compare):
Deleted.
* config/dsp16xx/dsp16xx.md (unnamed cmphi): Call abort instead of it.
* f/com.c (ffecom_decode_include_option_): Make errors non-fatal.
* f/lex.c (ffelex_cfelex_, ffelex_get_directive_line_): Likewise.
(ffelex_hash_): Likewise.
* config/arm/arm.c (arm_override_options): Likewise.
* config/avr/avr.c (avr_override_options): Likewise.
* config/c4x/c4x.c (c4x_expand_prologue): Likewise.
* config/dsp16xx/dsp16xx.c (function_prologue): Likewise.
* config/h8300/h8300.c (h8300_init_once): Likewise.
* config/mips/mips.c (override_options): Likewise.
* config/i386/i386.c (override_options): Likewise, rework.
* config/m68k/m68k.c (override_options): Likewise.
* cp/decl.c (init_decl_processing): Likewise.
* java/jcf-parse.c (load_class): Likewise.
* config/dsp16xx/dsp16xx.c (print_operand): Call output_operand_lossage
instead of fatal.
* config/mips/mips.c (print_operand): Likewise.
* java/lex.c (byteswap_init, need_byteswap): Only #ifdef HAVE_ICONV.
* objc/objc_act.c (objc_check_decl): Remove unneeded fatal call.
(get_object_reference): Likewise.
From-SVN: r39443
2001-02-04 17:44:12 -05:00
Alexandre Oliva
cf01124384
tm.texi (REGISTER_MOVE_COST): Add a mode argument.
...
* tm.texi (REGISTER_MOVE_COST): Add a mode argument.
* reload.c (REGISTER_MOVE_COST): Likewise. Adjust all callers.
* reload1.c (REGISTER_MOVE_COST): Likewise.
* regclass.c (REGISTER_MOVE_COST): Likewise.
(move_cost, may_move_in_cost, may_move_out_cost): Add mode
dimension. Adjust all users.
(init_reg_sets_1): Iterate on all modes.
* config/1750a/1750a.h (REGISTER_MOVE_COST): Adjust.
* config/a29k/a29k.h (REGISTER_MOVE_COST): Adjust.
* config/alpha/alpha.h (REGISTER_MOVE_COST): Adjust.
* config/arc/arc.h (REGISTER_MOVE_COST): Adjust.
* config/arm/arm.h (REGISTER_MOVE_COST): Adjust.
* config/avr/avr.h (REGISTER_MOVE_COST): Adjust.
* config/c4x/c4x.h (REGISTER_MOVE_COST): Adjust.
* config/d30v/d30v.h (REGISTER_MOVE_COST): Adjust.
* config/dsp16xx/dsp16xx.h (REGISTER_MOVE_COST): Adjust.
* config/h8300/h8300.h (REGISTER_MOVE_COST): Adjust.
* config/i386/i386.h (REGISTER_MOVE_COST): Adjust.
* config/ia64/ia64.h (REGISTER_MOVE_COST): Adjust.
* config/m32r/m32r.h (REGISTER_MOVE_COST): Adjust.
* config/m68hc11/m68hc11.h (REGISTER_MOVE_COST): Adjust.
* config/m68k/m68k.h (REGISTER_MOVE_COST): Adjust.
* config/mcore/mcore.h (REGISTER_MOVE_COST): Adjust.
* config/mips/mips.h (REGISTER_MOVE_COST): Adjust.
* config/mn10200/mn10200.h (REGISTER_MOVE_COST): Adjust.
* config/mn10300/mn10300.h (REGISTER_MOVE_COST): Adjust.
* config/ns32k/ns32k.h (REGISTER_MOVE_COST): Adjust.
* config/pa/pa.h (REGISTER_MOVE_COST): Adjust.
* config/pdp11/pdp11.h (REGISTER_MOVE_COST): Adjust.
* config/pj/pj.h (REGISTER_MOVE_COST): Adjust.
* config/romp/romp.h (REGISTER_MOVE_COST): Adjust.
* config/rs6000/rs6000.h (REGISTER_MOVE_COST): Adjust.
* config/sh/sh.h (REGISTER_MOVE_COST): Adjust.
* config/sparc/sparc.h (REGISTER_MOVE_COST): Adjust.
From-SVN: r38597
2001-01-01 20:35:36 +00:00
Rodney Brown
2398fb2aea
osf.h: Standarize copyright statement.
...
* config/alpha/osf.h: Standarize copyright statement.
* config/arc/arc.h: Likewise.
* config/arm/elf.h config/arm/coff.h config/arm/aout.h: Likewise.
* config/arm/arm.c config/arm/arm.h: Likewise.
* config/elxsi/elxsi.h: Likewise.
* config/i386/sco.h: Likewise.
* config/m68k/crds.h config/m68k/hp320.h config/m68k/lynx.h: Likewise.
* config/m68k/m68kv4.h config/m68k/next21.h: Likewise.
* config/m68k/sun3.h: Likewise.
* config/m88k/dgux.h config/m88k/dguxbcs.h: Likewise.
* config/pdp11/2bsd.h config/pdp11/pdp11.h: Likewise.
* config/romp/romp.h: Likewise.
* config/rs6000/aix41.h: Likewise.
* config/sparc/sysv4.h: Likewise.
* config/we32k/we32k.c config/we32k/we32k.h: Likewise.
* fixinc/gnu-regex.c fixinc/gnu-regex.h: Likewise.
* cpplib.h cppexp.c cselib.h profile.c: Likewise.
* longlong.h: Likewise.
* libgcc2.c: Likewise.
From-SVN: r38088
2000-12-06 18:58:25 -07:00
Richard Henderson
c77e04ae3a
genoutput.c (validate_insn_operands): New.
...
* genoutput.c (validate_insn_operands): New.
(gen_insn): Call it.
* config/alpha/alpha.md (divmodsi_internal): Renumber operands.
(divmoddi_internal): Likewise.
* config/arm/arm.md (andsi3_compare0_scratch): Likewise.
* config/i960/i960.md (branch patterns): Likewise.
* config/ia64/ia64.md (tbit_and_0): Likewise.
(tbit_and_1, tbit_or_0, tbit_or_1): Likewise.
* config/m68k/m68k.md (zero_extract memory patterns): Likewise.
* config/mips/mips.md (divmodsi4_internal): Likewise.
(divmoddi4_internal): Likewise.
* config/rs6000/rs6000.md (call patterns): Likewise.
* config/sh/sh.md (movsi_y): Likewise.
* config/sparc/sparc.md: Comment out if 0 v8p shift pattern.
From-SVN: r37828
2000-11-28 13:31:47 -08:00
Neil Booth
2b57e91931
config:
...
* a29k/a29k.h, a29k/unix.h, a29k/vx29k.h,
alpha/alpha-interix.h, alpha/alpha.h, alpha/linux.h,
alpha/openbsd.h, alpha/osf.h, alpha/vms.h, alpha/vxworks.h,
alpha/win-nt.h, arc/arc.h, arm/arm.h, arm/conix-elf.h,
arm/linux-aout.h, arm/linux-elf.h, arm/netbsd.h, arm/riscix.h,
arm/riscix1-1.h, arm/semiaof.h, arm/unknown-elf-oabi.h, arm/vxarm.h,
c4x/rtems.h, clipper/clix.h, convex/convex.h, d30v/d30v.h,
elxsi/elxsi.h, fr30/fr30.h, h8300/h8300.h, i370/linux.h, i370/mvs.h,
i370/oe.h, i386/386bsd.h, i386/aix386ng.h, i386/beos-elf.h,
i386/bsd386.h, i386/crtdll.h, i386/cygwin.h, i386/dgux.h,
i386/djgpp-rtems.h, i386/djgpp.h, i386/freebsd-aout.h, i386/freebsd.h,
i386/gnu.h, i386/i386-interix.h, i386/i386.h, i386/linux-aout.h,
i386/linux-oldld.h, i386/linux.h, i386/lynx-ng.h, i386/lynx.h,
i386/mach.h, i386/mingw32.h, i386/moss.h, i386/netbsd.h,
i386/netware.h, i386/next.h, i386/openbsd.h, i386/osf1elf.h,
i386/osfelf.h, i386/osfrose.h, i386/ptx4-i.h, i386/rtems.h,
i386/rtemself.h, i386/sco.h, i386/sco4.h, i386/sco4dbx.h, i386/sco5.h,
i386/scodbx.h, i386/sequent.h, i386/sol2.h, i386/sun.h, i386/sysv3.h,
i386/sysv4.h, i386/uwin.h, i386/vsta.h, i386/vxi386.h, i386/win-nt.h,
i386/win32.h, i860/fx2800.h, i860/i860.h, i860/mach.h, i860/sysv3.h,
i860/sysv4.h, i960/i960.h, i960/rtems.h, i960/vx960-coff.h,
ia64/ia64.h, ia64/linux.h, m32r/m32r.h, m68k/3b1.h, m68k/3b1g.h,
m68k/a-ux.h, m68k/altos3068.h, m68k/amix.h, m68k/apollo68.h,
m68k/crds.h, m68k/ctix.h, m68k/dpx2.h, m68k/hp2bsd.h, m68k/hp320.h,
m68k/hp3bsd.h, m68k/hp3bsd44.h, m68k/isi.h, m68k/linux-aout.h,
m68k/linux.h, m68k/lynx-ng.h, m68k/lynx.h, m68k/m68kemb.h,
m68k/m68kv4.h, m68k/mot3300.h, m68k/netbsd.h, m68k/news.h,
m68k/next.h, m68k/openbsd.h, m68k/pbb.h, m68k/plexus.h, m68k/rtems.h,
m68k/rtemself.h, m68k/sun2.h, m68k/sun3.h, m68k/sun3mach.h,
m68k/tower-as.h, m68k/tower.h, m68k/vxm68k.h, m88k/dgux.h,
m88k/dolph.h, m88k/luna.h, m88k/m88k-aout.h, m88k/m88k-coff.h,
m88k/openbsd.h, m88k/sysv3.h, m88k/sysv4.h, mips/bsd-4.h,
mips/bsd-5.h, mips/dec-bsd.h, mips/dec-osf1.h, mips/gnu.h,
mips/iris3.h, mips/iris5.h, mips/iris6.h, mips/linux.h, mips/mips.h,
mips/netbsd.h, mips/news4.h, mips/news5.h, mips/nws3250v4.h,
mips/openbsd.h, mips/osfrose.h, mips/rtems64.h, mips/sni-svr4.h,
mips/svr3-4.h, mips/svr3-5.h, mips/svr4-4.h, mips/svr4-5.h,
mips/ultrix.h, ns32k/encore.h, ns32k/merlin.h, ns32k/netbsd.h,
ns32k/ns32k.h, ns32k/pc532-mach.h, ns32k/pc532.h, ns32k/sequent.h,
ns32k/tek6000.h, ns32k/tek6100.h, ns32k/tek6200.h, pa/pa-hiux.h,
pa/pa-hpux.h, pa/pa-hpux7.h, pa/pa-linux.h, pa/pa-osf.h,
pa/pa-pro-end.h, pa/pa.h, pa/rtems.h, pj/linux.h, pj/pj.h,
romp/romp.h, rs6000/aix.h, rs6000/aix31.h, rs6000/aix41.h,
rs6000/aix43.h, rs6000/beos.h, rs6000/eabi.h, rs6000/eabisim.h,
rs6000/linux.h, rs6000/lynx.h, rs6000/mach.h, rs6000/rtems.h,
rs6000/sysv4.h, rs6000/vxppc.h, sh/elf.h, sh/linux.h, sh/rtems.h,
sh/rtemself.h, sh/sh.h, sparc/aout.h, sparc/elf.h, sparc/linux-aout.h,
sparc/linux.h, sparc/linux64.h, sparc/lite.h, sparc/litecoff.h,
sparc/liteelf.h, sparc/lynx-ng.h, sparc/lynx.h, sparc/netbsd.h,
sparc/openbsd.h, sparc/pbd.h, sparc/rtems.h, sparc/rtemself.h,
sparc/sol2-sld-64.h, sparc/sol2.h, sparc/sp64-aout.h,
sparc/sp64-elf.h, sparc/sp86x-aout.h, sparc/sp86x-elf.h,
sparc/sparc.h, sparc/sysv4.h, sparc/vxsim.h, sparc/vxsparc.h,
v850/rtems.h, vax/netbsd.h, vax/openbsd.h, vax/ultrix.h, vax/vax.h,
vax/vaxv.h, vax/vms.h, we32k/we32k.h
Replace -A() with -A=, the new assertion syntax.
From-SVN: r37213
2000-11-02 23:29:13 +00:00
Hans-Peter Nilsson
016c844017
Change callers in config/m*/ to match:
...
Changes add TABs on either or both sides, covering start of line,
up to any operand for all .*ASM.*_OP definitions.
From-SVN: r36620
2000-09-25 13:22:47 +00:00
Hans-Peter Nilsson
6e7b07a750
definitions in config/m[368]*:
...
Changes add TABs on either or both sides, covering start of line,
up to any operand for all .*ASM.*_OP definitions.
From-SVN: r36609
2000-09-25 09:49:20 +00:00
Jeffrey A Law
f8bc3f3af4
openbsd.h (ASM_SPEC): pass down options to assembler correctly.
...
* config/m68k/openbsd.h (ASM_SPEC): pass down options to assembler
correctly.
From-SVN: r34522
2000-06-13 14:54:33 -06:00
Kaveh R. Ghazi
a60369f0fe
m68k.c (legitimize_pic_address): Move prototype ...
...
* m68k.c (legitimize_pic_address): Move prototype ...
* m68k-protos.h (legitimize_pic_address): ... here.
* m68k.md (legitimize_pic_address): Delete prototypes.
(untyped_call): Invoke GEN_CALL(), not gen_call().
* nextstep.c: Include system.h and toplev.h.
(get_directive_line): Don't prototype.
(handle_pragma): Mark parameters with ATTRIBUTE_UNUSED and constify.
* nextstep.h (handle_pragma): Prototype.
(SECTION_FUNCTION): Prototype FUNCTION(). Move prototype of
objc_section_init ...
(EXTRA_SECTION_FUNCTIONS): ... here.
From-SVN: r34427
2000-06-06 16:21:41 +00:00