summaryrefslogtreecommitdiff
path: root/Source/UnitTests/Core/PowerPC/DivUtilsTest.cpp
diff options
context:
space:
mode:
authorLéo Lam <leo@leolam.fr>2021-05-07 14:31:09 +0200
committerGitHub <noreply@github.com>2021-05-07 14:31:09 +0200
commitaa8ddcfc927b94432e71510027a744a1bc585d65 (patch)
tree9cb8df38df51682cd55ed4f5bb05c2673133fb40 /Source/UnitTests/Core/PowerPC/DivUtilsTest.cpp
parent19580c38410f0c83c94e000dba0164bf54f088ef (diff)
parent1f6bb06f2cddb715df0d3f59068f16fe7f9a8caa (diff)
Merge pull request #9684 from JosJuice/move-unit-tests
UnitTests: Move some unit tests to where they should be
Diffstat (limited to 'Source/UnitTests/Core/PowerPC/DivUtilsTest.cpp')
-rw-r--r--Source/UnitTests/Core/PowerPC/DivUtilsTest.cpp33
1 files changed, 33 insertions, 0 deletions
diff --git a/Source/UnitTests/Core/PowerPC/DivUtilsTest.cpp b/Source/UnitTests/Core/PowerPC/DivUtilsTest.cpp
new file mode 100644
index 0000000000..7802fc8496
--- /dev/null
+++ b/Source/UnitTests/Core/PowerPC/DivUtilsTest.cpp
@@ -0,0 +1,33 @@
+// Copyright 2021 Dolphin Emulator Project
+// Licensed under GPLv2+
+// Refer to the license.txt file included.
+
+#include <gtest/gtest.h>
+
+#include "Core/PowerPC/JitCommon/DivUtils.h"
+
+using namespace JitCommon;
+
+TEST(DivUtils, Signed)
+{
+ Magic m3 = SignedDivisionConstants(3);
+ Magic m5 = SignedDivisionConstants(5);
+ Magic m7 = SignedDivisionConstants(7);
+ Magic minus3 = SignedDivisionConstants(-3);
+ Magic minus5 = SignedDivisionConstants(-5);
+ Magic minus7 = SignedDivisionConstants(-7);
+
+ EXPECT_EQ(0x55555556, m3.multiplier);
+ EXPECT_EQ(0, m3.shift);
+ EXPECT_EQ(0x66666667, m5.multiplier);
+ EXPECT_EQ(1, m5.shift);
+ EXPECT_EQ(-0x6DB6DB6D, m7.multiplier);
+ EXPECT_EQ(2, m7.shift);
+
+ EXPECT_EQ(-0x55555556, minus3.multiplier);
+ EXPECT_EQ(0, minus3.shift);
+ EXPECT_EQ(-0x66666667, minus5.multiplier);
+ EXPECT_EQ(1, minus5.shift);
+ EXPECT_EQ(0x6DB6DB6D, minus7.multiplier);
+ EXPECT_EQ(2, minus7.shift);
+}