136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ RUN: not llvm-mc -triple armv7-eabi -filetype asm -o /dev/null 2>&1 %s \ 236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ RUN: | FileCheck %s -check-prefix CHECK-V7 336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ RUN: not llvm-mc -triple armv8-eabi -filetype asm -o /dev/null 2>&1 %s \ 436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ RUN: | FileCheck %s -check-prefix CHECK-V8 536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ RUN: not llvm-mc -triple thumbv7-eabi -filetype asm -o /dev/null 2>&1 %s \ 636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ RUN: | FileCheck %s -check-prefix CHECK-V7 736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ RUN: not llvm-mc -triple thumbv8-eabi -filetype asm -o /dev/null 2>&1 %s \ 836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ RUN: | FileCheck %s -check-prefix CHECK-V8 936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 1036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines .syntax unified 1136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 1236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines .arch_extension crypto 1336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: architectural extension 'crypto' is not allowed for the current base architecture 1436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7-NEXT: .arch_extension crypto 1536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7-NEXT: ^ 1636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 1736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines .type crypto,%function 1836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hinescrypto: 1936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines vmull.p64 q0, d0, d1 2036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 2136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 2236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines aesd.8 q0, q1 2336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 2436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines aese.8 q0, q1 2536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 2636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines aesimc.8 q0, q1 2736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 2836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines aesmc.8 q0, q1 2936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 3036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 3136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha1h.32 q0, q1 3236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 3336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha1su1.32 q0, q1 3436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 3536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha256su0.32 q0, q1 3636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 3736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 3836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha1c.32 q0, q1, q2 3936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 4036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha1m.32 q0, q1, q2 4136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 4236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha1p.32 q0, q1, q2 4336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 4436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha1su0.32 q0, q1, q2 4536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 4636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha256h.32 q0, q1, q2 4736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 4836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha256h2.32 q0, q1, q2 4936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 5036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha256su1.32 q0, q1, q2 5136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 5236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 5336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines .arch_extension nocrypto 5436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: architectural extension 'crypto' is not allowed for the current base architecture 5536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7-NEXT: .arch_extension nocrypto 5636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7-NEXT: ^ 5736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 5836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines .type nocrypto,%function 5936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hinesnocrypto: 6036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines vmull.p64 q0, d0, d1 6136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 6236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V8: error: instruction requires: crypto 6336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 6436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines aesd.8 q0, q1 6536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 6636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V8: error: instruction requires: crypto 6736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines aese.8 q0, q1 6836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 6936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V8: error: instruction requires: crypto 7036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines aesimc.8 q0, q1 7136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 7236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V8: error: instruction requires: crypto 7336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines aesmc.8 q0, q1 7436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 7536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V8: error: instruction requires: crypto 7636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 7736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha1h.32 q0, q1 7836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 7936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V8: error: instruction requires: crypto 8036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha1su1.32 q0, q1 8136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 8236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V8: error: instruction requires: crypto 8336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha256su0.32 q0, q1 8436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 8536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V8: error: instruction requires: crypto 8636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 8736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha1c.32 q0, q1, q2 8836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 8936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V8: error: instruction requires: crypto 9036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha1m.32 q0, q1, q2 9136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 9236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V8: error: instruction requires: crypto 9336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha1p.32 q0, q1, q2 9436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 9536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V8: error: instruction requires: crypto 9636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha1su0.32 q0, q1, q2 9736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 9836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V8: error: instruction requires: crypto 9936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha256h.32 q0, q1, q2 10036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 10136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V8: error: instruction requires: crypto 10236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha256h2.32 q0, q1, q2 10336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 10436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V8: error: instruction requires: crypto 10536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines sha256su1.32 q0, q1, q2 10636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V7: error: instruction requires: crypto armv8 10736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-V8: error: instruction requires: crypto 10836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 109