1 // RUN: %libomptarget-compile-run-and-check-generic
3 // UNSUPPORTED: amdgcn-amd-amdhsa
10 int test_omp_aligned_alloc_on_device() {
13 omp_memspace_handle_t memspace
= omp_default_mem_space
;
14 omp_alloctrait_t traits
[2] = {{omp_atk_alignment
, 64}, {omp_atk_access
, 64}};
15 omp_allocator_handle_t alloc
=
16 omp_init_allocator(omp_default_mem_space
, 1, traits
);
18 #pragma omp target map(tofrom : errors) uses_allocators(alloc(traits))
21 int not_correct_array_values
= 0;
23 x
= (int *)omp_aligned_alloc(64, N
* sizeof(int), alloc
);
27 #pragma omp parallel for simd simdlen(16) aligned(x : 64)
28 for (int i
= 0; i
< N
; i
++) {
32 #pragma omp parallel for simd simdlen(16) aligned(x : 64)
33 for (int i
= 0; i
< N
; i
++) {
35 #pragma omp atomic write
36 not_correct_array_values
= 1;
39 if (not_correct_array_values
) {
46 omp_destroy_allocator(alloc
);
53 if (test_omp_aligned_alloc_on_device())