aboutsummaryrefslogtreecommitdiff
path: root/src/dynarmic/tests/decoder_tests.cpp
diff options
context:
space:
mode:
authorlizzie <lizzie@eden-emu.dev>2026-01-31 00:21:45 +0100
committercrueter <crueter@eden-emu.dev>2026-01-31 00:21:45 +0100
commitdf838a57fd5d1a118e310933b37e9aeb2d88327b (patch)
treed280aa90a44f5e36fe3ef448332499e0a929eb27 /src/dynarmic/tests/decoder_tests.cpp
parentb2b73ecb626d47eb80b1e749f1b25bb3ff840850 (diff)
[dynarmic] reduce CPU usage on Spooky Mansion by making blocks be page-sized and page-aligned; replace std::set<> with ankerl set in arm64 (#3253)
reduces CPU usage by about 10-20%, may be placebo Signed-off-by: lizzie lizzie@eden-emu.dev Co-authored-by: Caio Oliveira <caiooliveirafarias0@gmail.com> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3253 Reviewed-by: Maufeat <sahyno1996@gmail.com> Reviewed-by: DraVee <dravee@eden-emu.dev> Reviewed-by: MaranBr <maranbr@eden-emu.dev> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
Diffstat (limited to 'src/dynarmic/tests/decoder_tests.cpp')
-rw-r--r--src/dynarmic/tests/decoder_tests.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/dynarmic/tests/decoder_tests.cpp b/src/dynarmic/tests/decoder_tests.cpp
index 4ad9d90833..1b406fd915 100644
--- a/src/dynarmic/tests/decoder_tests.cpp
+++ b/src/dynarmic/tests/decoder_tests.cpp
@@ -1,4 +1,4 @@
-// SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project
+// SPDX-FileCopyrightText: Copyright 2026 Eden Emulator Project
// SPDX-License-Identifier: GPL-3.0-or-later
/* This file is part of the dynarmic project.
@@ -36,9 +36,9 @@ TEST_CASE("ASIMD Decoder: Ensure table order correctness", "[decode][a32][.]") {
const auto is_decode_error = [&get_ir](const A32::ASIMDMatcher<A32::TranslatorVisitor>& matcher, u32 instruction) {
const auto block = get_ir(matcher, instruction);
- return std::find_if(block.cbegin(), block.cend(), [](auto const& e) {
+ return std::find_if(block.instructions.cbegin(), block.instructions.cend(), [](auto const& e) {
return e.GetOpcode() == IR::Opcode::A32ExceptionRaised && A32::Exception(e.GetArg(1).GetU64()) == A32::Exception::DecodeError;
- }) != block.cend();
+ }) != block.instructions.cend();
};
for (auto iter = table.cbegin(); iter != table.cend(); ++iter) {