Browse Source
[dynarmic] remove MCL_ARCHITECTURE macros; fix unreachable macro builtin (#2889 )
Eventually we shall use std::unreachable() ONCE all platforms support it :)
Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2889
Reviewed-by: crueter <crueter@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>
pull/2978/head
lizzie
2 months ago
committed by
crueter
No known key found for this signature in database
GPG Key ID: 425ACD2D4830EBC6
4 changed files with
9 additions and
52 deletions
src/dynarmic/src/dynarmic/backend/exception_handler_posix.cpp
src/dynarmic/src/dynarmic/backend/x64/emit_x64_floating_point.cpp
src/dynarmic/src/dynarmic/backend/x64/emit_x64_vector_floating_point.cpp
src/dynarmic/src/dynarmic/backend/x64/emit_x64_vector_saturation.cpp
@ -188,15 +188,15 @@ private:
ExceptionHandler : : ExceptionHandler ( ) = default ;
ExceptionHandler : : ~ ExceptionHandler ( ) = default ;
# if defined(MCL_ARCHITECTURE_X 86_64)
# if defined(ARCHITECTURE_x 86_64)
void ExceptionHandler : : Register ( X64 : : BlockOfCode & code ) {
impl = std : : make_unique < Impl > ( std : : bit_cast < u64 > ( code . getCode ( ) ) , code . GetTotalCodeSize ( ) ) ;
}
# elif defined(MCL_ARCHITECTURE_ARM 64)
# elif defined(ARCHITECTURE_arm 64)
void ExceptionHandler : : Register ( oaknut : : CodeBlock & mem , std : : size_t size ) {
impl = std : : make_unique < Impl > ( std : : bit_cast < u64 > ( mem . ptr ( ) ) , size ) ;
}
# elif defined(MCL_ARCHITECTURE_RISCV )
# elif defined(ARCHITECTURE_riscv64 )
void ExceptionHandler : : Register ( RV64 : : CodeBlock & mem , std : : size_t size ) {
impl = std : : make_unique < Impl > ( std : : bit_cast < u64 > ( mem . ptr < u64 > ( ) ) , size ) ;
}
@ -36,22 +36,8 @@
# include "dynarmic/ir/basic_block.h"
# include "dynarmic/ir/microinstruction.h"
# define FCODE(NAME) \
[ & code ] ( auto . . . args ) { \
if constexpr ( fsize = = 32 ) { \
code . NAME # # s ( args . . . ) ; \
} else { \
code . NAME # # d ( args . . . ) ; \
} \
}
# define ICODE(NAME) \
[ & code ] ( auto . . . args ) { \
if constexpr ( fsize = = 32 ) { \
code . NAME # # d ( args . . . ) ; \
} else { \
code . NAME # # q ( args . . . ) ; \
} \
}
# define FCODE(NAME) [&](auto... args) { if (fsize == 32) code.NAME##s(args...); else code.NAME##d(args...); }
# define ICODE(NAME) [&](auto... args) { if (fsize == 32) code.NAME##d(args...); else code.NAME##q(args...); }
namespace Dynarmic : : Backend : : X64 {
@ -36,22 +36,8 @@
# include "dynarmic/ir/basic_block.h"
# include "dynarmic/ir/microinstruction.h"
# define FCODE(NAME) \
[ & code ] ( auto . . . args ) { \
if constexpr ( fsize = = 32 ) { \
code . NAME # # s ( args . . . ) ; \
} else { \
code . NAME # # d ( args . . . ) ; \
} \
}
# define ICODE(NAME) \
[ & code ] ( auto . . . args ) { \
if constexpr ( fsize = = 32 ) { \
code . NAME # # d ( args . . . ) ; \
} else { \
code . NAME # # q ( args . . . ) ; \
} \
}
# define FCODE(NAME) [&](auto... args) { if (fsize == 32) code.NAME##s(args...); else code.NAME##d(args...); }
# define ICODE(NAME) [&](auto... args) { if (fsize == 32) code.NAME##d(args...); else code.NAME##q(args...); }
namespace Dynarmic : : Backend : : X64 {
@ -14,23 +14,8 @@
# include "dynarmic/ir/microinstruction.h"
# include "dynarmic/ir/opcodes.h"
# define FCODE(NAME) \
[ & code ] ( auto . . . args ) { \
if constexpr ( esize = = 32 ) { \
code . NAME # # s ( args . . . ) ; \
} else { \
code . NAME # # d ( args . . . ) ; \
} \
}
# define ICODE(NAME) \
[ & code ] ( auto . . . args ) { \
if constexpr ( esize = = 32 ) { \
code . NAME # # d ( args . . . ) ; \
} else { \
code . NAME # # q ( args . . . ) ; \
} \
}
# define FCODE(NAME) [&](auto... args) { if (esize == 32) code.NAME##s(args...); else code.NAME##d(args...); }
# define ICODE(NAME) [&](auto... args) { if (esize == 32) code.NAME##d(args...); else code.NAME##q(args...); }
namespace Dynarmic : : Backend : : X64 {