@@ -1368,6 +1368,7 @@ llvm.func @omp_atomic_read(%arg0 : !llvm.ptr, %arg1 : !llvm.ptr) -> () {
13681368
13691369// CHECK-LABEL: @omp_atomic_read_implicit_cast
13701370llvm.func @omp_atomic_read_implicit_cast () {
1371+ //CHECK: %[[ATOMIC_LOAD_TEMP:.*]] = alloca { float, float }, align 8
13711372//CHECK: %[[Z:.*]] = alloca float, i64 1, align 4
13721373//CHECK: %[[Y:.*]] = alloca double, i64 1, align 8
13731374//CHECK: %[[X:.*]] = alloca [2 x { float, float }], i64 1, align 8
@@ -1392,7 +1393,7 @@ llvm.func @omp_atomic_read_implicit_cast () {
13921393 %16 = llvm.mul %10 , %9 overflow <nsw > : i64
13931394 %17 = llvm.getelementptr %5 [%15 ] : (!llvm.ptr , i64 ) -> !llvm.ptr , !llvm.struct <(f32 , f32 )>
13941395
1395- //CHECK: %[[ATOMIC_LOAD_TEMP:.*]] = alloca { float, float }, align 8
1396+
13961397//CHECK: call void @__atomic_load(i64 8, ptr %[[X_ELEMENT]], ptr %[[ATOMIC_LOAD_TEMP]], i32 0)
13971398//CHECK: %[[LOAD:.*]] = load { float, float }, ptr %[[ATOMIC_LOAD_TEMP]], align 8
13981399//CHECK: %[[EXT:.*]] = extractvalue { float, float } %[[LOAD]], 0
@@ -1480,14 +1481,14 @@ llvm.func @omp_atomic_update(%x:!llvm.ptr, %expr: i32, %xbool: !llvm.ptr, %exprb
14801481
14811482// -----
14821483
1484+ //CHECK: %[[ATOMIC_TEMP_LOAD:.*]] = alloca { float, float }, align 8
14831485//CHECK: %[[X_NEW_VAL:.*]] = alloca { float, float }, align 8
14841486//CHECK: {{.*}} = alloca { float, float }, i64 1, align 8
14851487//CHECK: %[[ORIG_VAL:.*]] = alloca { float, float }, i64 1, align 8
14861488
14871489//CHECK: br label %entry
14881490
14891491//CHECK: entry:
1490- //CHECK: %[[ATOMIC_TEMP_LOAD:.*]] = alloca { float, float }, align 8
14911492//CHECK: call void @__atomic_load(i64 8, ptr %[[ORIG_VAL]], ptr %[[ATOMIC_TEMP_LOAD]], i32 0)
14921493//CHECK: %[[PHI_NODE_ENTRY_1:.*]] = load { float, float }, ptr %[[ATOMIC_TEMP_LOAD]], align 8
14931494//CHECK: br label %.atomic.cont
@@ -1532,14 +1533,14 @@ llvm.func @_QPomp_atomic_update_complex() {
15321533
15331534// -----
15341535
1536+ //CHECK: %[[ATOMIC_TEMP_LOAD:.*]] = alloca { float, float }, align 8
15351537//CHECK: %[[X_NEW_VAL:.*]] = alloca { float, float }, align 8
15361538//CHECK: %[[VAL_1:.*]] = alloca { float, float }, i64 1, align 8
15371539//CHECK: %[[ORIG_VAL:.*]] = alloca { float, float }, i64 1, align 8
15381540//CHECK: store { float, float } { float 2.000000e+00, float 2.000000e+00 }, ptr %[[ORIG_VAL]], align 4
15391541//CHECK: br label %entry
15401542
15411543//CHECK: entry: ; preds = %0
1542- //CHECK: %[[ATOMIC_TEMP_LOAD:.*]] = alloca { float, float }, align 8
15431544//CHECK: call void @__atomic_load(i64 8, ptr %[[ORIG_VAL]], ptr %[[ATOMIC_TEMP_LOAD]], i32 0)
15441545//CHECK: %[[PHI_NODE_ENTRY_1:.*]] = load { float, float }, ptr %[[ATOMIC_TEMP_LOAD]], align 8
15451546//CHECK: br label %.atomic.cont
@@ -1597,9 +1598,9 @@ llvm.func @_QPomp_atomic_capture_complex() {
15971598// CHECK-LABEL: define void @omp_atomic_read_complex() {
15981599llvm.func @omp_atomic_read_complex (){
15991600
1601+ // CHECK: %[[ATOMIC_TEMP_LOAD:.*]] = alloca { float, float }, align 8
16001602// CHECK: %[[a:.*]] = alloca { float, float }, i64 1, align 8
16011603// CHECK: %[[b:.*]] = alloca { float, float }, i64 1, align 8
1602- // CHECK: %[[ATOMIC_TEMP_LOAD:.*]] = alloca { float, float }, align 8
16031604// CHECK: call void @__atomic_load(i64 8, ptr %[[b]], ptr %[[ATOMIC_TEMP_LOAD]], i32 0)
16041605// CHECK: %[[LOADED_VAL:.*]] = load { float, float }, ptr %[[ATOMIC_TEMP_LOAD]], align 8
16051606// CHECK: store { float, float } %[[LOADED_VAL]], ptr %[[a]], align 4
0 commit comments