1 @ RUN: not llvm-mc -triple armv7-eabi -filetype asm -o /dev/null 2>&1 %s \ 2 @ RUN: | FileCheck %s -check-prefix CHECK-V7 3 @ RUN: not llvm-mc -triple armv8-eabi -filetype asm -o /dev/null 2>&1 %s \ 4 @ RUN: | FileCheck %s -check-prefix CHECK-V8 5 @ RUN: not llvm-mc -triple thumbv7-eabi -filetype asm -o /dev/null 2>&1 %s \ 6 @ RUN: | FileCheck %s -check-prefix CHECK-V7 7 @ RUN: not llvm-mc -triple thumbv8-eabi -filetype asm -o /dev/null 2>&1 %s \ 8 @ RUN: | FileCheck %s -check-prefix CHECK-V8 9 10 .syntax unified 11 12 .arch_extension crypto 13 @ CHECK-V7: error: architectural extension 'crypto' is not allowed for the current base architecture 14 @ CHECK-V7-NEXT: .arch_extension crypto 15 @ CHECK-V7-NEXT: ^ 16 17 .type crypto,%function 18 crypto: 19 vmull.p64 q0, d0, d1 20 @ CHECK-V7: error: instruction requires: crypto armv8 21 22 aesd.8 q0, q1 23 @ CHECK-V7: error: instruction requires: crypto armv8 24 aese.8 q0, q1 25 @ CHECK-V7: error: instruction requires: crypto armv8 26 aesimc.8 q0, q1 27 @ CHECK-V7: error: instruction requires: crypto armv8 28 aesmc.8 q0, q1 29 @ CHECK-V7: error: instruction requires: crypto armv8 30 31 sha1h.32 q0, q1 32 @ CHECK-V7: error: instruction requires: crypto armv8 33 sha1su1.32 q0, q1 34 @ CHECK-V7: error: instruction requires: crypto armv8 35 sha256su0.32 q0, q1 36 @ CHECK-V7: error: instruction requires: crypto armv8 37 38 sha1c.32 q0, q1, q2 39 @ CHECK-V7: error: instruction requires: crypto armv8 40 sha1m.32 q0, q1, q2 41 @ CHECK-V7: error: instruction requires: crypto armv8 42 sha1p.32 q0, q1, q2 43 @ CHECK-V7: error: instruction requires: crypto armv8 44 sha1su0.32 q0, q1, q2 45 @ CHECK-V7: error: instruction requires: crypto armv8 46 sha256h.32 q0, q1, q2 47 @ CHECK-V7: error: instruction requires: crypto armv8 48 sha256h2.32 q0, q1, q2 49 @ CHECK-V7: error: instruction requires: crypto armv8 50 sha256su1.32 q0, q1, q2 51 @ CHECK-V7: error: instruction requires: crypto armv8 52 53 .arch_extension nocrypto 54 @ CHECK-V7: error: architectural extension 'crypto' is not allowed for the current base architecture 55 @ CHECK-V7-NEXT: .arch_extension nocrypto 56 @ CHECK-V7-NEXT: ^ 57 58 .type nocrypto,%function 59 nocrypto: 60 vmull.p64 q0, d0, d1 61 @ CHECK-V7: error: instruction requires: crypto armv8 62 @ CHECK-V8: error: instruction requires: crypto 63 64 aesd.8 q0, q1 65 @ CHECK-V7: error: instruction requires: crypto armv8 66 @ CHECK-V8: error: instruction requires: crypto 67 aese.8 q0, q1 68 @ CHECK-V7: error: instruction requires: crypto armv8 69 @ CHECK-V8: error: instruction requires: crypto 70 aesimc.8 q0, q1 71 @ CHECK-V7: error: instruction requires: crypto armv8 72 @ CHECK-V8: error: instruction requires: crypto 73 aesmc.8 q0, q1 74 @ CHECK-V7: error: instruction requires: crypto armv8 75 @ CHECK-V8: error: instruction requires: crypto 76 77 sha1h.32 q0, q1 78 @ CHECK-V7: error: instruction requires: crypto armv8 79 @ CHECK-V8: error: instruction requires: crypto 80 sha1su1.32 q0, q1 81 @ CHECK-V7: error: instruction requires: crypto armv8 82 @ CHECK-V8: error: instruction requires: crypto 83 sha256su0.32 q0, q1 84 @ CHECK-V7: error: instruction requires: crypto armv8 85 @ CHECK-V8: error: instruction requires: crypto 86 87 sha1c.32 q0, q1, q2 88 @ CHECK-V7: error: instruction requires: crypto armv8 89 @ CHECK-V8: error: instruction requires: crypto 90 sha1m.32 q0, q1, q2 91 @ CHECK-V7: error: instruction requires: crypto armv8 92 @ CHECK-V8: error: instruction requires: crypto 93 sha1p.32 q0, q1, q2 94 @ CHECK-V7: error: instruction requires: crypto armv8 95 @ CHECK-V8: error: instruction requires: crypto 96 sha1su0.32 q0, q1, q2 97 @ CHECK-V7: error: instruction requires: crypto armv8 98 @ CHECK-V8: error: instruction requires: crypto 99 sha256h.32 q0, q1, q2 100 @ CHECK-V7: error: instruction requires: crypto armv8 101 @ CHECK-V8: error: instruction requires: crypto 102 sha256h2.32 q0, q1, q2 103 @ CHECK-V7: error: instruction requires: crypto armv8 104 @ CHECK-V8: error: instruction requires: crypto 105 sha256su1.32 q0, q1, q2 106 @ CHECK-V7: error: instruction requires: crypto armv8 107 @ CHECK-V8: error: instruction requires: crypto 108 109