43 lines
537 B
C
43 lines
537 B
C
#include "compat.h"
|
|
#include <stdio.h>
|
|
|
|
int main(void)
|
|
{
|
|
#pragma omp parallel
|
|
#pragma omp single
|
|
{
|
|
#pragma omp task label("A")
|
|
{
|
|
sleep_us(5000);
|
|
printf("A\n");
|
|
}
|
|
|
|
#pragma omp task label("B")
|
|
{
|
|
#pragma omp task label("B1")
|
|
{
|
|
sleep_us(2000);
|
|
printf("B1\n");
|
|
}
|
|
|
|
/* Shouldn't wait for task A */
|
|
#pragma omp taskwait
|
|
|
|
#pragma omp task
|
|
{
|
|
sleep_us(1000);
|
|
printf("B2\n");
|
|
}
|
|
}
|
|
|
|
#pragma omp task label("C")
|
|
{
|
|
printf("C\n");
|
|
}
|
|
}
|
|
|
|
/* Expected output C B1 B2 A */
|
|
|
|
return 0;
|
|
}
|