From 22c8aab31d78e9374b38bb216dce029317312729 Mon Sep 17 00:00:00 2001 From: Ilya Tocar Date: Wed, 26 Feb 2014 09:31:15 +0000 Subject: [PATCH] predicates.md (const1256_operand): Remove. gcc/ * common/config/i386/predicates.md (const1256_operand): Remove. (const2356_operand): New. (const_1_to_2_operand): Remove. * config/i386/sse.md (avx512pf_gatherpfsf): Change hint value. (*avx512pf_gatherpfsf_mask): Ditto. (*avx512pf_gatherpfsf): Ditto. (avx512pf_gatherpfdf): Ditto. (*avx512pf_gatherpfdf_mask): Ditto. (*avx512pf_gatherpfdf): Ditto. (avx512pf_scatterpfsf): Ditto. (*avx512pf_scatterpfsf_mask): Ditto. (*avx512pf_scatterpfsf): Ditto. (avx512pf_scatterpfdf): Ditto. (*avx512pf_scatterpfdf_mask): Ditto. (*avx512pf_scatterpfdf): Ditto. * common/config/i386/xmmintrin.h (_mm_hint): Add _MM_HINT_ET0. gcc/testsuite/ * common/config/i386/predicates.md (const1256_operand): Remove. (const2356_operand): New. (const_1_to_2_operand): Remove. * config/i386/sse.md (avx512pf_gatherpfsf): Change hint value. (*avx512pf_gatherpfsf_mask): Ditto. (*avx512pf_gatherpfsf): Ditto. (avx512pf_gatherpfdf): Ditto. (*avx512pf_gatherpfdf_mask): Ditto. (*avx512pf_gatherpfdf): Ditto. (avx512pf_scatterpfsf): Ditto. (*avx512pf_scatterpfsf_mask): Ditto. (*avx512pf_scatterpfsf): Ditto. (avx512pf_scatterpfdf): Ditto. (*avx512pf_scatterpfdf_mask): Ditto. (*avx512pf_scatterpfdf): Ditto. * common/config/i386/xmmintrin.h (_mm_hint): Add _MM_HINT_ET0. From-SVN: r208169 --- gcc/ChangeLog | 19 ++++++++++ gcc/config/i386/predicates.md | 11 ++---- gcc/config/i386/sse.md | 40 +++++++++++----------- gcc/config/i386/xmmintrin.h | 1 + gcc/testsuite/ChangeLog | 19 ++++++++++ gcc/testsuite/gcc.target/i386/avx-1.c | 16 ++++----- .../gcc.target/i386/avx512pf-vgatherpf0dpd-1.c | 2 +- .../gcc.target/i386/avx512pf-vgatherpf0dps-1.c | 2 +- .../gcc.target/i386/avx512pf-vgatherpf0qpd-1.c | 2 +- .../gcc.target/i386/avx512pf-vgatherpf0qps-1.c | 2 +- .../gcc.target/i386/avx512pf-vgatherpf1dpd-1.c | 2 +- .../gcc.target/i386/avx512pf-vgatherpf1dps-1.c | 2 +- .../gcc.target/i386/avx512pf-vgatherpf1qpd-1.c | 2 +- .../gcc.target/i386/avx512pf-vgatherpf1qps-1.c | 2 +- .../gcc.target/i386/avx512pf-vscatterpf0dpd-1.c | 4 +-- .../gcc.target/i386/avx512pf-vscatterpf0dps-1.c | 4 +-- .../gcc.target/i386/avx512pf-vscatterpf0qpd-1.c | 4 +-- .../gcc.target/i386/avx512pf-vscatterpf0qps-1.c | 4 +-- .../gcc.target/i386/avx512pf-vscatterpf1dpd-1.c | 4 +-- .../gcc.target/i386/avx512pf-vscatterpf1dps-1.c | 4 +-- .../gcc.target/i386/avx512pf-vscatterpf1qpd-1.c | 4 +-- .../gcc.target/i386/avx512pf-vscatterpf1qps-1.c | 4 +-- gcc/testsuite/gcc.target/i386/sse-14.c | 16 ++++----- gcc/testsuite/gcc.target/i386/sse-22.c | 18 +++++----- gcc/testsuite/gcc.target/i386/sse-23.c | 16 ++++----- 25 files changed, 119 insertions(+), 85 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3974f9c..1f5bd62 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,22 @@ +2014-02-25 Ilya Tocar + + * common/config/i386/predicates.md (const1256_operand): Remove. + (const2356_operand): New. + (const_1_to_2_operand): Remove. + * config/i386/sse.md (avx512pf_gatherpfsf): Change hint value. + (*avx512pf_gatherpfsf_mask): Ditto. + (*avx512pf_gatherpfsf): Ditto. + (avx512pf_gatherpfdf): Ditto. + (*avx512pf_gatherpfdf_mask): Ditto. + (*avx512pf_gatherpfdf): Ditto. + (avx512pf_scatterpfsf): Ditto. + (*avx512pf_scatterpfsf_mask): Ditto. + (*avx512pf_scatterpfsf): Ditto. + (avx512pf_scatterpfdf): Ditto. + (*avx512pf_scatterpfdf_mask): Ditto. + (*avx512pf_scatterpfdf): Ditto. + * common/config/i386/xmmintrin.h (_mm_hint): Add _MM_HINT_ET0. + 2014-02-26 Ilya Tocar * config/i386/avx512fintrin.h (_mm512_testn_epi32_mask), diff --git a/gcc/config/i386/predicates.md b/gcc/config/i386/predicates.md index 3f53e2d..70418f4 100644 --- a/gcc/config/i386/predicates.md +++ b/gcc/config/i386/predicates.md @@ -660,12 +660,12 @@ return i == 2 || i == 4 || i == 8; }) -;; Match 1, 2, 5, or 6 -(define_predicate "const1256_operand" +;; Match 2, 3, 5, or 6 +(define_predicate "const2356_operand" (match_code "const_int") { HOST_WIDE_INT i = INTVAL (op); - return i == 1 || i == 2 || i == 5 || i == 6; + return i == 2 || i == 3 || i == 5 || i == 6; }) ;; Match 1, 2, 4, or 8 @@ -754,11 +754,6 @@ return val <= 255*8 && val % 8 == 0; }) -;; Match 1 to 2. -(define_predicate "const_1_to_2_operand" - (and (match_code "const_int") - (match_test "IN_RANGE (INTVAL (op), 1, 2)"))) - ;; Return true if OP is CONST_INT >= 1 and <= 31 (a valid operand ;; for shift & compare patterns, as shifting by 0 does not change flags). (define_predicate "const_1_to_31_operand" diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md index f6de5d5..5775bc6 100644 --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -12508,7 +12508,7 @@ [(match_operand 2 "vsib_address_operand") (match_operand:VI48_512 1 "register_operand") (match_operand:SI 3 "const1248_operand")])) - (match_operand:SI 4 "const_1_to_2_operand")] + (match_operand:SI 4 "const_2_to_3_operand")] UNSPEC_GATHER_PREFETCH)] "TARGET_AVX512PF" { @@ -12526,13 +12526,13 @@ (match_operand:VI48_512 1 "register_operand" "v") (match_operand:SI 3 "const1248_operand" "n")] UNSPEC_VSIBADDR)]) - (match_operand:SI 4 "const_1_to_2_operand" "n")] + (match_operand:SI 4 "const_2_to_3_operand" "n")] UNSPEC_GATHER_PREFETCH)] "TARGET_AVX512PF" { switch (INTVAL (operands[4])) { - case 1: + case 3: return "vgatherpf0ps\t{%5%{%0%}|%5%{%0%}}"; case 2: return "vgatherpf1ps\t{%5%{%0%}|%5%{%0%}}"; @@ -12553,13 +12553,13 @@ (match_operand:VI48_512 0 "register_operand" "v") (match_operand:SI 2 "const1248_operand" "n")] UNSPEC_VSIBADDR)]) - (match_operand:SI 3 "const_1_to_2_operand" "n")] + (match_operand:SI 3 "const_2_to_3_operand" "n")] UNSPEC_GATHER_PREFETCH)] "TARGET_AVX512PF" { switch (INTVAL (operands[3])) { - case 1: + case 3: return "vgatherpf0ps\t{%4|%4}"; case 2: return "vgatherpf1ps\t{%4|%4}"; @@ -12580,7 +12580,7 @@ [(match_operand 2 "vsib_address_operand") (match_operand:VI4_256_8_512 1 "register_operand") (match_operand:SI 3 "const1248_operand")])) - (match_operand:SI 4 "const_1_to_2_operand")] + (match_operand:SI 4 "const_2_to_3_operand")] UNSPEC_GATHER_PREFETCH)] "TARGET_AVX512PF" { @@ -12598,13 +12598,13 @@ (match_operand:VI4_256_8_512 1 "register_operand" "v") (match_operand:SI 3 "const1248_operand" "n")] UNSPEC_VSIBADDR)]) - (match_operand:SI 4 "const_1_to_2_operand" "n")] + (match_operand:SI 4 "const_2_to_3_operand" "n")] UNSPEC_GATHER_PREFETCH)] "TARGET_AVX512PF" { switch (INTVAL (operands[4])) { - case 1: + case 3: return "vgatherpf0pd\t{%5%{%0%}|%5%{%0%}}"; case 2: return "vgatherpf1pd\t{%5%{%0%}|%5%{%0%}}"; @@ -12625,13 +12625,13 @@ (match_operand:VI4_256_8_512 0 "register_operand" "v") (match_operand:SI 2 "const1248_operand" "n")] UNSPEC_VSIBADDR)]) - (match_operand:SI 3 "const_1_to_2_operand" "n")] + (match_operand:SI 3 "const_2_to_3_operand" "n")] UNSPEC_GATHER_PREFETCH)] "TARGET_AVX512PF" { switch (INTVAL (operands[3])) { - case 1: + case 3: return "vgatherpf0pd\t{%4|%4}"; case 2: return "vgatherpf1pd\t{%4|%4}"; @@ -12652,7 +12652,7 @@ [(match_operand 2 "vsib_address_operand") (match_operand:VI48_512 1 "register_operand") (match_operand:SI 3 "const1248_operand")])) - (match_operand:SI 4 "const1256_operand")] + (match_operand:SI 4 "const2356_operand")] UNSPEC_SCATTER_PREFETCH)] "TARGET_AVX512PF" { @@ -12670,13 +12670,13 @@ (match_operand:VI48_512 1 "register_operand" "v") (match_operand:SI 3 "const1248_operand" "n")] UNSPEC_VSIBADDR)]) - (match_operand:SI 4 "const1256_operand" "n")] + (match_operand:SI 4 "const2356_operand" "n")] UNSPEC_SCATTER_PREFETCH)] "TARGET_AVX512PF" { switch (INTVAL (operands[4])) { - case 1: + case 3: case 5: return "vscatterpf0ps\t{%5%{%0%}|%5%{%0%}}"; case 2: @@ -12699,13 +12699,13 @@ (match_operand:VI48_512 0 "register_operand" "v") (match_operand:SI 2 "const1248_operand" "n")] UNSPEC_VSIBADDR)]) - (match_operand:SI 3 "const1256_operand" "n")] + (match_operand:SI 3 "const2356_operand" "n")] UNSPEC_SCATTER_PREFETCH)] "TARGET_AVX512PF" { switch (INTVAL (operands[3])) { - case 1: + case 3: case 5: return "vscatterpf0ps\t{%4|%4}"; case 2: @@ -12728,7 +12728,7 @@ [(match_operand 2 "vsib_address_operand") (match_operand:VI4_256_8_512 1 "register_operand") (match_operand:SI 3 "const1248_operand")])) - (match_operand:SI 4 "const1256_operand")] + (match_operand:SI 4 "const2356_operand")] UNSPEC_SCATTER_PREFETCH)] "TARGET_AVX512PF" { @@ -12746,13 +12746,13 @@ (match_operand:VI4_256_8_512 1 "register_operand" "v") (match_operand:SI 3 "const1248_operand" "n")] UNSPEC_VSIBADDR)]) - (match_operand:SI 4 "const1256_operand" "n")] + (match_operand:SI 4 "const2356_operand" "n")] UNSPEC_SCATTER_PREFETCH)] "TARGET_AVX512PF" { switch (INTVAL (operands[4])) { - case 1: + case 3: case 5: return "vscatterpf0pd\t{%5%{%0%}|%5%{%0%}}"; case 2: @@ -12775,13 +12775,13 @@ (match_operand:VI4_256_8_512 0 "register_operand" "v") (match_operand:SI 2 "const1248_operand" "n")] UNSPEC_VSIBADDR)]) - (match_operand:SI 3 "const1256_operand" "n")] + (match_operand:SI 3 "const2356_operand" "n")] UNSPEC_SCATTER_PREFETCH)] "TARGET_AVX512PF" { switch (INTVAL (operands[3])) { - case 1: + case 3: case 5: return "vscatterpf0pd\t{%4|%4}"; case 2: diff --git a/gcc/config/i386/xmmintrin.h b/gcc/config/i386/xmmintrin.h index 9cefa2c..5967d7e 100644 --- a/gcc/config/i386/xmmintrin.h +++ b/gcc/config/i386/xmmintrin.h @@ -54,6 +54,7 @@ typedef float __v4sf __attribute__ ((__vector_size__ (16))); enum _mm_hint { /* _MM_HINT_ET is _MM_HINT_T with set 3rd bit. */ + _MM_HINT_ET0 = 5, _MM_HINT_ET1 = 6, _MM_HINT_T0 = 3, _MM_HINT_T1 = 2, diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 124f5c7..48e2a17 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,24 @@ 2014-02-26 Ilya Tocar + * common/config/i386/predicates.md (const1256_operand): Remove. + (const2356_operand): New. + (const_1_to_2_operand): Remove. + * config/i386/sse.md (avx512pf_gatherpfsf): Change hint value. + (*avx512pf_gatherpfsf_mask): Ditto. + (*avx512pf_gatherpfsf): Ditto. + (avx512pf_gatherpfdf): Ditto. + (*avx512pf_gatherpfdf_mask): Ditto. + (*avx512pf_gatherpfdf): Ditto. + (avx512pf_scatterpfsf): Ditto. + (*avx512pf_scatterpfsf_mask): Ditto. + (*avx512pf_scatterpfsf): Ditto. + (avx512pf_scatterpfdf): Ditto. + (*avx512pf_scatterpfdf_mask): Ditto. + (*avx512pf_scatterpfdf): Ditto. + * common/config/i386/xmmintrin.h (_mm_hint): Add _MM_HINT_ET0. + +2014-02-26 Ilya Tocar + * gcc.target/i386/avx512cd-vptestnmd-1.c: Change into ... * gcc.target/i386/avx512f-vptestnmd-1.c: This. * gcc.target/i386/avx512cd-vptestnmq-1.c: Change into ... diff --git a/gcc/testsuite/gcc.target/i386/avx-1.c b/gcc/testsuite/gcc.target/i386/avx-1.c index 12cfc68..8f28921 100644 --- a/gcc/testsuite/gcc.target/i386/avx-1.c +++ b/gcc/testsuite/gcc.target/i386/avx-1.c @@ -358,14 +358,14 @@ #define __builtin_ia32_rsqrt28sd_round(A, B, C) __builtin_ia32_rsqrt28sd_round(A, B, 8) /* avx512pfintrin.h */ -#define __builtin_ia32_gatherpfdps(A, B, C, D, E) __builtin_ia32_gatherpfdps(A, B, C, 1, 1) -#define __builtin_ia32_gatherpfqps(A, B, C, D, E) __builtin_ia32_gatherpfqps(A, B, C, 1, 1) -#define __builtin_ia32_scatterpfdps(A, B, C, D, E) __builtin_ia32_scatterpfdps(A, B, C, 1, 1) -#define __builtin_ia32_scatterpfqps(A, B, C, D, E) __builtin_ia32_scatterpfqps(A, B, C, 1, 1) -#define __builtin_ia32_gatherpfdpd(A, B, C, D, E) __builtin_ia32_gatherpfdpd(A, B, C, 1, 1) -#define __builtin_ia32_gatherpfqpd(A, B, C, D, E) __builtin_ia32_gatherpfqpd(A, B, C, 1, 1) -#define __builtin_ia32_scatterpfdpd(A, B, C, D, E) __builtin_ia32_scatterpfdpd(A, B, C, 1, 1) -#define __builtin_ia32_scatterpfqpd(A, B, C, D, E) __builtin_ia32_scatterpfqpd(A, B, C, 1, 1) +#define __builtin_ia32_gatherpfdps(A, B, C, D, E) __builtin_ia32_gatherpfdps(A, B, C, 1, _MM_HINT_T0) +#define __builtin_ia32_gatherpfqps(A, B, C, D, E) __builtin_ia32_gatherpfqps(A, B, C, 1, _MM_HINT_T0) +#define __builtin_ia32_scatterpfdps(A, B, C, D, E) __builtin_ia32_scatterpfdps(A, B, C, 1, _MM_HINT_T0) +#define __builtin_ia32_scatterpfqps(A, B, C, D, E) __builtin_ia32_scatterpfqps(A, B, C, 1, _MM_HINT_T0) +#define __builtin_ia32_gatherpfdpd(A, B, C, D, E) __builtin_ia32_gatherpfdpd(A, B, C, 1, _MM_HINT_T0) +#define __builtin_ia32_gatherpfqpd(A, B, C, D, E) __builtin_ia32_gatherpfqpd(A, B, C, 1, _MM_HINT_T0) +#define __builtin_ia32_scatterpfdpd(A, B, C, D, E) __builtin_ia32_scatterpfdpd(A, B, C, 1, _MM_HINT_T0) +#define __builtin_ia32_scatterpfqpd(A, B, C, D, E) __builtin_ia32_scatterpfqpd(A, B, C, 1, _MM_HINT_T0) /* shaintrin.h */ #define __builtin_ia32_sha1rnds4(A, B, C) __builtin_ia32_sha1rnds4(A, B, 1) diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0dpd-1.c b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0dpd-1.c index fe366ee..9051a16 100644 --- a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0dpd-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0dpd-1.c @@ -11,5 +11,5 @@ void *base; void extern avx512pf_test (void) { - _mm512_mask_prefetch_i32gather_pd (idx, m8, base, 8, 1); + _mm512_mask_prefetch_i32gather_pd (idx, m8, base, 8, _MM_HINT_T0); } diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0dps-1.c b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0dps-1.c index df13cdb..bda31d7 100644 --- a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0dps-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0dps-1.c @@ -11,5 +11,5 @@ int *base; void extern avx512pf_test (void) { - _mm512_mask_prefetch_i32gather_ps (idx, m16, base, 8, 1); + _mm512_mask_prefetch_i32gather_ps (idx, m16, base, 8, _MM_HINT_T0); } diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0qpd-1.c b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0qpd-1.c index ba71335..34bcecf 100644 --- a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0qpd-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0qpd-1.c @@ -11,5 +11,5 @@ int *base; void extern avx512pf_test (void) { - _mm512_mask_prefetch_i64gather_pd (idx, m8, base, 8, 1); + _mm512_mask_prefetch_i64gather_pd (idx, m8, base, 8, _MM_HINT_T0); } diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0qps-1.c b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0qps-1.c index 945ac51..a9011b0 100644 --- a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0qps-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf0qps-1.c @@ -11,5 +11,5 @@ int *base; void extern avx512pf_test (void) { - _mm512_mask_prefetch_i64gather_ps (idx, m8, base, 8, 1); + _mm512_mask_prefetch_i64gather_ps (idx, m8, base, 8, _MM_HINT_T0); } diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1dpd-1.c b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1dpd-1.c index 5933376..a16f4d3 100644 --- a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1dpd-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1dpd-1.c @@ -11,5 +11,5 @@ int *base; void extern avx512pf_test (void) { - _mm512_mask_prefetch_i32gather_pd (idx, m8, base, 8, 2); + _mm512_mask_prefetch_i32gather_pd (idx, m8, base, 8, _MM_HINT_T1); } diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1dps-1.c b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1dps-1.c index da1046f..c43152b 100644 --- a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1dps-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1dps-1.c @@ -11,5 +11,5 @@ int *base; void extern avx512pf_test (void) { - _mm512_mask_prefetch_i32gather_ps (idx, m16, base, 8, 2); + _mm512_mask_prefetch_i32gather_ps (idx, m16, base, 8, _MM_HINT_T1); } diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1qpd-1.c b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1qpd-1.c index eb2c545..ab9e351 100644 --- a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1qpd-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1qpd-1.c @@ -11,5 +11,5 @@ int *base; void extern avx512pf_test (void) { - _mm512_mask_prefetch_i64gather_pd (idx, m8, base, 8, 2); + _mm512_mask_prefetch_i64gather_pd (idx, m8, base, 8, _MM_HINT_T1); } diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1qps-1.c b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1qps-1.c index 1c81836..28d7cd6 100644 --- a/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1qps-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vgatherpf1qps-1.c @@ -11,5 +11,5 @@ int *base; void extern avx512pf_test (void) { - _mm512_mask_prefetch_i64gather_ps (idx, m8, base, 8, 2); + _mm512_mask_prefetch_i64gather_ps (idx, m8, base, 8, _MM_HINT_T1); } diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dpd-1.c b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dpd-1.c index ff00bfa..14d5c97 100644 --- a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dpd-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dpd-1.c @@ -12,6 +12,6 @@ void *base; void extern avx512pf_test (void) { - _mm512_prefetch_i32scatter_pd (base, idx, 8, 1); - _mm512_mask_prefetch_i32scatter_pd (base, m8, idx, 8, 5); + _mm512_prefetch_i32scatter_pd (base, idx, 8, _MM_HINT_T0); + _mm512_mask_prefetch_i32scatter_pd (base, m8, idx, 8, _MM_HINT_ET0); } diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dps-1.c b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dps-1.c index 25448b4..05f51f2 100644 --- a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dps-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0dps-1.c @@ -12,6 +12,6 @@ int *base; void extern avx512pf_test (void) { - _mm512_prefetch_i32scatter_ps (base, idx, 8, 1); - _mm512_mask_prefetch_i32scatter_ps (base, m16, idx, 8, 5); + _mm512_prefetch_i32scatter_ps (base, idx, 8, _MM_HINT_T0); + _mm512_mask_prefetch_i32scatter_ps (base, m16, idx, 8, _MM_HINT_ET0); } diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qpd-1.c b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qpd-1.c index 84ddc6d..93a65a8 100644 --- a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qpd-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qpd-1.c @@ -12,6 +12,6 @@ void *base; void extern avx512pf_test (void) { - _mm512_prefetch_i64scatter_pd (base, idx, 8, 1); - _mm512_mask_prefetch_i64scatter_pd (base, m8, idx, 8, 5); + _mm512_prefetch_i64scatter_pd (base, idx, 8, _MM_HINT_T0); + _mm512_mask_prefetch_i64scatter_pd (base, m8, idx, 8, _MM_HINT_ET0); } diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qps-1.c b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qps-1.c index 847a719..1f9b973 100644 --- a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qps-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf0qps-1.c @@ -12,6 +12,6 @@ int *base; void extern avx512pf_test (void) { - _mm512_prefetch_i64scatter_ps (base, idx, 8, 1); - _mm512_mask_prefetch_i64scatter_ps (base, m8, idx, 8, 5); + _mm512_prefetch_i64scatter_ps (base, idx, 8, _MM_HINT_T0); + _mm512_mask_prefetch_i64scatter_ps (base, m8, idx, 8, _MM_HINT_ET0); } diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dpd-1.c b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dpd-1.c index 5633138..04c367c 100644 --- a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dpd-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dpd-1.c @@ -12,6 +12,6 @@ void *base; void extern avx512pf_test (void) { - _mm512_prefetch_i32scatter_pd (base, idx, 8, 2); - _mm512_mask_prefetch_i32scatter_pd (base, m8, idx, 8, 6); + _mm512_prefetch_i32scatter_pd (base, idx, 8, _MM_HINT_T1); + _mm512_mask_prefetch_i32scatter_pd (base, m8, idx, 8, _MM_HINT_ET1); } diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dps-1.c b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dps-1.c index fb70439..a76b77c 100644 --- a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dps-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1dps-1.c @@ -12,6 +12,6 @@ int *base; void extern avx512pf_test (void) { - _mm512_prefetch_i32scatter_ps (base, idx, 8, 2); - _mm512_mask_prefetch_i32scatter_ps (base, m16, idx, 8, 6); + _mm512_prefetch_i32scatter_ps (base, idx, 8, _MM_HINT_T1); + _mm512_mask_prefetch_i32scatter_ps (base, m16, idx, 8, _MM_HINT_ET1); } diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qpd-1.c b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qpd-1.c index 7fbd142..7a5747c 100644 --- a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qpd-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qpd-1.c @@ -12,6 +12,6 @@ int *base; void extern avx512pf_test (void) { - _mm512_prefetch_i64scatter_pd (base, idx, 8, 2); - _mm512_mask_prefetch_i64scatter_pd (base, m8, idx, 8, 6); + _mm512_prefetch_i64scatter_pd (base, idx, 8, _MM_HINT_T1); + _mm512_mask_prefetch_i64scatter_pd (base, m8, idx, 8, _MM_HINT_ET1); } diff --git a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qps-1.c b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qps-1.c index c004834..d0372b7 100644 --- a/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qps-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512pf-vscatterpf1qps-1.c @@ -12,6 +12,6 @@ int *base; void extern avx512pf_test (void) { - _mm512_prefetch_i64scatter_ps (base, idx, 8, 2); - _mm512_mask_prefetch_i64scatter_ps (base, m8, idx, 8, 6); + _mm512_prefetch_i64scatter_ps (base, idx, 8, _MM_HINT_T1); + _mm512_mask_prefetch_i64scatter_ps (base, m8, idx, 8, _MM_HINT_ET1); } diff --git a/gcc/testsuite/gcc.target/i386/sse-14.c b/gcc/testsuite/gcc.target/i386/sse-14.c index 10334a6..d9a5fed 100644 --- a/gcc/testsuite/gcc.target/i386/sse-14.c +++ b/gcc/testsuite/gcc.target/i386/sse-14.c @@ -519,14 +519,14 @@ test_4x (_mm_maskz_fixupimm_round_sd, __m128d, __mmask8, __m128d, __m128d, __m12 test_4x (_mm_maskz_fixupimm_round_ss, __m128, __mmask8, __m128, __m128, __m128i, 1, 8) /* avx512pfintrin.h */ -test_3vx (_mm512_mask_prefetch_i32gather_ps, __m512i, __mmask16, void const *, 1, 1) -test_3vx (_mm512_mask_prefetch_i32scatter_ps, void const *, __mmask16, __m512i, 1, 1) -test_3vx (_mm512_mask_prefetch_i64gather_ps, __m512i, __mmask8, void const *, 1, 1) -test_3vx (_mm512_mask_prefetch_i64scatter_ps, void const *, __mmask8, __m512i, 1, 1) -test_3vx (_mm512_mask_prefetch_i32gather_pd, __m256i, __mmask8, void const *, 1, 1) -test_3vx (_mm512_mask_prefetch_i32scatter_pd, void const *, __mmask8, __m256i, 1, 1) -test_3vx (_mm512_mask_prefetch_i64gather_pd, __m512i, __mmask8, void const *, 1, 1) -test_3vx (_mm512_mask_prefetch_i64scatter_pd, void const *, __mmask8, __m512i, 1, 1) +test_3vx (_mm512_mask_prefetch_i32gather_ps, __m512i, __mmask16, void const *, 1, _MM_HINT_T0) +test_3vx (_mm512_mask_prefetch_i32scatter_ps, void const *, __mmask16, __m512i, 1, _MM_HINT_T0) +test_3vx (_mm512_mask_prefetch_i64gather_ps, __m512i, __mmask8, void const *, 1, _MM_HINT_T0) +test_3vx (_mm512_mask_prefetch_i64scatter_ps, void const *, __mmask8, __m512i, 1, _MM_HINT_T0) +test_3vx (_mm512_mask_prefetch_i32gather_pd, __m256i, __mmask8, void const *, 1, _MM_HINT_T0) +test_3vx (_mm512_mask_prefetch_i32scatter_pd, void const *, __mmask8, __m256i, 1, _MM_HINT_T0) +test_3vx (_mm512_mask_prefetch_i64gather_pd, __m512i, __mmask8, void const *, 1, _MM_HINT_T0) +test_3vx (_mm512_mask_prefetch_i64scatter_pd, void const *, __mmask8, __m512i, 1, _MM_HINT_T0) /* avx512erintrin.h */ test_1 (_mm512_exp2a23_round_pd, __m512d, __m512d, 8) diff --git a/gcc/testsuite/gcc.target/i386/sse-22.c b/gcc/testsuite/gcc.target/i386/sse-22.c index 51f04c2..e9f227a 100644 --- a/gcc/testsuite/gcc.target/i386/sse-22.c +++ b/gcc/testsuite/gcc.target/i386/sse-22.c @@ -641,15 +641,15 @@ test_4x (_mm_maskz_fixupimm_round_sd, __m128d, __mmask8, __m128d, __m128d, __m12 test_4x (_mm_maskz_fixupimm_round_ss, __m128, __mmask8, __m128, __m128, __m128i, 1, 8) /* avx512pfintrin.h */ -test_3vx (_mm512_mask_prefetch_i32gather_ps, __m512i, __mmask16, void const *, 1, 1) -test_3vx (_mm512_mask_prefetch_i32scatter_ps, void const *, __mmask16, __m512i, 1, 1) -test_3vx (_mm512_mask_prefetch_i64gather_ps, __m512i, __mmask8, void const *, 1, 1) -test_3vx (_mm512_mask_prefetch_i64scatter_ps, void const *, __mmask8, __m512i, 1, 1) - -test_3vx (_mm512_mask_prefetch_i32gather_pd, __m256i, __mmask8, void const *, 1, 1) -test_3vx (_mm512_mask_prefetch_i32scatter_pd, void const *, __mmask8, __m256i, 1, 1) -test_3vx (_mm512_mask_prefetch_i64gather_pd, __m512i, __mmask8, long long *, 1, 1) -test_3vx (_mm512_mask_prefetch_i64scatter_pd, void const *, __mmask8, __m512i, 1, 1) +test_3vx (_mm512_mask_prefetch_i32gather_ps, __m512i, __mmask16, void const *, 1, _MM_HINT_T0) +test_3vx (_mm512_mask_prefetch_i32scatter_ps, void const *, __mmask16, __m512i, 1, _MM_HINT_T0) +test_3vx (_mm512_mask_prefetch_i64gather_ps, __m512i, __mmask8, void const *, 1, _MM_HINT_T0) +test_3vx (_mm512_mask_prefetch_i64scatter_ps, void const *, __mmask8, __m512i, 1, _MM_HINT_T0) + +test_3vx (_mm512_mask_prefetch_i32gather_pd, __m256i, __mmask8, void const *, 1, _MM_HINT_T0) +test_3vx (_mm512_mask_prefetch_i32scatter_pd, void const *, __mmask8, __m256i, 1, _MM_HINT_T0) +test_3vx (_mm512_mask_prefetch_i64gather_pd, __m512i, __mmask8, long long *, 1, _MM_HINT_T0) +test_3vx (_mm512_mask_prefetch_i64scatter_pd, void const *, __mmask8, __m512i, 1, _MM_HINT_T0) /* avx512erintrin.h */ test_1 (_mm512_exp2a23_round_pd, __m512d, __m512d, 8) diff --git a/gcc/testsuite/gcc.target/i386/sse-23.c b/gcc/testsuite/gcc.target/i386/sse-23.c index 5b24618..d227bab 100644 --- a/gcc/testsuite/gcc.target/i386/sse-23.c +++ b/gcc/testsuite/gcc.target/i386/sse-23.c @@ -361,14 +361,14 @@ #define __builtin_ia32_vpermilps512_mask(A, E, C, D) __builtin_ia32_vpermilps512_mask(A, 1, C, D) /* avx512pfintrin.h */ -#define __builtin_ia32_gatherpfdps(A, B, C, D, E) __builtin_ia32_gatherpfdps(A, B, C, 1, 1) -#define __builtin_ia32_gatherpfqps(A, B, C, D, E) __builtin_ia32_gatherpfqps(A, B, C, 1, 1) -#define __builtin_ia32_scatterpfdps(A, B, C, D, E) __builtin_ia32_scatterpfdps(A, B, C, 1, 1) -#define __builtin_ia32_scatterpfqps(A, B, C, D, E) __builtin_ia32_scatterpfqps(A, B, C, 1, 1) -#define __builtin_ia32_gatherpfdpd(A, B, C, D, E) __builtin_ia32_gatherpfdpd(A, B, C, 1, 1) -#define __builtin_ia32_gatherpfqpd(A, B, C, D, E) __builtin_ia32_gatherpfqpd(A, B, C, 1, 1) -#define __builtin_ia32_scatterpfdpd(A, B, C, D, E) __builtin_ia32_scatterpfdpd(A, B, C, 1, 1) -#define __builtin_ia32_scatterpfqpd(A, B, C, D, E) __builtin_ia32_scatterpfqpd(A, B, C, 1, 1) +#define __builtin_ia32_gatherpfdps(A, B, C, D, E) __builtin_ia32_gatherpfdps(A, B, C, 1, _MM_HINT_T0) +#define __builtin_ia32_gatherpfqps(A, B, C, D, E) __builtin_ia32_gatherpfqps(A, B, C, 1, _MM_HINT_T0) +#define __builtin_ia32_scatterpfdps(A, B, C, D, E) __builtin_ia32_scatterpfdps(A, B, C, 1, _MM_HINT_T0) +#define __builtin_ia32_scatterpfqps(A, B, C, D, E) __builtin_ia32_scatterpfqps(A, B, C, 1, _MM_HINT_T0) +#define __builtin_ia32_gatherpfdpd(A, B, C, D, E) __builtin_ia32_gatherpfdpd(A, B, C, 1, _MM_HINT_T0) +#define __builtin_ia32_gatherpfqpd(A, B, C, D, E) __builtin_ia32_gatherpfqpd(A, B, C, 1, _MM_HINT_T0) +#define __builtin_ia32_scatterpfdpd(A, B, C, D, E) __builtin_ia32_scatterpfdpd(A, B, C, 1, _MM_HINT_T0) +#define __builtin_ia32_scatterpfqpd(A, B, C, D, E) __builtin_ia32_scatterpfqpd(A, B, C, 1, _MM_HINT_T0) /* avx512erintrin.h */ #define __builtin_ia32_exp2pd_mask(A, B, C, D) __builtin_ia32_exp2pd_mask (A, B, C, 8) -- 2.7.4