feat(asm): assemble static symbols and the whole go-flac AVX2 kernel byte-identically
Assisted-by: Qwen 3.8 Max Preview
This commit is contained in:
@@ -41,3 +41,15 @@ func Idx(base, index Reg, scale int, disp int64, size int) Mem {
|
||||
func Rip(disp int64, size int) Mem {
|
||||
return Mem{Disp: disp, Size: size}
|
||||
}
|
||||
|
||||
// sbMem is a memory operand that references a static (SB) symbol. It encodes
|
||||
// as a RIP-relative reference with a placeholder displacement; the encoder
|
||||
// records a patch site so the file-level layout can fill in the true rel32
|
||||
// once the symbol's address is known.
|
||||
type sbMem struct {
|
||||
size int
|
||||
name string // static symbol name (the GLOBL identifier)
|
||||
addend int64 // byte offset within the symbol
|
||||
}
|
||||
|
||||
func (sbMem) isOperand() {}
|
||||
|
||||
Reference in New Issue
Block a user