brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.9 KiB · fbf2321 Raw
54 lines · plain
1// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sve-aes2,+sve2p1 < %s \2// RUN:        | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST3// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sve-aes2,+ssve-aes < %s \4// RUN:        | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST5// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \6// RUN:        | FileCheck %s --check-prefix=CHECK-ERROR7// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sve-aes2,+sve2p1 < %s \8// RUN:        | llvm-objdump -d --mattr=+sve-aes2,+sve2p1 --no-print-imm-hex - | FileCheck %s --check-prefix=CHECK-INST9// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sve-aes2,+sve2p1 < %s \10// RUN:        | llvm-objdump -d --mattr=-sme2 --no-print-imm-hex - | FileCheck %s --check-prefix=CHECK-UNKNOWN11// Disassemble encoding and check the re-encoding (-show-encoding) matches.12// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sve-aes2,+sve2p1 < %s \13// RUN:        | sed '/.text/d' | sed 's/.*encoding: //g' \14// RUN:        | llvm-mc -triple=aarch64 -mattr=+sve-aes2,+sve2p1 -disassemble -show-encoding \15// RUN:        | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST16 17// x218aesd    {z0.b-z1.b}, {z0.b-z1.b}, z0.q[0]  // 01000101-00100010-11101100-0000000019// CHECK-INST: aesd    { z0.b, z1.b }, { z0.b, z1.b }, z0.q[0]20// CHECK-ENCODING: [0x00,0xec,0x22,0x45]21// CHECK-ERROR: instruction requires: sve or ssve-aes sve-aes222// CHECK-UNKNOWN: 4522ec00 <unknown>23 24aesd    {z20.b-z21.b}, {z20.b-z21.b}, z10.q[2]  // 01000101-00110010-11101101-0101010025// CHECK-INST: aesd    { z20.b, z21.b }, { z20.b, z21.b }, z10.q[2]26// CHECK-ENCODING: [0x54,0xed,0x32,0x45]27// CHECK-ERROR: instruction requires: sve or ssve-aes sve-aes228// CHECK-UNKNOWN: 4532ed54 <unknown>29 30aesd    {z30.b-z31.b}, {z30.b-z31.b}, z31.q[3]  // 01000101-00111010-11101111-1111111031// CHECK-INST: aesd    { z30.b, z31.b }, { z30.b, z31.b }, z31.q[3]32// CHECK-ENCODING: [0xfe,0xef,0x3a,0x45]33// CHECK-ERROR: instruction requires: sve or ssve-aes sve-aes234// CHECK-UNKNOWN: 453aeffe <unknown>35 36// x437aesd    {z0.b-z3.b}, {z0.b-z3.b}, z0.q[0]  // 01000101-00100110-11101100-0000000038// CHECK-INST: aesd    { z0.b - z3.b }, { z0.b - z3.b }, z0.q[0]39// CHECK-ENCODING: [0x00,0xec,0x26,0x45]40// CHECK-ERROR: instruction requires: sve or ssve-aes sve-aes241// CHECK-UNKNOWN: 4526ec00 <unknown>42 43aesd    {z20.b-z23.b}, {z20.b-z23.b}, z13.q[1]  // 01000101-00101110-11101101-1011010044// CHECK-INST: aesd    { z20.b - z23.b }, { z20.b - z23.b }, z13.q[1]45// CHECK-ENCODING: [0xb4,0xed,0x2e,0x45]46// CHECK-ERROR: instruction requires: sve or ssve-aes sve-aes247// CHECK-UNKNOWN: 452eedb4 <unknown>48 49aesd    {z28.b-z31.b}, {z28.b-z31.b}, z31.q[3]  // 01000101-00111110-11101111-1111110050// CHECK-INST: aesd    { z28.b - z31.b }, { z28.b - z31.b }, z31.q[3]51// CHECK-ENCODING: [0xfc,0xef,0x3e,0x45]52// CHECK-ERROR: instruction requires: sve or ssve-aes sve-aes253// CHECK-UNKNOWN: 453eeffc <unknown>54