mirror of
https://review.haiku-os.org/buildtools
synced 2025-02-07 14:34:51 +01:00
92b3138b83
Updated dependencies: * GMP 6.2.1 * ISL 0.24 * MPL 1.2.1 * MPFR 4.1.0 The dependencies were pulled in by running the ./contrib/download_prerequisites script and then manually removing the symbolic links and archives, and renaming the directories (i.e mv isl-0.24 to isl)
47 lines
1.2 KiB
C
47 lines
1.2 KiB
C
/* { dg-skip-if "" { *-*-* } { "*" } { "-DACC_MEM_SHARED=0" } } */
|
|
|
|
#include <assert.h>
|
|
#include <openacc.h>
|
|
#include <stdint.h>
|
|
|
|
int
|
|
main ()
|
|
{
|
|
int data;
|
|
int *data_p_dev = (int *) acc_create (&data, sizeof data);
|
|
int *data_p = &data;
|
|
uintptr_t ptrbits;
|
|
|
|
acc_copyin (&data_p, sizeof data_p);
|
|
|
|
/* Test attach/detach directives. */
|
|
#pragma acc enter data attach(data_p)
|
|
#pragma acc serial copyout(ptrbits) /* { dg-warning "using .vector_length \\(32\\)., ignoring 1" "" { target openacc_nvidia_accel_selected } } */
|
|
{
|
|
ptrbits = (uintptr_t) data_p;
|
|
}
|
|
#pragma acc exit data detach(data_p)
|
|
assert ((void *) ptrbits == data_p_dev);
|
|
|
|
acc_update_self (&data_p, sizeof data_p);
|
|
assert (data_p == &data);
|
|
|
|
/* Test attach/detach API call. */
|
|
acc_attach ((void **) &data_p);
|
|
#pragma acc serial copyout(ptrbits) /* { dg-warning "using .vector_length \\(32\\)., ignoring 1" "" { target openacc_nvidia_accel_selected } } */
|
|
{
|
|
ptrbits = (uintptr_t) data_p;
|
|
}
|
|
acc_detach ((void **) &data_p);
|
|
|
|
assert ((void *) ptrbits == data_p_dev);
|
|
acc_update_self (&data_p, sizeof data_p);
|
|
assert (data_p == &data);
|
|
|
|
acc_delete (&data_p, sizeof data_p);
|
|
acc_delete (&data, sizeof data);
|
|
|
|
return 0;
|
|
}
|
|
|