From 17db62c038de2e5070c324d1e132e4d796d55260 Mon Sep 17 00:00:00 2001 From: Alexey Gladkov Date: Fri, 16 Apr 2021 12:03:08 +0300 Subject: [PATCH] ALT: Disable NOMERGE attribute Signed-off-by: Alexey Gladkov --- base/compiler_specific.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/base/compiler_specific.h b/base/compiler_specific.h index 1ee80743e2f..b05b235ca54 100644 --- a/base/compiler_specific.h +++ b/base/compiler_specific.h @@ -321,21 +321,21 @@ inline constexpr bool AnalyzerAssumeTrue(bool arg) { #define ANALYZER_SKIP_THIS_PATH() static_cast(::AnalyzerNoReturn()) #else // !defined(__clang_analyzer__) #define ANALYZER_ASSUME_TRUE(arg) (arg) #define ANALYZER_SKIP_THIS_PATH() #endif // defined(__clang_analyzer__) // Use nomerge attribute to disable optimization of merging multiple same calls. -#if defined(__clang__) && __has_attribute(nomerge) +#if 0 && defined(__clang__) && __has_attribute(nomerge) #define NOMERGE [[clang::nomerge]] #else #define NOMERGE #endif // Marks a type as being eligible for the "trivial" ABI despite having a // non-trivial destructor or copy/move constructor. Such types can be relocated // after construction by simply copying their memory, which makes them eligible // to be passed in registers. The canonical example is std::unique_ptr. // -- 2.25.4