Slide 10
Slide 10 text
インライン展開しない場合
10
TEXT github.com/d-tsuji/go-sandbox/opt/hello.HelloNoInline(SB) C:/Users/tsuji/go/src/github.com/d-tsuji/go-sandbox/opt/hello/hello.go
hello.go:5 0x451e30 488d0549ec0000 LEAQ runtime.rodata+60032(SB), AX
hello.go:5 0x451e37 4889442408 MOVQ AX, 0x8(SP)
hello.go:5 0x451e3c 488d058d6d0800 LEAQ runtime.zerobase(SB), AX
hello.go:5 0x451e43 4889442410 MOVQ AX, 0x10(SP)
hello.go:5 0x451e48 c3 RET
:-1 0x451e49 cc INT $0x3
:-1 0x451e4a cc INT $0x3
:-1 0x451e4b cc INT $0x3
:-1 0x451e4c cc INT $0x3
:-1 0x451e4d cc INT $0x3
:-1 0x451e4e cc INT $0x3
:-1 0x451e4f cc INT $0x3
TEXT main.main(SB) C:/Users/tsuji/go/src/github.com/d-tsuji/go-sandbox/opt/hello/cmd/main.go
main.go:5 0x451e50 65488b0c2528000000 MOVQ GS:0x28, CX
main.go:5 0x451e59 488b8900000000 MOVQ 0(CX), CX
main.go:5 0x451e60 483b6110 CMPQ 0x10(CX), SP
main.go:5 0x451e64 761d JBE 0x451e83
main.go:5 0x451e66 4883ec18 SUBQ $0x18, SP
main.go:5 0x451e6a 48896c2410 MOVQ BP, 0x10(SP)
main.go:5 0x451e6f 488d6c2410 LEAQ 0x10(SP), BP
main.go:6 0x451e74 e8b7ffffff CALL github.com/d-tsuji/go-sandbox/opt/hello.HelloNoInline(SB)
main.go:7 0x451e79 488b6c2410 MOVQ 0x10(SP), BP
main.go:7 0x451e7e 4883c418 ADDQ $0x18, SP
main.go:7 0x451e82 c3 RET
main.go:5 0x451e83 e8487effff CALL runtime.morestack_noctxt(SB)
main.go:5 0x451e88 ebc6 JMP main.main(SB)
main.goからHelloNoInlineが呼び出されている