Jeff Law [Tue, 6 May 1997 02:42:06 +0000 (20:42 -0600)]
h8300.c (notice_update_cc): Use CC_SET_ZN and CC_SET_ZNV.
* h8300.c (notice_update_cc): Use CC_SET_ZN and CC_SET_ZNV.
(shift_one, shift_two): Set CC_NO_CARRY as needed. Remove
references to CC_OVERFLOW_0.
(emit_a_shift): Similarly.
* h8300.h (CC_OVERFLOW_0): Remove.
* h8300.md: Use set_zn and set_znv for cc0 tracking.
(bCC): Restore the comparison is CC_OVERFLOW_UNUSABLE is set and
the comparison needs the overflow bits.
Jeff Law [Tue, 6 May 1997 01:15:09 +0000 (19:15 -0600)]
mn10300.c (notice_update_cc): Use CC_SET_ZN and CC_SET_ZNV.
* mn10300.c (notice_update_cc): Use CC_SET_ZN and CC_SET_ZNV.
* mn10300.h (CC_NO_CARRY): Define.
* mn10300.md: Use "set_zn" and "set_znv" to more accurately
describe cc0 status.
Karl Berry [Mon, 5 May 1997 21:06:33 +0000 (21:06 +0000)]
(\onepageout): \ifcropmarks, center the page body.
Lost this when merged \croppageout with \onepageout.
Found by Arnold.
(\doprintindex): Do not bother to go into double column mode unless
there actually is a non-empty index.
(\begindoublecolumns): Include any existing \partialpage in the new one,
lest we lose a whole page of output.
Found by M J Morley <mjm@scs.leeds.ac.uk>.
(\chapternofonts): Remove spurious spaces, both in the definitions that
get output to the aux file(s) and in this macro.
Fix comments and rationalize whitespace in various other places.
Mike Stump [Tue, 29 Apr 1997 20:03:15 +0000 (20:03 +0000)]
except.c (expand_eh_region_start_tree): Add DECL argument so we can better track why the region was made for error...
* except.c (expand_eh_region_start_tree): Add DECL argument so we
can better track why the region was made for error reporting.
* except.h (expand_eh_region_start_tree): Likewise.
* tree.h (expand_dhc_cleanup): Likewise.
(expand_dcc_cleanup): Likewise.
* except.c (expand_eh_region_start_for_decl): New routine.
* except.h (expand_eh_region_start_for_decl): Likewise.
* stmt.c (expand_decl_cleanup): Add DECL to call of
expand_eh_region_start_tree.
(expand_dcc_cleanup): Likewise.
(expand_dhc_cleanup): Likewise.
Jeff Law [Wed, 23 Apr 1997 23:54:59 +0000 (17:54 -0600)]
mn10300.c (secondary_reload_class): Handle more cases where we need secondary reloads.
* mn10300.c (secondary_reload_class): Handle more cases where we
need secondary reloads.
(impossible_plus_operand): Accept anything that involves addition
of the stack pointer.
* mn10300.md (reload_insi): Always load the stack pointer into
the destination (which is always an address register).
* mn10300.h (STORE_FLAG_VALUE): Remove definition.
* xm-mn10300.h: Declare malloc, realloc, calloc and free.
Jim Wilson [Tue, 22 Apr 1997 22:19:47 +0000 (15:19 -0700)]
(gen_variable_dir): Add test for DW_AT_declaration to the old_die if statement, and delete assertion for it.
(gen_variable_dir): Add test for DW_AT_declaration to
the old_die if statement, and delete assertion for it.
(decl_ultimate_origin): Remove last change.
Jeff Law [Tue, 22 Apr 1997 16:29:04 +0000 (10:29 -0600)]
mn10300.c (expand_prologue): End the current sequence before counting the tst insns in the current function.
* mn10300.c (expand_prologue): End the current sequence before
counting the tst insns in the current function. Start a new
one before emitting any prologue instructions.
* mn10300.h (REGISTER_MOVE_COST): Bump up cost of moves in the
same class.
Jim Wilson [Mon, 21 Apr 1997 17:56:17 +0000 (10:56 -0700)]
(movqi+2): Add address registers.
(movxf+1): Disable for TARGET_5200.
(movxf+2): New pattern for TARGET_5200.
(addsi3): Add define_expand. Move code to output_addsi3.
(addsi3_internal): Renamed from addsi3. Disable for TARGET_5200.
(addsi3_5200): New pattern for TARGET_5200.
Richard Kenner [Sun, 20 Apr 1997 21:10:19 +0000 (17:10 -0400)]
Major cleanup; mostly reformatting.
Include expr.h.
Undefine inline ifndef __GNUC__; never define to include static.
Add "static" to header of all inlined functions.
Add declarations for all static functions, with prototypes.
(addr_const_to_string): Use HOST_WIDE_INT_PRINT_* macros.
(add_AT_*, new_{die,loc_descr,cfi): Don't check for xmalloc returning zero.
(modified_type_die): Add missing parm on recursive call.
({reg,based}_loc_descriptor): Add missing arg to call to new_loc_descr.
(add_const_value_attribute): Use REAL_VALUE_TYPE for fp calculations.
(output_call_frame_info): Add missing arg to output_cfi call.
(dwarf2out_def_cfa): Local variable OLD_REG must be unsigned long.
Richard Kenner [Sun, 20 Apr 1997 16:54:50 +0000 (12:54 -0400)]
Cast first arg in all calls to bzero to char *.
(decl_ultimate_origin): Return NULL if equal to decl.
(constant_size): Never return more than 4.
(value_format, case 8): New case.
(dwarf2out_frame_debug): Use HARD_FRAME_POINTER_REGNUM.
(based_loc_descr): Likewise.
(add_bound_info): Delete default case.
Add cases for CONVERT_EXPR and NON_LVALUE_EXPR; treat like NOP_EXPR.
Change NOP_EXPR to to recursive call.
(add_type_attribute): Ignore unnamed subtype of integral or FP.
(gen_subprogram_die): Use reg_loc_descriptor.
(dwarf2out_decl): Ignore nested functions.
Richard Kenner [Sun, 20 Apr 1997 16:19:20 +0000 (12:19 -0400)]
({move,clear}_by_pieces_1, expand_assignment): Ensure we have unshared rtx before changing flags.
({move,clear}_by_pieces_1, expand_assignment): Ensure we have unshared rtx
before changing flags.
(store_{constructor,field}): Likewise.
(expand_expr, case COMPONENT_REF): Likewise.
(store_expr): Check if TEMP and TARGET are same with rtx_equal_p.
Jeff Law [Mon, 14 Apr 1997 20:59:44 +0000 (14:59 -0600)]
mn10300.c (can_use_return_insn): Include outgoing argument area in size computation.
* mn10300.c (can_use_return_insn): Include outgoing argument
area in size computation.
(expand_prologue): Likewise. No longer diddle with sequences.
Put register saves just before outgoing argument area.
(expand_epilogue): Similarly.
(impossible_plus_operand): New function.
* mn10300.h (FRAME_POINTER_REQUIRED): Never require a frame pointer.
(ACCUMULATE_OUTGOING_ARGS, OUTGOING_REG_PARM_STACK_SPACE): Define.
(impossible_plus_operand): Declare.
* mn10300.md (reload_insi): New expander to handle pathological
reload cases.
(addsi3): Fix CC status.
* mn10300.h (FUNCTION_VALUE): Return addresses in $a0.
(FUNCTION_VALUE_REGNO_P): Corresponding changes.
* mn10300.md (call_value_internal): Allow output to be in an
address register.