mirror of
https://github.com/RPCSX/llvm.git
synced 2025-02-02 02:22:31 +00:00
Turn LLVM_ENABLE_ABI_BREAKING_CHECKS into a 0/1 definition like
LLVM_ENABLE_THREADS. Include llvm-config.h explicitly in headers to make sure that the definition is available. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@282907 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
59fe6b08fa
commit
189d5c4135
@ -22,22 +22,7 @@
|
||||
|
||||
namespace llvm {
|
||||
|
||||
#ifndef LLVM_ENABLE_ABI_BREAKING_CHECKS
|
||||
|
||||
class DebugEpochBase {
|
||||
public:
|
||||
void incrementEpoch() {}
|
||||
|
||||
class HandleBase {
|
||||
public:
|
||||
HandleBase() = default;
|
||||
explicit HandleBase(const DebugEpochBase *) {}
|
||||
bool isHandleInSync() const { return true; }
|
||||
const void *getEpochAddress() const { return nullptr; }
|
||||
};
|
||||
};
|
||||
|
||||
#else
|
||||
#if LLVM_ENABLE_ABI_BREAKING_CHECKS
|
||||
|
||||
/// \brief A base class for data structure classes wishing to make iterators
|
||||
/// ("handles") pointing into themselves fail-fast. When building without
|
||||
@ -92,6 +77,21 @@ public:
|
||||
};
|
||||
};
|
||||
|
||||
#else
|
||||
|
||||
class DebugEpochBase {
|
||||
public:
|
||||
void incrementEpoch() {}
|
||||
|
||||
class HandleBase {
|
||||
public:
|
||||
HandleBase() = default;
|
||||
explicit HandleBase(const DebugEpochBase *) {}
|
||||
bool isHandleInSync() const { return true; }
|
||||
const void *getEpochAddress() const { return nullptr; }
|
||||
};
|
||||
};
|
||||
|
||||
#endif // LLVM_ENABLE_ABI_BREAKING_CHECKS
|
||||
|
||||
} // namespace llvm
|
||||
|
@ -10,6 +10,8 @@
|
||||
#ifndef LLVM_ADT_ILIST_NODE_OPTIONS_H
|
||||
#define LLVM_ADT_ILIST_NODE_OPTIONS_H
|
||||
|
||||
#include "llvm/Config/llvm-config.h"
|
||||
|
||||
#include <type_traits>
|
||||
|
||||
namespace llvm {
|
||||
@ -64,7 +66,7 @@ struct extract_sentinel_tracking<
|
||||
template <class Option1, class... Options>
|
||||
struct extract_sentinel_tracking<Option1, Options...>
|
||||
: extract_sentinel_tracking<Options...> {};
|
||||
#ifdef LLVM_ENABLE_ABI_BREAKING_CHECKS
|
||||
#if LLVM_ENABLE_ABI_BREAKING_CHECKS
|
||||
template <> struct extract_sentinel_tracking<> : std::true_type, is_implicit {};
|
||||
#else
|
||||
template <>
|
||||
|
@ -375,9 +375,8 @@
|
||||
/* Installation directory for documentation */
|
||||
#cmakedefine LLVM_DOCSDIR "${LLVM_DOCSDIR}"
|
||||
|
||||
/* Define if LLVM is built with asserts and checks that change the layout of
|
||||
client-visible data structures. */
|
||||
#cmakedefine LLVM_ENABLE_ABI_BREAKING_CHECKS
|
||||
/* Define to enable checks that alter the LLVM C++ ABI */
|
||||
#cmakedefine01 LLVM_ENABLE_ABI_BREAKING_CHECKS
|
||||
|
||||
/* Define if threads enabled */
|
||||
#cmakedefine01 LLVM_ENABLE_THREADS
|
||||
|
@ -26,9 +26,8 @@
|
||||
/* Installation directory for documentation */
|
||||
#cmakedefine LLVM_DOCSDIR "${LLVM_DOCSDIR}"
|
||||
|
||||
/* Define if LLVM is built with asserts and checks that change the layout of
|
||||
client-visible data structures. */
|
||||
#cmakedefine LLVM_ENABLE_ABI_BREAKING_CHECKS
|
||||
/* Define to enable checks that alter the LLVM C++ ABI */
|
||||
#cmakedefine01 LLVM_ENABLE_ABI_BREAKING_CHECKS
|
||||
|
||||
/* Define if threads enabled */
|
||||
#cmakedefine01 LLVM_ENABLE_THREADS
|
||||
|
@ -37,7 +37,7 @@ TEST(IListSentinelTest, DefaultConstructor) {
|
||||
Sentinel S;
|
||||
EXPECT_EQ(&S, LocalAccess::getPrev(S));
|
||||
EXPECT_EQ(&S, LocalAccess::getNext(S));
|
||||
#ifdef LLVM_ENABLE_ABI_BREAKING_CHECKS
|
||||
#if LLVM_ENABLE_ABI_BREAKING_CHECKS
|
||||
EXPECT_TRUE(S.isKnownSentinel());
|
||||
#else
|
||||
EXPECT_FALSE(S.isKnownSentinel());
|
||||
|
Loading…
x
Reference in New Issue
Block a user