29 lines
747 B
C
29 lines
747 B
C
/* { dg-do compile } */
|
|
/* { dg-options "-fopenmp -fdump-tree-ompexp" } */
|
|
|
|
extern void bar(int);
|
|
|
|
void foo (void)
|
|
{
|
|
#pragma omp critical
|
|
bar(0);
|
|
|
|
/* Note that "name" is in its own namespace, thus this foo is not
|
|
the same as the function. */
|
|
#pragma omp critical(foo)
|
|
{
|
|
bar(1);
|
|
bar(2);
|
|
}
|
|
|
|
#pragma omp critical
|
|
#pragma omp critical(foo)
|
|
bar(3);
|
|
}
|
|
|
|
/* { dg-final { scan-tree-dump-times "GOMP_critical_start" 2 "ompexp" } } */
|
|
/* { dg-final { scan-tree-dump-times "GOMP_critical_end" 2 "ompexp" } } */
|
|
/* { dg-final { scan-tree-dump-times "GOMP_critical_name_start" 2 "ompexp" } } */
|
|
/* { dg-final { scan-tree-dump-times "GOMP_critical_name_end" 2 "ompexp" } } */
|
|
/* { dg-final { cleanup-tree-dump "ompexp" } } */
|