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