xref: /llvm-project/offload/test/Inputs/target-use-dev-ptr.c (revision d84d0caf28902843e0aae7ac435daed9aa04e3e2)
1*d84d0cafSagozillon // Helper function used in Offload Fortran test
2*d84d0cafSagozillon // target-use-dev-ptr.f90 to allocate data and
3*d84d0cafSagozillon // check resulting addresses.
4*d84d0cafSagozillon 
5*d84d0cafSagozillon #include <assert.h>
6*d84d0cafSagozillon #include <malloc.h>
7*d84d0cafSagozillon #include <stdio.h>
8*d84d0cafSagozillon 
9*d84d0cafSagozillon int *get_ptr() {
10*d84d0cafSagozillon   int *ptr = malloc(sizeof(int));
11*d84d0cafSagozillon   assert(ptr && "malloc returned null");
12*d84d0cafSagozillon   return ptr;
13*d84d0cafSagozillon }
14*d84d0cafSagozillon 
15*d84d0cafSagozillon int check_result(int *host_ptr, int *dev_ptr) {
16*d84d0cafSagozillon   if (dev_ptr == NULL || dev_ptr == host_ptr) {
17*d84d0cafSagozillon     printf("FAILURE\n");
18*d84d0cafSagozillon     return -1;
19*d84d0cafSagozillon   } else {
20*d84d0cafSagozillon     printf("SUCCESS\n");
21*d84d0cafSagozillon     return 0;
22*d84d0cafSagozillon   }
23*d84d0cafSagozillon }
24