Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/marian-nmt/intgemm.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenneth Heafield <github@kheafield.com>2020-04-04 20:06:37 +0300
committerKenneth Heafield <github@kheafield.com>2020-04-04 20:06:37 +0300
commitb65be9edd266d3446d1475efc2d32cd3241874b7 (patch)
treefb30c632ddc590f96579dc3a0d827400e1f52b7a
parent75bfe03c630b0b90b3a2d0397c7013aa1a61cd83 (diff)
Test SSE2
-rw-r--r--test/tile_test.cc4
-rw-r--r--test/tile_test.inl7
2 files changed, 11 insertions, 0 deletions
diff --git a/test/tile_test.cc b/test/tile_test.cc
index 2eb878a..aa1380b 100644
--- a/test/tile_test.cc
+++ b/test/tile_test.cc
@@ -25,3 +25,7 @@
#define INTGEMM_THIS_IS_SSSE3
#include "tile_test.inl"
#undef INTGEMM_THIS_IS_SSSE3
+
+#define INTGEMM_THIS_IS_SSE2
+#include "tile_test.inl"
+#undef INTGEMM_THIS_IS_SSE2
diff --git a/test/tile_test.inl b/test/tile_test.inl
index df68241..3d13920 100644
--- a/test/tile_test.inl
+++ b/test/tile_test.inl
@@ -14,6 +14,10 @@
#define INTGEMM_ARCH SSSE3
#define INTGEMM_TARGET INTGEMM_SSSE3
#define INTGEMM_TEST_NAME "SSSE3"
+#elif defined(INTGEMM_THIS_IS_SSE2)
+#define INTGEMM_ARCH SSE2
+#define INTGEMM_TARGET INTGEMM_SSE2
+#define INTGEMM_TEST_NAME "SSE2"
#else
#error "Included without expected architecture"
#endif
@@ -22,6 +26,8 @@
namespace intgemm {
namespace INTGEMM_ARCH {
+// There isn't a Shifted8 for SSE2.
+#ifndef INTGEMM_THIS_IS_SSE2
INTGEMM_TARGET void OneIteration() {
AlignedVector<int8_t> A(1 * sizeof(Register));
AlignedVector<int8_t> B(sizeof(Register) * 1);
@@ -56,6 +62,7 @@ TEST_CASE("Basic Tile " INTGEMM_TEST_NAME, "[tile]") {
OneIteration();
}
}
+#endif
struct Reduce32Test {
template <typename Iterator> INTGEMM_TARGET static void body() {