Jim Wilson [Mon, 16 Jun 1997 00:43:19 +0000 (17:43 -0700)]
(dwarf2out_frame_debug): Handle IOR.
(struct limbo_die_struct): Define.
(TYPE_DECL_IS_STUB): Call decl_ultimate_origin if DECL_ABTRACT_ORIGIN
is set.
(limbo_die_count): Delete.
(libmo_die_list): Define.
(new_die): Add die to limbo_die_list instead of incrementing
limbo_die_count.
(add_AT_location_description): Renamed from add_location_attribute.
New parameter attr_kind.
(add_location_or_const_value_attribute, gen_subprogram_die,
add_bound_info): Change call to add_AT_location_description.
(add_bound_info): Add call to contains_placeholder_p. Ignore
MAX_EXPR and VAR_DECL.
(add_subscript_info): Ignore the index type if it is an unnamed
integral type.
(scope_die_for): Move check for function-local tags after code setting
containing_scope, and add check for non-NULL containing_scope
(add_type_attribute): If unnamed type, use TREE_TYPE instead.
(gen_enumeration_type_die, gen_struct_or_union_type_die): Call
add_child_die if die_parent is NULL.
(gen_subprogram_die): Ifdef out DW_AT_static_link code.
(decls_for_scope): Delete decrement of limbo_die_count.
(dwarf2out_finish): Add code to traverse the limbo_die_list, and
call add_child_die if die_parent is NULL. Delete limbo_die_count code.
Richard Stallman [Tue, 10 Jun 1997 02:49:33 +0000 (02:49 +0000)]
Use i?86, not i.86.
Don't test /usr/lib/ldscripts; instead, test whether ld_help_string
does not contain "supported emulations".
Use a case statement to distinguish systems when there IS
"supported emulations".
Richard Kenner [Mon, 9 Jun 1997 22:37:37 +0000 (18:37 -0400)]
(c_build_type_variant): Don't futz with main type variant of array since C...
(c_build_type_variant): Don't futz with main type variant of array
since C Standard requires main type variant of array-of-const also be
array-of-const.
Jeff Law [Sun, 8 Jun 1997 21:20:21 +0000 (15:20 -0600)]
pa.md (conditional branch insns): Get length right for branches to targets which can not be reached with a "bl"...
* pa.md (conditional branch insns): Get length right for branches
to targets which can not be reached with a "bl" instruction.
* pa.c (output_cbranch): Handle branches to targets which can not
be reached with a "bl" instruction.
* pa.c (struct defer_plab): Renamed to struct deferred_plabel.
Remove "symbol" field and replace with "name" field.
(output_function_epilogue): Don't output deferred plabels here.
(output_deferred_labels): New function. Output them here instead.
(output_call): Rewrite long call support.
* pa.h (ASM_FILE_END): Define.
(LEGITIMATE_CONSTANT_P): Never accept a function_label_operand.
* pa.md (HIGH and LO_SUM of function address): Remove patterns.
Mike Stump [Fri, 6 Jun 1997 23:18:36 +0000 (23:18 +0000)]
libgcc2.c (__eh_ffetmnpc): Add support for machines that cannot access globals after throw's epilogue when...
* libgcc2.c (__eh_ffetmnpc): Add support for machines that cannot
access globals after throw's epilogue when -fno-sjlj-exceptions is
used.
* rs6000.c (DONT_ACCESS_GBLS_AFTER_EPILOGUE): Likewise.
* mips.h (DONT_ACCESS_GBLS_AFTER_EPILOGUE): Likewise.
(INITIAL_ELIMINATION_OFFSET): Fix RETURN_ADDRESS_POINTER_REGNUM
for 64 bit words, with 32 bit pointers and variable endianness.
Fixes throwing across shared library lines (useful at times on mips and rs6000)
Jeff Law [Thu, 5 Jun 1997 15:52:34 +0000 (09:52 -0600)]
sh.c (trap_exit, sp_switch): New variables.
* sh.c (trap_exit, sp_switch): New variables.
(print_operand, case '@'): If trap_exit is nonzero, then use
a trapa instead of an rte/rts to exit the current function.
(sh_expand_prologue): Switch stacks at function entry as needed.
(sh_expand_epilogue): Similarly at function exit.
(function_epilogue): Clear trap_exit and sp_switch too.
(sh_valid_machine_decl_attribute): New function.
* sh.h (VALID_MACHINE_DECL_ATTRIBUTE): Define.
(sp_switch): Declare.
* sh.md (sp_switch_1, sp_switch_2): New named patterns.
Karl Berry [Wed, 4 Jun 1997 21:47:40 +0000 (21:47 +0000)]
texinfo.tex (\mainmagstep): Define this as a \count variable instead of with \let...
* texinfo.tex (\mainmagstep): Define this as a \count variable
instead of with \let, to make changing to \magstep1 more transparent.
From: HERBERT@boevm4.vnet.ibm.com.
(\uref): New command a la \url.
Mike Stump [Thu, 29 May 1997 18:42:07 +0000 (18:42 +0000)]
except.c (push_eh_entry): Eliminate start of exception region label, as it isn't used.
* except.c (push_eh_entry): Eliminate start of exception region
label, as it isn't used. Rename end_label to outer_context.
(expand_eh_region_start_for_decl): Likewise.
(expand_leftover_cleanups): Likewise.
(expand_start_all_catch): Likewise.
* except.h (eh_entry): Likewise.
* except.c (expand_eh_region_end): Likewise. Jump around the nop
that we insert, so that we can optimize it away, if it is unused,
also so that flow analysis can tell if we fall through to the end
of a function or not so that it can know if a function that returns
a value, in fact does or not.
Fixes g++.jason/return2.C when using -fno-sjlj-exceptions