Sun Feb 12 20:20:28 1995 Brendan Kehoe (brendan@lisa.cygnus.com)
* config/sparc/sysv4.h (ASM_OUTPUT_SECTION_NAME): Check to make
sure DECL is non-null before trying to reference it.
* config/mips/elf64.h (ASM_OUTPUT_SECTION_NAME): Likewise.
From-SVN: r8915
Delete commented out patterns. Delete all peepholes but two.
Delete all define_splits but one. Delete all `combiner' patterns.
(mpy): Correct multiply latencies.
(needs_delay_slot, hit_stack, interrupt_function, in_delay_slot,
define_delay): Correct and/or simplify all reorg related definitions.
(addsi3_real): Delete.
(addsi3): Use arith_operand for argument 1.
(mulhisi3): Use arith_reg_operand not mac_operand.
(and_ffff, and_ff): Delete.
(andsi3): Handle constant 255 specially.
(rot*): Correct and/or simplify all rotate patterns.
(ashlsi3_k): Delete clobber of T bit. Output add for 1 bit shift.
(ashlsi3_n, lshrsi3_n): Delete use of fake_shift.
(negc): Correct pattern by adding set of T bit.
(extend*): Delete 'u' and 'U' constraint cases.
(pop): Separate 'l' and 'x' constraint cases.
(movsi-1): Better code for move to T bit case.
(bsr, bsr_value, mac): Delete.
From-SVN: r8888
Rewrite to actually work for more than a few small operands,
and to be reasonably small.
(__mulsi3): Eliminate usage of link register (i.e. a6).
(shift patterns): Delete.
(__umulsi3): Delete.
From-SVN: r8880
(cpu attribute): Add r8000.
(umaddi+1, ..., umadddi+8): Add pattern for multiply accumulate.
(movdi): Legitimize addresses, just like movsi does.
(loadgp): New pattern for 64 bit ABI.
(shift patterns): Use INTVAL instead of XINT for constants.
(jump, tablejump_interal[12]): Add 64 bit ABI support.
(movsicc-8, ..., movsicc): Add patterns for conditional moves.
From-SVN: r8864
(large_int): Delete code for handling 64 bit constants.
(mips_const_double_ok): For irix6, reject all floating point constants.
(mips_move_2words): Use dli not li for 64 bit constants.
Use dla not la for 64 bit addresses.
(output_block_move): Likewise.
(function_arg): Add support for 64bit ABI.
(override_options): Add support for mips4 and R8000.
(print_operand): Handle new modifiers 'B', 'b', 'T', 't'.
Make 'X' case work for 64 bit host.
(mips_output_filename): Use ASM_OUTPUT_FILENAME.
(mips_asm_file_start): Go to text section for 64bit ABI.
(compure_frame_size, save_restore_insns, function_prologue,
mips_expand_prologue, function_epilogue): Add support for 64 bit ABI.
(type_dependent_reg, mips_function_value): New functions.
From-SVN: r8863
(enum processor_type): Add R8000.
(mips_isa_string, CC1_SPEC): Add mips4 to comment.
(CONDITIONAL_REGISTER_USAGE): Use SUBTARGET_CONDITIONAL_REGISTER_USAGE.
(SUBTARGET_CONDITIONAL_REGISTER_USAGE): New macro.
(ASM_SPEC, LINK_SPEC, CPP_SPEC): Add mips4 support.
(MIPS_TEMP[12]_REGNUM): Change to avoid clobbering 64bit abi
parameter registers.
(SMALL_INT, SMALL_INT_UNSIGNED, CONST_OK_FOR_LETTER_P): Fix for 64
bit host.
(ABI_64BIT): New macro.
(REG_PARM_STACK_SPACE): Use UNITS_PER_WORD not 4.
(GO_IF_LEGITIMATE_ADDRESS, CONSTANT_ADDRESS_P, LEGITIMATE_CONSTANT,
LEGITIMIZE_ADDRESS): Don't allow CONST addresses for Irix6.
(ASM_OUTPUT_FILENAME): New macro.
(ASM_OUTPUT_ADDR_DIFF_ELT): Add 64 bit ABI support.
From-SVN: r8862