Update AInstEmitSimdArithmetic.cs

This commit is contained in:
LDj3SNuD 2018-08-29 00:13:24 +02:00 committed by GitHub
commit c5ff4fac01
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1032,6 +1032,11 @@ namespace ChocolArm64.Instruction
EmitAddLongPairwise(Context, Signed: true, Accumulate: true); EmitAddLongPairwise(Context, Signed: true, Accumulate: true);
} }
public static void Saddl_V(AILEmitterCtx Context)
{
EmitVectorWidenRnRmBinaryOpSx(Context, () => Context.Emit(OpCodes.Add));
}
public static void Saddlp_V(AILEmitterCtx Context) public static void Saddlp_V(AILEmitterCtx Context)
{ {
EmitAddLongPairwise(Context, Signed: true, Accumulate: false); EmitAddLongPairwise(Context, Signed: true, Accumulate: false);
@ -1217,6 +1222,11 @@ namespace ChocolArm64.Instruction
}); });
} }
public static void Ssubl_V(AILEmitterCtx Context)
{
EmitVectorWidenRnRmBinaryOpSx(Context, () => Context.Emit(OpCodes.Sub));
}
public static void Ssubw_V(AILEmitterCtx Context) public static void Ssubw_V(AILEmitterCtx Context)
{ {
EmitVectorWidenRmBinaryOpSx(Context, () => Context.Emit(OpCodes.Sub)); EmitVectorWidenRmBinaryOpSx(Context, () => Context.Emit(OpCodes.Sub));
@ -1468,6 +1478,11 @@ namespace ChocolArm64.Instruction
EmitVectorSaturatingBinaryOpZx(Context, SaturatingFlags.Accumulate); EmitVectorSaturatingBinaryOpZx(Context, SaturatingFlags.Accumulate);
} }
public static void Usubl_V(AILEmitterCtx Context)
{
EmitVectorWidenRnRmBinaryOpZx(Context, () => Context.Emit(OpCodes.Sub));
}
public static void Usubw_V(AILEmitterCtx Context) public static void Usubw_V(AILEmitterCtx Context)
{ {
EmitVectorWidenRmBinaryOpZx(Context, () => Context.Emit(OpCodes.Sub)); EmitVectorWidenRmBinaryOpZx(Context, () => Context.Emit(OpCodes.Sub));