Allow custom lowering of fabs. I forgot to check in this change which
authorEvan Cheng <evan.cheng@apple.com>
Tue, 31 Jan 2006 18:14:25 +0000 (18:14 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Tue, 31 Jan 2006 18:14:25 +0000 (18:14 +0000)
caused several test failures.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25852 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/SelectionDAG/LegalizeDAG.cpp

index f09fa625006adf489be6232f421ec06396a3ee63..02031eccea918900fecaa220240d0cbe07eb2c62 100644 (file)
@@ -2022,9 +2022,14 @@ SDOperand SelectionDAGLegalize::LegalizeOp(SDOperand Op) {
     switch (TLI.getOperationAction(Node->getOpcode(), Node->getValueType(0))) {
     case TargetLowering::Promote:
     case TargetLowering::Custom:
-      assert(0 && "Cannot promote/custom handle this yet!");
+     isCustom = true;
+     // FALLTHROUGH
     case TargetLowering::Legal:
       Result = DAG.UpdateNodeOperands(Result, Tmp1);
+      if (isCustom) {
+        Tmp1 = TLI.LowerOperation(Result, DAG);
+        if (Tmp1.Val) Result = Tmp1;
+      }
       break;
     case TargetLowering::Expand:
       switch (Node->getOpcode()) {