Allow targets to custom handle softening of results or operands before trying the standard stuff.

llvm-svn: 77974
This commit is contained in:
Sanjiv Gupta 2009-08-03 17:35:21 +00:00
parent c0deed3263
commit 9503900c60
1 changed files with 8 additions and 0 deletions

View File

@ -47,6 +47,10 @@ void DAGTypeLegalizer::SoftenFloatResult(SDNode *N, unsigned ResNo) {
errs() << "\n");
SDValue R = SDValue();
// See if the target wants to custom handle softening this result.
if (CustomLowerNode(N, N->getValueType(ResNo), true))
return;
switch (N->getOpcode()) {
default:
#ifndef NDEBUG
@ -535,6 +539,10 @@ bool DAGTypeLegalizer::SoftenFloatOperand(SDNode *N, unsigned OpNo) {
errs() << "\n");
SDValue Res = SDValue();
// See if target wants to custom handle softening this operand.
if (CustomLowerNode(N, N->getOperand(OpNo).getValueType(), false))
return false;
switch (N->getOpcode()) {
default:
#ifndef NDEBUG