| # RUN: not llvm-mc -triple x86_64-unknown-unknown %s 2>&1 | FileCheck %s --check-prefix=ASM-ERR | 
 | # RUN: llvm-mc -filetype=obj -triple x86_64-unknown-unknown %s | llvm-objdump -j .data  -s - | FileCheck %s --check-prefix=OBJDATA | 
 | # RUN: llvm-mc -filetype=obj -triple x86_64-unknown-unknown %s | llvm-objdump -j .text -s - | FileCheck %s --check-prefix=OBJTEXT | 
 | .data | 
 |  | 
 | # OBJDATA: Contents of section .data | 
 | # OBJDATA-NEXT: 0000 aa0506ff | 
 | 	 | 
 | foo2: | 
 | # ASM-ERR: [[@LINE+1]]:5: error: expected absolute expression | 
 | .if . - foo2 == 0 | 
 |     .byte 0xaa | 
 | .else | 
 |     .byte 0x00 | 
 | .endif | 
 |  | 
 | foo3: | 
 |     .byte 5 | 
 | # ASM-ERR: [[@LINE+1]]:5: error: expected absolute expression | 
 | .if . - foo3 == 1 | 
 |    .byte 6 | 
 | .else | 
 |    .byte 7 | 
 | .endif | 
 |  | 
 | .byte 0xff | 
 |  | 
 | # nop is a fixed size instruction so this should pass. | 
 | 	 | 
 | # OBJTEXT: Contents of section .text | 
 | # OBJTEXT-NEXT: 0000 9090ff34 25000000 00909090 78563412 | 
 | # OBJTEXT-NEXT: 0010 78563412 90 | 
 |  | 
 | .text | 
 | 	 | 
 | text1: | 
 |         nop | 
 | # ASM-ERR: [[@LINE+1]]:5: error: expected absolute expression | 
 | .if . - text1 == 1 | 
 | 	nop | 
 | .else | 
 | 	ret | 
 | .endif | 
 | 	push gs | 
 | 	nop | 
 | 	nop | 
 | 	nop | 
 | # No additional errors. | 
 | #	 | 
 | # ASM-ERR-NOT: {{[0-9]+}}:{{[0-9]+}}: error: | 
 |  | 
 | 	 | 
 |  | 
 | text2: | 
 | 	.long 0x12345678 | 
 | text3: | 
 | 	.fill (text3-text2)/4, 4, 0x12345678 | 
 | 	nop | 
 |  | 
 |  | 
 |  | 
 |  | 
 |  | 
 | 	 |