BCHARMTypesPrincipal type definitions for bchlibarm32.
Change processor status
type register_shift_rotate_t = | ARMImmSRT of shift_rotate_type_t * int| ARMRegSRT of shift_rotate_type_t * BCHLibTypes.arm_reg_ttype arm_memory_offset_t = | ARMImmOffset of int| ARMIndexOffset of BCHLibTypes.arm_reg_t * int| ARMShiftedIndexOffset of BCHLibTypes.arm_reg_t * register_shift_rotate_t * inttype arm_simd_writeback_t = | SIMDNoWriteback| SIMDBytesTransferred of int| SIMDAddressOffsetRegister of BCHLibTypes.arm_reg_ttype arm_simd_list_element_t = | SIMDReg of BCHLibTypes.arm_extension_register_t| SIMDRegElement of BCHLibTypes.arm_extension_register_element_t| SIMDRegRepElement of BCHLibTypes.arm_extension_register_replicated_element_ttype arm_operand_kind_t = | ARMDMBOption of dmb_option_t| ARMCPSEffect of cps_effect_t| ARMInterruptFlags of interrupt_flags_t| ARMReg of BCHLibTypes.arm_reg_t| ARMDoubleReg of BCHLibTypes.arm_reg_t * BCHLibTypes.arm_reg_t| ARMWritebackReg of bool * BCHLibTypes.arm_reg_t * int option| ARMSpecialReg of BCHLibTypes.arm_special_reg_t| ARMExtensionReg of BCHLibTypes.arm_extension_register_t| ARMDoubleExtensionReg of BCHLibTypes.arm_extension_register_t
* BCHLibTypes.arm_extension_register_t| ARMExtensionRegElement of BCHLibTypes.arm_extension_register_element_t| ARMRegList of BCHLibTypes.arm_reg_t list| ARMExtensionRegList of BCHLibTypes.arm_extension_register_t list| ARMShiftedReg of BCHLibTypes.arm_reg_t * register_shift_rotate_t| ARMRegBitSequence of BCHLibTypes.arm_reg_t * int * int| ARMImmediate of BCHLibTypes.immediate_int| ARMFPConstant of float| ARMAbsolute of BCHLibTypes.doubleword_int| ARMLiteralAddress of BCHLibTypes.doubleword_int| ARMMemMultiple of BCHLibTypes.arm_reg_t * int * int * int| ARMOffsetAddress of BCHLibTypes.arm_reg_t
* int
* arm_memory_offset_t
* bool
* bool
* bool
* int| ARMSIMDAddress of BCHLibTypes.arm_reg_t * int * arm_simd_writeback_t| ARMSIMDList of arm_simd_list_element_t listclass type arm_operand_int = object ... endtype arm_opcode_encoding_t = {opc_encoding : arm_opc_encoding_type_t;opc_encoding_group : string option;}type arm_opcode_t = | Add of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| AddCarry of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| Adr of arm_opcode_cc_t * arm_operand_int * arm_operand_int| AESInverseMixColumns of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int| AESMixColumns of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int| AESSingleRoundDecryption of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int| AESSingleRoundEncryption of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int| ArithmeticShiftRight of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| BitFieldClear of arm_opcode_cc_t * arm_operand_int * int * int * int| BitFieldInsert of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* int
* int
* int| BitwiseAnd of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| BitwiseBitClear of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| BitwiseExclusiveOr of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| BitwiseNot of bool * arm_opcode_cc_t * arm_operand_int * arm_operand_int * bool| BitwiseOr of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| BitwiseOrNot of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| Branch of arm_opcode_cc_t * arm_operand_int * bool| BranchExchange of arm_opcode_cc_t * arm_operand_int| BranchLink of arm_opcode_cc_t * arm_operand_int| BranchLinkExchange of arm_opcode_cc_t * arm_operand_int| Breakpoint of arm_operand_int| ByteReverseWord of arm_opcode_cc_t * arm_operand_int * arm_operand_int * bool| ByteReversePackedHalfword of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* bool| ChangeProcessorState of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* int option
* bool| Compare of arm_opcode_cc_t * arm_operand_int * arm_operand_int * bool| CompareBranchNonzero of arm_operand_int * arm_operand_int| CompareBranchZero of arm_operand_int * arm_operand_int| CompareNegative of arm_opcode_cc_t * arm_operand_int * arm_operand_int| CountLeadingZeros of arm_opcode_cc_t * arm_operand_int * arm_operand_int| DataMemoryBarrier of arm_opcode_cc_t * arm_operand_int| FLoadMultipleIncrementAfter of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| FStoreMultipleIncrementAfter of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| IfThen of arm_opcode_cc_t * string| LoadCoprocessor of bool
* bool
* arm_opcode_cc_t
* int
* int
* arm_operand_int
* int option| LoadMultipleDecrementAfter of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| LoadMultipleDecrementBefore of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| LoadMultipleIncrementAfter of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| LoadMultipleIncrementBefore of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| LoadRegister of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| LoadRegisterByte of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| LoadRegisterDual of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| LoadRegisterExclusive of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| LoadRegisterHalfword of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| LoadRegisterSignedByte of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| LoadRegisterSignedHalfword of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| LogicalShiftLeft of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| LogicalShiftRight of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| Move of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* bool
* bool| MoveFromSpecialRegister of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* bool| MoveRegisterCoprocessor of arm_opcode_cc_t
* int
* int
* arm_operand_int
* int
* int
* int| MoveToCoprocessor of arm_opcode_cc_t
* int
* int
* arm_operand_int
* int
* int
* int| MoveTop of arm_opcode_cc_t * arm_operand_int * arm_operand_int| MoveToSpecialRegister of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* bool| MoveTwoRegisterCoprocessor of arm_opcode_cc_t
* int
* int
* arm_operand_int
* arm_operand_int
* int| Multiply of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| MultiplyAccumulate of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| MultiplySubtract of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| Pop of arm_opcode_cc_t * arm_operand_int * arm_operand_int * bool| PreloadData of bool * arm_opcode_cc_t * arm_operand_int * arm_operand_int| Push of arm_opcode_cc_t * arm_operand_int * arm_operand_int * bool| ReverseBits of arm_opcode_cc_t * arm_operand_int * arm_operand_int| ReverseSubtract of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| ReverseSubtractCarry of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| RotateRight of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| RotateRightExtend of bool * arm_opcode_cc_t * arm_operand_int * arm_operand_int| SaturatingAdd of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| SaturatingDoubleAdd of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| SaturatingDoubleSubtract of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| SaturatingSubtract of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| SelectBytes of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| SHA1FixedRotate of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int| SHA1HashUpdateChoose of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| SHA1HashUpdateMajority of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| SHA1HashUpdateParity of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| SHA1ScheduleUpdate0 of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| SHA1ScheduleUpdate1 of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int| SHA256HashUpdatePart1 of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| SHA256HashUpdatePart2 of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| SHA256ScheduleUpdate0 of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int| SHA256ScheduleUpdate1 of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| SignedBitFieldExtract of arm_opcode_cc_t * arm_operand_int * arm_operand_int| SignedDivide of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| SignedExtendByte of arm_opcode_cc_t * arm_operand_int * arm_operand_int * bool| SignedExtendHalfword of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* bool| SignedMostSignificantWordMultiply of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* int| SignedMostSignificantWordMultiplyAccumulate of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int
* int| SignedMultiplyAccumulateBB of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| SignedMultiplyAccumulateBT of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| SignedMultiplyAccumulateTB of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| SignedMultiplyAccumulateTT of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| SignedMultiplyAccumulateLong of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| SignedMultiplyAccumulateWordB of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| SignedMultiplyAccumulateWordT of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| SignedMultiplyHalfwordsBB of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| SignedMultiplyHalfwordsBT of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| SignedMultiplyHalfwordsTB of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| SignedMultiplyHalfwordsTT of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| SignedMultiplyLong of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| SignedMultiplyWordB of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| SignedMultiplyWordT of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| StoreCoprocessor of bool
* bool
* arm_opcode_cc_t
* int
* int
* arm_operand_int
* int option| StoreMultipleDecrementAfter of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| StoreMultipleDecrementBefore of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| StoreMultipleIncrementAfter of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| StoreMultipleIncrementBefore of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| StoreRegister of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| StoreRegisterByte of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| StoreRegisterDual of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| StoreRegisterExclusive of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| StoreRegisterHalfword of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| Subtract of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool
* bool| SubtractCarry of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* bool| Swap of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| SwapByte of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| TableBranchByte of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| TableBranchHalfword of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| Test of arm_opcode_cc_t * arm_operand_int * arm_operand_int * bool| TestEquivalence of arm_opcode_cc_t * arm_operand_int * arm_operand_int| UnsignedAdd8 of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| UnsignedBitFieldExtract of arm_opcode_cc_t * arm_operand_int * arm_operand_int| UnsignedDivide of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| UnsignedExtendAddByte of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| UnsignedExtendAddHalfword of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| UnsignedExtendByte of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* bool| UnsignedExtendHalfword of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* bool| UnsignedMultiplyAccumulateLong of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| UnsignedMultiplyLong of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| UnsignedSaturate of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| UnsignedSaturatingSubtract8 of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorAbsolute of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int| VectorAdd of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorAddLong of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorAddWide of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorBitwiseAnd of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorBitwiseBitClear of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorBitwiseExclusiveOr of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorBitwiseNot of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int| VectorBitwiseOr of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorBitwiseOrNot of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorBitwiseSelect of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VCompare of bool
* arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorConvert of bool
* bool
* arm_opcode_cc_t
* vfp_datatype_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VDivide of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorDuplicate of arm_opcode_cc_t
* vfp_datatype_t
* int
* int
* arm_operand_int
* arm_operand_int| VectorExtract of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorFusedMultiplyAccumulate of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorLoadMultipleIncrementAfter of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorLoadOne of bool
* arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorLoadFour of bool
* arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| VLoadRegister of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorMoveDS of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int| VectorMoveDDSS of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorMoveDSS of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorMoveDDS of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorMoveLong of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int| VectorMoveNarrow of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int| VMoveRegisterStatus of arm_opcode_cc_t * arm_operand_int * arm_operand_int| VMoveToSystemRegister of arm_opcode_cc_t * arm_operand_int * arm_operand_int| VectorMultiply of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorMultiplyAccumulate of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorMultiplyAccumulateLong of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorMultiplyLong of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorMultiplySubtract of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorNegate of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int| VectorNegateMultiply of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorNegateMultiplyAccumulate of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorNegateMultiplySubtract of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorPop of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorPush of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorReverseDoublewords of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int| VectorReverseHalfwords of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int| VectorReverseWords of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int| VectorRoundingHalvingAdd of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorRoundingShiftRightAccumulate of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorShiftLeft of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorShiftLeftInsert of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorShiftRight of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorShiftRightInsert of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorShiftRightAccumulate of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorShiftRightNarrow of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VStoreRegister of arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorStoreMultipleDecrementBefore of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorStoreMultipleIncrementAfter of bool
* arm_opcode_cc_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorStoreOne of bool
* arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorStoreTwo of bool
* arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorStoreFour of bool
* arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorSubtract of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorTableLookup of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int
* arm_operand_int| VectorTranspose of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int| VectorZip of arm_opcode_cc_t
* vfp_datatype_t
* arm_operand_int
* arm_operand_int| SupervisorCall of arm_opcode_cc_t * arm_operand_int| OpInvalid| PermanentlyUndefined of arm_opcode_cc_t * arm_operand_int| NoOperation of arm_opcode_cc_t| NotRecognized of string * BCHLibTypes.doubleword_int| OpcodeUndefined of string| OpcodeUnpredictable of string| NotCode of not_code_t optionclass type arm_dictionary_int = object ... endclass type arm_assembly_instruction_int = object ... endAn instruction aggregate is a (usually, but not always, contiguous) sequence of two or more instructions that is treate as a single semantic unit. The semantics for the entire sequence is assigned to one of the instructions (often the last one in the sequence) and all other instructions are considere no-ops by all subsequent analyses.
Instruction aggregates cover a variety of constructs ranging from predicate and ternary assignments to jump tables.
A more detailed description is provided in bCHARMInstructionAggregate.
type arm_assembly_instruction_result =
arm_assembly_instruction_int CHTraceResult.traceresulttype thumb_it_sequence_kind_t = | ITPredicateAssignment of bool * arm_operand_intin inverse, dstop, inverse indicates whether the predicate itself or its inverse is to be assigned; dstop is the destination operand for the predicate assignment.
The destination operand dstop is assumed to be a register.
class type thumb_it_sequence_int = object ... endclass type arm_jumptable_int = object ... endclass type ldm_stm_sequence_int = object ... endtype arm_aggregate_kind_t = | ARMJumptable of arm_jumptable_int| ThumbITSequence of thumb_it_sequence_int| LDMSTMSequence of ldm_stm_sequence_int| PseudoLDRSH of arm_assembly_instruction_int
* arm_assembly_instruction_int
* arm_assembly_instruction_int| PseudoLDRSB of arm_assembly_instruction_int
* arm_assembly_instruction_int
* arm_assembly_instruction_int| ARMPredicateAssignment of bool * arm_operand_int| ARMTernaryAssignment of arm_operand_int
* CHNumerical.numerical_t
* CHNumerical.numerical_t| BXCall of arm_assembly_instruction_int * arm_assembly_instruction_intclass type arm_instruction_aggregate_int = object ... endRepresents the number of callsites that, resp., support, contradict, and are neutral about on the predicate.
class type arm_callsite_record_int = object ... endclass type arm_callsites_record_int = object ... endclass type arm_callsites_records_int = object ... endclass type arm_assembly_instructions_int = object ... endclass type arm_assembly_block_int = object ... endclass type arm_assembly_function_int = object ... endclass type arm_assembly_functions_int = object ... endclass type arm_code_pc_int = object ... endclass type arm_chif_system_int = object ... endclass type arm_opcode_dictionary_int = object ... endclass type arm_fn_type_constraints_int = object ... endclass type arm_analysis_results_int = object ... endclass type testsupport_int = object ... endSupport for servicing data to unit tests.