arm64

package module
v0.6.19 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 14, 2024 License: MIT Imports: 9 Imported by: 0

README

go-arm64 [WIP] 🚧

Go PkgGoDev License

Pure Go AARCH64 architecture disassembler


Install

$ go get github.com/blacktop/go-arm64

Getting Started

package main

import (
	"bytes"
	"fmt"

	"github.com/blacktop/go-arm64"
	"github.com/blacktop/go-macho"
)

func main() {
	m, err := macho.Open("hello-mte")
	if err != nil {
		panic(err)
	}

	symAddr, err := m.FindSymbolAddress("_test")
	if err != nil {
		panic(err)
	}

	fn, err := m.GetFunctionForVMAddr(symAddr)
	if err != nil {
		panic(err)
	}

	data, err := m.GetFunctionData(fn)
	if err != nil {
		panic(err)
	}

	options := arm64.Options{
		StartAddress: int64(symAddr),
	}

	fmt.Println("_test:")
	for i := range arm64.Disassemble(bytes.NewReader(data), options) {
		fmt.Printf("%#08x:  %s\t%s\t%s\n",
			i.Instruction.Address(),
			i.Instruction.OpCodes(),
			i.Instruction.Operation(),
			i.Instruction.OpStr())
	}
}
_test:
0x100007e58:  7f 23 03 d5       pacibsp
0x100007e5c:  ff c3 02 d1       sub             sp, sp, #0xb0
0x100007e60:  fd 7b 0a a9       stp             x29, x30, [sp, #0xa0]
0x100007e64:  fd 83 02 91       add             x29, sp, #0xa0
0x100007e68:  08 00 00 b0       adrp            x8, #0x100008000
0x100007e6c:  08 09 40 f9       ldr             x8, [x8, #0x10]
0x100007e70:  08 01 40 f9       ldr             x8, [x8]
0x100007e74:  a8 83 1f f8       stur            x8, [x29, #-0x8]
0x100007e78:  08 00 80 d2       mov             x8, #0x0
0x100007e7c:  e8 13 c8 9a       irg             x8, sp, x8
0x100007e80:  08 01 81 91       addg            x8, x8, #0x10, #0x0
0x100007e84:  08 69 a0 d9       st2g            x8, [x8, #0x60]
0x100007e88:  08 49 a0 d9       st2g            x8, [x8, #0x40]
0x100007e8c:  08 29 a0 d9       st2g            x8, [x8, #0x20]
0x100007e90:  08 09 a0 d9       st2g            x8, [x8]
0x100007e94:  09 00 80 52       mov             w9, #0x0
0x100007e98:  09 01 04 39       strb            w9, [x8, #0x100]
0x100007e9c:  09 fd 43 39       ldrb            w9, [x8, #0xff]
0x100007ea0:  ff 7b a0 d9       st2g            sp, [sp, #0x70]
0x100007ea4:  ff 5b a0 d9       st2g            sp, [sp, #0x50]
0x100007ea8:  ff 3b a0 d9       st2g            sp, [sp, #0x30]
0x100007eac:  ff 1b a0 d9       st2g            sp, [sp, #0x10]
0x100007eb0:  08 00 00 b0       adrp            x8, #0x100008000
0x100007eb4:  08 09 40 f9       ldr             x8, [x8, #0x10]
0x100007eb8:  08 01 40 f9       ldr             x8, [x8]
0x100007ebc:  aa 83 5f f8       ldur            x10, [x29, #-0x8]
0x100007ec0:  08 01 0a eb       subs            x8, x8, x10
0x100007ec4:  e9 0f 00 b9       str             w9, [sp, #0xc]
0x100007ec8:  e1 00 00 54       b.ne            #0x100007ee4
0x100007ecc:  01 00 00 14       b               #0x100007ed0
0x100007ed0:  e8 0f 40 b9       ldr             w8, [sp, #0xc]
0x100007ed4:  00 1d 00 12       and             w0, w8, #0xff
0x100007ed8:  fd 7b 4a a9       ldp             x29, x30, [sp, #0xa0]
0x100007edc:  ff c3 02 91       add             sp, sp, #0xb0
0x100007ee0:  ff 0f 5f d6       retab           xzr
0x100007ee4:  2c 00 00 94       bl              #0x100007f94
0x100007ee8:  20 00 20 d4       brk             #0x1

TODO

  • fix 🐛🐛🐛
  • standize on error types
  • add option for dec/hex immediates
  • display opcodes like 7f 23 03 d5
  • benchmarks 🏃‍♂️💨

Credit

This is a complete Go re-write of Vector35/arch-arm64

License

MIT Copyright (c) 2020 blacktop

Documentation

Overview

Package arm64 implements disassembly of Aarch64 architecture binaries.

Index

Constants

View Source
const (
	REG_W_BASE  = 0
	REG_X_BASE  = 1
	REG_V_BASE  = 2
	REG_B_BASE  = 3
	REG_H_BASE  = 4
	REG_S_BASE  = 5
	REG_D_BASE  = 6
	REG_Q_BASE  = 7
	REG_PF_BASE = 8

	REGSET_SP = 0
	REGSET_ZR = 1
)
View Source
const MAX_OPERANDS = 5

Variables

This section is empty.

Functions

func DecodeBitMasks

func DecodeBitMasks(immN, imms, immr, outBits uint32) uint64

func Disassemble

func Disassemble(r io.ReadSeeker, options Options) <-chan Result

Disassemble will output the disassembly of the data of a given io.ReadSeeker

func ExtractBits

func ExtractBits(x uint32, start, nbits int32) uint32

func Instructions

func Instructions(r io.ReadSeeker, startAddr int64) (<-chan *Instruction, error)

Instructions will output the decoded instructions of the data of a given io.ReadSeeker

func MaskLSB32

func MaskLSB32(x uint32, nbits uint8) uint32

Types

type AddSubExtendedReg

type AddSubExtendedReg uint32

func (AddSubExtendedReg) Group1

func (i AddSubExtendedReg) Group1() uint32

func (AddSubExtendedReg) Group2

func (i AddSubExtendedReg) Group2() uint32

func (AddSubExtendedReg) Imm

func (i AddSubExtendedReg) Imm() uint32

func (AddSubExtendedReg) Op

func (i AddSubExtendedReg) Op() uint32

func (AddSubExtendedReg) Opt

func (i AddSubExtendedReg) Opt() uint32

func (AddSubExtendedReg) Option

func (i AddSubExtendedReg) Option() uint32

func (AddSubExtendedReg) Rd

func (i AddSubExtendedReg) Rd() uint32

func (AddSubExtendedReg) Rm

func (i AddSubExtendedReg) Rm() uint32

func (AddSubExtendedReg) Rn

func (i AddSubExtendedReg) Rn() uint32

func (AddSubExtendedReg) S

func (i AddSubExtendedReg) S() uint32

func (AddSubExtendedReg) Sf

func (i AddSubExtendedReg) Sf() uint32

type AddSubImm

type AddSubImm uint32

func (AddSubImm) Group1

func (i AddSubImm) Group1() uint32

func (AddSubImm) Imm

func (i AddSubImm) Imm() uint32

func (AddSubImm) Op

func (i AddSubImm) Op() uint32

func (AddSubImm) Rd

func (i AddSubImm) Rd() uint32

func (AddSubImm) Rn

func (i AddSubImm) Rn() uint32

func (AddSubImm) S

func (i AddSubImm) S() uint32

func (AddSubImm) Sf

func (i AddSubImm) Sf() uint32

func (AddSubImm) Shift

func (i AddSubImm) Shift() uint32

type AddSubImmTags

type AddSubImmTags uint32

func (AddSubImmTags) Op3

func (i AddSubImmTags) Op3() uint32

func (AddSubImmTags) Padding

func (i AddSubImmTags) Padding() uint32

func (AddSubImmTags) Uimm4

func (i AddSubImmTags) Uimm4() uint32

func (AddSubImmTags) Uimm6

func (i AddSubImmTags) Uimm6() uint32

func (AddSubImmTags) Xd

func (i AddSubImmTags) Xd() uint32

func (AddSubImmTags) Xn

func (i AddSubImmTags) Xn() uint32

type AddSubShiftedReg

type AddSubShiftedReg uint32

func (AddSubShiftedReg) Group1

func (i AddSubShiftedReg) Group1() uint32

func (AddSubShiftedReg) Group2

func (i AddSubShiftedReg) Group2() uint32

func (AddSubShiftedReg) Imm

func (i AddSubShiftedReg) Imm() uint32

func (AddSubShiftedReg) Op

func (i AddSubShiftedReg) Op() uint32

func (AddSubShiftedReg) Rd

func (i AddSubShiftedReg) Rd() uint32

func (AddSubShiftedReg) Rm

func (i AddSubShiftedReg) Rm() uint32

func (AddSubShiftedReg) Rn

func (i AddSubShiftedReg) Rn() uint32

func (AddSubShiftedReg) S

func (i AddSubShiftedReg) S() uint32

func (AddSubShiftedReg) Sf

func (i AddSubShiftedReg) Sf() uint32

func (AddSubShiftedReg) Shift

func (i AddSubShiftedReg) Shift() uint32

type AddSubWithCarry

type AddSubWithCarry uint32

func (AddSubWithCarry) Group1

func (i AddSubWithCarry) Group1() uint32

func (AddSubWithCarry) Op

func (i AddSubWithCarry) Op() uint32

func (AddSubWithCarry) Opcode2

func (i AddSubWithCarry) Opcode2() uint32

func (AddSubWithCarry) Rd

func (i AddSubWithCarry) Rd() uint32

func (AddSubWithCarry) Rm

func (i AddSubWithCarry) Rm() uint32

func (AddSubWithCarry) Rn

func (i AddSubWithCarry) Rn() uint32

func (AddSubWithCarry) S

func (i AddSubWithCarry) S() uint32

func (AddSubWithCarry) Sf

func (i AddSubWithCarry) Sf() uint32

type Bitfield

type Bitfield uint32

func (Bitfield) Group1

func (i Bitfield) Group1() uint32

func (Bitfield) Immr

func (i Bitfield) Immr() uint32

func (Bitfield) Imms

func (i Bitfield) Imms() uint32

func (Bitfield) N

func (i Bitfield) N() uint32

func (Bitfield) Opc

func (i Bitfield) Opc() uint32

func (Bitfield) Rd

func (i Bitfield) Rd() uint32

func (Bitfield) Rn

func (i Bitfield) Rn() uint32

func (Bitfield) Sf

func (i Bitfield) Sf() uint32

func (Bitfield) String

func (i Bitfield) String() string

type CompareBranchImm

type CompareBranchImm uint32

func (CompareBranchImm) Imm

func (i CompareBranchImm) Imm() int32

func (CompareBranchImm) Op

func (i CompareBranchImm) Op() uint32

func (CompareBranchImm) Opcode

func (i CompareBranchImm) Opcode() uint32

func (CompareBranchImm) Rt

func (i CompareBranchImm) Rt() uint32

func (CompareBranchImm) Sf

func (i CompareBranchImm) Sf() uint32

func (CompareBranchImm) String

func (i CompareBranchImm) String() string

type Condition

type Condition uint32
const (
	COND_EQ Condition = iota
	COND_NE
	COND_CS
	COND_CC
	COND_MI
	COND_PL
	COND_VS
	COND_VC
	COND_HI
	COND_LS
	COND_GE
	COND_LT
	COND_GT
	COND_LE
	COND_AL
	COND_NV
	END_CONDITION
)

func (Condition) String

func (c Condition) String() string

type ConditionalBranchImm

type ConditionalBranchImm uint32

func (ConditionalBranchImm) Cond

func (i ConditionalBranchImm) Cond() uint32

func (ConditionalBranchImm) Imm

func (i ConditionalBranchImm) Imm() int32

func (ConditionalBranchImm) O0

func (ConditionalBranchImm) O1

func (ConditionalBranchImm) Opcode

func (i ConditionalBranchImm) Opcode() uint32

func (ConditionalBranchImm) String

func (i ConditionalBranchImm) String() string

type ConditionalCompareImm

type ConditionalCompareImm uint32

func (ConditionalCompareImm) Cond

func (i ConditionalCompareImm) Cond() uint32

func (ConditionalCompareImm) Group1

func (i ConditionalCompareImm) Group1() uint32

func (ConditionalCompareImm) Group2

func (i ConditionalCompareImm) Group2() uint32

func (ConditionalCompareImm) Imm

func (i ConditionalCompareImm) Imm() uint32

func (ConditionalCompareImm) Nzcv

func (i ConditionalCompareImm) Nzcv() uint32

func (ConditionalCompareImm) O2

func (ConditionalCompareImm) O3

func (ConditionalCompareImm) Op

func (ConditionalCompareImm) Rn

func (ConditionalCompareImm) S

func (ConditionalCompareImm) Sf

type ConditionalCompareReg

type ConditionalCompareReg uint32

func (ConditionalCompareReg) Cond

func (i ConditionalCompareReg) Cond() uint32

func (ConditionalCompareReg) Group1

func (i ConditionalCompareReg) Group1() uint32

func (ConditionalCompareReg) Group2

func (i ConditionalCompareReg) Group2() uint32

func (ConditionalCompareReg) Nzcv

func (i ConditionalCompareReg) Nzcv() uint32

func (ConditionalCompareReg) O2

func (ConditionalCompareReg) O3

func (ConditionalCompareReg) Op

func (ConditionalCompareReg) Rm

func (ConditionalCompareReg) Rn

func (ConditionalCompareReg) S

func (ConditionalCompareReg) Sf

type ConditionalSelect

type ConditionalSelect uint32

func (ConditionalSelect) Cond

func (i ConditionalSelect) Cond() uint32

func (ConditionalSelect) Group1

func (i ConditionalSelect) Group1() uint32

func (ConditionalSelect) Op

func (i ConditionalSelect) Op() uint32

func (ConditionalSelect) Op2

func (i ConditionalSelect) Op2() uint32

func (ConditionalSelect) Rd

func (i ConditionalSelect) Rd() uint32

func (ConditionalSelect) Rm

func (i ConditionalSelect) Rm() uint32

func (ConditionalSelect) Rn

func (i ConditionalSelect) Rn() uint32

func (ConditionalSelect) S

func (i ConditionalSelect) S() uint32

func (ConditionalSelect) Sf

func (i ConditionalSelect) Sf() uint32

type Cryptographic2RegSha

type Cryptographic2RegSha uint32

func (Cryptographic2RegSha) Group1

func (i Cryptographic2RegSha) Group1() uint32

func (Cryptographic2RegSha) Group2

func (i Cryptographic2RegSha) Group2() uint32

func (Cryptographic2RegSha) Group3

func (i Cryptographic2RegSha) Group3() uint32

func (Cryptographic2RegSha) Opcode

func (i Cryptographic2RegSha) Opcode() uint32

func (Cryptographic2RegSha) Rd

func (Cryptographic2RegSha) Rn

func (Cryptographic2RegSha) Size

func (i Cryptographic2RegSha) Size() uint32

type Cryptographic3RegSha

type Cryptographic3RegSha uint32

func (Cryptographic3RegSha) Group1

func (i Cryptographic3RegSha) Group1() uint32

func (Cryptographic3RegSha) Group2

func (i Cryptographic3RegSha) Group2() uint32

func (Cryptographic3RegSha) Group3

func (i Cryptographic3RegSha) Group3() uint32

func (Cryptographic3RegSha) Group4

func (i Cryptographic3RegSha) Group4() uint32

func (Cryptographic3RegSha) Opcode

func (i Cryptographic3RegSha) Opcode() uint32

func (Cryptographic3RegSha) Rd

func (Cryptographic3RegSha) Rm

func (Cryptographic3RegSha) Rn

func (Cryptographic3RegSha) Size

func (i Cryptographic3RegSha) Size() uint32

type CryptographicAes

type CryptographicAes uint32

func (CryptographicAes) Group1

func (i CryptographicAes) Group1() uint32

func (CryptographicAes) Group2

func (i CryptographicAes) Group2() uint32

func (CryptographicAes) Group3

func (i CryptographicAes) Group3() uint32

func (CryptographicAes) Opcode

func (i CryptographicAes) Opcode() uint32

func (CryptographicAes) Rd

func (i CryptographicAes) Rd() uint32

func (CryptographicAes) Rn

func (i CryptographicAes) Rn() uint32

func (CryptographicAes) Size

func (i CryptographicAes) Size() uint32

type DataProcessing1

type DataProcessing1 uint32

func (DataProcessing1) Group1

func (i DataProcessing1) Group1() uint32

func (DataProcessing1) Group2

func (i DataProcessing1) Group2() uint32

func (DataProcessing1) Opcode

func (i DataProcessing1) Opcode() uint32

func (DataProcessing1) Opcode2

func (i DataProcessing1) Opcode2() uint32

func (DataProcessing1) Rd

func (i DataProcessing1) Rd() uint32

func (DataProcessing1) Rn

func (i DataProcessing1) Rn() uint32

func (DataProcessing1) S

func (i DataProcessing1) S() uint32

func (DataProcessing1) Sf

func (i DataProcessing1) Sf() uint32

type DataProcessing2

type DataProcessing2 uint32

func (DataProcessing2) Group1

func (i DataProcessing2) Group1() uint32

func (DataProcessing2) Group2

func (i DataProcessing2) Group2() uint32

func (DataProcessing2) Opcode

func (i DataProcessing2) Opcode() uint32

func (DataProcessing2) Rd

func (i DataProcessing2) Rd() uint32

func (DataProcessing2) Rm

func (i DataProcessing2) Rm() uint32

func (DataProcessing2) Rn

func (i DataProcessing2) Rn() uint32

func (DataProcessing2) S

func (i DataProcessing2) S() uint32

func (DataProcessing2) Sf

func (i DataProcessing2) Sf() uint32

func (DataProcessing2) String

func (i DataProcessing2) String() string

type DataProcessing3

type DataProcessing3 uint32

func (DataProcessing3) Group1

func (i DataProcessing3) Group1() uint32

func (DataProcessing3) O0

func (i DataProcessing3) O0() uint32

func (DataProcessing3) Op31

func (i DataProcessing3) Op31() uint32

func (DataProcessing3) Op54

func (i DataProcessing3) Op54() uint32

func (DataProcessing3) Ra

func (i DataProcessing3) Ra() uint32

func (DataProcessing3) Rd

func (i DataProcessing3) Rd() uint32

func (DataProcessing3) Rm

func (i DataProcessing3) Rm() uint32

func (DataProcessing3) Rn

func (i DataProcessing3) Rn() uint32

func (DataProcessing3) Sf

func (i DataProcessing3) Sf() uint32

type ExceptionGeneration

type ExceptionGeneration uint32

func (ExceptionGeneration) Imm

func (i ExceptionGeneration) Imm() uint32

func (ExceptionGeneration) Ll

func (i ExceptionGeneration) Ll() uint32

func (ExceptionGeneration) Op2

func (i ExceptionGeneration) Op2() uint32

func (ExceptionGeneration) Opc

func (i ExceptionGeneration) Opc() uint32

func (ExceptionGeneration) Opcode

func (i ExceptionGeneration) Opcode() uint32

type Extract

type Extract uint32

func (Extract) Group1

func (i Extract) Group1() uint32

func (Extract) Imms

func (i Extract) Imms() uint32

func (Extract) N

func (i Extract) N() uint32

func (Extract) O0

func (i Extract) O0() uint32

func (Extract) Op21

func (i Extract) Op21() uint32

func (Extract) Rd

func (i Extract) Rd() uint32

func (Extract) Rm

func (i Extract) Rm() uint32

func (Extract) Rn

func (i Extract) Rn() uint32

func (Extract) Sf

func (i Extract) Sf() uint32

type FloatingCompare

type FloatingCompare uint32

func (FloatingCompare) Group1

func (i FloatingCompare) Group1() uint32

func (FloatingCompare) Group2

func (i FloatingCompare) Group2() uint32

func (FloatingCompare) Group3

func (i FloatingCompare) Group3() uint32

func (FloatingCompare) Group4

func (i FloatingCompare) Group4() uint32

func (FloatingCompare) M

func (i FloatingCompare) M() uint32

func (FloatingCompare) Op

func (i FloatingCompare) Op() uint32

func (FloatingCompare) Opcode2

func (i FloatingCompare) Opcode2() uint32

func (FloatingCompare) Rm

func (i FloatingCompare) Rm() uint32

func (FloatingCompare) Rn

func (i FloatingCompare) Rn() uint32

func (FloatingCompare) S

func (i FloatingCompare) S() uint32

func (FloatingCompare) Type

func (i FloatingCompare) Type() uint32

type FloatingComplexMultiplyAccumulate

type FloatingComplexMultiplyAccumulate uint32

func (FloatingComplexMultiplyAccumulate) Flag

func (FloatingComplexMultiplyAccumulate) Group

func (FloatingComplexMultiplyAccumulate) H

func (FloatingComplexMultiplyAccumulate) L

func (FloatingComplexMultiplyAccumulate) M

func (FloatingComplexMultiplyAccumulate) Q

func (FloatingComplexMultiplyAccumulate) Rd

func (FloatingComplexMultiplyAccumulate) Rm

func (FloatingComplexMultiplyAccumulate) Rm2

func (FloatingComplexMultiplyAccumulate) Rn

func (FloatingComplexMultiplyAccumulate) Rot

func (FloatingComplexMultiplyAccumulate) Rot2

func (FloatingComplexMultiplyAccumulate) Size

func (FloatingComplexMultiplyAccumulate) String

type FloatingConditionalCompare

type FloatingConditionalCompare uint32

func (FloatingConditionalCompare) Cond

func (FloatingConditionalCompare) Group1

func (FloatingConditionalCompare) Group2

func (FloatingConditionalCompare) Group3

func (FloatingConditionalCompare) Group4

func (FloatingConditionalCompare) M

func (FloatingConditionalCompare) Nzvb

func (FloatingConditionalCompare) Op

func (FloatingConditionalCompare) Rm

func (FloatingConditionalCompare) Rn

func (FloatingConditionalCompare) S

func (FloatingConditionalCompare) Type

type FloatingConditionalSelect

type FloatingConditionalSelect uint32

func (FloatingConditionalSelect) Cond

func (FloatingConditionalSelect) Group1

func (i FloatingConditionalSelect) Group1() uint32

func (FloatingConditionalSelect) Group2

func (i FloatingConditionalSelect) Group2() uint32

func (FloatingConditionalSelect) Group3

func (i FloatingConditionalSelect) Group3() uint32

func (FloatingConditionalSelect) Group4

func (i FloatingConditionalSelect) Group4() uint32

func (FloatingConditionalSelect) M

func (FloatingConditionalSelect) Rd

func (FloatingConditionalSelect) Rm

func (FloatingConditionalSelect) Rn

func (FloatingConditionalSelect) S

func (FloatingConditionalSelect) Type

type FloatingDataProcessing1

type FloatingDataProcessing1 uint32

func (FloatingDataProcessing1) Group1

func (i FloatingDataProcessing1) Group1() uint32

func (FloatingDataProcessing1) Group2

func (i FloatingDataProcessing1) Group2() uint32

func (FloatingDataProcessing1) Group3

func (i FloatingDataProcessing1) Group3() uint32

func (FloatingDataProcessing1) Group4

func (i FloatingDataProcessing1) Group4() uint32

func (FloatingDataProcessing1) M

func (FloatingDataProcessing1) Opcode

func (i FloatingDataProcessing1) Opcode() uint32

func (FloatingDataProcessing1) Rd

func (FloatingDataProcessing1) Rn

func (FloatingDataProcessing1) S

func (FloatingDataProcessing1) String

func (i FloatingDataProcessing1) String() string

func (FloatingDataProcessing1) Type

type FloatingDataProcessing2

type FloatingDataProcessing2 uint32

func (FloatingDataProcessing2) Group1

func (i FloatingDataProcessing2) Group1() uint32

func (FloatingDataProcessing2) Group2

func (i FloatingDataProcessing2) Group2() uint32

func (FloatingDataProcessing2) Group3

func (i FloatingDataProcessing2) Group3() uint32

func (FloatingDataProcessing2) Group4

func (i FloatingDataProcessing2) Group4() uint32

func (FloatingDataProcessing2) M

func (FloatingDataProcessing2) Opcode

func (i FloatingDataProcessing2) Opcode() uint32

func (FloatingDataProcessing2) Rd

func (FloatingDataProcessing2) Rm

func (FloatingDataProcessing2) Rn

func (FloatingDataProcessing2) S

func (FloatingDataProcessing2) Type

type FloatingDataProcessing3

type FloatingDataProcessing3 uint32

func (FloatingDataProcessing3) Group1

func (i FloatingDataProcessing3) Group1() uint32

func (FloatingDataProcessing3) Group2

func (i FloatingDataProcessing3) Group2() uint32

func (FloatingDataProcessing3) M

func (FloatingDataProcessing3) O0

func (FloatingDataProcessing3) O1

func (FloatingDataProcessing3) Ra

func (FloatingDataProcessing3) Rd

func (FloatingDataProcessing3) Rm

func (FloatingDataProcessing3) Rn

func (FloatingDataProcessing3) S

func (FloatingDataProcessing3) Type

type FloatingFixedConversion

type FloatingFixedConversion uint32

func (FloatingFixedConversion) Group1

func (i FloatingFixedConversion) Group1() uint32

func (FloatingFixedConversion) Group2

func (i FloatingFixedConversion) Group2() uint32

func (FloatingFixedConversion) Group3

func (i FloatingFixedConversion) Group3() uint32

func (FloatingFixedConversion) Mode

func (FloatingFixedConversion) Opcode

func (i FloatingFixedConversion) Opcode() uint32

func (FloatingFixedConversion) Rd

func (FloatingFixedConversion) Rn

func (FloatingFixedConversion) S

func (FloatingFixedConversion) Scale

func (i FloatingFixedConversion) Scale() uint32

func (FloatingFixedConversion) Sf

func (FloatingFixedConversion) String

func (i FloatingFixedConversion) String() string

func (FloatingFixedConversion) Type

type FloatingImm

type FloatingImm uint32

func (FloatingImm) Group1

func (i FloatingImm) Group1() uint32

func (FloatingImm) Group2

func (i FloatingImm) Group2() uint32

func (FloatingImm) Group3

func (i FloatingImm) Group3() uint32

func (FloatingImm) Group4

func (i FloatingImm) Group4() uint32

func (FloatingImm) Imm5

func (i FloatingImm) Imm5() uint32

func (FloatingImm) Imm8

func (i FloatingImm) Imm8() uint32

func (FloatingImm) M

func (i FloatingImm) M() uint32

func (FloatingImm) Rd

func (i FloatingImm) Rd() uint32

func (FloatingImm) S

func (i FloatingImm) S() uint32

func (FloatingImm) Type

func (i FloatingImm) Type() uint32

type FloatingIntegerConversion

type FloatingIntegerConversion uint32

func (FloatingIntegerConversion) Group1

func (i FloatingIntegerConversion) Group1() uint32

func (FloatingIntegerConversion) Group2

func (i FloatingIntegerConversion) Group2() uint32

func (FloatingIntegerConversion) Group3

func (i FloatingIntegerConversion) Group3() uint32

func (FloatingIntegerConversion) Group4

func (i FloatingIntegerConversion) Group4() uint32

func (FloatingIntegerConversion) Opcode

func (i FloatingIntegerConversion) Opcode() uint32

func (FloatingIntegerConversion) Rd

func (FloatingIntegerConversion) Rmode

func (FloatingIntegerConversion) Rn

func (FloatingIntegerConversion) S

func (FloatingIntegerConversion) Sf

func (FloatingIntegerConversion) String

func (i FloatingIntegerConversion) String() string

func (FloatingIntegerConversion) Type

type Group

type Group uint32
const (
	GROUP_UNALLOCATED Group = iota
	GROUP_DATA_PROCESSING_IMM
	GROUP_BRANCH_EXCEPTION_SYSTEM
	GROUP_LOAD_STORE
	GROUP_DATA_PROCESSING_REG
	GROUP_DATA_PROCESSING_SIMD
	GROUP_DATA_PROCESSING_SIMD2
	END_GROUP
)

type Instruction

type Instruction struct {
	// contains filtered or unexported fields
}

func (*Instruction) Address

func (i *Instruction) Address() uint64

func (*Instruction) Group

func (i *Instruction) Group() Group

func (*Instruction) OpCodes

func (i *Instruction) OpCodes() string

func (*Instruction) OpStr

func (i *Instruction) OpStr() string

func (*Instruction) Operands

func (i *Instruction) Operands() []InstructionOperand

func (*Instruction) Operation

func (i *Instruction) Operation() Operation

func (*Instruction) Raw

func (i *Instruction) Raw() uint32

type InstructionOperand

type InstructionOperand struct {
	OpClass OperandClass

	Reg            [5]uint32 //registers or conditions
	Scale          uint32
	HasScale       bool
	DataSize       uint32
	ElementSize    uint32
	Index          uint32
	Immediate      uint64
	ShiftType      ShiftType
	ShiftValueUsed bool
	ShiftValue     uint32
	Extend         ShiftType
	SignedImm      uint32
	Rotation       uint32
	HasRotation    bool
	// contains filtered or unexported fields
}

func (InstructionOperand) Conditions

func (op InstructionOperand) Conditions() []Condition

func (InstructionOperand) Registers

func (op InstructionOperand) Registers() []Register

func (InstructionOperand) String

func (op InstructionOperand) String() string

func (InstructionOperand) SystemRegisters

func (op InstructionOperand) SystemRegisters() []SystemReg

type LdstAtomic

type LdstAtomic uint32

func (LdstAtomic) A

func (i LdstAtomic) A() uint32

func (LdstAtomic) Group

func (i LdstAtomic) Group() uint32

func (LdstAtomic) O0

func (i LdstAtomic) O0() uint32

func (LdstAtomic) O1

func (i LdstAtomic) O1() uint32

func (LdstAtomic) O2

func (i LdstAtomic) O2() uint32

func (LdstAtomic) Opc

func (i LdstAtomic) Opc() uint32

func (LdstAtomic) R

func (i LdstAtomic) R() uint32

func (LdstAtomic) Rn

func (i LdstAtomic) Rn() uint32

func (LdstAtomic) Rs

func (i LdstAtomic) Rs() uint32

func (LdstAtomic) Rt

func (i LdstAtomic) Rt() uint32

func (LdstAtomic) Size

func (i LdstAtomic) Size() uint32

func (LdstAtomic) String

func (i LdstAtomic) String() string

type LdstExclusive

type LdstExclusive uint32

func (LdstExclusive) Group1

func (i LdstExclusive) Group1() uint32

func (LdstExclusive) L

func (i LdstExclusive) L() uint32

func (LdstExclusive) O0

func (i LdstExclusive) O0() uint32

func (LdstExclusive) O1

func (i LdstExclusive) O1() uint32

func (LdstExclusive) O2

func (i LdstExclusive) O2() uint32

func (LdstExclusive) Rn

func (i LdstExclusive) Rn() uint32

func (LdstExclusive) Rs

func (i LdstExclusive) Rs() uint32

func (LdstExclusive) Rt

func (i LdstExclusive) Rt() uint32

func (LdstExclusive) Rt2

func (i LdstExclusive) Rt2() uint32

func (LdstExclusive) Size

func (i LdstExclusive) Size() uint32

func (LdstExclusive) String

func (i LdstExclusive) String() string

type LdstNoAllocPair

type LdstNoAllocPair uint32

func (LdstNoAllocPair) Group1

func (i LdstNoAllocPair) Group1() uint32

func (LdstNoAllocPair) Group2

func (i LdstNoAllocPair) Group2() uint32

func (LdstNoAllocPair) Imm

func (i LdstNoAllocPair) Imm() int32

func (LdstNoAllocPair) L

func (i LdstNoAllocPair) L() uint32

func (LdstNoAllocPair) Opc

func (i LdstNoAllocPair) Opc() uint32

func (LdstNoAllocPair) Rn

func (i LdstNoAllocPair) Rn() uint32

func (LdstNoAllocPair) Rt

func (i LdstNoAllocPair) Rt() uint32

func (LdstNoAllocPair) Rt2

func (i LdstNoAllocPair) Rt2() uint32

func (LdstNoAllocPair) String

func (i LdstNoAllocPair) String() string

func (LdstNoAllocPair) V

func (i LdstNoAllocPair) V() uint32

type LdstRegImmPac

type LdstRegImmPac uint32

func (LdstRegImmPac) Group1

func (i LdstRegImmPac) Group1() uint32

func (LdstRegImmPac) Group2

func (i LdstRegImmPac) Group2() uint32

func (LdstRegImmPac) Group3

func (i LdstRegImmPac) Group3() uint32

func (LdstRegImmPac) Group4

func (i LdstRegImmPac) Group4() uint32

func (LdstRegImmPac) Imm

func (i LdstRegImmPac) Imm() uint32

func (LdstRegImmPac) M

func (i LdstRegImmPac) M() uint32

func (LdstRegImmPac) Rn

func (i LdstRegImmPac) Rn() uint32

func (LdstRegImmPac) Rt

func (i LdstRegImmPac) Rt() uint32

func (LdstRegImmPac) S

func (i LdstRegImmPac) S() uint32

func (LdstRegImmPac) Size

func (i LdstRegImmPac) Size() uint32

func (LdstRegImmPac) String

func (i LdstRegImmPac) String() string

func (LdstRegImmPac) V

func (i LdstRegImmPac) V() uint32

func (LdstRegImmPac) W

func (i LdstRegImmPac) W() uint32

type LdstRegImmPostIdx

type LdstRegImmPostIdx uint32

func (LdstRegImmPostIdx) Group1

func (i LdstRegImmPostIdx) Group1() uint32

func (LdstRegImmPostIdx) Group2

func (i LdstRegImmPostIdx) Group2() uint32

func (LdstRegImmPostIdx) Group3

func (i LdstRegImmPostIdx) Group3() uint32

func (LdstRegImmPostIdx) Group4

func (i LdstRegImmPostIdx) Group4() uint32

func (LdstRegImmPostIdx) Imm

func (i LdstRegImmPostIdx) Imm() uint32

func (LdstRegImmPostIdx) Opc

func (i LdstRegImmPostIdx) Opc() uint32

func (LdstRegImmPostIdx) Rn

func (i LdstRegImmPostIdx) Rn() uint32

func (LdstRegImmPostIdx) Rt

func (i LdstRegImmPostIdx) Rt() uint32

func (LdstRegImmPostIdx) Size

func (i LdstRegImmPostIdx) Size() uint32

func (LdstRegImmPostIdx) V

func (i LdstRegImmPostIdx) V() uint32

type LdstRegImmPreIdx

type LdstRegImmPreIdx uint32

func (LdstRegImmPreIdx) Group1

func (i LdstRegImmPreIdx) Group1() uint32

func (LdstRegImmPreIdx) Group2

func (i LdstRegImmPreIdx) Group2() uint32

func (LdstRegImmPreIdx) Group3

func (i LdstRegImmPreIdx) Group3() uint32

func (LdstRegImmPreIdx) Group4

func (i LdstRegImmPreIdx) Group4() uint32

func (LdstRegImmPreIdx) Imm

func (i LdstRegImmPreIdx) Imm() int32

func (LdstRegImmPreIdx) Opc

func (i LdstRegImmPreIdx) Opc() uint32

func (LdstRegImmPreIdx) Rn

func (i LdstRegImmPreIdx) Rn() uint32

func (LdstRegImmPreIdx) Rt

func (i LdstRegImmPreIdx) Rt() uint32

func (LdstRegImmPreIdx) Size

func (i LdstRegImmPreIdx) Size() uint32

func (LdstRegImmPreIdx) V

func (i LdstRegImmPreIdx) V() uint32

type LdstRegPairOffset

type LdstRegPairOffset uint32

func (LdstRegPairOffset) Group1

func (i LdstRegPairOffset) Group1() uint32

func (LdstRegPairOffset) Group2

func (i LdstRegPairOffset) Group2() uint32

func (LdstRegPairOffset) Imm

func (i LdstRegPairOffset) Imm() int32

func (LdstRegPairOffset) L

func (i LdstRegPairOffset) L() uint32

func (LdstRegPairOffset) Opc

func (i LdstRegPairOffset) Opc() uint32

func (LdstRegPairOffset) Rn

func (i LdstRegPairOffset) Rn() uint32

func (LdstRegPairOffset) Rt

func (i LdstRegPairOffset) Rt() uint32

func (LdstRegPairOffset) Rt2

func (i LdstRegPairOffset) Rt2() uint32

func (LdstRegPairOffset) V

func (i LdstRegPairOffset) V() uint32

type LdstRegPairPostIdx

type LdstRegPairPostIdx uint32

func (LdstRegPairPostIdx) Group1

func (i LdstRegPairPostIdx) Group1() uint32

func (LdstRegPairPostIdx) Group2

func (i LdstRegPairPostIdx) Group2() uint32

func (LdstRegPairPostIdx) Group3

func (i LdstRegPairPostIdx) Group3() uint32

func (LdstRegPairPostIdx) Group4

func (i LdstRegPairPostIdx) Group4() uint32

func (LdstRegPairPostIdx) Imm

func (i LdstRegPairPostIdx) Imm() int32

func (LdstRegPairPostIdx) Opc

func (i LdstRegPairPostIdx) Opc() uint32

func (LdstRegPairPostIdx) Rn

func (i LdstRegPairPostIdx) Rn() uint32

func (LdstRegPairPostIdx) Rt

func (i LdstRegPairPostIdx) Rt() uint32

func (LdstRegPairPostIdx) Size

func (i LdstRegPairPostIdx) Size() uint32

func (LdstRegPairPostIdx) V

func (i LdstRegPairPostIdx) V() uint32

type LdstRegPairPreIdx

type LdstRegPairPreIdx uint32

func (LdstRegPairPreIdx) Group1

func (i LdstRegPairPreIdx) Group1() uint32

func (LdstRegPairPreIdx) Group2

func (i LdstRegPairPreIdx) Group2() uint32

func (LdstRegPairPreIdx) Imm

func (i LdstRegPairPreIdx) Imm() uint32

func (LdstRegPairPreIdx) L

func (i LdstRegPairPreIdx) L() uint32

func (LdstRegPairPreIdx) Opc

func (i LdstRegPairPreIdx) Opc() uint32

func (LdstRegPairPreIdx) Rn

func (i LdstRegPairPreIdx) Rn() uint32

func (LdstRegPairPreIdx) Rt

func (i LdstRegPairPreIdx) Rt() uint32

func (LdstRegPairPreIdx) Rt2

func (i LdstRegPairPreIdx) Rt2() uint32

func (LdstRegPairPreIdx) V

func (i LdstRegPairPreIdx) V() uint32

type LdstRegRegOffset

type LdstRegRegOffset uint32

func (LdstRegRegOffset) Group1

func (i LdstRegRegOffset) Group1() uint32

func (LdstRegRegOffset) Group2

func (i LdstRegRegOffset) Group2() uint32

func (LdstRegRegOffset) Group3

func (i LdstRegRegOffset) Group3() uint32

func (LdstRegRegOffset) Group4

func (i LdstRegRegOffset) Group4() uint32

func (LdstRegRegOffset) Opc

func (i LdstRegRegOffset) Opc() uint32

func (LdstRegRegOffset) Option

func (i LdstRegRegOffset) Option() uint32

func (LdstRegRegOffset) Rm

func (i LdstRegRegOffset) Rm() uint32

func (LdstRegRegOffset) Rn

func (i LdstRegRegOffset) Rn() uint32

func (LdstRegRegOffset) Rt

func (i LdstRegRegOffset) Rt() uint32

func (LdstRegRegOffset) S

func (i LdstRegRegOffset) S() uint32

func (LdstRegRegOffset) Size

func (i LdstRegRegOffset) Size() uint32

func (LdstRegRegOffset) V

func (i LdstRegRegOffset) V() uint32

type LdstRegUnscaledImm

type LdstRegUnscaledImm uint32

func (LdstRegUnscaledImm) Group1

func (i LdstRegUnscaledImm) Group1() uint32

func (LdstRegUnscaledImm) Group2

func (i LdstRegUnscaledImm) Group2() uint32

func (LdstRegUnscaledImm) Group3

func (i LdstRegUnscaledImm) Group3() uint32

func (LdstRegUnscaledImm) Group4

func (i LdstRegUnscaledImm) Group4() uint32

func (LdstRegUnscaledImm) Imm

func (i LdstRegUnscaledImm) Imm() int32

func (LdstRegUnscaledImm) Opc

func (i LdstRegUnscaledImm) Opc() uint32

func (LdstRegUnscaledImm) Rn

func (i LdstRegUnscaledImm) Rn() uint32

func (LdstRegUnscaledImm) Rt

func (i LdstRegUnscaledImm) Rt() uint32

func (LdstRegUnscaledImm) Size

func (i LdstRegUnscaledImm) Size() uint32

func (LdstRegUnscaledImm) V

func (i LdstRegUnscaledImm) V() uint32

type LdstRegUnsignedImm

type LdstRegUnsignedImm uint32

func (LdstRegUnsignedImm) Group1

func (i LdstRegUnsignedImm) Group1() uint32

func (LdstRegUnsignedImm) Group2

func (i LdstRegUnsignedImm) Group2() uint32

func (LdstRegUnsignedImm) Imm

func (i LdstRegUnsignedImm) Imm() uint32

func (LdstRegUnsignedImm) Opc

func (i LdstRegUnsignedImm) Opc() uint32

func (LdstRegUnsignedImm) Rn

func (i LdstRegUnsignedImm) Rn() uint32

func (LdstRegUnsignedImm) Rt

func (i LdstRegUnsignedImm) Rt() uint32

func (LdstRegUnsignedImm) Size

func (i LdstRegUnsignedImm) Size() uint32

func (LdstRegUnsignedImm) V

func (i LdstRegUnsignedImm) V() uint32

type LdstRegisterUnpriv

type LdstRegisterUnpriv uint32

func (LdstRegisterUnpriv) Group1

func (i LdstRegisterUnpriv) Group1() uint32

func (LdstRegisterUnpriv) Group2

func (i LdstRegisterUnpriv) Group2() uint32

func (LdstRegisterUnpriv) Group3

func (i LdstRegisterUnpriv) Group3() uint32

func (LdstRegisterUnpriv) Group4

func (i LdstRegisterUnpriv) Group4() uint32

func (LdstRegisterUnpriv) Imm

func (i LdstRegisterUnpriv) Imm() int32

func (LdstRegisterUnpriv) Opc

func (i LdstRegisterUnpriv) Opc() uint32

func (LdstRegisterUnpriv) Rn

func (i LdstRegisterUnpriv) Rn() uint32

func (LdstRegisterUnpriv) Rt

func (i LdstRegisterUnpriv) Rt() uint32

func (LdstRegisterUnpriv) Size

func (i LdstRegisterUnpriv) Size() uint32

func (LdstRegisterUnpriv) V

func (i LdstRegisterUnpriv) V() uint32

type LdstTags

type LdstTags uint32

func (LdstTags) Anon0

func (i LdstTags) Anon0() uint32

func (LdstTags) Anon1

func (i LdstTags) Anon1() uint32

func (LdstTags) Imm9

func (i LdstTags) Imm9() int32

func (LdstTags) Op2

func (i LdstTags) Op2() uint32

func (LdstTags) Opc

func (i LdstTags) Opc() uint32

func (LdstTags) Rn

func (i LdstTags) Rn() uint32

func (LdstTags) Rt

func (i LdstTags) Rt() uint32

func (LdstTags) Size

func (i LdstTags) Size() uint32

func (LdstTags) String

func (i LdstTags) String() string

type LoadRegisterLiteral

type LoadRegisterLiteral uint32

func (LoadRegisterLiteral) Group1

func (i LoadRegisterLiteral) Group1() uint32

func (LoadRegisterLiteral) Group2

func (i LoadRegisterLiteral) Group2() uint32

func (LoadRegisterLiteral) Imm

func (i LoadRegisterLiteral) Imm() int32

func (LoadRegisterLiteral) Opc

func (i LoadRegisterLiteral) Opc() uint32

func (LoadRegisterLiteral) Rt

func (i LoadRegisterLiteral) Rt() uint32

func (LoadRegisterLiteral) String

func (i LoadRegisterLiteral) String() string

func (LoadRegisterLiteral) V

type LogicalImm

type LogicalImm uint32

func (LogicalImm) Group1

func (i LogicalImm) Group1() uint32

func (LogicalImm) Immr

func (i LogicalImm) Immr() uint32

func (LogicalImm) Imms

func (i LogicalImm) Imms() uint32

func (LogicalImm) N

func (i LogicalImm) N() uint32

func (LogicalImm) Opc

func (i LogicalImm) Opc() uint32

func (LogicalImm) Rd

func (i LogicalImm) Rd() uint32

func (LogicalImm) Rn

func (i LogicalImm) Rn() uint32

func (LogicalImm) Sf

func (i LogicalImm) Sf() uint32

func (LogicalImm) String

func (i LogicalImm) String() string

type LogicalShiftedReg

type LogicalShiftedReg uint32

func (LogicalShiftedReg) Group1

func (i LogicalShiftedReg) Group1() uint32

func (LogicalShiftedReg) Imm

func (i LogicalShiftedReg) Imm() uint32

func (LogicalShiftedReg) N

func (i LogicalShiftedReg) N() uint32

func (LogicalShiftedReg) Opc

func (i LogicalShiftedReg) Opc() uint32

func (LogicalShiftedReg) Rd

func (i LogicalShiftedReg) Rd() uint32

func (LogicalShiftedReg) Rm

func (i LogicalShiftedReg) Rm() uint32

func (LogicalShiftedReg) Rn

func (i LogicalShiftedReg) Rn() uint32

func (LogicalShiftedReg) Sf

func (i LogicalShiftedReg) Sf() uint32

func (LogicalShiftedReg) Shift

func (i LogicalShiftedReg) Shift() uint32

type MachoArm64RelocationType

type MachoArm64RelocationType uint32
const (
	ARM64_RELOC_UNSIGNED MachoArm64RelocationType = iota
	ARM64_RELOC_SUBTRACTOR
	ARM64_RELOC_BRANCH26
	ARM64_RELOC_PAGE21
	ARM64_RELOC_PAGEOFF12
	ARM64_RELOC_GOT_LOAD_PAGE21
	ARM64_RELOC_GOT_LOAD_PAGEOFF12
	ARM64_RELOC_POINTER_TO_GOT
	ARM64_RELOC_TLVP_LOAD_PAGE21
	ARM64_RELOC_TLVP_LOAD_PAGEOFF12
	ARM64_RELOC_ADDEND
	MACHO_MAX_ARM64_RELOCATION
)

type MoveWideImm

type MoveWideImm uint32

func (MoveWideImm) Group1

func (i MoveWideImm) Group1() uint32

func (MoveWideImm) Hw

func (i MoveWideImm) Hw() uint32

func (MoveWideImm) Imm

func (i MoveWideImm) Imm() uint32

func (MoveWideImm) Opc

func (i MoveWideImm) Opc() uint32

func (MoveWideImm) Rd

func (i MoveWideImm) Rd() uint32

func (MoveWideImm) Sf

func (i MoveWideImm) Sf() uint32

func (MoveWideImm) String

func (i MoveWideImm) String() string

type OperandClass

type OperandClass uint32
const (
	NONE OperandClass = iota
	IMM32
	IMM64
	FIMM32
	REG
	MULTI_REG
	SYS_REG
	MEM_REG
	MEM_PRE_IDX
	MEM_POST_IDX
	MEM_OFFSET
	MEM_EXTENDED
	LABEL
	CONDITION
	IMPLEMENTATION_SPECIFIC
)

type Operation

type Operation uint32
const (
	ARM64_UNDEFINED Operation = iota
	ARM64_ABS
	ARM64_ADC
	ARM64_ADCS
	ARM64_ADD
	ARM64_ADDG //Added for MTE
	ARM64_ADDHN
	ARM64_ADDHN2
	ARM64_ADDP
	ARM64_ADDS
	ARM64_ADDV
	ARM64_ADR
	ARM64_ADRP
	ARM64_AESD
	ARM64_AESE
	ARM64_AESIMC
	ARM64_AESMC
	ARM64_AND
	ARM64_ANDS
	ARM64_ASR
	ARM64_AT
	ARM64_AUTDA     //Added for 8.3
	ARM64_AUTDB     //Added for 8.3
	ARM64_AUTDZA    //Added for 8.3
	ARM64_AUTDZB    //Added for 8.3
	ARM64_AUTIA     //Added for 8.3
	ARM64_AUTIA1716 //Added for 8.3
	ARM64_AUTIASP   //Added for 8.3
	ARM64_AUTIAZ    //Added for 8.3
	ARM64_AUTIB     //Added for 8.3
	ARM64_AUTIB1716 //Added for 8.3
	ARM64_AUTIBSP   //Added for 8.3
	ARM64_AUTIBZ    //Added for 8.3
	ARM64_AUTIZA    //Added for 8.3
	ARM64_AUTIZB    //Added for 8.3
	ARM64_B
	ARM64_B_AL
	ARM64_B_CC
	ARM64_B_CS
	ARM64_B_EQ
	ARM64_BFC
	ARM64_BFCVT   // ARMv8.6
	ARM64_BFCVTN  // ARMv8.6
	ARM64_BFCVTN2 // ARMv8.6
	ARM64_BFDOT   // ARMv8.6
	ARM64_BFMLALB // ARMv8.6
	ARM64_BFMLALT // ARMv8.6
	ARM64_BFMMLA  // ARMv8.6
	ARM64_BFI
	ARM64_BFM
	ARM64_BFXIL
	ARM64_B_GE
	ARM64_B_GT
	ARM64_B_HI
	ARM64_BIC
	ARM64_BICS
	ARM64_BIF
	ARM64_BIT
	ARM64_BL
	ARM64_B_LE
	ARM64_BLR
	ARM64_BLRAA
	ARM64_BLRAAZ
	ARM64_BLRAB
	ARM64_BLRABZ
	ARM64_B_HS
	ARM64_B_LO
	ARM64_B_LS
	ARM64_B_LT
	ARM64_B_MI
	ARM64_B_NE
	ARM64_B_NV
	ARM64_B_PL
	ARM64_BR
	ARM64_BRAA
	ARM64_BRAAZ
	ARM64_BRAB
	ARM64_BRABZ
	ARM64_BRK
	ARM64_BSL
	ARM64_B_VC
	ARM64_B_VS
	ARM64_CASB
	ARM64_CASAB
	ARM64_CASALB
	ARM64_CASLB
	ARM64_CASH
	ARM64_CASAH
	ARM64_CASALH
	ARM64_CASLH
	ARM64_CASP
	ARM64_CASPA
	ARM64_CASPAL
	ARM64_CASPL
	ARM64_CAS
	ARM64_CASA
	ARM64_CASAL
	ARM64_CASL
	ARM64_CBNZ
	ARM64_CBZ
	ARM64_CCMN
	ARM64_CCMP
	ARM64_CFP
	ARM64_CINC
	ARM64_CINV
	ARM64_CLREX
	ARM64_CLS
	ARM64_CLZ
	ARM64_CMEQ
	ARM64_CMGE
	ARM64_CMGT
	ARM64_CMHI
	ARM64_CMHS
	ARM64_CMLE
	ARM64_CMLT
	ARM64_CMN
	ARM64_CMP
	ARM64_CMPP //Added for MTE
	ARM64_CMTST
	ARM64_CNEG
	ARM64_CNT
	ARM64_CPP
	ARM64_CRC32B
	ARM64_CRC32CB
	ARM64_CRC32CH
	ARM64_CRC32CW
	ARM64_CRC32CX
	ARM64_CRC32H
	ARM64_CRC32W
	ARM64_CRC32X
	ARM64_CSEL
	ARM64_CSET
	ARM64_CSETM
	ARM64_CSINC
	ARM64_CSINV
	ARM64_CSNEG
	ARM64_DC
	ARM64_DCPS1
	ARM64_DCPS2
	ARM64_DCPS3
	ARM64_DGH // ARMv8.6
	ARM64_DMB
	ARM64_DRPS
	ARM64_DSB
	ARM64_DUP
	ARM64_DVP
	ARM64_EON
	ARM64_EOR
	ARM64_ERET
	ARM64_ERETAA //Added for 8.3
	ARM64_ERETAB //Added for 8.3
	ARM64_ESB    //Added for 8.2
	ARM64_EXT
	ARM64_EXTR
	ARM64_FABD
	ARM64_FABS
	ARM64_FACGE
	ARM64_FACGT
	ARM64_FADD
	ARM64_FADDP
	ARM64_FCADD
	ARM64_FCCMP
	ARM64_FCCMPE
	ARM64_FCMEQ
	ARM64_FCMGE
	ARM64_FCMGT
	ARM64_FCMLE
	ARM64_FCMLT
	ARM64_FCMP
	ARM64_FCMPE
	ARM64_FCMLA
	ARM64_FCSEL
	ARM64_FCTNS
	ARM64_FCTNU
	ARM64_FCVT
	ARM64_FCVTAS
	ARM64_FCVTAU
	ARM64_FCVTL
	ARM64_FCVTL2
	ARM64_FCVTMS
	ARM64_FCVTMU
	ARM64_FCVTN
	ARM64_FCVTN2
	ARM64_FCVTNS
	ARM64_FCVTNU
	ARM64_FCVTPS
	ARM64_FCVTPU
	ARM64_FCVTXN
	ARM64_FCVTXN2
	ARM64_FCVTZS
	ARM64_FCVTZU
	ARM64_FDIV
	ARM64_FJCVTZS
	ARM64_FMADD
	ARM64_FMAX
	ARM64_FMAXNM
	ARM64_FMAXNMP
	ARM64_FMAXNMV
	ARM64_FMAXP
	ARM64_FMAXV
	ARM64_FMIN
	ARM64_FMINNM
	ARM64_FMINNMP
	ARM64_FMINNMV
	ARM64_FMINP
	ARM64_FMINV
	ARM64_FMLA
	ARM64_FMLAL // ARMv8.2
	ARM64_FMLSL // ARMv8.2
	ARM64_FMLS
	ARM64_FMOV
	ARM64_FMSUB
	ARM64_FMUL
	ARM64_FMULX
	ARM64_FNEG
	ARM64_FNMADD
	ARM64_FNMSUB
	ARM64_FNMUL
	ARM64_FRECPE
	ARM64_FRECPS
	ARM64_FRECPX
	ARM64_FRINT32X
	ARM64_FRINT32Z
	ARM64_FRINT64X
	ARM64_FRINT64Z
	ARM64_FRINTA
	ARM64_FRINTI
	ARM64_FRINTM
	ARM64_FRINTN
	ARM64_FRINTP
	ARM64_FRINTX
	ARM64_FRINTZ
	ARM64_FRSQRTE
	ARM64_FRSQRTS
	ARM64_FSQRT
	ARM64_FSUB
	ARM64_GMI //Added for MTE
	ARM64_HINT
	ARM64_HLT
	ARM64_HVC
	ARM64_IC
	ARM64_INS
	ARM64_IRG //Added for MTE
	ARM64_ISB
	ARM64_LDADDB   // ARMv8.1
	ARM64_LDADDAB  // ARMv8.1
	ARM64_LDADDALB // ARMv8.1
	ARM64_LDADDLB  // ARMv8.1
	ARM64_LDADDH   // ARMv8.1
	ARM64_LDADDAH  // ARMv8.1
	ARM64_LDADDALH // ARMv8.1
	ARM64_LDADDLH  // ARMv8.1
	ARM64_LDADD    // ARMv8.1
	ARM64_LDADDA   // ARMv8.1
	ARM64_LDADDAL  // ARMv8.1
	ARM64_LDADDL   // ARMv8.1
	ARM64_LD1
	ARM64_LD1R
	ARM64_LD2
	ARM64_LD2R
	ARM64_LD3
	ARM64_LD3R
	ARM64_LD4
	ARM64_LD4R
	ARM64_LDAPR    // 8.3
	ARM64_LDAPRB   // 8.3
	ARM64_LDAPRH   // 8.3
	ARM64_LDAPUR   // Added for 8.4
	ARM64_LDAPURB  // Added for 8.4
	ARM64_LDAPURH  // Added for 8.4
	ARM64_LDAPURSB // Added for 8.4
	ARM64_LDAPURSH // Added for 8.4
	ARM64_LDAPURSW // Added for 8.4
	ARM64_LDAR
	ARM64_LDARB
	ARM64_LDARH
	ARM64_LDAXP
	ARM64_LDAXR
	ARM64_LDAXRB
	ARM64_LDAXRH
	ARM64_LDCLRB   // ARMv8.1
	ARM64_LDCLRAB  // ARMv8.1
	ARM64_LDCLRALB // ARMv8.1
	ARM64_LDCLRLB  // ARMv8.1
	ARM64_LDCLRH   // ARMv8.1
	ARM64_LDCLRAH  // ARMv8.1
	ARM64_LDCLRALH // ARMv8.1
	ARM64_LDCLRLH  // ARMv8.1
	ARM64_LDCLR    // ARMv8.1
	ARM64_LDCLRA   // ARMv8.1
	ARM64_LDCLRAL  // ARMv8.1
	ARM64_LDCLRL   // ARMv8.1
	ARM64_LDEORB   // ARMv8.1
	ARM64_LDEORAB  // ARMv8.1
	ARM64_LDEORALB // ARMv8.1
	ARM64_LDEORLB  // ARMv8.1
	ARM64_LDEORH   // ARMv8.1
	ARM64_LDEORAH  // ARMv8.1
	ARM64_LDEORALH // ARMv8.1
	ARM64_LDEORLH  // ARMv8.1
	ARM64_LDEOR    // ARMv8.1
	ARM64_LDEORA   // ARMv8.1
	ARM64_LDEORAL  // ARMv8.1
	ARM64_LDEORL   // ARMv8.1
	ARM64_LDG      //Added for MTE
	ARM64_LDGM     //Added for MTE
	ARM64_LDLARB   // ARMv8.1
	ARM64_LDLARH   // ARMv8.1
	ARM64_LDLAR    // ARMv8.1
	ARM64_LDNP
	ARM64_LDP
	ARM64_LDPSW
	ARM64_LDR
	ARM64_LDRAA //Added for 8.3
	ARM64_LDRAB //Added for 8.3
	ARM64_LDRB
	ARM64_LDRH
	ARM64_LDRSB
	ARM64_LDRSH
	ARM64_LDRSW
	ARM64_LDSETB    // ARMv8.1
	ARM64_LDSETAB   // ARMv8.1
	ARM64_LDSETALB  // ARMv8.1
	ARM64_LDSETLB   // ARMv8.1
	ARM64_LDSETH    // ARMv8.1
	ARM64_LDSETAH   // ARMv8.1
	ARM64_LDSETALH  // ARMv8.1
	ARM64_LDSETLH   // ARMv8.1
	ARM64_LDSET     // ARMv8.1
	ARM64_LDSETA    // ARMv8.1
	ARM64_LDSETAL   // ARMv8.1
	ARM64_LDSETL    // ARMv8.1
	ARM64_LDSMAXB   // ARMv8.1
	ARM64_LDSMAXAB  // ARMv8.1
	ARM64_LDSMAXALB // ARMv8.1
	ARM64_LDSMAXLB  // ARMv8.1
	ARM64_LDSMAXH   // ARMv8.1
	ARM64_LDSMAXAH  // ARMv8.1
	ARM64_LDSMAXALH // ARMv8.1
	ARM64_LDSMAXLH  // ARMv8.1
	ARM64_LDSMAX    // ARMv8.1
	ARM64_LDSMAXA   // ARMv8.1
	ARM64_LDSMAXAL  // ARMv8.1
	ARM64_LDSMAXL   // ARMv8.1
	ARM64_LDSMINB   // ARMv8.1
	ARM64_LDSMINAB  // ARMv8.1
	ARM64_LDSMINALB // ARMv8.1
	ARM64_LDSMINLB  // ARMv8.1
	ARM64_LDSMINH   // ARMv8.1
	ARM64_LDSMINAH  // ARMv8.1
	ARM64_LDSMINALH // ARMv8.1
	ARM64_LDSMINLH  // ARMv8.1
	ARM64_LDSMIN    // ARMv8.1
	ARM64_LDSMINA   // ARMv8.1
	ARM64_LDSMINAL  // ARMv8.1
	ARM64_LDSMINL   // ARMv8.1
	ARM64_LDTR
	ARM64_LDTRB
	ARM64_LDTRH
	ARM64_LDTRSB
	ARM64_LDTRSH
	ARM64_LDTRSW
	ARM64_LDUMAXB   // ARMv8.1
	ARM64_LDUMAXAB  // ARMv8.1
	ARM64_LDUMAXALB // ARMv8.1
	ARM64_LDUMAXLB  // ARMv8.1
	ARM64_LDUMAXH   // ARMv8.1
	ARM64_LDUMAXAH  // ARMv8.1
	ARM64_LDUMAXALH // ARMv8.1
	ARM64_LDUMAXLH  // ARMv8.1
	ARM64_LDUMAX    // ARMv8.1
	ARM64_LDUMAXA   // ARMv8.1
	ARM64_LDUMAXAL  // ARMv8.1
	ARM64_LDUMAXL   // ARMv8.1
	ARM64_LDUMINB   // ARMv8.1
	ARM64_LDUMINAB  // ARMv8.1
	ARM64_LDUMINALB // ARMv8.1
	ARM64_LDUMINLB  // ARMv8.1
	ARM64_LDUMINH   // ARMv8.1
	ARM64_LDUMINAH  // ARMv8.1
	ARM64_LDUMINALH // ARMv8.1
	ARM64_LDUMINLH  // ARMv8.1
	ARM64_LDUMIN    // ARMv8.1
	ARM64_LDUMINA   // ARMv8.1
	ARM64_LDUMINAL  // ARMv8.1
	ARM64_LDUMINL   // ARMv8.1
	ARM64_LDUR
	ARM64_LDURB
	ARM64_LDURH
	ARM64_LDURSB
	ARM64_LDURSH
	ARM64_LDURSW
	ARM64_LDXP
	ARM64_LDXR
	ARM64_LDXRB
	ARM64_LDXRH
	ARM64_LSL
	ARM64_LSR
	ARM64_MADD
	ARM64_MLA
	ARM64_MLS
	ARM64_MNEG
	ARM64_MOV
	ARM64_MOVI
	ARM64_MOVK
	ARM64_MOVN
	ARM64_MOVZ
	ARM64_MRS
	ARM64_MSR
	ARM64_MSUB
	ARM64_MUL
	ARM64_MVN
	ARM64_MVNI
	ARM64_NEG
	ARM64_NEGS
	ARM64_NGC
	ARM64_NGCS
	ARM64_NOP
	ARM64_NOT
	ARM64_ORN
	ARM64_ORR
	ARM64_PACDA     //Added for 8.3
	ARM64_PACDB     //Added for 8.3
	ARM64_PACDZA    //Added for 8.3
	ARM64_PACDZB    //Added for 8.3
	ARM64_PACGA     //Added for 8.3
	ARM64_PACIA     //Added for 8.3
	ARM64_PACIA1716 //Added for 8.3
	ARM64_PACIASP   //Added for 8.3
	ARM64_PACIAZ    //Added for 8.3
	ARM64_PACIB     //Added for 8.3
	ARM64_PACIB1716 //Added for 8.3
	ARM64_PACIBSP   //Added for 8.3
	ARM64_PACIBZ    //Added for 8.3
	ARM64_PACIZA    //Added for 8.3
	ARM64_PACIZB    //Added for 8.3
	ARM64_PSSBB
	ARM64_PMUL
	ARM64_PMULL
	ARM64_PMULL2
	ARM64_PRFM
	ARM64_PRFUM
	ARM64_PSB //Added for 8.2
	ARM64_RADDHN
	ARM64_RADDHN2
	ARM64_RBIT
	ARM64_RET
	ARM64_RETAA //Added for 8.3
	ARM64_RETAB //Added for 8.3
	ARM64_REV
	ARM64_REV16
	ARM64_REV32
	ARM64_REV64
	ARM64_ROR
	ARM64_RSHRN
	ARM64_RSHRN2
	ARM64_RSUBHN
	ARM64_RSUBHN2
	ARM64_SABA
	ARM64_SABAL
	ARM64_SABAL2
	ARM64_SABD
	ARM64_SABDL
	ARM64_SABDL2
	ARM64_SADALP
	ARM64_SADDL
	ARM64_SADDL2
	ARM64_SADDLP
	ARM64_SADDLV
	ARM64_SADDW
	ARM64_SADDW2
	ARM64_SB
	ARM64_SBC
	ARM64_SBCS
	ARM64_SBFIZ
	ARM64_SBFM
	ARM64_SBFX
	ARM64_SCVTF
	ARM64_SDIV
	ARM64_SDOT // ARMv8.2
	ARM64_SEV
	ARM64_SEVL
	ARM64_SHA1C
	ARM64_SHA1H
	ARM64_SHA1M
	ARM64_SHA1P
	ARM64_SHA1SU0
	ARM64_SHA1SU1
	ARM64_SHA256H
	ARM64_SHA256H2
	ARM64_SHA256SU0
	ARM64_SHA256SU1
	ARM64_SHADD
	ARM64_SHL
	ARM64_SHLL
	ARM64_SHLL2
	ARM64_SHRN
	ARM64_SHRN2
	ARM64_SHSUB
	ARM64_SLI
	ARM64_SMADDL
	ARM64_SMMLA // ARMv8.6
	ARM64_SMAX
	ARM64_SMAXP
	ARM64_SMAXV
	ARM64_SMC
	ARM64_SMIN
	ARM64_SMINP
	ARM64_SMINV
	ARM64_SMLAL
	ARM64_SMLAL2
	ARM64_SMLSL
	ARM64_SMLSL2
	ARM64_SMNEGL
	ARM64_SMOV
	ARM64_SMSUBL
	ARM64_SMULH
	ARM64_SMULL
	ARM64_SMULL2
	ARM64_SQABS
	ARM64_SQADD
	ARM64_SQDMLAL
	ARM64_SQDMLAL2
	ARM64_SQDMLSL
	ARM64_SQDMLSL2
	ARM64_SQDMULH
	ARM64_SQDMULL
	ARM64_SQDMULL2
	ARM64_SQNEG
	ARM64_SQRDMLAH // 8.1
	ARM64_SQRDMLSH // 8.1
	ARM64_SQRDMULH
	ARM64_SQRSHL
	ARM64_SQRSHRN
	ARM64_SQRSHRN2
	ARM64_SQRSHRUN
	ARM64_SQRSHRUN2
	ARM64_SQSHL
	ARM64_SQSHLU
	ARM64_SQSHRN
	ARM64_SQSHRN2
	ARM64_SQSHRUN
	ARM64_SQSHRUN2
	ARM64_SQSUB
	ARM64_SQXTN
	ARM64_SQXTN2
	ARM64_SQXTUN
	ARM64_SQXTUN2
	ARM64_SRHADD
	ARM64_SRI
	ARM64_SRSHL
	ARM64_SRSHR
	ARM64_SRSRA
	ARM64_SSBB
	ARM64_SSHL
	ARM64_SSHLL
	ARM64_SSHLL2
	ARM64_SSHR
	ARM64_SSRA
	ARM64_SSUBL
	ARM64_SSUBL2
	ARM64_SSUBW
	ARM64_SSUBW2
	ARM64_ST1
	ARM64_ST2
	ARM64_ST2G //Added for MTE
	ARM64_ST3
	ARM64_ST4
	ARM64_STADDLB
	ARM64_STCLRLH // 8.1
	ARM64_STEORL  // 8.1
	ARM64_STSETL  // 8.1
	ARM64_STSMAXB // 8.1
	ARM64_STSMINH // 8.1
	ARM64_STUMAX  // 8.1
	ARM64_STUMIN  // 8.1
	ARM64_STSMINL // 8.1
	ARM64_STG     //Added for MTE
	ARM64_STGM    //Added for MTE
	ARM64_STGP    //Added for MTE
	ARM64_STLLRB  // ARMv8.1
	ARM64_STLLRH  // ARMv8.1
	ARM64_STLLR   // ARMv8.1
	ARM64_STLR
	ARM64_STLRB
	ARM64_STLRH
	ARM64_STLUR  // ARMv8.4
	ARM64_STLURB // ARMv8.4
	ARM64_STLURH // ARMv8.4
	ARM64_STLXP
	ARM64_STLXR
	ARM64_STLXRB
	ARM64_STLXRH
	ARM64_STNP
	ARM64_STP
	ARM64_STR
	ARM64_STRB
	ARM64_STRH
	ARM64_STTR
	ARM64_STTRB
	ARM64_STTRH
	ARM64_STUR
	ARM64_STURB
	ARM64_STURH
	ARM64_STXP
	ARM64_STXR
	ARM64_STXRB
	ARM64_STXRH
	ARM64_STZ2G //Added for MTE
	ARM64_STZG  //Added for MTE
	ARM64_STZGM //Added for MTE
	ARM64_SUB
	ARM64_SUBG //Added for MTE
	ARM64_SUBHN
	ARM64_SUBHN2
	ARM64_SUBP  //Added for MTE
	ARM64_SUBPS //Added for MTE
	ARM64_SUBS
	ARM64_SUDOT // ARMv8.6
	ARM64_SUQADD
	ARM64_SWP    // 8.1
	ARM64_SWPA   // 8.1
	ARM64_SWPAB  // 8.1
	ARM64_SWPAH  // 8.1
	ARM64_SWPALB // 8.1
	ARM64_SWPALH // 8.1
	ARM64_SWPB   // 8.1
	ARM64_SWPH   // 8.1
	ARM64_SWPL   // 8.1
	ARM64_SWPLB  // 8.1
	ARM64_SWPLH  // 8.1
	ARM64_SWPAL  // 8.1
	ARM64_SVC
	ARM64_SXTB
	ARM64_SXTH
	ARM64_SXTW
	ARM64_SYS
	ARM64_SYSL
	ARM64_TBL
	ARM64_TBNZ
	ARM64_TBX
	ARM64_TBZ
	ARM64_TLBI
	ARM64_TRN1
	ARM64_TRN2
	ARM64_TST
	ARM64_UABA
	ARM64_UABAL
	ARM64_UABAL2
	ARM64_UABD
	ARM64_UABDL
	ARM64_UABDL2
	ARM64_UADALP
	ARM64_UADDL
	ARM64_UADDL2
	ARM64_UADDLP
	ARM64_UADDLV
	ARM64_UADDW
	ARM64_UADDW2
	ARM64_UBFIZ
	ARM64_UBFM
	ARM64_UBFX
	ARM64_UCVTF
	ARM64_UDIV
	ARM64_UDOT
	ARM64_UHADD
	ARM64_UHSUB
	ARM64_UMADDL
	ARM64_UMAX
	ARM64_UMAXP
	ARM64_UMAXV
	ARM64_UMIN
	ARM64_UMINP
	ARM64_UMINV
	ARM64_UMLAL
	ARM64_UMLAL2
	ARM64_UMLSL
	ARM64_UMLSL2
	ARM64_UMMLA  // ARMv8.6
	ARM64_USMMLA // ARMv8.6
	ARM64_UMNEGL
	ARM64_UMOV
	ARM64_UMSUBL
	ARM64_UMULH
	ARM64_UMULL
	ARM64_UMULL2
	ARM64_UQADD
	ARM64_UQRSHL
	ARM64_UQRSHRN
	ARM64_UQRSHRN2
	ARM64_UQSHL
	ARM64_UQSHRN
	ARM64_UQSHRN2
	ARM64_UQSUB
	ARM64_UQXTN
	ARM64_UQXTN2
	ARM64_URECPE
	ARM64_URHADD
	ARM64_URSHL
	ARM64_URSHR
	ARM64_URSQRTE
	ARM64_URSRA
	ARM64_USDOT // ARMv8.6
	ARM64_USHL
	ARM64_USHLL
	ARM64_USHLL2
	ARM64_USHR
	ARM64_USQADD
	ARM64_USRA
	ARM64_USUBL
	ARM64_USUBL2
	ARM64_USUBW
	ARM64_USUBW2
	ARM64_UXTB
	ARM64_UXTH
	ARM64_UZP1
	ARM64_UZP2
	ARM64_WFE
	ARM64_WFI
	ARM64_XPACD   //Added for 8.3
	ARM64_XPACI   //Added for 8.3
	ARM64_XPACLRI //Added for 8.3
	ARM64_XTN
	ARM64_XTN2
	ARM64_YIELD
	ARM64_ZIP1
	ARM64_ZIP2

	ARM64_BTI

	AMD64_END_TYPE //Not real instruction
)

func (Operation) String

func (o Operation) String() string

type Options

type Options struct {
	StartAddress int64
	DecimalImm   bool
}

Options Disassemble options

type PcRelAddressing

type PcRelAddressing uint32

func (PcRelAddressing) Group1

func (i PcRelAddressing) Group1() uint32

func (PcRelAddressing) Immhi

func (i PcRelAddressing) Immhi() int32

func (PcRelAddressing) Immlo

func (i PcRelAddressing) Immlo() uint32

func (PcRelAddressing) Op

func (i PcRelAddressing) Op() uint32

func (PcRelAddressing) Rd

func (i PcRelAddressing) Rd() uint32

type PointerAuth

type PointerAuth uint32

func (PointerAuth) Group1

func (i PointerAuth) Group1() uint32

func (PointerAuth) Group2

func (i PointerAuth) Group2() uint32

func (PointerAuth) Rd

func (i PointerAuth) Rd() uint32

func (PointerAuth) Rn

func (i PointerAuth) Rn() uint32

func (PointerAuth) Z

func (i PointerAuth) Z() uint32

type Register

type Register uint32
const (
	REG_NONE Register = iota
	REG_W0
	REG_W1
	REG_W2
	REG_W3
	REG_W4
	REG_W5
	REG_W6
	REG_W7
	REG_W8
	REG_W9
	REG_W10
	REG_W11
	REG_W12
	REG_W13
	REG_W14
	REG_W15
	REG_W16
	REG_W17
	REG_W18
	REG_W19
	REG_W20
	REG_W21
	REG_W22
	REG_W23
	REG_W24
	REG_W25
	REG_W26
	REG_W27
	REG_W28
	REG_W29
	REG_W30
	REG_WZR
	REG_WSP
	REG_X0
	REG_X1
	REG_X2
	REG_X3
	REG_X4
	REG_X5
	REG_X6
	REG_X7
	REG_X8
	REG_X9
	REG_X10
	REG_X11
	REG_X12
	REG_X13
	REG_X14
	REG_X15
	REG_X16
	REG_X17
	REG_X18
	REG_X19
	REG_X20
	REG_X21
	REG_X22
	REG_X23
	REG_X24
	REG_X25
	REG_X26
	REG_X27
	REG_X28
	REG_X29
	REG_X30
	REG_XZR
	REG_SP
	REG_V0
	REG_V1
	REG_V2
	REG_V3
	REG_V4
	REG_V5
	REG_V6
	REG_V7
	REG_V8
	REG_V9
	REG_V10
	REG_V11
	REG_V12
	REG_V13
	REG_V14
	REG_V15
	REG_V16
	REG_V17
	REG_V18
	REG_V19
	REG_V20
	REG_V21
	REG_V22
	REG_V23
	REG_V24
	REG_V25
	REG_V26
	REG_V27
	REG_V28
	REG_V29
	REG_V30
	REG_VZR
	REG_V31
	REG_B0
	REG_B1
	REG_B2
	REG_B3
	REG_B4
	REG_B5
	REG_B6
	REG_B7
	REG_B8
	REG_B9
	REG_B10
	REG_B11
	REG_B12
	REG_B13
	REG_B14
	REG_B15
	REG_B16
	REG_B17
	REG_B18
	REG_B19
	REG_B20
	REG_B21
	REG_B22
	REG_B23
	REG_B24
	REG_B25
	REG_B26
	REG_B27
	REG_B28
	REG_B29
	REG_B30
	REG_BZR
	REG_B31
	REG_H0
	REG_H1
	REG_H2
	REG_H3
	REG_H4
	REG_H5
	REG_H6
	REG_H7
	REG_H8
	REG_H9
	REG_H10
	REG_H11
	REG_H12
	REG_H13
	REG_H14
	REG_H15
	REG_H16
	REG_H17
	REG_H18
	REG_H19
	REG_H20
	REG_H21
	REG_H22
	REG_H23
	REG_H24
	REG_H25
	REG_H26
	REG_H27
	REG_H28
	REG_H29
	REG_H30
	REG_HZR
	REG_H31
	REG_S0
	REG_S1
	REG_S2
	REG_S3
	REG_S4
	REG_S5
	REG_S6
	REG_S7
	REG_S8
	REG_S9
	REG_S10
	REG_S11
	REG_S12
	REG_S13
	REG_S14
	REG_S15
	REG_S16
	REG_S17
	REG_S18
	REG_S19
	REG_S20
	REG_S21
	REG_S22
	REG_S23
	REG_S24
	REG_S25
	REG_S26
	REG_S27
	REG_S28
	REG_S29
	REG_S30
	REG_SZR
	REG_S31
	REG_D0
	REG_D1
	REG_D2
	REG_D3
	REG_D4
	REG_D5
	REG_D6
	REG_D7
	REG_D8
	REG_D9
	REG_D10
	REG_D11
	REG_D12
	REG_D13
	REG_D14
	REG_D15
	REG_D16
	REG_D17
	REG_D18
	REG_D19
	REG_D20
	REG_D21
	REG_D22
	REG_D23
	REG_D24
	REG_D25
	REG_D26
	REG_D27
	REG_D28
	REG_D29
	REG_D30
	REG_DZR
	REG_D31
	REG_Q0
	REG_Q1
	REG_Q2
	REG_Q3
	REG_Q4
	REG_Q5
	REG_Q6
	REG_Q7
	REG_Q8
	REG_Q9
	REG_Q10
	REG_Q11
	REG_Q12
	REG_Q13
	REG_Q14
	REG_Q15
	REG_Q16
	REG_Q17
	REG_Q18
	REG_Q19
	REG_Q20
	REG_Q21
	REG_Q22
	REG_Q23
	REG_Q24
	REG_Q25
	REG_Q26
	REG_Q27
	REG_Q28
	REG_Q29
	REG_Q30
	REG_QZR
	REG_Q31
	REG_PF0
	REG_PF1
	REG_PF2
	REG_PF3
	REG_PF4
	REG_PF5
	REG_PF6
	REG_PF7
	REG_PF8
	REG_PF9
	REG_PF10
	REG_PF11
	REG_PF12
	REG_PF13
	REG_PF14
	REG_PF15
	REG_PF16
	REG_PF17
	REG_PF18
	REG_PF19
	REG_PF20
	REG_PF21
	REG_PF22
	REG_PF23
	REG_PF24
	REG_PF25
	REG_PF26
	REG_PF27
	REG_PF28
	REG_PF29
	REG_PF30
	REG_PF31
	REG_END
)

func (Register) String

func (r Register) String() string

type Result

type Result struct {
	StrRepr     string
	Instruction *Instruction
	Error       error
}

Result Disassemble instruction result

type ShiftType

type ShiftType uint32
const (
	SHIFT_NONE ShiftType = iota
	SHIFT_LSL
	SHIFT_LSR
	SHIFT_ASR
	SHIFT_ROR
	SHIFT_UXTW
	SHIFT_SXTW
	SHIFT_SXTX
	SHIFT_UXTX
	SHIFT_SXTB
	SHIFT_SXTH
	SHIFT_UXTH
	SHIFT_UXTB
	SHIFT_MSL
	END_SHIFT
)

func (ShiftType) String

func (s ShiftType) String() string

type Simd2RegMisc

type Simd2RegMisc uint32

func (Simd2RegMisc) Group1

func (i Simd2RegMisc) Group1() uint32

func (Simd2RegMisc) Group2

func (i Simd2RegMisc) Group2() uint32

func (Simd2RegMisc) Group3

func (i Simd2RegMisc) Group3() uint32

func (Simd2RegMisc) Group4

func (i Simd2RegMisc) Group4() uint32

func (Simd2RegMisc) Opcode

func (i Simd2RegMisc) Opcode() uint32

func (Simd2RegMisc) Q

func (i Simd2RegMisc) Q() uint32

func (Simd2RegMisc) Rd

func (i Simd2RegMisc) Rd() uint32

func (Simd2RegMisc) Rn

func (i Simd2RegMisc) Rn() uint32

func (Simd2RegMisc) Size

func (i Simd2RegMisc) Size() uint32

func (Simd2RegMisc) String

func (i Simd2RegMisc) String() string

func (Simd2RegMisc) U

func (i Simd2RegMisc) U() uint32

type Simd3Different

type Simd3Different uint32

func (Simd3Different) Group1

func (i Simd3Different) Group1() uint32

func (Simd3Different) Group2

func (i Simd3Different) Group2() uint32

func (Simd3Different) Group3

func (i Simd3Different) Group3() uint32

func (Simd3Different) Group4

func (i Simd3Different) Group4() uint32

func (Simd3Different) Opcode

func (i Simd3Different) Opcode() uint32

func (Simd3Different) Q

func (i Simd3Different) Q() uint32

func (Simd3Different) Rd

func (i Simd3Different) Rd() uint32

func (Simd3Different) Rm

func (i Simd3Different) Rm() uint32

func (Simd3Different) Rn

func (i Simd3Different) Rn() uint32

func (Simd3Different) Size

func (i Simd3Different) Size() uint32

func (Simd3Different) U

func (i Simd3Different) U() uint32

type Simd3Same

type Simd3Same uint32

func (Simd3Same) Group1

func (i Simd3Same) Group1() uint32

func (Simd3Same) Group2

func (i Simd3Same) Group2() uint32

func (Simd3Same) Group3

func (i Simd3Same) Group3() uint32

func (Simd3Same) Group4

func (i Simd3Same) Group4() uint32

func (Simd3Same) Opcode

func (i Simd3Same) Opcode() uint32

func (Simd3Same) Q

func (i Simd3Same) Q() uint32

func (Simd3Same) Rd

func (i Simd3Same) Rd() uint32

func (Simd3Same) Rm

func (i Simd3Same) Rm() uint32

func (Simd3Same) Rn

func (i Simd3Same) Rn() uint32

func (Simd3Same) Size

func (i Simd3Same) Size() uint32

func (Simd3Same) U

func (i Simd3Same) U() uint32

type SimdAcrossLanes

type SimdAcrossLanes uint32

func (SimdAcrossLanes) Group1

func (i SimdAcrossLanes) Group1() uint32

func (SimdAcrossLanes) Group2

func (i SimdAcrossLanes) Group2() uint32

func (SimdAcrossLanes) Group3

func (i SimdAcrossLanes) Group3() uint32

func (SimdAcrossLanes) Group4

func (i SimdAcrossLanes) Group4() uint32

func (SimdAcrossLanes) Opcode

func (i SimdAcrossLanes) Opcode() uint32

func (SimdAcrossLanes) Q

func (i SimdAcrossLanes) Q() uint32

func (SimdAcrossLanes) Rd

func (i SimdAcrossLanes) Rd() uint32

func (SimdAcrossLanes) Rn

func (i SimdAcrossLanes) Rn() uint32

func (SimdAcrossLanes) Size

func (i SimdAcrossLanes) Size() uint32

func (SimdAcrossLanes) U

func (i SimdAcrossLanes) U() uint32

type SimdBFloat16

type SimdBFloat16 uint32

C3.5.28 SIMD BFloat16

func (SimdBFloat16) Group1

func (i SimdBFloat16) Group1() uint32

func (SimdBFloat16) Group2

func (i SimdBFloat16) Group2() uint32

func (SimdBFloat16) Q

func (i SimdBFloat16) Q() uint32

func (SimdBFloat16) Rd

func (i SimdBFloat16) Rd() uint32

func (SimdBFloat16) Rm

func (i SimdBFloat16) Rm() uint32

func (SimdBFloat16) Rn

func (i SimdBFloat16) Rn() uint32

func (SimdBFloat16) String

func (i SimdBFloat16) String() string

type SimdCopy

type SimdCopy uint32

func (SimdCopy) Group1

func (i SimdCopy) Group1() uint32

func (SimdCopy) Group2

func (i SimdCopy) Group2() uint32

func (SimdCopy) Group3

func (i SimdCopy) Group3() uint32

func (SimdCopy) Group4

func (i SimdCopy) Group4() uint32

func (SimdCopy) Imm4

func (i SimdCopy) Imm4() uint32

func (SimdCopy) Imm5

func (i SimdCopy) Imm5() uint32

func (SimdCopy) Op

func (i SimdCopy) Op() uint32

func (SimdCopy) Q

func (i SimdCopy) Q() uint32

func (SimdCopy) Rd

func (i SimdCopy) Rd() uint32

func (SimdCopy) Rn

func (i SimdCopy) Rn() uint32

type SimdExtract

type SimdExtract uint32

func (SimdExtract) Group1

func (i SimdExtract) Group1() uint32

func (SimdExtract) Group2

func (i SimdExtract) Group2() uint32

func (SimdExtract) Group3

func (i SimdExtract) Group3() uint32

func (SimdExtract) Group4

func (i SimdExtract) Group4() uint32

func (SimdExtract) Group5

func (i SimdExtract) Group5() uint32

func (SimdExtract) Imm

func (i SimdExtract) Imm() uint32

func (SimdExtract) Op2

func (i SimdExtract) Op2() uint32

func (SimdExtract) Q

func (i SimdExtract) Q() uint32

func (SimdExtract) Rd

func (i SimdExtract) Rd() uint32

func (SimdExtract) Rm

func (i SimdExtract) Rm() uint32

func (SimdExtract) Rn

func (i SimdExtract) Rn() uint32

type SimdLdstMult

type SimdLdstMult uint32

func (SimdLdstMult) Group1

func (i SimdLdstMult) Group1() uint32

func (SimdLdstMult) Group2

func (i SimdLdstMult) Group2() uint32

func (SimdLdstMult) Group3

func (i SimdLdstMult) Group3() uint32

func (SimdLdstMult) L

func (i SimdLdstMult) L() uint32

func (SimdLdstMult) Opcode

func (i SimdLdstMult) Opcode() uint32

func (SimdLdstMult) Q

func (i SimdLdstMult) Q() uint32

func (SimdLdstMult) Rn

func (i SimdLdstMult) Rn() uint32

func (SimdLdstMult) Rt

func (i SimdLdstMult) Rt() uint32

func (SimdLdstMult) Size

func (i SimdLdstMult) Size() uint32

type SimdLdstMultPi

type SimdLdstMultPi uint32

func (SimdLdstMultPi) Group1

func (i SimdLdstMultPi) Group1() uint32

func (SimdLdstMultPi) Group2

func (i SimdLdstMultPi) Group2() uint32

func (SimdLdstMultPi) Group3

func (i SimdLdstMultPi) Group3() uint32

func (SimdLdstMultPi) L

func (i SimdLdstMultPi) L() uint32

func (SimdLdstMultPi) Opcode

func (i SimdLdstMultPi) Opcode() uint32

func (SimdLdstMultPi) Q

func (i SimdLdstMultPi) Q() uint32

func (SimdLdstMultPi) Rm

func (i SimdLdstMultPi) Rm() uint32

func (SimdLdstMultPi) Rn

func (i SimdLdstMultPi) Rn() uint32

func (SimdLdstMultPi) Rt

func (i SimdLdstMultPi) Rt() uint32

func (SimdLdstMultPi) Size

func (i SimdLdstMultPi) Size() uint32

type SimdLdstSingle

type SimdLdstSingle uint32

func (SimdLdstSingle) Group1

func (i SimdLdstSingle) Group1() uint32

func (SimdLdstSingle) Group2

func (i SimdLdstSingle) Group2() uint32

func (SimdLdstSingle) Group3

func (i SimdLdstSingle) Group3() uint32

func (SimdLdstSingle) L

func (i SimdLdstSingle) L() uint32

func (SimdLdstSingle) Opcode

func (i SimdLdstSingle) Opcode() uint32

func (SimdLdstSingle) Q

func (i SimdLdstSingle) Q() uint32

func (SimdLdstSingle) R

func (i SimdLdstSingle) R() uint32

func (SimdLdstSingle) Rn

func (i SimdLdstSingle) Rn() uint32

func (SimdLdstSingle) Rt

func (i SimdLdstSingle) Rt() uint32

func (SimdLdstSingle) S

func (i SimdLdstSingle) S() uint32

func (SimdLdstSingle) Size

func (i SimdLdstSingle) Size() uint32

type SimdLdstSinglePi

type SimdLdstSinglePi uint32

func (SimdLdstSinglePi) Group1

func (i SimdLdstSinglePi) Group1() uint32

func (SimdLdstSinglePi) Group2

func (i SimdLdstSinglePi) Group2() uint32

func (SimdLdstSinglePi) L

func (i SimdLdstSinglePi) L() uint32

func (SimdLdstSinglePi) Opcode

func (i SimdLdstSinglePi) Opcode() uint32

func (SimdLdstSinglePi) Q

func (i SimdLdstSinglePi) Q() uint32

func (SimdLdstSinglePi) R

func (i SimdLdstSinglePi) R() uint32

func (SimdLdstSinglePi) Rm

func (i SimdLdstSinglePi) Rm() uint32

func (SimdLdstSinglePi) Rn

func (i SimdLdstSinglePi) Rn() uint32

func (SimdLdstSinglePi) Rt

func (i SimdLdstSinglePi) Rt() uint32

func (SimdLdstSinglePi) S

func (i SimdLdstSinglePi) S() uint32

func (SimdLdstSinglePi) Size

func (i SimdLdstSinglePi) Size() uint32

type SimdModifiedImm

type SimdModifiedImm uint32

func (SimdModifiedImm) A

func (i SimdModifiedImm) A() uint32

func (SimdModifiedImm) B

func (i SimdModifiedImm) B() uint32

func (SimdModifiedImm) C

func (i SimdModifiedImm) C() uint32

func (SimdModifiedImm) Cmode

func (i SimdModifiedImm) Cmode() uint32

func (SimdModifiedImm) D

func (i SimdModifiedImm) D() uint32

func (SimdModifiedImm) E

func (i SimdModifiedImm) E() uint32

func (SimdModifiedImm) F

func (i SimdModifiedImm) F() uint32

func (SimdModifiedImm) G

func (i SimdModifiedImm) G() uint32

func (SimdModifiedImm) Group1

func (i SimdModifiedImm) Group1() uint32

func (SimdModifiedImm) Group2

func (i SimdModifiedImm) Group2() uint32

func (SimdModifiedImm) Group3

func (i SimdModifiedImm) Group3() uint32

func (SimdModifiedImm) H

func (i SimdModifiedImm) H() uint32

func (SimdModifiedImm) O2

func (i SimdModifiedImm) O2() uint32

func (SimdModifiedImm) Op

func (i SimdModifiedImm) Op() uint32

func (SimdModifiedImm) Q

func (i SimdModifiedImm) Q() uint32

func (SimdModifiedImm) Rd

func (i SimdModifiedImm) Rd() uint32

type SimdPermute

type SimdPermute uint32

func (SimdPermute) Group1

func (i SimdPermute) Group1() uint32

func (SimdPermute) Group2

func (i SimdPermute) Group2() uint32

func (SimdPermute) Group3

func (i SimdPermute) Group3() uint32

func (SimdPermute) Group4

func (i SimdPermute) Group4() uint32

func (SimdPermute) Group5

func (i SimdPermute) Group5() uint32

func (SimdPermute) Opcode

func (i SimdPermute) Opcode() uint32

func (SimdPermute) Q

func (i SimdPermute) Q() uint32

func (SimdPermute) Rd

func (i SimdPermute) Rd() uint32

func (SimdPermute) Rm

func (i SimdPermute) Rm() uint32

func (SimdPermute) Rn

func (i SimdPermute) Rn() uint32

func (SimdPermute) Size

func (i SimdPermute) Size() uint32

type SimdRound

type SimdRound uint32

func (SimdRound) Group1

func (i SimdRound) Group1() uint32

func (SimdRound) Group2

func (i SimdRound) Group2() uint32

func (SimdRound) Group3

func (i SimdRound) Group3() uint32

func (SimdRound) Group4

func (i SimdRound) Group4() uint32

func (SimdRound) Group5

func (i SimdRound) Group5() uint32

func (SimdRound) Opcode

func (i SimdRound) Opcode() uint32

func (SimdRound) Q

func (i SimdRound) Q() uint32

func (SimdRound) Rd

func (i SimdRound) Rd() uint32

func (SimdRound) Rn

func (i SimdRound) Rn() uint32

func (SimdRound) Size

func (i SimdRound) Size() uint32

func (SimdRound) String

func (i SimdRound) String() string

func (SimdRound) U

func (i SimdRound) U() uint32

type SimdScalar2RegisterMisc

type SimdScalar2RegisterMisc uint32

func (SimdScalar2RegisterMisc) Group1

func (i SimdScalar2RegisterMisc) Group1() uint32

func (SimdScalar2RegisterMisc) Group2

func (i SimdScalar2RegisterMisc) Group2() uint32

func (SimdScalar2RegisterMisc) Group3

func (i SimdScalar2RegisterMisc) Group3() uint32

func (SimdScalar2RegisterMisc) Group4

func (i SimdScalar2RegisterMisc) Group4() uint32

func (SimdScalar2RegisterMisc) Opcode

func (i SimdScalar2RegisterMisc) Opcode() uint32

func (SimdScalar2RegisterMisc) Rd

func (SimdScalar2RegisterMisc) Rn

func (SimdScalar2RegisterMisc) Size

func (SimdScalar2RegisterMisc) U

type SimdScalar3Different

type SimdScalar3Different uint32

func (SimdScalar3Different) Group1

func (i SimdScalar3Different) Group1() uint32

func (SimdScalar3Different) Group2

func (i SimdScalar3Different) Group2() uint32

func (SimdScalar3Different) Group3

func (i SimdScalar3Different) Group3() uint32

func (SimdScalar3Different) Group4

func (i SimdScalar3Different) Group4() uint32

func (SimdScalar3Different) Opcode

func (i SimdScalar3Different) Opcode() uint32

func (SimdScalar3Different) Rd

func (SimdScalar3Different) Rm

func (SimdScalar3Different) Rn

func (SimdScalar3Different) Size

func (i SimdScalar3Different) Size() uint32

func (SimdScalar3Different) U

type SimdScalar3RegisterExt

type SimdScalar3RegisterExt uint32

func (SimdScalar3RegisterExt) Group1

func (i SimdScalar3RegisterExt) Group1() uint32

func (SimdScalar3RegisterExt) Group2

func (i SimdScalar3RegisterExt) Group2() uint32

func (SimdScalar3RegisterExt) Group3

func (i SimdScalar3RegisterExt) Group3() uint32

func (SimdScalar3RegisterExt) Group4

func (i SimdScalar3RegisterExt) Group4() uint32

func (SimdScalar3RegisterExt) Group5

func (i SimdScalar3RegisterExt) Group5() uint32

func (SimdScalar3RegisterExt) Opcode

func (i SimdScalar3RegisterExt) Opcode() uint32

func (SimdScalar3RegisterExt) Q

func (SimdScalar3RegisterExt) Rd

func (SimdScalar3RegisterExt) Rm

func (SimdScalar3RegisterExt) Rn

func (SimdScalar3RegisterExt) Size

func (i SimdScalar3RegisterExt) Size() uint32

func (SimdScalar3RegisterExt) String

func (i SimdScalar3RegisterExt) String() string

func (SimdScalar3RegisterExt) U

type SimdScalar3Same

type SimdScalar3Same uint32

func (SimdScalar3Same) Group1

func (i SimdScalar3Same) Group1() uint32

func (SimdScalar3Same) Group2

func (i SimdScalar3Same) Group2() uint32

func (SimdScalar3Same) Group3

func (i SimdScalar3Same) Group3() uint32

func (SimdScalar3Same) Group4

func (i SimdScalar3Same) Group4() uint32

func (SimdScalar3Same) Opcode

func (i SimdScalar3Same) Opcode() uint32

func (SimdScalar3Same) Rd

func (i SimdScalar3Same) Rd() uint32

func (SimdScalar3Same) Rm

func (i SimdScalar3Same) Rm() uint32

func (SimdScalar3Same) Rn

func (i SimdScalar3Same) Rn() uint32

func (SimdScalar3Same) Size

func (i SimdScalar3Same) Size() uint32

func (SimdScalar3Same) U

func (i SimdScalar3Same) U() uint32

type SimdScalarCopy

type SimdScalarCopy uint32

func (SimdScalarCopy) Group1

func (i SimdScalarCopy) Group1() uint32

func (SimdScalarCopy) Group2

func (i SimdScalarCopy) Group2() uint32

func (SimdScalarCopy) Group3

func (i SimdScalarCopy) Group3() uint32

func (SimdScalarCopy) Group4

func (i SimdScalarCopy) Group4() uint32

func (SimdScalarCopy) Imm4

func (i SimdScalarCopy) Imm4() uint32

func (SimdScalarCopy) Imm5

func (i SimdScalarCopy) Imm5() uint32

func (SimdScalarCopy) Op

func (i SimdScalarCopy) Op() uint32

func (SimdScalarCopy) Rd

func (i SimdScalarCopy) Rd() uint32

func (SimdScalarCopy) Rn

func (i SimdScalarCopy) Rn() uint32

type SimdScalarPairwise

type SimdScalarPairwise uint32

func (SimdScalarPairwise) Group1

func (i SimdScalarPairwise) Group1() uint32

func (SimdScalarPairwise) Group2

func (i SimdScalarPairwise) Group2() uint32

func (SimdScalarPairwise) Group3

func (i SimdScalarPairwise) Group3() uint32

func (SimdScalarPairwise) Group4

func (i SimdScalarPairwise) Group4() uint32

func (SimdScalarPairwise) Opcode

func (i SimdScalarPairwise) Opcode() uint32

func (SimdScalarPairwise) Rd

func (i SimdScalarPairwise) Rd() uint32

func (SimdScalarPairwise) Rn

func (i SimdScalarPairwise) Rn() uint32

func (SimdScalarPairwise) Size

func (i SimdScalarPairwise) Size() uint32

func (SimdScalarPairwise) U

func (i SimdScalarPairwise) U() uint32

type SimdScalarShiftByImm

type SimdScalarShiftByImm uint32

func (SimdScalarShiftByImm) Group1

func (i SimdScalarShiftByImm) Group1() uint32

func (SimdScalarShiftByImm) Group2

func (i SimdScalarShiftByImm) Group2() uint32

func (SimdScalarShiftByImm) Group3

func (i SimdScalarShiftByImm) Group3() uint32

func (SimdScalarShiftByImm) Immb

func (i SimdScalarShiftByImm) Immb() uint32

func (SimdScalarShiftByImm) Immh

func (i SimdScalarShiftByImm) Immh() uint32

func (SimdScalarShiftByImm) Opcode

func (i SimdScalarShiftByImm) Opcode() uint32

func (SimdScalarShiftByImm) Rd

func (SimdScalarShiftByImm) Rn

func (SimdScalarShiftByImm) U

type SimdScalarXIndexedElement

type SimdScalarXIndexedElement uint32

func (SimdScalarXIndexedElement) Group1

func (i SimdScalarXIndexedElement) Group1() uint32

func (SimdScalarXIndexedElement) Group2

func (i SimdScalarXIndexedElement) Group2() uint32

func (SimdScalarXIndexedElement) Group3

func (i SimdScalarXIndexedElement) Group3() uint32

func (SimdScalarXIndexedElement) H

func (SimdScalarXIndexedElement) L

func (SimdScalarXIndexedElement) M

func (SimdScalarXIndexedElement) Opcode

func (i SimdScalarXIndexedElement) Opcode() uint32

func (SimdScalarXIndexedElement) Rd

func (SimdScalarXIndexedElement) Rm

func (SimdScalarXIndexedElement) Rn

func (SimdScalarXIndexedElement) Size

func (SimdScalarXIndexedElement) U

type SimdShiftByImm

type SimdShiftByImm uint32

func (SimdShiftByImm) Group1

func (i SimdShiftByImm) Group1() uint32

func (SimdShiftByImm) Group2

func (i SimdShiftByImm) Group2() uint32

func (SimdShiftByImm) Group3

func (i SimdShiftByImm) Group3() uint32

func (SimdShiftByImm) Immb

func (i SimdShiftByImm) Immb() uint32

func (SimdShiftByImm) Immh

func (i SimdShiftByImm) Immh() uint32

func (SimdShiftByImm) Opcode

func (i SimdShiftByImm) Opcode() uint32

func (SimdShiftByImm) Q

func (i SimdShiftByImm) Q() uint32

func (SimdShiftByImm) Rd

func (i SimdShiftByImm) Rd() uint32

func (SimdShiftByImm) Rn

func (i SimdShiftByImm) Rn() uint32

func (SimdShiftByImm) U

func (i SimdShiftByImm) U() uint32

type SimdTableLookup

type SimdTableLookup uint32

func (SimdTableLookup) Group1

func (i SimdTableLookup) Group1() uint32

func (SimdTableLookup) Group2

func (i SimdTableLookup) Group2() uint32

func (SimdTableLookup) Group3

func (i SimdTableLookup) Group3() uint32

func (SimdTableLookup) Group4

func (i SimdTableLookup) Group4() uint32

func (SimdTableLookup) Len

func (i SimdTableLookup) Len() uint32

func (SimdTableLookup) Op

func (i SimdTableLookup) Op() uint32

func (SimdTableLookup) Q

func (i SimdTableLookup) Q() uint32

func (SimdTableLookup) Rd

func (i SimdTableLookup) Rd() uint32

func (SimdTableLookup) Rm

func (i SimdTableLookup) Rm() uint32

func (SimdTableLookup) Rn

func (i SimdTableLookup) Rn() uint32

type SimdVectorXIndexedElement

type SimdVectorXIndexedElement uint32

func (SimdVectorXIndexedElement) Group1

func (i SimdVectorXIndexedElement) Group1() uint32

func (SimdVectorXIndexedElement) Group2

func (i SimdVectorXIndexedElement) Group2() uint32

func (SimdVectorXIndexedElement) Group3

func (i SimdVectorXIndexedElement) Group3() uint32

func (SimdVectorXIndexedElement) H

func (SimdVectorXIndexedElement) L

func (SimdVectorXIndexedElement) M

func (SimdVectorXIndexedElement) Opcode

func (i SimdVectorXIndexedElement) Opcode() uint32

func (SimdVectorXIndexedElement) Q

func (SimdVectorXIndexedElement) Rd

func (SimdVectorXIndexedElement) Rm

func (SimdVectorXIndexedElement) Rn

func (SimdVectorXIndexedElement) Size

func (SimdVectorXIndexedElement) String

func (i SimdVectorXIndexedElement) String() string

func (SimdVectorXIndexedElement) U

type System

type System uint32

func (System) Crm

func (i System) Crm() uint32

func (System) Crn

func (i System) Crn() uint32

func (System) Group1

func (i System) Group1() uint32

func (System) L

func (i System) L() uint32

func (System) Op0

func (i System) Op0() uint32

func (System) Op1

func (i System) Op1() uint32

func (System) Op2

func (i System) Op2() uint32

func (System) Rt

func (i System) Rt() uint32

func (System) String

func (i System) String() string

type SystemReg

type SystemReg uint32
const (
	SYSREG_NONE SystemReg = iota
	REG_ACTLR_EL1
	REG_ACTLR_EL2
	REG_ACTLR_EL3
	REG_AFSR0_EL1
	REG_AFSR0_EL12
	REG_AFSR1_EL2
	REG_AFSR0_EL2
	REG_AFSR0_EL3
	REG_AFSR1_EL1
	REG_AFSR1_EL12
	REG_AFSR1_EL3
	REG_AIDR_EL1
	REG_ALLE1
	REG_ALLE1IS
	REG_ALLE2
	REG_ALLE2IS
	REG_ALLE3
	REG_ALLE3IS
	REG_AMAIR_EL1
	REG_AMAIR_EL12
	REG_AMAIR_EL2
	REG_AMAIR_EL3
	REG_AMEVCNTVOFF00_EL2
	REG_AMEVCNTVOFF01_EL2
	REG_AMEVCNTVOFF02_EL2
	REG_AMEVCNTVOFF03_EL2
	REG_AMEVCNTVOFF04_EL2
	REG_AMEVCNTVOFF05_EL2
	REG_AMEVCNTVOFF06_EL2
	REG_AMEVCNTVOFF07_EL2
	REG_AMEVCNTVOFF08_EL2
	REG_AMEVCNTVOFF09_EL2
	REG_AMEVCNTVOFF010_EL2
	REG_AMEVCNTVOFF011_EL2
	REG_AMEVCNTVOFF012_EL2
	REG_AMEVCNTVOFF013_EL2
	REG_AMEVCNTVOFF014_EL2
	REG_AMEVCNTVOFF015_EL2
	REG_AMEVCNTVOFF10_EL2
	REG_AMEVCNTVOFF11_EL2
	REG_AMEVCNTVOFF12_EL2
	REG_AMEVCNTVOFF13_EL2
	REG_AMEVCNTVOFF14_EL2
	REG_AMEVCNTVOFF15_EL2
	REG_AMEVCNTVOFF16_EL2
	REG_AMEVCNTVOFF17_EL2
	REG_AMEVCNTVOFF18_EL2
	REG_AMEVCNTVOFF19_EL2
	REG_AMEVCNTVOFF110_EL2
	REG_AMEVCNTVOFF111_EL2
	REG_AMEVCNTVOFF112_EL2
	REG_AMEVCNTVOFF113_EL2
	REG_AMEVCNTVOFF114_EL2
	REG_AMEVCNTVOFF115_EL2
	REG_APDAKEYHI_EL1
	REG_APDAKEYLO_EL1
	REG_APDBKEYHI_EL1
	REG_APDBKEYLO_EL1
	REG_APGAKEYHI_EL1
	REG_APGAKEYLO_EL1
	REG_APIAKEYHI_EL1
	REG_APIAKEYLO_EL1
	REG_APIBKEYHI_EL1
	REG_APIBKEYLO_EL1
	REG_ASIDE1
	REG_ASIDE1IS
	REG_CCSIDR_EL1
	REG_CISW
	REG_CIGSW
	REG_CIGDSW
	REG_CIGVAC
	REG_CIGDVAC
	REG_CIVAC
	REG_CLIDR_EL1
	REG_CNTFRQ_EL0
	REG_CNTHCTL_EL2
	REG_CNTHP_CTL_EL2
	REG_CNTHP_CVAL_EL2
	REG_CNTHP_TVAL_EL2
	REG_CNTHV_TVAL_EL2
	REG_CNTHV_CVAL_EL2
	REG_CNTHV_CTL_EL2
	REG_CNTKCTL_EL1
	REG_CNTKCTL_EL12
	REG_CNTPCT_EL0
	REG_CNTPS_CTL_EL1
	REG_CNTPS_CVAL_EL1
	REG_CNTPS_TVAL_EL1
	REG_CNTP_CTL_EL0
	REG_CNTP_CTL_EL02
	REG_CNTP_CVAL_EL0
	REG_CNTP_CVAL_EL02
	REG_CNTP_TVAL_EL0
	REG_CNTP_TVAL_EL02
	REG_CNTVCT_EL0
	REG_CNTV_CTL_EL0
	REG_CNTV_CTL_EL02
	REG_CNTV_CVAL_EL0
	REG_CNTV_CVAL_EL02
	REG_CNTV_TVAL_EL0
	REG_CNTV_TVAL_EL02
	REG_CNTSCALE_EL2
	REG_CNTISCALE_EL2
	REG_CNTPOFF_EL2
	REG_CNTVFRQ_EL2
	REG_CNTVCTSS_EL0
	REG_CONTEXTIDR_EL1
	REG_CONTEXTIDR_EL12
	REG_CONTEXTIDR_EL2
	REG_CPACR_EL1
	REG_CPACR_EL12
	REG_CPTR_EL2
	REG_CPTR_EL3
	REG_CSSELR_EL1
	REG_CSYNC
	REG_CSW
	REG_CGSW
	REG_CGDSW
	REG_CGVAC
	REG_CGDVAC
	REG_CTR_EL0
	REG_CVAC
	REG_CVAU
	REG_CVAP
	REG_CGVAP
	REG_CGDVAP
	REG_CVADP
	REG_CGVADP
	REG_CGDVADP
	REG_DACR32_EL2
	REG_DAIFCLR
	REG_DAIFSET
	REG_DBGAUTHSTATUS_EL1
	REG_DBGCLAIMCLR_EL1
	REG_DBGCLAIMSET_EL1
	REG_DBGBCR0_EL1
	REG_DBGBCR10_EL1
	REG_DBGBCR11_EL1
	REG_DBGBCR12_EL1
	REG_DBGBCR13_EL1
	REG_DBGBCR14_EL1
	REG_DBGBCR15_EL1
	REG_DBGBCR1_EL1
	REG_DBGBCR2_EL1
	REG_DBGBCR3_EL1
	REG_DBGBCR4_EL1
	REG_DBGBCR5_EL1
	REG_DBGBCR6_EL1
	REG_DBGBCR7_EL1
	REG_DBGBCR8_EL1
	REG_DBGBCR9_EL1
	REG_DBGDTRRX_EL0
	REG_DBGDTRTX_EL0
	REG_DBGDTR_EL0
	REG_DBGPRCR_EL1
	REG_DBGVCR32_EL2
	REG_DBGBVR0_EL1
	REG_DBGBVR10_EL1
	REG_DBGBVR11_EL1
	REG_DBGBVR12_EL1
	REG_DBGBVR13_EL1
	REG_DBGBVR14_EL1
	REG_DBGBVR15_EL1
	REG_DBGBVR1_EL1
	REG_DBGBVR2_EL1
	REG_DBGBVR3_EL1
	REG_DBGBVR4_EL1
	REG_DBGBVR5_EL1
	REG_DBGBVR6_EL1
	REG_DBGBVR7_EL1
	REG_DBGBVR8_EL1
	REG_DBGBVR9_EL1
	REG_DBGWCR0_EL1
	REG_DBGWCR10_EL1
	REG_DBGWCR11_EL1
	REG_DBGWCR12_EL1
	REG_DBGWCR13_EL1
	REG_DBGWCR14_EL1
	REG_DBGWCR15_EL1
	REG_DBGWCR1_EL1
	REG_DBGWCR2_EL1
	REG_DBGWCR3_EL1
	REG_DBGWCR4_EL1
	REG_DBGWCR5_EL1
	REG_DBGWCR6_EL1
	REG_DBGWCR7_EL1
	REG_DBGWCR8_EL1
	REG_DBGWCR9_EL1
	REG_DBGWVR0_EL1
	REG_DBGWVR10_EL1
	REG_DBGWVR11_EL1
	REG_DBGWVR12_EL1
	REG_DBGWVR13_EL1
	REG_DBGWVR14_EL1
	REG_DBGWVR15_EL1
	REG_DBGWVR1_EL1
	REG_DBGWVR2_EL1
	REG_DBGWVR3_EL1
	REG_DBGWVR4_EL1
	REG_DBGWVR5_EL1
	REG_DBGWVR6_EL1
	REG_DBGWVR7_EL1
	REG_DBGWVR8_EL1
	REG_DBGWVR9_EL1
	REG_DCZID_EL0
	REG_EL1
	REG_ESR_EL1
	REG_ESR_EL12
	REG_ESR_EL2
	REG_ESR_EL3
	REG_FAR_EL1
	REG_FAR_EL12
	REG_FAR_EL2
	REG_FAR_EL3
	REG_GCR_EL1
	REG_GMID_EL1
	REG_HACR_EL2
	REG_HCR_EL2
	REG_HPFAR_EL2
	REG_HSTR_EL2
	REG_HFGRTR_EL2
	REG_HFGWTR_EL2
	REG_HFGITR_EL2
	REG_HDFGRTR_EL2
	REG_HDFGWTR_EL2
	REG_IALLU
	REG_IVAU
	REG_IALLUIS
	REG_ID_AA64AFR0_EL1
	REG_ID_AA64AFR1_EL1
	REG_ID_AA64DFR0_EL1
	REG_ID_AA64DFR1_EL1
	REG_ID_AA64ISAR0_EL1
	REG_ID_AA64ISAR1_EL1
	REG_ID_AA64MMFR0_EL1
	REG_ID_AA64MMFR1_EL1
	REG_ID_AA64MMFR2_EL1
	REG_ID_AA64PFR0_EL1
	REG_ID_AA64PFR1_EL1
	REG_IPAS2E1IS
	REG_IPAS2LE1IS
	REG_IPAS2E1
	REG_IPAS2LE1
	REG_ISR_EL1
	REG_ISW
	REG_IGSW
	REG_IGDSW
	REG_IVAC
	REG_IGVAC
	REG_IGDVAC
	REG_MAIR_EL1
	REG_MAIR_EL12
	REG_MAIR_EL2
	REG_MAIR_EL3
	REG_MDCCINT_EL1
	REG_MDCCSR_EL0
	REG_MDCR_EL2
	REG_MDCR_EL3
	REG_MDRAR_EL1
	REG_MDSCR_EL1
	REG_MVFR0_EL1
	REG_MVFR1_EL1
	REG_MVFR2_EL1
	REG_OSDTRRX_EL1
	REG_OSDTRTX_EL1
	REG_OSECCR_EL1
	REG_OSLAR_EL1
	REG_OSDLR_EL1
	REG_OSLSR_EL1
	REG_PAN
	REG_PAR_EL1
	REG_PMBIDR_EL1
	REG_PMBLIMITR_EL1
	REG_PMBPTR_EL1
	REG_PMBSR_EL1
	REG_PMSCR_EL2
	REG_PMSCR_EL12
	REG_PMSCR_EL1
	REG_PMSICR_EL1
	REG_PMSIRR_EL1
	REG_PMSFCR_EL1
	REG_PMSEVFR_EL1
	REG_PMSLATFR_EL1
	REG_PMSIDR_EL1
	REG_PMCCNTR_EL0
	REG_PMCEID0_EL0
	REG_PMCEID1_EL0
	REG_PMCNTENSET_EL0
	REG_PMCR_EL0
	REG_PMCNTENCLR_EL0
	REG_PMINTENCLR_EL1
	REG_PMINTENSET_EL1
	REG_PMOVSCLR_EL0
	REG_PMOVSSET_EL0
	REG_PMSELR_EL0
	REG_PMSWINC_EL0
	REG_PMUSERENR_EL0
	REG_PMXEVCNTR_EL0
	REG_PMXEVTYPER_EL0
	REG_RCTX
	REG_RGSR_EL1
	REG_RMR_EL1
	REG_RMR_EL2
	REG_RMR_EL3
	REG_RNDR
	REG_RNDRRS
	REG_RVBAR_EL1
	REG_RVBAR_EL2
	REG_RVBAR_EL3
	REG_S12E0R
	REG_S12E0W
	REG_S12E1R
	REG_S12E1W
	REG_S1E0R
	REG_S1E0W
	REG_S1E1R
	REG_S1E1W
	REG_S1E2R
	REG_S1E2W
	REG_S1E3R
	REG_S1E3W
	REG_SCR_EL3
	REG_SDER32_EL3
	REG_SCTLR_EL1
	REG_SCTLR_EL12
	REG_SCTLR_EL2
	REG_SCTLR_EL3
	REG_SCXTNUM_EL0
	REG_SCXTNUM_EL1
	REG_SCXTNUM_EL12
	REG_SCXTNUM_EL2
	REG_SCXTNUM_EL3
	REG_SPSEL
	REG_SSBS // ARMv8.5
	REG_TCO
	REG_TCR_EL1
	REG_TCR_EL12
	REG_TCR_EL2
	REG_TCR_EL3
	REG_TFSR_EL1
	REG_TFSR_EL2
	REG_TFSR_EL12
	REG_TFSR_EL3
	REG_TFSRE0_EL1
	REG_TPIDRRO_EL0
	REG_TPIDR_EL0
	REG_TPIDR_EL1
	REG_TPIDR_EL2
	REG_TPIDR_EL3
	REG_TTBR0_EL1
	REG_TTBR0_EL12
	REG_TTBR1_EL1
	REG_TTBR1_EL12
	REG_TTBR1_EL2
	REG_TTBR0_EL2
	REG_TTBR0_EL3
	REG_VAAE1
	REG_VAAE1IS
	REG_VAALE1
	REG_VAALE1IS
	REG_VAE1
	REG_VAE1IS
	REG_VAE2
	REG_VAE2IS
	REG_VAE3
	REG_VAE3IS
	REG_VALE1
	REG_VALE1IS
	REG_VALE2
	REG_VALE2IS
	REG_VALE3
	REG_VALE3IS
	REG_VBAR_EL1
	REG_VBAR_EL12
	REG_VBAR_EL2
	REG_VBAR_EL3
	REG_VMALLE1
	REG_VMALLE1IS
	REG_VMALLS12E1
	REG_VMALLS12E1IS
	REG_VMPIDR_EL0
	REG_VMPIDR_EL2
	REG_VPIDR_EL2
	REG_VTCR_EL2
	REG_VTTBR_EL2
	REG_GVA
	REG_GZVA
	REG_ZVA
	REG_NUMBER0
	REG_OSHLD
	REG_OSHST
	REG_OSH
	REG_NUMBER4
	REG_NSHLD
	REG_NSHST
	REG_NSH
	REG_NUMBER8
	REG_ISHLD
	REG_ISHST
	REG_ISH
	REG_NUMBER12
	REG_LD
	REG_ST
	REG_SY
	REG_PMEVCNTR0_EL0
	REG_PMEVCNTR1_EL0
	REG_PMEVCNTR2_EL0
	REG_PMEVCNTR3_EL0
	REG_PMEVCNTR4_EL0
	REG_PMEVCNTR5_EL0
	REG_PMEVCNTR6_EL0
	REG_PMEVCNTR7_EL0
	REG_PMEVCNTR8_EL0
	REG_PMEVCNTR9_EL0
	REG_PMEVCNTR10_EL0
	REG_PMEVCNTR11_EL0
	REG_PMEVCNTR12_EL0
	REG_PMEVCNTR13_EL0
	REG_PMEVCNTR14_EL0
	REG_PMEVCNTR15_EL0
	REG_PMEVCNTR16_EL0
	REG_PMEVCNTR17_EL0
	REG_PMEVCNTR18_EL0
	REG_PMEVCNTR19_EL0
	REG_PMEVCNTR20_EL0
	REG_PMEVCNTR21_EL0
	REG_PMEVCNTR22_EL0
	REG_PMEVCNTR23_EL0
	REG_PMEVCNTR24_EL0
	REG_PMEVCNTR25_EL0
	REG_PMEVCNTR26_EL0
	REG_PMEVCNTR27_EL0
	REG_PMEVCNTR28_EL0
	REG_PMEVCNTR29_EL0
	REG_PMEVCNTR30_EL0
	REG_PMEVTYPER0_EL0
	REG_PMEVTYPER1_EL0
	REG_PMEVTYPER2_EL0
	REG_PMEVTYPER3_EL0
	REG_PMEVTYPER4_EL0
	REG_PMEVTYPER5_EL0
	REG_PMEVTYPER6_EL0
	REG_PMEVTYPER7_EL0
	REG_PMEVTYPER8_EL0
	REG_PMEVTYPER9_EL0
	REG_PMEVTYPER10_EL0
	REG_PMEVTYPER11_EL0
	REG_PMEVTYPER12_EL0
	REG_PMEVTYPER13_EL0
	REG_PMEVTYPER14_EL0
	REG_PMEVTYPER15_EL0
	REG_PMEVTYPER16_EL0
	REG_PMEVTYPER17_EL0
	REG_PMEVTYPER18_EL0
	REG_PMEVTYPER19_EL0
	REG_PMEVTYPER20_EL0
	REG_PMEVTYPER21_EL0
	REG_PMEVTYPER22_EL0
	REG_PMEVTYPER23_EL0
	REG_PMEVTYPER24_EL0
	REG_PMEVTYPER25_EL0
	REG_PMEVTYPER26_EL0
	REG_PMEVTYPER27_EL0
	REG_PMEVTYPER28_EL0
	REG_PMEVTYPER29_EL0
	REG_PMEVTYPER30_EL0
	REG_PMCCFILTR_EL0
	REG_C0
	REG_C1
	REG_C2
	REG_C3
	REG_C4
	REG_C5
	REG_C6
	REG_C7
	REG_C8
	REG_C9
	REG_C10
	REG_C11
	REG_C12
	REG_C13
	REG_C14
	REG_C15

	REG_SPSR_EL1
	REG_SPSR_EL12
	REG_ELR_EL1
	REG_ELR_EL12
	REG_SP_EL0
	REG_CURRENT_EL
	REG_NZCV
	REG_FPCR
	REG_DSPSR_EL0
	REG_DAIF
	REG_FPSR
	REG_DLR_EL0
	REG_SPSR_EL2
	REG_ELR_EL2
	REG_SP_EL1
	REG_SP_EL2
	REG_SPSR_IRQ
	REG_SPSR_ABT
	REG_SPSR_UND
	REG_SPSR_FIQ
	REG_SPSR_EL3
	REG_ELR_EL3
	REG_IFSR32_EL2
	REG_FPEXC32_EL2
	REG_CNTVOFF_EL2

	REG_MIDR_EL1
	REG_MPIDR_EL1
	REG_REVIDR_EL1
	REG_ID_PFR0_EL1
	REG_ID_PFR1_EL1
	REG_ID_PFR2_EL1
	REG_ID_DFR0_EL1
	REG_ID_AFR0_EL1
	REG_ID_MMFR0_EL1
	REG_ID_MMFR1_EL1
	REG_ID_MMFR2_EL1
	REG_ID_MMFR3_EL1
	REG_ID_ISAR0_EL1
	REG_ID_ISAR1_EL1
	REG_ID_ISAR2_EL1
	REG_ID_ISAR3_EL1
	REG_ID_ISAR4_EL1
	REG_ID_ISAR5_EL1
	REG_ID_ISAR6_EL1
	REG_ID_MMFR4_EL1
	REG_ID_MMFR5_EL1

	REG_ICC_IAR0_EL1
	REG_ICC_EOIR0_EL1
	REG_ICC_HPPIR0_EL1
	REG_ICC_BPR0_EL1
	REG_ICC_AP0R0_EL1
	REG_ICC_AP0R1_EL1
	REG_ICC_AP0R2_EL1
	REG_ICC_AP0R3_EL1
	REG_ICC_AP1R0_EL1
	REG_ICC_AP1R1_EL1
	REG_ICC_AP1R2_EL1
	REG_ICC_AP1R3_EL1
	REG_ICC_DIR_EL1
	REG_ICC_RPR_EL1
	REG_ICC_IAR1_EL1
	REG_ICC_EOIR1_EL1
	REG_ICC_HPPIR1_EL1
	REG_ICC_BPR1_EL1
	REG_ICC_CTLR_EL1
	REG_ICC_SRE_EL1
	REG_ICC_IGRPEN0_EL1
	REG_ICC_IGRPEN1_EL1

	REG_ICC_ASGI1R_EL2
	REG_ICC_SGI0R_EL2
	REG_ICH_AP0R0_EL2
	REG_ICH_AP0R1_EL2
	REG_ICH_AP0R2_EL2
	REG_ICH_AP0R3_EL2
	REG_ICH_AP1R0_EL2
	REG_ICH_AP1R1_EL2
	REG_ICH_AP1R2_EL2
	REG_ICH_AP1R3_EL2
	REG_ICH_AP1R4_EL2
	REG_ICC_HSRE_EL2
	REG_ICH_HCR_EL2
	REG_ICH_VTR_EL2
	REG_ICH_MISR_EL2
	REG_ICH_EISR_EL2
	REG_ICH_ELRSR_EL2
	REG_ICH_VMCR_EL2

	REG_ICH_LR0_EL2
	REG_ICH_LR1_EL2
	REG_ICH_LR2_EL2
	REG_ICH_LR3_EL2
	REG_ICH_LR4_EL2
	REG_ICH_LR5_EL2
	REG_ICH_LR6_EL2
	REG_ICH_LR7_EL2
	REG_ICH_LR8_EL2
	REG_ICH_LR9_EL2
	REG_ICH_LR10_EL2
	REG_ICH_LR11_EL2
	REG_ICH_LR12_EL2
	REG_ICH_LR13_EL2
	REG_ICH_LR14_EL2
	REG_ICH_LR15_EL2

	REG_ICH_LRC0_EL2
	REG_ICH_LRC1_EL2
	REG_ICH_LRC2_EL2
	REG_ICH_LRC3_EL2
	REG_ICH_LRC4_EL2
	REG_ICH_LRC5_EL2
	REG_ICH_LRC6_EL2
	REG_ICH_LRC7_EL2
	REG_ICH_LRC8_EL2
	REG_ICH_LRC9_EL2
	REG_ICH_LRC10_EL2
	REG_ICH_LRC11_EL2
	REG_ICH_LRC12_EL2
	REG_ICH_LRC13_EL2
	REG_ICH_LRC14_EL2
	REG_ICH_LRC15_EL2

	REG_ICC_MCTLR_EL3
	REG_ICC_MSRE_EL3
	REG_ICC_MGRPEN1_EL3

	REG_TEECR32_EL1
	REG_TEEHBR32_EL1

	REG_ICC_PMR_EL1
	REG_ICC_SGI1R_EL1
	REG_ICC_SGI0R_EL1
	REG_ICC_ASGI1R_EL1
	REG_ICC_SEIEN_EL1

	REG_TGT_C
	REG_TGT_J
	REG_TGT_JC

	REG_LOREA_EL1
	REG_LORSA_EL1
	REG_LORN_EL1
	REG_LORC_EL1
	REG_LORID_EL1

	REG_CNTPCTSS_EL0
	REG_UAO

	REG_END_REG
)

func (SystemReg) String

func (s SystemReg) String() string

type TestAndBranch

type TestAndBranch uint32

func (TestAndBranch) B40

func (i TestAndBranch) B40() uint32

func (TestAndBranch) B5

func (i TestAndBranch) B5() uint32

func (TestAndBranch) Imm

func (i TestAndBranch) Imm() int32

func (TestAndBranch) Op

func (i TestAndBranch) Op() uint32

func (TestAndBranch) Opcode

func (i TestAndBranch) Opcode() uint32

func (TestAndBranch) Rt

func (i TestAndBranch) Rt() uint32

type UnconditionalBranch

type UnconditionalBranch uint32

func (UnconditionalBranch) Imm

func (i UnconditionalBranch) Imm() int32

func (UnconditionalBranch) Op

func (i UnconditionalBranch) Op() uint32

func (UnconditionalBranch) Opcode

func (i UnconditionalBranch) Opcode() uint32

func (UnconditionalBranch) String

func (i UnconditionalBranch) String() string

type UnconditionalBranchReg

type UnconditionalBranchReg uint32

func (UnconditionalBranchReg) Op2

func (UnconditionalBranchReg) Op3

func (UnconditionalBranchReg) Op4

func (UnconditionalBranchReg) Opc

func (UnconditionalBranchReg) Opcode

func (i UnconditionalBranchReg) Opcode() uint32

func (UnconditionalBranchReg) Rn

func (UnconditionalBranchReg) String

func (i UnconditionalBranchReg) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL