Commit 1a01ffd3 authored by Shenghou Ma's avatar Shenghou Ma

cmd/gc: fix mkbuiltin (gc -A always write all symbols to export section)

Regenerate cmd/gc/builtin.c.
Fixes #4908.

R=rsc
CC=golang-dev
https://golang.org/cl/7383053
parent f5afc7d4
char *runtimeimport = char *runtimeimport =
"package runtime\n" "package runtime\n"
"import runtime \"runtime\"\n" "import runtime \"runtime\"\n"
"func @\"\".new(@\"\".typ *byte) (? *any)\n" "func @\"\".new (@\"\".typ·2 *byte) (? *any)\n"
"func @\"\".panicindex()\n" "func @\"\".panicindex ()\n"
"func @\"\".panicslice()\n" "func @\"\".panicslice ()\n"
"func @\"\".throwreturn()\n" "func @\"\".throwreturn ()\n"
"func @\"\".throwinit()\n" "func @\"\".throwinit ()\n"
"func @\"\".panicwrap(? string, ? string, ? string)\n" "func @\"\".panicwrap (? string, ? string, ? string)\n"
"func @\"\".panic(? interface {})\n" "func @\"\".panic (? interface {})\n"
"func @\"\".recover(? *int32) (? interface {})\n" "func @\"\".recover (? *int32) (? interface {})\n"
"func @\"\".printbool(? bool)\n" "func @\"\".printbool (? bool)\n"
"func @\"\".printfloat(? float64)\n" "func @\"\".printfloat (? float64)\n"
"func @\"\".printint(? int64)\n" "func @\"\".printint (? int64)\n"
"func @\"\".printuint(? uint64)\n" "func @\"\".printuint (? uint64)\n"
"func @\"\".printcomplex(? complex128)\n" "func @\"\".printcomplex (? complex128)\n"
"func @\"\".printstring(? string)\n" "func @\"\".printstring (? string)\n"
"func @\"\".printpointer(? any)\n" "func @\"\".printpointer (? any)\n"
"func @\"\".printiface(? any)\n" "func @\"\".printiface (? any)\n"
"func @\"\".printeface(? any)\n" "func @\"\".printeface (? any)\n"
"func @\"\".printslice(? any)\n" "func @\"\".printslice (? any)\n"
"func @\"\".printnl()\n" "func @\"\".printnl ()\n"
"func @\"\".printsp()\n" "func @\"\".printsp ()\n"
"func @\"\".goprintf()\n" "func @\"\".goprintf ()\n"
"func @\"\".concatstring()\n" "func @\"\".concatstring ()\n"
"func @\"\".append()\n" "func @\"\".append ()\n"
"func @\"\".appendslice(@\"\".typ *byte, @\"\".x any, @\"\".y []any) (? any)\n" "func @\"\".appendslice (@\"\".typ·2 *byte, @\"\".x·3 any, @\"\".y·4 []any) (? any)\n"
"func @\"\".appendstr(@\"\".typ *byte, @\"\".x []byte, @\"\".y string) (? []byte)\n" "func @\"\".appendstr (@\"\".typ·2 *byte, @\"\".x·3 []byte, @\"\".y·4 string) (? []byte)\n"
"func @\"\".cmpstring(? string, ? string) (? int)\n" "func @\"\".cmpstring (? string, ? string) (? int)\n"
"func @\"\".eqstring(? string, ? string) (? bool)\n" "func @\"\".eqstring (? string, ? string) (? bool)\n"
"func @\"\".intstring(? int64) (? string)\n" "func @\"\".intstring (? int64) (? string)\n"
"func @\"\".slicebytetostring(? []byte) (? string)\n" "func @\"\".slicebytetostring (? []byte) (? string)\n"
"func @\"\".slicerunetostring(? []rune) (? string)\n" "func @\"\".slicerunetostring (? []rune) (? string)\n"
"func @\"\".stringtoslicebyte(? string) (? []byte)\n" "func @\"\".stringtoslicebyte (? string) (? []byte)\n"
"func @\"\".stringtoslicerune(? string) (? []rune)\n" "func @\"\".stringtoslicerune (? string) (? []rune)\n"
"func @\"\".stringiter(? string, ? int) (? int)\n" "func @\"\".stringiter (? string, ? int) (? int)\n"
"func @\"\".stringiter2(? string, ? int) (@\"\".retk int, @\"\".retv rune)\n" "func @\"\".stringiter2 (? string, ? int) (@\"\".retk·1 int, @\"\".retv·2 rune)\n"
"func @\"\".copy(@\"\".to any, @\"\".fr any, @\"\".wid uintptr) (? int)\n" "func @\"\".copy (@\"\".to·2 any, @\"\".fr·3 any, @\"\".wid·4 uintptr) (? int)\n"
"func @\"\".slicestringcopy(@\"\".to any, @\"\".fr any) (? int)\n" "func @\"\".slicestringcopy (@\"\".to·2 any, @\"\".fr·3 any) (? int)\n"
"func @\"\".typ2Itab(@\"\".typ *byte, @\"\".typ2 *byte, @\"\".cache **byte) (@\"\".ret *byte)\n" "func @\"\".typ2Itab (@\"\".typ·2 *byte, @\"\".typ2·3 *byte, @\"\".cache·4 **byte) (@\"\".ret·1 *byte)\n"
"func @\"\".convI2E(@\"\".elem any) (@\"\".ret any)\n" "func @\"\".convI2E (@\"\".elem·2 any) (@\"\".ret·1 any)\n"
"func @\"\".convI2I(@\"\".typ *byte, @\"\".elem any) (@\"\".ret any)\n" "func @\"\".convI2I (@\"\".typ·2 *byte, @\"\".elem·3 any) (@\"\".ret·1 any)\n"
"func @\"\".convT2E(@\"\".typ *byte, @\"\".elem any) (@\"\".ret any)\n" "func @\"\".convT2E (@\"\".typ·2 *byte, @\"\".elem·3 any) (@\"\".ret·1 any)\n"
"func @\"\".convT2I(@\"\".typ *byte, @\"\".typ2 *byte, @\"\".cache **byte, @\"\".elem any) (@\"\".ret any)\n" "func @\"\".convT2I (@\"\".typ·2 *byte, @\"\".typ2·3 *byte, @\"\".cache·4 **byte, @\"\".elem·5 any) (@\"\".ret·1 any)\n"
"func @\"\".assertE2E(@\"\".typ *byte, @\"\".iface any) (@\"\".ret any)\n" "func @\"\".assertE2E (@\"\".typ·2 *byte, @\"\".iface·3 any) (@\"\".ret·1 any)\n"
"func @\"\".assertE2E2(@\"\".typ *byte, @\"\".iface any) (@\"\".ret any, @\"\".ok bool)\n" "func @\"\".assertE2E2 (@\"\".typ·3 *byte, @\"\".iface·4 any) (@\"\".ret·1 any, @\"\".ok·2 bool)\n"
"func @\"\".assertE2I(@\"\".typ *byte, @\"\".iface any) (@\"\".ret any)\n" "func @\"\".assertE2I (@\"\".typ·2 *byte, @\"\".iface·3 any) (@\"\".ret·1 any)\n"
"func @\"\".assertE2I2(@\"\".typ *byte, @\"\".iface any) (@\"\".ret any, @\"\".ok bool)\n" "func @\"\".assertE2I2 (@\"\".typ·3 *byte, @\"\".iface·4 any) (@\"\".ret·1 any, @\"\".ok·2 bool)\n"
"func @\"\".assertE2T(@\"\".typ *byte, @\"\".iface any) (@\"\".ret any)\n" "func @\"\".assertE2T (@\"\".typ·2 *byte, @\"\".iface·3 any) (@\"\".ret·1 any)\n"
"func @\"\".assertE2T2(@\"\".typ *byte, @\"\".iface any) (@\"\".ret any, @\"\".ok bool)\n" "func @\"\".assertE2T2 (@\"\".typ·3 *byte, @\"\".iface·4 any) (@\"\".ret·1 any, @\"\".ok·2 bool)\n"
"func @\"\".assertI2E(@\"\".typ *byte, @\"\".iface any) (@\"\".ret any)\n" "func @\"\".assertI2E (@\"\".typ·2 *byte, @\"\".iface·3 any) (@\"\".ret·1 any)\n"
"func @\"\".assertI2E2(@\"\".typ *byte, @\"\".iface any) (@\"\".ret any, @\"\".ok bool)\n" "func @\"\".assertI2E2 (@\"\".typ·3 *byte, @\"\".iface·4 any) (@\"\".ret·1 any, @\"\".ok·2 bool)\n"
"func @\"\".assertI2I(@\"\".typ *byte, @\"\".iface any) (@\"\".ret any)\n" "func @\"\".assertI2I (@\"\".typ·2 *byte, @\"\".iface·3 any) (@\"\".ret·1 any)\n"
"func @\"\".assertI2I2(@\"\".typ *byte, @\"\".iface any) (@\"\".ret any, @\"\".ok bool)\n" "func @\"\".assertI2I2 (@\"\".typ·3 *byte, @\"\".iface·4 any) (@\"\".ret·1 any, @\"\".ok·2 bool)\n"
"func @\"\".assertI2T(@\"\".typ *byte, @\"\".iface any) (@\"\".ret any)\n" "func @\"\".assertI2T (@\"\".typ·2 *byte, @\"\".iface·3 any) (@\"\".ret·1 any)\n"
"func @\"\".assertI2T2(@\"\".typ *byte, @\"\".iface any) (@\"\".ret any, @\"\".ok bool)\n" "func @\"\".assertI2T2 (@\"\".typ·3 *byte, @\"\".iface·4 any) (@\"\".ret·1 any, @\"\".ok·2 bool)\n"
"func @\"\".assertI2TOK(@\"\".typ *byte, @\"\".iface any) (@\"\".ok bool)\n" "func @\"\".assertI2TOK (@\"\".typ·2 *byte, @\"\".iface·3 any) (@\"\".ok·1 bool)\n"
"func @\"\".assertE2TOK(@\"\".typ *byte, @\"\".iface any) (@\"\".ok bool)\n" "func @\"\".assertE2TOK (@\"\".typ·2 *byte, @\"\".iface·3 any) (@\"\".ok·1 bool)\n"
"func @\"\".ifaceeq(@\"\".i1 any, @\"\".i2 any) (@\"\".ret bool)\n" "func @\"\".ifaceeq (@\"\".i1·2 any, @\"\".i2·3 any) (@\"\".ret·1 bool)\n"
"func @\"\".efaceeq(@\"\".i1 any, @\"\".i2 any) (@\"\".ret bool)\n" "func @\"\".efaceeq (@\"\".i1·2 any, @\"\".i2·3 any) (@\"\".ret·1 bool)\n"
"func @\"\".ifacethash(@\"\".i1 any) (@\"\".ret uint32)\n" "func @\"\".ifacethash (@\"\".i1·2 any) (@\"\".ret·1 uint32)\n"
"func @\"\".efacethash(@\"\".i1 any) (@\"\".ret uint32)\n" "func @\"\".efacethash (@\"\".i1·2 any) (@\"\".ret·1 uint32)\n"
"func @\"\".equal(@\"\".typ *byte, @\"\".x1 any, @\"\".x2 any) (@\"\".ret bool)\n" "func @\"\".equal (@\"\".typ·2 *byte, @\"\".x1·3 any, @\"\".x2·4 any) (@\"\".ret·1 bool)\n"
"func @\"\".makemap(@\"\".mapType *byte, @\"\".hint int64) (@\"\".hmap map[any]any)\n" "func @\"\".makemap (@\"\".mapType·2 *byte, @\"\".hint·3 int64) (@\"\".hmap·1 map[any]any)\n"
"func @\"\".mapaccess1(@\"\".mapType *byte, @\"\".hmap map[any]any, @\"\".key any) (@\"\".val any)\n" "func @\"\".mapaccess1 (@\"\".mapType·2 *byte, @\"\".hmap·3 map[any]any, @\"\".key·4 any) (@\"\".val·1 any)\n"
"func @\"\".mapaccess2(@\"\".mapType *byte, @\"\".hmap map[any]any, @\"\".key any) (@\"\".val any, @\"\".pres bool)\n" "func @\"\".mapaccess2 (@\"\".mapType·3 *byte, @\"\".hmap·4 map[any]any, @\"\".key·5 any) (@\"\".val·1 any, @\"\".pres·2 bool)\n"
"func @\"\".mapassign1(@\"\".mapType *byte, @\"\".hmap map[any]any, @\"\".key any, @\"\".val any)\n" "func @\"\".mapassign1 (@\"\".mapType·1 *byte, @\"\".hmap·2 map[any]any, @\"\".key·3 any, @\"\".val·4 any)\n"
"func @\"\".mapiterinit(@\"\".mapType *byte, @\"\".hmap map[any]any, @\"\".hiter *any)\n" "func @\"\".mapiterinit (@\"\".mapType·1 *byte, @\"\".hmap·2 map[any]any, @\"\".hiter·3 *any)\n"
"func @\"\".mapdelete(@\"\".mapType *byte, @\"\".hmap map[any]any, @\"\".key any)\n" "func @\"\".mapdelete (@\"\".mapType·1 *byte, @\"\".hmap·2 map[any]any, @\"\".key·3 any)\n"
"func @\"\".mapiternext(@\"\".hiter *any)\n" "func @\"\".mapiternext (@\"\".hiter·1 *any)\n"
"func @\"\".mapiter1(@\"\".hiter *any) (@\"\".key any)\n" "func @\"\".mapiter1 (@\"\".hiter·2 *any) (@\"\".key·1 any)\n"
"func @\"\".mapiter2(@\"\".hiter *any) (@\"\".key any, @\"\".val any)\n" "func @\"\".mapiter2 (@\"\".hiter·3 *any) (@\"\".key·1 any, @\"\".val·2 any)\n"
"func @\"\".makechan(@\"\".chanType *byte, @\"\".hint int64) (@\"\".hchan chan any)\n" "func @\"\".makechan (@\"\".chanType·2 *byte, @\"\".hint·3 int64) (@\"\".hchan·1 chan any)\n"
"func @\"\".chanrecv1(@\"\".chanType *byte, @\"\".hchan <-chan any) (@\"\".elem any)\n" "func @\"\".chanrecv1 (@\"\".chanType·2 *byte, @\"\".hchan·3 <-chan any) (@\"\".elem·1 any)\n"
"func @\"\".chanrecv2(@\"\".chanType *byte, @\"\".hchan <-chan any) (@\"\".elem any, @\"\".received bool)\n" "func @\"\".chanrecv2 (@\"\".chanType·3 *byte, @\"\".hchan·4 <-chan any) (@\"\".elem·1 any, @\"\".received·2 bool)\n"
"func @\"\".chansend1(@\"\".chanType *byte, @\"\".hchan chan<- any, @\"\".elem any)\n" "func @\"\".chansend1 (@\"\".chanType·1 *byte, @\"\".hchan·2 chan<- any, @\"\".elem·3 any)\n"
"func @\"\".closechan(@\"\".hchan any)\n" "func @\"\".closechan (@\"\".hchan·1 any)\n"
"func @\"\".selectnbsend(@\"\".chanType *byte, @\"\".hchan chan<- any, @\"\".elem any) (? bool)\n" "func @\"\".selectnbsend (@\"\".chanType·2 *byte, @\"\".hchan·3 chan<- any, @\"\".elem·4 any) (? bool)\n"
"func @\"\".selectnbrecv(@\"\".chanType *byte, @\"\".elem *any, @\"\".hchan <-chan any) (? bool)\n" "func @\"\".selectnbrecv (@\"\".chanType·2 *byte, @\"\".elem·3 *any, @\"\".hchan·4 <-chan any) (? bool)\n"
"func @\"\".selectnbrecv2(@\"\".chanType *byte, @\"\".elem *any, @\"\".received *bool, @\"\".hchan <-chan any) (? bool)\n" "func @\"\".selectnbrecv2 (@\"\".chanType·2 *byte, @\"\".elem·3 *any, @\"\".received·4 *bool, @\"\".hchan·5 <-chan any) (? bool)\n"
"func @\"\".newselect(@\"\".size int32) (@\"\".sel *byte)\n" "func @\"\".newselect (@\"\".size·2 int32) (@\"\".sel·1 *byte)\n"
"func @\"\".selectsend(@\"\".sel *byte, @\"\".hchan chan<- any, @\"\".elem *any) (@\"\".selected bool)\n" "func @\"\".selectsend (@\"\".sel·2 *byte, @\"\".hchan·3 chan<- any, @\"\".elem·4 *any) (@\"\".selected·1 bool)\n"
"func @\"\".selectrecv(@\"\".sel *byte, @\"\".hchan <-chan any, @\"\".elem *any) (@\"\".selected bool)\n" "func @\"\".selectrecv (@\"\".sel·2 *byte, @\"\".hchan·3 <-chan any, @\"\".elem·4 *any) (@\"\".selected·1 bool)\n"
"func @\"\".selectrecv2(@\"\".sel *byte, @\"\".hchan <-chan any, @\"\".elem *any, @\"\".received *bool) (@\"\".selected bool)\n" "func @\"\".selectrecv2 (@\"\".sel·2 *byte, @\"\".hchan·3 <-chan any, @\"\".elem·4 *any, @\"\".received·5 *bool) (@\"\".selected·1 bool)\n"
"func @\"\".selectdefault(@\"\".sel *byte) (@\"\".selected bool)\n" "func @\"\".selectdefault (@\"\".sel·2 *byte) (@\"\".selected·1 bool)\n"
"func @\"\".selectgo(@\"\".sel *byte)\n" "func @\"\".selectgo (@\"\".sel·1 *byte)\n"
"func @\"\".block()\n" "func @\"\".block ()\n"
"func @\"\".makeslice(@\"\".typ *byte, @\"\".nel int64, @\"\".cap int64) (@\"\".ary []any)\n" "func @\"\".makeslice (@\"\".typ·2 *byte, @\"\".nel·3 int64, @\"\".cap·4 int64) (@\"\".ary·1 []any)\n"
"func @\"\".growslice(@\"\".typ *byte, @\"\".old []any, @\"\".n int64) (@\"\".ary []any)\n" "func @\"\".growslice (@\"\".typ·2 *byte, @\"\".old·3 []any, @\"\".n·4 int64) (@\"\".ary·1 []any)\n"
"func @\"\".closure()\n" "func @\"\".memequal (@\"\".eq·1 *bool, @\"\".size·2 uintptr, @\"\".x·3 *any, @\"\".y·4 *any)\n"
"func @\"\".memequal(@\"\".eq *bool, @\"\".size uintptr, @\"\".x *any, @\"\".y *any)\n" "func @\"\".memequal8 (@\"\".eq·1 *bool, @\"\".size·2 uintptr, @\"\".x·3 *any, @\"\".y·4 *any)\n"
"func @\"\".memequal8(@\"\".eq *bool, @\"\".size uintptr, @\"\".x *any, @\"\".y *any)\n" "func @\"\".memequal16 (@\"\".eq·1 *bool, @\"\".size·2 uintptr, @\"\".x·3 *any, @\"\".y·4 *any)\n"
"func @\"\".memequal16(@\"\".eq *bool, @\"\".size uintptr, @\"\".x *any, @\"\".y *any)\n" "func @\"\".memequal32 (@\"\".eq·1 *bool, @\"\".size·2 uintptr, @\"\".x·3 *any, @\"\".y·4 *any)\n"
"func @\"\".memequal32(@\"\".eq *bool, @\"\".size uintptr, @\"\".x *any, @\"\".y *any)\n" "func @\"\".memequal64 (@\"\".eq·1 *bool, @\"\".size·2 uintptr, @\"\".x·3 *any, @\"\".y·4 *any)\n"
"func @\"\".memequal64(@\"\".eq *bool, @\"\".size uintptr, @\"\".x *any, @\"\".y *any)\n" "func @\"\".memequal128 (@\"\".eq·1 *bool, @\"\".size·2 uintptr, @\"\".x·3 *any, @\"\".y·4 *any)\n"
"func @\"\".memequal128(@\"\".eq *bool, @\"\".size uintptr, @\"\".x *any, @\"\".y *any)\n" "func @\"\".int64div (? int64, ? int64) (? int64)\n"
"func @\"\".int64div(? int64, ? int64) (? int64)\n" "func @\"\".uint64div (? uint64, ? uint64) (? uint64)\n"
"func @\"\".uint64div(? uint64, ? uint64) (? uint64)\n" "func @\"\".int64mod (? int64, ? int64) (? int64)\n"
"func @\"\".int64mod(? int64, ? int64) (? int64)\n" "func @\"\".uint64mod (? uint64, ? uint64) (? uint64)\n"
"func @\"\".uint64mod(? uint64, ? uint64) (? uint64)\n" "func @\"\".float64toint64 (? float64) (? int64)\n"
"func @\"\".float64toint64(? float64) (? int64)\n" "func @\"\".float64touint64 (? float64) (? uint64)\n"
"func @\"\".float64touint64(? float64) (? uint64)\n" "func @\"\".int64tofloat64 (? int64) (? float64)\n"
"func @\"\".int64tofloat64(? int64) (? float64)\n" "func @\"\".uint64tofloat64 (? uint64) (? float64)\n"
"func @\"\".uint64tofloat64(? uint64) (? float64)\n" "func @\"\".complex128div (@\"\".num·2 complex128, @\"\".den·3 complex128) (@\"\".quo·1 complex128)\n"
"func @\"\".complex128div(@\"\".num complex128, @\"\".den complex128) (@\"\".quo complex128)\n" "func @\"\".racefuncenter (? uintptr)\n"
"func @\"\".racefuncenter(? uintptr)\n" "func @\"\".racefuncexit ()\n"
"func @\"\".racefuncexit()\n" "func @\"\".raceread (? uintptr)\n"
"func @\"\".raceread(? uintptr)\n" "func @\"\".racewrite (? uintptr)\n"
"func @\"\".racewrite(? uintptr)\n"
"\n" "\n"
"$$\n"; "$$\n";
char *unsafeimport = char *unsafeimport =
"package unsafe\n" "package unsafe\n"
"import runtime \"runtime\"\n" "import runtime \"runtime\"\n"
"type @\"\".Pointer uintptr\n" "type @\"\".Pointer uintptr\n"
"func @\"\".Offsetof(? any) (? uintptr)\n" "func @\"\".Offsetof (? any) (? uintptr)\n"
"func @\"\".Sizeof(? any) (? uintptr)\n" "func @\"\".Sizeof (? any) (? uintptr)\n"
"func @\"\".Alignof(? any) (? uintptr)\n" "func @\"\".Alignof (? any) (? uintptr)\n"
"\n" "\n"
"$$\n"; "$$\n";
...@@ -65,7 +65,8 @@ autoexport(Node *n, int ctxt) ...@@ -65,7 +65,8 @@ autoexport(Node *n, int ctxt)
return; return;
if(n->ntype && n->ntype->op == OTFUNC && n->ntype->left) // method if(n->ntype && n->ntype->op == OTFUNC && n->ntype->left) // method
return; return;
if(exportname(n->sym->name) || initname(n->sym->name)) // -A is for cmd/gc/mkbuiltin script, so export everything
if(debug['A'] || exportname(n->sym->name) || initname(n->sym->name))
exportsym(n); exportsym(n);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment