common: Move assert failure handling into a cpp file.

Advantage: Altering the handler does not need a full recompilation.
Disadvantage: noreturn is droped, so the caller is a bit slower.

We quite often run yuzu with a YOLO assertion handler. In fact, only very few
games run at all with asserts. This patch allows developers to patch the handler
without recompiling everything. The overhead of the missing "noreturn" attribute
shoul be negletable.
This commit is contained in:
Markus Wick 2021-04-02 08:43:26 +02:00
parent b14441691b
commit 0372a0e723
3 changed files with 20 additions and 6 deletions

11
src/common/assert.cpp Normal file
View file

@ -0,0 +1,11 @@
// Copyright 2021 yuzu Emulator Project
// Licensed under GPLv2 or any later version
// Refer to the license.txt file included.
#include "common/assert.h"
#include "common/common_funcs.h"
void assert_handle_failure() {
Crash();
}