From a5a6fd3f95a9ecc3ef8732192ce0fd7749135311 Mon Sep 17 00:00:00 2001 From: Lirong Yuan Date: Fri, 10 Jan 2020 13:18:55 -0800 Subject: [PATCH] Summary: update macro for OFF_T so that sanitizer works on AARCH64. Reviewers: vitalybuka, eugenis, MaskRay Reviewed By: eugenis, MaskRay Subscribers: MaskRay, kristof.beyls, #sanitizers, llvm-commits, jkz, scw Tags: #sanitizers, #llvm Differential Revision: https://reviews.llvm.org/D72367 --- compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp | 2 +- compiler-rt/lib/sanitizer_common/sanitizer_linux_s390.cpp | 2 +- compiler-rt/lib/sanitizer_common/sanitizer_netbsd.cpp | 2 +- compiler-rt/lib/sanitizer_common/sanitizer_posix.h | 2 +- .../lib/sanitizer_common/symbolizer/sanitizer_wrappers.cpp | 9 +-------- 5 files changed, 5 insertions(+), 12 deletions(-) diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp b/compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp index 3807a79..84453f1 100644 --- a/compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp +++ b/compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp @@ -166,7 +166,7 @@ namespace __sanitizer { #if !SANITIZER_SOLARIS && !SANITIZER_NETBSD #if !SANITIZER_S390 && !SANITIZER_OPENBSD uptr internal_mmap(void *addr, uptr length, int prot, int flags, int fd, - OFF_T offset) { + u64 offset) { #if SANITIZER_FREEBSD || SANITIZER_LINUX_USES_64BIT_SYSCALLS return internal_syscall(SYSCALL(mmap), (uptr)addr, length, prot, flags, fd, offset); diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_linux_s390.cpp b/compiler-rt/lib/sanitizer_common/sanitizer_linux_s390.cpp index 41e187e..9e3b4f1 100644 --- a/compiler-rt/lib/sanitizer_common/sanitizer_linux_s390.cpp +++ b/compiler-rt/lib/sanitizer_common/sanitizer_linux_s390.cpp @@ -27,7 +27,7 @@ namespace __sanitizer { // --------------- sanitizer_libc.h uptr internal_mmap(void *addr, uptr length, int prot, int flags, int fd, - OFF_T offset) { + u64 offset) { struct s390_mmap_params { unsigned long addr; unsigned long length; diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_netbsd.cpp b/compiler-rt/lib/sanitizer_common/sanitizer_netbsd.cpp index 4e74f6a..49a951e 100644 --- a/compiler-rt/lib/sanitizer_common/sanitizer_netbsd.cpp +++ b/compiler-rt/lib/sanitizer_common/sanitizer_netbsd.cpp @@ -95,7 +95,7 @@ static void *GetRealLibcAddress(const char *symbol) { // --------------- sanitizer_libc.h uptr internal_mmap(void *addr, uptr length, int prot, int flags, int fd, - OFF_T offset) { + u64 offset) { CHECK(&__mmap); return (uptr)__mmap(addr, length, prot, flags, fd, 0, offset); } diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_posix.h b/compiler-rt/lib/sanitizer_common/sanitizer_posix.h index 05fb0f6..70c71f0 100644 --- a/compiler-rt/lib/sanitizer_common/sanitizer_posix.h +++ b/compiler-rt/lib/sanitizer_common/sanitizer_posix.h @@ -39,7 +39,7 @@ uptr internal_write(fd_t fd, const void *buf, uptr count); // Memory uptr internal_mmap(void *addr, uptr length, int prot, int flags, - int fd, OFF_T offset); + int fd, u64 offset); uptr internal_munmap(void *addr, uptr length); int internal_mprotect(void *addr, uptr length, int prot); diff --git a/compiler-rt/lib/sanitizer_common/symbolizer/sanitizer_wrappers.cpp b/compiler-rt/lib/sanitizer_common/symbolizer/sanitizer_wrappers.cpp index ac351d3..d3c59e3 100644 --- a/compiler-rt/lib/sanitizer_common/symbolizer/sanitizer_wrappers.cpp +++ b/compiler-rt/lib/sanitizer_common/symbolizer/sanitizer_wrappers.cpp @@ -19,13 +19,6 @@ #include -// Need to match ../sanitizer_common/sanitizer_internal_defs.h -#if defined(ARCH_PPC) -#define OFF_T unsigned long -#else -#define OFF_T unsigned long long -#endif - namespace __sanitizer { unsigned long internal_open(const char *filename, int flags); unsigned long internal_open(const char *filename, int flags, unsigned mode); @@ -35,7 +28,7 @@ unsigned long internal_lstat(const char *path, void *buf); unsigned long internal_fstat(int fd, void *buf); size_t internal_strlen(const char *s); unsigned long internal_mmap(void *addr, unsigned long length, int prot, - int flags, int fd, OFF_T offset); + int flags, int fd, unsigned long long offset); void *internal_memcpy(void *dest, const void *src, unsigned long n); // Used to propagate errno. bool internal_iserror(unsigned long retval, int *rverrno = 0); -- 2.7.4