// RUN: not llvm-mc -triple aarch64 -filetype obj < %s -o /dev/null 2>&1 | FileCheck %s // COM: Edge case testing for branches and ADR[P] // CHECK-LABEL: :{{[0-9]+}}:{{[0-9]+}}: error: fixup value out of range // CHECK-NEXT: adr x0, adr_lower adr_lower: adr x0, adr_lower-(1<<20)-1 // CHECK-LABEL: :{{[0-9]+}}:{{[0-9]+}}: error: fixup value out of range // CHECK-NEXT: adr x0, adr_upper adr_upper: adr x0, adr_upper+(1<<20) // CHECK-LABEL: :{{[0-9]+}}:{{[0-9]+}}: error: fixup value out of range // CHECK-NEXT: b b_lower b_lower: b b_lower-(1<<27)-4 // CHECK-LABEL: :{{[0-9]+}}:{{[0-9]+}}: error: fixup value out of range // CHECK-NEXT: b b_upper b_upper: b b_upper+(1<<27) // CHECK-LABEL: :{{[0-9]+}}:{{[0-9]+}}: error: fixup value out of range // CHECK-NEXT: beq beq_lower beq_lower: beq beq_lower-(1<<20)-4 // CHECK-LABEL: :{{[0-9]+}}:{{[0-9]+}}: error: fixup value out of range // CHECK-NEXT: beq beq_upper beq_upper: beq beq_upper+(1<<20) // CHECK-LABEL: :{{[0-9]+}}:{{[0-9]+}}: error: fixup value out of range // CHECK-NEXT: ldr x0, ldr_lower ldr_lower: ldr x0, ldr_lower-(1<<20)-4 // CHECK-LABEL: :{{[0-9]+}}:{{[0-9]+}}: error: fixup value out of range // CHECK-NEXT: ldr x0, ldr_upper ldr_upper: ldr x0, ldr_upper+(1<<20) // CHECK-LABEL: :{{[0-9]+}}:{{[0-9]+}}: error: fixup value out of range // CHECK-NEXT: tbz x0, #1, tbz_lower tbz_lower: tbz x0, #1, tbz_lower-(1<<15)-4 // CHECK-LABEL: :{{[0-9]+}}:{{[0-9]+}}: error: fixup value out of range // CHECK-NEXT: tbz x0, #1, tbz_upper tbz_upper: tbz x0, #1, tbz_upper+(1<<15)