Files
clang-p2996/openmp/runtime/test/transform/interchange/intfor.c
Michael Kruse 5c93a94f5a [Clang][OpenMP] Add interchange directive (#93022)
Add the interchange directive which will be introduced in the upcoming
OpenMP 6.0 specification. A preview has been published in [Technical
Report 12](https://www.openmp.org/wp-content/uploads/openmp-TR12.pdf).
2024-07-19 09:24:40 +02:00

39 lines
795 B
C

// RUN: %libomp-compile-and-run | FileCheck %s --match-full-lines
#ifndef HEADER
#define HEADER
#include <stdlib.h>
#include <stdio.h>
int main() {
printf("do\n");
#pragma omp interchange
for (int i = 7; i < 17; i += 3)
for (int j = 8; j < 18; j += 3)
printf("i=%d j=%d\n", i, j);
printf("done\n");
return EXIT_SUCCESS;
}
#endif /* HEADER */
// CHECK: do
// CHECK-NEXT: i=7 j=8
// CHECK-NEXT: i=10 j=8
// CHECK-NEXT: i=13 j=8
// CHECK-NEXT: i=16 j=8
// CHECK-NEXT: i=7 j=11
// CHECK-NEXT: i=10 j=11
// CHECK-NEXT: i=13 j=11
// CHECK-NEXT: i=16 j=11
// CHECK-NEXT: i=7 j=14
// CHECK-NEXT: i=10 j=14
// CHECK-NEXT: i=13 j=14
// CHECK-NEXT: i=16 j=14
// CHECK-NEXT: i=7 j=17
// CHECK-NEXT: i=10 j=17
// CHECK-NEXT: i=13 j=17
// CHECK-NEXT: i=16 j=17
// CHECK-NEXT: done