Changeset View
Changeset View
Standalone View
Standalone View
clang/test/OpenMP/capturing_in_templates.cpp
Show All 12 Lines | |||||
template <typename T1, typename T2> | template <typename T1, typename T2> | ||||
pair<T1, T2> make_pair(T1 &&t1, T2 &&t2) { | pair<T1, T2> make_pair(T1 &&t1, T2 &&t2) { | ||||
return {t1, t2}; | return {t1, t2}; | ||||
} | } | ||||
// CHECK-LABEL: @main | // CHECK-LABEL: @main | ||||
int main(int argc, char **argv) { | int main(int argc, char **argv) { | ||||
// CHECK: call i32 @__tgt_target(i64 -1, i8* @{{.+}}.region_id, i32 0, i8** null, i8** null, i64* null, i64* null) | // CHECK: call i32 @__tgt_target_mapper(i64 -1, i8* @{{.+}}.region_id, i32 0, i8** null, i8** null, i64* null, i64* null, i8** null) | ||||
#pragma omp target | #pragma omp target | ||||
{ | { | ||||
for (int i = 0; i < 64; ++i) { | for (int i = 0; i < 64; ++i) { | ||||
for (int j = 0; j < 64; ++j) { | for (int j = 0; j < 64; ++j) { | ||||
auto foo = make_pair(i * i, j * j); | auto foo = make_pair(i * i, j * j); | ||||
} | } | ||||
} | } | ||||
} | } | ||||
return 0; | return 0; | ||||
} | } | ||||
// CHECK: call {{.+}} @{{.*}}make_pair | // CHECK: call {{.+}} @{{.*}}make_pair |