8 changes: 4 additions & 4 deletions clang/test/OpenMP/target_private_codegen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ int foo(int n) {
// TCHECK: [[VLA_ADDR_REF:%.+]] = load i{{[0-9]+}}, ptr [[VLA_ADDR]],
// TCHECK: [[VLA_ADDR_REF2:%.+]] = load i{{[0-9]+}}, ptr [[VLA_ADDR2]],
// TCHECK: [[VLA_ADDR_REF4:%.+]] = load i{{[0-9]+}}, ptr [[VLA_ADDR4]],
// TCHECK: [[RET_STACK:%.+]] = call ptr @llvm.stacksave()
// TCHECK: [[RET_STACK:%.+]] = call ptr @llvm.stacksave.p0()
// TCHECK: store ptr [[RET_STACK]], ptr [[SSTACK]],
// TCHECK: [[VLA5:%.+]] = alloca float, i{{[0-9]+}} [[VLA_ADDR_REF]],
// TCHECK: [[VLA6_SIZE:%.+]] = mul{{.+}} i{{[0-9]+}} [[VLA_ADDR_REF2]], [[VLA_ADDR_REF4]]
Expand Down Expand Up @@ -138,7 +138,7 @@ int foo(int n) {

// finish
// [[RELOAD_SSTACK:%.+]] = load ptr, ptr [[SSTACK]],
// call ovid @llvm.stackrestore(ptr [[RELOAD_SSTACK]])
// call ovid @llvm.stackrestore.p0(ptr [[RELOAD_SSTACK]])
// ret void

return a;
Expand Down Expand Up @@ -219,7 +219,7 @@ struct S1 {
// TCHECK: [[TH_ADDR_REF:%.+]] = load ptr, ptr [[TH_ADDR]],
// TCHECK: [[VLA_ADDR_REF:%.+]] = load i{{[0-9]+}}, ptr [[VLA_ADDR]],
// TCHECK: [[VLA_ADDR_REF2:%.+]] = load i{{[0-9]+}}, ptr [[VLA_ADDR2]],
// TCHECK: [[RET_STACK:%.+]] = call ptr @llvm.stacksave()
// TCHECK: [[RET_STACK:%.+]] = call ptr @llvm.stacksave.p0()
// TCHECK: store ptr [[RET_STACK:%.+]], ptr [[SSTACK]],

// this->a = (double)b + 1.5;
Expand All @@ -244,7 +244,7 @@ struct S1 {

// finish
// TCHECK: [[RELOAD_SSTACK:%.+]] = load ptr, ptr [[SSTACK]],
// TCHECK: call void @llvm.stackrestore(ptr [[RELOAD_SSTACK]])
// TCHECK: call void @llvm.stackrestore.p0(ptr [[RELOAD_SSTACK]])
// TCHECK: ret void
};

Expand Down
2 changes: 1 addition & 1 deletion clang/test/OpenMP/target_simd_codegen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -475,7 +475,7 @@ int bar(int n){
//
// CHECK: define {{.*}}[[FS1]]
//
// CHECK: ptr @llvm.stacksave()
// CHECK: ptr @llvm.stacksave.p0()
// CHECK-32: store i32 %{{.+}}, ptr %__vla_expr
// OMP51: [[IF:%.+]] = icmp sgt i32 {{[^,]+}}, 60
// CHECK-64: store i32 %{{.+}}, ptr [[B_ADDR:%.+]],
Expand Down
16 changes: 8 additions & 8 deletions clang/test/OpenMP/target_teams_codegen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -358,7 +358,7 @@ int bar(int n){
// CHECK1-NEXT: store i16 0, ptr [[AA]], align 2
// CHECK1-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK1-NEXT: [[TMP2:%.*]] = zext i32 [[TMP1]] to i64
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave()
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK1-NEXT: store ptr [[TMP3]], ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: [[VLA:%.*]] = alloca float, i64 [[TMP2]], align 4
// CHECK1-NEXT: store i64 [[TMP2]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -736,7 +736,7 @@ int bar(int n){
// CHECK1: omp_offload.cont39:
// CHECK1-NEXT: [[TMP192:%.*]] = load i32, ptr [[A]], align 4
// CHECK1-NEXT: [[TMP193:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: call void @llvm.stackrestore(ptr [[TMP193]])
// CHECK1-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP193]])
// CHECK1-NEXT: ret i32 [[TMP192]]
//
//
Expand Down Expand Up @@ -1322,7 +1322,7 @@ int bar(int n){
// CHECK1-NEXT: store i32 [[ADD]], ptr [[B]], align 4
// CHECK1-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK1-NEXT: [[TMP2:%.*]] = zext i32 [[TMP1]] to i64
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave()
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK1-NEXT: store ptr [[TMP3]], ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: [[TMP4:%.*]] = mul nuw i64 2, [[TMP2]]
// CHECK1-NEXT: [[VLA:%.*]] = alloca i16, i64 [[TMP4]], align 2
Expand Down Expand Up @@ -1419,7 +1419,7 @@ int bar(int n){
// CHECK1-NEXT: [[TMP46:%.*]] = load i32, ptr [[B]], align 4
// CHECK1-NEXT: [[ADD3:%.*]] = add nsw i32 [[CONV]], [[TMP46]]
// CHECK1-NEXT: [[TMP47:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: call void @llvm.stackrestore(ptr [[TMP47]])
// CHECK1-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP47]])
// CHECK1-NEXT: ret i32 [[ADD3]]
//
//
Expand Down Expand Up @@ -1851,7 +1851,7 @@ int bar(int n){
// CHECK3-NEXT: store i32 0, ptr [[A]], align 4
// CHECK3-NEXT: store i16 0, ptr [[AA]], align 2
// CHECK3-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK3-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK3-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK3-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 4
// CHECK3-NEXT: [[VLA:%.*]] = alloca float, i32 [[TMP1]], align 4
// CHECK3-NEXT: store i32 [[TMP1]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -2230,7 +2230,7 @@ int bar(int n){
// CHECK3: omp_offload.cont39:
// CHECK3-NEXT: [[TMP192:%.*]] = load i32, ptr [[A]], align 4
// CHECK3-NEXT: [[TMP193:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK3-NEXT: call void @llvm.stackrestore(ptr [[TMP193]])
// CHECK3-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP193]])
// CHECK3-NEXT: ret i32 [[TMP192]]
//
//
Expand Down Expand Up @@ -2814,7 +2814,7 @@ int bar(int n){
// CHECK3-NEXT: [[ADD:%.*]] = add nsw i32 [[TMP0]], 1
// CHECK3-NEXT: store i32 [[ADD]], ptr [[B]], align 4
// CHECK3-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK3-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK3-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK3-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 4
// CHECK3-NEXT: [[TMP3:%.*]] = mul nuw i32 2, [[TMP1]]
// CHECK3-NEXT: [[VLA:%.*]] = alloca i16, i32 [[TMP3]], align 2
Expand Down Expand Up @@ -2912,7 +2912,7 @@ int bar(int n){
// CHECK3-NEXT: [[TMP46:%.*]] = load i32, ptr [[B]], align 4
// CHECK3-NEXT: [[ADD3:%.*]] = add nsw i32 [[CONV]], [[TMP46]]
// CHECK3-NEXT: [[TMP47:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK3-NEXT: call void @llvm.stackrestore(ptr [[TMP47]])
// CHECK3-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP47]])
// CHECK3-NEXT: ret i32 [[ADD3]]
//
//
Expand Down
16 changes: 8 additions & 8 deletions clang/test/OpenMP/target_teams_distribute_codegen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -344,7 +344,7 @@ int bar(int n){
// CHECK1-NEXT: store i16 0, ptr [[AA]], align 2
// CHECK1-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK1-NEXT: [[TMP2:%.*]] = zext i32 [[TMP1]] to i64
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave()
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK1-NEXT: store ptr [[TMP3]], ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: [[VLA:%.*]] = alloca float, i64 [[TMP2]], align 4
// CHECK1-NEXT: store i64 [[TMP2]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -644,7 +644,7 @@ int bar(int n){
// CHECK1: omp_if.end30:
// CHECK1-NEXT: [[TMP154:%.*]] = load i32, ptr [[A]], align 4
// CHECK1-NEXT: [[TMP155:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: call void @llvm.stackrestore(ptr [[TMP155]])
// CHECK1-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP155]])
// CHECK1-NEXT: ret i32 [[TMP154]]
//
//
Expand Down Expand Up @@ -1345,7 +1345,7 @@ int bar(int n){
// CHECK1-NEXT: store i32 [[ADD]], ptr [[B]], align 4
// CHECK1-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK1-NEXT: [[TMP2:%.*]] = zext i32 [[TMP1]] to i64
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave()
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK1-NEXT: store ptr [[TMP3]], ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: [[TMP4:%.*]] = mul nuw i64 2, [[TMP2]]
// CHECK1-NEXT: [[VLA:%.*]] = alloca i16, i64 [[TMP4]], align 2
Expand Down Expand Up @@ -1442,7 +1442,7 @@ int bar(int n){
// CHECK1-NEXT: [[TMP46:%.*]] = load i32, ptr [[B]], align 4
// CHECK1-NEXT: [[ADD3:%.*]] = add nsw i32 [[CONV]], [[TMP46]]
// CHECK1-NEXT: [[TMP47:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: call void @llvm.stackrestore(ptr [[TMP47]])
// CHECK1-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP47]])
// CHECK1-NEXT: ret i32 [[ADD3]]
//
//
Expand Down Expand Up @@ -2088,7 +2088,7 @@ int bar(int n){
// CHECK3-NEXT: store i32 0, ptr [[A]], align 4
// CHECK3-NEXT: store i16 0, ptr [[AA]], align 2
// CHECK3-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK3-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK3-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK3-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 4
// CHECK3-NEXT: [[VLA:%.*]] = alloca float, i32 [[TMP1]], align 4
// CHECK3-NEXT: store i32 [[TMP1]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -2389,7 +2389,7 @@ int bar(int n){
// CHECK3: omp_if.end30:
// CHECK3-NEXT: [[TMP154:%.*]] = load i32, ptr [[A]], align 4
// CHECK3-NEXT: [[TMP155:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK3-NEXT: call void @llvm.stackrestore(ptr [[TMP155]])
// CHECK3-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP155]])
// CHECK3-NEXT: ret i32 [[TMP154]]
//
//
Expand Down Expand Up @@ -3089,7 +3089,7 @@ int bar(int n){
// CHECK3-NEXT: [[ADD:%.*]] = add nsw i32 [[TMP0]], 1
// CHECK3-NEXT: store i32 [[ADD]], ptr [[B]], align 4
// CHECK3-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK3-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK3-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK3-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 4
// CHECK3-NEXT: [[TMP3:%.*]] = mul nuw i32 2, [[TMP1]]
// CHECK3-NEXT: [[VLA:%.*]] = alloca i16, i32 [[TMP3]], align 2
Expand Down Expand Up @@ -3187,7 +3187,7 @@ int bar(int n){
// CHECK3-NEXT: [[TMP46:%.*]] = load i32, ptr [[B]], align 4
// CHECK3-NEXT: [[ADD3:%.*]] = add nsw i32 [[CONV]], [[TMP46]]
// CHECK3-NEXT: [[TMP47:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK3-NEXT: call void @llvm.stackrestore(ptr [[TMP47]])
// CHECK3-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP47]])
// CHECK3-NEXT: ret i32 [[ADD3]]
//
//
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -460,7 +460,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK9-NEXT: [[TMP2:%.*]] = load i32, ptr [[M]], align 4
// CHECK9-NEXT: [[TMP3:%.*]] = zext i32 [[TMP2]] to i64
// CHECK9-NEXT: [[TMP4:%.*]] = call ptr @llvm.stacksave()
// CHECK9-NEXT: [[TMP4:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK9-NEXT: store ptr [[TMP4]], ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: [[TMP5:%.*]] = mul nuw i64 [[TMP1]], [[TMP3]]
// CHECK9-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP5]], align 4
Expand Down Expand Up @@ -564,7 +564,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10ELi2EEiT_(i32 noundef signext [[TMP51]])
// CHECK9-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK9-NEXT: [[TMP52:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: call void @llvm.stackrestore(ptr [[TMP52]])
// CHECK9-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP52]])
// CHECK9-NEXT: [[TMP53:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK9-NEXT: ret i32 [[TMP53]]
//
Expand Down Expand Up @@ -927,7 +927,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: store i32 2, ptr [[M]], align 4
// CHECK11-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP1:%.*]] = load i32, ptr [[M]], align 4
// CHECK11-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK11-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK11-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: [[TMP3:%.*]] = mul nuw i32 [[TMP0]], [[TMP1]]
// CHECK11-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP3]], align 4
Expand Down Expand Up @@ -1032,7 +1032,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10ELi2EEiT_(i32 noundef [[TMP50]])
// CHECK11-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK11-NEXT: [[TMP51:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: call void @llvm.stackrestore(ptr [[TMP51]])
// CHECK11-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP51]])
// CHECK11-NEXT: [[TMP52:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK11-NEXT: ret i32 [[TMP52]]
//
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1001,7 +1001,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: store i32 100, ptr [[N]], align 4
// CHECK9-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK9-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK9-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK9-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK9-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP1]], align 4
// CHECK9-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -1233,7 +1233,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10EEiT_(i32 noundef signext [[TMP114]])
// CHECK9-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK9-NEXT: [[TMP115:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: call void @llvm.stackrestore(ptr [[TMP115]])
// CHECK9-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP115]])
// CHECK9-NEXT: [[TMP116:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK9-NEXT: ret i32 [[TMP116]]
//
Expand Down Expand Up @@ -2048,7 +2048,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: store ptr [[ARGV]], ptr [[ARGV_ADDR]], align 4
// CHECK11-NEXT: store i32 100, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave()
// CHECK11-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK11-NEXT: store ptr [[TMP1]], ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP0]], align 4
// CHECK11-NEXT: store i32 [[TMP0]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -2283,7 +2283,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10EEiT_(i32 noundef [[TMP116]])
// CHECK11-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK11-NEXT: [[TMP117:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: call void @llvm.stackrestore(ptr [[TMP117]])
// CHECK11-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP117]])
// CHECK11-NEXT: [[TMP118:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK11-NEXT: ret i32 [[TMP118]]
//
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -611,7 +611,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK9-NEXT: [[TMP2:%.*]] = load i32, ptr [[M]], align 4
// CHECK9-NEXT: [[TMP3:%.*]] = zext i32 [[TMP2]] to i64
// CHECK9-NEXT: [[TMP4:%.*]] = call ptr @llvm.stacksave()
// CHECK9-NEXT: [[TMP4:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK9-NEXT: store ptr [[TMP4]], ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: [[TMP5:%.*]] = mul nuw i64 [[TMP1]], [[TMP3]]
// CHECK9-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP5]], align 4
Expand Down Expand Up @@ -715,7 +715,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10ELi2EEiT_(i32 noundef signext [[TMP51]])
// CHECK9-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK9-NEXT: [[TMP52:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: call void @llvm.stackrestore(ptr [[TMP52]])
// CHECK9-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP52]])
// CHECK9-NEXT: [[TMP53:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK9-NEXT: ret i32 [[TMP53]]
//
Expand Down Expand Up @@ -1279,7 +1279,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: store i32 2, ptr [[M]], align 4
// CHECK11-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP1:%.*]] = load i32, ptr [[M]], align 4
// CHECK11-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK11-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK11-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: [[TMP3:%.*]] = mul nuw i32 [[TMP0]], [[TMP1]]
// CHECK11-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP3]], align 4
Expand Down Expand Up @@ -1384,7 +1384,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10ELi2EEiT_(i32 noundef [[TMP50]])
// CHECK11-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK11-NEXT: [[TMP51:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: call void @llvm.stackrestore(ptr [[TMP51]])
// CHECK11-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP51]])
// CHECK11-NEXT: [[TMP52:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK11-NEXT: ret i32 [[TMP52]]
//
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1446,7 +1446,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: store i32 100, ptr [[N]], align 4
// CHECK9-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK9-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK9-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK9-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK9-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP1]], align 4
// CHECK9-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -1679,7 +1679,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10EEiT_(i32 noundef signext [[TMP114]])
// CHECK9-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK9-NEXT: [[TMP115:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: call void @llvm.stackrestore(ptr [[TMP115]])
// CHECK9-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP115]])
// CHECK9-NEXT: [[TMP116:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK9-NEXT: ret i32 [[TMP116]]
//
Expand Down Expand Up @@ -3072,7 +3072,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: store ptr [[ARGV]], ptr [[ARGV_ADDR]], align 4
// CHECK11-NEXT: store i32 100, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave()
// CHECK11-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK11-NEXT: store ptr [[TMP1]], ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP0]], align 4
// CHECK11-NEXT: store i32 [[TMP0]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -3308,7 +3308,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10EEiT_(i32 noundef [[TMP116]])
// CHECK11-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK11-NEXT: [[TMP117:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: call void @llvm.stackrestore(ptr [[TMP117]])
// CHECK11-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP117]])
// CHECK11-NEXT: [[TMP118:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK11-NEXT: ret i32 [[TMP118]]
//
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ int main(int argc, char **argv) {
// CHECK1-NEXT: [[TMP10:%.*]] = sdiv exact i64 [[TMP9]], ptrtoint (ptr getelementptr (i8, ptr null, i32 1) to i64)
// CHECK1-NEXT: [[TMP11:%.*]] = add nuw i64 [[TMP10]], 1
// CHECK1-NEXT: [[TMP12:%.*]] = mul nuw i64 [[TMP11]], ptrtoint (ptr getelementptr (i8, ptr null, i32 1) to i64)
// CHECK1-NEXT: [[TMP13:%.*]] = call ptr @llvm.stacksave()
// CHECK1-NEXT: [[TMP13:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK1-NEXT: store ptr [[TMP13]], ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: [[VLA:%.*]] = alloca i8, i64 [[TMP11]], align 16
// CHECK1-NEXT: store i64 [[TMP11]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -304,7 +304,7 @@ int main(int argc, char **argv) {
// CHECK1-NEXT: br label [[DOTOMP_REDUCTION_DEFAULT]]
// CHECK1: .omp.reduction.default:
// CHECK1-NEXT: [[TMP90:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: call void @llvm.stackrestore(ptr [[TMP90]])
// CHECK1-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP90]])
// CHECK1-NEXT: ret void
//
//
Expand Down Expand Up @@ -451,7 +451,7 @@ int main(int argc, char **argv) {
// CHECK1-NEXT: [[TMP12:%.*]] = sdiv exact i64 [[TMP11]], ptrtoint (ptr getelementptr (i8, ptr null, i32 1) to i64)
// CHECK1-NEXT: [[TMP13:%.*]] = add nuw i64 [[TMP12]], 1
// CHECK1-NEXT: [[TMP14:%.*]] = mul nuw i64 [[TMP13]], ptrtoint (ptr getelementptr (i8, ptr null, i32 1) to i64)
// CHECK1-NEXT: [[TMP15:%.*]] = call ptr @llvm.stacksave()
// CHECK1-NEXT: [[TMP15:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK1-NEXT: store ptr [[TMP15]], ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: [[VLA:%.*]] = alloca i8, i64 [[TMP13]], align 16
// CHECK1-NEXT: store i64 [[TMP13]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -668,7 +668,7 @@ int main(int argc, char **argv) {
// CHECK1-NEXT: br label [[DOTOMP_REDUCTION_DEFAULT]]
// CHECK1: .omp.reduction.default:
// CHECK1-NEXT: [[TMP105:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: call void @llvm.stackrestore(ptr [[TMP105]])
// CHECK1-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP105]])
// CHECK1-NEXT: ret void
//
//
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4341,7 +4341,7 @@ int main (int argc, char **argv) {
// CHECK13-NEXT: store i32 100, ptr [[N]], align 4
// CHECK13-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK13-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK13-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK13-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK13-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK13-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP1]], align 4
// CHECK13-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -4727,7 +4727,7 @@ int main (int argc, char **argv) {
// CHECK13-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10EEiT_(i32 noundef signext [[TMP190]])
// CHECK13-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK13-NEXT: [[TMP191:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK13-NEXT: call void @llvm.stackrestore(ptr [[TMP191]])
// CHECK13-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP191]])
// CHECK13-NEXT: [[TMP192:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK13-NEXT: ret i32 [[TMP192]]
//
Expand Down Expand Up @@ -6998,7 +6998,7 @@ int main (int argc, char **argv) {
// CHECK15-NEXT: store ptr [[ARGV]], ptr [[ARGV_ADDR]], align 4
// CHECK15-NEXT: store i32 100, ptr [[N]], align 4
// CHECK15-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK15-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave()
// CHECK15-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK15-NEXT: store ptr [[TMP1]], ptr [[SAVED_STACK]], align 4
// CHECK15-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP0]], align 4
// CHECK15-NEXT: store i32 [[TMP0]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -7389,7 +7389,7 @@ int main (int argc, char **argv) {
// CHECK15-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10EEiT_(i32 noundef [[TMP194]])
// CHECK15-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK15-NEXT: [[TMP195:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK15-NEXT: call void @llvm.stackrestore(ptr [[TMP195]])
// CHECK15-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP195]])
// CHECK15-NEXT: [[TMP196:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK15-NEXT: ret i32 [[TMP196]]
//
Expand Down Expand Up @@ -9609,7 +9609,7 @@ int main (int argc, char **argv) {
// CHECK17-NEXT: store i32 100, ptr [[N]], align 4
// CHECK17-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK17-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK17-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK17-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK17-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK17-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP1]], align 4
// CHECK17-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -9995,7 +9995,7 @@ int main (int argc, char **argv) {
// CHECK17-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10EEiT_(i32 noundef signext [[TMP190]])
// CHECK17-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK17-NEXT: [[TMP191:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK17-NEXT: call void @llvm.stackrestore(ptr [[TMP191]])
// CHECK17-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP191]])
// CHECK17-NEXT: [[TMP192:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK17-NEXT: ret i32 [[TMP192]]
//
Expand Down Expand Up @@ -12266,7 +12266,7 @@ int main (int argc, char **argv) {
// CHECK19-NEXT: store ptr [[ARGV]], ptr [[ARGV_ADDR]], align 4
// CHECK19-NEXT: store i32 100, ptr [[N]], align 4
// CHECK19-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK19-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave()
// CHECK19-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK19-NEXT: store ptr [[TMP1]], ptr [[SAVED_STACK]], align 4
// CHECK19-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP0]], align 4
// CHECK19-NEXT: store i32 [[TMP0]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -12657,7 +12657,7 @@ int main (int argc, char **argv) {
// CHECK19-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10EEiT_(i32 noundef [[TMP194]])
// CHECK19-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK19-NEXT: [[TMP195:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK19-NEXT: call void @llvm.stackrestore(ptr [[TMP195]])
// CHECK19-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP195]])
// CHECK19-NEXT: [[TMP196:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK19-NEXT: ret i32 [[TMP196]]
//
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -783,7 +783,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK9-NEXT: [[TMP2:%.*]] = load i32, ptr [[M]], align 4
// CHECK9-NEXT: [[TMP3:%.*]] = zext i32 [[TMP2]] to i64
// CHECK9-NEXT: [[TMP4:%.*]] = call ptr @llvm.stacksave()
// CHECK9-NEXT: [[TMP4:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK9-NEXT: store ptr [[TMP4]], ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: [[TMP5:%.*]] = mul nuw i64 [[TMP1]], [[TMP3]]
// CHECK9-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP5]], align 4
Expand Down Expand Up @@ -887,7 +887,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10ELi2EEiT_(i32 noundef signext [[TMP51]])
// CHECK9-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK9-NEXT: [[TMP52:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: call void @llvm.stackrestore(ptr [[TMP52]])
// CHECK9-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP52]])
// CHECK9-NEXT: [[TMP53:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK9-NEXT: ret i32 [[TMP53]]
//
Expand Down Expand Up @@ -1503,7 +1503,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: store i32 2, ptr [[M]], align 4
// CHECK11-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP1:%.*]] = load i32, ptr [[M]], align 4
// CHECK11-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK11-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK11-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: [[TMP3:%.*]] = mul nuw i32 [[TMP0]], [[TMP1]]
// CHECK11-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP3]], align 4
Expand Down Expand Up @@ -1608,7 +1608,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10ELi2EEiT_(i32 noundef [[TMP50]])
// CHECK11-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK11-NEXT: [[TMP51:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: call void @llvm.stackrestore(ptr [[TMP51]])
// CHECK11-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP51]])
// CHECK11-NEXT: [[TMP52:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK11-NEXT: ret i32 [[TMP52]]
//
Expand Down Expand Up @@ -2222,7 +2222,7 @@ int main (int argc, char **argv) {
// CHECK13-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK13-NEXT: [[TMP2:%.*]] = load i32, ptr [[M]], align 4
// CHECK13-NEXT: [[TMP3:%.*]] = zext i32 [[TMP2]] to i64
// CHECK13-NEXT: [[TMP4:%.*]] = call ptr @llvm.stacksave()
// CHECK13-NEXT: [[TMP4:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK13-NEXT: store ptr [[TMP4]], ptr [[SAVED_STACK]], align 8
// CHECK13-NEXT: [[TMP5:%.*]] = mul nuw i64 [[TMP1]], [[TMP3]]
// CHECK13-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP5]], align 4
Expand Down Expand Up @@ -2330,7 +2330,7 @@ int main (int argc, char **argv) {
// CHECK13-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10ELi2EEiT_(i32 noundef signext [[TMP28]])
// CHECK13-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK13-NEXT: [[TMP29:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK13-NEXT: call void @llvm.stackrestore(ptr [[TMP29]])
// CHECK13-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP29]])
// CHECK13-NEXT: [[TMP30:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK13-NEXT: ret i32 [[TMP30]]
//
Expand Down Expand Up @@ -2423,7 +2423,7 @@ int main (int argc, char **argv) {
// CHECK15-NEXT: store i32 2, ptr [[M]], align 4
// CHECK15-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK15-NEXT: [[TMP1:%.*]] = load i32, ptr [[M]], align 4
// CHECK15-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK15-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK15-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 4
// CHECK15-NEXT: [[TMP3:%.*]] = mul nuw i32 [[TMP0]], [[TMP1]]
// CHECK15-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP3]], align 4
Expand Down Expand Up @@ -2529,7 +2529,7 @@ int main (int argc, char **argv) {
// CHECK15-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10ELi2EEiT_(i32 noundef [[TMP26]])
// CHECK15-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK15-NEXT: [[TMP27:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK15-NEXT: call void @llvm.stackrestore(ptr [[TMP27]])
// CHECK15-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP27]])
// CHECK15-NEXT: [[TMP28:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK15-NEXT: ret i32 [[TMP28]]
//
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1777,7 +1777,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: store i32 100, ptr [[N]], align 4
// CHECK9-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK9-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK9-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK9-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK9-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP1]], align 4
// CHECK9-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -2010,7 +2010,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10EEiT_(i32 noundef signext [[TMP114]])
// CHECK9-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK9-NEXT: [[TMP115:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: call void @llvm.stackrestore(ptr [[TMP115]])
// CHECK9-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP115]])
// CHECK9-NEXT: [[TMP116:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK9-NEXT: ret i32 [[TMP116]]
//
Expand Down Expand Up @@ -3517,7 +3517,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: store ptr [[ARGV]], ptr [[ARGV_ADDR]], align 4
// CHECK11-NEXT: store i32 100, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave()
// CHECK11-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK11-NEXT: store ptr [[TMP1]], ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP0]], align 4
// CHECK11-NEXT: store i32 [[TMP0]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -3753,7 +3753,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10EEiT_(i32 noundef [[TMP116]])
// CHECK11-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK11-NEXT: [[TMP117:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: call void @llvm.stackrestore(ptr [[TMP117]])
// CHECK11-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP117]])
// CHECK11-NEXT: [[TMP118:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK11-NEXT: ret i32 [[TMP118]]
//
Expand Down Expand Up @@ -5227,7 +5227,7 @@ int main (int argc, char **argv) {
// CHECK13-NEXT: store i32 100, ptr [[N]], align 4
// CHECK13-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK13-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK13-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK13-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK13-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK13-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP1]], align 4
// CHECK13-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -5385,7 +5385,7 @@ int main (int argc, char **argv) {
// CHECK13-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10EEiT_(i32 noundef signext [[TMP37]])
// CHECK13-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK13-NEXT: [[TMP38:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK13-NEXT: call void @llvm.stackrestore(ptr [[TMP38]])
// CHECK13-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP38]])
// CHECK13-NEXT: [[TMP39:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK13-NEXT: ret i32 [[TMP39]]
//
Expand Down Expand Up @@ -5546,7 +5546,7 @@ int main (int argc, char **argv) {
// CHECK15-NEXT: store ptr [[ARGV]], ptr [[ARGV_ADDR]], align 4
// CHECK15-NEXT: store i32 100, ptr [[N]], align 4
// CHECK15-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK15-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave()
// CHECK15-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK15-NEXT: store ptr [[TMP1]], ptr [[SAVED_STACK]], align 4
// CHECK15-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP0]], align 4
// CHECK15-NEXT: store i32 [[TMP0]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -5701,7 +5701,7 @@ int main (int argc, char **argv) {
// CHECK15-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10EEiT_(i32 noundef [[TMP36]])
// CHECK15-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK15-NEXT: [[TMP37:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK15-NEXT: call void @llvm.stackrestore(ptr [[TMP37]])
// CHECK15-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP37]])
// CHECK15-NEXT: [[TMP38:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK15-NEXT: ret i32 [[TMP38]]
//
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5006,7 +5006,7 @@ int main (int argc, char **argv) {
// CHECK13-NEXT: store i32 100, ptr [[N]], align 4
// CHECK13-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK13-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK13-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK13-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK13-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK13-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP1]], align 4
// CHECK13-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -5392,7 +5392,7 @@ int main (int argc, char **argv) {
// CHECK13-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10EEiT_(i32 noundef signext [[TMP190]])
// CHECK13-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK13-NEXT: [[TMP191:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK13-NEXT: call void @llvm.stackrestore(ptr [[TMP191]])
// CHECK13-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP191]])
// CHECK13-NEXT: [[TMP192:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK13-NEXT: ret i32 [[TMP192]]
//
Expand Down Expand Up @@ -7853,7 +7853,7 @@ int main (int argc, char **argv) {
// CHECK15-NEXT: store ptr [[ARGV]], ptr [[ARGV_ADDR]], align 4
// CHECK15-NEXT: store i32 100, ptr [[N]], align 4
// CHECK15-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK15-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave()
// CHECK15-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK15-NEXT: store ptr [[TMP1]], ptr [[SAVED_STACK]], align 4
// CHECK15-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP0]], align 4
// CHECK15-NEXT: store i32 [[TMP0]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -8244,7 +8244,7 @@ int main (int argc, char **argv) {
// CHECK15-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10EEiT_(i32 noundef [[TMP194]])
// CHECK15-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK15-NEXT: [[TMP195:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK15-NEXT: call void @llvm.stackrestore(ptr [[TMP195]])
// CHECK15-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP195]])
// CHECK15-NEXT: [[TMP196:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK15-NEXT: ret i32 [[TMP196]]
//
Expand Down Expand Up @@ -10654,7 +10654,7 @@ int main (int argc, char **argv) {
// CHECK17-NEXT: store i32 100, ptr [[N]], align 4
// CHECK17-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK17-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK17-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK17-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK17-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK17-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP1]], align 4
// CHECK17-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -11040,7 +11040,7 @@ int main (int argc, char **argv) {
// CHECK17-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10EEiT_(i32 noundef signext [[TMP190]])
// CHECK17-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK17-NEXT: [[TMP191:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK17-NEXT: call void @llvm.stackrestore(ptr [[TMP191]])
// CHECK17-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP191]])
// CHECK17-NEXT: [[TMP192:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK17-NEXT: ret i32 [[TMP192]]
//
Expand Down Expand Up @@ -13501,7 +13501,7 @@ int main (int argc, char **argv) {
// CHECK19-NEXT: store ptr [[ARGV]], ptr [[ARGV_ADDR]], align 4
// CHECK19-NEXT: store i32 100, ptr [[N]], align 4
// CHECK19-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK19-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave()
// CHECK19-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK19-NEXT: store ptr [[TMP1]], ptr [[SAVED_STACK]], align 4
// CHECK19-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP0]], align 4
// CHECK19-NEXT: store i32 [[TMP0]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -13892,7 +13892,7 @@ int main (int argc, char **argv) {
// CHECK19-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10EEiT_(i32 noundef [[TMP194]])
// CHECK19-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK19-NEXT: [[TMP195:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK19-NEXT: call void @llvm.stackrestore(ptr [[TMP195]])
// CHECK19-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP195]])
// CHECK19-NEXT: [[TMP196:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK19-NEXT: ret i32 [[TMP196]]
//
Expand Down Expand Up @@ -16295,7 +16295,7 @@ int main (int argc, char **argv) {
// CHECK21-NEXT: store i32 100, ptr [[N]], align 4
// CHECK21-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK21-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK21-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK21-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK21-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK21-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP1]], align 4
// CHECK21-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -16553,7 +16553,7 @@ int main (int argc, char **argv) {
// CHECK21-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10EEiT_(i32 noundef signext [[TMP60]])
// CHECK21-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK21-NEXT: [[TMP61:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK21-NEXT: call void @llvm.stackrestore(ptr [[TMP61]])
// CHECK21-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP61]])
// CHECK21-NEXT: [[TMP62:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK21-NEXT: ret i32 [[TMP62]]
//
Expand Down Expand Up @@ -16802,7 +16802,7 @@ int main (int argc, char **argv) {
// CHECK23-NEXT: store ptr [[ARGV]], ptr [[ARGV_ADDR]], align 4
// CHECK23-NEXT: store i32 100, ptr [[N]], align 4
// CHECK23-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK23-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave()
// CHECK23-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK23-NEXT: store ptr [[TMP1]], ptr [[SAVED_STACK]], align 4
// CHECK23-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP0]], align 4
// CHECK23-NEXT: store i32 [[TMP0]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -17055,7 +17055,7 @@ int main (int argc, char **argv) {
// CHECK23-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10EEiT_(i32 noundef [[TMP59]])
// CHECK23-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK23-NEXT: [[TMP60:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK23-NEXT: call void @llvm.stackrestore(ptr [[TMP60]])
// CHECK23-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP60]])
// CHECK23-NEXT: [[TMP61:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK23-NEXT: ret i32 [[TMP61]]
//
Expand Down
64 changes: 32 additions & 32 deletions clang/test/OpenMP/target_teams_distribute_simd_codegen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -341,7 +341,7 @@ int bar(int n){
// CHECK1-NEXT: store i16 0, ptr [[AA]], align 2
// CHECK1-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK1-NEXT: [[TMP2:%.*]] = zext i32 [[TMP1]] to i64
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave()
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK1-NEXT: store ptr [[TMP3]], ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: [[VLA:%.*]] = alloca float, i64 [[TMP2]], align 4
// CHECK1-NEXT: store i64 [[TMP2]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -630,7 +630,7 @@ int bar(int n){
// CHECK1: omp_if.end28:
// CHECK1-NEXT: [[TMP148:%.*]] = load i32, ptr [[A]], align 4
// CHECK1-NEXT: [[TMP149:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: call void @llvm.stackrestore(ptr [[TMP149]])
// CHECK1-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP149]])
// CHECK1-NEXT: ret i32 [[TMP148]]
//
//
Expand Down Expand Up @@ -1340,7 +1340,7 @@ int bar(int n){
// CHECK1-NEXT: store i32 [[ADD]], ptr [[B]], align 4
// CHECK1-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK1-NEXT: [[TMP2:%.*]] = zext i32 [[TMP1]] to i64
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave()
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK1-NEXT: store ptr [[TMP3]], ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: [[TMP4:%.*]] = mul nuw i64 2, [[TMP2]]
// CHECK1-NEXT: [[VLA:%.*]] = alloca i16, i64 [[TMP4]], align 2
Expand Down Expand Up @@ -1437,7 +1437,7 @@ int bar(int n){
// CHECK1-NEXT: [[TMP46:%.*]] = load i32, ptr [[B]], align 4
// CHECK1-NEXT: [[ADD3:%.*]] = add nsw i32 [[CONV]], [[TMP46]]
// CHECK1-NEXT: [[TMP47:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: call void @llvm.stackrestore(ptr [[TMP47]])
// CHECK1-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP47]])
// CHECK1-NEXT: ret i32 [[ADD3]]
//
//
Expand Down Expand Up @@ -2111,7 +2111,7 @@ int bar(int n){
// CHECK3-NEXT: store i32 0, ptr [[A]], align 4
// CHECK3-NEXT: store i16 0, ptr [[AA]], align 2
// CHECK3-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK3-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK3-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK3-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 4
// CHECK3-NEXT: [[VLA:%.*]] = alloca float, i32 [[TMP1]], align 4
// CHECK3-NEXT: store i32 [[TMP1]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -2401,7 +2401,7 @@ int bar(int n){
// CHECK3: omp_if.end28:
// CHECK3-NEXT: [[TMP148:%.*]] = load i32, ptr [[A]], align 4
// CHECK3-NEXT: [[TMP149:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK3-NEXT: call void @llvm.stackrestore(ptr [[TMP149]])
// CHECK3-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP149]])
// CHECK3-NEXT: ret i32 [[TMP148]]
//
//
Expand Down Expand Up @@ -3110,7 +3110,7 @@ int bar(int n){
// CHECK3-NEXT: [[ADD:%.*]] = add nsw i32 [[TMP0]], 1
// CHECK3-NEXT: store i32 [[ADD]], ptr [[B]], align 4
// CHECK3-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK3-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK3-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK3-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 4
// CHECK3-NEXT: [[TMP3:%.*]] = mul nuw i32 2, [[TMP1]]
// CHECK3-NEXT: [[VLA:%.*]] = alloca i16, i32 [[TMP3]], align 2
Expand Down Expand Up @@ -3208,7 +3208,7 @@ int bar(int n){
// CHECK3-NEXT: [[TMP46:%.*]] = load i32, ptr [[B]], align 4
// CHECK3-NEXT: [[ADD3:%.*]] = add nsw i32 [[CONV]], [[TMP46]]
// CHECK3-NEXT: [[TMP47:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK3-NEXT: call void @llvm.stackrestore(ptr [[TMP47]])
// CHECK3-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP47]])
// CHECK3-NEXT: ret i32 [[ADD3]]
//
//
Expand Down Expand Up @@ -3883,7 +3883,7 @@ int bar(int n){
// CHECK5-NEXT: store i16 0, ptr [[AA]], align 2
// CHECK5-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK5-NEXT: [[TMP2:%.*]] = zext i32 [[TMP1]] to i64
// CHECK5-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave()
// CHECK5-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK5-NEXT: store ptr [[TMP3]], ptr [[SAVED_STACK]], align 8
// CHECK5-NEXT: [[VLA:%.*]] = alloca float, i64 [[TMP2]], align 4
// CHECK5-NEXT: store i64 [[TMP2]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -4172,7 +4172,7 @@ int bar(int n){
// CHECK5: omp_if.end28:
// CHECK5-NEXT: [[TMP148:%.*]] = load i32, ptr [[A]], align 4
// CHECK5-NEXT: [[TMP149:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK5-NEXT: call void @llvm.stackrestore(ptr [[TMP149]])
// CHECK5-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP149]])
// CHECK5-NEXT: ret i32 [[TMP148]]
//
//
Expand Down Expand Up @@ -4884,7 +4884,7 @@ int bar(int n){
// CHECK5-NEXT: store i32 [[ADD]], ptr [[B]], align 4
// CHECK5-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK5-NEXT: [[TMP2:%.*]] = zext i32 [[TMP1]] to i64
// CHECK5-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave()
// CHECK5-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK5-NEXT: store ptr [[TMP3]], ptr [[SAVED_STACK]], align 8
// CHECK5-NEXT: [[TMP4:%.*]] = mul nuw i64 2, [[TMP2]]
// CHECK5-NEXT: [[VLA:%.*]] = alloca i16, i64 [[TMP4]], align 2
Expand Down Expand Up @@ -4996,7 +4996,7 @@ int bar(int n){
// CHECK5-NEXT: [[TMP52:%.*]] = load i32, ptr [[B]], align 4
// CHECK5-NEXT: [[ADD5:%.*]] = add nsw i32 [[CONV]], [[TMP52]]
// CHECK5-NEXT: [[TMP53:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK5-NEXT: call void @llvm.stackrestore(ptr [[TMP53]])
// CHECK5-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP53]])
// CHECK5-NEXT: ret i32 [[ADD5]]
//
//
Expand Down Expand Up @@ -5722,7 +5722,7 @@ int bar(int n){
// CHECK7-NEXT: store i32 0, ptr [[A]], align 4
// CHECK7-NEXT: store i16 0, ptr [[AA]], align 2
// CHECK7-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK7-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK7-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK7-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 4
// CHECK7-NEXT: [[VLA:%.*]] = alloca float, i32 [[TMP1]], align 4
// CHECK7-NEXT: store i32 [[TMP1]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -6012,7 +6012,7 @@ int bar(int n){
// CHECK7: omp_if.end28:
// CHECK7-NEXT: [[TMP148:%.*]] = load i32, ptr [[A]], align 4
// CHECK7-NEXT: [[TMP149:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK7-NEXT: call void @llvm.stackrestore(ptr [[TMP149]])
// CHECK7-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP149]])
// CHECK7-NEXT: ret i32 [[TMP148]]
//
//
Expand Down Expand Up @@ -6723,7 +6723,7 @@ int bar(int n){
// CHECK7-NEXT: [[ADD:%.*]] = add nsw i32 [[TMP0]], 1
// CHECK7-NEXT: store i32 [[ADD]], ptr [[B]], align 4
// CHECK7-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK7-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK7-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK7-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 4
// CHECK7-NEXT: [[TMP3:%.*]] = mul nuw i32 2, [[TMP1]]
// CHECK7-NEXT: [[VLA:%.*]] = alloca i16, i32 [[TMP3]], align 2
Expand Down Expand Up @@ -6836,7 +6836,7 @@ int bar(int n){
// CHECK7-NEXT: [[TMP52:%.*]] = load i32, ptr [[B]], align 4
// CHECK7-NEXT: [[ADD5:%.*]] = add nsw i32 [[CONV]], [[TMP52]]
// CHECK7-NEXT: [[TMP53:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK7-NEXT: call void @llvm.stackrestore(ptr [[TMP53]])
// CHECK7-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP53]])
// CHECK7-NEXT: ret i32 [[ADD5]]
//
//
Expand Down Expand Up @@ -7561,7 +7561,7 @@ int bar(int n){
// CHECK9-NEXT: store i16 0, ptr [[AA]], align 2
// CHECK9-NEXT: [[TMP0:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK9-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK9-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK9-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK9-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: [[VLA:%.*]] = alloca float, i64 [[TMP1]], align 4
// CHECK9-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -7757,7 +7757,7 @@ int bar(int n){
// CHECK9-NEXT: store i32 10, ptr [[I58]], align 4
// CHECK9-NEXT: [[TMP46:%.*]] = load i32, ptr [[A]], align 4
// CHECK9-NEXT: [[TMP47:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: call void @llvm.stackrestore(ptr [[TMP47]])
// CHECK9-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP47]])
// CHECK9-NEXT: ret i32 [[TMP46]]
//
//
Expand Down Expand Up @@ -7814,7 +7814,7 @@ int bar(int n){
// CHECK9-NEXT: store i32 [[ADD]], ptr [[B]], align 4
// CHECK9-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK9-NEXT: [[TMP2:%.*]] = zext i32 [[TMP1]] to i64
// CHECK9-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave()
// CHECK9-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK9-NEXT: store ptr [[TMP3]], ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: [[TMP4:%.*]] = mul nuw i64 2, [[TMP2]]
// CHECK9-NEXT: [[VLA:%.*]] = alloca i16, i64 [[TMP4]], align 2
Expand Down Expand Up @@ -7866,7 +7866,7 @@ int bar(int n){
// CHECK9-NEXT: [[TMP15:%.*]] = load i32, ptr [[B]], align 4
// CHECK9-NEXT: [[ADD11:%.*]] = add nsw i32 [[CONV10]], [[TMP15]]
// CHECK9-NEXT: [[TMP16:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: call void @llvm.stackrestore(ptr [[TMP16]])
// CHECK9-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP16]])
// CHECK9-NEXT: ret i32 [[ADD11]]
//
//
Expand Down Expand Up @@ -8071,7 +8071,7 @@ int bar(int n){
// CHECK11-NEXT: store i32 0, ptr [[A]], align 4
// CHECK11-NEXT: store i16 0, ptr [[AA]], align 2
// CHECK11-NEXT: [[TMP0:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK11-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave()
// CHECK11-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK11-NEXT: store ptr [[TMP1]], ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: [[VLA:%.*]] = alloca float, i32 [[TMP0]], align 4
// CHECK11-NEXT: store i32 [[TMP0]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -8266,7 +8266,7 @@ int bar(int n){
// CHECK11-NEXT: store i32 10, ptr [[I58]], align 4
// CHECK11-NEXT: [[TMP44:%.*]] = load i32, ptr [[A]], align 4
// CHECK11-NEXT: [[TMP45:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: call void @llvm.stackrestore(ptr [[TMP45]])
// CHECK11-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP45]])
// CHECK11-NEXT: ret i32 [[TMP44]]
//
//
Expand Down Expand Up @@ -8322,7 +8322,7 @@ int bar(int n){
// CHECK11-NEXT: [[ADD:%.*]] = add nsw i32 [[TMP0]], 1
// CHECK11-NEXT: store i32 [[ADD]], ptr [[B]], align 4
// CHECK11-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK11-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK11-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK11-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: [[TMP3:%.*]] = mul nuw i32 2, [[TMP1]]
// CHECK11-NEXT: [[VLA:%.*]] = alloca i16, i32 [[TMP3]], align 2
Expand Down Expand Up @@ -8374,7 +8374,7 @@ int bar(int n){
// CHECK11-NEXT: [[TMP14:%.*]] = load i32, ptr [[B]], align 4
// CHECK11-NEXT: [[ADD11:%.*]] = add nsw i32 [[CONV10]], [[TMP14]]
// CHECK11-NEXT: [[TMP15:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: call void @llvm.stackrestore(ptr [[TMP15]])
// CHECK11-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP15]])
// CHECK11-NEXT: ret i32 [[ADD11]]
//
//
Expand Down Expand Up @@ -8580,7 +8580,7 @@ int bar(int n){
// CHECK13-NEXT: store i16 0, ptr [[AA]], align 2
// CHECK13-NEXT: [[TMP0:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK13-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK13-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK13-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK13-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK13-NEXT: [[VLA:%.*]] = alloca float, i64 [[TMP1]], align 4
// CHECK13-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -8776,7 +8776,7 @@ int bar(int n){
// CHECK13-NEXT: store i32 10, ptr [[I58]], align 4
// CHECK13-NEXT: [[TMP46:%.*]] = load i32, ptr [[A]], align 4
// CHECK13-NEXT: [[TMP47:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK13-NEXT: call void @llvm.stackrestore(ptr [[TMP47]])
// CHECK13-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP47]])
// CHECK13-NEXT: ret i32 [[TMP46]]
//
//
Expand Down Expand Up @@ -8834,7 +8834,7 @@ int bar(int n){
// CHECK13-NEXT: store i32 [[ADD]], ptr [[B]], align 4
// CHECK13-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK13-NEXT: [[TMP2:%.*]] = zext i32 [[TMP1]] to i64
// CHECK13-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave()
// CHECK13-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK13-NEXT: store ptr [[TMP3]], ptr [[SAVED_STACK]], align 8
// CHECK13-NEXT: [[TMP4:%.*]] = mul nuw i64 2, [[TMP2]]
// CHECK13-NEXT: [[VLA:%.*]] = alloca i16, i64 [[TMP4]], align 2
Expand Down Expand Up @@ -8932,7 +8932,7 @@ int bar(int n){
// CHECK13-NEXT: [[TMP24:%.*]] = load i32, ptr [[B]], align 4
// CHECK13-NEXT: [[ADD29:%.*]] = add nsw i32 [[CONV28]], [[TMP24]]
// CHECK13-NEXT: [[TMP25:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK13-NEXT: call void @llvm.stackrestore(ptr [[TMP25]])
// CHECK13-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP25]])
// CHECK13-NEXT: ret i32 [[ADD29]]
//
//
Expand Down Expand Up @@ -9137,7 +9137,7 @@ int bar(int n){
// CHECK15-NEXT: store i32 0, ptr [[A]], align 4
// CHECK15-NEXT: store i16 0, ptr [[AA]], align 2
// CHECK15-NEXT: [[TMP0:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK15-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave()
// CHECK15-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK15-NEXT: store ptr [[TMP1]], ptr [[SAVED_STACK]], align 4
// CHECK15-NEXT: [[VLA:%.*]] = alloca float, i32 [[TMP0]], align 4
// CHECK15-NEXT: store i32 [[TMP0]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -9332,7 +9332,7 @@ int bar(int n){
// CHECK15-NEXT: store i32 10, ptr [[I58]], align 4
// CHECK15-NEXT: [[TMP44:%.*]] = load i32, ptr [[A]], align 4
// CHECK15-NEXT: [[TMP45:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK15-NEXT: call void @llvm.stackrestore(ptr [[TMP45]])
// CHECK15-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP45]])
// CHECK15-NEXT: ret i32 [[TMP44]]
//
//
Expand Down Expand Up @@ -9389,7 +9389,7 @@ int bar(int n){
// CHECK15-NEXT: [[ADD:%.*]] = add nsw i32 [[TMP0]], 1
// CHECK15-NEXT: store i32 [[ADD]], ptr [[B]], align 4
// CHECK15-NEXT: [[TMP1:%.*]] = load i32, ptr [[N_ADDR]], align 4
// CHECK15-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK15-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK15-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 4
// CHECK15-NEXT: [[TMP3:%.*]] = mul nuw i32 2, [[TMP1]]
// CHECK15-NEXT: [[VLA:%.*]] = alloca i16, i32 [[TMP3]], align 2
Expand Down Expand Up @@ -9487,7 +9487,7 @@ int bar(int n){
// CHECK15-NEXT: [[TMP23:%.*]] = load i32, ptr [[B]], align 4
// CHECK15-NEXT: [[ADD29:%.*]] = add nsw i32 [[CONV28]], [[TMP23]]
// CHECK15-NEXT: [[TMP24:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK15-NEXT: call void @llvm.stackrestore(ptr [[TMP24]])
// CHECK15-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP24]])
// CHECK15-NEXT: ret i32 [[ADD29]]
//
//
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -616,7 +616,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK9-NEXT: [[TMP2:%.*]] = load i32, ptr [[M]], align 4
// CHECK9-NEXT: [[TMP3:%.*]] = zext i32 [[TMP2]] to i64
// CHECK9-NEXT: [[TMP4:%.*]] = call ptr @llvm.stacksave()
// CHECK9-NEXT: [[TMP4:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK9-NEXT: store ptr [[TMP4]], ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: [[TMP5:%.*]] = mul nuw i64 [[TMP1]], [[TMP3]]
// CHECK9-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP5]], align 4
Expand Down Expand Up @@ -720,7 +720,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10ELi2EEiT_(i32 noundef signext [[TMP51]])
// CHECK9-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK9-NEXT: [[TMP52:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: call void @llvm.stackrestore(ptr [[TMP52]])
// CHECK9-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP52]])
// CHECK9-NEXT: [[TMP53:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK9-NEXT: ret i32 [[TMP53]]
//
Expand Down Expand Up @@ -1109,7 +1109,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: store i32 2, ptr [[M]], align 4
// CHECK11-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP1:%.*]] = load i32, ptr [[M]], align 4
// CHECK11-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK11-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK11-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: [[TMP3:%.*]] = mul nuw i32 [[TMP0]], [[TMP1]]
// CHECK11-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP3]], align 4
Expand Down Expand Up @@ -1214,7 +1214,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10ELi2EEiT_(i32 noundef [[TMP50]])
// CHECK11-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK11-NEXT: [[TMP51:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: call void @llvm.stackrestore(ptr [[TMP51]])
// CHECK11-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP51]])
// CHECK11-NEXT: [[TMP52:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK11-NEXT: ret i32 [[TMP52]]
//
Expand Down Expand Up @@ -1601,7 +1601,7 @@ int main (int argc, char **argv) {
// CHECK13-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK13-NEXT: [[TMP2:%.*]] = load i32, ptr [[M]], align 4
// CHECK13-NEXT: [[TMP3:%.*]] = zext i32 [[TMP2]] to i64
// CHECK13-NEXT: [[TMP4:%.*]] = call ptr @llvm.stacksave()
// CHECK13-NEXT: [[TMP4:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK13-NEXT: store ptr [[TMP4]], ptr [[SAVED_STACK]], align 8
// CHECK13-NEXT: [[TMP5:%.*]] = mul nuw i64 [[TMP1]], [[TMP3]]
// CHECK13-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP5]], align 4
Expand Down Expand Up @@ -1709,7 +1709,7 @@ int main (int argc, char **argv) {
// CHECK13-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10ELi2EEiT_(i32 noundef signext [[TMP28]])
// CHECK13-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK13-NEXT: [[TMP29:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK13-NEXT: call void @llvm.stackrestore(ptr [[TMP29]])
// CHECK13-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP29]])
// CHECK13-NEXT: [[TMP30:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK13-NEXT: ret i32 [[TMP30]]
//
Expand Down Expand Up @@ -1802,7 +1802,7 @@ int main (int argc, char **argv) {
// CHECK15-NEXT: store i32 2, ptr [[M]], align 4
// CHECK15-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK15-NEXT: [[TMP1:%.*]] = load i32, ptr [[M]], align 4
// CHECK15-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK15-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK15-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 4
// CHECK15-NEXT: [[TMP3:%.*]] = mul nuw i32 [[TMP0]], [[TMP1]]
// CHECK15-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP3]], align 4
Expand Down Expand Up @@ -1908,7 +1908,7 @@ int main (int argc, char **argv) {
// CHECK15-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10ELi2EEiT_(i32 noundef [[TMP26]])
// CHECK15-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK15-NEXT: [[TMP27:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK15-NEXT: call void @llvm.stackrestore(ptr [[TMP27]])
// CHECK15-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP27]])
// CHECK15-NEXT: [[TMP28:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK15-NEXT: ret i32 [[TMP28]]
//
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1290,7 +1290,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: store i32 100, ptr [[N]], align 4
// CHECK9-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK9-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK9-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK9-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK9-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP1]], align 4
// CHECK9-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -1522,7 +1522,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10EEiT_(i32 noundef signext [[TMP114]])
// CHECK9-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK9-NEXT: [[TMP115:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: call void @llvm.stackrestore(ptr [[TMP115]])
// CHECK9-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP115]])
// CHECK9-NEXT: [[TMP116:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK9-NEXT: ret i32 [[TMP116]]
//
Expand Down Expand Up @@ -2394,7 +2394,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: store ptr [[ARGV]], ptr [[ARGV_ADDR]], align 4
// CHECK11-NEXT: store i32 100, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave()
// CHECK11-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK11-NEXT: store ptr [[TMP1]], ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP0]], align 4
// CHECK11-NEXT: store i32 [[TMP0]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -2629,7 +2629,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10EEiT_(i32 noundef [[TMP116]])
// CHECK11-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK11-NEXT: [[TMP117:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: call void @llvm.stackrestore(ptr [[TMP117]])
// CHECK11-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP117]])
// CHECK11-NEXT: [[TMP118:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK11-NEXT: ret i32 [[TMP118]]
//
Expand Down Expand Up @@ -3492,7 +3492,7 @@ int main (int argc, char **argv) {
// CHECK13-NEXT: store i32 100, ptr [[N]], align 4
// CHECK13-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK13-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK13-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK13-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK13-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK13-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP1]], align 4
// CHECK13-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -3649,7 +3649,7 @@ int main (int argc, char **argv) {
// CHECK13-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10EEiT_(i32 noundef signext [[TMP37]])
// CHECK13-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK13-NEXT: [[TMP38:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK13-NEXT: call void @llvm.stackrestore(ptr [[TMP38]])
// CHECK13-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP38]])
// CHECK13-NEXT: [[TMP39:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK13-NEXT: ret i32 [[TMP39]]
//
Expand Down Expand Up @@ -3804,7 +3804,7 @@ int main (int argc, char **argv) {
// CHECK15-NEXT: store ptr [[ARGV]], ptr [[ARGV_ADDR]], align 4
// CHECK15-NEXT: store i32 100, ptr [[N]], align 4
// CHECK15-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK15-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave()
// CHECK15-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK15-NEXT: store ptr [[TMP1]], ptr [[SAVED_STACK]], align 4
// CHECK15-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP0]], align 4
// CHECK15-NEXT: store i32 [[TMP0]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -3958,7 +3958,7 @@ int main (int argc, char **argv) {
// CHECK15-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10EEiT_(i32 noundef [[TMP36]])
// CHECK15-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK15-NEXT: [[TMP37:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK15-NEXT: call void @llvm.stackrestore(ptr [[TMP37]])
// CHECK15-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP37]])
// CHECK15-NEXT: [[TMP38:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK15-NEXT: ret i32 [[TMP38]]
//
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -611,7 +611,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK9-NEXT: [[TMP2:%.*]] = load i32, ptr [[M]], align 4
// CHECK9-NEXT: [[TMP3:%.*]] = zext i32 [[TMP2]] to i64
// CHECK9-NEXT: [[TMP4:%.*]] = call ptr @llvm.stacksave()
// CHECK9-NEXT: [[TMP4:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK9-NEXT: store ptr [[TMP4]], ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: [[TMP5:%.*]] = mul nuw i64 [[TMP1]], [[TMP3]]
// CHECK9-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP5]], align 4
Expand Down Expand Up @@ -715,7 +715,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10ELi2EEiT_(i32 noundef signext [[TMP51]])
// CHECK9-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK9-NEXT: [[TMP52:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: call void @llvm.stackrestore(ptr [[TMP52]])
// CHECK9-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP52]])
// CHECK9-NEXT: [[TMP53:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK9-NEXT: ret i32 [[TMP53]]
//
Expand Down Expand Up @@ -1279,7 +1279,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: store i32 2, ptr [[M]], align 4
// CHECK11-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP1:%.*]] = load i32, ptr [[M]], align 4
// CHECK11-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK11-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK11-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: [[TMP3:%.*]] = mul nuw i32 [[TMP0]], [[TMP1]]
// CHECK11-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP3]], align 4
Expand Down Expand Up @@ -1384,7 +1384,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10ELi2EEiT_(i32 noundef [[TMP50]])
// CHECK11-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK11-NEXT: [[TMP51:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: call void @llvm.stackrestore(ptr [[TMP51]])
// CHECK11-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP51]])
// CHECK11-NEXT: [[TMP52:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK11-NEXT: ret i32 [[TMP52]]
//
Expand Down
4 changes: 2 additions & 2 deletions clang/test/OpenMP/task_affinity_codegen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ int main() {

// <num_elem> = <num_iters> + 1 constant affinity for affinity(a)
// CHECK: [[NUM_ELEMS:%.+]] = add nuw i64 1, [[CONV]]
// CHECK: [[SV:%.+]] = call ptr @llvm.stacksave()
// CHECK: [[SV:%.+]] = call ptr @llvm.stacksave.p0()
// CHECK: store ptr [[SV]], ptr [[SV_ADDR:%.+]],

// kmp_task_affinity_info_t affs[<num_elem>];
Expand Down Expand Up @@ -121,7 +121,7 @@ int main() {
// CHECK: [[DONE]]:
// CHECK: call i32 @__kmpc_omp_reg_task_with_affinity(ptr @{{.+}} i32 [[GTID]], ptr [[TD]], i32 [[NAFFS]], ptr [[AFFS_ADDR]])
// CHECK: [[SV:%.+]] = load ptr, ptr [[SV_ADDR]],
// CHECK: call void @llvm.stackrestore(ptr [[SV]])
// CHECK: call void @llvm.stackrestore.p0(ptr [[SV]])
#pragma omp task affinity(iterator(i=0:a): p[i]) affinity(a)
;
return 0;
Expand Down
4 changes: 2 additions & 2 deletions clang/test/OpenMP/task_codegen.c
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ int main(void) {
// CHECK: [[SIZE1:%.+]] = add nuw i64 0, [[SZ]]
// CHECK: [[SIZE2:%.+]] = add nuw i64 [[SIZE1]], [[SZ1]]
// CHECK: [[SIZE:%.+]] = add nuw i64 [[SIZE2]], 2
// CHECK: [[SV:%.+]] = call ptr @llvm.stacksave()
// CHECK: [[SV:%.+]] = call ptr @llvm.stacksave.p0()
// CHECK: store ptr [[SV]], ptr [[SV_ADDR:%.+]], align 8
// CHECK: [[VLA:%.+]] = alloca %struct.kmp_depend_info, i64 [[SIZE]],
// CHECK: [[SIZE32:%.+]] = trunc i64 [[SIZE]] to i32
Expand Down Expand Up @@ -103,7 +103,7 @@ int main(void) {
// CHECK: store i64 [[ADD]], ptr [[DEP_COUNTER_ADDR]], align 8
// CHECK: call i32 @__kmpc_omp_task_with_deps(ptr @{{.+}}, i32 [[GTID]], ptr [[ALLOC]], i32 [[SIZE32]], ptr [[VLA]], i32 0, ptr null)
// CHECK: [[SV:%.+]] = load ptr, ptr [[SV_ADDR]], align 8
// CHECK: call void @llvm.stackrestore(ptr [[SV]])
// CHECK: call void @llvm.stackrestore.p0(ptr [[SV]])
#pragma omp task depend(in: a, ([3][a][a])&b) depend(depobj: d, x) detach(evt)
{
#pragma omp taskgroup
Expand Down
32 changes: 16 additions & 16 deletions clang/test/OpenMP/task_codegen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -258,7 +258,7 @@ void test_omp_all_memory()
// CHECK1: arrayctor.cont:
// CHECK1-NEXT: [[TMP1:%.*]] = load i32, ptr @a, align 4
// CHECK1-NEXT: [[TMP2:%.*]] = zext i32 [[TMP1]] to i64
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave()
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK1-NEXT: store ptr [[TMP3]], ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: [[TMP4:%.*]] = mul nuw i64 10, [[TMP2]]
// CHECK1-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP4]], align 16
Expand Down Expand Up @@ -483,7 +483,7 @@ void test_omp_all_memory()
// CHECK1-NEXT: [[TMP150:%.*]] = load i32, ptr @a, align 4
// CHECK1-NEXT: store i32 [[TMP150]], ptr [[RETVAL]], align 4
// CHECK1-NEXT: [[TMP151:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: call void @llvm.stackrestore(ptr [[TMP151]])
// CHECK1-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP151]])
// CHECK1-NEXT: [[ARRAY_BEGIN32:%.*]] = getelementptr inbounds [2 x %struct.S], ptr [[S]], i32 0, i32 0
// CHECK1-NEXT: [[TMP152:%.*]] = getelementptr inbounds [[STRUCT_S]], ptr [[ARRAY_BEGIN32]], i64 2
// CHECK1-NEXT: br label [[ARRAYDESTROY_BODY:%.*]]
Expand Down Expand Up @@ -1381,7 +1381,7 @@ void test_omp_all_memory()
// CHECK1-51: arrayctor.cont:
// CHECK1-51-NEXT: [[TMP1:%.*]] = load i32, ptr @a, align 4
// CHECK1-51-NEXT: [[TMP2:%.*]] = zext i32 [[TMP1]] to i64
// CHECK1-51-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave()
// CHECK1-51-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK1-51-NEXT: store ptr [[TMP3]], ptr [[SAVED_STACK]], align 8
// CHECK1-51-NEXT: [[TMP4:%.*]] = mul nuw i64 10, [[TMP2]]
// CHECK1-51-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP4]], align 16
Expand Down Expand Up @@ -1651,7 +1651,7 @@ void test_omp_all_memory()
// CHECK1-51-NEXT: [[TMP178:%.*]] = load i32, ptr @a, align 4
// CHECK1-51-NEXT: store i32 [[TMP178]], ptr [[RETVAL]], align 4
// CHECK1-51-NEXT: [[TMP179:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK1-51-NEXT: call void @llvm.stackrestore(ptr [[TMP179]])
// CHECK1-51-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP179]])
// CHECK1-51-NEXT: [[ARRAY_BEGIN42:%.*]] = getelementptr inbounds [2 x %struct.S], ptr [[S]], i32 0, i32 0
// CHECK1-51-NEXT: [[TMP180:%.*]] = getelementptr inbounds [[STRUCT_S]], ptr [[ARRAY_BEGIN42]], i64 2
// CHECK1-51-NEXT: br label [[ARRAYDESTROY_BODY:%.*]]
Expand Down Expand Up @@ -2989,7 +2989,7 @@ void test_omp_all_memory()
// CHECK2: arrayctor.cont:
// CHECK2-NEXT: [[TMP1:%.*]] = load i32, ptr @a, align 4
// CHECK2-NEXT: [[TMP2:%.*]] = zext i32 [[TMP1]] to i64
// CHECK2-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave()
// CHECK2-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK2-NEXT: store ptr [[TMP3]], ptr [[SAVED_STACK]], align 8
// CHECK2-NEXT: [[TMP4:%.*]] = mul nuw i64 10, [[TMP2]]
// CHECK2-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP4]], align 16
Expand Down Expand Up @@ -3214,7 +3214,7 @@ void test_omp_all_memory()
// CHECK2-NEXT: [[TMP150:%.*]] = load i32, ptr @a, align 4
// CHECK2-NEXT: store i32 [[TMP150]], ptr [[RETVAL]], align 4
// CHECK2-NEXT: [[TMP151:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK2-NEXT: call void @llvm.stackrestore(ptr [[TMP151]])
// CHECK2-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP151]])
// CHECK2-NEXT: [[ARRAY_BEGIN32:%.*]] = getelementptr inbounds [2 x %struct.S], ptr [[S]], i32 0, i32 0
// CHECK2-NEXT: [[TMP152:%.*]] = getelementptr inbounds [[STRUCT_S]], ptr [[ARRAY_BEGIN32]], i64 2
// CHECK2-NEXT: br label [[ARRAYDESTROY_BODY:%.*]]
Expand Down Expand Up @@ -4112,7 +4112,7 @@ void test_omp_all_memory()
// CHECK2-51: arrayctor.cont:
// CHECK2-51-NEXT: [[TMP1:%.*]] = load i32, ptr @a, align 4
// CHECK2-51-NEXT: [[TMP2:%.*]] = zext i32 [[TMP1]] to i64
// CHECK2-51-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave()
// CHECK2-51-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK2-51-NEXT: store ptr [[TMP3]], ptr [[SAVED_STACK]], align 8
// CHECK2-51-NEXT: [[TMP4:%.*]] = mul nuw i64 10, [[TMP2]]
// CHECK2-51-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP4]], align 16
Expand Down Expand Up @@ -4382,7 +4382,7 @@ void test_omp_all_memory()
// CHECK2-51-NEXT: [[TMP178:%.*]] = load i32, ptr @a, align 4
// CHECK2-51-NEXT: store i32 [[TMP178]], ptr [[RETVAL]], align 4
// CHECK2-51-NEXT: [[TMP179:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK2-51-NEXT: call void @llvm.stackrestore(ptr [[TMP179]])
// CHECK2-51-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP179]])
// CHECK2-51-NEXT: [[ARRAY_BEGIN42:%.*]] = getelementptr inbounds [2 x %struct.S], ptr [[S]], i32 0, i32 0
// CHECK2-51-NEXT: [[TMP180:%.*]] = getelementptr inbounds [[STRUCT_S]], ptr [[ARRAY_BEGIN42]], i64 2
// CHECK2-51-NEXT: br label [[ARRAYDESTROY_BODY:%.*]]
Expand Down Expand Up @@ -5719,7 +5719,7 @@ void test_omp_all_memory()
// CHECK3: arrayctor.cont:
// CHECK3-NEXT: [[TMP0:%.*]] = load i32, ptr @a, align 4
// CHECK3-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK3-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK3-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK3-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK3-NEXT: [[TMP3:%.*]] = mul nuw i64 10, [[TMP1]]
// CHECK3-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP3]], align 16
Expand Down Expand Up @@ -5964,7 +5964,7 @@ void test_omp_all_memory()
// CHECK3-NEXT: [[TMP149:%.*]] = load i32, ptr @a, align 4
// CHECK3-NEXT: store i32 [[TMP149]], ptr [[RETVAL]], align 4
// CHECK3-NEXT: [[TMP150:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK3-NEXT: call void @llvm.stackrestore(ptr [[TMP150]])
// CHECK3-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP150]])
// CHECK3-NEXT: [[ARRAY_BEGIN51:%.*]] = getelementptr inbounds [2 x %struct.S], ptr [[S]], i32 0, i32 0
// CHECK3-NEXT: [[TMP151:%.*]] = getelementptr inbounds [[STRUCT_S]], ptr [[ARRAY_BEGIN51]], i64 2
// CHECK3-NEXT: br label [[ARRAYDESTROY_BODY:%.*]]
Expand Down Expand Up @@ -6735,7 +6735,7 @@ void test_omp_all_memory()
// CHECK4: arrayctor.cont:
// CHECK4-NEXT: [[TMP0:%.*]] = load i32, ptr @a, align 4
// CHECK4-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK4-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK4-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK4-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK4-NEXT: [[TMP3:%.*]] = mul nuw i64 10, [[TMP1]]
// CHECK4-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP3]], align 16
Expand Down Expand Up @@ -6980,7 +6980,7 @@ void test_omp_all_memory()
// CHECK4-NEXT: [[TMP149:%.*]] = load i32, ptr @a, align 4
// CHECK4-NEXT: store i32 [[TMP149]], ptr [[RETVAL]], align 4
// CHECK4-NEXT: [[TMP150:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK4-NEXT: call void @llvm.stackrestore(ptr [[TMP150]])
// CHECK4-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP150]])
// CHECK4-NEXT: [[ARRAY_BEGIN51:%.*]] = getelementptr inbounds [2 x %struct.S], ptr [[S]], i32 0, i32 0
// CHECK4-NEXT: [[TMP151:%.*]] = getelementptr inbounds [[STRUCT_S]], ptr [[ARRAY_BEGIN51]], i64 2
// CHECK4-NEXT: br label [[ARRAYDESTROY_BODY:%.*]]
Expand Down Expand Up @@ -7754,7 +7754,7 @@ void test_omp_all_memory()
// CHECK3-51: arrayctor.cont:
// CHECK3-51-NEXT: [[TMP0:%.*]] = load i32, ptr @a, align 4
// CHECK3-51-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK3-51-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK3-51-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK3-51-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK3-51-NEXT: [[TMP3:%.*]] = mul nuw i64 10, [[TMP1]]
// CHECK3-51-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP3]], align 16
Expand Down Expand Up @@ -8046,7 +8046,7 @@ void test_omp_all_memory()
// CHECK3-51-NEXT: [[TMP177:%.*]] = load i32, ptr @a, align 4
// CHECK3-51-NEXT: store i32 [[TMP177]], ptr [[RETVAL]], align 4
// CHECK3-51-NEXT: [[TMP178:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK3-51-NEXT: call void @llvm.stackrestore(ptr [[TMP178]])
// CHECK3-51-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP178]])
// CHECK3-51-NEXT: [[ARRAY_BEGIN63:%.*]] = getelementptr inbounds [2 x %struct.S], ptr [[S]], i32 0, i32 0
// CHECK3-51-NEXT: [[TMP179:%.*]] = getelementptr inbounds [[STRUCT_S]], ptr [[ARRAY_BEGIN63]], i64 2
// CHECK3-51-NEXT: br label [[ARRAYDESTROY_BODY:%.*]]
Expand Down Expand Up @@ -9269,7 +9269,7 @@ void test_omp_all_memory()
// CHECK4-51: arrayctor.cont:
// CHECK4-51-NEXT: [[TMP0:%.*]] = load i32, ptr @a, align 4
// CHECK4-51-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK4-51-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK4-51-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK4-51-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK4-51-NEXT: [[TMP3:%.*]] = mul nuw i64 10, [[TMP1]]
// CHECK4-51-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP3]], align 16
Expand Down Expand Up @@ -9514,7 +9514,7 @@ void test_omp_all_memory()
// CHECK4-51-NEXT: [[TMP149:%.*]] = load i32, ptr @a, align 4
// CHECK4-51-NEXT: store i32 [[TMP149]], ptr [[RETVAL]], align 4
// CHECK4-51-NEXT: [[TMP150:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK4-51-NEXT: call void @llvm.stackrestore(ptr [[TMP150]])
// CHECK4-51-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP150]])
// CHECK4-51-NEXT: [[ARRAY_BEGIN51:%.*]] = getelementptr inbounds [2 x %struct.S], ptr [[S]], i32 0, i32 0
// CHECK4-51-NEXT: [[TMP151:%.*]] = getelementptr inbounds [[STRUCT_S]], ptr [[ARRAY_BEGIN51]], i64 2
// CHECK4-51-NEXT: br label [[ARRAYDESTROY_BODY:%.*]]
Expand Down
4 changes: 2 additions & 2 deletions clang/test/OpenMP/task_in_reduction_codegen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ int main(int argc, char **argv) {
// CHECK1: arrayctor.cont:
// CHECK1-NEXT: [[TMP1:%.*]] = load i32, ptr [[ARGC_ADDR]], align 4
// CHECK1-NEXT: [[TMP2:%.*]] = zext i32 [[TMP1]] to i64
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave()
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK1-NEXT: store ptr [[TMP3]], ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: [[VLA:%.*]] = alloca i16, i64 [[TMP2]], align 16
// CHECK1-NEXT: store i64 [[TMP2]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -185,7 +185,7 @@ int main(int argc, char **argv) {
// CHECK1-NEXT: [[TMP48:%.*]] = call i32 @__kmpc_omp_task(ptr @[[GLOB1]], i32 [[TMP0]], ptr [[TMP44]])
// CHECK1-NEXT: store i32 0, ptr [[RETVAL]], align 4
// CHECK1-NEXT: [[TMP49:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: call void @llvm.stackrestore(ptr [[TMP49]])
// CHECK1-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP49]])
// CHECK1-NEXT: [[ARRAY_BEGIN7:%.*]] = getelementptr inbounds [5 x %struct.S], ptr [[C]], i32 0, i32 0
// CHECK1-NEXT: [[TMP50:%.*]] = getelementptr inbounds [[STRUCT_S]], ptr [[ARRAY_BEGIN7]], i64 5
// CHECK1-NEXT: br label [[ARRAYDESTROY_BODY:%.*]]
Expand Down
4 changes: 2 additions & 2 deletions clang/test/OpenMP/taskloop_in_reduction_codegen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ int main(int argc, char **argv) {
// CHECK1: arrayctor.cont:
// CHECK1-NEXT: [[TMP1:%.*]] = load i32, ptr [[ARGC_ADDR]], align 4
// CHECK1-NEXT: [[TMP2:%.*]] = zext i32 [[TMP1]] to i64
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave()
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK1-NEXT: store ptr [[TMP3]], ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: [[VLA:%.*]] = alloca i16, i64 [[TMP2]], align 16
// CHECK1-NEXT: store i64 [[TMP2]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -163,7 +163,7 @@ int main(int argc, char **argv) {
// CHECK1-NEXT: call void @__kmpc_end_taskgroup(ptr @[[GLOB1]], i32 [[TMP0]])
// CHECK1-NEXT: store i32 0, ptr [[RETVAL]], align 4
// CHECK1-NEXT: [[TMP43:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: call void @llvm.stackrestore(ptr [[TMP43]])
// CHECK1-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP43]])
// CHECK1-NEXT: [[ARRAY_BEGIN7:%.*]] = getelementptr inbounds [5 x %struct.S], ptr [[C]], i32 0, i32 0
// CHECK1-NEXT: [[TMP44:%.*]] = getelementptr inbounds [[STRUCT_S]], ptr [[ARRAY_BEGIN7]], i64 5
// CHECK1-NEXT: br label [[ARRAYDESTROY_BODY:%.*]]
Expand Down
8 changes: 4 additions & 4 deletions clang/test/OpenMP/taskloop_simd_in_reduction_codegen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ int main(int argc, char **argv) {
// CHECK1: arrayctor.cont:
// CHECK1-NEXT: [[TMP1:%.*]] = load i32, ptr [[ARGC_ADDR]], align 4
// CHECK1-NEXT: [[TMP2:%.*]] = zext i32 [[TMP1]] to i64
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave()
// CHECK1-NEXT: [[TMP3:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK1-NEXT: store ptr [[TMP3]], ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: [[VLA:%.*]] = alloca i16, i64 [[TMP2]], align 16
// CHECK1-NEXT: store i64 [[TMP2]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -163,7 +163,7 @@ int main(int argc, char **argv) {
// CHECK1-NEXT: call void @__kmpc_end_taskgroup(ptr @[[GLOB1]], i32 [[TMP0]])
// CHECK1-NEXT: store i32 0, ptr [[RETVAL]], align 4
// CHECK1-NEXT: [[TMP43:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK1-NEXT: call void @llvm.stackrestore(ptr [[TMP43]])
// CHECK1-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP43]])
// CHECK1-NEXT: [[ARRAY_BEGIN7:%.*]] = getelementptr inbounds [5 x %struct.S], ptr [[C]], i32 0, i32 0
// CHECK1-NEXT: [[TMP44:%.*]] = getelementptr inbounds [[STRUCT_S]], ptr [[ARRAY_BEGIN7]], i64 5
// CHECK1-NEXT: br label [[ARRAYDESTROY_BODY:%.*]]
Expand Down Expand Up @@ -695,7 +695,7 @@ int main(int argc, char **argv) {
// CHECK3: arrayctor.cont:
// CHECK3-NEXT: [[TMP0:%.*]] = load i32, ptr [[ARGC_ADDR]], align 4
// CHECK3-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK3-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK3-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK3-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK3-NEXT: [[VLA:%.*]] = alloca i16, i64 [[TMP1]], align 16
// CHECK3-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -736,7 +736,7 @@ int main(int argc, char **argv) {
// CHECK3-NEXT: store i32 5, ptr [[I]], align 4
// CHECK3-NEXT: store i32 0, ptr [[RETVAL]], align 4
// CHECK3-NEXT: [[TMP11:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK3-NEXT: call void @llvm.stackrestore(ptr [[TMP11]])
// CHECK3-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP11]])
// CHECK3-NEXT: [[ARRAY_BEGIN6:%.*]] = getelementptr inbounds [5 x %struct.S], ptr [[C]], i32 0, i32 0
// CHECK3-NEXT: [[TMP12:%.*]] = getelementptr inbounds [[STRUCT_S]], ptr [[ARRAY_BEGIN6]], i64 5
// CHECK3-NEXT: br label [[ARRAYDESTROY_BODY:%.*]]
Expand Down
16 changes: 8 additions & 8 deletions clang/test/OpenMP/teams_distribute_codegen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -987,7 +987,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: store i32 100, ptr [[N]], align 4
// CHECK9-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK9-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK9-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK9-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK9-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP1]], align 4
// CHECK9-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -1065,7 +1065,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[ARRAYIDX:%.*]] = getelementptr inbounds i32, ptr [[VLA]], i64 0
// CHECK9-NEXT: [[TMP38:%.*]] = load i32, ptr [[ARRAYIDX]], align 4
// CHECK9-NEXT: [[TMP39:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: call void @llvm.stackrestore(ptr [[TMP39]])
// CHECK9-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP39]])
// CHECK9-NEXT: ret i32 [[TMP38]]
//
//
Expand Down Expand Up @@ -1203,7 +1203,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: [[KERNEL_ARGS:%.*]] = alloca [[STRUCT___TGT_KERNEL_ARGUMENTS:%.*]], align 8
// CHECK11-NEXT: store i32 100, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave()
// CHECK11-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK11-NEXT: store ptr [[TMP1]], ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP0]], align 4
// CHECK11-NEXT: store i32 [[TMP0]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -1282,7 +1282,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: [[ARRAYIDX:%.*]] = getelementptr inbounds i32, ptr [[VLA]], i32 0
// CHECK11-NEXT: [[TMP38:%.*]] = load i32, ptr [[ARRAYIDX]], align 4
// CHECK11-NEXT: [[TMP39:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: call void @llvm.stackrestore(ptr [[TMP39]])
// CHECK11-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP39]])
// CHECK11-NEXT: ret i32 [[TMP38]]
//
//
Expand Down Expand Up @@ -1729,7 +1729,7 @@ int main (int argc, char **argv) {
// CHECK25-NEXT: store i32 100, ptr [[N]], align 4
// CHECK25-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK25-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK25-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK25-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK25-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK25-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP1]], align 4
// CHECK25-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -1808,7 +1808,7 @@ int main (int argc, char **argv) {
// CHECK25-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10EEiT_(i32 noundef signext [[TMP38]])
// CHECK25-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK25-NEXT: [[TMP39:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK25-NEXT: call void @llvm.stackrestore(ptr [[TMP39]])
// CHECK25-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP39]])
// CHECK25-NEXT: [[TMP40:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK25-NEXT: ret i32 [[TMP40]]
//
Expand Down Expand Up @@ -2121,7 +2121,7 @@ int main (int argc, char **argv) {
// CHECK27-NEXT: store ptr [[ARGV]], ptr [[ARGV_ADDR]], align 4
// CHECK27-NEXT: store i32 100, ptr [[N]], align 4
// CHECK27-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK27-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave()
// CHECK27-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK27-NEXT: store ptr [[TMP1]], ptr [[SAVED_STACK]], align 4
// CHECK27-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP0]], align 4
// CHECK27-NEXT: store i32 [[TMP0]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -2201,7 +2201,7 @@ int main (int argc, char **argv) {
// CHECK27-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10EEiT_(i32 noundef [[TMP38]])
// CHECK27-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK27-NEXT: [[TMP39:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK27-NEXT: call void @llvm.stackrestore(ptr [[TMP39]])
// CHECK27-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP39]])
// CHECK27-NEXT: [[TMP40:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK27-NEXT: ret i32 [[TMP40]]
//
Expand Down
8 changes: 4 additions & 4 deletions clang/test/OpenMP/teams_distribute_collapse_codegen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -463,7 +463,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK9-NEXT: [[TMP2:%.*]] = load i32, ptr [[M]], align 4
// CHECK9-NEXT: [[TMP3:%.*]] = zext i32 [[TMP2]] to i64
// CHECK9-NEXT: [[TMP4:%.*]] = call ptr @llvm.stacksave()
// CHECK9-NEXT: [[TMP4:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK9-NEXT: store ptr [[TMP4]], ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: [[TMP5:%.*]] = mul nuw i64 [[TMP1]], [[TMP3]]
// CHECK9-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP5]], align 4
Expand Down Expand Up @@ -567,7 +567,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10ELi2EEiT_(i32 noundef signext [[TMP51]])
// CHECK9-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK9-NEXT: [[TMP52:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: call void @llvm.stackrestore(ptr [[TMP52]])
// CHECK9-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP52]])
// CHECK9-NEXT: [[TMP53:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK9-NEXT: ret i32 [[TMP53]]
//
Expand Down Expand Up @@ -924,7 +924,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: store i32 2, ptr [[M]], align 4
// CHECK11-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP1:%.*]] = load i32, ptr [[M]], align 4
// CHECK11-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK11-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK11-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: [[TMP3:%.*]] = mul nuw i32 [[TMP0]], [[TMP1]]
// CHECK11-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP3]], align 4
Expand Down Expand Up @@ -1029,7 +1029,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10ELi2EEiT_(i32 noundef [[TMP50]])
// CHECK11-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK11-NEXT: [[TMP51:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: call void @llvm.stackrestore(ptr [[TMP51]])
// CHECK11-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP51]])
// CHECK11-NEXT: [[TMP52:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK11-NEXT: ret i32 [[TMP52]]
//
Expand Down
8 changes: 4 additions & 4 deletions clang/test/OpenMP/teams_distribute_dist_schedule_codegen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1008,7 +1008,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: store i32 100, ptr [[N]], align 4
// CHECK9-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK9-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK9-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK9-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK9-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP1]], align 4
// CHECK9-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -1229,7 +1229,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10EEiT_(i32 noundef signext [[TMP108]])
// CHECK9-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK9-NEXT: [[TMP109:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: call void @llvm.stackrestore(ptr [[TMP109]])
// CHECK9-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP109]])
// CHECK9-NEXT: [[TMP110:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK9-NEXT: ret i32 [[TMP110]]
//
Expand Down Expand Up @@ -2034,7 +2034,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: store ptr [[ARGV]], ptr [[ARGV_ADDR]], align 4
// CHECK11-NEXT: store i32 100, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave()
// CHECK11-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK11-NEXT: store ptr [[TMP1]], ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP0]], align 4
// CHECK11-NEXT: store i32 [[TMP0]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -2258,7 +2258,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10EEiT_(i32 noundef [[TMP110]])
// CHECK11-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK11-NEXT: [[TMP111:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: call void @llvm.stackrestore(ptr [[TMP111]])
// CHECK11-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP111]])
// CHECK11-NEXT: [[TMP112:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK11-NEXT: ret i32 [[TMP112]]
//
Expand Down
16 changes: 8 additions & 8 deletions clang/test/OpenMP/teams_distribute_parallel_for_codegen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1397,7 +1397,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: store i32 100, ptr [[N]], align 4
// CHECK9-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK9-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK9-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK9-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK9-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP1]], align 4
// CHECK9-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -1475,7 +1475,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[ARRAYIDX:%.*]] = getelementptr inbounds i32, ptr [[VLA]], i64 0
// CHECK9-NEXT: [[TMP38:%.*]] = load i32, ptr [[ARRAYIDX]], align 4
// CHECK9-NEXT: [[TMP39:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: call void @llvm.stackrestore(ptr [[TMP39]])
// CHECK9-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP39]])
// CHECK9-NEXT: ret i32 [[TMP38]]
//
//
Expand Down Expand Up @@ -1714,7 +1714,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: [[KERNEL_ARGS:%.*]] = alloca [[STRUCT___TGT_KERNEL_ARGUMENTS:%.*]], align 8
// CHECK11-NEXT: store i32 100, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave()
// CHECK11-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK11-NEXT: store ptr [[TMP1]], ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP0]], align 4
// CHECK11-NEXT: store i32 [[TMP0]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -1793,7 +1793,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: [[ARRAYIDX:%.*]] = getelementptr inbounds i32, ptr [[VLA]], i32 0
// CHECK11-NEXT: [[TMP38:%.*]] = load i32, ptr [[ARRAYIDX]], align 4
// CHECK11-NEXT: [[TMP39:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: call void @llvm.stackrestore(ptr [[TMP39]])
// CHECK11-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP39]])
// CHECK11-NEXT: ret i32 [[TMP38]]
//
//
Expand Down Expand Up @@ -2479,7 +2479,7 @@ int main (int argc, char **argv) {
// CHECK25-NEXT: store i32 100, ptr [[N]], align 4
// CHECK25-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK25-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK25-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK25-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK25-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK25-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP1]], align 4
// CHECK25-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -2558,7 +2558,7 @@ int main (int argc, char **argv) {
// CHECK25-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10EEiT_(i32 noundef signext [[TMP38]])
// CHECK25-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK25-NEXT: [[TMP39:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK25-NEXT: call void @llvm.stackrestore(ptr [[TMP39]])
// CHECK25-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP39]])
// CHECK25-NEXT: [[TMP40:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK25-NEXT: ret i32 [[TMP40]]
//
Expand Down Expand Up @@ -3043,7 +3043,7 @@ int main (int argc, char **argv) {
// CHECK27-NEXT: store ptr [[ARGV]], ptr [[ARGV_ADDR]], align 4
// CHECK27-NEXT: store i32 100, ptr [[N]], align 4
// CHECK27-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK27-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave()
// CHECK27-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK27-NEXT: store ptr [[TMP1]], ptr [[SAVED_STACK]], align 4
// CHECK27-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP0]], align 4
// CHECK27-NEXT: store i32 [[TMP0]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -3123,7 +3123,7 @@ int main (int argc, char **argv) {
// CHECK27-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10EEiT_(i32 noundef [[TMP38]])
// CHECK27-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK27-NEXT: [[TMP39:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK27-NEXT: call void @llvm.stackrestore(ptr [[TMP39]])
// CHECK27-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP39]])
// CHECK27-NEXT: [[TMP40:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK27-NEXT: ret i32 [[TMP40]]
//
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -614,7 +614,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK9-NEXT: [[TMP2:%.*]] = load i32, ptr [[M]], align 4
// CHECK9-NEXT: [[TMP3:%.*]] = zext i32 [[TMP2]] to i64
// CHECK9-NEXT: [[TMP4:%.*]] = call ptr @llvm.stacksave()
// CHECK9-NEXT: [[TMP4:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK9-NEXT: store ptr [[TMP4]], ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: [[TMP5:%.*]] = mul nuw i64 [[TMP1]], [[TMP3]]
// CHECK9-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP5]], align 4
Expand Down Expand Up @@ -718,7 +718,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10ELi2EEiT_(i32 noundef signext [[TMP51]])
// CHECK9-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK9-NEXT: [[TMP52:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: call void @llvm.stackrestore(ptr [[TMP52]])
// CHECK9-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP52]])
// CHECK9-NEXT: [[TMP53:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK9-NEXT: ret i32 [[TMP53]]
//
Expand Down Expand Up @@ -1270,7 +1270,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: store i32 2, ptr [[M]], align 4
// CHECK11-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP1:%.*]] = load i32, ptr [[M]], align 4
// CHECK11-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK11-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK11-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: [[TMP3:%.*]] = mul nuw i32 [[TMP0]], [[TMP1]]
// CHECK11-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP3]], align 4
Expand Down Expand Up @@ -1375,7 +1375,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10ELi2EEiT_(i32 noundef [[TMP50]])
// CHECK11-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK11-NEXT: [[TMP51:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: call void @llvm.stackrestore(ptr [[TMP51]])
// CHECK11-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP51]])
// CHECK11-NEXT: [[TMP52:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK11-NEXT: ret i32 [[TMP52]]
//
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1454,7 +1454,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: store i32 100, ptr [[N]], align 4
// CHECK9-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK9-NEXT: [[TMP1:%.*]] = zext i32 [[TMP0]] to i64
// CHECK9-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave()
// CHECK9-NEXT: [[TMP2:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK9-NEXT: store ptr [[TMP2]], ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: [[VLA:%.*]] = alloca i32, i64 [[TMP1]], align 4
// CHECK9-NEXT: store i64 [[TMP1]], ptr [[__VLA_EXPR0]], align 8
Expand Down Expand Up @@ -1685,7 +1685,7 @@ int main (int argc, char **argv) {
// CHECK9-NEXT: [[CALL:%.*]] = call noundef signext i32 @_Z5tmainIiLi10EEiT_(i32 noundef signext [[TMP113]])
// CHECK9-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK9-NEXT: [[TMP114:%.*]] = load ptr, ptr [[SAVED_STACK]], align 8
// CHECK9-NEXT: call void @llvm.stackrestore(ptr [[TMP114]])
// CHECK9-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP114]])
// CHECK9-NEXT: [[TMP115:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK9-NEXT: ret i32 [[TMP115]]
//
Expand Down Expand Up @@ -3062,7 +3062,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: store ptr [[ARGV]], ptr [[ARGV_ADDR]], align 4
// CHECK11-NEXT: store i32 100, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP0:%.*]] = load i32, ptr [[N]], align 4
// CHECK11-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave()
// CHECK11-NEXT: [[TMP1:%.*]] = call ptr @llvm.stacksave.p0()
// CHECK11-NEXT: store ptr [[TMP1]], ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: [[VLA:%.*]] = alloca i32, i32 [[TMP0]], align 4
// CHECK11-NEXT: store i32 [[TMP0]], ptr [[__VLA_EXPR0]], align 4
Expand Down Expand Up @@ -3296,7 +3296,7 @@ int main (int argc, char **argv) {
// CHECK11-NEXT: [[CALL:%.*]] = call noundef i32 @_Z5tmainIiLi10EEiT_(i32 noundef [[TMP115]])
// CHECK11-NEXT: store i32 [[CALL]], ptr [[RETVAL]], align 4
// CHECK11-NEXT: [[TMP116:%.*]] = load ptr, ptr [[SAVED_STACK]], align 4
// CHECK11-NEXT: call void @llvm.stackrestore(ptr [[TMP116]])
// CHECK11-NEXT: call void @llvm.stackrestore.p0(ptr [[TMP116]])
// CHECK11-NEXT: [[TMP117:%.*]] = load i32, ptr [[RETVAL]], align 4
// CHECK11-NEXT: ret i32 [[TMP117]]
//
Expand Down
Loading