build: add attributes argument to TEXT
Brings the TEXT() function signature closer to how the directive works in assembly. Also update almost all examples to use NOSPLIT. Closes #11
This commit is contained in:
@@ -5,7 +5,6 @@ package main
|
||||
import (
|
||||
"math"
|
||||
|
||||
. "github.com/mmcloughlin/avo/attr"
|
||||
. "github.com/mmcloughlin/avo/build"
|
||||
. "github.com/mmcloughlin/avo/operand"
|
||||
)
|
||||
@@ -21,7 +20,7 @@ func main() {
|
||||
DATA(38, U8(0x66))
|
||||
DATA(39, U8(0x77))
|
||||
|
||||
TEXT("DataAt", "func(i int) byte")
|
||||
TEXT("DataAt", NOSPLIT, "func(i int) byte")
|
||||
Doc("DataAt returns byte i in the 'bytes' global data section.")
|
||||
i := Load(Param("i"), GP64())
|
||||
ptr := Mem{Base: GP64()}
|
||||
|
||||
@@ -13,7 +13,7 @@ DATA bytes<>+39(SB)/1, $0x77
|
||||
GLOBL bytes<>(SB), RODATA|NOPTR, $40
|
||||
|
||||
// func DataAt(i int) byte
|
||||
TEXT ·DataAt(SB), $0-9
|
||||
TEXT ·DataAt(SB), NOSPLIT, $0-9
|
||||
MOVQ i(FP), AX
|
||||
LEAQ bytes<>(SB), CX
|
||||
MOVB (CX)(AX*1), AL
|
||||
|
||||
Reference in New Issue
Block a user