|
19 | 19 | ! CHECK-LABEL: func.func @_QPdevsub() attributes {cuf.proc_attr = #cuf.cuda_proc<global>} |
20 | 20 | ! CHECK: fir.call @llvm.nvvm.barrier0() fastmath<contract> : () -> () |
21 | 21 | ! CHECK: fir.call @__syncwarp(%{{.*}}) proc_attrs<bind_c> fastmath<contract> : (!fir.ref<i32>) -> () |
22 | | -! CHECK: fir.call @__threadfence() |
23 | | -! CHECK: fir.call @__threadfence_block() |
24 | | -! CHECK: fir.call @__threadfence_system() |
| 22 | +! CHECK: fir.call @llvm.nvvm.membar.gl() fastmath<contract> : () -> () |
| 23 | +! CHECK: fir.call @llvm.nvvm.membar.cta() fastmath<contract> : () -> () |
| 24 | +! CHECK: fir.call @llvm.nvvm.membar.sys() fastmath<contract> : () -> () |
25 | 25 | ! CHECK: %{{.*}} = fir.call @llvm.nvvm.barrier0.and(%c1_i32_0) fastmath<contract> : (i32) -> i32 |
26 | 26 | ! CHECK: %{{.*}} = fir.call @llvm.nvvm.barrier0.popc(%c1_i32_1) fastmath<contract> : (i32) -> i32 |
27 | 27 | ! CHECK: %{{.*}} = fir.call @llvm.nvvm.barrier0.or(%c1_i32_2) fastmath<contract> : (i32) -> i32 |
28 | 28 |
|
29 | | -! CHECK: func.func private @__syncthreads() attributes {cuf.proc_attr = #cuf.cuda_proc<device>, fir.bindc_name = "__syncthreads", fir.proc_attrs = #fir.proc_attrs<bind_c>} |
| 29 | +! CHECK: func.func private @llvm.nvvm.barrier0() |
30 | 30 | ! CHECK: func.func private @__syncwarp(!fir.ref<i32> {cuf.data_attr = #cuf.cuda<device>}) attributes {cuf.proc_attr = #cuf.cuda_proc<device>, fir.bindc_name = "__syncwarp", fir.proc_attrs = #fir.proc_attrs<bind_c>} |
31 | | -! CHECK: func.func private @__threadfence() attributes {cuf.proc_attr = #cuf.cuda_proc<device>, fir.bindc_name = "__threadfence", fir.proc_attrs = #fir.proc_attrs<bind_c>} |
32 | | -! CHECK: func.func private @__threadfence_block() attributes {cuf.proc_attr = #cuf.cuda_proc<device>, fir.bindc_name = "__threadfence_block", fir.proc_attrs = #fir.proc_attrs<bind_c>} |
33 | | -! CHECK: func.func private @__threadfence_system() attributes {cuf.proc_attr = #cuf.cuda_proc<device>, fir.bindc_name = "__threadfence_system", fir.proc_attrs = #fir.proc_attrs<bind_c>} |
34 | | -! CHECK: func.func private @__syncthreads_and(!fir.ref<i32> {cuf.data_attr = #cuf.cuda<device>}) -> i32 attributes {cuf.proc_attr = #cuf.cuda_proc<device>, fir.bindc_name = "__syncthreads_and", fir.proc_attrs = #fir.proc_attrs<bind_c>} |
35 | | -! CHECK: func.func private @__syncthreads_count(!fir.ref<i32> {cuf.data_attr = #cuf.cuda<device>}) -> i32 attributes {cuf.proc_attr = #cuf.cuda_proc<device>, fir.bindc_name = "__syncthreads_count", fir.proc_attrs = #fir.proc_attrs<bind_c>} |
36 | | -! CHECK: func.func private @__syncthreads_or(!fir.ref<i32> {cuf.data_attr = #cuf.cuda<device>}) -> i32 attributes {cuf.proc_attr = #cuf.cuda_proc<device>, fir.bindc_name = "__syncthreads_or", fir.proc_attrs = #fir.proc_attrs<bind_c>} |
| 31 | +! CHECK: func.func private @llvm.nvvm.membar.gl() |
| 32 | +! CHECK: func.func private @llvm.nvvm.membar.cta() |
| 33 | +! CHECK: func.func private @llvm.nvvm.membar.sys() |
| 34 | +! CHECK: func.func private @llvm.nvvm.barrier0.and(i32) -> i32 |
| 35 | +! CHECK: func.func private @llvm.nvvm.barrier0.popc(i32) -> i32 |
| 36 | +! CHECK: func.func private @llvm.nvvm.barrier0.or(i32) -> i32 |
0 commit comments