1
// Copyright 2009 The Go Authors. All rights reserved.
2
// Use of this source code is governed by a BSD-style
3
// license that can be found in the LICENSE file.
5
// NOTE: If you change this file you must run "./mkbuiltin"
6
// to update builtin.c.boot. This is not done automatically
7
// to avoid depending on having a working compiler binary.
11
// emitted by compiler, not referred to by go programs
19
func panic(interface{})
20
func recover(*int32) interface{}
23
func printfloat(float64)
25
func printuint(uint64)
26
func printcomplex(complex128)
27
func printstring(string)
28
func printpointer(any)
36
// filled in by compiler: int n, string, string, ...
39
// filled in by compiler: Type*, int n, Slice, ...
41
func appendslice(typ *byte, x any, y []any) any
43
func cmpstring(string, string) int
44
func slicestring(string, int, int) string
45
func slicestring1(string, int) string
46
func intstring(int64) string
47
func slicebytetostring([]byte) string
48
func sliceinttostring([]int) string
49
func stringtoslicebyte(string) []byte
50
func stringtosliceint(string) []int
51
func stringiter(string, int) int
52
func stringiter2(string, int) (retk int, retv int)
53
func slicecopy(to any, fr any, wid uint32) int
54
func slicestringcopy(to any, fr any) int
56
// interface conversions
57
func convI2E(elem any) (ret any)
58
func convI2I(typ *byte, elem any) (ret any)
59
func convT2E(typ *byte, elem any) (ret any)
60
func convT2I(typ *byte, typ2 *byte, elem any) (ret any)
62
// interface type assertions x.(T)
63
func assertE2E(typ *byte, iface any) (ret any)
64
func assertE2E2(typ *byte, iface any) (ret any, ok bool)
65
func assertE2I(typ *byte, iface any) (ret any)
66
func assertE2I2(typ *byte, iface any) (ret any, ok bool)
67
func assertE2T(typ *byte, iface any) (ret any)
68
func assertE2T2(typ *byte, iface any) (ret any, ok bool)
69
func assertI2E(typ *byte, iface any) (ret any)
70
func assertI2E2(typ *byte, iface any) (ret any, ok bool)
71
func assertI2I(typ *byte, iface any) (ret any)
72
func assertI2I2(typ *byte, iface any) (ret any, ok bool)
73
func assertI2T(typ *byte, iface any) (ret any)
74
func assertI2T2(typ *byte, iface any) (ret any, ok bool)
76
func ifaceeq(i1 any, i2 any) (ret bool)
77
func efaceeq(i1 any, i2 any) (ret bool)
78
func ifacethash(i1 any) (ret uint32)
79
func efacethash(i1 any) (ret uint32)
81
// *byte is really *runtime.Type
82
func makemap(key, val *byte, hint int64) (hmap map[any]any)
83
func mapaccess1(hmap map[any]any, key any) (val any)
84
func mapaccess2(hmap map[any]any, key any) (val any, pres bool)
85
func mapassign1(hmap map[any]any, key any, val any)
86
func mapassign2(hmap map[any]any, key any, val any, pres bool)
87
func mapiterinit(hmap map[any]any, hiter *any)
88
func mapiternext(hiter *any)
89
func mapiter1(hiter *any) (key any)
90
func mapiter2(hiter *any) (key any, val any)
92
// *byte is really *runtime.Type
93
func makechan(elem *byte, hint int64) (hchan chan any)
94
func chanrecv1(hchan <-chan any) (elem any)
95
func chanrecv3(hchan <-chan any) (elem any, closed bool)
96
func chansend1(hchan chan<- any, elem any)
97
func closechan(hchan any)
98
func closedchan(hchan any) bool
100
func selectnbsend(hchan chan<- any, elem any) bool
101
func selectnbrecv(elem *any, hchan <-chan any) bool
103
func newselect(size int) (sel *byte)
104
func selectsend(sel *byte, hchan chan<- any, elem any) (selected bool)
105
func selectrecv(sel *byte, hchan <-chan any, elem *any) (selected bool)
106
func selectdefault(sel *byte) (selected bool)
107
func selectgo(sel *byte)
110
func makeslice(typ *byte, nel int64, cap int64) (ary []any)
111
func sliceslice1(old []any, lb uint64, width uint64) (ary []any)
112
func sliceslice(old []any, lb uint64, hb uint64, width uint64) (ary []any)
113
func slicearray(old *any, nel uint64, lb uint64, hb uint64, width uint64) (ary []any)
115
func closure() // has args, but compiler fills in
117
// only used on 32-bit
118
func int64div(int64, int64) int64
119
func uint64div(uint64, uint64) uint64
120
func int64mod(int64, int64) int64
121
func uint64mod(uint64, uint64) uint64
122
func float64toint64(float64) int64
123
func float64touint64(float64) uint64
124
func int64tofloat64(int64) float64
125
func uint64tofloat64(uint64) float64
127
func complex128div(num complex128, den complex128) (quo complex128)