From e674b377104858d5068231dbe395e1038ba5d71d Mon Sep 17 00:00:00 2001 From: LDj3SNuD <35856442+LDj3SNuD@users.noreply.github.com> Date: Tue, 23 Oct 2018 16:12:45 +0200 Subject: Fix Fcvtl_V and Fcvtn_V; fix half to float conv. and add float to half conv. (full FP emu.). Add 4 FP Tests. (#468) * Update CpuTest.cs * Update CpuTestSimd.cs * Superseded. * Update AInstEmitSimdCvt.cs * Update ASoftFloat.cs * Nit. * Update PackageReferences. * Update AInstEmitSimdArithmetic.cs * Update AVectorHelper.cs * Update ASoftFloat.cs * Update ASoftFallback.cs * Update AThreadState.cs * Create FPType.cs * Create FPExc.cs * Create FPCR.cs * Create FPSR.cs * Update ARoundMode.cs * Update APState.cs * Avoid an unwanted implicit cast of the operator >= to long, continuing to check for negative values. Remove a leftover. * Nits. --- ChocolArm64/Instruction/AInstEmitSimdHelper.cs | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'ChocolArm64/Instruction/AInstEmitSimdHelper.cs') diff --git a/ChocolArm64/Instruction/AInstEmitSimdHelper.cs b/ChocolArm64/Instruction/AInstEmitSimdHelper.cs index dd39f52d..ff082831 100644 --- a/ChocolArm64/Instruction/AInstEmitSimdHelper.cs +++ b/ChocolArm64/Instruction/AInstEmitSimdHelper.cs @@ -1274,8 +1274,6 @@ namespace ChocolArm64.Instruction { ThrowIfInvalid(Index, Size); - IAOpCodeSimd Op = (IAOpCodeSimd)Context.CurrOp; - Context.EmitLdvec(Reg); Context.EmitLdc_I4(Index); Context.EmitLdc_I4(Size); @@ -1470,12 +1468,12 @@ namespace ChocolArm64.Instruction private static void ThrowIfInvalid(int Index, int Size) { - if ((uint)Size > 3) + if ((uint)Size > 3u) { throw new ArgumentOutOfRangeException(nameof(Size)); } - if ((uint)Index >= 16 >> Size) + if ((uint)Index >= 16u >> Size) { throw new ArgumentOutOfRangeException(nameof(Index)); } @@ -1483,12 +1481,12 @@ namespace ChocolArm64.Instruction private static void ThrowIfInvalidF(int Index, int Size) { - if ((uint)Size > 1) + if ((uint)Size > 1u) { throw new ArgumentOutOfRangeException(nameof(Size)); } - if ((uint)Index >= 4 >> Size) + if ((uint)Index >= 4u >> Size) { throw new ArgumentOutOfRangeException(nameof(Index)); } -- cgit v1.2.3