Replace unicorn bindings with Nuget package (#4378)

* Replace unicorn bindings with Nuget package

* Use nameof for ValueSource args

* Remove redundant code from test projects

* Fix wrong values for EmuStart()

Add notes to address this later again

* Improve formatting

* Fix formatting/alignment issues
This commit is contained in:
TSRBerry 2023-02-09 02:24:32 +01:00 committed by GitHub
parent b3f0978869
commit ec8d4f3af5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
64 changed files with 2276 additions and 3576 deletions

View file

@ -8,16 +8,15 @@ namespace Ryujinx.Tests.Cpu
public sealed class CpuTestAluRx : CpuTest
{
#if AluRx
private const int RndCnt = 2;
[Test, Pairwise, Description("ADD <Xd|SP>, <Xn|SP>, <X><m>{, <extend> {#<amount>}}")]
public void Add_X_64bit([Values(0u, 31u)] uint rd,
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x0000000000000000ul, 0x7FFFFFFFFFFFFFFFul,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] [Random(RndCnt)] ulong xnSp,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] ulong xnSp,
[Values((ulong)0x0000000000000000, (ulong)0x7FFFFFFFFFFFFFFF,
(ulong)0x8000000000000000, (ulong)0xFFFFFFFFFFFFFFFF)] [Random(RndCnt)] ulong xm,
0x8000000000000000, 0xFFFFFFFFFFFFFFFF)] ulong xm,
[Values(0b011u, 0b111u)] uint extend, // <LSL|UXTX, SXTX>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
{
@ -44,9 +43,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x0000000000000000ul, 0x7FFFFFFFFFFFFFFFul,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] [Random(RndCnt)] ulong xnSp,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] ulong xnSp,
[Values((uint)0x00000000, (uint)0x7FFFFFFF,
(uint)0x80000000, (uint)0xFFFFFFFF)] [Random(RndCnt)] uint wm,
0x80000000, 0xFFFFFFFF)] uint wm,
[Values(0b000u, 0b001u, 0b010u, // <UXTB, UXTH, UXTW,
0b100u, 0b101u, 0b110u)] uint extend, // SXTB, SXTH, SXTW>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -74,9 +73,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x0000000000000000ul, 0x7FFFFFFFFFFFFFFFul,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] [Random(RndCnt)] ulong xnSp,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] ulong xnSp,
[Values((ushort)0x0000, (ushort)0x7FFF,
(ushort)0x8000, (ushort)0xFFFF)] [Random(RndCnt)] ushort wm,
(ushort)0x8000, (ushort)0xFFFF)] ushort wm,
[Values(0b000u, 0b001u, 0b010u, // <UXTB, UXTH, UXTW,
0b100u, 0b101u, 0b110u)] uint extend, // SXTB, SXTH, SXTW>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -104,9 +103,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x0000000000000000ul, 0x7FFFFFFFFFFFFFFFul,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] [Random(RndCnt)] ulong xnSp,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] ulong xnSp,
[Values((byte)0x00, (byte)0x7F,
(byte)0x80, (byte)0xFF)] [Random(RndCnt)] byte wm,
(byte)0x80, (byte)0xFF)] byte wm,
[Values(0b000u, 0b001u, 0b010u, // <UXTB, UXTH, UXTW,
0b100u, 0b101u, 0b110u)] uint extend, // SXTB, SXTH, SXTW>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -134,9 +133,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x00000000u, 0x7FFFFFFFu,
0x80000000u, 0xFFFFFFFFu)] [Random(RndCnt)] uint wnWsp,
0x80000000u, 0xFFFFFFFFu)] uint wnWsp,
[Values((uint)0x00000000, (uint)0x7FFFFFFF,
(uint)0x80000000, (uint)0xFFFFFFFF)] [Random(RndCnt)] uint wm,
0x80000000, 0xFFFFFFFF)] uint wm,
[Values(0b000u, 0b001u, 0b010u, 0b011u, // <UXTB, UXTH, LSL|UXTW, UXTX,
0b100u, 0b101u, 0b110u, 0b111u)] uint extend, // SXTB, SXTH, SXTW, SXTX>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -164,9 +163,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x00000000u, 0x7FFFFFFFu,
0x80000000u, 0xFFFFFFFFu)] [Random(RndCnt)] uint wnWsp,
0x80000000u, 0xFFFFFFFFu)] uint wnWsp,
[Values((ushort)0x0000, (ushort)0x7FFF,
(ushort)0x8000, (ushort)0xFFFF)] [Random(RndCnt)] ushort wm,
(ushort)0x8000, (ushort)0xFFFF)] ushort wm,
[Values(0b000u, 0b001u, 0b010u, 0b011u, // <UXTB, UXTH, LSL|UXTW, UXTX,
0b100u, 0b101u, 0b110u, 0b111u)] uint extend, // SXTB, SXTH, SXTW, SXTX>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -194,9 +193,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x00000000u, 0x7FFFFFFFu,
0x80000000u, 0xFFFFFFFFu)] [Random(RndCnt)] uint wnWsp,
0x80000000u, 0xFFFFFFFFu)] uint wnWsp,
[Values((byte)0x00, (byte)0x7F,
(byte)0x80, (byte)0xFF)] [Random(RndCnt)] byte wm,
(byte)0x80, (byte)0xFF)] byte wm,
[Values(0b000u, 0b001u, 0b010u, 0b011u, // <UXTB, UXTH, LSL|UXTW, UXTX,
0b100u, 0b101u, 0b110u, 0b111u)] uint extend, // SXTB, SXTH, SXTW, SXTX>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -224,9 +223,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x0000000000000000ul, 0x7FFFFFFFFFFFFFFFul,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] [Random(RndCnt)] ulong xnSp,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] ulong xnSp,
[Values((ulong)0x0000000000000000, (ulong)0x7FFFFFFFFFFFFFFF,
(ulong)0x8000000000000000, (ulong)0xFFFFFFFFFFFFFFFF)] [Random(RndCnt)] ulong xm,
0x8000000000000000, 0xFFFFFFFFFFFFFFFF)] ulong xm,
[Values(0b011u, 0b111u)] uint extend, // <LSL|UXTX, SXTX>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
{
@ -244,9 +243,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x0000000000000000ul, 0x7FFFFFFFFFFFFFFFul,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] [Random(RndCnt)] ulong xnSp,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] ulong xnSp,
[Values((uint)0x00000000, (uint)0x7FFFFFFF,
(uint)0x80000000, (uint)0xFFFFFFFF)] [Random(RndCnt)] uint wm,
0x80000000, 0xFFFFFFFF)] uint wm,
[Values(0b000u, 0b001u, 0b010u, // <UXTB, UXTH, UXTW,
0b100u, 0b101u, 0b110u)] uint extend, // SXTB, SXTH, SXTW>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -265,9 +264,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x0000000000000000ul, 0x7FFFFFFFFFFFFFFFul,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] [Random(RndCnt)] ulong xnSp,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] ulong xnSp,
[Values((ushort)0x0000, (ushort)0x7FFF,
(ushort)0x8000, (ushort)0xFFFF)] [Random(RndCnt)] ushort wm,
(ushort)0x8000, (ushort)0xFFFF)] ushort wm,
[Values(0b000u, 0b001u, 0b010u, // <UXTB, UXTH, UXTW,
0b100u, 0b101u, 0b110u)] uint extend, // SXTB, SXTH, SXTW>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -286,9 +285,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x0000000000000000ul, 0x7FFFFFFFFFFFFFFFul,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] [Random(RndCnt)] ulong xnSp,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] ulong xnSp,
[Values((byte)0x00, (byte)0x7F,
(byte)0x80, (byte)0xFF)] [Random(RndCnt)] byte wm,
(byte)0x80, (byte)0xFF)] byte wm,
[Values(0b000u, 0b001u, 0b010u, // <UXTB, UXTH, UXTW,
0b100u, 0b101u, 0b110u)] uint extend, // SXTB, SXTH, SXTW>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -307,9 +306,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x00000000u, 0x7FFFFFFFu,
0x80000000u, 0xFFFFFFFFu)] [Random(RndCnt)] uint wnWsp,
0x80000000u, 0xFFFFFFFFu)] uint wnWsp,
[Values((uint)0x00000000, (uint)0x7FFFFFFF,
(uint)0x80000000, (uint)0xFFFFFFFF)] [Random(RndCnt)] uint wm,
0x80000000, 0xFFFFFFFF)] uint wm,
[Values(0b000u, 0b001u, 0b010u, 0b011u, // <UXTB, UXTH, LSL|UXTW, UXTX,
0b100u, 0b101u, 0b110u, 0b111u)] uint extend, // SXTB, SXTH, SXTW, SXTX>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -328,9 +327,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x00000000u, 0x7FFFFFFFu,
0x80000000u, 0xFFFFFFFFu)] [Random(RndCnt)] uint wnWsp,
0x80000000u, 0xFFFFFFFFu)] uint wnWsp,
[Values((ushort)0x0000, (ushort)0x7FFF,
(ushort)0x8000, (ushort)0xFFFF)] [Random(RndCnt)] ushort wm,
(ushort)0x8000, (ushort)0xFFFF)] ushort wm,
[Values(0b000u, 0b001u, 0b010u, 0b011u, // <UXTB, UXTH, LSL|UXTW, UXTX,
0b100u, 0b101u, 0b110u, 0b111u)] uint extend, // SXTB, SXTH, SXTW, SXTX>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -349,9 +348,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x00000000u, 0x7FFFFFFFu,
0x80000000u, 0xFFFFFFFFu)] [Random(RndCnt)] uint wnWsp,
0x80000000u, 0xFFFFFFFFu)] uint wnWsp,
[Values((byte)0x00, (byte)0x7F,
(byte)0x80, (byte)0xFF)] [Random(RndCnt)] byte wm,
(byte)0x80, (byte)0xFF)] byte wm,
[Values(0b000u, 0b001u, 0b010u, 0b011u, // <UXTB, UXTH, LSL|UXTW, UXTX,
0b100u, 0b101u, 0b110u, 0b111u)] uint extend, // SXTB, SXTH, SXTW, SXTX>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -370,9 +369,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x0000000000000000ul, 0x7FFFFFFFFFFFFFFFul,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] [Random(RndCnt)] ulong xnSp,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] ulong xnSp,
[Values((ulong)0x0000000000000000, (ulong)0x7FFFFFFFFFFFFFFF,
(ulong)0x8000000000000000, (ulong)0xFFFFFFFFFFFFFFFF)] [Random(RndCnt)] ulong xm,
0x8000000000000000, 0xFFFFFFFFFFFFFFFF)] ulong xm,
[Values(0b011u, 0b111u)] uint extend, // <LSL|UXTX, SXTX>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
{
@ -399,9 +398,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x0000000000000000ul, 0x7FFFFFFFFFFFFFFFul,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] [Random(RndCnt)] ulong xnSp,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] ulong xnSp,
[Values((uint)0x00000000, (uint)0x7FFFFFFF,
(uint)0x80000000, (uint)0xFFFFFFFF)] [Random(RndCnt)] uint wm,
0x80000000, 0xFFFFFFFF)] uint wm,
[Values(0b000u, 0b001u, 0b010u, // <UXTB, UXTH, UXTW,
0b100u, 0b101u, 0b110u)] uint extend, // SXTB, SXTH, SXTW>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -429,9 +428,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x0000000000000000ul, 0x7FFFFFFFFFFFFFFFul,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] [Random(RndCnt)] ulong xnSp,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] ulong xnSp,
[Values((ushort)0x0000, (ushort)0x7FFF,
(ushort)0x8000, (ushort)0xFFFF)] [Random(RndCnt)] ushort wm,
(ushort)0x8000, (ushort)0xFFFF)] ushort wm,
[Values(0b000u, 0b001u, 0b010u, // <UXTB, UXTH, UXTW,
0b100u, 0b101u, 0b110u)] uint extend, // SXTB, SXTH, SXTW>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -459,9 +458,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x0000000000000000ul, 0x7FFFFFFFFFFFFFFFul,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] [Random(RndCnt)] ulong xnSp,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] ulong xnSp,
[Values((byte)0x00, (byte)0x7F,
(byte)0x80, (byte)0xFF)] [Random(RndCnt)] byte wm,
(byte)0x80, (byte)0xFF)] byte wm,
[Values(0b000u, 0b001u, 0b010u, // <UXTB, UXTH, UXTW,
0b100u, 0b101u, 0b110u)] uint extend, // SXTB, SXTH, SXTW>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -489,9 +488,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x00000000u, 0x7FFFFFFFu,
0x80000000u, 0xFFFFFFFFu)] [Random(RndCnt)] uint wnWsp,
0x80000000u, 0xFFFFFFFFu)] uint wnWsp,
[Values((uint)0x00000000, (uint)0x7FFFFFFF,
(uint)0x80000000, (uint)0xFFFFFFFF)] [Random(RndCnt)] uint wm,
0x80000000, 0xFFFFFFFF)] uint wm,
[Values(0b000u, 0b001u, 0b010u, 0b011u, // <UXTB, UXTH, LSL|UXTW, UXTX,
0b100u, 0b101u, 0b110u, 0b111u)] uint extend, // SXTB, SXTH, SXTW, SXTX>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -519,9 +518,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x00000000u, 0x7FFFFFFFu,
0x80000000u, 0xFFFFFFFFu)] [Random(RndCnt)] uint wnWsp,
0x80000000u, 0xFFFFFFFFu)] uint wnWsp,
[Values((ushort)0x0000, (ushort)0x7FFF,
(ushort)0x8000, (ushort)0xFFFF)] [Random(RndCnt)] ushort wm,
(ushort)0x8000, (ushort)0xFFFF)] ushort wm,
[Values(0b000u, 0b001u, 0b010u, 0b011u, // <UXTB, UXTH, LSL|UXTW, UXTX,
0b100u, 0b101u, 0b110u, 0b111u)] uint extend, // SXTB, SXTH, SXTW, SXTX>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -549,9 +548,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x00000000u, 0x7FFFFFFFu,
0x80000000u, 0xFFFFFFFFu)] [Random(RndCnt)] uint wnWsp,
0x80000000u, 0xFFFFFFFFu)] uint wnWsp,
[Values((byte)0x00, (byte)0x7F,
(byte)0x80, (byte)0xFF)] [Random(RndCnt)] byte wm,
(byte)0x80, (byte)0xFF)] byte wm,
[Values(0b000u, 0b001u, 0b010u, 0b011u, // <UXTB, UXTH, LSL|UXTW, UXTX,
0b100u, 0b101u, 0b110u, 0b111u)] uint extend, // SXTB, SXTH, SXTW, SXTX>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -579,9 +578,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x0000000000000000ul, 0x7FFFFFFFFFFFFFFFul,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] [Random(RndCnt)] ulong xnSp,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] ulong xnSp,
[Values((ulong)0x0000000000000000, (ulong)0x7FFFFFFFFFFFFFFF,
(ulong)0x8000000000000000, (ulong)0xFFFFFFFFFFFFFFFF)] [Random(RndCnt)] ulong xm,
0x8000000000000000, 0xFFFFFFFFFFFFFFFF)] ulong xm,
[Values(0b011u, 0b111u)] uint extend, // <LSL|UXTX, SXTX>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
{
@ -599,9 +598,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x0000000000000000ul, 0x7FFFFFFFFFFFFFFFul,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] [Random(RndCnt)] ulong xnSp,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] ulong xnSp,
[Values((uint)0x00000000, (uint)0x7FFFFFFF,
(uint)0x80000000, (uint)0xFFFFFFFF)] [Random(RndCnt)] uint wm,
0x80000000, 0xFFFFFFFF)] uint wm,
[Values(0b000u, 0b001u, 0b010u, // <UXTB, UXTH, UXTW,
0b100u, 0b101u, 0b110u)] uint extend, // SXTB, SXTH, SXTW>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -620,9 +619,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x0000000000000000ul, 0x7FFFFFFFFFFFFFFFul,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] [Random(RndCnt)] ulong xnSp,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] ulong xnSp,
[Values((ushort)0x0000, (ushort)0x7FFF,
(ushort)0x8000, (ushort)0xFFFF)] [Random(RndCnt)] ushort wm,
(ushort)0x8000, (ushort)0xFFFF)] ushort wm,
[Values(0b000u, 0b001u, 0b010u, // <UXTB, UXTH, UXTW,
0b100u, 0b101u, 0b110u)] uint extend, // SXTB, SXTH, SXTW>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -641,9 +640,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x0000000000000000ul, 0x7FFFFFFFFFFFFFFFul,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] [Random(RndCnt)] ulong xnSp,
0x8000000000000000ul, 0xFFFFFFFFFFFFFFFFul)] ulong xnSp,
[Values((byte)0x00, (byte)0x7F,
(byte)0x80, (byte)0xFF)] [Random(RndCnt)] byte wm,
(byte)0x80, (byte)0xFF)] byte wm,
[Values(0b000u, 0b001u, 0b010u, // <UXTB, UXTH, UXTW,
0b100u, 0b101u, 0b110u)] uint extend, // SXTB, SXTH, SXTW>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -662,9 +661,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x00000000u, 0x7FFFFFFFu,
0x80000000u, 0xFFFFFFFFu)] [Random(RndCnt)] uint wnWsp,
0x80000000u, 0xFFFFFFFFu)] uint wnWsp,
[Values((uint)0x00000000, (uint)0x7FFFFFFF,
(uint)0x80000000, (uint)0xFFFFFFFF)] [Random(RndCnt)] uint wm,
0x80000000, 0xFFFFFFFF)] uint wm,
[Values(0b000u, 0b001u, 0b010u, 0b011u, // <UXTB, UXTH, LSL|UXTW, UXTX,
0b100u, 0b101u, 0b110u, 0b111u)] uint extend, // SXTB, SXTH, SXTW, SXTX>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -683,9 +682,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x00000000u, 0x7FFFFFFFu,
0x80000000u, 0xFFFFFFFFu)] [Random(RndCnt)] uint wnWsp,
0x80000000u, 0xFFFFFFFFu)] uint wnWsp,
[Values((ushort)0x0000, (ushort)0x7FFF,
(ushort)0x8000, (ushort)0xFFFF)] [Random(RndCnt)] ushort wm,
(ushort)0x8000, (ushort)0xFFFF)] ushort wm,
[Values(0b000u, 0b001u, 0b010u, 0b011u, // <UXTB, UXTH, LSL|UXTW, UXTX,
0b100u, 0b101u, 0b110u, 0b111u)] uint extend, // SXTB, SXTH, SXTW, SXTX>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -704,9 +703,9 @@ namespace Ryujinx.Tests.Cpu
[Values(1u, 31u)] uint rn,
[Values(2u, 31u)] uint rm,
[Values(0x00000000u, 0x7FFFFFFFu,
0x80000000u, 0xFFFFFFFFu)] [Random(RndCnt)] uint wnWsp,
0x80000000u, 0xFFFFFFFFu)] uint wnWsp,
[Values((byte)0x00, (byte)0x7F,
(byte)0x80, (byte)0xFF)] [Random(RndCnt)] byte wm,
(byte)0x80, (byte)0xFF)] byte wm,
[Values(0b000u, 0b001u, 0b010u, 0b011u, // <UXTB, UXTH, LSL|UXTW, UXTX,
0b100u, 0b101u, 0b110u, 0b111u)] uint extend, // SXTB, SXTH, SXTW, SXTX>
[Values(0u, 1u, 2u, 3u, 4u)] uint amount)
@ -721,4 +720,4 @@ namespace Ryujinx.Tests.Cpu
}
#endif
}
}
}