Changeset View
Changeset View
Standalone View
Standalone View
clang/test/OpenMP/distribute_parallel_for_reduction_codegen.cpp
Show All 39 Lines | int main() { | ||||
#pragma omp distribute parallel for reduction(+:r) | #pragma omp distribute parallel for reduction(+:r) | ||||
for (int i = 0; i < n; ++i) | for (int i = 0; i < n; ++i) | ||||
r += i; | r += i; | ||||
return tmain<int>(r); | return tmain<int>(r); | ||||
} | } | ||||
// CHECK-LABEL: main | // CHECK-LABEL: main | ||||
// CHECK: call{{.+}} @__tgt_target_teams( | // CHECK: call{{.+}} @__tgt_target_teams_mapper( | ||||
// CHECK: call void [[OFFL:@.+]]( | // CHECK: call void [[OFFL:@.+]]( | ||||
// CHECK: call{{.+}} [[TMAIN:@.+]](i{{32|64}} | // CHECK: call{{.+}} [[TMAIN:@.+]](i{{32|64}} | ||||
// CHECK: ret | // CHECK: ret | ||||
// CHECK: define{{.+}} [[OFFL]]( | // CHECK: define{{.+}} [[OFFL]]( | ||||
// CHECK: call{{.+}} @__kmpc_fork_teams({{.+}}, {{.+}}, {{.+}} [[TEOUTL:@.+]] to{{.+}} | // CHECK: call{{.+}} @__kmpc_fork_teams({{.+}}, {{.+}}, {{.+}} [[TEOUTL:@.+]] to{{.+}} | ||||
// CHECK: ret void | // CHECK: ret void | ||||
// CHECK: define{{.+}} [[TEOUTL]]( | // CHECK: define{{.+}} [[TEOUTL]]( | ||||
// CHECK: call{{.+}} @__kmpc_fork_call({{.+}}, {{.+}}, {{.+}} [[PAROUTL:@.+]] to{{.+}} | // CHECK: call{{.+}} @__kmpc_fork_call({{.+}}, {{.+}}, {{.+}} [[PAROUTL:@.+]] to{{.+}} | ||||
// CHECK: ret void | // CHECK: ret void | ||||
// CHECK: define{{.+}} [[PAROUTL]]( | // CHECK: define{{.+}} [[PAROUTL]]( | ||||
// CHECK: call{{.+}} @__kmpc_reduce_nowait( | // CHECK: call{{.+}} @__kmpc_reduce_nowait( | ||||
// CHECK: call{{.+}} @__kmpc_end_reduce_nowait( | // CHECK: call{{.+}} @__kmpc_end_reduce_nowait( | ||||
// CHECK: ret void | // CHECK: ret void | ||||
// CHECK: define{{.+}} [[TMAIN]](i{{32|64}} | // CHECK: define{{.+}} [[TMAIN]](i{{32|64}} | ||||
// CHECK: call{{.+}} @__tgt_target_teams( | // CHECK: call{{.+}} @__tgt_target_teams_mapper( | ||||
// CHECK: call void [[TOFFL:@.+]]( | // CHECK: call void [[TOFFL:@.+]]( | ||||
// CHECK: ret | // CHECK: ret | ||||
// CHECK: define{{.+}} [[TOFFL]]( | // CHECK: define{{.+}} [[TOFFL]]( | ||||
// CHECK: call{{.+}} @__kmpc_fork_teams({{.+}}, {{.+}}, {{.+}} [[TEMPLTEOUTL:@.+]] to{{.+}} | // CHECK: call{{.+}} @__kmpc_fork_teams({{.+}}, {{.+}}, {{.+}} [[TEMPLTEOUTL:@.+]] to{{.+}} | ||||
// CHECK: ret void | // CHECK: ret void | ||||
// CHECK: define{{.+}} [[TEMPLTEOUTL]]( | // CHECK: define{{.+}} [[TEMPLTEOUTL]]( | ||||
Show All 9 Lines |