From 36d9130592c7d45d50d9748f816b282c05e45967 Mon Sep 17 00:00:00 2001 From: gdkchan Date: Fri, 6 Apr 2018 01:41:54 -0300 Subject: Add FMLS (vector) instruction --- ChocolArm64/Instruction/AInstEmitSimdArithmetic.cs | 18 ++++++++++++++++++ ChocolArm64/Instruction/AInstEmitSimdCmp.cs | 20 -------------------- 2 files changed, 18 insertions(+), 20 deletions(-) (limited to 'ChocolArm64/Instruction') diff --git a/ChocolArm64/Instruction/AInstEmitSimdArithmetic.cs b/ChocolArm64/Instruction/AInstEmitSimdArithmetic.cs index 9fb33878..772b7955 100644 --- a/ChocolArm64/Instruction/AInstEmitSimdArithmetic.cs +++ b/ChocolArm64/Instruction/AInstEmitSimdArithmetic.cs @@ -224,6 +224,24 @@ namespace ChocolArm64.Instruction }); } + public static void Fmls_V(AILEmitterCtx Context) + { + EmitVectorTernaryOpF(Context, () => + { + Context.Emit(OpCodes.Mul); + Context.Emit(OpCodes.Sub); + }); + } + + public static void Fmls_Ve(AILEmitterCtx Context) + { + EmitVectorTernaryOpByElemF(Context, () => + { + Context.Emit(OpCodes.Mul); + Context.Emit(OpCodes.Sub); + }); + } + public static void Fmsub_S(AILEmitterCtx Context) { EmitScalarTernaryRaOpF(Context, () => diff --git a/ChocolArm64/Instruction/AInstEmitSimdCmp.cs b/ChocolArm64/Instruction/AInstEmitSimdCmp.cs index 43e8e949..a71b6d42 100644 --- a/ChocolArm64/Instruction/AInstEmitSimdCmp.cs +++ b/ChocolArm64/Instruction/AInstEmitSimdCmp.cs @@ -140,26 +140,6 @@ namespace ChocolArm64.Instruction EmitVectorFcmp(Context, OpCodes.Bgt_S); } - public static void Fcmhi_S(AILEmitterCtx Context) - { - EmitScalarFcmp(Context, OpCodes.Bgt_Un_S); - } - - public static void Fcmhi_V(AILEmitterCtx Context) - { - EmitVectorFcmp(Context, OpCodes.Bgt_Un_S); - } - - public static void Fcmhs_S(AILEmitterCtx Context) - { - EmitScalarFcmp(Context, OpCodes.Bge_Un_S); - } - - public static void Fcmhs_V(AILEmitterCtx Context) - { - EmitVectorFcmp(Context, OpCodes.Bge_Un_S); - } - public static void Fcmle_S(AILEmitterCtx Context) { EmitScalarFcmp(Context, OpCodes.Ble_S); -- cgit v1.2.3