Author: hans Date: Wed Feb 14 02:54:05 2018 New Revision: 325114 URL: http://llvm.org/viewvc/llvm-project?rev=325114&view=rev Log: Revert r319777 for PR36357
Modified: cfe/branches/release_60/lib/Headers/avx512bwintrin.h cfe/branches/release_60/lib/Headers/avx512fintrin.h cfe/branches/release_60/test/CodeGen/avx512bw-builtins.c cfe/branches/release_60/test/CodeGen/avx512f-builtins.c Modified: cfe/branches/release_60/lib/Headers/avx512bwintrin.h URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_60/lib/Headers/avx512bwintrin.h?rev=325114&r1=325113&r2=325114&view=diff ============================================================================== --- cfe/branches/release_60/lib/Headers/avx512bwintrin.h (original) +++ cfe/branches/release_60/lib/Headers/avx512bwintrin.h Wed Feb 14 02:54:05 2018 @@ -1854,13 +1854,15 @@ _mm512_maskz_set1_epi8 (__mmask64 __M, c static __inline__ __mmask64 __DEFAULT_FN_ATTRS _mm512_kunpackd (__mmask64 __A, __mmask64 __B) { - return (__mmask64) (( __A & 0xFFFFFFFF) | ( __B << 32)); + return (__mmask64) __builtin_ia32_kunpckdi ((__mmask64) __A, + (__mmask64) __B); } static __inline__ __mmask32 __DEFAULT_FN_ATTRS _mm512_kunpackw (__mmask32 __A, __mmask32 __B) { -return (__mmask32) (( __A & 0xFFFF) | ( __B << 16)); + return (__mmask32) __builtin_ia32_kunpcksi ((__mmask32) __A, + (__mmask32) __B); } static __inline__ __m512i __DEFAULT_FN_ATTRS Modified: cfe/branches/release_60/lib/Headers/avx512fintrin.h URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_60/lib/Headers/avx512fintrin.h?rev=325114&r1=325113&r2=325114&view=diff ============================================================================== --- cfe/branches/release_60/lib/Headers/avx512fintrin.h (original) +++ cfe/branches/release_60/lib/Headers/avx512fintrin.h Wed Feb 14 02:54:05 2018 @@ -8787,7 +8787,7 @@ _mm512_kortestz (__mmask16 __A, __mmask1 static __inline__ __mmask16 __DEFAULT_FN_ATTRS _mm512_kunpackb (__mmask16 __A, __mmask16 __B) { - return (__mmask16) (( __A & 0xFF) | ( __B << 8)); + return (__mmask16) __builtin_ia32_kunpckhi ((__mmask16) __A, (__mmask16) __B); } static __inline__ __mmask16 __DEFAULT_FN_ATTRS Modified: cfe/branches/release_60/test/CodeGen/avx512bw-builtins.c URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_60/test/CodeGen/avx512bw-builtins.c?rev=325114&r1=325113&r2=325114&view=diff ============================================================================== --- cfe/branches/release_60/test/CodeGen/avx512bw-builtins.c (original) +++ cfe/branches/release_60/test/CodeGen/avx512bw-builtins.c Wed Feb 14 02:54:05 2018 @@ -1626,26 +1626,16 @@ __m512i test_mm512_maskz_set1_epi8(__mma return _mm512_maskz_set1_epi8(__M, __A); } -__mmask64 test_mm512_kunpackd(__m512i __A, __m512i __B, __m512i __C, __m512i __D, __m512i __E, __m512i __F) { +__mmask64 test_mm512_kunpackd(__mmask64 __A, __mmask64 __B) { // CHECK-LABEL: @test_mm512_kunpackd - // CHECK: bitcast <64 x i1> %{{.*}} to i64 - // CHECK: bitcast <64 x i1> %{{.*}} to i64 - // CHECK: and i64 %{{.*}}, 4294967295 - // CHECK: shl i64 %{{.*}}, 32 - // CHECK: or i64 %{{.*}}, %{{.*}} - // CHECK: bitcast i64 %{{.*}} to <64 x i1> - return _mm512_mask_cmpneq_epu8_mask(_mm512_kunpackd(_mm512_cmpneq_epu8_mask(__B, __A),_mm512_cmpneq_epu8_mask(__C, __D)), __E, __F); + // CHECK: @llvm.x86.avx512.kunpck.dq + return _mm512_kunpackd(__A, __B); } -__mmask32 test_mm512_kunpackw(__m512i __A, __m512i __B, __m512i __C, __m512i __D, __m512i __E, __m512i __F) { +__mmask32 test_mm512_kunpackw(__mmask32 __A, __mmask32 __B) { // CHECK-LABEL: @test_mm512_kunpackw - // CHECK: bitcast <32 x i1> %{{.*}} to i32 - // CHECK: bitcast <32 x i1> %{{.*}} to i32 - // CHECK: and i32 %{{.*}}, 65535 - // CHECK: shl i32 %{{.*}}, 16 - // CHECK: or i32 %{{.*}}, %{{.*}} - // CHECK: bitcast i32 %{{.*}} to <32 x i1> - return _mm512_mask_cmpneq_epu16_mask(_mm512_kunpackw(_mm512_cmpneq_epu16_mask(__B, __A),_mm512_cmpneq_epu16_mask(__C, __D)), __E, __F); + // CHECK: @llvm.x86.avx512.kunpck.wd + return _mm512_kunpackw(__A, __B); } __m512i test_mm512_mask_loadu_epi16(__m512i __W, __mmask32 __U, void const *__P) { Modified: cfe/branches/release_60/test/CodeGen/avx512f-builtins.c URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_60/test/CodeGen/avx512f-builtins.c?rev=325114&r1=325113&r2=325114&view=diff ============================================================================== --- cfe/branches/release_60/test/CodeGen/avx512f-builtins.c (original) +++ cfe/branches/release_60/test/CodeGen/avx512f-builtins.c Wed Feb 14 02:54:05 2018 @@ -6259,17 +6259,10 @@ int test_mm512_kortestz(__mmask16 __A, _ return _mm512_kortestz(__A, __B); } -__mmask16 test_mm512_kunpackb(__m512i __A, __m512i __B, __m512i __C, __m512i __D, __m512i __E, __m512i __F) { +__mmask16 test_mm512_kunpackb(__mmask16 __A, __mmask16 __B) { // CHECK-LABEL: @test_mm512_kunpackb - // CHECK: bitcast <16 x i1> %{{.*}} to i16 - // CHECK: bitcast <16 x i1> %{{.*}} to i16 - // CHECK: and i32 %{{.*}}, 255 - // CHECK: shl i32 %{{.*}}, 8 - // CHECK: or i32 %{{.*}}, %{{.*}} - // CHECK: bitcast i16 %{{.*}} to <16 x i1> - return _mm512_mask_cmpneq_epu32_mask(_mm512_kunpackb(_mm512_cmpneq_epu32_mask(__A, __B), - _mm512_cmpneq_epu32_mask(__C, __D)), - __E, __F); + // CHECK: @llvm.x86.avx512.kunpck.bw + return _mm512_kunpackb(__A, __B); } __mmask16 test_mm512_kxnor(__m512i __A, __m512i __B, __m512i __C, __m512i __D, __m512i __E, __m512i __F) { _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits