diff options
author | Evgeniy Stepanov <eugeni.stepanov@gmail.com> | 2016-01-08 23:42:30 +0000 |
---|---|---|
committer | Evgeniy Stepanov <eugeni.stepanov@gmail.com> | 2016-01-08 23:42:30 +0000 |
commit | bef0958bac79738acf4a2f1f52a7ae966967a3b2 (patch) | |
tree | df14c4841f7d68463097c14e1f4c8afdc39231aa | |
parent | 82d4899ba1b9459d2d7364fbc200e75e09f4d4de (diff) | |
download | compiler-rt-bef0958bac79738acf4a2f1f52a7ae966967a3b2.tar.gz |
[cfi] Fix __cfi_slowpath and __cfi_check signature.
The first argument is uint64_t, not uintptr_t.
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@257233 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/cfi/cfi.cc | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/cfi/cfi.cc b/lib/cfi/cfi.cc index 0e2a09190..711866f3f 100644 --- a/lib/cfi/cfi.cc +++ b/lib/cfi/cfi.cc @@ -42,7 +42,7 @@ static uint16_t *mem_to_shadow(uptr x) { return (uint16_t *)(__cfi_shadow + ((x >> kShadowGranularity) << 1)); } -typedef int (*CFICheckFn)(uptr, void *); +typedef int (*CFICheckFn)(u64, void *); class ShadowValue { uptr addr; @@ -189,9 +189,9 @@ static void init_shadow() { } extern "C" SANITIZER_INTERFACE_ATTRIBUTE -void __cfi_slowpath(uptr CallSiteTypeId, void *Ptr) { +void __cfi_slowpath(u64 CallSiteTypeId, void *Ptr) { uptr Addr = (uptr)Ptr; - VReport(3, "__cfi_slowpath: %zx, %p\n", CallSiteTypeId, Ptr); + VReport(3, "__cfi_slowpath: %llx, %p\n", CallSiteTypeId, Ptr); ShadowValue sv = ShadowValue::load(Addr); if (sv.is_invalid()) { VReport(2, "CFI: invalid memory region for a function pointer (shadow==0): %p\n", Ptr); |