added support for instruction ic ivau

This commit is contained in:
emuplz 2020-10-28 22:58:20 +00:00 committed by MerryMage
parent b841ce1df5
commit 8728444af8
10 changed files with 73 additions and 0 deletions

View file

@ -634,3 +634,20 @@ TEST_CASE("A64: Optimization failure when folding ADD", "[a64]") {
REQUIRE(jit.GetPstate() == 0x20000000);
REQUIRE(jit.GetVector(30) == Vector{0xf7f6f5f4, 0});
}
TEST_CASE("A64: IC", "[a64]") {
A64TestEnv env;
A64::Jit jit{A64::UserConfig{&env}};
env.code_mem.emplace_back(0xd50b7520); // ic ivau, x0
env.code_mem.emplace_back(0x14000000); // B .
jit.SetRegister(0, 0);
jit.SetPC(0);
env.ticks_left = 2;
jit.Run();
REQUIRE(jit.GetRegister(0) == 0);
REQUIRE(jit.GetPC() == 4);
}