summaryrefslogtreecommitdiff
path: root/Source/UnitTests/VideoCommon/VertexLoaderTest.cpp
diff options
context:
space:
mode:
authorLioncash <mathew1800@gmail.com>2018-05-10 10:35:00 -0400
committerLioncash <mathew1800@gmail.com>2018-05-10 12:28:09 -0400
commit0a3631cc7657d6fe0cb577681092e9b6f926dbb9 (patch)
treefe286fc1de311e182878f5d6c0fbc3e2aca29d96 /Source/UnitTests/VideoCommon/VertexLoaderTest.cpp
parentbde4e970f10b261dc60b1770d18cb99788fed760 (diff)
FloatUtils: Remove IntDouble and IntFloat
Type punning via unions in C++ invokes undefined behavior. Instead, leverage BitCast, our variant of C++2a's std::bit_cast
Diffstat (limited to 'Source/UnitTests/VideoCommon/VertexLoaderTest.cpp')
-rw-r--r--Source/UnitTests/VideoCommon/VertexLoaderTest.cpp13
1 files changed, 7 insertions, 6 deletions
diff --git a/Source/UnitTests/VideoCommon/VertexLoaderTest.cpp b/Source/UnitTests/VideoCommon/VertexLoaderTest.cpp
index 6ba3c4c464..70a8a96235 100644
--- a/Source/UnitTests/VideoCommon/VertexLoaderTest.cpp
+++ b/Source/UnitTests/VideoCommon/VertexLoaderTest.cpp
@@ -10,8 +10,8 @@
#include <gtest/gtest.h> // NOLINT
+#include "Common/BitUtils.h"
#include "Common/Common.h"
-#include "Common/FloatUtils.h"
#include "VideoCommon/CPMemory.h"
#include "VideoCommon/DataReader.h"
#include "VideoCommon/OpcodeDecoding.h"
@@ -72,14 +72,15 @@ protected:
m_src.Write<T, true>(val);
}
- void ExpectOut(float val)
+ void ExpectOut(float expected)
{
// Read unswapped.
- Common::IntFloat expected(val), actual(m_dst.Read<float, false>());
- if (!actual.f || actual.f != actual.f)
- EXPECT_EQ(expected.i, actual.i);
+ const float actual = m_dst.Read<float, false>();
+
+ if (!actual || actual != actual)
+ EXPECT_EQ(Common::BitCast<u32>(expected), Common::BitCast<u32>(actual));
else
- EXPECT_EQ(expected.f, actual.f);
+ EXPECT_EQ(expected, actual);
}
void RunVertices(int count, int expected_count = -1)