175cdab6dSDaniel Thornburgh// RUN: llvm-mc -triple=armv7 -filetype=obj %s | llvm-objdump --no-print-imm-hex --triple=armv7 -d - | FileCheck %s 2cfce5b26SJian Cai// RUN: not llvm-mc -triple=armv7 -filetype=obj --defsym=ERR=1 < %s -o /dev/null 2>&1 | FileCheck --check-prefix=ERR %s 3cfce5b26SJian Cai 4cfce5b26SJian Cai .syntax unified 5cfce5b26SJian Cai// Check that the assembler accepts the result of symbolic expressions as the 6cfce5b26SJian Cai// immediate operand in load and stores. 7cfce5b26SJian Cai0: 8cfce5b26SJian Cai// CHECK-LABEL: foo 9cfce5b26SJian Cai .space 1024 10cfce5b26SJian Cai1: 11cfce5b26SJian Caifoo: 12cfce5b26SJian Cai ldr r0, [r1, #(1b - 0b)] 13cfce5b26SJian Cai// CHECK-NEXT: ldr r0, [r1, #1024] 14cfce5b26SJian Cai ldr r0, [r1, #(0b - 1b)] 15cfce5b26SJian Cai// CHECK-NEXT: ldr r0, [r1, #-1024] 16cfce5b26SJian Cai ldrb r0, [r1, #(1b-0b)] 17cfce5b26SJian Cai// CHECK-NEXT: ldrb r0, [r1, #1024] 18cfce5b26SJian Cai str r0, [r1, #(1b-0b)] 19cfce5b26SJian Cai// CHECK-NEXT: str r0, [r1, #1024] 20cfce5b26SJian Cai strb r0, [r1, #(1b-0b)] 21cfce5b26SJian Cai// CHECK-NEXT: strb r0, [r1, #1024] 22cfce5b26SJian Cai.ifdef ERR 23cfce5b26SJian Cai str r0, [r1, 1b] 24*231ef210SFangrui Song// ERR:[[#@LINE-1]]:5: error: unsupported relocation type 25cfce5b26SJian Cai.endif 26