25 lines
699 B
C
25 lines
699 B
C
#include <unistd.h>
|
|
|
|
int
|
|
fallback_usleep (useconds_t d)
|
|
{
|
|
/* This function serves as a replacement for usleep in
|
|
this test case. It does not even attempt to be functionally
|
|
equivalent - we just want some sort of delay. */
|
|
int i;
|
|
int N = d * 2000;
|
|
for (i = 0; i < N; i++)
|
|
asm volatile ("" : : : "memory");
|
|
return 0;
|
|
}
|
|
|
|
#pragma omp declare variant (fallback_usleep) match(construct={target},device={arch(nvptx)})
|
|
#pragma omp declare variant (fallback_usleep) match(construct={target},device={arch(gcn)})
|
|
#pragma omp declare variant (usleep) match(user={condition(1)})
|
|
int
|
|
tgt_usleep (useconds_t d)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
#pragma omp declare target to (fallback_usleep, tgt_usleep)
|