Compiler projects using llvm
# RUN: llvm-mc -disassemble -triple thumbv7 -mcpu=cortex-a15 %s | FileCheck %s --check-prefix=CHECK-THUMB
# RUN: not llvm-mc -disassemble -triple thumbv7 -mcpu=cortex-a9 %s 2>&1 | FileCheck %s --check-prefix=CHECK-NOVIRT

[0xe0,0xf7,0x01,0x80]
[0xe0,0xf7,0x07,0x80]
[0xe0,0xf7,0x01,0x81]
[0xef,0xf7,0xff,0x8f]
# CHECK-THUMB:    hvc.w    #1
# CHECK-THUMB:    hvc.w    #7
# CHECK-THUMB:    hvc.w    #257
# CHECK-THUMB:    hvc.w    #65535
# CHECK-NOVIRT:    warning: invalid instruction encoding
# CHECK-NOVIRT:    warning: invalid instruction encoding
# CHECK-NOVIRT:    warning: invalid instruction encoding
# CHECK-NOVIRT:    warning: invalid instruction encoding

[0xde,0xf3,0x00,0x8f]
[0x08,0xbf] [0xde,0xf3,0x00,0x8f]
[0x18,0xbf] [0xde,0xf3,0x00,0x8f]
[0x28,0xbf] [0xde,0xf3,0x00,0x8f]
[0x38,0xbf] [0xde,0xf3,0x00,0x8f]
[0x48,0xbf] [0xde,0xf3,0x00,0x8f]
[0x58,0xbf] [0xde,0xf3,0x00,0x8f]
[0x68,0xbf] [0xde,0xf3,0x00,0x8f]
[0x78,0xbf] [0xde,0xf3,0x00,0x8f]
[0x88,0xbf] [0xde,0xf3,0x00,0x8f]
[0x98,0xbf] [0xde,0xf3,0x00,0x8f]
[0xa8,0xbf] [0xde,0xf3,0x00,0x8f]
[0xb8,0xbf] [0xde,0xf3,0x00,0x8f]
[0xc8,0xbf] [0xde,0xf3,0x00,0x8f]
[0xd8,0xbf] [0xde,0xf3,0x00,0x8f]
# CHECK-THUMB:    eret
# CHECK-THUMB:    ereteq
# CHECK-THUMB:    eretne
# CHECK-THUMB:    ereths
# CHECK-THUMB:    eretlo
# CHECK-THUMB:    eretmi
# CHECK-THUMB:    eretpl
# CHECK-THUMB:    eretvs
# CHECK-THUMB:    eretvc
# CHECK-THUMB:    erethi
# CHECK-THUMB:    eretls
# CHECK-THUMB:    eretge
# CHECK-THUMB:    eretlt
# CHECK-THUMB:    eretgt
# CHECK-THUMB:    eretle
# CHECK-NOVIRT:    subs    pc, lr, #0
# CHECK-NOVIRT:    subseq  pc, lr, #0
# CHECK-NOVIRT:    subsne  pc, lr, #0
# CHECK-NOVIRT:    subshs  pc, lr, #0
# CHECK-NOVIRT:    subslo  pc, lr, #0
# CHECK-NOVIRT:    subsmi  pc, lr, #0
# CHECK-NOVIRT:    subspl  pc, lr, #0
# CHECK-NOVIRT:    subsvs  pc, lr, #0
# CHECK-NOVIRT:    subsvc  pc, lr, #0
# CHECK-NOVIRT:    subshi  pc, lr, #0
# CHECK-NOVIRT:    subsls  pc, lr, #0
# CHECK-NOVIRT:    subsge  pc, lr, #0
# CHECK-NOVIRT:    subslt  pc, lr, #0
# CHECK-NOVIRT:    subsgt  pc, lr, #0
# CHECK-NOVIRT:    subsle  pc, lr, #0