Skip to content

Commit

Permalink
Comment out convert intrinsics since undefined reference error
Browse files Browse the repository at this point in the history
  • Loading branch information
kubo39 committed Nov 23, 2018
1 parent e5d5484 commit 4c831f9
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 24 deletions.
48 changes: 24 additions & 24 deletions source/x86intrin/sse41.d
Expand Up @@ -20,41 +20,41 @@ import ldc.simd;
// pragma(LDC_intrinsic, "llvm.x86.sse41.round.pd")
// pragma(LDC_intrinsic, "llvm.x86.sse41.insertps")

pragma(LDC_intrinsic, "llvm.x86.sse41.pmovsxbd")
int4 _mm_cvtepi8_epi32(byte16) pure @safe;
// pragma(LDC_intrinsic, "llvm.x86.sse41.pmovsxbd")
// int4 _mm_cvtepi8_epi32(byte16) pure @safe;

pragma(LDC_intrinsic, "llvm.x86.sse41.pmovsxbq")
long2 _mm_cvtepi8_epi64(byte16) pure @safe;
// pragma(LDC_intrinsic, "llvm.x86.sse41.pmovsxbq")
// long2 _mm_cvtepi8_epi64(byte16) pure @safe;

pragma(LDC_intrinsic, "llvm.x86.sse41.pmovsxbw")
short8 _mm_cvtepi8_epi16(byte16) pure @safe;
// pragma(LDC_intrinsic, "llvm.x86.sse41.pmovsxbw")
// short8 _mm_cvtepi8_epi16(byte16) pure @safe;

pragma(LDC_intrinsic, "llvm.x86.sse41.pmovsxdq")
long2 _mm_cvtepi32_epi64(int4) pure @safe;
// pragma(LDC_intrinsic, "llvm.x86.sse41.pmovsxdq")
// long2 _mm_cvtepi32_epi64(int4) pure @safe;

pragma(LDC_intrinsic, "llvm.x86.sse41.pmovsxwd")
int4 _mm_cvtepi16_epi32(short8) pure @safe;
// pragma(LDC_intrinsic, "llvm.x86.sse41.pmovsxwd")
// int4 _mm_cvtepi16_epi32(short8) pure @safe;

pragma(LDC_intrinsic, "llvm.x86.sse41.pmovsxwq")
long2 _mm_cvtepi16_epi64(short8) pure @safe;
// pragma(LDC_intrinsic, "llvm.x86.sse41.pmovsxwq")
// long2 _mm_cvtepi16_epi64(short8) pure @safe;

pragma(LDC_intrinsic, "llvm.x86.sse41.pmovzxbd")
int4 _mm_cvtepu8_epi32(byte16) pure @safe;
// pragma(LDC_intrinsic, "llvm.x86.sse41.pmovzxbd")
// int4 _mm_cvtepu8_epi32(byte16) pure @safe;

pragma(LDC_intrinsic, "llvm.x86.sse41.pmovzxbq")
long2 _mm_cvtepu8_epi64(byte16) pure @safe;
// pragma(LDC_intrinsic, "llvm.x86.sse41.pmovzxbq")
// long2 _mm_cvtepu8_epi64(byte16) pure @safe;

pragma(LDC_intrinsic, "llvm.x86.sse41.pmovzxbw")
short8 _mm_cvtepu8_epi16(byte16) pure @safe;
// pragma(LDC_intrinsic, "llvm.x86.sse41.pmovzxbw")
// short8 _mm_cvtepu8_epi16(byte16) pure @safe;

pragma(LDC_intrinsic, "llvm.x86.sse41.pmovzxdq")
long2 _mm_cvtepu32_epi64(int4) pure @safe;
// pragma(LDC_intrinsic, "llvm.x86.sse41.pmovzxdq")
// long2 _mm_cvtepu32_epi64(int4) pure @safe;

pragma(LDC_intrinsic, "llvm.x86.sse41.pmovzxwd")
int4 _mm_cvtepu16_epi32(short8) pure @safe;
// pragma(LDC_intrinsic, "llvm.x86.sse41.pmovzxwd")
// int4 _mm_cvtepu16_epi32(short8) pure @safe;

pragma(LDC_intrinsic, "llvm.x86.sse41.pmovzxwq")
long2 _mm_cvtepu16_epi64(short8) pure @safe;
// pragma(LDC_intrinsic, "llvm.x86.sse41.pmovzxwq")
// long2 _mm_cvtepu16_epi64(short8) pure @safe;

pragma(LDC_intrinsic, "llvm.x86.sse41.ptestc")
int _mm_testc_si128(long2, long2) pure @safe;
Expand Down
12 changes: 12 additions & 0 deletions tests/sse41.d
@@ -1,5 +1,16 @@
import x86intrin;

// void test_convert()
// {
// byte16 x8 = [1, -2, 3, -4, 5, -6, 7, -8, 9, -10, 11, -12, 13, -14, 15, -16];
// short8 x16 = [1, -2, 3, -4, 5, -6, 7, -8];
// int4 x32 = [1, -2, 3, -4];

// assert(_mm_cvtepi16_epi32(x16) == [1, -2, 3, -4]);
// assert(_mm_cvtepi16_epi64(x16) == [1, -2]);
// assert(_mm_cvtepi32_epi64(x32) == [1, -2]);
// }

void test_mm_testc_si128()
{
int4 x = [0x7, 0x7, 0x7, 0x7];
Expand Down Expand Up @@ -38,6 +49,7 @@ void test_mm_testz_si128()

void main()
{
// test_convert();
test_mm_testc_si128();
test_mm_testnzc_si128();
test_mm_testz_si128();
Expand Down

0 comments on commit 4c831f9

Please sign in to comment.