# RUN: llvm-mc -triple thumbv8-unknown-unknown -mattr=+neon,+crypto -disassemble < %s | FileCheck %s

0xb0 0xff 0x42 0x03
# CHECK: aesd.8  q0, q1
0xb0 0xff 0x02 0x03
# CHECK: aese.8 q0, q1
0xb0 0xff 0xc2 0x03
# CHECK: aesimc.8 q0, q1
0xb0 0xff 0x82 0x03
# CHECK: aesmc.8 q0, q1

0xb9 0xff 0xc2 0x02
# CHECK: sha1h.32  q0, q1
0xba 0xff 0x82 0x03
# CHECK: sha1su1.32 q0, q1
0xba 0xff 0xc2 0x03
# CHECK: sha256su0.32 q0, q1

0x02 0xef 0x44 0x0c
# CHECK: sha1c.32  q0, q1, q2
0x22 0xef 0x44 0x0c
# CHECK: sha1m.32  q0, q1, q2
0x12 0xef 0x44 0x0c
# CHECK: sha1p.32 q0, q1, q2
0x32 0xef 0x44 0x0c
# CHECK: sha1su0.32  q0, q1, q2
0x02 0xff 0x44 0x0c
# CHECK: sha256h.32  q0, q1, q2
0x12 0xff 0x44 0x0c
# CHECK: sha256h2.32 q0, q1, q2
0x22 0xff 0x44 0x0c
# CHECK: sha256su1.32 q0, q1, q2

0xe0 0xef 0xa1 0x0e
# CHECK: vmull.p64  q8, d16, d17

# This used to be incorrectly decoded into an sha256h.32 [0x00,0xff,0x40,0x0c]
# The other similar encodings are stc2 [0x00,0xfd,0x40,0x0c] and cdp2 [0x00,0xfe,0x40,0x0c]
0x00 0xfc 0x40 0x0c
# CHECK-NOT: sha256h.32
# CHECK-NOT: stc2
# CHECK-NOT: cdp2