aboutsummaryrefslogtreecommitdiff
path: root/src/common/assert.h
diff options
context:
space:
mode:
authorlizzie <lizzie@eden-emu.dev>2025-11-03 21:07:30 +0100
committercrueter <crueter@eden-emu.dev>2025-11-03 21:07:30 +0100
commit8a7fe32a2c3a214739fc8f631e96c56b883d673a (patch)
tree082784000ce317799aedba572163b3071b010fbe /src/common/assert.h
parent4b0bcfb0f7d5187951afdca1b3f442cb6d925721 (diff)
[common] Do not expose platform specific Crash() macro that is only used ever once (#2909)
thing is only ever used once and its also platform specific... uh Signed-off-by: lizzie <lizzie@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2909 Reviewed-by: crueter <crueter@eden-emu.dev> Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev> Reviewed-by: MaranBr <maranbr@eden-emu.dev> Reviewed-by: Caio Oliveira <caiooliveirafarias0@gmail.com> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
Diffstat (limited to 'src/common/assert.h')
-rw-r--r--src/common/assert.h23
1 files changed, 13 insertions, 10 deletions
diff --git a/src/common/assert.h b/src/common/assert.h
index 67e7e93751..93965c2ec9 100644
--- a/src/common/assert.h
+++ b/src/common/assert.h
@@ -1,3 +1,6 @@
+// SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project
+// SPDX-License-Identifier: GPL-3.0-or-later
+
// SPDX-FileCopyrightText: 2013 Dolphin Emulator Project
// SPDX-FileCopyrightText: 2014 Citra Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
@@ -10,8 +13,8 @@
// However touching this file yields a global recompilation as this header is included almost
// everywhere. So let's just move the handling of the failed assert to a single cpp file.
-void assert_fail_impl();
-[[noreturn]] void unreachable_impl();
+void AssertFailSoftImpl();
+[[noreturn]] void AssertFatalImpl();
#ifdef _MSC_VER
#define YUZU_NO_INLINE __declspec(noinline)
@@ -22,29 +25,29 @@ void assert_fail_impl();
#define ASSERT(_a_) \
([&]() YUZU_NO_INLINE { \
if (!(_a_)) [[unlikely]] { \
- LOG_CRITICAL(Debug, "Assertion Failed!"); \
- assert_fail_impl(); \
+ LOG_CRITICAL(Debug, "Assert"); \
+ AssertFailSoftImpl(); \
} \
}())
#define ASSERT_MSG(_a_, ...) \
([&]() YUZU_NO_INLINE { \
if (!(_a_)) [[unlikely]] { \
- LOG_CRITICAL(Debug, "Assertion Failed!\n" __VA_ARGS__); \
- assert_fail_impl(); \
+ LOG_CRITICAL(Debug, "Assert\n" __VA_ARGS__); \
+ AssertFailSoftImpl(); \
} \
}())
#define UNREACHABLE() \
do { \
- LOG_CRITICAL(Debug, "Unreachable code!"); \
- unreachable_impl(); \
+ LOG_CRITICAL(Debug, "Unreachable"); \
+ AssertFatalImpl(); \
} while (0)
#define UNREACHABLE_MSG(...) \
do { \
- LOG_CRITICAL(Debug, "Unreachable code!\n" __VA_ARGS__); \
- unreachable_impl(); \
+ LOG_CRITICAL(Debug, "Unreachable\n" __VA_ARGS__); \
+ AssertFatalImpl(); \
} while (0)
#ifdef _DEBUG