Commit Graph

23 Commits

Author SHA1 Message Date
Kaveh R. Ghazi
0056a9b5cf configure.in (host_xm_file, [...]): Arrange to include gansidecl.h in {ht}config.h & tm.h just before the config/...
* configure.in (host_xm_file, build_xm_file, xm_file, tm_file):
        Arrange to include gansidecl.h in {ht}config.h & tm.h just
        before the config/ directory headers.
        (tm_file_list, host_xm_file_list, build_xm_file_list): Handle
        gansidecl.h in the list of dependencies.
        * Makefile.in (RTL_BASE_H): Don't depend on gansidecl.h.
        (TREE_H, DEMANGLE_H, RECOG_H, REGS_H, libgcc2.a, stmp-multilib,
        mbchar.o, collect2.o, pexecute.o, vfprintf.o, splay-tree.o, gcc.o,
        gencheck.o, choose-temp.o, mkstemp.o, mkstemp.o, prefix.o,
        dyn-string.o, cexp.o, cccp.o, cppmain.o, cpplib.o, cpperror.o,
        cppexp.o, cppfiles.o, cpphash.o, cppalloc.o, scan-decls.o):
        Likewise.
        * cccp.c: Don't include gansidecl.h.
        * cexp.y: Likewise.
        * collect2.c: Likewise.
        * config/c4x/c4x.c: Likewise.
        * config/v850/v850.h: Likewise.
        * cppalloc.c: Likewise.
        * cpperror.c: Likewise.
        * cppexp.c: Likewise.
        * cppfiles.c: Likewise.
        * cpphash.c: Likewise.
        * cpplib.c: Likewise.
        * cppmain.c: Likewise.
        * cppulp.c: Likewise.
        * demangle.h: Likewise.
        * doprint.c: Likewise.
        * dyn-string.c: Likewise.
        * eh-common.h: Likewise.
        * fix-header.c: Likewise.
        * frame.c: Likewise.
        * gcc.c: Likewise.
        * gcov.c: Likewise.
        * gen-protos.c: Likewise.
        * gencheck.c: Likewise.
        * halfpic.h: Likewise.
        * hash.c: Likewise.
        * machmode.h: Likewise.
        * mbchar.c: Likewise.
        * prefix.c: Likewise.
        * protoize.c: Likewise.
        * recog.h: Likewise.
        * rtl.h: Likewise.
        * scan-decls.c: Likewise.
        * tree.h: Likewise.
        * varray.h: Likewise.

From-SVN: r23558
1998-11-07 13:00:46 +00:00
Martin v. Löwis
ccb5954fea frame.c: Somewhat explain `FDE'.
* frame.c: Somewhat explain `FDE'.
        Suggested by Brendan Kehoe

From-SVN: r23243
1998-10-23 02:25:09 +00:00
Tom Tromey
3e2a2957a0 gthr.h: Document __GTHREAD_MUTEX_INIT_FUNCTION.
* gthr.h: Document __GTHREAD_MUTEX_INIT_FUNCTION.
        * frame.c (init_object_mutex): New function.
        (init_object_mutex_once): Likewise.
        (find_fde): Call it.
        (__register_frame_info): Likewise.
        (__register_frame_info_table): Likewise.
        (__deregister_frame_info): Likewise.

From-SVN: r22023
1998-08-27 14:51:55 +00:00
Jeff Law
38e012594e typo typo fixes fixes
From-SVN: r19601
1998-05-06 15:09:07 -06:00
Jim Wilson
f1f53f0b75 Partial fix for problem reported by Don Bowman.
* frame.c, libgcc2.c (stdlib.h, unistd.h): Don't include when
	inhibit_libc is defined.

From-SVN: r19390
1998-04-23 12:57:57 -07:00
Jim Wilson
99b13ed3fd Fix BSD/OS build error reported by Shigeya Suzuk.
* frame.c (heapsort): Rename to frame_heapsort.

From-SVN: r19351
1998-04-20 14:12:00 -07:00
Kaveh R. Ghazi
2467749d6d Zap some warnings in target files:
* frame.c: Include stdlib.h and unistd.h to possibly get various
        function prototypes.  The fixproto script guarantees these header
        files exist on the target system.
        * libgcc2.c: Likewise.
        * gthr-single.h (__gthread_mutex_lock, __gthread_mutex_trylock,
        __gthread_mutex_unlock): Add __attribute__ ((__unused__)) to the
        function parameters.
        * libgcc2.c (__udiv_w_sdiv): Likewise.

From-SVN: r19261
1998-04-17 08:26:33 +00:00
Bruno Haible
72dd050ade frame.c (start_fde_sort, [...]): New functions for fast sorting of an FDE array.
* frame.c (start_fde_sort, fde_split, heapsort, fde_merge,
        end_fde_sort): New functions for fast sorting of an FDE array.
        (fde_insert): Simplified.
        (add_fdes): Change argument list.
        (frame_init): Use the new functions.

From-SVN: r18345
1998-03-01 10:09:39 -07:00
Jason Merrill
9605fb4417 tweak comments
From-SVN: r17964
1998-02-13 08:34:53 -05:00
Bruno Haible
db8abea377 * frame.c (find_fde): Correct FDE's upper bound.
From-SVN: r17382
1998-01-16 18:56:07 -05: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
Jeff Law
a3fd4e7530 frame.h (__register_frame, [...]): New.
* frame.h (__register_frame, __register_frame_table,
        __deregister_frame): New.
        * frame.c (__register_frame, __register_frame_table,
        __deregister_frame): New.
        * frame.c (__deregister_frame_info): Return void *.
        * frame.h (__deregister_frame_info): Ditto.
        * collect2.c (__deregister_frame_info): Ditto.

From-SVN: r17113
1997-12-15 16:28:44 -07:00
Jeff Law
6d8ccdbbb2 Bring over changes from latest gcc-2.8 pre-release.
Mirror sched.c change into haifa-sched.c

From-SVN: r17097
1997-12-15 00:05:04 -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
956d69504d Merge from gcc-2.8
From-SVN: r16987
1997-12-06 17:31:01 -07:00
Jason Merrill
9799193348 frame.c (add_fdes, count_fdes): Go back to checking pc_begin for linked once FDEs.
* frame.c (add_fdes, count_fdes): Go back to checking pc_begin for
 	linked once FDEs.

From-SVN: r16359
1997-11-07 13:57:39 -05:00
Jeff Law
e9a25f70a0 Update mainline egcs to gcc2 snapshot 971021.
From-SVN: r16278
1997-11-02 14:19:36 -07:00
Jason Merrill
d84e64d416 dwarf2out.c (output_call_frame_info): The CIE pointer is now a 32 bit PC-relative offset.
* dwarf2out.c (output_call_frame_info): The CIE pointer is now a 32
 	bit PC-relative offset.  The exception range table pointer is now in
 	the CIE.
	* frame.c (dwarf_cie, dwarf_fde): Rename CIE_pointer to CIE_delta.
	(count_fdes, add_fdes, get_cie): Adjust.
	(cie_info, extract_cie_info, __frame_state_for): Adjust eh_ptr uses.

	From H.J. Lu:
	* frame.c (count_fdes, add_fdes): Skip linked once FDE entries.

From-SVN: r16192
1997-10-26 14:54:42 -05:00
Andreas Schwab
13ab2b8367 frame.c (__frame_state_for): Execute the FDE insns until the current pc value is strictly bigger than the...
* frame.c (__frame_state_for): Execute the FDE insns until the
        current pc value is strictly bigger than the target pc value.

From-SVN: r15863
1997-10-07 14:42:54 -04:00
Jeffrey A Law
92cbe4d261 frame.c: Remove last change.
* frame.c: Remove last change.
        * dwarf2.h: Remove last change.
        * tree.h: Add declarations of DWARF2 unwind info support
        functions.
As requested by Jason.

From-SVN: r15751
1997-09-28 01:03:02 -06:00
Andreas Schwab
a7cc7f29f4 frame.c: Include gansidecl.h for PROTO.
* frame.c: Include gansidecl.h for PROTO.
        * dwarf2out.c: Move inclusion of dwarf2.h down so that PROTO is
        defined.  Don't declare dwarf2out_cfi_label here.
        * dwarf2.h: Add declarations of DWARF2 unwind info support
        functions.
        * m68k.c: Include dwarf2.h.
        (output_function_prologue): Add dwarf2 support.
        * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM): New macros.
        (INCOMING_FRAME_SP_OFFSET): Likewise.
Update m68k patch from Andreas.

From-SVN: r15740
1997-09-26 21:58:57 -06:00
Jason Merrill
6d53d7c252 * frame.c (__deregister_frame): Check properly for initialized object.
From-SVN: r15601
1997-09-20 19:46:43 -04:00
Jason Merrill
0021b564f4 dwarf2 EH support
From-SVN: r15255
1997-09-10 14:00:28 -04:00