Commit Graph

70 Commits

Author SHA1 Message Date
Richard Kenner
a8dd0e73ba (gen_lowpart_common): Do nothing if size is greater than twice host
wordsize, not just if equal.

From-SVN: r8552
1994-11-22 17:41:55 -05:00
Richard Kenner
15c9248c38 (init_emit): Set REGNO_POINTER_FLAG for HARD_FRAME_POINTER_REGNUM.
(ptr_mode): Add definition.
(init_emit_once): Initialize ptr_mode.

From-SVN: r8548
1994-11-22 06:28:38 -05:00
Jim Wilson
47b34d4024 (operand_subword): For CONST_DOUBLE, add case to
handle BITS_PER_WORD of 16.

From-SVN: r8541
1994-11-21 11:40:36 -08:00
Richard Kenner
0cf214a057 (operand_subword): Fix typo: HOST_BITS_PER_INT should be
HOST_BITS_PER_WIDE_INT.

From-SVN: r8360
1994-10-29 21:16:22 -04:00
Richard Earnshaw
6782074d40 (add_insn_{before,after}): Don't abort if AFTER was deleted, but not
optiimzing

From-SVN: r8281
1994-10-16 09:01:26 +00:00
Richard Kenner
fef0509b3d (add_insn_{after,before}): Fix error in last change.
From-SVN: r8233
1994-10-07 08:24:36 -04:00
Richard Kenner
ba21328576 (add_insn_{before,after}): Abort if insertion point is a deleted insn.
From-SVN: r8193
1994-10-01 20:34:45 -04:00
Richard Kenner
a0ae8e8de3 (add_insn_after): Abort if can't find AFTER and it has no NEXT_INSN.
(add_insn_before): New function.
(emit_{insn,insns,jump_insn,call_insn,barrier,note}_before): Call it.

From-SVN: r8188
1994-09-30 18:26:03 -04:00
Richard Kenner
4c9a05bc55 Cast pointer operands to bzero, bcopy, and bcmp to (char *).
From-SVN: r7472
1994-06-14 18:19:28 -04:00
Richard Kenner
9847c2f677 (operand_subword): Fix arg of REAL_VALUE_TO_TARGET_SINGLE and ..._DOUBLE.
(operand_subword): Fix arg of REAL_VALUE_TO_TARGET_SINGLE and
.._DOUBLE.  Permit float subword extraction when host's word width iswider than target's.

From-SVN: r7338
1994-05-19 16:38:15 -04:00
Mike Stump
5dab5552a1 calls.c (expand_call): Only destroy temporaries at the end of function calls, if flag_short_temps is set.
* calls.c (expand_call): Only destroy temporaries at the end
        of function calls, if flag_short_temps is set.
        * expr.c (safe_from_p, expand_expr): Handle CLEANUP_POINT_EXPRs.
        * expr.c (expand_expr): Improve handling of temporaries inside
        COND_EXPRs, cures call to sorry.
        * expr.c (defer_cleanups_to): New routine to handle the deferral
        of cleanups.
        * flags.h (flag_short_temps): New flag, to allow better control
        over the lifetime of temporaries.
        * toplev.c (flag_short_temps, lang_options): Ditto.
        * tree.def (CLEANUP_POINT_EXPR): Add, to allow better control over
        the lifetime of temporaries.

From-SVN: r7289
1994-05-13 00:19:57 +00:00
Richard Kenner
aff507f439 (make_call_insn_raw): New function.
(emit_call_insn{,_before}): Use make_call_insn_raw.

From-SVN: r7238
1994-05-06 17:45:57 -04:00
Richard Kenner
f4a3cd05d0 (try_split): Don't try to recursively split deleted insn.
From-SVN: r7143
1994-04-24 11:24:57 -04:00
Richard Kenner
53596fba5b Use CONST_DOUBLE_FROM_REAL_VALUE macro for immed_real_const_1.
From-SVN: r7126
1994-04-21 15:54:06 -04:00
Richard Kenner
04fe43855a Include <stdarg.h> instead of "gstdarg.h"; similarly for varargs.
From-SVN: r6922
1994-03-30 17:15:20 -05:00
Richard Kenner
e58d0b9b68 (reset_used_flags): Remove decl of unused variable.
(gen_sequence): Remove decl of unused variable NEWVEC.

From-SVN: r6879
1994-03-25 14:01:23 -05:00
Richard Kenner
11147ebea5 (try_split): Rename third parameter as LAST.
(try_split): Rename third parameter as LAST.  Recursively call
try_split for each new insn created.

From-SVN: r6832
1994-03-20 06:50:18 -05:00
Richard Kenner
65e8fe02bb (gen_lowpart_common...
(gen_lowpart_common, gen_highpart, operand_subword): Test input
against RTX for FP, AP, and SP, not same register number.

From-SVN: r6795
1994-03-16 09:01:34 -05:00
Richard Kenner
86be1e79df (copy_rtx_if_shared, case LABEL_REF): Can't share.
From-SVN: r6746
1994-03-11 08:29:57 -05:00
Jim Wilson
81284a6ad2 (subreg_realpart_p): New function.
From-SVN: r6667
1994-02-27 16:52:03 -08:00
Richard Kenner
4f90e4a0f7 If __STDC__, include gstdarg and use ANSI form of varargs.
From-SVN: r6514
1994-02-10 08:07:10 -05:00
Richard Kenner
8698cce380 (gen_lowpart_common, gen_highpart): Test *_BIG_ENDIAN with "if", not
#if and fix one erroneous test.

From-SVN: r6479
1994-02-04 08:14:23 -05:00
Richard Kenner
dc139c902a (gen_{real,imag}part): Extract value from CONCAT directly.
(gen_lowpart_common, gen_highpart): Don't do it here.

From-SVN: r6377
1994-01-10 19:32:57 -05:00
Richard Kenner
c0b178d09b (gen_reg_rtx): Only clear part of arrays we aren't going to copy into.
From-SVN: r6324
1993-12-25 18:00:14 -05:00
Richard Kenner
674d5d8bef (gen_lowpart_common): Return a new hard reg even if not valid in MODE
if the input REG is not valid in its mode.

From-SVN: r6249
1993-12-20 19:16:01 -05:00
Doug Evans
3ae243680a (start_sequence): Save current sequence_rtl_expr.
From-SVN: r6186
1993-12-06 10:39:58 +00:00
Richard Kenner
629a423896 (push_topmost_sequence, end_sequence): Update sequence_rtl_expr from
sequence_stack entry.

From-SVN: r6179
1993-12-02 07:57:13 -05:00
Richard Kenner
a25c797134 Include tree.h.
(sequence_rtl_expr): New variable.
(save_emit_status, restore_emit_status): Save and restore it.
(init_emit): Initialize it.
(start_sequence_for_rtl_expr): New function.

From-SVN: r6162
1993-11-25 18:11:29 -05:00
Richard Stallman
4badc528d3 (gen_highpart): If arg is function value hard reg,
return a subreg of it (as in gen_lowpart_common).

From-SVN: r6005
1993-11-05 06:56:12 +00:00
Ian Lance Taylor
1d445e9e5e Move in initialization of byte_mode and word_mode from rtl.c
From-SVN: r5662
1993-10-07 21:05:34 +00:00
Doug Evans
ac6f08b075 emit-rtl.c: (hard_frame_pointer_rtx): New variable.
* emit-rtl.c: (hard_frame_pointer_rtx): New variable.
(gen_rtx): return hard_frame_pointer_rtx if generating rtl
for HARD_FRAME_POINTER_REGNUM.
(enit_emit_once): Generate initial rtl for hard_frame_pointer_rtx.

From-SVN: r5453
1993-09-24 19:39:25 +00:00
Richard Stallman
8b6813aad1 (gen_label_rtx): If output_bytecode, make a CODE_LABEL
but with different contents.

From-SVN: r5447
1993-09-24 19:22:53 +00:00
Jan Brittenson
ca695ac93d bytecode
From-SVN: r5379
1993-09-21 14:25:24 -07:00
Richard Stallman
fc84e8a81c (gen_lowpart_common, gen_highpart): Handle CONCAT.
(operand_subword): Likewise.
(gen_reg_rtx): For complex mode, return a CONCAT of two pseudos.

From-SVN: r4923
1993-07-15 02:20:05 +00:00
Richard Kenner
457a2d9ce6 (restore_emit_status): Clear LAST_LABEL_NUM.
From-SVN: r4775
1993-06-27 21:10:23 -04:00
Richard Stallman
f072210714 (copy_rtx_if_shared): Don't try to copy a 0-length vector.
From-SVN: r4774
1993-06-28 00:41:41 +00:00
Richard Stallman
b6a524cb2a (gen_lowpart_common): Use those macros if REAL_ARITHMETIC.
From-SVN: r4672
1993-06-13 00:25:33 +00:00
Richard Stallman
51591ce9cc (operand_subword): Shift by (HOST_BITS_PER_WIDE_INT / 2), not by 32.
From-SVN: r4598
1993-05-31 00:17:54 +00:00
Richard Kenner
7677ffa441 (operand_subword): Correctly handle case when
REAL_VALUE_TO_TARGET_DOUBLE is used on a 64-bit machine.

From-SVN: r4593
1993-05-29 14:13:55 -04:00
Richard Kenner
2d4f57f838 (operand_subword): Reject cases when BITS_PER_WORD is greater than
HOST_BITS_PER_INT unless OP is const0_rtx.

From-SVN: r4502
1993-05-19 13:13:32 -04:00
Per Bothner
24d11a9af1 emit-rtl.c (init_emit): Clear sequence_stack.
From-SVN: r3984
1993-03-31 23:32:39 -08:00
Richard Stallman
1632afcaa7 (operand_subword): Use REAL_VALUE_TO_TARGET_SINGLE to convert to target float.
If REAL_ARITHMETIC is defined, let real.c handle incompatible host
and target floating point bit patterns.
(init_emit_once): Add machine_mode argument to REAL_VALUE_ATOF.

From-SVN: r3938
1993-03-31 05:48:38 +00:00
Tom Wood
f15ae3a138 (push_topmost_sequence, pop_topmost_sequence): New
functions.

From-SVN: r3841
1993-03-23 12:52:39 +00:00
James Van Artsdalen
5e82e7bddb (init_emit): Use INIT_EXPANDERS.
From-SVN: r3827
1993-03-22 07:41:33 +00:00
Richard Stallman
33d3e559c5 (init_emit_once): Initialize const_tiny_rtx for partial ints too.
From-SVN: r3653
1993-03-05 06:27:22 +00:00
Jim Wilson
d508ebba63 (gen_sequence): Add push_obstacks_nochange and
pop_obstacks calls around rtl_in_saveable_obstack call.

From-SVN: r3601
1993-03-02 12:55:53 -08:00
Brendan Kehoe
85cf32bc87 emit-rtl.c (emit_jump_insn_before): Call make_jump_insn_raw with only one argument.
* emit-rtl.c (emit_jump_insn_before): Call make_jump_insn_raw with
	only one argument.
	(emit_jump_insn_after): Likewise.
	(emit_jump_insn): Likewise.

From-SVN: r3212
1993-01-12 18:30:47 -05:00
Richard Kenner
b851ea098e (copy_rtx_if_shared): A CONST can be shared if it contains a
SYBOL_REF.

From-SVN: r2923
1992-12-27 06:52:59 -05:00
Richard Stallman
f5a2fb25ba (gen_lowpart_common): Fix typo in last change.
From-SVN: r2496
1992-10-17 04:33:09 +00:00
Richard Kenner
83e9c679c0 (gen_lowpart_common): Allow MODE_PARTIAL_INT where MODE_INT is
allowed.

From-SVN: r2407
1992-10-12 06:31:07 -04:00