Remove ASM_REGISTER_STATE_CHECK when testing v64/v128/v256 intrinsics
Since the tested functions are always forced inline in regular use,
ASM_REGISTER_STATE_CHECK doesn't make sense on this level (the test
should rather be applied to unit tests checking functions making use
of these inlined functions). The test fails on Win64 because the
Win64 ABI requires xmm6 to xmm15 to be preserved across function
calls, but the ABI is only relevant for non-inlined functions.
BUG=aomedia:371
Change-Id: Icb795083f69465cf09ec8f6871899943efaeaab8
diff --git a/test/simd_cmp_impl.h b/test/simd_cmp_impl.h
index ffbe333..cd540d7 100644
--- a/test/simd_cmp_impl.h
+++ b/test/simd_cmp_impl.h
@@ -13,7 +13,6 @@
#include <string>
#include "./aom_dsp_rtcd.h"
#include "test/acm_random.h"
-#include "test/register_state_check.h"
#include "aom_dsp/aom_simd.h"
#undef SIMD_INLINE
#define SIMD_INLINE static // Don't enforce inlining
@@ -743,8 +742,8 @@
CRet (*const my_c_simd)(CArg) = (CRet(*const)(CArg))c_simd;
// Call reference and intrinsic
- ASM_REGISTER_STATE_CHECK(my_c_store(ref_d, my_c_simd(my_c_load(a))));
- ASM_REGISTER_STATE_CHECK(my_store(d, my_simd(my_load(a))));
+ my_c_store(ref_d, my_c_simd(my_c_load(a)));
+ my_store(d, my_simd(my_load(a)));
// Compare results
return memcmp(ref_d, d, sizeof(CRet));
@@ -767,9 +766,8 @@
CRet (*const my_c_simd)(CArg1, CArg2) = (CRet(*const)(CArg1, CArg2))c_simd;
// Call reference and intrinsic
- ASM_REGISTER_STATE_CHECK(
- my_c_store(ref_d, my_c_simd(my_c_load1(a), my_c_load2(b))));
- ASM_REGISTER_STATE_CHECK(my_store(d, my_simd(my_load1(a), my_load2(b))));
+ my_c_store(ref_d, my_c_simd(my_c_load1(a), my_c_load2(b)));
+ my_store(d, my_simd(my_load1(a), my_load2(b)));
// Compare results
return memcmp(ref_d, d, sizeof(CRet));