From: Craig Topper Date: Thu, 15 Aug 2019 06:20:33 +0000 (+0000) Subject: [X86] Add test cases for _mm_movepi64_pi64 and _mm_movpi64_epi64. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f549e30afa1ec9e9e8448850a3e018aca7d6305e;p=clang [X86] Add test cases for _mm_movepi64_pi64 and _mm_movpi64_epi64. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@368969 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/CodeGen/sse2-builtins.c b/test/CodeGen/sse2-builtins.c index 280640c267..6e4327f593 100644 --- a/test/CodeGen/sse2-builtins.c +++ b/test/CodeGen/sse2-builtins.c @@ -808,6 +808,23 @@ __m128d test_mm_min_sd(__m128d A, __m128d B) { return _mm_min_sd(A, B); } +__m64 test_mm_movepi64_pi64(__m128i A) +{ + // CHECK-LABEL: test_mm_movepi64_pi64 + // CHECK: [[EXT:%.*]] = extractelement <2 x i64> %1, i32 0 + // CHECK: bitcast i64 [[EXT]] to <1 x i64> + return _mm_movepi64_pi64(A); +} + +__m128i test_mm_movpi64_epi64(__m64 A) +{ + // CHECK-LABEL: test_mm_movpi64_epi64 + // CHECK: [[CAST:%.*]] = bitcast <1 x i64> %{{.*}} to i64 + // CHECK: [[INS:%.*]] = insertelement <2 x i64> undef, i64 [[CAST]], i32 0 + // CHECK: insertelement <2 x i64> [[INS]], i64 0, i32 1 + return _mm_movpi64_epi64(A); +} + __m128i test_mm_move_epi64(__m128i A) { // CHECK-LABEL: test_mm_move_epi64 // CHECK: shufflevector <2 x i64> %{{.*}}, <2 x i64> %{{.*}}, <2 x i32>