Commit Graph

14 Commits

Author SHA1 Message Date
Zack Weinberg
67f28219a6 aclocal.m4 (gcc_AC_PROG_GNAT): New.
top:
	* aclocal.m4 (gcc_AC_PROG_GNAT): New.
	* configure.in: Use it.
	* configure: Regenerated.
	* config/pa/t-linux, config/pa/t-pa, config/pa/t-pa64,
	config/pa/t-pro: Set T_ADAFLAGS, not ADA_CFLAGS.
ada:
	* Make-lang.in (ADAFLAGS): Add -W -Wall.
	(ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
	(gnat1): Also depend on attribs.o.
	(gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
	* Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
	(ADAC): Set to @ADAC@ in stage1, $(CC) later.
	(ADAFLAGS): Add -W -Wall.
	(ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
	take out CFLAGS.

	(.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
	s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
	s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
	Use $(ADAC), not $(CC), as compilation command.

	(gnattools): Depend directly on tools to build, don't use
	recursive make.
	(gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.

	* einfo.h, sinfo.h: New files (autogenerated).

From-SVN: r46085
2001-10-08 17:58:31 +00: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
Jeffrey A Law
a7a1d2701f t-pa: Use quadlib.c instead of quadlib.asm.
* pa/t-pa: Use quadlib.c instead of quadlib.asm.
	* pa/quadlib.asm: Remove.
	* pa/quadlib.c: New file.

From-SVN: r32265
2000-02-29 13:29:14 -07:00
Jeffrey A Law
24e971f667 pa.h (FUNCTION_ARG_PASS_BY_REFERENCE): Handle pass-by-reference for arguments with a mode, but no type.
* pa.h (FUNCTION_ARG_PASS_BY_REFERENCE): Handle pass-by-reference
        for arguments with a mode, but no type.
        (FUNCTION_ARG_CALLEE_COPIES): Similarly.
        * t-pa (LIB2FUNCS_EXTRA): Add quadlib.asm.
        * pa/long_double.h: New file.
        * configure.in (hpux10, hpux11 configurations): hpux10 and hpux11
        both have 128bit wide long doubles.
        * configure: Rebuilt.

From-SVN: r32101
2000-02-22 01:40:16 -07:00
Jeffrey A Law
7123b6ed1f pa.c (out_of_line_prologue_epilogue): Delete.
* pa.c (out_of_line_prologue_epilogue): Delete.
        (override_options): Remove -mspace related code.
        (hppa_expand_prologue, hppa_expand_epilogue): Likewise.
        (compute_frame_size): Only allocate space for register that
        actually need to be saved.
        * pa.h (MASK_SPACE, TARGET_SPACE): Delete.
        (TARGET_SWITCHES): Remove -mspace, -mno-space
        * pa/t-pa (LIB2FUNCS_EXTRA): Remove ee.asm and ee_fp.asm
        * pa/t-pro (LIB2FUNCS_EXTRA): Likewise.  Remove -mspace multilib.
        * pa/ee.asm, pa/ee_fp.asm: Delete.

From-SVN: r28125
1999-07-16 14:07:55 -06:00
Teemu Torma
f24af81bca Makefile.in (GTHREAD_FLAGS): New var.
* Makefile.in (GTHREAD_FLAGS): New var.
	(LIBGCC2_CFLAGS): Added $(GTHREAD_FLAGS).
	(distclean): Remove gthr-default.h.
	* configure.in: Accept dce as a thread package.
	Check for thread.h and pthread.h.
	Link gthr-default.h to appropriate thread file and set
	gthread_flags.
	(hppa1.1-*-hpux10*): If --enable-threads, use dce threads and
	include multilib definitions from pa/t-dce-thr.
	(sparc-*-solaris2*): Enable threads by default, if thread.h or
	pthread.h is found, preferring posix threads over solaris ones.
	* config/pa/t-dce-thr: New file.
	* config/pa/t-pa: Removed multilibs.
	* config/sparc/t-sol2: Ditto.
	* gthr.h: New file.
	* gthr-single.h: New file.
	* gthr-posix.h: New file.
	* gthr-solaris.h: New file.
	* gthr-dce.h: New file.
	* libgcc-thr.h: Removed.
	* objc/thr-dce.c: New file copied from thr-decosf1.c.
	* frame.c: Include gthr.h instead of libgcc-thr.h.
	* libgcc2.c: Include gthr.h instead of libgcc-thr.h.
	(eh_context_initialize): If __gthread_once fails, use static eh
	context.
	(eh_context_free): Call __gthread_key_dtor.

From-SVN: r17235
1997-12-24 16:56:08 -07:00
Teemu Torma
154bba13a4 [multiple changes]
Thu Dec 11 20:42:18 1997  Teemu Torma  <tot@trema.com>

	Thread-safe EH support for pthreads, DCE threads and Solaris threads.

	* integrate.c (expand_inline_function): If the inline fn uses eh
	context, make sure that the current fn has one.
	* toplev.c (rest_of_compilation): Call emit_eh_context.
	* except.c (use_eh_context): New fn.
	(get_eh_context_once): New fn.
	(call_get_eh_context): New fn.
	(emit_eh_context): New fn.
	(get_eh_context): Call either get_eh_context_once or
	call_get_eh_context, depending on what we have.
	(get_dynamic_handler_chain): Call get_eh_context_once.
	* except.h: Prototypes for fns above.
	* optabs.c (get_eh_context_libfunc): Removed.
	(init_optabs): Don't initialize it.
	* expr.h (get_eh_context_libfunc): Removed.
	* rtl.h, rtl.c: New reg_note REG_EH_CONTEXT.
	* config/pa/pa.h (CPP_SPEC): Support for -threads.
	* config/pa/pa-hpux10.h (LIB_SPEC): Ditto.
	* config/pa/t-pa (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
	New multilib for -threads.
	* config/sparc/t-sol2: Added multilibs for -threads and
	made -pthreads alias to it.
	* config/sparc/sol2.h (CPP_SPEC, LIB_SPEC):
	Added -threads and -pthreads options.
	* libgcc-thr.h: New file.
	* libgcc2.c: (__get_cpp_eh_context): Removed.
	(struct cpp_eh_context): Removed.
	(struct eh_context): Replaced cpp_eh_context with generic language
	specific pointer.
	(__get_eh_info): New function.
	(__throw): Check eh_context::info.
	(__sjthrow): Ditto.
	* libgcc2.c: Include libgcc-thr.h.
	(new_eh_context, __get_eh_context,
	eh_pthread_initialize, eh_context_initialize, eh_context_static,
	eh_context_specific, eh_context_free): New functions.
	(get_eh_context, eh_context_key): New variables.
	(__sjthrow, __sjpopnthrow, __eh_pcnthrow, __throw): Use
	get_eh_context to get the context.
	(longjmp): Move the declaration inside
	#ifdef DONT_USE_BUILTIN_SETJMP.
	* frame.c: Include libgcc-thr.h.
	(object_mutex): Mutex to protect the object list.
	(find_fde, __register_frame, __register_frame_table,
	__deregister_frame): Hold the lock while accessing objects.
	* except.h (get_eh_context): Declare.
	* except.c (current_function_ehc): Define.
	(current_function_dhc, current_function_dcc): Removed.
	(get_eh_context): New function.
	(get_dynamic_handler_chain): Use get_eh_context.
	(get_saved_pc_ref): Ditto.
	(get_dynamic_cleanup_chain): Removed references to
	current_function_dcc.
	(save_eh_status, restore_eh_status): Save and restore
	current_function_ehc instead.
	* optabs.c (get_eh_context_libfunc): New variable.
	(init_optabs): Initialize it.
	* expr.h: Declare get_eh_context_libfunc.
	* function.h (struct function): Replaced dhc and dcc with ehc.
	* except.c (get_saved_pc_ref): New functions.
	(eh_saved_pc_rtx, eh_saved_pc): Deleted.
	(expand_internal_throw_indirect): Use get_saved_pc_ref() instead
	of eh_saved_pc.
	(end_eh_unwinder): Likewise.
	(init_eh): Remove initialization of eh_saved_pc.
	* optabs.c (get_saved_pc_libfunc): New variable.
	(init_optabs): Initialize it.
	* expr.h: Declare get_saved_pc_libfunc.
	* except.h (eh_saved_pc_rtx): Deleted.
	(get_saved_pc_ref): Declared.

	From Scott Snyder <snyder@d0sgif.fnal.gov>:
	* libgcc2.c (__get_saved_pc): New.
	(__eh_type, __eh_pc): Deleted.
	(__eh_pcnthrow): Use __get_saved_pc() instead of __eh_pc.
	(__get_dynamic_handler_chain): Move __dynamic_handler_chain inside
	this fcn.

cp/:
Thu Dec 11 20:43:33 1997  Teemu Torma  <tot@trema.com>

	* decl.c (ptr_ptr_type_node): Define.
	(init_decl_processing): Initialize it.
	* cp-tree.h: Declare it.
	* exception.cc (__cp_exception_info): Use __get_eh_info.
	(__cp_push_exception): Ditto.
	(__cp_pop_exception): Ditto.

	From Scott Snyder <snyder@d0sgif.fnal.gov>:
        * except.c (expand_builtin_throw): Use get_saved_pc_ref instead of
	saved_pc.
	(init_exception_processing): Removed saved_pc initialization.

From-SVN: r17052
1997-12-11 23:53:20 -05:00
Jeff Law
ddaf4c9114 lib2funcs.asm: Remove entry/exit routines.
* lib2funcs.asm: Remove entry/exit routines.  Move them into...
        * ee.asm: New file.  Entry/exit code.
        * ee_fp.asm: New file.  Entry/exit code with frame pointer.
        * t-pa: Corresponding changes.
        * t-pro: Corresponding changes.

From-SVN: r11491
1996-03-07 10:38:08 -07:00
Jason Merrill
6e94a50355 (TARGET_LIBGCC2_CFLAGS): Use -fPIC.
From-SVN: r10678
1995-12-05 03:26:37 +00:00
Jeff Law
65b70401ce * config/pa/t-pa (LIB2FUNCS_EXTRA): Define.
From-SVN: r8701
1994-12-28 20:05:51 -07:00
Jeff Law
ce3b287975 * config/pa/t-pa (INSTALLED_H): Delete.
From-SVN: r8437
1994-11-14 21:59:14 -07:00
Richard Kenner
4b303b50bc (ADA_CFLAGS): New override.
From-SVN: r8076
1994-09-12 18:15:28 -04:00
Ian Lance Taylor
b857971992 Set CROSS_LIBGCC1 to be libgcc1.null
From-SVN: r5298
1993-09-09 20:05:26 +00:00
Timothy Moore
b5ae93b42f Initial revision
From-SVN: r2144
1992-09-17 19:10:21 +00:00