From 1ae690ba2f407042456207d40e425f8b1f900863 Mon Sep 17 00:00:00 2001 From: riperiperi Date: Wed, 29 Sep 2021 00:21:30 +0100 Subject: Use normal memory store path for DC ZVA (#2693) Seems like this is used as an optimized way to clear memory in homebrew applications. Unfortunately, calling the software fallback method every 8 bytes was not very optimal. The existing EmitStore is used by passing in ZR as the register to get a 0 write. --- ARMeilleure/Instructions/InstEmitSystem.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'ARMeilleure/Instructions/InstEmitSystem.cs') diff --git a/ARMeilleure/Instructions/InstEmitSystem.cs b/ARMeilleure/Instructions/InstEmitSystem.cs index a5278a27..60c71f96 100644 --- a/ARMeilleure/Instructions/InstEmitSystem.cs +++ b/ARMeilleure/Instructions/InstEmitSystem.cs @@ -91,7 +91,7 @@ namespace ARMeilleure.Instructions { Operand address = context.Add(t, Const(offset)); - context.Call(typeof(NativeInterface).GetMethod(nameof(NativeInterface.WriteUInt64)), address, Const(0L)); + InstEmitMemoryHelper.EmitStore(context, address, RegisterConsts.ZeroIndex, 3); } break; -- cgit v1.2.3