aboutsummaryrefslogtreecommitdiff
path: root/gcc/expr.c
AgeCommit message (Collapse)AuthorFilesLines
1995-06-15Update FSF address.Richard Kenner1-1/+2
From-SVN: r9959
1995-06-14(expand_builtin_apply_args): Put back original register save andRichard Kenner1-12/+4
restore order. From-SVN: r9952
1995-06-06(expand_expr, case PLACEHOLDER_EXPR): Consider two types identical ifRichard Kenner1-2/+5
their TYPE_MAIN_VARIANTs are the same. From-SVN: r9897
1995-05-16Fix typos in comments.Richard Kenner1-4/+4
From-SVN: r9712
1995-05-11(do_jump, case EX_EXPR, NE_EXPR): Fix typo for complex.Richard Kenner1-2/+2
From-SVN: r9616
1995-05-08(expand_expr, case INDIRECT_REF): Set RTX_UNCHANGING_P if bothRichard Kenner1-5/+7
TREE_READONLY and TREE_STATIC set. From-SVN: r9591
1995-05-05(do_jump): Fix error in last change.Richard Kenner1-8/+16
From-SVN: r9583
1995-05-05(do_jump, case EQ_EXPR, NE_EXPR): Properly compare complex.Richard Kenner1-24/+56
From-SVN: r9577
1995-05-01(expand_expr, case SAVE_EXPR): Handle the case whereJim Wilson1-1/+6
mode is VOIDmode. From-SVN: r9556
1995-04-30(expand_expr, case CONSTRUCTOR): Don't set target to zero if more then one word.Richard Kenner1-4/+6
(expand_expr, case CONSTRUCTOR): Don't set target to zero if more then one word. Pass size and alignment to move_by_pieces_ninsns in bytes, not bits. From-SVN: r9548
1995-04-26(expand_builtin, case BUILT_IN_CONSTANT_P): A pointer to a stringRichard Kenner1-2/+9
constant is a constant. From-SVN: r9475
1995-04-25(struct move_by_pieces): Add to_struct and from_struct fields.Jim Wilson1-0/+20
(move_by_pieces): Set to_struct and from_struct fields. (move_by_pieces_1): Set MEM_IN_STRUCT_P of to1 and from1. (expand_builtin, case BUILT_IN_MEMCPY): New variable type. Set MEM_IN_STRUCT_P of src_mem and dest_mem. From-SVN: r9468
1995-04-25(expand_builtin_apply_args): If STACK_REGS is defined...Richard Kenner1-5/+25
(expand_builtin_apply_args): If STACK_REGS is defined, generate USE insns before the function body, thus showing which registers are filled with parameters. Reverse order of saving registers, more compact code for i387. (expand_builtin_apply): Likewise. From-SVN: r9462
1995-04-25(convert_move): Don't access a hard reg in an invalid mode when doingRichard Kenner1-0/+3
a truncation. From-SVN: r9447
1995-04-18(store_constructor): Fix BITS_BIG_ENDIAN -> BYTES_BIG_ENDIAN for SET_TYPE.Per Bothner1-1/+1
From-SVN: r9416
1995-04-17(expand_builtin, case BUILT_IN_MEMCPY): Call force_operandJim Wilson1-1/+1
on dest_rtx before returning it. From-SVN: r9393
1995-04-08(expand_increment): Handle case where INCREMENTED has a non-trivialRichard Kenner1-0/+8
conversion. From-SVN: r9337
1995-04-07(expand_expr, case ADDR_EXPR): Always call convert_memory_address whenRichard Kenner1-3/+2
converting; add extra arg. From-SVN: r9329
1995-04-03(clear_storage, expand_assignment, store_{expr,constructor}): Use ptr_mode ↵Richard Kenner1-34/+52
instead of Pmode in some places. (clear_storage, expand_assignment, store_{expr,constructor}): Use ptr_mode instead of Pmode in some places. (expand_expr, expand_builtin): Likewise. (push_block, store_expr): Convert size to Pmode. (expand_expr, case ADDR_EXPR): Convert from Pmode to ptr_mode. From-SVN: r9305
1995-03-10(expand_assignment): When offset is zero, make new MEMJim Wilson1-1/+8
before setting MEM_VOLATILE_P. From-SVN: r9167
1995-03-03(expand_expr, CLEANUP_POINT_EXPR): Force the operand outJason Merrill1-1/+4
of memory before running cleanups. From-SVN: r9117
1995-03-01Remove Feb 28's FUNCTION_NEEDS_STATIC_CHAIN changes.Per Bothner1-10/+1
From-SVN: r9106
1995-03-01(store_expr): Do conversion in two steps for promoted lhs.Richard Kenner1-4/+16
From-SVN: r9098
1995-02-28expr.c (expand_expr): If non-local variable is expanded...Per Bothner1-1/+10
* expr.c (expand_expr): If non-local variable is expanded, set FUNCTION_NEEDS_STATIC_CHAIN (current_function_decl). * expr.c (expand_expr case ADDR_EXPR): Check for trampoline using FUNCTION_NEEDS_STATIC_CHAIN, instead of decl_function_context. From-SVN: r9095
1995-02-24(expand_expr, case COMPONENT_REF): Don't fetch unalignedJim Wilson1-9/+9
field if we only want its address. From-SVN: r9069
1995-02-14* expr.c (store_constructor): Don't use get_set_constructor_words.Per Bothner1-29/+37
From-SVN: r8954
1995-02-11(expand_builtin, case BUILT_IN_NEXT_ARG): Don't warn whenJim Wilson1-1/+1
no argument if this is a varargs routine. From-SVN: r8912
1995-02-10(store_constructor, ARRAY_TYPE): Use code for non-integer INDEX for ↵Richard Kenner1-4/+8
non-integer ELTTYPE size. (store_constructor, ARRAY_TYPE): Use code for non-integer INDEX for non-integer ELTTYPE size. Allow INDEX to be zero in code and divide size by BITS_PER_UNIT. From-SVN: r8902
1995-01-27(expand_expr, case MINUS_EXPR): Remove bogus operand swap.Richard Kenner1-4/+0
From-SVN: r8829
1995-01-25(expand_expr, case MIN_EXPR): If must emit multipleJim Wilson1-0/+6
instructions, then don't allow a MEM target. From-SVN: r8822
1995-01-18(get_inner_reference): Don't ignore CONVERT_EXPR from non-UNION_TYPE to ↵Richard Kenner1-15/+18
UNION_TYPE. (get_inner_reference): Don't ignore CONVERT_EXPR from non-UNION_TYPE to UNION_TYPE. (expand_expr, case CONVERT_EXPR): Check for conversion to union before checking for not changing mode. From-SVN: r8772
1995-01-14(get_inner_reference): Only treat offset of PLUS_EXPR as special ifRichard Kenner1-31/+15
second arg is integer constant. From-SVN: r8762
1994-12-29calls.c (expand_call): Set MEM_IN_STRUCT_P as needed on return value from ↵Jeff Law1-0/+4
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-15(store_constructor): Properly get constant part of bit position whenRichard Kenner1-1/+1
DECL_FIELD_BITPOS is a PLUS_EXPR. From-SVN: r8655
1994-12-14(get_inner_reference): Use EXACT_DIV_EXPR to compute byte offset fromRichard Kenner1-2/+2
bit offset. From-SVN: r8654
1994-12-13(expand_expr, case MINUS_EXPR): Properly handle case when the NEGATERichard Kenner1-4/+23
overflows. From-SVN: r8648
1994-12-02* expr.c (store_constructor): Add support for SET_TYPE.Per Bothner1-0/+167
From-SVN: r8604
1994-11-30(convert_move): When emit multiword conversion, force FROM into a newRichard Kenner1-0/+6
pseudo-reg if it overlaps TO. From-SVN: r8593
1994-11-30(emit_block_move): Only use movstr if size is small enough constant orRichard Kenner1-1/+4
MODE is at least BITS_PER_WORD. From-SVN: r8585
1994-11-28expr.c (expand_assignment): For BLKmode structure returns...Jeff Law1-1/+8
* expr.c (expand_assignment): For BLKmode structure returns, copy the return value from registers into the target memory locations. From-SVN: r8575
1994-11-28(move_by_pieces, move_by_pieces_ninsns, emit_push_insn,Jim Wilson1-10/+11
expand_assignment, store_field, expand_expr): Likewise. (SLOW_UNALIGNED_ACCESS): Default to STRICT_ALIGNMENT, not zero. From-SVN: r8569
1994-11-23(emit_move_insn): If splitting up into individual words and X is a ↵Richard Kenner1-0/+11
push_operand... (emit_move_insn): If splitting up into individual words and X is a push_operand, do the push and reference top of stack. From-SVN: r8554
1994-11-16(convert_move): Don't put FROM in a register if it is a SUBREG.Richard Kenner1-7/+8
(store_expr): If don't want a value and storing into promoted variable, do conversion at tree level; don't copy volatile MEM unless want value, as comment says. From-SVN: r8466
1994-11-15(do_jump_by_parts_greater_rtx): No longer static.Richard Kenner1-66/+4
(expand_expr): Delete code for plain `abs'. From-SVN: r8443
1994-10-31(expand_expr, COND_EXPR case): Don't use original target as a temp if it's a ↵Richard Kenner1-3/+4
volatile mem ref. (expand_expr, COND_EXPR case): Don't use original target as a temp if it's a volatile mem ref. Finish previous patch (don't expand "X ? A & 1 : A" as "A & (X != 0)"). From-SVN: r8369
1994-10-31(expand_expr, case COMPONENT_REF): Don't extract field from a CONSTRUCTOR if ↵Richard Kenner1-2/+6
it already has a TREE_CST_RTL. (expand_expr, case COMPONENT_REF): Don't extract field from a CONSTRUCTOR if it already has a TREE_CST_RTL. (expand_expr, case ADDR_EXPR): Call mark_temp_addr_taken on the temporary made when operand needs to be stored into memory. From-SVN: r8362
1994-10-26(expand_expr, COND_EXPR case): Don't expand "X ? A & 1 : A" as "A & (X != 0)".Doug Evans1-2/+1
From-SVN: r8345
1994-10-10(convert_move): Add TImode conversions.Richard Kenner1-0/+52
From-SVN: r8248
1994-10-07Fix typo in last change.Richard Kenner1-2/+2
From-SVN: r8236
1994-10-07(safe_from_p): If EXP has a variable size, assume safe.Richard Kenner1-2/+10
(preexpand_calls): Don't preexpand a call that returns a variable-sized object. From-SVN: r8234