Artem Belevich | c62214d | 2019-01-31 21:34:03 +0000 | [diff] [blame] | 1 | // RUN: %clang_cc1 -target-sdk-version=8.0 -emit-llvm %s -o - \ |
| 2 | // RUN: | FileCheck %s --check-prefixes=CUDA-OLD,CHECK |
| 3 | // RUN: %clang_cc1 -target-sdk-version=9.2 -emit-llvm %s -o - \ |
| 4 | // RUN: | FileCheck %s --check-prefixes=CUDA-NEW,CHECK |
| 5 | // RUN: %clang_cc1 -x hip -emit-llvm %s -o - \ |
| 6 | // RUN: | FileCheck %s --check-prefixes=HIP,CHECK |
Yaxun Liu | 887c569 | 2018-04-25 01:10:37 +0000 | [diff] [blame] | 7 | |
Peter Collingbourne | fe88342 | 2011-10-06 18:29:37 +0000 | [diff] [blame] | 8 | |
Eli Bendersky | 3468d9d | 2014-04-28 22:21:28 +0000 | [diff] [blame] | 9 | #include "Inputs/cuda.h" |
Peter Collingbourne | fe88342 | 2011-10-06 18:29:37 +0000 | [diff] [blame] | 10 | |
Yaxun Liu | 48390a9 | 2018-04-25 13:07:58 +0000 | [diff] [blame] | 11 | // CHECK-LABEL: define{{.*}}g1 |
Yaxun Liu | 887c569 | 2018-04-25 01:10:37 +0000 | [diff] [blame] | 12 | // HIP: call{{.*}}hipSetupArgument |
| 13 | // HIP: call{{.*}}hipLaunchByPtr |
Artem Belevich | c62214d | 2019-01-31 21:34:03 +0000 | [diff] [blame] | 14 | // CUDA-OLD: call{{.*}}cudaSetupArgument |
| 15 | // CUDA-OLD: call{{.*}}cudaLaunch |
| 16 | // CUDA-NEW: call{{.*}}__cudaPopCallConfiguration |
| 17 | // CUDA-NEW: call{{.*}}cudaLaunchKernel |
Peter Collingbourne | fe88342 | 2011-10-06 18:29:37 +0000 | [diff] [blame] | 18 | __global__ void g1(int x) {} |
| 19 | |
Yaxun Liu | 48390a9 | 2018-04-25 13:07:58 +0000 | [diff] [blame] | 20 | // CHECK-LABEL: define{{.*}}main |
Peter Collingbourne | fe88342 | 2011-10-06 18:29:37 +0000 | [diff] [blame] | 21 | int main(void) { |
Yaxun Liu | 887c569 | 2018-04-25 01:10:37 +0000 | [diff] [blame] | 22 | // HIP: call{{.*}}hipConfigureCall |
Artem Belevich | c62214d | 2019-01-31 21:34:03 +0000 | [diff] [blame] | 23 | // CUDA-OLD: call{{.*}}cudaConfigureCall |
| 24 | // CUDA-NEW: call{{.*}}__cudaPushCallConfiguration |
Peter Collingbourne | fe88342 | 2011-10-06 18:29:37 +0000 | [diff] [blame] | 25 | // CHECK: icmp |
| 26 | // CHECK: br |
| 27 | // CHECK: call{{.*}}g1 |
| 28 | g1<<<1, 1>>>(42); |
| 29 | } |