Add an assertion to catch attempts to access off the end of the array.
authorDuncan Sands <baldrick@free.fr>
Mon, 10 May 2010 04:54:28 +0000 (04:54 +0000)
committerDuncan Sands <baldrick@free.fr>
Mon, 10 May 2010 04:54:28 +0000 (04:54 +0000)
Based on a patch by Javier Martinez.

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

lib/CodeGen/SelectionDAG/SelectionDAG.cpp

index e9de6d56f9ac356476bc21907d1634d6c613bf77..000cdb44ff5e01e83358d07def8676c95f91e4ad 100644 (file)
@@ -5428,6 +5428,8 @@ const EVT *SDNode::getValueTypeList(EVT VT) {
     sys::SmartScopedLock<true> Lock(*VTMutex);
     return &(*EVTs->insert(VT).first);
   } else {
+    assert(VT.getSimpleVT().SimpleTy < MVT::LAST_VALUETYPE &&
+           "Value type out of range!");
     return &SimpleVTArray->VTs[VT.getSimpleVT().SimpleTy];
   }
 }