Commit Graph

561 Commits

Author SHA1 Message Date
Richard Stallman
fac0ad800a (emit_library_call_value): Finish making it work.
From-SVN: r5326
1993-09-15 13:31:09 +00:00
Richard Kenner
3a08477ac5 (store_one_arg): Don't pass ARG->STACK as TARGET if it is a different
mode than the expression (i.e., a promoted mode).

From-SVN: r5063
1993-08-03 17:34:43 -04:00
Richard Stallman
5e24110e65 (expand_call): Check properly for volatile function.
From-SVN: r5053
1993-08-02 04:03:10 +00:00
Jim Wilson
8498efd082 (expand_call): For unaligned arguments on
BYTES_BIG_ENDIAN machines, correct bitfield offset calculations.

From-SVN: r5013
1993-07-28 10:12:33 -07:00
Richard Kenner
40083ddf51 Fix typo: had ARGS_GROW_DOWNARD.
From-SVN: r4851
1993-07-05 17:53:41 -04:00
Richard Kenner
ef5d30c934 (expand_call): If function hasn't been used before, call
assemble_external.

From-SVN: r4773
1993-06-27 18:57:34 -04:00
Richard Kenner
6e716e89dc (expand_calls): Fix typo: ALLOCATE_OUTGOING_ARGS
should be ACCUMULATE_OUTGOING_ARGS.

From-SVN: r4749
1993-06-26 11:09:26 -04:00
Richard Stallman
9f4d9f6cd7 (calls_function_1): Add declaration.
From-SVN: r4738
1993-06-26 06:31:09 +00:00
Richard Stallman
1c8d7aef51 (calls_function): Don't scan a single save_expr twice.
(calls_function_1): New subroutine for the actual recursion.

From-SVN: r4737
1993-06-26 02:37:19 +00:00
Richard Stallman
6d8b61b9e7 (expand_call): In last change, preserve the temp slot.
From-SVN: r4705
1993-06-20 22:21:49 +00:00
Richard Stallman
3008222343 (expand_call): If PCC_STATIC_STRUCT_RETURN and TARGET
is zero, copy result from static location.

From-SVN: r4677
1993-06-14 21:40:37 +00:00
Richard Stallman
efd65a8b46 (expand_call): Declare and set current_call_is_indirect.
(emit_library_call, emit_library_call_value): Likewise.

From-SVN: r4515
1993-05-20 05:06:12 +00:00
Doug Evans
5e0de25120 (expand_call): Use new FUNCTION_ARG_CALLEE_COPIES macro.
From-SVN: r4183
1993-04-19 19:24:23 +00:00
Brendan Kehoe
67729b992a calls.c (expand_call): Check warn_inline before complaining about not being able to inline a fn...
* calls.c (expand_call): Check warn_inline before complaining about
        not being able to inline a fn declared inline.
        * flags.h (warn_inline): Add extern decl.

From-SVN: r4171
1993-04-16 21:42:17 -04:00
Richard Kenner
ccf5d2447a (expand_call): Last arg of emit_stack_save is NULL_RTX.
(store_one_arg): Fourth arg to emit_push_insn is NULL_RTX.

From-SVN: r4134
1993-04-13 17:03:48 -04: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
Richard Stallman
9e7b1d0a36 (expand_call) [PCC_STATIC_STRUCT_RETURN]:
Always set pcc_struct_value if aggregate_value_p returns 1.

From-SVN: r4007
1993-04-04 21:28:09 +00:00
Richard Kenner
5d2ac65e2b (expand_call): Always allocate TARGET in mode of result expression;
VALREG might have been promoted.
Ensure TARGET is a REG when checking for promotion and verify that we
get back the mode we expect.

From-SVN: r3907
1993-03-28 20:26:03 -05:00
Richard Kenner
e4f9389897 (store_one_arg): Fix typo in previous change.
From-SVN: r3875
1993-03-25 07:01:09 -05:00
Richard Kenner
0cf91217da (store_one_arg): Use int_size_in_bytes and expr_size when appropriate
instead of size_in_bytes.

From-SVN: r3863
1993-03-23 20:20:32 -05:00
Richard Kenner
03dacb02c9 (prepare_call_address): Again not static.
From-SVN: r3850
1993-03-23 08:35:15 -05:00
Richard Kenner
322e3e3420 Include gvarargs.h.
Add prototypes to forward declarations and declare static functions.
(prepare_call_address, emit_call_1): Now static.
(emit_library_call, emit_library_call_value): Move to here.

From-SVN: r3848
1993-03-23 08:09:36 -05:00
Richard Kenner
1ef1ca81c3 (expand_call): Use expr_size instead of doing it ourself.
From-SVN: r3833
1993-03-23 06:38:15 -05:00
Richard Stallman
70a73141e0 (emit_call_1): Don't defer pops in const call.
From-SVN: r3783
1993-03-19 06:38:23 +00:00
Doug Evans
fd328506cc * (expand_call): Fix bug (don't clobber bitpos).
From-SVN: r3775
1993-03-18 17:38:41 +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
bbc8a07104 Correctly define PUSH_ARGS_REVERSED.
From-SVN: r3728
1993-03-13 18:13:22 -05:00
Richard Kenner
7a03f4b4f8 (expand_call): Fix typo in unaligned code.
From-SVN: r3668
1993-03-06 07:42:54 -05:00
Jim Wilson
e133665800 (expand_call): When MAYBE_REG_PARM_STACK_SPACE defined,
if reg_parm_stack_space is zero, set args_size.constant to zero.

From-SVN: r3488
1993-02-18 17:14:55 -08:00
Richard Kenner
4ab561180c Allow passing nonaligned BLKmode structs in regs.
(struct arg_data): New fields aligned_regs and n_aligned_regs.
(expand_call): Set and use these fields when required.
(store_one_arg): Don't pass reg to emit_push_insn if we have previously
formed aligned registers.

From-SVN: r3440
1993-02-08 05:51:58 -05:00
Richard Kenner
1efe644834 (struct arg_data): New field MODE.
(expand_call, store_one_arg): Use it to ensure that all args get
promoted if requested, not just those passed in registers.

From-SVN: r3436
1993-02-07 16:12:57 -05:00
Jim Wilson
1ce0cb5324 (calls_alloca): Change name to calls_function.
(calls_alloca): Change name to calls_function.  Add new
parameter WHICH to control old or new behaviour.
(expand_call): When stack space is preallocated and parameters
must be passed on the stack, precompute parameters that involve
function calls.

From-SVN: r3330
1993-01-25 11:52:15 -08:00
Brendan Kehoe
e992302c10 calls.c (emit_call_1): Pass a NULL_RTX into emit_call_insn for missing last arg.
* calls.c (emit_call_1): Pass a NULL_RTX into emit_call_insn for
	missing last arg.

From-SVN: r3207
1993-01-12 18:29:29 -05:00
Paul Eggert
13d39dbc99 # Fix misspellings in comments.
From-SVN: r3179
1993-01-10 19:16:01 +00:00
Jim Wilson
85ec8ec452 (expand_call): Pass NULL_RTX to INIT_CUMULATIVE_ARGS.
From-SVN: r3108
1993-01-05 18:59:56 -08:00
Richard Stallman
82c0ff026c (expand_call): Don't use int_size_in_bytes for a variable-size object.
From-SVN: r3060
1993-01-02 21:43:51 +00:00
Richard Stallman
b94301c2cb (expand_call)[ARGS_GROW_DOWNWARD] Fix fencepost error in calculating high_to_save and low_to_save.
(expand_call)[ARGS_GROW_DOWNWARD] Fix fencepost error in
calculating high_to_save and low_to_save.  Use - high_to_save to
address stack_area.

From-SVN: r2699
1992-11-06 08:22:24 +00:00
Richard Stallman
1709c75483 (expand_call): Don't call convert_to_mode if we obtained
VALUE in the proper mode; VALUE might be a CONST_INT.

From-SVN: r2604
1992-10-25 22:50:23 +00:00
Richard Stallman
8b487c1f9e (calls_alloca): Don't look within DECL_INITIAL if it's 0.
From-SVN: r2402
1992-10-12 04:35:54 +00:00
Richard Kenner
84b55618e8 (struct arg_data): New field unsignedp.
(expand_call): Handle PROMOTE_FUNCTION_ARGS and PROMOTE_FUNCTION_RETURN.

From-SVN: r2264
1992-09-27 18:19:16 -04:00
Richard Kenner
854e97f078 (expand_call): Use HOST_WIDE_INT instead of int when comparing a
pointer to an integer constant.

From-SVN: r1747
1992-08-02 21:36:27 -04:00
Richard Stallman
3b59a33129 entered into RCS
From-SVN: r1599
1992-07-17 03:25:33 +00:00
Richard Stallman
216d5cdd13 *** empty log message ***
From-SVN: r1566
1992-07-12 02:43:19 +00:00
Charles Hannum
ef03bc85d5 *** empty log message ***
From-SVN: r1530
1992-07-08 22:35:25 +00:00
Richard Kenner
e5d7056161 *** empty log message ***
From-SVN: r1467
1992-07-06 15:55:08 -04:00
Richard Stallman
f72aed244a *** empty log message ***
From-SVN: r1263
1992-06-24 03:59:40 +00:00
Richard Stallman
bfbf933af8 *** empty log message ***
From-SVN: r1135
1992-06-02 01:41:11 +00:00
Richard Stallman
d64f5a781f *** empty log message ***
From-SVN: r1133
1992-06-01 03:11:11 +00:00
Richard Stallman
2f4aa53429 *** empty log message ***
From-SVN: r1132
1992-05-31 20:34:00 +00:00
Richard Stallman
756e0e12ed *** empty log message ***
From-SVN: r1058
1992-05-22 21:40:29 +00:00
Jim Wilson
29008b51e3 *** empty log message ***
From-SVN: r1025
1992-05-19 17:41:48 -07:00
Richard Stallman
c62f36cfc6 *** empty log message ***
From-SVN: r937
1992-05-07 22:40:59 +00:00
Richard Stallman
95949d0ccc *** empty log message ***
From-SVN: r923
1992-05-06 22:04:35 +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
ff1e982113 *** empty log message ***
From-SVN: r876
1992-05-04 01:33:42 +00:00
Richard Stallman
8129842c7b *** empty log message ***
From-SVN: r772
1992-04-18 01:03:55 +00:00
Richard Stallman
5130a5cc8a *** empty log message ***
From-SVN: r670
1992-04-03 06:50:46 +00:00
Richard Stallman
eec2995b29 *** empty log message ***
From-SVN: r602
1992-03-27 23:47:15 +00:00
Richard Stallman
d45cf215ee *** empty log message ***
From-SVN: r472
1992-03-14 05:07:15 +00:00
Richard Stallman
51bbfa0c65 Initial revision
From-SVN: r201
1992-01-17 22:48:42 +00:00