|
LLVM 23.0.0git
|
AArch64_AM - AArch64 Addressing Mode Stuff. More...
Enumerations | |
| enum | ShiftExtendType { InvalidShiftExtend = -1 , LSL = 0 , LSR , ASR , ROR , MSL , UXTB , UXTH , UXTW , UXTX , SXTB , SXTH , SXTW , SXTX } |
Functions | |
| static bool | isSignExtendShiftType (AArch64_AM::ShiftExtendType Type) |
isSignExtendShiftType - Returns true if Type is sign extending. | |
| static const char * | getShiftExtendName (AArch64_AM::ShiftExtendType ST) |
| getShiftName - Get the string encoding for the shift type. | |
| static AArch64_AM::ShiftExtendType | getShiftType (unsigned Imm) |
| getShiftType - Extract the shift type. | |
| static unsigned | getShiftValue (unsigned Imm) |
| getShiftValue - Extract the shift value. | |
| static unsigned | getShifterImm (AArch64_AM::ShiftExtendType ST, unsigned Imm) |
| getShifterImm - Encode the shift type and amount: imm: 6-bit shift amount shifter: 000 ==> lsl 001 ==> lsr 010 ==> asr 011 ==> ror 100 ==> msl {8-6} = shifter {5-0} = imm | |
| static unsigned | getArithShiftValue (unsigned Imm) |
| getArithShiftValue - get the arithmetic shift value. | |
| static AArch64_AM::ShiftExtendType | getExtendType (unsigned Imm) |
| getExtendType - Extract the extend type for operands of arithmetic ops. | |
| static AArch64_AM::ShiftExtendType | getArithExtendType (unsigned Imm) |
| unsigned | getExtendEncoding (AArch64_AM::ShiftExtendType ET) |
| Mapping from extend bits to required operation: shifter: 000 ==> uxtb 001 ==> uxth 010 ==> uxtw 011 ==> uxtx 100 ==> sxtb 101 ==> sxth 110 ==> sxtw 111 ==> sxtx. | |
| static unsigned | getArithExtendImm (AArch64_AM::ShiftExtendType ET, unsigned Imm) |
| getArithExtendImm - Encode the extend type and shift amount for an arithmetic instruction: imm: 3-bit extend amount {5-3} = shifter {2-0} = imm3 | |
| static bool | getMemDoShift (unsigned Imm) |
| getMemDoShift - Extract the "do shift" flag value for load/store instructions. | |
| static AArch64_AM::ShiftExtendType | getMemExtendType (unsigned Imm) |
| getExtendType - Extract the extend type for the offset operand of loads/stores. | |
| static unsigned | getMemExtendImm (AArch64_AM::ShiftExtendType ET, bool DoShift) |
| getExtendImm - Encode the extend type and amount for a load/store inst: doshift: should the offset be scaled by the access size shifter: 000 ==> uxtb 001 ==> uxth 010 ==> uxtw 011 ==> uxtx 100 ==> sxtb 101 ==> sxth 110 ==> sxtw 111 ==> sxtx {3-1} = shifter {0} = doshift | |
| static uint64_t | ror (uint64_t elt, unsigned size) |
| static bool | processLogicalImmediate (uint64_t Imm, unsigned RegSize, uint64_t &Encoding) |
| processLogicalImmediate - Determine if an immediate value can be encoded as the immediate operand of a logical instruction for the given register size. | |
| static bool | isLogicalImmediate (uint64_t imm, unsigned regSize) |
| isLogicalImmediate - Return true if the immediate is valid for a logical immediate instruction of the given register size. | |
| static uint64_t | encodeLogicalImmediate (uint64_t imm, unsigned regSize) |
| encodeLogicalImmediate - Return the encoded immediate value for a logical immediate instruction of the given register size. | |
| static uint64_t | decodeLogicalImmediate (uint64_t val, unsigned regSize) |
| decodeLogicalImmediate - Decode a logical immediate value in the form "N:immr:imms" (where the immr and imms fields are each 6 bits) into the integer value it represents with regSize bits. | |
| static bool | isValidDecodeLogicalImmediate (uint64_t val, unsigned regSize) |
| isValidDecodeLogicalImmediate - Check to see if the logical immediate value in the form "N:immr:imms" (where the immr and imms fields are each 6 bits) is a valid encoding for an integer value with regSize bits. | |
| constexpr bool | isLegalArithImmed (const uint64_t C) |
| isLegalArithImmed - | |
| constexpr unsigned | getArithImmedShift (const uint64_t C) |
getArithImmedShift - assumes C is a legal immediate for arithmetic instructions and | |
| static bool | isLegalCmpImmed (const APInt &C) |
| isLegalCmpImmed - | |
| static float | getFPImmFloat (unsigned Imm) |
| static int | getFP16Imm (const APInt &Imm) |
| getFP16Imm - Return an 8-bit floating-point version of the 16-bit floating-point value. | |
| static int | getFP16Imm (const APFloat &FPImm) |
| static int | getFP32Imm (const APInt &Imm) |
| getFP32Imm - Return an 8-bit floating-point version of the 32-bit floating-point value. | |
| static int | getFP32Imm (const APFloat &FPImm) |
| static int | getFP64Imm (const APInt &Imm) |
| getFP64Imm - Return an 8-bit floating-point version of the 64-bit floating-point value. | |
| static int | getFP64Imm (const APFloat &FPImm) |
| static bool | isAdvSIMDModImmType1 (uint64_t Imm) |
| static uint8_t | encodeAdvSIMDModImmType1 (uint64_t Imm) |
| static uint64_t | decodeAdvSIMDModImmType1 (uint8_t Imm) |
| static bool | isAdvSIMDModImmType2 (uint64_t Imm) |
| static uint8_t | encodeAdvSIMDModImmType2 (uint64_t Imm) |
| static uint64_t | decodeAdvSIMDModImmType2 (uint8_t Imm) |
| static bool | isAdvSIMDModImmType3 (uint64_t Imm) |
| static uint8_t | encodeAdvSIMDModImmType3 (uint64_t Imm) |
| static uint64_t | decodeAdvSIMDModImmType3 (uint8_t Imm) |
| static bool | isAdvSIMDModImmType4 (uint64_t Imm) |
| static uint8_t | encodeAdvSIMDModImmType4 (uint64_t Imm) |
| static uint64_t | decodeAdvSIMDModImmType4 (uint8_t Imm) |
| static bool | isAdvSIMDModImmType5 (uint64_t Imm) |
| static uint8_t | encodeAdvSIMDModImmType5 (uint64_t Imm) |
| static uint64_t | decodeAdvSIMDModImmType5 (uint8_t Imm) |
| static bool | isAdvSIMDModImmType6 (uint64_t Imm) |
| static uint8_t | encodeAdvSIMDModImmType6 (uint64_t Imm) |
| static uint64_t | decodeAdvSIMDModImmType6 (uint8_t Imm) |
| static bool | isAdvSIMDModImmType7 (uint64_t Imm) |
| static uint8_t | encodeAdvSIMDModImmType7 (uint64_t Imm) |
| static uint64_t | decodeAdvSIMDModImmType7 (uint8_t Imm) |
| static bool | isAdvSIMDModImmType8 (uint64_t Imm) |
| static uint64_t | decodeAdvSIMDModImmType8 (uint8_t Imm) |
| static uint8_t | encodeAdvSIMDModImmType8 (uint64_t Imm) |
| static bool | isAdvSIMDModImmType9 (uint64_t Imm) |
| static uint8_t | encodeAdvSIMDModImmType9 (uint64_t Imm) |
| static uint64_t | decodeAdvSIMDModImmType9 (uint8_t Imm) |
| static bool | isAdvSIMDModImmType10 (uint64_t Imm) |
| static uint8_t | encodeAdvSIMDModImmType10 (uint64_t Imm) |
| static uint64_t | decodeAdvSIMDModImmType10 (uint8_t Imm) |
| static bool | isAdvSIMDModImmType11 (uint64_t Imm) |
| static uint8_t | encodeAdvSIMDModImmType11 (uint64_t Imm) |
| static uint64_t | decodeAdvSIMDModImmType11 (uint8_t Imm) |
| static bool | isAdvSIMDModImmType12 (uint64_t Imm) |
| static uint8_t | encodeAdvSIMDModImmType12 (uint64_t Imm) |
| static uint64_t | decodeAdvSIMDModImmType12 (uint8_t Imm) |
| template<typename T> | |
| static bool | isSVEMaskOfIdenticalElements (int64_t Imm) |
| Returns true if Imm is the concatenation of a repeating pattern of type T. | |
| template<typename T> | |
| static bool | isSVECpyImm (int64_t Imm) |
| Returns true if Imm is valid for CPY/DUP. | |
| template<typename T> | |
| static bool | isSVEAddSubImm (int64_t Imm) |
| Returns true if Imm is valid for ADD/SUB. | |
| static bool | isSVEMoveMaskPreferredLogicalImmediate (int64_t Imm) |
| Return true if Imm is valid for DUPM and has no single CPY/DUP equivalent. | |
| static bool | isAnyMOVZMovAlias (uint64_t Value, int RegWidth) |
| static bool | isMOVZMovAlias (uint64_t Value, int Shift, int RegWidth) |
| static bool | isMOVNMovAlias (uint64_t Value, int Shift, int RegWidth) |
| static bool | isAnyMOVWMovAlias (uint64_t Value, int RegWidth) |
| static bool | isSVECpyDupImm (int SizeInBits, int64_t Val, int32_t &Imm, int32_t &Shift) |
| static bool | isSVELogicalImm (unsigned SizeInBits, uint64_t ImmVal, uint64_t &Encoding) |
AArch64_AM - AArch64 Addressing Mode Stuff.
| Enumerator | |
|---|---|
| InvalidShiftExtend | |
| LSL | |
| LSR | |
| ASR | |
| ROR | |
| MSL | |
| UXTB | |
| UXTH | |
| UXTW | |
| UXTX | |
| SXTB | |
| SXTH | |
| SXTW | |
| SXTX | |
Definition at line 32 of file AArch64AddressingModes.h.
Definition at line 495 of file AArch64AddressingModes.h.
Definition at line 698 of file AArch64AddressingModes.h.
Referenced by llvm::AArch64TargetLowering::computeKnownBitsForTargetNode(), DecodeNEONSplat(), and llvm::AArch64InstPrinter::printSIMDType10Operand().
Definition at line 747 of file AArch64AddressingModes.h.
Referenced by DecodeFMOVImm().
Definition at line 796 of file AArch64AddressingModes.h.
Referenced by DecodeFMOVImm().
Definition at line 510 of file AArch64AddressingModes.h.
Definition at line 525 of file AArch64AddressingModes.h.
Definition at line 540 of file AArch64AddressingModes.h.
Definition at line 556 of file AArch64AddressingModes.h.
Definition at line 572 of file AArch64AddressingModes.h.
Definition at line 587 of file AArch64AddressingModes.h.
Definition at line 598 of file AArch64AddressingModes.h.
Definition at line 618 of file AArch64AddressingModes.h.
decodeLogicalImmediate - Decode a logical immediate value in the form "N:immr:imms" (where the immr and imms fields are each 6 bits) into the integer value it represents with regSize bits.
Definition at line 306 of file AArch64AddressingModes.h.
References assert(), llvm::countl_zero(), N, ror(), and llvm::size().
Referenced by llvm::AArch64InstrInfo::analyzeCompare(), getUsefulBitsFromAndWithImmediate(), llvm::AArch64InstrInfo::optimizeCondBranch(), llvm::AArch64InstPrinter::printInst(), llvm::AArch64InstPrinter::printLogicalImm(), and llvm::AArch64InstPrinter::printSVELogicalImm().
Definition at line 491 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImm32().
Definition at line 670 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImm64().
Definition at line 719 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImmFP().
Definition at line 768 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImmFP().
Definition at line 506 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImm32().
Definition at line 521 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImm32().
Definition at line 536 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImm32().
Definition at line 552 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImm16().
Definition at line 568 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImm16().
Definition at line 583 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImm321s().
Definition at line 603 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImm321s().
Definition at line 614 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImm8().
encodeLogicalImmediate - Return the encoded immediate value for a logical immediate instruction of the given register size.
Definition at line 295 of file AArch64AddressingModes.h.
References assert(), and processLogicalImmediate().
Referenced by llvm::AArch64InstrInfo::insertSelect(), optimizeLogicalImm(), and splitDisjointBitmaskImm().
|
inlinestatic |
getArithExtendImm - Encode the extend type and shift amount for an arithmetic instruction: imm: 3-bit extend amount {5-3} = shifter {2-0} = imm3
Definition at line 183 of file AArch64AddressingModes.h.
References assert(), and getExtendEncoding().
Referenced by llvm::AArch64InstrInfo::insertSelect().
|
inlinestatic |
Definition at line 151 of file AArch64AddressingModes.h.
References getExtendType().
Referenced by llvm::AArch64InstrInfo::canFoldIntoAddrMode(), and llvm::AArch64InstPrinter::printArithExtend().
getArithImmedShift - assumes C is a legal immediate for arithmetic instructions and
Definition at line 361 of file AArch64AddressingModes.h.
References assert(), llvm::CallingConv::C, and isLegalArithImmed().
getArithShiftValue - get the arithmetic shift value.
Definition at line 131 of file AArch64AddressingModes.h.
Referenced by llvm::AArch64InstrInfo::canFoldIntoAddrMode(), and llvm::AArch64InstPrinter::printArithExtend().
|
inline |
Mapping from extend bits to required operation: shifter: 000 ==> uxtb 001 ==> uxth 010 ==> uxtw 011 ==> uxtx 100 ==> sxtb 101 ==> sxth 110 ==> sxtw 111 ==> sxtx.
Definition at line 164 of file AArch64AddressingModes.h.
References llvm_unreachable, SXTB, SXTH, SXTW, SXTX, UXTB, UXTH, UXTW, and UXTX.
Referenced by getArithExtendImm(), and getMemExtendImm().
|
inlinestatic |
getExtendType - Extract the extend type for operands of arithmetic ops.
Definition at line 136 of file AArch64AddressingModes.h.
References assert(), llvm_unreachable, SXTB, SXTH, SXTW, SXTX, UXTB, UXTH, UXTW, and UXTX.
Referenced by getArithExtendType(), getMemExtendType(), and llvm::AArch64InstrInfo::insertSelect().
Definition at line 421 of file AArch64AddressingModes.h.
References llvm::APFloat::bitcastToAPInt(), and getFP16Imm().
getFP16Imm - Return an 8-bit floating-point version of the 16-bit floating-point value.
If the value cannot be represented as an 8-bit floating-point value, then return -1.
Definition at line 402 of file AArch64AddressingModes.h.
Referenced by getFP16Imm(), and llvm::AArch64TargetLowering::isFPImmLegalAsFMov().
Definition at line 449 of file AArch64AddressingModes.h.
References llvm::APFloat::bitcastToAPInt(), and getFP32Imm().
getFP32Imm - Return an 8-bit floating-point version of the 32-bit floating-point value.
If the value cannot be represented as an 8-bit floating-point value, then return -1.
Definition at line 428 of file AArch64AddressingModes.h.
Referenced by getFP32Imm(), and llvm::AArch64TargetLowering::isFPImmLegalAsFMov().
Definition at line 477 of file AArch64AddressingModes.h.
References llvm::APFloat::bitcastToAPInt(), and getFP64Imm().
getFP64Imm - Return an 8-bit floating-point version of the 64-bit floating-point value.
If the value cannot be represented as an 8-bit floating-point value, then return -1.
Definition at line 456 of file AArch64AddressingModes.h.
Referenced by getFP64Imm(), and llvm::AArch64TargetLowering::isFPImmLegalAsFMov().
|
inlinestatic |
Definition at line 378 of file AArch64AddressingModes.h.
References llvm::bit_cast(), and I.
Referenced by llvm::AArch64InstPrinter::printFPImmOperand().
getMemDoShift - Extract the "do shift" flag value for load/store instructions.
Definition at line 191 of file AArch64AddressingModes.h.
|
inlinestatic |
getExtendImm - Encode the extend type and amount for a load/store inst: doshift: should the offset be scaled by the access size shifter: 000 ==> uxtb 001 ==> uxth 010 ==> uxtw 011 ==> uxtx 100 ==> sxtb 101 ==> sxth 110 ==> sxtw 111 ==> sxtx {3-1} = shifter {0} = doshift
Definition at line 213 of file AArch64AddressingModes.h.
References getExtendEncoding().
|
inlinestatic |
getExtendType - Extract the extend type for the offset operand of loads/stores.
Definition at line 197 of file AArch64AddressingModes.h.
References getExtendType().
|
inlinestatic |
getShifterImm - Encode the shift type and amount: imm: 6-bit shift amount shifter: 000 ==> lsl 001 ==> lsr 010 ==> asr 011 ==> ror 100 ==> msl {8-6} = shifter {5-0} = imm
Definition at line 111 of file AArch64AddressingModes.h.
References ASR, assert(), llvm_unreachable, LSL, LSR, MSL, and ROR.
Referenced by llvm::AArch64InstrInfo::copyPhysReg(), emitFrameOffsetAdj(), llvm::AArch64_IMM::expandMOVImm(), expandMOVImmSimple(), isWorthFoldingIntoOrrWithShift(), llvm::AArch64RegisterInfo::materializeFrameBaseRegister(), tryOrrWithShift(), trySequenceOfOnes(), and tryToreplicateChunks().
|
inlinestatic |
getShiftName - Get the string encoding for the shift type.
Definition at line 65 of file AArch64AddressingModes.h.
References ASR, llvm_unreachable, LSL, LSR, MSL, ROR, SXTB, SXTH, SXTW, SXTX, UXTB, UXTH, UXTW, and UXTX.
Referenced by llvm::AArch64InstPrinter::printArithExtend(), and llvm::AArch64InstPrinter::printShifter().
|
inlinestatic |
getShiftType - Extract the shift type.
Definition at line 86 of file AArch64AddressingModes.h.
References ASR, InvalidShiftExtend, LSL, LSR, MSL, and ROR.
Referenced by llvm::AArch64InstrInfo::canFoldIntoAddrMode(), getUsefulBitsFromOrWithShiftedReg(), llvm::AArch64InstPrinter::printImm8OptLsl(), and llvm::AArch64InstPrinter::printShifter().
getShiftValue - Extract the shift value.
Definition at line 98 of file AArch64AddressingModes.h.
Referenced by llvm::AArch64InstrInfo::canFoldIntoAddrMode(), llvm::AArch64TargetLowering::computeKnownBitsForTargetNode(), getUsefulBitsFromOrWithShiftedReg(), llvm::AArch64InstPrinter::printAddSubImm(), llvm::AArch64InstPrinter::printImm8OptLsl(), and llvm::AArch64InstPrinter::printShifter().
Definition at line 486 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImm32().
Definition at line 628 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImm64().
Definition at line 712 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImmFP().
Definition at line 762 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImmFP().
Definition at line 501 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImm32().
Definition at line 516 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImm32().
Definition at line 531 of file AArch64AddressingModes.h.
Referenced by preferGPRForFPImm(), and tryAdvSIMDModImm32().
Definition at line 546 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImm16().
Definition at line 562 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImm16().
Definition at line 578 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImm321s().
Definition at line 593 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImm321s().
Definition at line 608 of file AArch64AddressingModes.h.
Referenced by tryAdvSIMDModImm8().
Definition at line 897 of file AArch64AddressingModes.h.
References isAnyMOVZMovAlias().
Referenced by llvm::AArch64InstPrinter::printInst().
Definition at line 866 of file AArch64AddressingModes.h.
Referenced by isAnyMOVWMovAlias(), and isMOVNMovAlias().
isLegalArithImmed -
C is a legal immediate operand for an arithmetic instruction. Definition at line 355 of file AArch64AddressingModes.h.
References llvm::CallingConv::C.
Referenced by getAArch64Cmp(), getArithImmedShift(), llvm::AArch64TargetLowering::isLegalAddImmediate(), isLegalCmpImmed(), and performCONDCombine().
isLegalCmpImmed -
C is a legal immediate operand for a comparison instruction. Definition at line 369 of file AArch64AddressingModes.h.
References llvm::CallingConv::C, and isLegalArithImmed().
Referenced by getAArch64Cmp(), and performSubWithBorrowCombine().
isLogicalImmediate - Return true if the immediate is valid for a logical immediate instruction of the given register size.
Return false otherwise.
Definition at line 288 of file AArch64AddressingModes.h.
References processLogicalImmediate().
Referenced by llvm::AArch64TTIImpl::getIntImmCost(), if(), isSVEMoveMaskPreferredLogicalImmediate(), optimizeLogicalImm(), llvm::AArch64TargetLowering::shouldConvertConstantLoadToIntImm(), splitDisjointBitmaskImm(), and tryBitfieldInsertOpFromOrAndImm().
Definition at line 885 of file AArch64AddressingModes.h.
References isAnyMOVZMovAlias(), and isMOVZMovAlias().
Referenced by llvm::AArch64InstPrinter::printInst().
Definition at line 874 of file AArch64AddressingModes.h.
Referenced by isMOVNMovAlias(), and llvm::AArch64InstPrinter::printInst().
|
inlinestatic |
Returns true if Imm is valid for ADD/SUB.
Definition at line 842 of file AArch64AddressingModes.h.
|
inlinestatic |
Definition at line 909 of file AArch64AddressingModes.h.
Referenced by trySVESplat64().
Returns true if Imm is valid for CPY/DUP.
Definition at line 819 of file AArch64AddressingModes.h.
References llvm::max(), and T.
Referenced by isSVEMoveMaskPreferredLogicalImmediate().
|
inlinestatic |
Definition at line 939 of file AArch64AddressingModes.h.
References llvm_unreachable, and processLogicalImmediate().
Referenced by trySVESplat64().
|
inlinestatic |
Returns true if Imm is the concatenation of a repeating pattern of type T.
Definition at line 812 of file AArch64AddressingModes.h.
References llvm::all_equal(), llvm::bit_cast(), and T.
Referenced by isSVEMoveMaskPreferredLogicalImmediate().
|
inlinestatic |
Return true if Imm is valid for DUPM and has no single CPY/DUP equivalent.
Definition at line 849 of file AArch64AddressingModes.h.
References B(), llvm::bit_cast(), H, isLogicalImmediate(), isSVECpyImm(), and isSVEMaskOfIdenticalElements().
|
inlinestatic |
isValidDecodeLogicalImmediate - Check to see if the logical immediate value in the form "N:immr:imms" (where the immr and imms fields are each 6 bits) is a valid encoding for an integer value with regSize bits.
Definition at line 334 of file AArch64AddressingModes.h.
References llvm::countl_zero(), N, and llvm::size().
Referenced by DecodeLogicalImmInstruction(), and DecodeSVELogicalImmInstruction().
|
inlinestatic |
processLogicalImmediate - Determine if an immediate value can be encoded as the immediate operand of a logical instruction for the given register size.
If so, return true with "encoding" set to the encoded value in the form N:immr:imms.
Definition at line 226 of file AArch64AddressingModes.h.
References assert(), llvm::countl_one(), llvm::countr_one(), llvm::countr_zero(), I, llvm::isShiftedMask_64(), N, RegSize, and Size.
Referenced by canUseOrr(), encodeLogicalImmediate(), llvm::AArch64_IMM::expandMOVImm(), isLogicalImmediate(), isSVELogicalImm(), tryAndOfLogicalImmediates(), tryEorOfLogicalImmediates(), tryOrrOfLogicalImmediates(), and trySequenceOfOnes().
Definition at line 218 of file AArch64AddressingModes.h.
References llvm::size().
Referenced by decodeLogicalImmediate().