Commit 1e533e4b by Steve Ellcey Committed by Richard Henderson

builtins.c (expand_builtin_prefetch): Force op0 pointer to Pmode if…

builtins.c (expand_builtin_prefetch): Force op0 pointer to Pmode if POINTERS_EXTEND_UNSIGNED is defined.

        * builtins.c (expand_builtin_prefetch): Force op0 pointer to Pmode
        if POINTERS_EXTEND_UNSIGNED is defined.

From-SVN: r51778
parent 40e5b283
2002-04-02 Steve Ellcey <sje@cup.hp.com>
* builtins.c (expand_builtin_prefetch): Force op0 pointer to Pmode
if POINTERS_EXTEND_UNSIGNED is defined.
2002-04-02 Richard Henderson <rth@redhat.com> 2002-04-02 Richard Henderson <rth@redhat.com>
PR opt/3967 PR opt/3967
......
...@@ -787,10 +787,17 @@ expand_builtin_prefetch (arglist) ...@@ -787,10 +787,17 @@ expand_builtin_prefetch (arglist)
#ifdef HAVE_prefetch #ifdef HAVE_prefetch
if (HAVE_prefetch) if (HAVE_prefetch)
{ {
if (! (*insn_data[(int)CODE_FOR_prefetch].operand[0].predicate) if ((! (*insn_data[(int)CODE_FOR_prefetch].operand[0].predicate)
(op0, (op0,
insn_data[(int)CODE_FOR_prefetch].operand[0].mode)) insn_data[(int)CODE_FOR_prefetch].operand[0].mode)) ||
op0 = force_reg (Pmode, op0); (GET_MODE(op0) != Pmode))
{
#ifdef POINTERS_EXTEND_UNSIGNED
if (GET_MODE(op0) != Pmode)
op0 = convert_memory_address (Pmode, op0);
#endif
op0 = force_reg (Pmode, op0);
}
emit_insn (gen_prefetch (op0, op1, op2)); emit_insn (gen_prefetch (op0, op1, op2));
} }
else else
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment