ia64 unwind registration reorg

Richard Henderson rth@cygnus.com
Tue Oct 3 20:14:00 GMT 2000


As I mentioned in a previous message, IA-64 has bits in the
ABI that allow us to not have to call __register_frame_info,
or anything else, so long as we can coordinate with ld.so.

The following works for Linux; whenever other operating
systems get added for IA-64, they'll have to define their
own widgetry for communicating with the loader.


r~


2000-10-03  Richard Henderson  <rth@cygnus.com>

	* configure.in (ia64-linux) [tmake_file]: Add ia64/t-glibc.
	* config/ia64/crtbegin.asm (__EH_FRAME_BEGIN__): Remove.
	(segrel_ofs): Remove.
	(__ia64_app_header): New.
	(frame_object): Remove.
	(.init): Set __ia64_app_header when non-shared.
	(__do_global_dtors_aux): Do not call __deregister_frame_info.
	(__do_frame_setup): Remove.
	* config/ia64/crtend.asm (__EH_FRAME_END__): Remove.
	(__do_frame_setup_aux): Remove.
	* config/ia64/frame-ia64.c (object_mutex): Remove.
	(bad_record): Remove.
	(init_object_mutex): Remove.
	(init_object_mutex_once): Remove.
	(fde_compare): Remove.
	(__register_frame_info_aux): Remove.
	(frame_init): Remove.
	(find_fde): Remove.
	(*): Use ISO function definitions.
	(P3_record_types): Constify.
	(P7_record_types, P7_additional_fields): Constify.
	(P8_record_types, P8_additional_fields): Constify.
	(read_P_record): Remove parenthesis warning.  Use structure
	assignment instead of memcpy.
	(execute_one_ia64_descriptor): Likewise.
	(__build_ia64_frame_state): Use __ia64_find_fde.
	(record_name, print_record, print_all_records): Remove.
	* config/ia64/frame-ia64.h: New file.
	* config/ia64/fde-glibc.c: New file.
	* config/ia64/t-glibc: New file.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: z.gz
Type: application/x-gzip
Size: 11561 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20001003/272f4715/attachment.bin>


More information about the Gcc-patches mailing list