diff options
| author | Merry <MerryMage@users.noreply.github.com> | 2018-02-19 04:17:26 +0000 |
|---|---|---|
| committer | gdkchan <gab.dark.100@gmail.com> | 2018-02-19 01:17:26 -0300 |
| commit | 8df0b62fe0befdd2d91f0a971a72781156bfefcd (patch) | |
| tree | 73502a1ae0ee073f74a6c90c1f5d8d31e7989e09 | |
| parent | f35d286c8d2a20abb175930c5cb79667c6d22858 (diff) | |
Tests: Add Fmax_S test (#23)
| -rw-r--r-- | Ryujinx.Tests/Cpu/CpuTestScalar.cs | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/Ryujinx.Tests/Cpu/CpuTestScalar.cs b/Ryujinx.Tests/Cpu/CpuTestScalar.cs new file mode 100644 index 00000000..26549b87 --- /dev/null +++ b/Ryujinx.Tests/Cpu/CpuTestScalar.cs @@ -0,0 +1,30 @@ +using ChocolArm64.State; +using NUnit.Framework; + +namespace Ryujinx.Tests.Cpu +{ + [TestFixture] + public partial class CpuTest + { + [TestCase(0x00000000u, 0x80000000u, 0x00000000u)] + [TestCase(0x80000000u, 0x00000000u, 0x00000000u)] + [TestCase(0x80000000u, 0x80000000u, 0x80000000u)] + [TestCase(0x3DCCCCCDu, 0x3C9623B1u, 0x3DCCCCCDu)] + [TestCase(0x8BA98D27u, 0x00000076u, 0x00000076u)] + [TestCase(0x807FFFFFu, 0x7F7FFFFFu, 0x7F7FFFFFu)] + [TestCase(0x7F7FFFFFu, 0x807FFFFFu, 0x7F7FFFFFu)] + [TestCase(0x7FC00000u, 0x3F800000u, 0x7FC00000u)] + [TestCase(0x3F800000u, 0x7FC00000u, 0x7FC00000u)] + // NaN tests + //[TestCase(0x7F800001u, 0x7FC00042u, 0x7FC00001u)] + //[TestCase(0x7FC00042u, 0x7F800001u, 0x7FC00001u)] + //[TestCase(0x7FC0000Au, 0x7FC0000Bu, 0x7FC0000Au)] + public void Fmax_S(uint A, uint B, uint Result) + { + // FMAX S0, S1, S2 + uint Opcode = 0x1E224820; + AThreadState ThreadState = SingleOpcode(Opcode, V1: new AVec { W0 = A }, V2: new AVec { W0 = B }); + Assert.AreEqual(Result, ThreadState.V0.W0); + } + } +} |
