(expand_unop): Try subtraction from zero if there isn't a
negate library function. From-SVN: r8485
This commit is contained in:
parent
13d50804a0
commit
b82b6eea93
11
gcc/optabs.c
11
gcc/optabs.c
@ -2041,6 +2041,17 @@ expand_unop (mode, unoptab, op0, target, unsignedp)
|
||||
}
|
||||
}
|
||||
|
||||
/* If there is no negate operation, try doing a subtract from zero.
|
||||
The US Software GOFAST library needs this. */
|
||||
if (unoptab == neg_optab)
|
||||
{
|
||||
rtx temp;
|
||||
temp = expand_binop (mode, sub_optab, CONST0_RTX (mode), op0,
|
||||
target, unsignedp, OPTAB_LIB_WIDEN);
|
||||
if (temp)
|
||||
return temp;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user