Jim Wilson [Mon, 25 Jan 1993 20:24:37 +0000 (12:24 -0800)]
(CPP_SPEC): Delete __sparc_frw__ define.
(TARGET_FRW_COMPAT): New macro.
(TARGET_DEFAULTS): Comment out -mfrw option. Add new commented
out option -mfrw-compat.
(EXPAND_BUILTIN_SAVEREGS): Call sparc_builtin_saveregs to emit rtl
inline instead of calling builtin_saveregs in libgcc.a.
Jim Wilson [Mon, 25 Jan 1993 19:52:15 +0000 (11:52 -0800)]
(calls_alloca): Change name to calls_function.
(calls_alloca): Change name to calls_function. Add new
parameter WHICH to control old or new behaviour.
(expand_call): When stack space is preallocated and parameters
must be passed on the stack, precompute parameters that involve
function calls.
Richard Kenner [Sat, 23 Jan 1993 22:13:03 +0000 (17:13 -0500)]
(reload): After calling count_possible_groups, see if we have to proceed with allocating a group.
(reload): After calling count_possible_groups, see if we have to proceed
with allocating a group.
(count_possible_groups): Use HARD_REG_SET, not a char array, for consistency.
Jeff Law [Thu, 21 Jan 1993 16:34:04 +0000 (09:34 -0700)]
pa.h (REG_CLASSES): Delete GENERAL_OR_FP_OR_SNAKE_FP register class, it's not needed anymore.
* pa.h (REG_CLASSES): Delete GENERAL_OR_FP_OR_SNAKE_FP register
class, it's not needed anymore. Delete all references. 'Z'
register class is now "ALL_REGS".
Don't allow both operands to be MEM.
(float addM3,subM3,divM3,mulM3 recognizers): Don't allow either operand
to be a constant.
(all float patterns, FLOAT_EXTEND operands): Don't allow GENERAL_REGS
for float_extended operand.
(all float patterns, FLOAT operands): Change constraints to get better
register classification.
(fix_truncMN2 patterns): Likewise.
(floatMN2 patterns): Likewise.
(all functions): Use NULL_RTX instead of 0 for rtx comparisons.
(emit_pop_insn): Emit insn with mode QImode: insn contains stack-regs.
(emit_hard_swap_insn): Delete.
(emit_swap_insn): Merge with emit_hard_swap_insn.
Delete WHEN arg and change all callers.
If previous insn was a push from REG, omit swap.
If previous insn wrote reg-stack top to REG, omit swap.
Emit swap insn with mode QImode: insn contains stack-regs.
Emit swap insn after previous float insn, instead of before this one.
(swap_rtx_condition): New function.
(compare_for_stack_reg): If op 0 of COMPARE is not a stack reg, exchange
ops 0 and 1 and swap cc0 user condition.
(define_function_unit for memory): Memory is pipelined.
(sCC patterns): Use %char notation instead of nested if stmts.
(branch matchers): Likewise.
(incscc, negscc): Likewise. Add ? constraint for 3-insn alternative.
(incscc): Split into `incscc' and `decscc' to make this really
match.
(incscc/decscc special cases): New patterns using carry bit.
(many patterns): Use canonical address format. Use %r
register notation. Use GEN_INT.
(main move SF recognizer): Allow 0 for copying to general register.
(zero_extendhisi2): Remove DEFINE_EXPAND.
(zero_extendqihi2): Likewise.
(zero_extendqisi2): Likewise.
(comment before sign extension): Remove the lie.
Jim Wilson [Mon, 18 Jan 1993 18:41:46 +0000 (10:41 -0800)]
(make_signed_type): Consistently use HOST_BITS_PER_WIDE_INT.
(make_signed_type): Consistently use
HOST_BITS_PER_WIDE_INT. Correct minor formatting problems.
(fixup_signed_type): Use HOST_BITS_PER_WIDE_INT and HOST_WIDE_INT
like make_signed_type does.
(fixup_unsigned_type): Correct minor formatting problem.
Jeff Law [Sun, 17 Jan 1993 18:07:59 +0000 (11:07 -0700)]
pa.h (FP_REG_CLASS_P): New macro.
* pa.h (FP_REG_CLASS_P): New macro.
(REGISTER_MOVE_COST): Use FP_REG_CLASS_P to simplify. Make
copies from the SAR so expensive that they should never happen.
(compute_zdepi_operands): Fix header comment.
(many functions): Use %%r register syntax. Use canonical (0,%rN)
address format.
(output_function_prologue): No need to test frame_pointer_needed
in else clause of `if (frame_pointer_needed)'.
(output_function_prologue): Test boolean merge_sp_adjust_with_store
for zeroness, not for equality with 1.
(fmpyaddoperands): Use new variable mode for mode of operands[0].
(fmpysuboperands): Likewise.
Brendan Kehoe [Fri, 15 Jan 1993 00:35:00 +0000 (19:35 -0500)]
c-decl.c (c_decode_option): Set WARN_UNINITIALIZED to 2 with -Wall...
* c-decl.c (c_decode_option): Set WARN_UNINITIALIZED to 2 with
-Wall, being careful to preserve it if it's already set.
* cp-decl2.c (lang_decode_option): Likewise.
* toplev.c (main): Warn about using -Wuninitialized without -O.
Brendan Kehoe [Fri, 15 Jan 1993 00:19:25 +0000 (19:19 -0500)]
gcc.c (process_command): Only accept input files which exist and can be read...
* gcc.c (process_command): Only accept input files which exist and
can be read; prevent link phase if an input file was rejected.
(error_count): Make into a static global variable.
Jeff Law [Thu, 14 Jan 1993 23:45:40 +0000 (16:45 -0700)]
pa.c (output_function_prologue): Combine stack adjustment and first GR save when reasonable to do so.
* pa.c (output_function_prologue): Combine stack adjustment and
first GR save when reasonable to do so.
(output_function_epilogue): Combine stack adjustment and first
GR restore when reasonable to do so. Avoid load/use stall for
RP restore in common cases.
(CONST_OK_FOR_LETTER_P): Change meaning of 'K'. Add new
alternative 'N'. Use VAL_*_BITS_P macros when possible.
(LEGITIMATE_CONSTANT_P) Fix comment.
(FITS_14_BITS): Remove.
(SMALL_INT): Remove.