Richard Kenner
742920c7bd
(get_inner_reference): Simplify code by initializing OFFSET to integer_zero_node.
...
(get_inner_reference): Simplify code by initializing OFFSET to
integer_zero_node.
Do general index computation for ARRAY_REF and include lower bound of domain
in calculation.
(expand_expr, case ARRAY_REF): Include lower-bound in index computation.
From-SVN: r3808
1993-03-20 20:51:52 -05:00
Richard Stallman
665381933b
(expand_assignment): Pass to_rtx's mode to expand_expr when assigning a result_decl.
...
(expand_assignment): Pass to_rtx's mode to expand_expr
when assigning a result_decl.
(expand_expr): For ERROR_MARK, give back 0 in TMODE if possible.
From-SVN: r3784
1993-03-19 08:42:28 +00:00
Richard Stallman
3e3f565813
(expand_expr): Don't ensure ref to a volatile value if it is a function.
...
From-SVN: r3781
1993-03-18 21:34:51 +00:00
Richard Kenner
bbc8a07104
Correctly define PUSH_ARGS_REVERSED.
...
From-SVN: r3728
1993-03-13 18:13:22 -05: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
c841050eed
(emit_push_insn): Handle failure of gen_movstr...
...
From-SVN: r3721
1993-03-12 23:07:38 +00:00
Richard Stallman
86d38d25ba
(expand_assignment): Special handling for storing in RESULT_DECL.
...
From-SVN: r3663
1993-03-06 00:48:19 +00:00
Jim Wilson
46b68a3769
(expand_builtin, BUILT_IN_FRAME_ADDRESS case): Use new
...
macros SETUP_FRAME_ADDRESSES and RETURN_ADDR_IN_PREVIOUS_FRAME.
From-SVN: r3609
1993-03-02 13:10:49 -08:00
Richard Stallman
d3c64ee3f3
(convert_move): Truncate via word_mode only if to_mode fits in one word.
...
Truncate by referring in TO_MODE for any FROM, but force_reg if nec.
From-SVN: r3553
1993-02-27 19:04:24 +00:00
Richard Kenner
17938e5781
(expand_expr, case IN_EXPR): Fix numerous small bugs and make some
...
cleanups.
From-SVN: r3541
1993-02-26 15:11:24 -05:00
Richard Stallman
d6af3b06f1
(emit_library_call_value): Fix bug in prev change.
...
From-SVN: r3528
1993-02-25 06:20:24 +00:00
Richard Stallman
e010155c90
(emit_library_call_value): Really pass mem value address
...
to the library function.
From-SVN: r3511
1993-02-22 01:23:03 +00:00
Richard Stallman
261c4230db
(emit_move_insn_1): New subroutine cut from emit_move_insn.
...
(emit_move_insn): Use that.
From-SVN: r3505
1993-02-21 06:51:34 +00:00
Richard Stallman
9937da1a0c
(expand_builtin): Move memory_address calls
...
out of arglist of emit_block_move.
From-SVN: r3460
1993-02-11 08:56:16 +00:00
Richard Kenner
cd04883188
(emit_push_insn): If REG is zero, don't set regs here.
...
From-SVN: r3439
1993-02-08 05:49:27 -05:00
Richard Stallman
4e7c9a2248
(emit_library_call, emit_library_call_value):
...
Handle STACK_BOUNDARY when using push insns.
From-SVN: r3420
1993-02-03 23:26:51 +00:00
Richard Stallman
42b85a5532
(expand_builtin): Report overflow if __builtin_args_info arg exceeds one word.
...
(expand_builtin): Report overflow if __builtin_args_info
arg exceeds one word.
Fix punctuation of error messages.
From-SVN: r3400
1993-02-02 04:26:15 +00:00
Richard Kenner
bf743ac5ed
(compare_from_rtx): Only swap operand if first is a constant and
...
second is not.
From-SVN: r3370
1993-01-27 19:22:17 -05:00
Richard Kenner
8207ec0452
(emit_library_call): Correct mis-applied patch.
...
From-SVN: r3300
1993-01-22 07:56:45 -05:00
Jim Wilson
428e0ca8c8
(emit_library_call): Handle OUTGOING_REG_PARM_STACK_SPACE.
...
Use NULL_TREE instead of (tree) 0.
From-SVN: r3268
1993-01-18 10:55:02 -08:00
Jim Wilson
89742723e5
(emit_move_insn, expand_expr): Fix typos in comments.
...
From-SVN: r3267
1993-01-18 10:52:38 -08:00
Jim Wilson
b4c65118c4
(do_tablejump): Pass 1 for unsigned flag to emit_cmp_insn.
...
From-SVN: r3233
1993-01-14 11:16:40 -08:00
Richard Stallman
ca300798ae
(expand_increment): Handle all preincrements by building
...
arithmetic and calling expand_assignment.
From-SVN: r3222
1993-01-13 12:07:28 +00:00
Brendan Kehoe
f76a70d580
* expr.c (group_insns): Make void, since it never returns an rtx.
...
From-SVN: r3211
1993-01-12 18:30:32 -05:00
Richard Kenner
a7c5971afb
(compare_from_rtx): Allow simplify_relational_operation to fail.
...
From-SVN: r3204
1993-01-12 17:47:54 -05:00
Paul Eggert
8008b22801
# Fix misspellings in comments.
...
From-SVN: r3181
1993-01-10 20:12:31 +00:00
Richard Stallman
b424402e93
(convert_move): Added code to support new modes QFmode and HFmode.
...
From-SVN: r3133
1993-01-07 00:05:59 +00:00
Jim Wilson
8eef5f77c5
(emit_library_call): Pass NULL_TREE to INIT_CUMULATIVE_ARGS.
...
From-SVN: r3106
1993-01-05 18:58:54 -08:00
Richard Kenner
874726a826
(expand_expr, case TRUTH_XOR_EXPR): New case.
...
From-SVN: r2992
1992-12-30 06:01:05 -05:00
Richard Stallman
12342f9055
(expand_expr): In NOP_EXPR case, truncate and reextend integer constants.
...
From-SVN: r2987
1992-12-30 07:08:14 +00:00
Richard Kenner
f94cc92f8c
(get_inner_reference): Don't look at flag_volatile.
...
(expand_expr, case INDIRECT_REF, OFFSET_REF): Likewise.
From-SVN: r2973
1992-12-28 06:09:13 -05:00
Richard Stallman
3b94d087e8
(expand_expr, constructor case): If we made a stack slot,
...
set MEM_IN_STRUCT_P if the type warrants it.
From-SVN: r2921
1992-12-27 08:08:17 +00:00
Richard Stallman
e254999710
(init_expr_once): Try indexing mem by fp as well as sp.
...
From-SVN: r2760
1992-11-20 19:02:25 +00:00
Richard Stallman
7a1ab50acd
(emit_move_insn): Do return a value, in complex case.
...
From-SVN: r2712
1992-11-07 20:30:00 +00:00
Richard Stallman
87e38d8422
(gen_push_operand): No longer static.
...
From-SVN: r2603
1992-10-25 22:22:00 +00:00
Richard Kenner
d39985fabf
(do_store_flag): Ensure we don't get confused when emit_store_flag
...
fails and an operand has a QUEUED.
From-SVN: r2540
1992-10-21 07:33:55 -04:00
Richard Kenner
c45a13a68d
(force_operand): Clarify comment to say what it can return.
...
From-SVN: r2526
1992-10-20 06:49:30 -04:00
Richard Stallman
86a2c12a2b
(store_field): If trying to sign-extend a constant, use value_mode as
...
the mode.
From-SVN: r2525
1992-10-20 10:47:23 +00:00
Richard Stallman
9074de27ac
(store_field): Typo in last change.
...
From-SVN: r2510
1992-10-18 19:13:01 +00:00
Richard Stallman
5c4d7cfb47
(store_field): If signed bitfield and want value, sign extend.
...
From-SVN: r2504
1992-10-18 05:09:47 +00:00
Richard Stallman
037080855f
(get_inner_reference): If flag_volatile, treat every INDIRECT_REF as volatile.
...
From-SVN: r2499
1992-10-17 07:23:29 +00:00
Richard Stallman
2d7050fdca
(expand_expr): Use gen_realpart, gen_imagpart.
...
(expand_expr): For ABS_EXPR, give expand_unop the operand's mode.
(expand_expr): For REALPART_EXPR, IMAGPART_EXPR, just return that part.
From-SVN: r2322
1992-10-05 06:30:54 +00:00
Richard Kenner
1499e0a89f
(convert_move, convert_to_mode): Strip off a SUBREG made for variables with promoted modes.
...
(convert_move, convert_to_mode): Strip off a SUBREG made for variables with
promoted modes.
(store_expr): Store into variables with promoted modes by doing the
appropriate extension operation.
(expand_expr, case VAR_DECL): Generate SUBREGs for promoted objects.
(expand_expr, case SAVE_EXPR): Likewise for SAVE_EXPRs.
(expand_increment): Handle increment of promoted objects.
From-SVN: r2174
1992-09-19 15:45:55 -04:00
Richard Stallman
7308a047ab
(expand_expr): Support IN_EXPR.
...
(init_expr_once): Don't try HARD_REGNO_MODE_OK on VOIDmode or BLKmode.
(emit_move_insn): When moving word by word,
mark the whole thing as a libcall block.
(group_insns): New function.
(expand_expr): Implement COMPLEX_EXPR, REALPART_EXPR, IMAGPART_EXPR, CONJ_EXPR.
From-SVN: r2082
1992-09-09 06:38:59 +00:00
Richard Kenner
803090c427
(emit_library_call): Pass correct number of args to convert_to_mode.
...
(emit_block_move): Eliminate unnecessary test against HOST_BITS_PER_WIDE_INT.
From-SVN: r1994
1992-08-29 22:38:56 -04:00
James Van Artsdalen
1bbddf1116
(expand_builtin): Add sin and cos as built-in functions.c
...
From-SVN: r1983
1992-08-28 01:49:35 +00:00
Richard Stallman
1ba1e2a808
(emit_block_move): When trying movstrMM, cvt size to mode MM.
...
From-SVN: r1975
1992-08-27 22:54:40 +00:00
Jim Wilson
d562e42ef4
Partially undo Mar 7 change.
...
Partially undo Mar 7 change. Only call
emit_library_call with no_queue == 1 for const functions.
From-SVN: r1961
1992-08-25 23:30:34 -07:00
Richard Stallman
2df53c0b9b
(expand_expr): For BIND_EXPR, call insert_block on the block.
...
From-SVN: r1960
1992-08-26 06:05:46 +00:00
Richard Kenner
e6fe56a424
(init_expr_once): Set direct_load and direct_store if SOME hard register can be loaded or stored...
...
(init_expr_once): Set direct_load and direct_store if SOME hard
register can be loaded or stored; not just if the first one we pick
can be.
From-SVN: r1910
1992-08-20 08:36:23 -04:00