Update InstEmitSimdArithmetic.cs
This commit is contained in:
parent
57054e310f
commit
27e4e46da8
1 changed files with 22 additions and 22 deletions
|
@ -203,7 +203,7 @@ namespace ChocolArm64.Instructions
|
|||
public static void Fadd_S(ILEmitterCtx context)
|
||||
{
|
||||
if (Optimizations.FastFP && Optimizations.UseSse
|
||||
&& Optimizations.UseSse2)
|
||||
&& Optimizations.UseSse2)
|
||||
{
|
||||
EmitScalarSseOrSse2OpF(context, nameof(Sse.AddScalar));
|
||||
}
|
||||
|
@ -219,7 +219,7 @@ namespace ChocolArm64.Instructions
|
|||
public static void Fadd_V(ILEmitterCtx context)
|
||||
{
|
||||
if (Optimizations.FastFP && Optimizations.UseSse
|
||||
&& Optimizations.UseSse2)
|
||||
&& Optimizations.UseSse2)
|
||||
{
|
||||
EmitVectorSseOrSse2OpF(context, nameof(Sse.Add));
|
||||
}
|
||||
|
@ -254,7 +254,7 @@ namespace ChocolArm64.Instructions
|
|||
public static void Fdiv_S(ILEmitterCtx context)
|
||||
{
|
||||
if (Optimizations.FastFP && Optimizations.UseSse
|
||||
&& Optimizations.UseSse2)
|
||||
&& Optimizations.UseSse2)
|
||||
{
|
||||
EmitScalarSseOrSse2OpF(context, nameof(Sse.DivideScalar));
|
||||
}
|
||||
|
@ -270,7 +270,7 @@ namespace ChocolArm64.Instructions
|
|||
public static void Fdiv_V(ILEmitterCtx context)
|
||||
{
|
||||
if (Optimizations.FastFP && Optimizations.UseSse
|
||||
&& Optimizations.UseSse2)
|
||||
&& Optimizations.UseSse2)
|
||||
{
|
||||
EmitVectorSseOrSse2OpF(context, nameof(Sse.Divide));
|
||||
}
|
||||
|
@ -304,7 +304,7 @@ namespace ChocolArm64.Instructions
|
|||
|
||||
EmitVectorZero32_128(context, op.Rd);
|
||||
}
|
||||
else /* if (Op.Size == 1) */
|
||||
else /* if (op.Size == 1) */
|
||||
{
|
||||
Type[] typesMulAdd = new Type[] { typeof(Vector128<double>), typeof(Vector128<double>) };
|
||||
|
||||
|
@ -332,7 +332,7 @@ namespace ChocolArm64.Instructions
|
|||
public static void Fmax_S(ILEmitterCtx context)
|
||||
{
|
||||
if (Optimizations.FastFP && Optimizations.UseSse
|
||||
&& Optimizations.UseSse2)
|
||||
&& Optimizations.UseSse2)
|
||||
{
|
||||
EmitScalarSseOrSse2OpF(context, nameof(Sse.MaxScalar));
|
||||
}
|
||||
|
@ -348,7 +348,7 @@ namespace ChocolArm64.Instructions
|
|||
public static void Fmax_V(ILEmitterCtx context)
|
||||
{
|
||||
if (Optimizations.FastFP && Optimizations.UseSse
|
||||
&& Optimizations.UseSse2)
|
||||
&& Optimizations.UseSse2)
|
||||
{
|
||||
EmitVectorSseOrSse2OpF(context, nameof(Sse.Max));
|
||||
}
|
||||
|
@ -388,7 +388,7 @@ namespace ChocolArm64.Instructions
|
|||
public static void Fmin_S(ILEmitterCtx context)
|
||||
{
|
||||
if (Optimizations.FastFP && Optimizations.UseSse
|
||||
&& Optimizations.UseSse2)
|
||||
&& Optimizations.UseSse2)
|
||||
{
|
||||
EmitScalarSseOrSse2OpF(context, nameof(Sse.MinScalar));
|
||||
}
|
||||
|
@ -404,7 +404,7 @@ namespace ChocolArm64.Instructions
|
|||
public static void Fmin_V(ILEmitterCtx context)
|
||||
{
|
||||
if (Optimizations.FastFP && Optimizations.UseSse
|
||||
&& Optimizations.UseSse2)
|
||||
&& Optimizations.UseSse2)
|
||||
{
|
||||
EmitVectorSseOrSse2OpF(context, nameof(Sse.Min));
|
||||
}
|
||||
|
@ -516,7 +516,7 @@ namespace ChocolArm64.Instructions
|
|||
|
||||
EmitVectorZero32_128(context, op.Rd);
|
||||
}
|
||||
else /* if (Op.Size == 1) */
|
||||
else /* if (op.Size == 1) */
|
||||
{
|
||||
Type[] typesMulSub = new Type[] { typeof(Vector128<double>), typeof(Vector128<double>) };
|
||||
|
||||
|
@ -544,7 +544,7 @@ namespace ChocolArm64.Instructions
|
|||
public static void Fmul_S(ILEmitterCtx context)
|
||||
{
|
||||
if (Optimizations.FastFP && Optimizations.UseSse
|
||||
&& Optimizations.UseSse2)
|
||||
&& Optimizations.UseSse2)
|
||||
{
|
||||
EmitScalarSseOrSse2OpF(context, nameof(Sse.MultiplyScalar));
|
||||
}
|
||||
|
@ -565,7 +565,7 @@ namespace ChocolArm64.Instructions
|
|||
public static void Fmul_V(ILEmitterCtx context)
|
||||
{
|
||||
if (Optimizations.FastFP && Optimizations.UseSse
|
||||
&& Optimizations.UseSse2)
|
||||
&& Optimizations.UseSse2)
|
||||
{
|
||||
EmitVectorSseOrSse2OpF(context, nameof(Sse.Multiply));
|
||||
}
|
||||
|
@ -715,7 +715,7 @@ namespace ChocolArm64.Instructions
|
|||
|
||||
EmitVectorZero32_128(context, op.Rd);
|
||||
}
|
||||
else /* if (SizeF == 1) */
|
||||
else /* if (sizeF == 1) */
|
||||
{
|
||||
Type[] typesSsv = new Type[] { typeof(double) };
|
||||
Type[] typesMulSub = new Type[] { typeof(Vector128<double>), typeof(Vector128<double>) };
|
||||
|
@ -772,7 +772,7 @@ namespace ChocolArm64.Instructions
|
|||
EmitVectorZeroUpper(context, op.Rd);
|
||||
}
|
||||
}
|
||||
else /* if (SizeF == 1) */
|
||||
else /* if (sizeF == 1) */
|
||||
{
|
||||
Type[] typesSav = new Type[] { typeof(double) };
|
||||
Type[] typesMulSub = new Type[] { typeof(Vector128<double>), typeof(Vector128<double>) };
|
||||
|
@ -1016,7 +1016,7 @@ namespace ChocolArm64.Instructions
|
|||
|
||||
EmitVectorZero32_128(context, op.Rd);
|
||||
}
|
||||
else /* if (SizeF == 1) */
|
||||
else /* if (sizeF == 1) */
|
||||
{
|
||||
Type[] typesSsv = new Type[] { typeof(double) };
|
||||
Type[] typesMulSub = new Type[] { typeof(Vector128<double>), typeof(Vector128<double>) };
|
||||
|
@ -1043,7 +1043,7 @@ namespace ChocolArm64.Instructions
|
|||
{
|
||||
EmitScalarBinaryOpF(context, () =>
|
||||
{
|
||||
EmitSoftFloatCall(context, nameof(SoftFloat32.FprSqrtStepFused));
|
||||
EmitSoftFloatCall(context, nameof(SoftFloat32.FPRSqrtStepFused));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@ -1081,7 +1081,7 @@ namespace ChocolArm64.Instructions
|
|||
EmitVectorZeroUpper(context, op.Rd);
|
||||
}
|
||||
}
|
||||
else /* if (SizeF == 1) */
|
||||
else /* if (sizeF == 1) */
|
||||
{
|
||||
Type[] typesSav = new Type[] { typeof(double) };
|
||||
Type[] typesMulSub = new Type[] { typeof(Vector128<double>), typeof(Vector128<double>) };
|
||||
|
@ -1106,7 +1106,7 @@ namespace ChocolArm64.Instructions
|
|||
{
|
||||
EmitVectorBinaryOpF(context, () =>
|
||||
{
|
||||
EmitSoftFloatCall(context, nameof(SoftFloat32.FprSqrtStepFused));
|
||||
EmitSoftFloatCall(context, nameof(SoftFloat32.FPRSqrtStepFused));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@ -1114,7 +1114,7 @@ namespace ChocolArm64.Instructions
|
|||
public static void Fsqrt_S(ILEmitterCtx context)
|
||||
{
|
||||
if (Optimizations.FastFP && Optimizations.UseSse
|
||||
&& Optimizations.UseSse2)
|
||||
&& Optimizations.UseSse2)
|
||||
{
|
||||
EmitScalarSseOrSse2OpF(context, nameof(Sse.SqrtScalar));
|
||||
}
|
||||
|
@ -1130,7 +1130,7 @@ namespace ChocolArm64.Instructions
|
|||
public static void Fsqrt_V(ILEmitterCtx context)
|
||||
{
|
||||
if (Optimizations.FastFP && Optimizations.UseSse
|
||||
&& Optimizations.UseSse2)
|
||||
&& Optimizations.UseSse2)
|
||||
{
|
||||
EmitVectorSseOrSse2OpF(context, nameof(Sse.Sqrt));
|
||||
}
|
||||
|
@ -1146,7 +1146,7 @@ namespace ChocolArm64.Instructions
|
|||
public static void Fsub_S(ILEmitterCtx context)
|
||||
{
|
||||
if (Optimizations.FastFP && Optimizations.UseSse
|
||||
&& Optimizations.UseSse2)
|
||||
&& Optimizations.UseSse2)
|
||||
{
|
||||
EmitScalarSseOrSse2OpF(context, nameof(Sse.SubtractScalar));
|
||||
}
|
||||
|
@ -1162,7 +1162,7 @@ namespace ChocolArm64.Instructions
|
|||
public static void Fsub_V(ILEmitterCtx context)
|
||||
{
|
||||
if (Optimizations.FastFP && Optimizations.UseSse
|
||||
&& Optimizations.UseSse2)
|
||||
&& Optimizations.UseSse2)
|
||||
{
|
||||
EmitVectorSseOrSse2OpF(context, nameof(Sse.Subtract));
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue