brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.1 KiB · ff11d8a Raw
56 lines · c
1// RUN: %clang_cc1 -verify -fopenmp -triple x86_64-unknown-linux-gnu \2// RUN:   -disable-llvm-passes -emit-llvm %s -o - | FileCheck %s3 4// expected-no-diagnostics5 6int x[100];7int y[100];8int z[100][100];9 10// CHECK-LABEL: @many_iterators_single_clause(11// CHECK:    [[VLA:%.*]] = alloca [[STRUCT_KMP_DEPEND_INFO:%.*]], i64 10, align 1612// CHECK:    = call i32 @__kmpc_omp_task_with_deps(ptr {{.*}}, i32 {{.*}}, ptr {{.*}}, i32 10, ptr {{.*}}, i32 0, ptr null)13void many_iterators_single_clause(void) {14    #pragma omp task depend(iterator(j=0:5), in: x[j], y[j])15    {16    }17}18 19// CHECK-LABEL: @many_iterators_many_clauses(20// CHECK:    [[VLA:%.*]] = alloca [[STRUCT_KMP_DEPEND_INFO:%.*]], i64 10, align 1621// CHECK:    = call i32 @__kmpc_omp_task_with_deps(ptr {{.*}}, i32 {{.*}}, ptr {{.*}}, i32 10, ptr {{.*}}, i32 0, ptr null)22void many_iterators_many_clauses(void) {23    #pragma omp task depend(iterator(j=0:5), in: x[j]) \24                     depend(iterator(j=0:5), in: y[j])25    {26    }27}28 29// CHECK-LABEL: @multidim_iterators_clause1(30// CHECK:    [[VLA:%.*]] = alloca [[STRUCT_KMP_DEPEND_INFO:%.*]], i64 1, align 1631// CHECK:    = call i32 @__kmpc_omp_task_with_deps(ptr {{.*}}, i32 {{.*}}, ptr {{.*}}, i32 1, ptr {{.*}}, i32 0, ptr null)32void multidim_iterators_clause1(void) {33    #pragma omp task depend(iterator(i=0:1, j=0:1), in: z[i][j])34    {35    }36}37 38// CHECK-LABEL: @multidim_iterators_offset_clause(39// CHECK:    [[VLA:%.*]] = alloca [[STRUCT_KMP_DEPEND_INFO:%.*]], i64 1, align 1640// CHECK:    = call i32 @__kmpc_omp_task_with_deps(ptr {{.*}}, i32 {{.*}}, ptr {{.*}}, i32 1, ptr {{.*}}, i32 0, ptr null)41void multidim_iterators_offset_clause(void) {42    #pragma omp task depend(iterator(i=5:6, j=10:11), in: z[i][j])43    {44    }45}46 47// CHECK-LABEL: @multidim_iterators_clause25(48// CHECK:    [[VLA:%.*]] = alloca [[STRUCT_KMP_DEPEND_INFO:%.*]], i64 25, align 1649// CHECK:    = call i32 @__kmpc_omp_task_with_deps(ptr {{.*}}, i32 {{.*}}, ptr {{.*}}, i32 25, ptr {{.*}}, i32 0, ptr null)50void multidim_iterators_clause25(void) {51    #pragma omp task depend(iterator(i=0:5, j=0:5), in: z[i][j])52    {53    }54}55 56