re PR target/13789 ([tree-ssa] ICE on _builtin_expect_addr)
PR target/13789 * expr.c (store_expr): Use force_operand before emit_move_insn. From-SVN: r77158
This commit is contained in:
parent
06a81b60c2
commit
b0dccb0022
@ -1,3 +1,8 @@
|
||||
2004-02-02 Richard Henderson <rth@redhat.com>
|
||||
|
||||
PR target/13789
|
||||
* expr.c (store_expr): Use force_operand before emit_move_insn.
|
||||
|
||||
2004-02-02 Jeff Law <law@redhat.com>
|
||||
Roger Sayle <roger@eyesopen.com>
|
||||
|
||||
|
@ -4334,7 +4334,11 @@ store_expr (tree exp, rtx target, int want_value)
|
||||
(want_value & 2
|
||||
? BLOCK_OP_CALL_PARM : BLOCK_OP_NORMAL));
|
||||
else
|
||||
emit_move_insn (target, temp);
|
||||
{
|
||||
temp = force_operand (temp, target);
|
||||
if (temp != target)
|
||||
emit_move_insn (target, temp);
|
||||
}
|
||||
}
|
||||
|
||||
/* If we don't want a value, return NULL_RTX. */
|
||||
|
8
gcc/testsuite/gcc.c-torture/compile/20040202-1.c
Normal file
8
gcc/testsuite/gcc.c-torture/compile/20040202-1.c
Normal file
@ -0,0 +1,8 @@
|
||||
/* PR target/13789 */
|
||||
/* Failed on SPARC due to a bug in store_expr. */
|
||||
|
||||
void *foo (void *c)
|
||||
{
|
||||
void *a = __builtin_extract_return_addr (c);
|
||||
return a;
|
||||
}
|
Loading…
Reference in New Issue
Block a user