|
1 | 1 | // RUN: mlir-translate -mlir-to-llvmir %s -split-input-file --verify-diagnostics | FileCheck %s |
2 | 2 |
|
3 | 3 | // CHECK-LABEL: @llvm_nvvm_barrier( |
4 | | -// CHECK-SAME: i32 %[[barId:.*]], i32 %[[numThreads:.*]], i32 %[[predicate:.*]]) |
5 | | -llvm.func @llvm_nvvm_barrier(%barID : i32, %numberOfThreads : i32, %predicate : i32) { |
| 4 | +// CHECK-SAME: i32 %[[barId:.*]], i32 %[[numThreads:.*]], i32 %[[redOperand:.*]]) |
| 5 | +llvm.func @llvm_nvvm_barrier(%barID : i32, %numberOfThreads : i32, %redOperand : i32) { |
6 | 6 | // CHECK: call void @llvm.nvvm.barrier.cta.sync.aligned.all(i32 0) |
7 | 7 | nvvm.barrier |
8 | 8 | // CHECK: call void @llvm.nvvm.barrier.cta.sync.aligned.all(i32 %[[barId]]) |
9 | 9 | nvvm.barrier id = %barID |
10 | 10 | // CHECK: call void @llvm.nvvm.barrier.cta.sync.aligned.count(i32 %[[barId]], i32 %[[numThreads]]) |
11 | 11 | nvvm.barrier id = %barID number_of_threads = %numberOfThreads |
12 | | - // CHECK: %{{.*}} = call i32 @llvm.nvvm.barrier0.and(i32 %[[predicate]]) |
13 | | - %0 = nvvm.barrier #nvvm.reduction<and> %predicate -> i32 |
14 | | - // CHECK: %{{.*}} = call i32 @llvm.nvvm.barrier0.or(i32 %[[predicate]]) |
15 | | - %1 = nvvm.barrier #nvvm.reduction<or> %predicate -> i32 |
16 | | - // CHECK: %{{.*}} = call i32 @llvm.nvvm.barrier0.popc(i32 %[[predicate]]) |
17 | | - %2 = nvvm.barrier #nvvm.reduction<popc> %predicate -> i32 |
| 12 | + // CHECK: %{{.*}} = call i32 @llvm.nvvm.barrier0.and(i32 %[[redOperand]]) |
| 13 | + %0 = nvvm.barrier #nvvm.reduction<and> %redOperand -> i32 |
| 14 | + // CHECK: %{{.*}} = call i32 @llvm.nvvm.barrier0.or(i32 %[[redOperand]]) |
| 15 | + %1 = nvvm.barrier #nvvm.reduction<or> %redOperand -> i32 |
| 16 | + // CHECK: %{{.*}} = call i32 @llvm.nvvm.barrier0.popc(i32 %[[redOperand]]) |
| 17 | + %2 = nvvm.barrier #nvvm.reduction<popc> %redOperand -> i32 |
18 | 18 |
|
19 | 19 | llvm.return |
20 | 20 | } |
0 commit comments