projects
/
platform
/
upstream
/
gcc.git
/ blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
history
|
raw
|
HEAD
Fix switch conversion in offloading functions
[platform/upstream/gcc.git]
/
libgomp
/
testsuite
/
libgomp.oacc-c-c++-common
/
switch-conversion.c
1
/* PR tree-optimization/85063 */
2
/* { dg-additional-options "-ftree-switch-conversion" } */
3
4
#include <stdlib.h>
5
6
#pragma acc routine seq
7
static int __attribute__((noinline)) foo (int n)
8
{
9
switch (n & 3)
10
{
11
case 0: return 4;
12
case 1: return 3;
13
case 2: return 2;
14
default:
15
return 1;
16
}
17
}
18
19
int
20
main (void)
21
{
22
int n[1];
23
24
n[0] = 4;
25
26
#pragma acc parallel copy(n)
27
{
28
n[0] = foo (n[0]);
29
}
30
31
if (n[0] != 4)
32
abort ();
33
34
return 0;
35
}