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