24 lines · plain
1// Tests cudaMemcpy and writes from kernel2// RUN: cat %s | clang-repl --cuda | FileCheck %s3 4extern "C" int printf(const char*, ...);5 6__global__ void test_func(int* value) { *value = 42; }7 8int var;9int* devptr = nullptr;10printf("cudaMalloc: %d\n", cudaMalloc((void **) &devptr, sizeof(int)));11// CHECK: cudaMalloc: 012 13test_func<<<1,1>>>(devptr);14printf("CUDA Error: %d\n", cudaGetLastError());15// CHECK-NEXT: CUDA Error: 016 17printf("cudaMemcpy: %d\n", cudaMemcpy(&var, devptr, sizeof(int), cudaMemcpyDeviceToHost));18// CHECK-NEXT: cudaMemcpy: 019 20printf("Value: %d\n", var);21// CHECK-NEXT: Value: 4222 23%quit24