Commit Graph

899 Commits

Author SHA1 Message Date
Jim Wilson
79c0672ee6 (instantiate_decls): Use temporary allocation if
DECL_DEFER_OUTPUT is set.

From-SVN: r9394
1995-04-17 12:23:52 -07:00
Richard Kenner
6dfc5c6de5 (preserve_temp_slots): Clear ADDR_TAKEN on item that we are
preserving.

From-SVN: r9236
1995-03-27 20:45:05 -05:00
Richard Kenner
49468af2d9 (pop_function_context): Fix error in last change; reference old value
of current_function_decl before we modify it.

From-SVN: r9202
1995-03-18 16:37:13 -05:00
Jason Merrill
a0dabda52b Handle compilation of nested functions from another scope.
From-SVN: r9185
1995-03-15 21:48:01 +00:00
Per Bothner
b001a02f29 Remove Feb 28's FUNCTION_NEEDS_STATIC_CHAIN changes.
From-SVN: r9106
1995-03-01 19:33:25 -08:00
Per Bothner
7ad8c4bf11 function.c (lookup_static_chain): Check for a static chain using FUNCTION_NEEDS_STATIC_CHAIN.
* function.c (lookup_static_chain):  Check for a static chain
using FUNCTION_NEEDS_STATIC_CHAIN.
(init_function_start):  Set current_function_needs_context depending
on FUNCTION_NEEDS_STATIC_CHAIN rather than decl_function_context.

From-SVN: r9096
1995-02-28 15:06:03 -08:00
Richard Kenner
64e6d9cc49 (assign_parms): Added arg to RETURN_POPS_ARGS.
From-SVN: r9011
1995-02-21 18:48:03 -05:00
Jim Wilson
71cd4a8d33 (delete_handlers): When clear LABEL_PRESERVE_P,
also remove label from nonlocal_label list.

From-SVN: r8782
1995-01-20 17:58:34 -08:00
Richard Kenner
4013a70901 (optimize_bit_field): Don't remove a SUBREG that changes mode class.
From-SVN: r8744
1995-01-13 18:43:36 -05:00
Jeff Law
3668e76e90 calls.c (expand_call): Set MEM_IN_STRUCT_P as needed on return value from assign_stack_temp.
* calls.c (expand_call): Set MEM_IN_STRUCT_P as needed on return
	value from assign_stack_temp.
	(store_one_arg): Likewise.
	* expr.c (save_noncopied_parts): Likewise.
	(expand_expr): Likewise.
	* function.c (assign_parms): Likewise.
	* integrate.c (expand_inline_function): Likewise.
	* stmt.c (expand_decl): Likewise.

From-SVN: r8708
1994-12-29 19:50:28 -07:00
Doug Evans
b1f82ccff1 (instantiate_virtual_regs_1, case PLUS): If offset is
zero, make sure register replacement is still validated.

From-SVN: r8649
1994-12-13 15:04:05 +00:00
Doug Evans
ea5917da8d (locate_and_pad_parm): Don't call pad_below for BLKmode parms in regs.
From-SVN: r8645
1994-12-12 18:14:40 +00:00
Doug Evans
d4b0a7a049 (locate_and_pad_parm): Do padding before rounding
so pad_below knows how much is needed.

From-SVN: r8622
1994-12-07 20:58:08 +00:00
Ian Lance Taylor
f76b9db287 Check target endianness at run time, not compile time
From-SVN: r8470
1994-11-16 21:10:09 +00:00
Jason Merrill
8eda074c87 (init_function_start): Use
POINTER_TYPE_P rather than checking the type against POINTER_TYPE
        (to include references).

From-SVN: r8458
1994-11-16 00:45:41 +00:00
Doug Evans
b2a80c0d2b (assign_stack_temp): Compute size of slot after
assign_stack_local has accounted for alignment.

From-SVN: r8438
1994-11-15 14:55:15 +00:00
Richard Kenner
84e24c036d (assign_stack_temp): Always initialize p->rtl_expr.
From-SVN: r8429
1994-11-11 18:55:49 -05:00
Richard Kenner
199b61d8f8 (preserve_rtl_expr_result): find_temp_slot_from_address now used.
Don't bring the temp slot to an inner level than it was.

From-SVN: r8427
1994-11-11 17:37:45 -05:00
Richard Kenner
73620b82c8 (preserve_temp_slots): Preserve anything whose address was taken when
X is zero.

From-SVN: r8363
1994-10-31 07:24:20 -05:00
Per Bothner
f733963397 * function.c (current_function_outgoing_args_size): Update comment.
From-SVN: r8291
1994-10-17 16:09:35 -07:00
Richard Kenner
e19571dbde (preserve_temp_slots): If X cannot be a temp slot, preserve all things
whose address was taken at the present level.

From-SVN: r8238
1994-10-07 16:13:58 -04:00
Richard Kenner
303ec2aa60 (assign_stack_temp): Abort if SIZE == -1.
From-SVN: r8235
1994-10-07 08:28:44 -04:00
Richard Kenner
a25d4ba2f6 (struct temp_slot): New field addr_taken.
(assign_stack_temp): Initialize it.
(mark_temp_addr_taken): New function.
(preserve_temp_slots): Decrement level of things at same level but whose
address has been taken.

From-SVN: r8224
1994-10-06 06:52:10 -04:00
Jason Merrill
e4a4639ef0 ontext, adds argument to indicate that the new function is not a nested function.
ontext, adds argument to indicate that the new
        function is not a nested function.
        (push_function_context): Call it.
        (pop_function_context{,_from}): Similarly.

From-SVN: r8205
1994-10-02 23:16:51 +00:00
Richard Kenner
e87ee2a99d (trampoline_address): Add missing call to round_trampoline.
From-SVN: r8157
1994-09-28 19:18:05 -04:00
Richard Kenner
b88a314292 (optimize_bit_field): Put any insns made by change_address in front of INSN.
(expand_function_end): Don't pass DECL_INITIAL to setjmp_protect if it is
error_mark_node.

From-SVN: r8146
1994-09-27 18:29:21 -04:00
Richard Kenner
7cbc7b0cac (pop_function_context): Clear reg_renumber.
From-SVN: r8103
1994-09-20 17:51:32 -04:00
Jim Wilson
7a30f0c44e (assign_parms): Set RTX_UNCHANGING_P on stack_parm
for const parameter before calling move_block_from_reg.

From-SVN: r8075
1994-09-12 11:51:39 -07:00
Jason Merrill
e2fd1d94b8 (expand_main_function): Don't call __main if
HAS_INIT_SECTION is defined.

From-SVN: r8067
1994-09-10 00:34:51 +00:00
Richard Kenner
3f46679a3c (assign_parms): If parm is transparent union, use type of first field.
From-SVN: r7948
1994-08-19 17:33:13 -04:00
Richard Kenner
426749e8af (expand_function_start): Add redundant copy to static_chain_incoming_rtx if...
(expand_function_start): Add redundant copy to
static_chain_incoming_rtx if SMALL_REGISTER_CLASS so inlining works
properly.

From-SVN: r7909
1994-08-12 18:59:14 -04:00
Richard Kenner
ac9e20f0fb (expand_function_start): Only use static_chain_incoming_rtx once if it
is a REG and we have SMALL_REGISTER_CLASSES.

From-SVN: r7873
1994-08-08 17:08:00 -04:00
Richard Kenner
4acc00bf75 (expand_function_start): Initialize VALUE_ADDRESS.
From-SVN: r7823
1994-07-29 18:50:41 -04:00
Jason Merrill
4ac3d99407 tree.h (TYPE_NEEDS_CONSTRUCTING): New macro.
Wed Jul 13 03:30:36 1994  Jason Merrill  (jason@deneb.cygnus.com)

        * tree.h (TYPE_NEEDS_CONSTRUCTING): New macro.
        (tree_type): Add needs_constructing_flag.
        * function.c (assign_parms): If TYPE_NEEDS_CONSTRUCTING, pass by
        invisible reference.
        * calls.c (expand_call): Ditto.

From-SVN: r7758
1994-07-13 11:06:24 +00:00
Richard Kenner
dfd3dae6c2 (instantiate_virtual_regs_1): Remove last change.
From-SVN: r7697
1994-07-10 08:18:01 -04:00
Richard Kenner
a890174971 (instantiate_virtual_regs_1, case SET): If DEST is
virtual_stack_vars_rtx, replace with hardware frame pointer.

From-SVN: r7687
1994-07-08 18:26:41 -04:00
Mike Stump
d93d4205f1 fix temp lifetime (FOR TARGET_EXPRs only)
From-SVN: r7681
1994-07-08 20:45:14 +00: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
ba6da62704 (assign_parms): Set REG_USERVAR_P when parm is passed by invisible
reference but can live in register.

From-SVN: r7366
1994-05-27 16:13:41 -04:00
Richard Kenner
6673dddf4b (assign_parms): Fix typo in previous change.
From-SVN: r7283
1994-05-12 18:11:20 -04:00
Richard Kenner
5fa7422be7 (fixup_var_refs_insns): Change from USE and CLOBBER insns to using
CALL_INSN_FUNCTION_USAGE.

From-SVN: r7244
1994-05-06 17:50:04 -04:00
Richard Kenner
a03caf76d7 (assign_parms): Spread out the REG_EQUIV notes on
CONCATs.

From-SVN: r7232
1994-05-06 14:04:37 -04:00
Richard Kenner
1fd3ef7f65 (assign_parms): Use expr_size when appropriate.
From-SVN: r7228
1994-05-06 13:32:34 -04:00
Per Bothner
05e3bdb9cb Use new macro AGGREGATE_TYPE_P.
From-SVN: r7160
1994-04-26 16:56:21 -07:00
Richard Kenner
e15679f8d6 Add prototypes for static functions.
(bc_expand_function_end, expand_function_end): Call new expand_fixups
instead of old fixup_gotos.

From-SVN: r7116
1994-04-21 15:30:29 -04:00
Richard Kenner
a5a52dbc09 (assign_parms, promoted_input_arg, expand_function_start): Use promote_mode.
From-SVN: r7068
1994-04-18 14:51:48 -04:00
Jeff Law
0b21dcf57a function.c (locate_and_pad_parm): For ARGS_GROW_DOWNWARD...
* function.c (locate_and_pad_parm): For ARGS_GROW_DOWNWARD,
        Round sizetree for both upward and downward padding, nuke
        the (now unnecessary) call to pad_below for arg_size_ptr.

From-SVN: r7056
1994-04-16 23:14:50 -06:00
Richard Kenner
45620ed410 No longer handle LSHIFT.
From-SVN: r7020
1994-04-10 08:03:37 -04:00
Richard Kenner
3c8cd8bd6e (unitialized_vars_warning, setjmp_args_warning): Reword warning to be
less ambiguous.

From-SVN: r7005
1994-04-09 09:47:29 -04:00
Richard Kenner
3b69d50e4d (push_function_context): Use current_function_varargs.
(pop_function_context): Likewise.
(assign_parms): Respect current_function_varargs.
Save args_so_far in any case.

From-SVN: r6983
1994-04-06 07:47:24 -04:00
Richard Kenner
f0c51a1e34 (expand_function_start): Delay copying static chain.
From-SVN: r6979
1994-04-06 07:21:12 -04:00
Richard Kenner
e3a771613f (preserve_temp_slots): If argument is REG, see if it is address of a
temp slot we know about.

From-SVN: r6843
1994-03-21 17:15:32 -05:00
Richard Kenner
ccdecf58a9 (assign_parms, expand_function_start): Properly set MEM_IN_STRUCT_P
for DECL_RTL of function result.

From-SVN: r6791
1994-03-14 17:31:43 -05:00
Richard Kenner
63770d6ae3 (fixup_var_refs_insn): Delete CLOBBER of VAR.
(fixup_var_refs_insn): Delete CLOBBER of VAR.  If VAR is being
assigned into by a libcall sequence, remove the libcall notes.

From-SVN: r6632
1994-02-26 16:12:46 -05:00
Richard Kenner
e5e761396e (struct temp_slot): Add new field, ADDRESS.
(assign_stack_temp): Initialize it to zero.
(find_temp_slot_from_address, update_temp_slot_address): New functions.
(preserve_temp_slots): Use find_temp_slot_from_address.

From-SVN: r6496
1994-02-06 19:59:58 -05:00
Richard Kenner
3d329b07b7 (assign_parms): Call gen_realpart and gen_imagpart instead of
gen_lowpart and gen_highpart.

From-SVN: r6379
1994-01-10 19:36:36 -05:00
Richard Kenner
422c8f6335 (preserve_rtl_expr_result): New function.
From-SVN: r6367
1994-01-10 19:05:31 -05:00
Richard Kenner
83eb3b0ddb (thread_prologue_and_epilogue_insns): When constructing USE chain, set both NEXT_INSN and PREV_INSN links.
(thread_prologue_and_epilogue_insns): When constructing USE chain, set
both NEXT_INSN and PREV_INSN links.  Also, preserve order of USE insns
in chain.

From-SVN: r6215
1993-12-12 06:18:21 -05:00
Richard Kenner
e7a84011d2 Declare sequence_rtl_expr.
(struct temp_slot): New field rtl_expr.
(assign_stack_temp): Set it from sequence_rtl_expr.
({free,pop}_temp_slots): Don't free any slot with nonzero rtl_expr.
(free_temps_for_rtl_expr): New function.

From-SVN: r6161
1993-11-25 18:10:57 -05:00
Richard Kenner
980697fdbe Clean up comment formatting.
From-SVN: r6158
1993-11-25 10:53:19 -05:00
Richard Stallman
1be0704635 (expand_function_end): New arg END_BINDINGS.
From-SVN: r6141
1993-11-23 06:19:36 +00:00
Richard Stallman
c110c53d6e (assign_parms): Clear STACK_PARM when we have a
pass-by-pointer parm that we load into a pseudo.

From-SVN: r6098
1993-11-15 05:40:19 +00:00
Richard Kenner
e5884dacd5 (expand_function_start): If not optimizing, ensure we mark context
display regs as live for the entire function.

From-SVN: r5995
1993-11-04 13:29:59 -05:00
Richard Stallman
7b1a0c14e9 (assign_parms): If parmreg is a CONCAT, handle the
case where stack_parm is 0.

From-SVN: r5940
1993-10-30 06:04:50 +00:00
Richard Stallman
14aceb299b (assign_parms): Properly set parm_reg_stack_loc for args that are a CONCAT.
From-SVN: r5819
1993-10-20 03:43:31 +00:00
Richard Kenner
2849864429 (trampoline_address): Don't allocate anything from parent function's
current obstack.

From-SVN: r5734
1993-10-11 13:56:01 -04:00
Richard Stallman
467664666a (save_machine_status, restore_machine_status): New vars.
(push_function_context, pop_function_context): Use them.

From-SVN: r5721
1993-10-11 03:02:46 +00:00
Richard Kenner
4da73fa0ba (put_reg_into_stack): Allocate fixup structure in saveable obstack.
From-SVN: r5714
1993-10-10 17:10:48 -04:00
Richard Kenner
a14ae50814 (assign_parms): Pass objects who size depends on the contents of the
object by invisible reference.

From-SVN: r5585
1993-10-03 21:48:54 -04:00
Richard Kenner
0eb202977b (push_temp_slots, pop_temp_slots): Always change level.
From-SVN: r5523
1993-09-28 21:24:47 -04:00
Richard Stallman
ae0d828893 (expand_main_function): Put back accidentally
deleted previous change to use NAME__MAIN.

From-SVN: r5519
1993-09-28 23:16:09 +00:00
Doug Evans
b37f453b2a function.c: (instantiate_virtual_regs_1...
* function.c: (instantiate_virtual_regs_1, case MEM): references to
MEM via the hard frame pointer shouldn't be copied.

From-SVN: r5456
1993-09-24 19:42:16 +00:00
Jan Brittenson
e7a4277263 changed bytecode rtx structure references into macros
From-SVN: r5435
1993-09-23 10:08:13 -07:00
Jan Brittenson
c20bf1f3b3 bytecode modifications
From-SVN: r5405
1993-09-22 11:45:56 -07:00
Richard Stallman
e9b7093a9f (combine_temp_slots): Handle deletion properly.
Free the RTL that is allocated.

From-SVN: r5401
1993-09-22 18:29:43 +00:00
Jim Wilson
8634413a53 (current_function_has_nonlocal_goto): New var.
(push_function_context): Save it.
(pop_function_context): Restore it.
(init_function_start): Init it.

From-SVN: r5336
1993-09-15 23:12:57 -07:00
Richard Stallman
d181c15421 (aggregate_value_p): Allow type node as argument.
From-SVN: r5328
1993-09-15 13:39:18 +00:00
Richard Stallman
cb61f66f5b (assign_parms): When parm needs conversion on entry,
don't store it back in the slot where it was passed.

From-SVN: r5261
1993-09-05 20:01:32 +00:00
Jim Wilson
a45035b6ed (assign_stack_temp): When allocate a slot too large,
split extra off into a slot of its own.
(combine_temp_slots): New function.
(free_temp_slots, pop_temp_slots): Call combine_temp_slots.

From-SVN: r5232
1993-08-31 13:30:12 -07:00
Jim Wilson
a78bdb3850 (thread_prologue_and_epilogue_insns): For the
epilogue, put USE insns immediately before the return insn.

From-SVN: r5142
1993-08-12 10:45:57 -07:00
Jim Wilson
f31870c1b0 (assign_parms): Pass extra argument SIZE to move_block_from_reg calls.
(assign_parms): Pass extra argument SIZE to
move_block_from_reg calls.
(locate_and_pad_parm): For !ARGS_GROW_DOWNWARD case, move downward
padding pad_below call after round_up call.

From-SVN: r5016
1993-07-28 10:15:25 -07:00
Richard Stallman
19fdd3eecb (assign_parms): Don't copy too much when extending parm_reg_stack_loc.
From-SVN: r5004
1993-07-27 18:52:32 +00:00
Richard Stallman
293e3de41c (expand_main_function): Likewise.
(put_reg_into_stack): New subroutine.
(put_var_into_stack): Use that; handle CONCAT.

From-SVN: r4991
1993-07-26 20:59:21 +00:00
Richard Kenner
2a64e92d30 (aggregate_value_p): An ARRAY_TYPE is also an aggregate.
From-SVN: r4970
1993-07-23 07:17:40 -04:00
Richard Kenner
d9a98e1a53 (init_function_start): Initialize trampoline_list here.
(expand_function_end): Not here.

From-SVN: r4936
1993-07-18 14:21:41 -04:00
Richard Kenner
40d055518b (fixup_stack_1): Handle current_function_internal_arg_pointer.
From-SVN: r4777
1993-06-27 21:15:50 -04:00
Richard Stallman
f1b985b7e2 (uninitialized_vars_warning): Change warning text.
(setjmp_args_warning): Likewise.

From-SVN: r4635
1993-06-05 09:10:02 +00:00
Richard Stallman
de3ab9df04 (assign_parms): Declare and set current_call_is_indirect.
From-SVN: r4516
1993-05-20 05:10:30 +00:00
Richard Kenner
c51d911af1 Update copyright notice.
From-SVN: r4362
1993-05-06 13:10:04 -04:00
Richard Kenner
ab6155b74f (walk_fixup_memory_subreg): Add new arg UNCRITICAL.
(fixup_var_refs_insn): Call with UNCRITICAL of 1 when processing
REG_NOTES.

From-SVN: r4360
1993-05-06 12:58:33 -04:00
Doug Evans
0b2187a9ba (assign_parms): Use mode of type, not BLKmode.
From-SVN: r4186
1993-04-21 00:31:18 +00:00
Doug Evans
49640f91c6 Fix style typo.
From-SVN: r4185
1993-04-19 19:44:49 +00:00
Doug Evans
137a2a7b83 (assign_parms): Use new FUNCTION_ARG_CALLEE_COPIES macro.
From-SVN: r4184
1993-04-19 19:25:29 +00:00
Richard Kenner
c1b98a9573 Treat QUAL_UNION_TYPE like UNION_TYPE when seeing if aggregate.
From-SVN: r4118
1993-04-13 06:47:33 -04:00
Jim Wilson
1b8297c13f (init_function_start): Always set
current_funtion_returns_pcc_struct if PCC_STATIC_STRUCT_RETURN defined.

From-SVN: r4031
1993-04-06 12:28:47 -07:00
Richard Kenner
4752d3bc31 (expand_function_start): When evaluating sizes of variable types, do
so just for side-effects (the SAVE_EXPRs).

From-SVN: r3896
1993-03-27 13:41:59 -05:00
Richard Stallman
d1e37dc7e8 (fixup_var_refs_insns): Don't delete an insn copying
var to itself, if it's the end of a libcall group.

From-SVN: r3873
1993-03-25 05:43:12 +00:00
Doug Evans
461beb1055 * (assign_parms): Minor cleanup.
From-SVN: r3776
1993-03-18 20:27:21 +00:00
Doug Evans
682a59faae * (assign_parms): Remove unnecessary #ifdef.
From-SVN: r3747
1993-03-15 21:43:27 +00:00
Doug Evans
9f67be1318 * (aggregate_value_p): RETURN_IN_MEMORY handles BLKmode values.
From-SVN: r3707
1993-03-11 23:55:44 +00:00
Richard Kenner
02a10449e3 (fixup_var_refs_insns): If SMALL_REGISTER_CLASSES...
(fixup_var_refs_insns): If SMALL_REGISTER_CLASSES, ensure we don't put
any insns between the setting of the function return register and it's use.

From-SVN: r3660
1993-03-05 17:37:11 -05:00
John Hassey
9392c110eb (reposition_prologue_and_epilogue_notes): Allow
for zero length prologue and epilogue list.

From-SVN: r3465
1993-02-12 15:52:54 +00:00
Richard Kenner
75dc33195a (promoted_input_arg): New function.
From-SVN: r3449
1993-02-09 18:44:25 -05:00
Richard Kenner
e15762df9d (put_var_into_stack, fixup_var_refs_insns): Minor cleanups.
(fixup_var_refs_1, case SET): Correctly check for simple insns that don't
need fixups.

From-SVN: r3367
1993-01-27 13:27:18 -05:00
James Van Artsdalen
f898f03121 (fixup_var_refs_1): Set INSN_CODE to -1 before seeing if new insn form
is recognized.

From-SVN: r3281
1993-01-19 21:27:54 +00:00
Paul Eggert
8008b22801 # Fix misspellings in comments.
From-SVN: r3181
1993-01-10 20:12:31 +00:00
Richard Kenner
8c3948785b (assign_parm): Fix typo introduced by previous change.
From-SVN: r3158
1993-01-08 16:12:18 -05:00
Jim Wilson
ea0d4c4b6d (assign_parms): Pass NULL_RTX to INIT_CUMULATIVE_*.
From-SVN: r3107
1993-01-05 18:59:28 -08:00
Jim Wilson
77121feee4 (fixup_var_regs_insn): Update last_parm_insn when
insns are output after it to fix it up.

From-SVN: r3047
1993-01-01 16:41:53 -08:00
Jim Wilson
3412b298a2 (assign_parms): Emit conversions into a sequence, and
then output the sequence after all parameters have been moved.

From-SVN: r3025
1992-12-31 14:21:06 -08:00
Richard Kenner
2af69b62de (assign_outer_stack_local): Align proper frame offset.
From-SVN: r2862
1992-12-11 07:18:03 -05:00
Torbjorn Granlund
66bcbe1954 (locate_and_pad_parm): In ARGS_GROW_DOWNWARD case,
don't pad to argument alignment if where_pad is downward.

From-SVN: r2614
1992-10-26 19:38:54 +00:00
Richard Stallman
b4ff474ce0 (fixup_var_refs_insns): Don't call delete_insn if not -O.
Make a NOTE_INSN_DELETED instead.

From-SVN: r2609
1992-10-26 05:53:07 +00:00
Richard Stallman
4cdb3e7843 (put_var_into_stack): When we operate on a pseudo
that holds the address, use proper modes.

From-SVN: r2552
1992-10-22 12:04:56 +00:00
Richard Stallman
2740a6786b (find_fixup_replacement): Renamed from find_replacement.
From-SVN: r2490
1992-10-16 14:38:26 +00:00
Richard Stallman
a506307a2f (pop_function_context, push_function_context):
Call {save,restore}_varasm_status.

From-SVN: r2423
1992-10-13 05:13:01 +00:00
Richard Stallman
9d790a4f73 (aggregate_value_p): Return 1 if regs we would use are not all call-clobbered.
From-SVN: r2384
1992-10-09 16:59:56 +00:00
Tom Wood
587cb682de (assign_parms): Provide a safe value for
DECL_INCOMING_RTL in case of syntax errors.

From-SVN: r2375
1992-10-08 22:08:29 +00:00
Richard Stallman
5378192b09 (get_first_block_beg): New function.
From-SVN: r2345
1992-10-06 21:30:51 +00:00
Richard Kenner
a53e14c093 (assign_parms): If PROMOTE_FUNCTION_ARGS is defined, see if the incoming register should be used in a wider mode.
(assign_parms): If PROMOTE_FUNCTION_ARGS is defined, see if the incoming
register should be used in a wider mode.
(expand_function_start): Likewise for return value if PROMOTE_FUNCTION_RETURN
is defined.

From-SVN: r2263
1992-09-27 18:18:33 -04:00
Jim Wilson
f979c996cd (push_function_context): Save epilogue_delay_list.
(pop_function_context): Restore epilogue_delay_list.

From-SVN: r2245
1992-09-24 22:52:48 -07:00
Richard Stallman
2baccce2f7 (put_var_into_stack): Check REG != 0 before dereference.
From-SVN: r2198
1992-09-21 06:46:22 +00:00
Richard Kenner
00d8a4c187 (fixup_var_refs{,_insns}): Add new parms for promoted mode and signedness;
all callers changed.
Insert mode conversions when required.
(fixup_var_refs_1): Add new parms for mode and signedness; handle SUBREGs
for promoted values.
(assign_parms): Promote the mode of parameters when useful for the target
machine.

From-SVN: r2175
1992-09-19 15:47:00 -04:00
Richard Stallman
7e41ffa25c (assign_parms): Set MEM_IN_STRUCT_P right in stack slots.
From-SVN: r2157
1992-09-19 04:46:22 +00:00
Richard Kenner
5a73491b0f (instantiate_decl): New function.
(instantiate_decls{,_1}): Call it.

From-SVN: r1896
1992-08-19 08:48:39 -04:00
Jim Wilson
2654605aa7 (assign_parms): When copy arg passed by invisible
reference to pseudo reg, don't use nominal_mode.

From-SVN: r1876
1992-08-17 11:53:26 -07:00
Tom Wood
109140655e (contains): Return the number of insns.
(reposition_prologue_and_epilogue_notes): Count all the prologue and
        epilogue insns.

From-SVN: r1814
1992-08-13 20:49:10 +00:00
Jim Wilson
fc289cd166 (identify_blocks): Handle case where no block nodes exist.
(identify_blocks): Handle case where no block nodes
exist.  Use xmalloc not alloca for block_vector.
(reorder_blocks): New argument top_block.  Handle case where no
block nodes exist.  Always clear BLOCK_SUBBLOCKS (block) when
adding it to the block tree.
(all_blocks): Handle case where vector is zero. Store current
block at offset 0 in vector, not n_blocks.  Don't count current
block twice in n_blocks.

From-SVN: r1797
1992-08-11 12:49:26 -07:00
Richard Kenner
1b2ac43859 (identify_blocks, reorder_blocks): Don't use SET_NOTE_BLOCK_NUMBER.
From-SVN: r1756
1992-08-02 21:43:22 -04:00
Richard Kenner
bf52625270 (reposition_prologue_and_epilogue_notes): Search for the notes without using...
(reposition_prologue_and_epilogue_notes): Search for the notes without
using basic_block_end[0] or basic_block_head[N-1].

From-SVN: r1735
1992-07-31 08:18:06 -04:00
Richard Stallman
16bae307a6 (assign_parms): Use const0_rtx as DECL_RTL and as
DECL_INCOMING_RTL if tmode of parm is void.

From-SVN: r1635
1992-07-20 02:42:59 +00:00
Richard Kenner
0c2e838b25 (instantiate_decls{,_1}): Don't do instantiation here if the address
is mode-dependent.

From-SVN: r1615
1992-07-17 05:58:38 -04:00
Richard Stallman
74bd77a8c6 entered into RCS
From-SVN: r1594
1992-07-16 19:03:06 +00:00
Richard Stallman
467456d054 *** empty log message ***
From-SVN: r1572
1992-07-12 18:10:29 +00:00
Richard Stallman
a82ad57075 *** empty log message ***
From-SVN: r1568
1992-07-12 02:50:09 +00:00
Charles Hannum
5f4f0e2294 *** empty log message ***
From-SVN: r1471
1992-07-06 20:04:00 +00:00
Richard Stallman
fdbfad8438 *** empty log message ***
From-SVN: r1425
1992-07-04 16:59:59 +00:00
Tom Wood
bdac5f5848 *** empty log message ***
From-SVN: r1336
1992-06-29 16:04:35 +00:00
Jim Wilson
3e2481e914 *** empty log message ***
From-SVN: r1250
1992-06-23 16:45:23 -07:00
Jim Wilson
d9ca49d580 *** empty log message ***
From-SVN: r1103
1992-05-27 14:52:26 -07:00
Jim Wilson
29008b51e3 *** empty log message ***
From-SVN: r1025
1992-05-19 17:41:48 -07:00
Richard Stallman
e16c591a11 *** empty log message ***
From-SVN: r985
1992-05-15 05:23:58 +00:00
Richard Stallman
6dc42e49d3 *** empty log message ***
From-SVN: r930
1992-05-07 06:41:23 +00:00
Richard Kenner
59257ff7b8 *** empty log message ***
From-SVN: r915
1992-05-06 07:35:29 -04:00
Jim Wilson
6f90e075cd *** empty log message ***
From-SVN: r905
1992-05-05 10:27:49 -07:00
Richard Stallman
6461be142d *** empty log message ***
From-SVN: r582
1992-03-24 19:01:29 +00:00
Tom Wood
b335c2ccab *** empty log message ***
From-SVN: r526
1992-03-19 20:41:45 +00:00
Richard Kenner
86f8eff3d6 *** empty log message ***
From-SVN: r417
1992-03-07 18:15:24 -05:00
Richard Stallman
6f086dfc7c Initial revision
From-SVN: r339
1992-02-18 07:12:51 +00:00