|
@@ -24,7 +24,7 @@ class CallInst;
|
|
|
}
|
|
|
#include "llvm/IR/Attributes.h"
|
|
|
#include "llvm/ADT/StringRef.h"
|
|
|
-#include "llvm/ADT/DenseMap.h"
|
|
|
+#include "llvm/ADT/MapVector.h"
|
|
|
|
|
|
#include "DxilConstants.h"
|
|
|
#include <unordered_map>
|
|
@@ -44,7 +44,7 @@ public:
|
|
|
void RefreshCache();
|
|
|
|
|
|
llvm::Function *GetOpFunc(OpCode OpCode, llvm::Type *pOverloadType);
|
|
|
- const llvm::SmallDenseMap<llvm::Type *, llvm::Function *, 8> &GetOpFuncList(OpCode OpCode) const;
|
|
|
+ const llvm::SmallMapVector<llvm::Type *, llvm::Function *, 8> &GetOpFuncList(OpCode OpCode) const;
|
|
|
void RemoveFunction(llvm::Function *F);
|
|
|
llvm::Type *GetOverloadType(OpCode OpCode, llvm::Function *F);
|
|
|
llvm::LLVMContext &GetCtx() { return m_Ctx; }
|
|
@@ -138,7 +138,7 @@ private:
|
|
|
llvm::Type *m_pCBufferRetType[kNumTypeOverloads];
|
|
|
|
|
|
struct OpCodeCacheItem {
|
|
|
- llvm::SmallDenseMap<llvm::Type *, llvm::Function *, 8> pOverloads;
|
|
|
+ llvm::SmallMapVector<llvm::Type *, llvm::Function *, 8> pOverloads;
|
|
|
};
|
|
|
OpCodeCacheItem m_OpCodeClassCache[(unsigned)OpCodeClass::NumOpClasses];
|
|
|
std::unordered_map<const llvm::Function *, OpCodeClass> m_FunctionToOpClass;
|