summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-cfi-verify
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/tools/llvm-cfi-verify')
-rw-r--r--llvm/tools/llvm-cfi-verify/CMakeLists.txt5
-rw-r--r--llvm/tools/llvm-cfi-verify/lib/CMakeLists.txt4
-rw-r--r--llvm/tools/llvm-cfi-verify/lib/FileAnalysis.h3
3 files changed, 7 insertions, 5 deletions
diff --git a/llvm/tools/llvm-cfi-verify/CMakeLists.txt b/llvm/tools/llvm-cfi-verify/CMakeLists.txt
index bf65cf7785c..ae203e53470 100644
--- a/llvm/tools/llvm-cfi-verify/CMakeLists.txt
+++ b/llvm/tools/llvm-cfi-verify/CMakeLists.txt
@@ -4,6 +4,7 @@ set(LLVM_LINK_COMPONENTS
AllTargetsDescs
AllTargetsDisassemblers
AllTargetsInfos
+ CFIVerify
MC
MCParser
Object
@@ -11,8 +12,6 @@ set(LLVM_LINK_COMPONENTS
)
add_llvm_tool(llvm-cfi-verify
- llvm-cfi-verify.cpp
- lib/FileAnalysis.cpp
- )
+ llvm-cfi-verify.cpp)
add_subdirectory(lib)
diff --git a/llvm/tools/llvm-cfi-verify/lib/CMakeLists.txt b/llvm/tools/llvm-cfi-verify/lib/CMakeLists.txt
index 814e30a234b..8cbbc79ceca 100644
--- a/llvm/tools/llvm-cfi-verify/lib/CMakeLists.txt
+++ b/llvm/tools/llvm-cfi-verify/lib/CMakeLists.txt
@@ -1,7 +1,9 @@
add_library(LLVMCFIVerify
STATIC
FileAnalysis.cpp
- FileAnalysis.h)
+ FileAnalysis.h
+ GraphBuilder.cpp
+ GraphBuilder.h)
llvm_update_compile_flags(LLVMCFIVerify)
llvm_map_components_to_libnames(libs
diff --git a/llvm/tools/llvm-cfi-verify/lib/FileAnalysis.h b/llvm/tools/llvm-cfi-verify/lib/FileAnalysis.h
index df1ad603b6c..3c24bcda75c 100644
--- a/llvm/tools/llvm-cfi-verify/lib/FileAnalysis.h
+++ b/llvm/tools/llvm-cfi-verify/lib/FileAnalysis.h
@@ -10,6 +10,7 @@
#ifndef LLVM_CFI_VERIFY_FILE_ANALYSIS_H
#define LLVM_CFI_VERIFY_FILE_ANALYSIS_H
+#include "llvm/ADT/DenseMap.h"
#include "llvm/BinaryFormat/ELF.h"
#include "llvm/MC/MCAsmInfo.h"
#include "llvm/MC/MCContext.h"
@@ -161,7 +162,7 @@ private:
// Contains a mapping between a specific address, and a list of instructions
// that use this address as a branch target (including call instructions).
- std::unordered_map<uint64_t, std::vector<uint64_t>> StaticBranchTargetings;
+ DenseMap<uint64_t, std::vector<uint64_t>> StaticBranchTargetings;
// A list of addresses of indirect control flow instructions.
std::set<uint64_t> IndirectInstructions;
OpenPOWER on IntegriCloud