func @main() {
%buffer = alloc() : memref<6xi32>
%one = constant 1 : index
- "gpu.launch_func"(%one, %one, %one,
- %one, %one, %one,
- %buffer) {kernel = @foo::@bar} : (index, index, index, index, index, index, memref<6xi32>) -> ()
+ gpu.launch_func @foo::@bar blocks in (%one, %one, %one)
+ threads in (%one, %one, %one) args(%buffer : memref<6xi32>)
return
}
}
call @fillI32Buffer(%output_casted, %zero) : (memref<?xi32>, i32) -> ()
%one = constant 1 : index
- "gpu.launch_func"(%one, %one, %one,
- %one, %one, %one,
- %input, %output) { kernel = @kernels::@double }
- : (index, index, index, index, index, index, memref<6xi32>, memref<6xi32>) -> ()
+ gpu.launch_func @kernels::@double
+ blocks in (%one, %one, %one) threads in (%one, %one, %one)
+ args(%input : memref<6xi32>, %output : memref<6xi32>)
%result = memref_cast %output : memref<6xi32> to memref<*xi32>
call @print_memref_i32(%result) : (memref<*xi32>) -> ()
return
call @fillF32Buffer3D(%output_casted, %0) : (memref<?x?x?xf32>, f32) -> ()
%one = constant 1 : index
- "gpu.launch_func"(%one, %one, %one,
- %one, %one, %one,
- %input1, %input2, %output) { kernel = @kernels::@sum }
- : (index, index, index, index, index, index, memref<3xf32>, memref<3x3xf32>, memref<3x3x3xf32>) -> ()
+ gpu.launch_func @kernels::@sum
+ blocks in (%one, %one, %one) threads in (%one, %one, %one)
+ args(%input1 : memref<3xf32>, %input2 : memref<3x3xf32>, %output : memref<3x3x3xf32>)
%result = memref_cast %output : memref<3x3x3xf32> to memref<*xf32>
call @print_memref_f32(%result) : (memref<*xf32>) -> ()
return