𝚙
Size: a a a
T
∅ч
∅ч
𝚙
∅ч
∅ч
𝚙
package main
type X interface { m() }
type C int
func (c C) m() {}
func main() {
var c C = 3
var x X = c // line 10
x.m() // line 11
}
Produces this code from 6g:
--- prog list "main" ---
0002 (x.go:11) TEXT main+0(SB),$64-0
0003 (x.go:9) MOVL $3,AX
0004 (x.go:10) MOVQ $type."".X+0(SB),(SP)
0005 (x.go:10) MOVQ $type."".C+0(SB),8(SP)
0006 (x.go:10) MOVL AX,16(SP)
0007 (x.go:10) CALL ,runtime.ifaceT2I+0(SB)
0008 (x.go:10) LEAQ 24(SP),SI
0009 (x.go:10) LEAQ x+-24(SP),DI
0010 (x.go:10) MOVSQ ,
0011 (x.go:10) MOVSQ ,
0012 (x.go:11) LEAQ x+-24(SP),BX
0013 (x.go:11) MOVQ 8(BX),BP
0014 (x.go:11) MOVQ BP,(SP)
0015 (x.go:11) MOVQ (BX),BX
0016 (x.go:11) MOVQ 32(BX),BX
0017 (x.go:11) CALL ,BX
0018 (x.go:11) RET ,
∅ч
𝚙
𝚙
∅ч
∅ч
𝚙
∅ч
∅ч
∅ч
𝚙
T