mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-17 17:49:39 +08:00
rtl.texi (RTX_FRAME_RELATED_P): Add documentation.
d Thu Mar 25 14:04:54 EST 1999 Andrew MacLeod <amacleod@cygnus.com> * rtl.texi (RTX_FRAME_RELATED_P): Add documentation. * rtl.h (struct rtx_def): Update comment for frame_related field. (set_unique_reg_note): Declare prototype. * dwarf2out.c (dwarf2out_frame_debug_expr): Split out from 'dwarf2out_frame_debug' to handle only expressions, and process component parts of a PARALLEL expression. (dwarf2out_frame_debug): Process insns only, and call new function 'dwarf2out_frame_debug_expr' for patterns. * emit-rtl.c (set_unique_reg_note): New function to add a reg note, but if there is an existingone, deletes it first. * expmed.c (expand_mult, expand_divmod): Use set_unique_reg_note. * optabs.c (add_equal_note, expand_binop): Use set_unique_reg_note. (emit_no_conflict_block, emit_libcall_block): Use set_unique_reg_note. (expand_fix): Use set_unique_reg_note. From-SVN: r25979
This commit is contained in:
parent
87b47c855d
commit
7e5bda2c38
44
gcc/expmed.c
44
gcc/expmed.c
@ -2473,10 +2473,10 @@ expand_mult (mode, op0, op1, target, unsignedp)
|
||||
multiplication sequences. */
|
||||
|
||||
insn = get_last_insn ();
|
||||
REG_NOTES (insn)
|
||||
= gen_rtx_EXPR_LIST (REG_EQUAL,
|
||||
gen_rtx_MULT (mode, op0, GEN_INT (val_so_far)),
|
||||
REG_NOTES (insn));
|
||||
set_unique_reg_note (insn,
|
||||
REG_EQUAL,
|
||||
gen_rtx_MULT (mode, op0,
|
||||
GEN_INT (val_so_far)));
|
||||
}
|
||||
|
||||
if (variant == negate_variant)
|
||||
@ -3170,10 +3170,9 @@ expand_divmod (rem_flag, code, mode, op0, op1, target, unsignedp)
|
||||
if (insn != last
|
||||
&& (set = single_set (insn)) != 0
|
||||
&& SET_DEST (set) == quotient)
|
||||
REG_NOTES (insn)
|
||||
= gen_rtx_EXPR_LIST (REG_EQUAL,
|
||||
gen_rtx_UDIV (compute_mode, op0, op1),
|
||||
REG_NOTES (insn));
|
||||
set_unique_reg_note (insn,
|
||||
REG_EQUAL,
|
||||
gen_rtx_UDIV (compute_mode, op0, op1));
|
||||
}
|
||||
else /* TRUNC_DIV, signed */
|
||||
{
|
||||
@ -3247,12 +3246,11 @@ expand_divmod (rem_flag, code, mode, op0, op1, target, unsignedp)
|
||||
if (insn != last
|
||||
&& (set = single_set (insn)) != 0
|
||||
&& SET_DEST (set) == quotient)
|
||||
REG_NOTES (insn)
|
||||
= gen_rtx_EXPR_LIST (REG_EQUAL,
|
||||
gen_rtx_DIV (compute_mode,
|
||||
op0,
|
||||
GEN_INT (abs_d)),
|
||||
REG_NOTES (insn));
|
||||
set_unique_reg_note (insn,
|
||||
REG_EQUAL,
|
||||
gen_rtx_DIV (compute_mode,
|
||||
op0,
|
||||
GEN_INT (abs_d)));
|
||||
|
||||
quotient = expand_unop (compute_mode, neg_optab,
|
||||
quotient, quotient, 0);
|
||||
@ -3317,10 +3315,9 @@ expand_divmod (rem_flag, code, mode, op0, op1, target, unsignedp)
|
||||
if (insn != last
|
||||
&& (set = single_set (insn)) != 0
|
||||
&& SET_DEST (set) == quotient)
|
||||
REG_NOTES (insn)
|
||||
= gen_rtx_EXPR_LIST (REG_EQUAL,
|
||||
gen_rtx_DIV (compute_mode, op0, op1),
|
||||
REG_NOTES (insn));
|
||||
set_unique_reg_note (insn,
|
||||
REG_EQUAL,
|
||||
gen_rtx_DIV (compute_mode, op0, op1));
|
||||
}
|
||||
break;
|
||||
}
|
||||
@ -3733,12 +3730,11 @@ expand_divmod (rem_flag, code, mode, op0, op1, target, unsignedp)
|
||||
NULL_RTX, unsignedp);
|
||||
|
||||
insn = get_last_insn ();
|
||||
REG_NOTES (insn)
|
||||
= gen_rtx_EXPR_LIST (REG_EQUAL,
|
||||
gen_rtx_fmt_ee (unsignedp ? UDIV : DIV,
|
||||
compute_mode,
|
||||
op0, op1),
|
||||
REG_NOTES (insn));
|
||||
set_unique_reg_note (insn,
|
||||
REG_EQUAL,
|
||||
gen_rtx_fmt_ee (unsignedp ? UDIV : DIV,
|
||||
compute_mode,
|
||||
op0, op1));
|
||||
}
|
||||
break;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user