Some code come from output_zdepi.
(output_zdepi): Removed. (depi_cint_operand): New name for zdepi_operand.
(consec_zeros_p, and_operand, ior_mask_p, ior_operand,
output_and, output_ior): New functions.
(output_load_address): Removed. Nothing uses it.
From-SVN: r2115
(several patterns): Make sure # of attribute alternatives
match # of constraint alternatives.
Return assembler output template instead of calling output_asm_insn.
Don't write to operands[n] for n >= max operand number in the
pattern, use xoperands instead.
(casesi): Rewrite. Used to be buggy and slow.
(and-not patterns): Make them canonical. Put operands in the right order.
(negsi2): Don't use @ for just one output template.
(movstrsi): Change `!= 4' => `< 4' in test for alignment.
(adddi3): Extend to handle CONST_INT.
(ior-with-immediate optimizer): New pattern.
(and-with-immediate optimizer): New pattern.
(sCC, bCC expanders): Remove constraints.
(high:DI recognizer): Add return \"\".
From-SVN: r2113
* pa.md (non-[cf]branch define_delay): Use a single delay description
for the delay slots in "branch", "call", and "milli" insns.
(fbranch define_delay): fbranches have a single delay slot which
may be nullified when the branch is taken (regardless of direction
or distance to the target.)
(in_branch_delay attribute): Disallow fbranch insns explicitly.
(floating point branches): Use "fbranch" attribute for these insns.
Update output template to properly handle nullification.
From-SVN: r2107
* pa.c (output_function_prologue): Undo Aug. 13 change.
If profiling, then this function makes calls. Reflect this in
CALLINFO.
(output_function_epilogue): If profiling, then be restore "rp" here.
* pa.c (use_milli_regs): Deleted.
From-SVN: r2065
* pa.md (indirect_jump): Annul the next instruction if the delay
slot could not be filled instead of emitting a nop.
* pa.md (use_milli_regs attribute): Deleted, not necessary anymore.
All references deleted.
From-SVN: r2064
Use gen_lowpart to change mode of operand 0.
(storeinthi): Use match_operand for operand 0.
Change output code to reassign operand 0.
(truncsihi2, truncsiqi2, trunchiqi2): Remove these patterns.
From-SVN: r2057
-mpa-risc-1-0, -mpa-risc-1-1.
(ASM_DECLARE_FUNCTION_NAME): Emit argument descriptors for all
general registers if current_function_varargs.
From-SVN: r2018
(TARGET_SWITCHES): Add "no-80387", "no-soft-float", "fp-ret-in-387", and
"no-fp-ret-in-387".
Change no* switches to no-*.
(CONDITIONAL_REGISTER_USAGE): Make 387 regs fixed if the 387 is not used
at all.
(REG_CLASS_FROM_LETTER): Constraint letters 'f', 't' and 'u' are NO_REGS
if the 387 is not used.
(TRAMPOLINE_TEMPLATE): Use GEN_INT to generate const_int rtx.
From-SVN: r2001
(TARGET_DEFAULT,VALUE_REGNO,FUNCTION_VALUE_REGNO): Moved from unix target
files (aix386.h, i386gas.h, i386sun.h, i386v.h, i386v4.h, i386vgas.h,
seq386.h).
(TARGET_DEFAULT): Make TARGET_IEEE_FP default on.
(VALUE_REGNO): Test for MODE_FLOAT instead of specific modes.
(VALUE_REGNO,FUNCTION_VALUE_REGNO): MODE_FLOAT return reg depends on
TARGET_FLOAT_RETURNS_IN_80387.
From-SVN: r2000
Avoid double-negative "! NON_*" constructs for clarity.
Pass NULL_PTR as null parameter instead of 0.
(sqrtM2): Patterns are only valid if IEEE FP or -ffast-math.
(sinM2,cosM2): New patterns.
(zero_extract test): New pattern.
From-SVN: r1982
(float*, fix*): Rewrite to match hardware; take/put
integer input/output from/to fp register instead of memory or
general register. Delete 6 now obsolete combiner patterns.
From-SVN: r1957