Please use GitHub pull requests for new patches. Avoid migrating existing patches. Phabricator shutdown timeline
Changeset View
Changeset View
Standalone View
Standalone View
clang/test/OpenMP/declare_reduction_codegen.cpp
Show First 20 Lines • Show All 172 Lines • ▼ Show 20 Lines | #pragma omp parallel reduction(fun : sss) | ||||
// CHECK-LABEL: work | // CHECK-LABEL: work | ||||
work<A>(); | work<A>(); | ||||
// CHECK-LABEL: foo | // CHECK-LABEL: foo | ||||
return foo(15); | return foo(15); | ||||
} | } | ||||
// CHECK: define internal {{.*}}void [[REGION]]( | // CHECK: define internal {{.*}}void [[REGION]]( | ||||
// CHECK: [[SSS_PRIV:%.+]] = alloca %struct.SSS, | // CHECK: [[SSS_PRIV:%.+]] = alloca %struct.SSS, | ||||
// CHECK: invoke {{.*}} @_ZN3SSSIiEC1Ev(%struct.SSS* {{[^,]*}} [[SSS_PRIV]]) | // CHECK: call unwindabort {{.*}} @_ZN3SSSIiEC1Ev(%struct.SSS* {{[^,]*}} [[SSS_PRIV]]) | ||||
// CHECK-NOT: {{call |invoke }} | // CHECK-NOT: {{call |invoke }} | ||||
// CHECK: call {{.*}}i32 @__kmpc_reduce_nowait( | // CHECK: call {{.*}}i32 @__kmpc_reduce_nowait( | ||||
// CHECK-LABEL: i32 @{{.+}}foo{{[^(].+}}(i32 | // CHECK-LABEL: i32 @{{.+}}foo{{[^(].+}}(i32 | ||||
// CHECK-LOAD-LABEL: i32 @{{.+}}foo{{[^(].+}}(i32 | // CHECK-LOAD-LABEL: i32 @{{.+}}foo{{[^(].+}}(i32 | ||||
// OMP45-LOAD: define internal {{.*}}void @{{[^(]+}}(i32* noalias noundef %0, i32* noalias noundef %1) | // OMP45-LOAD: define internal {{.*}}void @{{[^(]+}}(i32* noalias noundef %0, i32* noalias noundef %1) | ||||
// OMP45-LOAD: [[XOR:%.+]] = xor i32 | // OMP45-LOAD: [[XOR:%.+]] = xor i32 | ||||
▲ Show 20 Lines • Show All 55 Lines • Show Last 20 Lines |