================
@@ -51,6 +51,9 @@ __attribute__((amdgpu_waves_per_eu(0, 4))) kernel void 
kernel_waves_per_eu_0_4()
 __attribute__((amdgpu_flat_work_group_size(64, 32))) kernel void 
kernel_flat_work_group_size_64_32() {} // expected-error 
{{'amdgpu_flat_work_group_size' attribute argument is invalid: min must not be 
greater than max}}
 __attribute__((amdgpu_waves_per_eu(4, 2))) kernel void 
kernel_waves_per_eu_4_2() {} // expected-error {{'amdgpu_waves_per_eu' 
attribute argument is invalid: min must not be greater than max}}
 
+__attribute__((reqd_work_group_size(32, 2, 1), amdgpu_flat_work_group_size(16, 
128))) kernel void 
kernel_reqd_work_group_size_32_2_1_flat_work_group_size_16_128() {} // 
expected-error {{'amdgpu_flat_work_group_size' attribute must match 
'reqd_work_group_size' product}}
+__attribute__((amdgpu_flat_work_group_size(16, 128), reqd_work_group_size(32, 
2, 1))) kernel void 
kernel_flat_work_group_size_16_128_reqd_work_group_size_32_2_1() {} // 
expected-error {{'amdgpu_flat_work_group_size' attribute must match 
'reqd_work_group_size' product}}
+
----------------
arsenm wrote:

> Even if they are allowed, they should be ignored, since they have no defined 
> semantics outside OpenCL.

It has obvious semantics, and the good QoI would be to respect it. And merely 
warn if you specify Y/Z dimensions 

https://github.com/llvm/llvm-project/pull/200989
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to