25 lines · plain
1; RUN: llc -verify-machineinstrs -mtriple=armebv8-linux-gnueabi -O0 %s -o - | FileCheck %s2 3@x = global i64 10, align 84@y = global i64 20, align 85@z = global i64 20, align 86 7; CHECK-LABEL: main:8; CHECK: ldr [[R2:r[0-9]+]], [[[R1:r[0-9]+]]]9; CHECK-NEXT: ldr [[R1]], [[[R1]], #4]10; CHECK: mov [[R4:r[0-9]+]], [[R1]]11; CHECK: ldr [[R5:r[0-9]+]], [[[R1]]]12; CHECK-NEXT: ldr [[R6:r[0-9]+]], [[[R1]], #4]13; CHECK: mov [[R7:r[0-9]+]], [[R6]]14 15define arm_aapcs_vfpcc i32 @main() #0 {16entry:17 %retval = alloca i32, align 418 store i32 0, ptr %retval, align 419 %0 = load i64, ptr @z, align 820 %1 = load i64, ptr @x, align 821 %2 = cmpxchg ptr @y, i64 %0, i64 %1 seq_cst seq_cst22 %3 = extractvalue { i64, i1 } %2, 123 ret i32 024}25