forked from OSchip/llvm-project
compiler-rt: move all __GLIBC_PREREQ into own header file
Reviewers: eugenis Subscribers: dberris, #sanitizers, llvm-commits Tags: #sanitizers, #llvm Differential Revision: https://reviews.llvm.org/D68177 llvm-svn: 373283
This commit is contained in:
parent
f74f5f2568
commit
2d75ee9373
|
@ -17,15 +17,10 @@
|
|||
#define SANITIZER_GETAUXVAL_H
|
||||
|
||||
#include "sanitizer_platform.h"
|
||||
#include "sanitizer_glibc_version.h"
|
||||
|
||||
#if SANITIZER_LINUX || SANITIZER_FUCHSIA
|
||||
|
||||
# include <features.h>
|
||||
|
||||
# ifndef __GLIBC_PREREQ
|
||||
# define __GLIBC_PREREQ(x, y) 0
|
||||
# endif
|
||||
|
||||
# if __GLIBC_PREREQ(2, 16) || (SANITIZER_ANDROID && __ANDROID_API__ >= 21) || \
|
||||
SANITIZER_FUCHSIA
|
||||
# define SANITIZER_USE_GETAUXVAL 1
|
||||
|
|
|
@ -0,0 +1,26 @@
|
|||
//===-- sanitizer_glibc_version.h -----------------------------------------===//
|
||||
//
|
||||
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
||||
// See https://llvm.org/LICENSE.txt for license information.
|
||||
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// This file is a part of Sanitizer common code.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#ifndef SANITIZER_GLIBC_VERSION_H
|
||||
#define SANITIZER_GLIBC_VERSION_H
|
||||
|
||||
#include "sanitizer_platform.h"
|
||||
|
||||
#if (SANITIZER_POSIX && !SANITIZER_MAC) || SANITIZER_FUCHSIA
|
||||
#include <features.h>
|
||||
#endif
|
||||
|
||||
#ifndef __GLIBC_PREREQ
|
||||
#define __GLIBC_PREREQ(x, y) 0
|
||||
#endif
|
||||
|
||||
#endif
|
|
@ -23,6 +23,7 @@
|
|||
#include "sanitizer_flags.h"
|
||||
#include "sanitizer_freebsd.h"
|
||||
#include "sanitizer_getauxval.h"
|
||||
#include "sanitizer_glibc_version.h"
|
||||
#include "sanitizer_linux.h"
|
||||
#include "sanitizer_placement_new.h"
|
||||
#include "sanitizer_procmaps.h"
|
||||
|
@ -188,11 +189,7 @@ __attribute__((unused)) static bool GetLibcVersion(int *major, int *minor,
|
|||
static uptr g_tls_size;
|
||||
|
||||
#ifdef __i386__
|
||||
# ifndef __GLIBC_PREREQ
|
||||
# define CHECK_GET_TLS_STATIC_INFO_VERSION 1
|
||||
# else
|
||||
# define CHECK_GET_TLS_STATIC_INFO_VERSION (!__GLIBC_PREREQ(2, 27))
|
||||
# endif
|
||||
# define CHECK_GET_TLS_STATIC_INFO_VERSION (!__GLIBC_PREREQ(2, 27))
|
||||
#else
|
||||
# define CHECK_GET_TLS_STATIC_INFO_VERSION 0
|
||||
#endif
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "sanitizer_platform.h"
|
||||
#include "sanitizer_glibc_version.h"
|
||||
|
||||
#if SANITIZER_LINUX || SANITIZER_MAC
|
||||
// Tests in this file assume that off_t-dependent data structures match the
|
||||
|
@ -1005,10 +1006,6 @@ CHECK_SIZE_AND_OFFSET(cmsghdr, cmsg_len);
|
|||
CHECK_SIZE_AND_OFFSET(cmsghdr, cmsg_level);
|
||||
CHECK_SIZE_AND_OFFSET(cmsghdr, cmsg_type);
|
||||
|
||||
#ifndef __GLIBC_PREREQ
|
||||
#define __GLIBC_PREREQ(x, y) 0
|
||||
#endif
|
||||
|
||||
#if SANITIZER_LINUX && (__ANDROID_API__ >= 21 || __GLIBC_PREREQ (2, 14))
|
||||
CHECK_TYPE_SIZE(mmsghdr);
|
||||
CHECK_SIZE_AND_OFFSET(mmsghdr, msg_hdr);
|
||||
|
|
|
@ -19,12 +19,13 @@
|
|||
#include "sanitizer_internal_defs.h"
|
||||
#include "sanitizer_platform.h"
|
||||
|
||||
# define GET_LINK_MAP_BY_DLOPEN_HANDLE(handle) ((link_map*)(handle))
|
||||
|
||||
#ifndef __GLIBC_PREREQ
|
||||
#define __GLIBC_PREREQ(x, y) 0
|
||||
#if defined(__sparc__)
|
||||
// FIXME: This can't be included from tsan which does not support sparc yet.
|
||||
#include "sanitizer_glibc_version.h"
|
||||
#endif
|
||||
|
||||
# define GET_LINK_MAP_BY_DLOPEN_HANDLE(handle) ((link_map*)(handle))
|
||||
|
||||
namespace __sanitizer {
|
||||
extern unsigned struct_utsname_sz;
|
||||
extern unsigned struct_stat_sz;
|
||||
|
|
Loading…
Reference in New Issue