package
Version:
v0.0.0-...-bdb7d28
Opens a new window with list of versions in this module.
Published: Mar 13, 2024
License: MPL-2.0
Opens a new window with license information.
Imports: 3
Opens a new window with list of imports.
Imported by: 0
Opens a new window with list of known importers.
Documentation
¶
type ExtendArg struct {
Op string `@("lsl" | "lsr" | "msl" | "asr" | "ror" | "uxtw" | "sxth" | "sxtw" | "sxtx" | "sxtb" | "uxth" | "uxtb" | "uxtx")`
Imm *string `('#'? @((Number | '-' | '+' | '(' | ')')+))?`
}
type Imm struct {
Num *string `('#'? @((Number | '-' | '+' | '(' | ')')+))`
Reloc *Reloc `| @@`
}
type Inst struct {
Pos lexer.Position
Label *string `(@(Ident | Number) ':')?`
Name string `@Ident`
Args []*Arg `( @@ ( "," @@ )* )? (Newline*|EOF)`
}
type MemAddr1 struct {
Reg string `"[" @Ident`
Imm *Imm `("," @@)? "]"`
}
[Xn{, #i}]
type MemAddr2 struct {
Reg string `"[" @Ident "]"`
RegOrImm string `"," ("#"? @Number | @Ident)`
}
[Xn], #i
Xn += i after access
type MemAddr3 struct {
Reg string `"[" @Ident`
Imm string `"," "#"? @(Number) "]" "!"`
}
[Xn, #i]!
Xn += i before access
type MemAddr4 struct {
Reg1 string `"[" @Ident`
Reg2 string `"," @Ident`
Extend *ExtendArg `("," @@)? "]"`
}
[Xn, Wm, {s,u}xtw{ #i|s}]
[Xn, Xm sxtx{ #i|s}]
type RegOrLabel struct {
Indexed *string `@(Ident '[' Number ']')`
Val *string `| @Ident`
}
type Reloc struct {
Type string `'#'? ':' @Ident ':'`
Var string `@Ident`
}
type Vector struct {
Vals []*RegOrLabel `"{" @@ ( "," @@ )* "}"`
Indexed *string `@('[' Number ']')?`
}
Vector structure {v1.h, v2.h}
Source Files
¶
Click to show internal directories.
Click to hide internal directories.