|  | @ RUN: llvm-mc -triple thumbv7-apple-ios -filetype=obj %s -o %t | 
|  | @ RUN: llvm-objdump --macho -d %t | FileCheck %s | 
|  |  | 
|  | @ Size: 2 bytes | 
|  | .thumb_func _f1 | 
|  | .thumb | 
|  | .globl _f1 | 
|  | _f1: | 
|  | bx lr | 
|  |  | 
|  | @ A properly aligned ARM function | 
|  | .globl _aligned | 
|  | .p2align 2 | 
|  | .arm | 
|  | _aligned: | 
|  | bx lr | 
|  |  | 
|  | @ Align this Thumb function so we can predict the outcome of | 
|  | @ "Align(PC, 4)" during blx operation. | 
|  | .thumb_func _test | 
|  | .thumb | 
|  | .p2align 2 | 
|  | .globl _test | 
|  | _test: | 
|  | blx _elsewhere | 
|  | blx _aligned    @ PC=0 (mod 4) | 
|  | blx _aligned    @ PC=0 (mod 4) | 
|  | movs r0, r0 | 
|  | blx _aligned    @ PC=2 (mod 4) | 
|  | blx _f1 | 
|  |  | 
|  | @ CHECK: blx _elsewhere | 
|  | @ CHECK: ff f7 fa ef blx _aligned | 
|  | @ CHECK: ff f7 f8 ef blx _aligned | 
|  | @ CHECK: ff f7 f6 ef blx _aligned | 
|  | @ CHECK: ff f7 f2 ef blx _f1 |