Jim Wilson [Tue, 8 Mar 1994 20:53:01 +0000 (12:53 -0800)]
(momentary_function_firstobj): New variable.
(init_obstack): Set it.
(save_tree_status): Save it and set it.
(restore_tree_status): Use it and restore it.
(permanent_allocation): New parameter function_end. Clear
momentary_obstack to momentary_function_firstobj if true.
(preserve_initializer): Set base field of every momentary
level on the momentary stack to new momentary_firstobj.
(pop_momentary): Only free back to previous base.
Jim Wilson [Tue, 8 Mar 1994 01:48:08 +0000 (17:48 -0800)]
(LINK_SPEC): Do not depend on gas.
(LINK_SPEC): Do not depend on gas. Don't interpret -EB
and -EL options, but do pass them.
(ASM_SPEC): Make definition depend on whether or
not the default assembler is gas. Pass all normal assembler
options to gas.
(ASM_FINAL_SPEC): Cross compiling does not presume gas.
Jim Wilson [Tue, 8 Mar 1994 01:39:43 +0000 (17:39 -0800)]
(ASM_SPEC): Make definition depend on whether or not the default assembler is gas.
(ASM_SPEC): Make definition depend on whether or
not the default assembler is gas. Pass all normal assembler
options to gas. Pass -O0 if the assembler is not gas.
Jim Wilson [Tue, 8 Mar 1994 01:06:13 +0000 (17:06 -0800)]
(print_symbol): The index field of a global symbol is the symbol table index of the corresponding local symbol...
(print_symbol): The index field of a global symbol
is the symbol table index of the corresponding local symbol, not
an index into the aux table.
(print_file_desc): Print out size of line number
information rather than repeating line number count.
(print_file_desc): The cbLineOffset field of a PDR
is relative to the cbLineOffset field of the FDR. Also, when
computing line_end of the last PDR, use cbLineOffset, not
ilineBase.
Richard Kenner [Mon, 7 Mar 1994 18:26:52 +0000 (13:26 -0500)]
(no_record_file): New variable.
(main): Set it for -imacros and -include files.
(do_endif): Don't call record_control_macro for -include or -imacros files or
files included from -imacros.
Richard Kenner [Sun, 6 Mar 1994 22:18:11 +0000 (17:18 -0500)]
Add prototypes for static functions.
(last_{jump,label}_suid): Deleted; all uses deleted.
(reg_crosses_blocks): Likewise.
(stupid_life_analysis): Only allocate MAX_SUID entries of after_insn_hard_regs.
Use GET_RTX_CLASS when possible.
Initialize all of reg_renumber.
Use reg_alternate_class when reg not available in preferred class.
(stupid_find_reg): Delete argument CROSSES_BLOCKS.
Richard Kenner [Sat, 5 Mar 1994 21:27:45 +0000 (16:27 -0500)]
(unaligned_{load,store}hi): Clear low bit of address before using as operand to extwl, mskwl, and inswl.
(unaligned_{load,store}hi): Clear low bit of address before using as operand
to extwl, mskwl, and inswl.
(movhi, reload_inhi, reload_outhi): Pass extra scratch value.
Richard Kenner [Mon, 28 Feb 1994 13:11:38 +0000 (08:11 -0500)]
(check_precompiled): Delete unused var dollar_loc.
(pcstring_used): Delete unused var TMP.
(write_output): Delete unused var WRITTEN.
(assertion_lookup): Delete unused var BP.
(pedwarn_with_file_and_line): Delete unused var I.
Richard Kenner [Mon, 28 Feb 1994 11:30:24 +0000 (06:30 -0500)]
(reg_to_stack): Use GET_RTX_CLASS.
Clear LABEL_REFs here.
(find_blocks): Make algorithm identical to that inreg_to_stack.
Use GET_RTX_CLASS.
Don't clear LABEL_REFs here.
Build a list of labels referenced by other than jumps.
If computed jump, mark using that list and forced_labels.
(uses_reg_or_mem): New function, copied from flow.c.
Jim Wilson [Mon, 28 Feb 1994 00:55:33 +0000 (16:55 -0800)]
(store_split_bit_field): If OP0 is a SUBREG, then compute WORD from the base register, instead of from the SUBREG.
(store_split_bit_field): If OP0 is a SUBREG, then
compute WORD from the base register, instead of from the SUBREG.
(extract_split_bit_field): Likewise.
(extract_bit_field): Sign-extend multiword bitfield if necessary.
Jim Wilson [Mon, 28 Feb 1994 00:44:31 +0000 (16:44 -0800)]
(handle_pragma_weak): Depend on ASM_OUTPUT_DEF not SET_ASM_OP when defining it.
(handle_pragma_weak): Depend on ASM_OUTPUT_DEF not
SET_ASM_OP when defining it. Use ASM_OUTPUT_DEF to output value
instead of SET_ASM_OP and explicit ASM_OUTPUT_LABELREF calls.
Richard Kenner [Sun, 27 Feb 1994 22:27:53 +0000 (17:27 -0500)]
(TARGET_DEFAULT): Default to 68020-40.
(ASM_SPEC): New macro.
(FUNCTION_VALUE, FUNCTION_VALUE_REGNO_P): Return pointer in a0.
(*_LIBCALL): Use functions from sysV68's library.
(INIT_CUMULATIVE_ARGS, FUNCTION_ARG*): Some libcalls pass parameters in
registers.
Richard Kenner [Sat, 26 Feb 1994 21:09:05 +0000 (16:09 -0500)]
(store_expr): In promoted TARGET case, if EXP is a volatile MEM and WANT_VALUE is nonzero, only reference the MEM once.
(store_expr): In promoted TARGET case, if EXP is a volatile MEM and
WANT_VALUE is nonzero, only reference the MEM once.
Return TARGET if it is a hard register; clean up return code.