Jeff Law
5fcd63d09c
reorg.c (find_end_label): Update unfilled_slots if the return insn we make has a delay slot.
...
* reorg.c (find_end_label): Update unfilled_slots if the return
insn we make has a delay slot.
From-SVN: r3736
1993-03-14 20:53:37 -07:00
Richard Kenner
7963ac373a
(shift_cost): Now a vector.
...
(shiftadd_cost): New vector for cost of (N * a + b) instructions.
(shiftsub_cost): New vector for cost of (N * a - b) instructions.
(lea_cost): Removed.
(init_expmed): Initialize new vectors. Use ASHIFT, not LSHIFT.
Remove code initializing lea_cost.
(enum alg_code): New definition.
(synth_mult): Rewrite for better algorithms and faster operation.
(expand_mult): Rewrite code for constant multiplication.
From-SVN: r3735
1993-03-14 21:26:55 -05:00
Richard Kenner
f005288757
(build_objc_method_call, get_class_reference):
...
Call assemble_external on anything we are about to generate a call to.
(get_super_receiver): Likewise.
(handle_class_ref): Put constant in readonly-data section, not text.
(build_objc_symtab_template): Correctly build index type for 0-length array.
From-SVN: r3734
1993-03-14 17:21:33 -05:00
Richard Kenner
7463703395
(simplify_plus_minus): Reject "simplifications" that are too complex
...
in form.
From-SVN: r3733
1993-03-14 09:37:43 -05:00
Richard Kenner
5931019b79
(simplify_plus_minus): Correct sign error in expanding NOT.
...
From-SVN: r3732
1993-03-14 06:32:20 -05:00
Richard Stallman
8bb44f9ab5
(choose_reload_regs): Verify reload_out[j != 0
...
before comparing with relaod_earlyclobber elements.
From-SVN: r3731
1993-03-14 05:02:30 +00:00
Richard Stallman
b1e64e0d7f
(emit_call_1): Restore inhibit_defer_pop before popping args
...
so that pops really do get deferred if appropriate.
From-SVN: r3730
1993-03-14 02:08:37 +00:00
Richard Kenner
91a60f374f
(simplify_plus_minus): When seeing if we have reduced the number of operands...
...
(simplify_plus_minus): When seeing if we have reduced the number of
operands, ensure we count a CONST result as two operands.
From-SVN: r3729
1993-03-13 20:45:44 -05:00
Richard Kenner
bbc8a07104
Correctly define PUSH_ARGS_REVERSED.
...
From-SVN: r3728
1993-03-13 18:13:22 -05:00
Jeff Law
45586a95c2
pa.c (eligible_for_epilogue_delay): Insns which access %r2 can not be used to...
...
* pa.c eligible_for_epilogue_delay): Insns which access
%r2 can not be used to fill the epilogue's delay slot.
From-SVN: r3727
1993-03-13 14:47:54 -07:00
James Van Artsdalen
fabf775092
(emit_swap_insn): If emitting after a cc0 setter, link the cc0 insns.
...
From-SVN: r3726
1993-03-13 21:33:23 +00:00
Richard Kenner
4969d05d19
Add prototypes for static functions.
...
(struct move_by_pieces): Move definition before function forward decls.
From-SVN: r3725
1993-03-12 22:06:14 -05:00
Richard Stallman
446ac30fc7
(USE_C_ALLOCA): Define if not __GNUC__.
...
From-SVN: r3724
1993-03-12 23:43:25 +00:00
Roland McGrath
cd84780b24
entered into RCS
...
From-SVN: r3723
1993-03-12 23:42:05 +00:00
Richard Stallman
80f9c711d9
(variable_size): Better error for div by 0 in size.
...
From-SVN: r3722
1993-03-12 23:17:41 +00:00
Richard Stallman
c841050eed
(emit_push_insn): Handle failure of gen_movstr...
...
From-SVN: r3721
1993-03-12 23:07:38 +00:00
Richard Kenner
dac29d65d8
(PROMOTE_MODE): Fix typo.
...
From-SVN: r3720
1993-03-12 17:48:08 -05:00
Richard Kenner
7b0d7bd0c9
(refers_to_mem_p): Use rtx_equal_p to see if bases are equal.
...
From-SVN: r3719
1993-03-12 17:43:28 -05:00
Richard Kenner
6500fb4361
(set_nonvarying_address_components): Fix type mismatch with caller.
...
(refers_to_mem_p): Call properly in second call.
From-SVN: r3718
1993-03-12 17:39:19 -05:00
Richard Kenner
48f1682895
(jump_optimize): Fix bug in last change.
...
From-SVN: r3717
1993-03-12 17:25:25 -05:00
James Van Artsdalen
fe4435d988
(truncdfsf2): Rewrite to allow FLOAT_REGS in constraints for better register preferences.
...
(truncdfsf2): Rewrite to allow FLOAT_REGS in constraints
for better register preferences.
(movM): If REG_WAS_0, make sure the reg hasn't changed since then.
(cmpM expanders): Don't allow both operands to be MEM.
Use VOIDmode for the COMPARE rtx instead of CCmode.
(cmpM recognizers): Likewise.
Remove constraints for constants from operand 0.
(cmpdf,cmpsf recognizers): When using VOIDmode as mode of the COMPARE rtx,
require that the mode be exactly VOIDmode.
From-SVN: r3716
1993-03-12 09:34:38 +00:00
James Van Artsdalen
b9342cdfeb
(get_true_reg): Don't ignore FLOAT_TRUNCATE.
...
(subst_stack_regs_pat): Substitute in FLOAT_TRUNCATE insns.
(compare_for_stack_reg): Reset insn code after swapping operands.
From-SVN: r3715
1993-03-12 09:27:29 +00:00
James Van Artsdalen
ac2afb64fb
(VOIDmode_compare_op): New operand predicate function.
...
From-SVN: r3714
1993-03-12 09:26:43 +00:00
James Van Artsdalen
4cbb525cee
(FLOAT_CLASS_P): New macro.
...
(REGISTER_MOVE_COST): Use it instead of comparing to FLOAT_REGS.
(PREFERRED_RELOAD_CLASS): Likewise.
(SECONDARY_MEMORY_NEEDED): Likewise.
(CLASS_MAX_NREGS): Likewise.
(SELECT_CC_MODE): Use VOIDmode for non-FP-equality comparisons.
From-SVN: r3713
1993-03-12 09:22:53 +00:00
James Van Artsdalen
dc577adaac
(movM): If REG_WAS_0, make sure the reg hasn't changed since then.
...
From-SVN: r3712
1993-03-12 09:18:56 +00:00
Doug Evans
9516a9afd7
* (RETURN_IN_MEMORY): Handle BLKmode values.
...
From-SVN: r3711
1993-03-12 00:11:19 +00:00
Richard Kenner
b49e978eeb
(RTX_COST, case MULT): Handle s8addx and s4addx.
...
(RTX_COST, case MULT): Correctly assign cost to multiplies by a power of two.
(RTX_COST, case ASHIFT, ASHIFTRT, LSHIFTRT, IF_THEN_ELSE): New cases.
From-SVN: r3710
1993-03-11 19:10:28 -05:00
Doug Evans
e14fa9c45a
* (RETURN_IN_MEMORY): Handle BLKmode values.
...
From-SVN: r3709
1993-03-12 00:10:21 +00:00
Richard Kenner
ac07e0665d
(CHEAP_REG): New macro; makes virtual regs cheap too.
...
(COST): Use CHEAP_REG.
(rtx_cost, case REG): Use CHEAP_REG to return zero for some REGs.
From-SVN: r3708
1993-03-11 19:02:37 -05:00
Doug Evans
9f67be1318
* (aggregate_value_p): RETURN_IN_MEMORY handles BLKmode values.
...
From-SVN: r3707
1993-03-11 23:55:44 +00:00
Jeff Law
23c6329e92
pa.md (FP sCC insn): Delete.
...
* pa.md (FP sCC insn): Delete.
(sCC define_expands): FAIL instead of generating FP sCC insns.
From-SVN: r3706
1993-03-11 07:13:07 -07:00
Jeff Law
6bf6db507d
* pa.c (gen_scond_fp): Delete.
...
From-SVN: r3705
1993-03-11 07:12:53 -07:00
Jeff Law
61cd2f1f37
* pa.h (toplevel): Delete declaration of gen_scond_fp.
...
From-SVN: r3704
1993-03-11 07:12:39 -07:00
Jeff Law
f451db8990
cse.c (set_nonvarying_address_components): New function.
...
* cse.c (set_nonvarying_address_components): New function.
(invalidate): Use set_nonvarying_address_components instead of
computing them.
(refers_to_mem_p): Likewise. Simplify checks for conflicting
memory accesses. Make static.
From-SVN: r3703
1993-03-11 05:46:36 -07:00
Jeff Law
6f9c49e07d
* loop.c (addr_overlap_p): Delete.
...
From-SVN: r3702
1993-03-11 05:45:54 -07:00
Richard Stallman
db2e669b70
(define_label): Use current line number in error msg.
...
From-SVN: r3701
1993-03-11 08:19:03 +00:00
Richard Stallman
88ece8db61
(const_binop): When evaluating a shift, ignore
...
overflows generated by force_fit_type.
From-SVN: r3700
1993-03-11 08:18:16 +00:00
Richard Stallman
db27aeecc2
Delete ${LIB}/DONE just before exit.
...
From-SVN: r3699
1993-03-11 04:53:06 +00:00
Jeff Law
ea9f550ab5
Fix typo in last revision (/2 --> >> 1)
...
From-SVN: r3698
1993-03-10 10:53:17 -07:00
Jeff Law
6d22d9a6e0
* pa.c (reg_or_cint_move_operand): Use cint_ok_for_move.
...
From-SVN: r3697
1993-03-10 10:45:14 -07:00
Jeff Law
6746a52edb
pa.c (cint_ok_for_move): New function.
...
* pa.c (cint_ok_for_move): New function. Returns 1 iff the given
CONST_INT can be loaded into a register in a single instruction.
(move_operand): Use cink_ok_for_move.
From-SVN: r3696
1993-03-10 10:31:38 -07:00
Jeff Law
08cddb03ae
* pa.md (add reg and large int): New define_splits for the combiner.
...
From-SVN: r3695
1993-03-10 10:31:14 -07:00
Jeff Law
d390794555
jump.c (jump_optimize, [...]): Do this regardless of BRANCH_COST if HAVE_incscc or HAVE_decscc is defined.
...
* jump.c (jump_optimize, clause for `if (foo) b++'):
Do this regardless of BRANCH_COST if HAVE_incscc or
HAVE_decscc is defined.
From-SVN: r3694
1993-03-10 10:26:53 -07:00
Torbjorn Granlund
5329e2276a
(reg_or_cint_move_operand): New function.
...
(move_operand): Add header comment.
From-SVN: r3693
1993-03-10 16:57:05 +00:00
Torbjorn Granlund
7887873043
(conditional move): Use %B for output when appropriate.
...
(conditional move with second operand == 0): New pattern.
From-SVN: r3692
1993-03-10 16:56:43 +00:00
Richard Stallman
7bbc643254
(OBJC_GEN_METHOD_LABEL): Convert colons to _'s.
...
Don't use the category name or the number.
From-SVN: r3691
1993-03-10 07:19:29 +00:00
Richard Stallman
ac50959202
(link_command_spec): New option -nostartfiles.
...
From-SVN: r3690
1993-03-10 07:11:33 +00:00
Richard Stallman
d847907df7
Minor fix in last change.
...
From-SVN: r3689
1993-03-09 23:57:34 +00:00
Richard Stallman
07150665c9
(convert_to_complex): Avoid using comptypes.
...
From-SVN: r3688
1993-03-09 23:55:57 +00:00
Michael Meissner
c3c03e50c0
Close #ifdef NEXT_OBJC_RUNTIME properly.
...
From-SVN: r3687
1993-03-09 16:32:42 +00:00