diff options
author | Paolo Bonzini <bonzini@gnu.org> | 2004-07-14 07:30:23 +0000 |
---|---|---|
committer | Paolo Bonzini <bonzini@gcc.gnu.org> | 2004-07-14 07:30:23 +0000 |
commit | ad76cef84c675f27d4e04284c1cf8c2b659d82ea (patch) | |
tree | 24070b8bb3608402594a7c1884532c74eaa969a8 /gcc/expmed.c | |
parent | 780028b6cff77a9f25f75a24047ab5f3b50a4834 (diff) | |
download | gcc-ad76cef84c675f27d4e04284c1cf8c2b659d82ea.zip gcc-ad76cef84c675f27d4e04284c1cf8c2b659d82ea.tar.gz gcc-ad76cef84c675f27d4e04284c1cf8c2b659d82ea.tar.bz2 |
expr.c (enqueue_insn, [...]): Remove.
2004-07-14 Paolo Bonzini <bonzini@gnu.org>
* expr.c (enqueue_insn, finish_expr_for_function,
protect_from_queue, queued_subexp_p, mark_queue,
emit_insns_enqueued_after_mark, emit_queue,
expand_increment): Remove.
(store_constructor): Expand increment as an assignment.
(expand_expr_real_1 <case PREINCREMENT_EXPR,
case PREDECREMENT_EXPR, case POSTINCREMENT_EXPR,
case POSTDECREMENT_EXPR>): Abort.
* expr.h (QUEUED_VAR, QUEUED_INSN, QUEUED_COPY,
QUEUED_BODY, QUEUED_NEXT, finish_expr_for_function,
protect_from_queue, emit_queue, queued_subexp_p): Remove.
* function.h (pending_chain, x_pending_chain): Remove.
* rtl.def (QUEUED): Remove.
* emit-rtl.c (copy_insn_1, copy_most_rtx,
set_used_flags, verify_rtx_sharing): Remove references to QUEUED.
* genattrtab.c (attr_copy_rtx, clear_struct_flag,
encode_units_mask): Likewise.
* local-alloc.c (equiv_init_varies_p): Likewise.
* rtl.c (copy_rtx): Likewise.
* rtlanal.c (rtx_unstable_p, rtx_varies_p): Likewise.
* simplify-rtx.c (simplify_gen_subreg): Likewise.
* config/mn10300/mn10300.c (legitimate_pic_operand_p): Likewise.
* builtins.c (expand_builtin, expand_builtin_apply,
expand_builtin_mathfn, expand_builtin_mathfn_2,
expand_builtin_mathfn_3, expand_builtin_setjmp_setup):
Remove calls to emit_queue and protect_from_queue.
* calls.c (expand_call, precompute_arguments,
precompute_register_parameters, rtx_for_function_call,
store_one_arg): Likewise.
* dojump.c (do_compare_and_jump, do_jump): Likewise.
* explow.c (memory_address): Likewise.
* expmed.c (clear_by_pieces_1, clear_storage,
clear_storage_via_libcall, emit_group_load,
emit_group_store, emit_store_flag,
expand_expr_real_1, store_by_pieces,
store_constructor, store_expr, try_casesi,
try_tablejump): Likewise.
* function.c (expand_pending_sizes): Likewise.
* optabs.c (emit_cmp_and_jump_insns,
emit_conditional_add, emit_conditional_move,
expand_fix, expand_float, prepare_cmp_insn): Likewise.
* stmt.c (emit_case_bit_tests,
expand_asm_expr, expand_computed_goto,
expand_decl_init, expand_end_case_type,
expand_end_stmt_expr, expand_expr_stmt_value,
expand_return, expand_start_case,
optimize_tail_recursion): Likewise.
* config/c4x/c4x.c (c4x_expand_builtin): Likewise.
* config/s390/s390.c (s390_expand_cmpmem): Likewise.
From-SVN: r84675
Diffstat (limited to 'gcc/expmed.c')
-rw-r--r-- | gcc/expmed.c | 33 |
1 files changed, 4 insertions, 29 deletions
diff --git a/gcc/expmed.c b/gcc/expmed.c index c1f9873..08a8863 100644 --- a/gcc/expmed.c +++ b/gcc/expmed.c @@ -353,8 +353,6 @@ store_bit_field (rtx str_rtx, unsigned HOST_WIDE_INT bitsize, op0 = SUBREG_REG (op0); } - value = protect_from_queue (value, 0); - /* Use vec_set patterns for inserting parts of vectors whenever available. */ if (VECTOR_MODE_P (GET_MODE (op0)) @@ -602,8 +600,6 @@ store_bit_field (rtx str_rtx, unsigned HOST_WIDE_INT bitsize, } offset = 0; } - else - op0 = protect_from_queue (op0, 1); /* If VALUE is a floating-point mode, access it as an integer of the corresponding size. This can occur on a machine with 64 bit registers @@ -771,9 +767,7 @@ store_bit_field (rtx str_rtx, unsigned HOST_WIDE_INT bitsize, The field starts at position BITPOS within the byte. (If OP0 is a register, it may be a full word or a narrower mode, but BITPOS still counts within a full word, - which is significant on bigendian machines.) - - Note that protect_from_queue has already been done on OP0 and VALUE. */ + which is significant on bigendian machines.) */ static void store_fixed_bit_field (rtx op0, unsigned HOST_WIDE_INT offset, @@ -1369,8 +1363,6 @@ extract_bit_field (rtx str_rtx, unsigned HOST_WIDE_INT bitsize, } offset = 0; } - else - op0 = protect_from_queue (str_rtx, 1); /* Now OFFSET is nonzero only for memory operands. */ @@ -1487,8 +1479,7 @@ extract_bit_field (rtx str_rtx, unsigned HOST_WIDE_INT bitsize, bitsize_rtx = GEN_INT (bitsize); bitpos_rtx = GEN_INT (xbitpos); - pat = gen_extzv (protect_from_queue (xtarget, 1), - xop0, bitsize_rtx, bitpos_rtx); + pat = gen_extzv (xtarget, xop0, bitsize_rtx, bitpos_rtx); if (pat) { emit_insn (pat); @@ -1616,8 +1607,7 @@ extract_bit_field (rtx str_rtx, unsigned HOST_WIDE_INT bitsize, bitsize_rtx = GEN_INT (bitsize); bitpos_rtx = GEN_INT (xbitpos); - pat = gen_extv (protect_from_queue (xtarget, 1), - xop0, bitsize_rtx, bitpos_rtx); + pat = gen_extv (xtarget, xop0, bitsize_rtx, bitpos_rtx); if (pat) { emit_insn (pat); @@ -2523,10 +2513,6 @@ expand_mult_const (enum machine_mode mode, rtx op0, HOST_WIDE_INT val, int opno; enum machine_mode nmode; - /* op0 must be register to make mult_cost match the precomputed - shiftadd_cost array. */ - op0 = protect_from_queue (op0, 0); - /* Avoid referencing memory over and over. For speed, but also for correctness when mem is volatile. */ if (MEM_P (op0)) @@ -4564,10 +4550,6 @@ emit_store_flag (rtx target, enum rtx_code code, rtx op0, rtx op1, rtx last = get_last_insn (); rtx pattern, comparison; - /* ??? Ok to do this and then fail? */ - op0 = protect_from_queue (op0, 0); - op1 = protect_from_queue (op1, 0); - if (unsignedp) code = unsigned_condition (code); @@ -4672,7 +4654,6 @@ emit_store_flag (rtx target, enum rtx_code code, rtx op0, rtx op1, first. */ if (GET_MODE_SIZE (target_mode) > GET_MODE_SIZE (mode)) { - op0 = protect_from_queue (op0, 0); op0 = convert_modes (target_mode, mode, op0, 0); mode = target_mode; } @@ -4704,13 +4685,8 @@ emit_store_flag (rtx target, enum rtx_code code, rtx op0, rtx op1, insn_operand_predicate_fn pred; /* We think we may be able to do this with a scc insn. Emit the - comparison and then the scc insn. - - compare_from_rtx may call emit_queue, which would be deleted below - if the scc insn fails. So call it ourselves before setting LAST. - Likewise for do_pending_stack_adjust. */ + comparison and then the scc insn. */ - emit_queue (); do_pending_stack_adjust (); last = get_last_insn (); @@ -4947,7 +4923,6 @@ emit_store_flag (rtx target, enum rtx_code code, rtx op0, rtx op1, tem = expand_unop (mode, ffs_optab, op0, subtarget, 1); else if (GET_MODE_SIZE (mode) < UNITS_PER_WORD) { - op0 = protect_from_queue (op0, 0); tem = convert_modes (word_mode, mode, op0, 1); mode = word_mode; } |