| /llvm-project-15.0.7/mlir/test/Dialect/SPIRV/IR/ |
| H A D | cooperative-matrix-ops.mlir | 47 …(%a : !spv.coopmatrix<8x32xi8, Subgroup>, %b : !spv.coopmatrix<32x8xi8, Subgroup>, %c : !spv.coopm… 48 …{%.*}} : !spv.coopmatrix<8x32xi8, Subgroup>, !spv.coopmatrix<32x8xi8, Subgroup> -> !spv.coopmatri… 49 … %b, %c : !spv.coopmatrix<8x32xi8, Subgroup>, !spv.coopmatrix<32x8xi8, Subgroup> -> !spv.coopmatri… 54 …perative_matrix_add(%a : !spv.coopmatrix<8x16xi32, Subgroup>, %b : !spv.coopmatrix<8x16xi32, Subgr… 61 …perative_matrix_sub(%a : !spv.coopmatrix<8x16xi32, Subgroup>, %b : !spv.coopmatrix<8x16xi32, Subgr… 114 …a : !spv.coopmatrix<16x16xi32, Subgroup>, %b : !spv.coopmatrix<16x8xi32, Subgroup>, %c : !spv.coop… 116 …b, %c : !spv.coopmatrix<16x16xi32, Subgroup>, !spv.coopmatrix<16x8xi32, Subgroup> -> !spv.coopmatr… 122 …%a : !spv.coopmatrix<8x16xi32, Subgroup>, %b : !spv.coopmatrix<8x8xi32, Subgroup>, %c : !spv.coopm… 124 …%b, %c : !spv.coopmatrix<8x16xi32, Subgroup>, !spv.coopmatrix<8x8xi32, Subgroup> -> !spv.coopmatri… 138 …%a : !spv.coopmatrix<8x16xf32, Subgroup>, %b : !spv.coopmatrix<16x8xi32, Subgroup>, %c : !spv.coop… [all …]
|
| H A D | composite-ops.mlir | 23 func.func @composite_construct_coopmatrix(%arg0 : f32) -> !spv.coopmatrix<8x16xf32, Subgroup> { 24 // CHECK: spv.CompositeConstruct {{%.*}} : !spv.coopmatrix<8x16xf32, Subgroup> 25 %0 = spv.CompositeConstruct %arg0 : !spv.coopmatrix<8x16xf32, Subgroup> 26 return %0: !spv.coopmatrix<8x16xf32, Subgroup> 65 %0 = spv.CompositeConstruct %arg0, %arg1 : !spv.coopmatrix<8x16xf32, Subgroup> 66 return %0: !spv.coopmatrix<8x16xf32, Subgroup> 99 func.func @composite_extract_coopmatrix(%arg0 : !spv.coopmatrix<8x16xf32, Subgroup>) -> f32 { 100 // CHECK: {{%.*}} = spv.CompositeExtract {{%.*}}[2 : i32] : !spv.coopmatrix<8x16xf32, Subgroup> 101 %0 = spv.CompositeExtract %arg0[2 : i32] : !spv.coopmatrix<8x16xf32, Subgroup> 227 …t_coopmatrix(%arg0: !spv.coopmatrix<8x16xi32, Subgroup>, %arg1: i32) -> !spv.coopmatrix<8x16xi32, … [all …]
|
| H A D | cast-ops.mlir | 141 func.func @convert_f_to_u_coopmatrix(%arg0 : !spv.coopmatrix<8x16xf32, Subgroup>) { 142 … spv.ConvertFToU {{%.*}} : !spv.coopmatrix<8x16xf32, Subgroup> to !spv.coopmatrix<8x16xi32, Subgro… 143 … = spv.ConvertFToU %arg0 : !spv.coopmatrix<8x16xf32, Subgroup> to !spv.coopmatrix<8x16xi32, Subgro… 225 func.func @f_convert_coop_matrix(%arg0 : !spv.coopmatrix<8x16xf32, Subgroup>) { 226 …} = spv.FConvert {{%.*}} : !spv.coopmatrix<8x16xf32, Subgroup> to !spv.coopmatrix<8x16xf64, Subgro… 227 …%0 = spv.FConvert %arg0 : !spv.coopmatrix<8x16xf32, Subgroup> to !spv.coopmatrix<8x16xf64, Subgrou…
|
| H A D | group-ops.mlir | 36 // CHECK: spv.GroupBroadcast Subgroup %{{.*}}, %{{.*}} : vector<4xf32>, vector<3xi32> 37 %0 = spv.GroupBroadcast Subgroup %value, %localid : vector<4xf32>, vector<3xi32> 44 // expected-error @+1 {{execution scope must be 'Workgroup' or 'Subgroup'}} 53 %0 = spv.GroupBroadcast Subgroup %value, %localid : f32, vector<3xf32> 61 %0 = spv.GroupBroadcast Subgroup %value, %localid : f32, vector<4xi32>
|
| H A D | non-uniform-ops.mlir | 16 // expected-error @+1 {{execution scope must be 'Workgroup' or 'Subgroup'}} 46 // CHECK: spv.GroupNonUniformBroadcast Subgroup %{{.*}}, %{{.*}} : vector<4xf32>, i32 47 %0 = spv.GroupNonUniformBroadcast Subgroup %value, %one : vector<4xf32>, i32 55 // expected-error @+1 {{execution scope must be 'Workgroup' or 'Subgroup'}} 64 %0 = spv.GroupNonUniformBroadcast Subgroup %value, %localid : f32, i32 84 // expected-error @+1 {{execution scope must be 'Workgroup' or 'Subgroup'}} 179 // expected-error @+1 {{execution scope must be 'Workgroup' or 'Subgroup'}}
|
| H A D | types.mlir | 442 // CHECK: func private @coop_matrix_type(!spv.coopmatrix<8x16xi32, Subgroup>, !spv.coopmatrix<8x8xf… 443 func.func private @coop_matrix_type(!spv.coopmatrix<8x16xi32, Subgroup>, !spv.coopmatrix<8x8xf32, W… 453 func.func private @missing_count(!spv.coopmatrix<8xi32, Subgroup>) -> ()
|
| /llvm-project-15.0.7/mlir/test/Target/SPIRV/ |
| H A D | cooperative-matrix-ops.mlir | 40 …%a : !spv.coopmatrix<8x16xi32, Subgroup>, %b : !spv.coopmatrix<16x8xi32, Subgroup>, %c : !spv.coop… 41 …%.*}} : !spv.coopmatrix<8x16xi32, Subgroup>, !spv.coopmatrix<16x8xi32, Subgroup> -> !spv.coopmatr… 42 …%b, %c : !spv.coopmatrix<8x16xi32, Subgroup>, !spv.coopmatrix<16x8xi32, Subgroup> -> !spv.coopmatr… 47 …perative_matrix_add(%a : !spv.coopmatrix<8x16xi32, Subgroup>, %b : !spv.coopmatrix<8x16xi32, Subgr… 49 %r = spv.IAdd %a, %b : !spv.coopmatrix<8x16xi32, Subgroup> 54 …perative_matrix_sub(%a : !spv.coopmatrix<8x16xi32, Subgroup>, %b : !spv.coopmatrix<8x16xi32, Subgr… 61 …erative_matrix_sdiv(%a : !spv.coopmatrix<8x16xi32, Subgroup>, %b : !spv.coopmatrix<8x16xi32, Subgr… 68 …erative_matrix_udiv(%a : !spv.coopmatrix<8x16xi32, Subgroup>, %b : !spv.coopmatrix<8x16xi32, Subgr… 75 …erative_matrix_fadd(%a : !spv.coopmatrix<8x16xf32, Subgroup>, %b : !spv.coopmatrix<8x16xf32, Subgr… 82 …erative_matrix_fsub(%a : !spv.coopmatrix<8x16xf32, Subgroup>, %b : !spv.coopmatrix<8x16xf32, Subgr… [all …]
|
| H A D | atomic-ops.mlir | 20 // CHECK: spv.AtomicSMax "Subgroup" "None" %{{.*}}, %{{.*}} : !spv.ptr<i32, Workgroup> 21 %7 = spv.AtomicSMax "Subgroup" "None" %ptr, %value : !spv.ptr<i32, Workgroup> 24 // CHECK: spv.AtomicUMax "Subgroup" "None" %{{.*}}, %{{.*}} : !spv.ptr<i32, Workgroup> 25 %9 = spv.AtomicUMax "Subgroup" "None" %ptr, %value : !spv.ptr<i32, Workgroup>
|
| H A D | barrier-ops.mlir | 10 // CHECK: spv.MemoryBarrier Subgroup, "AcquireRelease|SubgroupMemory" 11 spv.MemoryBarrier Subgroup, "AcquireRelease|SubgroupMemory"
|
| H A D | non-uniform-ops.mlir | 14 // CHECK: spv.GroupNonUniformBroadcast Subgroup %{{.*}}, %{{.*}} : f32, i32 15 %0 = spv.GroupNonUniformBroadcast Subgroup %value, %one : f32, i32
|
| /llvm-project-15.0.7/mlir/include/mlir/Dialect/SPIRV/IR/ |
| H A D | SPIRVNonUniformOps.td | 59 scope ::= `"Workgroup"` | `"Subgroup"` 120 scope ::= `"Workgroup"` | `"Subgroup"` 179 scope ::= `"Workgroup"` | `"Subgroup"` 238 scope ::= `"Workgroup"` | `"Subgroup"` 298 scope ::= `"Workgroup"` | `"Subgroup"` 358 scope ::= `"Workgroup"` | `"Subgroup"` 415 scope ::= `"Workgroup"` | `"Subgroup"` 470 scope ::= `"Workgroup"` | `"Subgroup"` 525 scope ::= `"Workgroup"` | `"Subgroup"` 582 scope ::= `"Workgroup"` | `"Subgroup"` [all …]
|
| H A D | SPIRVGroupOps.td | 10 // corresponds to "3.32.21. Group and Subgroup Instructions" of the SPIR-V 37 Execution must be Workgroup or Subgroup Scope. 48 scope ::= `"Workgroup"` | `"Subgroup"` 65 %0 = spv.GroupBroadcast "Subgroup" %scalar_value, %scalar_localid : f32, i32 100 in the current Subgroup that execute the same dynamic instance of this
|
| H A D | SPIRVCooperativeMatrixOps.td | 38 %0 = spv.CooperativeMatrixLengthNV : !spv.coopmatrix<Subgroup, i32, 8, 16> 185 !spv.coopmatrix<Subgroup, i32, 8, 16>
|
| H A D | SPIRVBarrierOps.td | 33 Execution. When Execution is Subgroup or Invocation, the behavior of
|
| H A D | SPIRVBase.td | 3684 def SPV_S_Subgroup : I32EnumAttrCase<"Subgroup", 3>;
|
| /llvm-project-15.0.7/mlir/lib/Conversion/LinalgToSPIRV/ |
| H A D | LinalgToSPIRV.cpp | 158 loc, originalInputType.getElementType(), spirv::Scope::Subgroup, \ in matchAndRewrite() 183 loc, spirv::Scope::Subgroup); in matchAndRewrite()
|
| /llvm-project-15.0.7/mlir/test/Conversion/LinalgToSPIRV/ |
| H A D | linalg-to-spirv.mlir | 32 // CHECK: %[[ADD:.+]] = spv.GroupNonUniformIAdd "Subgroup" "Reduce" %[[VAL]] : i32 35 // CHECK: %[[ELECT:.+]] = spv.GroupNonUniformElect Subgroup : i1
|
| /llvm-project-15.0.7/mlir/test/Dialect/SPIRV/Transforms/ |
| H A D | vce-deduction.mlir | 94 %0 = spv.GroupNonUniformIAdd "Subgroup" "Reduce" %val : i32 105 %0 = spv.GroupNonUniformIAdd "Subgroup" "Reduce" %val : i32
|
| /llvm-project-15.0.7/llvm/lib/Target/SPIRV/MCTargetDesc/ |
| H A D | SPIRVBaseInfo.h | 680 Subgroup = 3, enumerator
|
| H A D | SPIRVBaseInfo.cpp | 1031 CASE(Scope, Subgroup) in getScopeName()
|
| /llvm-project-15.0.7/mlir/lib/Dialect/SPIRV/IR/ |
| H A D | SPIRVOps.cpp | 902 if (scope != spirv::Scope::Workgroup && scope != spirv::Scope::Subgroup) in verifyGroupNonUniformArithmeticOp() 2544 if (scope != spirv::Scope::Workgroup && scope != spirv::Scope::Subgroup) in verify() 2562 if (scope != spirv::Scope::Workgroup && scope != spirv::Scope::Subgroup) in verify() 2574 if (scope != spirv::Scope::Workgroup && scope != spirv::Scope::Subgroup) in verify() 2676 if (scope != spirv::Scope::Workgroup && scope != spirv::Scope::Subgroup) in verify()
|
| /llvm-project-15.0.7/clang/docs/ |
| H A D | OpenCLSupport.rst | 399 | New functionality | Subgroup functions …
|
| /llvm-project-15.0.7/llvm/lib/Target/SPIRV/ |
| H A D | SPIRVInstrInfo.td | 664 // 3.42.21. Group and Subgroup Instructions
|
| /llvm-project-15.0.7/mlir/docs/Dialects/ |
| H A D | SPIR-V.md | 782 special capability if the execution scope is `Subgroup`, but it will require
|
| /llvm-project-15.0.7/clang/lib/Sema/ |
| H A D | OpenCLBuiltins.td | 1730 // OpenCL Extension v3.0 s38 - Extended Subgroup Functions
|