1 //===-- gwp_asan_definitions.h ----------------------------------*- C++ -*-===//
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
9 #ifndef GWP_ASAN_DEFINITIONS_H_
10 #define GWP_ASAN_DEFINITIONS_H_
12 #define TLS_INITIAL_EXEC __thread __attribute__((tls_model("initial-exec")))
16 #endif // defined(LIKELY)
17 #define LIKELY(X) __builtin_expect(!!(X), 1)
21 #endif // defined(UNLIKELY)
22 #define UNLIKELY(X) __builtin_expect(!!(X), 0)
26 #endif // defined(ALWAYS_INLINE)
27 #define ALWAYS_INLINE inline __attribute__((always_inline))
29 #endif // GWP_ASAN_DEFINITIONS_H_