121 lines · plain
1// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+lsfe < %s \2// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST3// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \4// RUN: | FileCheck %s --check-prefix=CHECK-ERROR5// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+lsfe < %s \6// RUN: | llvm-objdump -d --mattr=+lsfe - | FileCheck %s --check-prefix=CHECK-INST7// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+lsfe < %s \8// RUN: | llvm-objdump -d --mattr=-lsfe - | FileCheck %s --check-prefix=CHECK-UNKNOWN9// Disassemble encoding and check the re-encoding (-show-encoding) matches.10// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+lsfe < %s \11// RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \12// RUN: | llvm-mc -triple=aarch64 -mattr=+lsfe -disassemble -show-encoding \13// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST14 15//------------------------------------------------------------------------------16// STFADD17//------------------------------------------------------------------------------18 19stfadd h0, [x2]20// CHECK-INST: stfadd h0, [x2]21// CHECK-ENCODING: [0x5f,0x80,0x20,0x7c]22// CHECK-ERROR: instruction requires: lsfe23// CHECK-UNKNOWN: 7c20805f <unknown>24 25stfadd h2, [sp]26// CHECK-INST: stfadd h2, [sp]27// CHECK-ENCODING: [0xff,0x83,0x22,0x7c]28// CHECK-ERROR: instruction requires: lsfe29// CHECK-UNKNOWN: 7c2283ff <unknown>30 31stfadd s0, [x2]32// CHECK-INST: stfadd s0, [x2]33// CHECK-ENCODING: [0x5f,0x80,0x20,0xbc]34// CHECK-ERROR: instruction requires: lsfe35// CHECK-UNKNOWN: bc20805f <unknown>36 37stfadd s2, [sp]38// CHECK-INST: stfadd s2, [sp]39// CHECK-ENCODING: [0xff,0x83,0x22,0xbc]40// CHECK-ERROR: instruction requires: lsfe41// CHECK-UNKNOWN: bc2283ff <unknown>42 43stfadd d0, [x2]44// CHECK-INST: stfadd d0, [x2]45// CHECK-ENCODING: [0x5f,0x80,0x20,0xfc]46// CHECK-ERROR: instruction requires: lsfe47// CHECK-UNKNOWN: fc20805f <unknown>48 49stfadd d2, [sp]50// CHECK-INST: stfadd d2, [sp]51// CHECK-ENCODING: [0xff,0x83,0x22,0xfc]52// CHECK-ERROR: instruction requires: lsfe53// CHECK-UNKNOWN: fc2283ff <unknown>54 55// -- stfaddl56 57stfaddl h0, [x2]58// CHECK-INST: stfaddl h0, [x2]59// CHECK-ENCODING: [0x5f,0x80,0x60,0x7c]60// CHECK-ERROR: instruction requires: lsfe61// CHECK-UNKNOWN: 7c60805f <unknown>62 63stfaddl h2, [sp]64// CHECK-INST: stfaddl h2, [sp]65// CHECK-ENCODING: [0xff,0x83,0x62,0x7c]66// CHECK-ERROR: instruction requires: lsfe67// CHECK-UNKNOWN: 7c6283ff <unknown>68 69stfaddl s0, [x2]70// CHECK-INST: stfaddl s0, [x2]71// CHECK-ENCODING: [0x5f,0x80,0x60,0xbc]72// CHECK-ERROR: instruction requires: lsfe73// CHECK-UNKNOWN: bc60805f <unknown>74 75stfaddl s2, [sp]76// CHECK-INST: stfaddl s2, [sp]77// CHECK-ENCODING: [0xff,0x83,0x62,0xbc]78// CHECK-ERROR: instruction requires: lsfe79// CHECK-UNKNOWN: bc6283ff <unknown>80 81stfaddl d0, [x2]82// CHECK-INST: stfaddl d0, [x2]83// CHECK-ENCODING: [0x5f,0x80,0x60,0xfc]84// CHECK-ERROR: instruction requires: lsfe85// CHECK-UNKNOWN: fc60805f <unknown>86 87stfaddl d2, [sp]88// CHECK-INST: stfaddl d2, [sp]89// CHECK-ENCODING: [0xff,0x83,0x62,0xfc]90// CHECK-ERROR: instruction requires: lsfe91// CHECK-UNKNOWN: fc6283ff <unknown>92 93//------------------------------------------------------------------------------94// STBFADD95//------------------------------------------------------------------------------96 97stbfadd h0, [x2]98// CHECK-INST: stbfadd h0, [x2]99// CHECK-ENCODING: [0x5f,0x80,0x20,0x3c]100// CHECK-ERROR: instruction requires: lsfe101// CHECK-UNKNOWN: 3c20805f <unknown>102 103stbfadd h2, [sp]104// CHECK-INST: stbfadd h2, [sp]105// CHECK-ENCODING: [0xff,0x83,0x22,0x3c]106// CHECK-ERROR: instruction requires: lsfe107// CHECK-UNKNOWN: 3c2283ff <unknown>108 109// -- stbfaddl110 111stbfaddl h0, [x2]112// CHECK-INST: stbfaddl h0, [x2]113// CHECK-ENCODING: [0x5f,0x80,0x60,0x3c]114// CHECK-ERROR: instruction requires: lsfe115// CHECK-UNKNOWN: 3c60805f <unknown>116 117stbfaddl h2, [sp]118// CHECK-INST: stbfaddl h2, [sp]119// CHECK-ENCODING: [0xff,0x83,0x62,0x3c]120// CHECK-ERROR: instruction requires: lsfe121// CHECK-UNKNOWN: 3c6283ff <unknown>