|
2 | 2 | // RUN: | FileCheck --check-prefixes=CHECK-64,CHECK %s
|
3 | 3 | // RUN: mlir-opt -pass-pipeline="builtin.module(gpu.module(convert-gpu-to-llvm-spv{index-bitwidth=32}))" -split-input-file -verify-diagnostics %s \
|
4 | 4 | // RUN: | FileCheck --check-prefixes=CHECK-32,CHECK %s
|
5 |
| -// RUN: mlir-opt -pass-pipeline="builtin.module(gpu.module(convert-gpu-to-llvm-spv{force-opencl-address-spaces}))" -split-input-file -verify-diagnostics %s \ |
6 |
| -// RUN: | FileCheck --check-prefixes=CHECK-OPENCL %s |
7 | 5 |
|
8 | 6 | gpu.module @builtins {
|
9 | 7 | // CHECK-64: llvm.func spir_funccc @_Z14get_num_groupsj(i32) -> i64 attributes {
|
@@ -398,20 +396,20 @@ gpu.module @kernels {
|
398 | 396 | gpu.return
|
399 | 397 | }
|
400 | 398 |
|
401 |
| - // CHECK-64: llvm.func spir_kernelcc @kernel_with_conv_args(%{{.*}}: i64, %{{.*}}: !llvm.ptr, %{{.*}}: !llvm.ptr, %{{.*}}: i64) attributes {gpu.kernel} { |
402 |
| - // CHECK-32: llvm.func spir_kernelcc @kernel_with_conv_args(%{{.*}}: i32, %{{.*}}: !llvm.ptr, %{{.*}}: !llvm.ptr, %{{.*}}: i32) attributes {gpu.kernel} { |
| 399 | + // CHECK-64: llvm.func spir_kernelcc @kernel_with_conv_args(%{{.*}}: i64, %{{.*}}: !llvm.ptr<1>, %{{.*}}: !llvm.ptr<1>, %{{.*}}: i64) attributes {gpu.kernel} { |
| 400 | + // CHECK-32: llvm.func spir_kernelcc @kernel_with_conv_args(%{{.*}}: i32, %{{.*}}: !llvm.ptr<1>, %{{.*}}: !llvm.ptr<1>, %{{.*}}: i32) attributes {gpu.kernel} { |
403 | 401 | gpu.func @kernel_with_conv_args(%arg0: index, %arg1: memref<index>) kernel {
|
404 | 402 | gpu.return
|
405 | 403 | }
|
406 | 404 |
|
407 |
| - // CHECK-64: llvm.func spir_kernelcc @kernel_with_sized_memref(%{{.*}}: !llvm.ptr, %{{.*}}: !llvm.ptr, %{{.*}}: i64, %{{.*}}: i64, %{{.*}}: i64) attributes {gpu.kernel} { |
408 |
| - // CHECK-32: llvm.func spir_kernelcc @kernel_with_sized_memref(%{{.*}}: !llvm.ptr, %{{.*}}: !llvm.ptr, %{{.*}}: i32, %{{.*}}: i32, %{{.*}}: i32) attributes {gpu.kernel} { |
| 405 | + // CHECK-64: llvm.func spir_kernelcc @kernel_with_sized_memref(%{{.*}}: !llvm.ptr<1>, %{{.*}}: !llvm.ptr<1>, %{{.*}}: i64, %{{.*}}: i64, %{{.*}}: i64) attributes {gpu.kernel} { |
| 406 | + // CHECK-32: llvm.func spir_kernelcc @kernel_with_sized_memref(%{{.*}}: !llvm.ptr<1>, %{{.*}}: !llvm.ptr<1>, %{{.*}}: i32, %{{.*}}: i32, %{{.*}}: i32) attributes {gpu.kernel} { |
409 | 407 | gpu.func @kernel_with_sized_memref(%arg0: memref<1xindex>) kernel {
|
410 | 408 | gpu.return
|
411 | 409 | }
|
412 | 410 |
|
413 |
| - // CHECK-64: llvm.func spir_kernelcc @kernel_with_ND_memref(%{{.*}}: !llvm.ptr, %{{.*}}: !llvm.ptr, %{{.*}}: i64, %{{.*}}: i64, %{{.*}}: i64, %{{.*}}: i64, %{{.*}}: i64, %{{.*}}: i64, %{{.*}}: i64) attributes {gpu.kernel} { |
414 |
| - // CHECK-32: llvm.func spir_kernelcc @kernel_with_ND_memref(%{{.*}}: !llvm.ptr, %{{.*}}: !llvm.ptr, %{{.*}}: i32, %{{.*}}: i32, %{{.*}}: i32, %{{.*}}: i32, %{{.*}}: i32, %{{.*}}: i32, %{{.*}}: i32) attributes {gpu.kernel} { |
| 411 | + // CHECK-64: llvm.func spir_kernelcc @kernel_with_ND_memref(%{{.*}}: !llvm.ptr<1>, %{{.*}}: !llvm.ptr<1>, %{{.*}}: i64, %{{.*}}: i64, %{{.*}}: i64, %{{.*}}: i64, %{{.*}}: i64, %{{.*}}: i64, %{{.*}}: i64) attributes {gpu.kernel} { |
| 412 | + // CHECK-32: llvm.func spir_kernelcc @kernel_with_ND_memref(%{{.*}}: !llvm.ptr<1>, %{{.*}}: !llvm.ptr<1>, %{{.*}}: i32, %{{.*}}: i32, %{{.*}}: i32, %{{.*}}: i32, %{{.*}}: i32, %{{.*}}: i32, %{{.*}}: i32) attributes {gpu.kernel} { |
415 | 413 | gpu.func @kernel_with_ND_memref(%arg0: memref<128x128x128xindex>) kernel {
|
416 | 414 | gpu.return
|
417 | 415 | }
|
@@ -521,30 +519,30 @@ gpu.module @kernels {
|
521 | 519 | // -----
|
522 | 520 |
|
523 | 521 | gpu.module @kernels {
|
524 |
| -// CHECK-OPENCL: llvm.func spir_funccc @_Z12get_group_idj(i32) |
525 |
| -// CHECK-OPENCL-LABEL: llvm.func spir_funccc @no_address_spaces( |
526 |
| -// CHECK-OPENCL-SAME: %{{[a-zA-Z_][a-zA-Z0-9_]*}}: !llvm.ptr<1> |
527 |
| -// CHECK-OPENCL-SAME: %{{[a-zA-Z_][a-zA-Z0-9_]*}}: !llvm.ptr<1> |
528 |
| -// CHECK-OPENCL-SAME: %{{[a-zA-Z_][a-zA-Z0-9_]*}}: !llvm.ptr<1> |
| 522 | +// CHECK: llvm.func spir_funccc @_Z12get_group_idj(i32) |
| 523 | +// CHECK-LABEL: llvm.func spir_funccc @no_address_spaces( |
| 524 | +// CHECK-SAME: %{{[a-zA-Z_][a-zA-Z0-9_]*}}: !llvm.ptr<1> |
| 525 | +// CHECK-SAME: %{{[a-zA-Z_][a-zA-Z0-9_]*}}: !llvm.ptr<1> |
| 526 | +// CHECK-SAME: %{{[a-zA-Z_][a-zA-Z0-9_]*}}: !llvm.ptr<1> |
529 | 527 | gpu.func @no_address_spaces(%arg0: memref<f32>, %arg1: memref<f32, #gpu.address_space<global>>, %arg2: memref<f32>) {
|
530 | 528 | gpu.return
|
531 | 529 | }
|
532 | 530 |
|
533 |
| -// CHECK-OPENCL-LABEL: llvm.func spir_kernelcc @no_address_spaces_complex( |
534 |
| -// CHECK-OPENCL-SAME: %{{[a-zA-Z_][a-zA-Z0-9_]*}}: !llvm.ptr<1> |
535 |
| -// CHECK-OPENCL-SAME: %{{[a-zA-Z_][a-zA-Z0-9_]*}}: !llvm.ptr<1> |
536 |
| -// CHECK-OPENCL: llvm.call spir_funccc @no_address_spaces_callee |
| 531 | +// CHECK-LABEL: llvm.func spir_kernelcc @no_address_spaces_complex( |
| 532 | +// CHECK-SAME: %{{[a-zA-Z_][a-zA-Z0-9_]*}}: !llvm.ptr<1> |
| 533 | +// CHECK-SAME: %{{[a-zA-Z_][a-zA-Z0-9_]*}}: !llvm.ptr<1> |
| 534 | +// CHECK: llvm.call @no_address_spaces_callee |
537 | 535 | gpu.func @no_address_spaces_complex(%arg0: memref<2x2xf32>, %arg1: memref<4xf32>) kernel {
|
538 | 536 | func.call @no_address_spaces_callee(%arg0, %arg1) : (memref<2x2xf32>, memref<4xf32>) -> ()
|
539 | 537 | gpu.return
|
540 | 538 | }
|
541 |
| -// CHECK-OPENCL-LABEL: llvm.func @no_address_spaces_callee( |
542 |
| -// CHECK-OPENCL-SAME: %{{[a-zA-Z_][a-zA-Z0-9_]*}}: !llvm.ptr<1> |
543 |
| -// CHECK-OPENCL-SAME: %{{[a-zA-Z_][a-zA-Z0-9_]*}}: !llvm.ptr<1> |
544 |
| -// CHECK-OPENCL: [[C0:%.*]] = llvm.mlir.constant(0 : i32) : i32 |
545 |
| -// CHECK-OPENCL: llvm.call @_Z12get_group_idj([[C0]]) { |
546 |
| -// CHECK-OPENCL: [[LD:%.*]] = llvm.load |
547 |
| -// CHECK-OPENCL: llvm.store [[LD]] |
| 539 | +// CHECK-LABEL: llvm.func @no_address_spaces_callee( |
| 540 | +// CHECK-SAME: %{{[a-zA-Z_][a-zA-Z0-9_]*}}: !llvm.ptr<1> |
| 541 | +// CHECK-SAME: %{{[a-zA-Z_][a-zA-Z0-9_]*}}: !llvm.ptr<1> |
| 542 | +// CHECK: [[C0:%.*]] = llvm.mlir.constant(0 : i32) : i32 |
| 543 | +// CHECK: llvm.call spir_funccc @_Z12get_group_idj([[C0]]) { |
| 544 | +// CHECK: [[LD:%.*]] = llvm.load |
| 545 | +// CHECK: llvm.store [[LD]] |
548 | 546 | func.func @no_address_spaces_callee(%arg0: memref<2x2xf32>, %arg1: memref<4xf32>) {
|
549 | 547 | %block_id = gpu.block_id x
|
550 | 548 | %0 = memref.load %arg0[%block_id, %block_id] : memref<2x2xf32>
|
|
0 commit comments