
libgomp/ChangeLog: * testsuite/libgomp.c/declare-variant-4.h: Use gfx1100/gfx1030 function not gfx90a for gfx1100/gfx1030 context selector. Signed-off-by: Tobias Burnus <tburnus@baylibre.com>
91 lines
1.4 KiB
C
91 lines
1.4 KiB
C
#pragma omp declare target
|
|
|
|
__attribute__ ((noipa))
|
|
int
|
|
gfx803 (void)
|
|
{
|
|
return 0x803;
|
|
}
|
|
|
|
__attribute__ ((noipa))
|
|
int
|
|
gfx900 (void)
|
|
{
|
|
return 0x900;
|
|
}
|
|
|
|
__attribute__ ((noipa))
|
|
int
|
|
gfx906 (void)
|
|
{
|
|
return 0x906;
|
|
}
|
|
|
|
__attribute__ ((noipa))
|
|
int
|
|
gfx908 (void)
|
|
{
|
|
return 0x908;
|
|
}
|
|
|
|
__attribute__ ((noipa))
|
|
int
|
|
gfx90a (void)
|
|
{
|
|
return 0x90a;
|
|
}
|
|
|
|
__attribute__ ((noipa))
|
|
int
|
|
gfx1030 (void)
|
|
{
|
|
return 0x1030;
|
|
}
|
|
|
|
__attribute__ ((noipa))
|
|
int
|
|
gfx1100 (void)
|
|
{
|
|
return 0x1100;
|
|
}
|
|
|
|
#ifdef USE_FIJI_FOR_GFX803
|
|
#pragma omp declare variant(gfx803) match(device = {isa("fiji")})
|
|
#else
|
|
#pragma omp declare variant(gfx803) match(device = {isa("gfx803")})
|
|
#endif
|
|
#pragma omp declare variant(gfx900) match(device = {isa("gfx900")})
|
|
#pragma omp declare variant(gfx906) match(device = {isa("gfx906")})
|
|
#pragma omp declare variant(gfx908) match(device = {isa("gfx908")})
|
|
#pragma omp declare variant(gfx90a) match(device = {isa("gfx90a")})
|
|
#pragma omp declare variant(gfx1030) match(device = {isa("gfx1030")})
|
|
#pragma omp declare variant(gfx1100) match(device = {isa("gfx1100")})
|
|
__attribute__ ((noipa))
|
|
int
|
|
f (void)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
#pragma omp end declare target
|
|
|
|
int
|
|
main (void)
|
|
{
|
|
int v = 0;
|
|
|
|
#pragma omp target map(from : v)
|
|
v = f ();
|
|
|
|
#ifdef OFFLOAD_DEVICE_GCN
|
|
if (v == 0)
|
|
__builtin_abort ();
|
|
|
|
__builtin_printf ("AMDGCN accelerator: gfx%x\n", v);
|
|
#else
|
|
if (v != 0)
|
|
__builtin_abort ();
|
|
#endif
|
|
|
|
return 0;
|
|
}
|