Add initial XRay support for NetBSD

Summary:
Reuse the existing FreeBSD code as it is.

Sponsored by <The NetBSD Foundation>

Reviewers: dberris, rnk, vitalybuka

Reviewed By: dberris

Subscribers: mclow.lists, emaste, mgorny, llvm-commits, #sanitizers

Tags: #sanitizers

Differential Revision: https://reviews.llvm.org/D43370

llvm-svn: 325345
This commit is contained in:
Kamil Rytarowski 2018-02-16 14:45:20 +00:00
parent c5105f9e3c
commit bab5252789
3 changed files with 5 additions and 4 deletions

View File

@ -597,7 +597,7 @@ else()
endif()
if (COMPILER_RT_HAS_SANITIZER_COMMON AND XRAY_SUPPORTED_ARCH AND
OS_NAME MATCHES "Darwin|Linux|FreeBSD")
OS_NAME MATCHES "Darwin|Linux|FreeBSD|NetBSD")
set(COMPILER_RT_HAS_XRAY TRUE)
else()
set(COMPILER_RT_HAS_XRAY FALSE)

View File

@ -3,7 +3,8 @@
#include "xray_defs.h"
#include "xray_interface_internal.h"
#if SANITIZER_FREEBSD
#if SANITIZER_FREEBSD || SANITIZER_NETBSD
#include <sys/types.h>
#include <sys/sysctl.h>
#endif
@ -76,7 +77,7 @@ uint64_t getTSCFrequency() XRAY_NEVER_INSTRUMENT {
}
return TSCFrequency == -1 ? 0 : static_cast<uint64_t>(TSCFrequency);
}
#elif SANITIZER_FREEBSD
#elif SANITIZER_FREEBSD || SANITIZER_NETBSD
uint64_t getTSCFrequency() XRAY_NEVER_INSTRUMENT {
long long TSCFrequency = -1;
size_t tscfreqsz = sizeof(TSCFrequency);

View File

@ -45,7 +45,7 @@ config.substitutions.append(
# Default test suffixes.
config.suffixes = ['.c', '.cc', '.cpp']
if config.host_os not in ['FreeBSD', 'Linux']:
if config.host_os not in ['FreeBSD', 'Linux', 'NetBSD']:
config.unsupported = True
elif '64' not in config.host_arch:
if 'arm' in config.host_arch: