summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/IPO/CrossDSOCFI.cpp
diff options
context:
space:
mode:
authorMandeep Singh Grang <mgrang@codeaurora.org>2017-08-30 04:47:21 +0000
committerMandeep Singh Grang <mgrang@codeaurora.org>2017-08-30 04:47:21 +0000
commite3bbb68b0c5a79afb74072eaab79d2d3262f0e28 (patch)
tree6bcca6c0045a6040eafe0688ddcb5211cd6fe983 /llvm/lib/Transforms/IPO/CrossDSOCFI.cpp
parent641e2af9e8c41b11cda62c715909de882fd7915f (diff)
downloadbcm5719-llvm-e3bbb68b0c5a79afb74072eaab79d2d3262f0e28.tar.gz
bcm5719-llvm-e3bbb68b0c5a79afb74072eaab79d2d3262f0e28.zip
[cfi] Fixed non-determinism in codegen due to DenseSet iteration order
llvm-svn: 312098
Diffstat (limited to 'llvm/lib/Transforms/IPO/CrossDSOCFI.cpp')
-rw-r--r--llvm/lib/Transforms/IPO/CrossDSOCFI.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Transforms/IPO/CrossDSOCFI.cpp b/llvm/lib/Transforms/IPO/CrossDSOCFI.cpp
index 0098b60cb6a..7ad5c8c0216 100644
--- a/llvm/lib/Transforms/IPO/CrossDSOCFI.cpp
+++ b/llvm/lib/Transforms/IPO/CrossDSOCFI.cpp
@@ -13,8 +13,8 @@
//===----------------------------------------------------------------------===//
#include "llvm/Transforms/IPO/CrossDSOCFI.h"
-#include "llvm/ADT/DenseSet.h"
#include "llvm/ADT/EquivalenceClasses.h"
+#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/ADT/Triple.h"
#include "llvm/IR/Constant.h"
@@ -82,7 +82,7 @@ ConstantInt *CrossDSOCFI::extractNumericTypeId(MDNode *MD) {
void CrossDSOCFI::buildCFICheck(Module &M) {
// FIXME: verify that __cfi_check ends up near the end of the code section,
// but before the jump slots created in LowerTypeTests.
- llvm::DenseSet<uint64_t> TypeIds;
+ SetVector<uint64_t> TypeIds;
SmallVector<MDNode *, 2> Types;
for (GlobalObject &GO : M.global_objects()) {
Types.clear();
OpenPOWER on IntegriCloud