summaryrefslogtreecommitdiff
path: root/lib/msan/msan_interface_internal.h
diff options
context:
space:
mode:
authorEvgeniy Stepanov <eugeni.stepanov@gmail.com>2013-06-04 13:08:36 +0000
committerEvgeniy Stepanov <eugeni.stepanov@gmail.com>2013-06-04 13:08:36 +0000
commitf43f6026dc9374e657fb6300840b18ead6347b74 (patch)
tree4d349bba5db2aa4afd4af9547e31416a63110f5f /lib/msan/msan_interface_internal.h
parent87bd39a72b65f1ef5c5a33fc8ba3aebae998903e (diff)
[msan] Implement __sanitizer_unaligned_*.
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@183221 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/msan/msan_interface_internal.h')
-rw-r--r--lib/msan/msan_interface_internal.h20
1 files changed, 19 insertions, 1 deletions
diff --git a/lib/msan/msan_interface_internal.h b/lib/msan/msan_interface_internal.h
index fb57f67c4..0dcb926cb 100644
--- a/lib/msan/msan_interface_internal.h
+++ b/lib/msan/msan_interface_internal.h
@@ -120,9 +120,27 @@ void __msan_partial_poison(const void* data, void* shadow, uptr size);
// Memory will be marked uninitialized, with origin at the call site.
SANITIZER_INTERFACE_ATTRIBUTE
void __msan_allocated_memory(const void* data, uptr size);
-} // extern "C"
// Unpoison first n function arguments.
void __msan_unpoison_param(uptr n);
+SANITIZER_INTERFACE_ATTRIBUTE
+u16 __sanitizer_unaligned_load16(const void *p);
+
+SANITIZER_INTERFACE_ATTRIBUTE
+u32 __sanitizer_unaligned_load32(const void *p);
+
+SANITIZER_INTERFACE_ATTRIBUTE
+u64 __sanitizer_unaligned_load64(const void *p);
+
+SANITIZER_INTERFACE_ATTRIBUTE
+void __sanitizer_unaligned_store16(void *p, u16 x);
+
+SANITIZER_INTERFACE_ATTRIBUTE
+void __sanitizer_unaligned_store32(void *p, u32 x);
+
+SANITIZER_INTERFACE_ATTRIBUTE
+void __sanitizer_unaligned_store64(void *p, u64 x);
+} // extern "C"
+
#endif // MSAN_INTERFACE_INTERNAL_H