[llvm] r217397 - Don't static_cast invalid pointers
Hal Finkel
hfinkel at anl.gov
Mon Sep 8 12:31:25 PDT 2014
Author: hfinkel
Date: Mon Sep 8 14:31:25 2014
New Revision: 217397
URL: http://llvm.org/viewvc/llvm-project?rev=217397&view=rev
Log:
Don't static_cast invalid pointers
UBSan complained about using static_cast on the invalid (tombstone, etc.)
pointers used by DenseMap. Use a reinterpret_cast instead.
Modified:
llvm/trunk/include/llvm/Analysis/AssumptionTracker.h
Modified: llvm/trunk/include/llvm/Analysis/AssumptionTracker.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Analysis/AssumptionTracker.h?rev=217397&r1=217396&r2=217397&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Analysis/AssumptionTracker.h (original)
+++ llvm/trunk/include/llvm/Analysis/AssumptionTracker.h Mon Sep 8 14:31:25 2014
@@ -66,7 +66,7 @@ class AssumptionTracker : public Immutab
operator CallInst*() const {
Value *V = getValPtr();
if (V == DMI::getEmptyKey() || V == DMI::getTombstoneKey())
- return static_cast<CallInst*>(V);
+ return reinterpret_cast<CallInst*>(V);
return cast<CallInst>(V);
}
More information about the llvm-commits
mailing list