From: Owen Anderson Date: Wed, 8 Aug 2012 23:31:14 +0000 (+0000) Subject: Allow legalization of target-specific SDNodes, provided that the target itself provid... X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=12864689d199209a3a5046f4570d92a252da7420;p=oota-llvm.git Allow legalization of target-specific SDNodes, provided that the target itself provide a legalization hook for them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161536 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/Target/TargetLowering.h b/include/llvm/Target/TargetLowering.h index f3113bd8f63..acf0419510e 100644 --- a/include/llvm/Target/TargetLowering.h +++ b/include/llvm/Target/TargetLowering.h @@ -366,7 +366,9 @@ public: /// for it. LegalizeAction getOperationAction(unsigned Op, EVT VT) const { if (VT.isExtended()) return Expand; - assert(Op < array_lengthof(OpActions[0]) && "Table isn't big enough!"); + // If a target-specific SDNode requires legalization, require the target + // to provide custom legalization for it. + if (Op > array_lengthof(OpActions[0])) return Custom; unsigned I = (unsigned) VT.getSimpleVT().SimpleTy; return (LegalizeAction)OpActions[I][Op]; }