1 // NOTE
: Assertions have been autogenerated by utils
/update_cc_test_checks.py
2 // REQUIRES
: amdgpu-registered-target
3 // RUN
: %clang_cc1 -triple amdgcn-unknown-unknown -target-cpu gfx1100 \
4 // RUN
: -verify -DWMMA_GFX1100_TESTS -S -o - %s
7 typedef float v4f __attribute__
((ext_vector_type(4)));
8 typedef float v8f __attribute__
((ext_vector_type(8)));
9 typedef half v16h __attribute__
((ext_vector_type(16)));
10 typedef int v2i __attribute__
((ext_vector_type(2)));
11 typedef int v4i __attribute__
((ext_vector_type(4)));
12 typedef int v8i __attribute__
((ext_vector_type(8)));
13 typedef short v16s __attribute__
((ext_vector_type(16)));
15 #ifdef WMMA_GFX1100_TESTS
19 void test_amdgcn_wmma_f32_16x16x16_bf16_w32
(v16s a16s
, v16s b16s
, unsigned int i
,
20 global v16h
* out16h
, v16h a16h
, v16h b16h
, v16h c16h
,
21 global v16s
* out16s
, v2i a2i
, v2i b2i
, v16s c16s
,
22 global v8i
* out8i
, v4i a4i
, v4i b4i
, v8i c8i
)
24 *out16h
= __builtin_amdgcn_wmma_f16_16x16x16_f16_w32
(a16h, b16h
, c16h
, i
); // expected-error{{argument to '__builtin_amdgcn_wmma_f16_16x16x16_f16_w32' must be a constant integer}}
25 *out16s
= __builtin_amdgcn_wmma_bf16_16x16x16_bf16_w32
(a16s, b16s
, c16s
, i
); // expected-error{{argument to '__builtin_amdgcn_wmma_bf16_16x16x16_bf16_w32' must be a constant integer}}
26 *out16h
= __builtin_amdgcn_wmma_f16_16x16x16_f16_tied_w32
(a16h, b16h
, c16h
, i
); // expected-error{{argument to '__builtin_amdgcn_wmma_f16_16x16x16_f16_tied_w32' must be a constant integer}}
27 *out16s
= __builtin_amdgcn_wmma_bf16_16x16x16_bf16_tied_w32
(a16s, b16s
, c16s
, i
); // expected-error{{argument to '__builtin_amdgcn_wmma_bf16_16x16x16_bf16_tied_w32' must be a constant integer}}
28 *out8i
= __builtin_amdgcn_wmma_i32_16x16x16_iu8_w32
(i, a4i
, true
, b4i
, c8i
, false
); // expected-error{{argument to '__builtin_amdgcn_wmma_i32_16x16x16_iu8_w32' must be a constant integer}}
29 *out8i
= __builtin_amdgcn_wmma_i32_16x16x16_iu8_w32
(true, a4i
, i
, b4i
, c8i
, false
); // expected-error{{argument to '__builtin_amdgcn_wmma_i32_16x16x16_iu8_w32' must be a constant integer}}
30 *out8i
= __builtin_amdgcn_wmma_i32_16x16x16_iu4_w32
(i, a2i
, true
, b2i
, c8i
, false
); // expected-error{{argument to '__builtin_amdgcn_wmma_i32_16x16x16_iu4_w32' must be a constant integer}}
31 *out8i
= __builtin_amdgcn_wmma_i32_16x16x16_iu4_w32
(true, a2i
, i
, b2i
, c8i
, false
); // expected-error{{argument to '__builtin_amdgcn_wmma_i32_16x16x16_iu4_w32' must be a constant integer}}