diff options
Diffstat (limited to 'src/cmd')
-rw-r--r-- | src/cmd/gc/align.c | 4 | ||||
-rw-r--r-- | src/cmd/gc/builtin.c.boot | 18 | ||||
-rw-r--r-- | src/cmd/gc/sinit.c | 12 | ||||
-rw-r--r-- | src/cmd/gc/sys.go | 18 | ||||
-rw-r--r-- | src/cmd/gc/walk.c | 30 |
5 files changed, 42 insertions, 40 deletions
diff --git a/src/cmd/gc/align.c b/src/cmd/gc/align.c index bd8b69047..9a013ca6e 100644 --- a/src/cmd/gc/align.c +++ b/src/cmd/gc/align.c @@ -186,7 +186,9 @@ dowidth(Type *t) case TFORW: // should have been filled in case TANY: // dummy type; should be replaced before use. - fatal("dowidth any"); + if(!debug['A']) + fatal("dowidth any"); + w = 1; // anything will do break; case TSTRING: if(sizeof_String == 0) diff --git a/src/cmd/gc/builtin.c.boot b/src/cmd/gc/builtin.c.boot index 3cbb87e1e..e24d9d881 100644 --- a/src/cmd/gc/builtin.c.boot +++ b/src/cmd/gc/builtin.c.boot @@ -13,7 +13,7 @@ char *sysimport = "func sys.printpointer (? any)\n" "func sys.printiface (? any)\n" "func sys.printeface (? any)\n" - "func sys.printarray (? any)\n" + "func sys.printslice (? any)\n" "func sys.printnl ()\n" "func sys.printsp ()\n" "func sys.catstring (? string, ? string) (? string)\n" @@ -21,8 +21,8 @@ char *sysimport = "func sys.slicestring (? string, ? int, ? int) (? string)\n" "func sys.indexstring (? string, ? int) (? uint8)\n" "func sys.intstring (? int64) (? string)\n" - "func sys.arraystring (? []uint8) (? string)\n" - "func sys.arraystringi (? []int) (? string)\n" + "func sys.slicebytetostring (? []uint8) (? string)\n" + "func sys.sliceinttostring (? []int) (? string)\n" "func sys.stringiter (? string, ? int) (? int)\n" "func sys.stringiter2 (? string, ? int) (retk int, retv int)\n" "func sys.ifaceI2E (iface any) (ret any)\n" @@ -41,7 +41,7 @@ char *sysimport = "func sys.efaceeq (i1 any, i2 any) (ret bool)\n" "func sys.ifacethash (i1 any) (ret uint32)\n" "func sys.efacethash (i1 any) (ret uint32)\n" - "func sys.newmap (keysize int, valsize int, keyalg int, valalg int, hint int) (hmap map[any] any)\n" + "func sys.makemap (keysize int, valsize int, keyalg int, valalg int, hint int) (hmap map[any] any)\n" "func sys.mapaccess1 (hmap map[any] any, key any) (val any)\n" "func sys.mapaccess2 (hmap map[any] any, key any) (val any, pres bool)\n" "func sys.mapassign1 (hmap map[any] any, key any, val any)\n" @@ -50,7 +50,7 @@ char *sysimport = "func sys.mapiternext (hiter *any)\n" "func sys.mapiter1 (hiter *any) (key any)\n" "func sys.mapiter2 (hiter *any) (key any, val any)\n" - "func sys.newchan (elemsize int, elemalg int, hint int) (hchan chan any)\n" + "func sys.makechan (elemsize int, elemalg int, hint int) (hchan chan any)\n" "func sys.chanrecv1 (hchan <-chan any) (elem any)\n" "func sys.chanrecv2 (hchan <-chan any) (elem any, pres bool)\n" "func sys.chansend1 (hchan chan<- any, elem any)\n" @@ -62,10 +62,10 @@ char *sysimport = "func sys.selectrecv (sel *uint8, hchan <-chan any, elem *any) (selected bool)\n" "func sys.selectdefault (sel *uint8) (selected bool)\n" "func sys.selectgo (sel *uint8)\n" - "func sys.newarray (nel int, cap int, width int) (ary []any)\n" - "func sys.arraysliced (old []any, lb int, hb int, width int) (ary []any)\n" - "func sys.arrayslices (old *any, nel int, lb int, hb int, width int) (ary []any)\n" - "func sys.arrays2d (old *any, nel int) (ary []any)\n" + "func sys.makeslice (nel int, cap int, width int) (ary []any)\n" + "func sys.sliceslice (old []any, lb int, hb int, width int) (ary []any)\n" + "func sys.slicearray (old *any, nel int, lb int, hb int, width int) (ary []any)\n" + "func sys.arraytoslice (old *any, nel int) (ary []any)\n" "func sys.closure ()\n" "func sys.int64div (? int64, ? int64) (? int64)\n" "func sys.uint64div (? uint64, ? uint64) (? uint64)\n" diff --git a/src/cmd/gc/sinit.c b/src/cmd/gc/sinit.c index 4b46f7c7c..84e844c27 100644 --- a/src/cmd/gc/sinit.c +++ b/src/cmd/gc/sinit.c @@ -146,8 +146,8 @@ slicerewrite(Node *n) while(n->op == OCONVNOP) n = n->left; - // call to newarray - find nel argument - nel = findarg(n, "nel", "newarray"); + // call to makeslice - find nel argument + nel = findarg(n, "nel", "makeslice"); if(nel == N || !isslice(n->type)) goto no; @@ -177,8 +177,8 @@ maprewrite(Node *n) Type *ta, *tb; Node *a; - // call to newarray - find nel argument - nel = findarg(n, "hint", "newmap"); + // call to makemap - find len argument + nel = findarg(n, "hint", "makemap"); if(nel == N) goto no; ta = n->type; @@ -371,7 +371,7 @@ sli: if(r->op != OAS && r->op != OEMPTY) continue; - // first usage "nam = (newarray CALL args)" + // first usage "nam = (makeslice CALL args)" if(r->right != N && sametmp(r->left, nam)) { w = slicerewrite(r->right); if(w == N) @@ -427,7 +427,7 @@ return; if(r->op != OAS && r->op != OEMPTY) continue; - // first usage "nam = (newmap CALL args)" + // first usage "nam = (makemap CALL args)" if(r->right != N && sametmp(r->left, nam)) { w = maprewrite(r->right); if(w == N) diff --git a/src/cmd/gc/sys.go b/src/cmd/gc/sys.go index 2144e7c32..3f2492cdf 100644 --- a/src/cmd/gc/sys.go +++ b/src/cmd/gc/sys.go @@ -20,7 +20,7 @@ func printstring(string); func printpointer(any); func printiface(any); func printeface(any); -func printarray(any); +func printslice(any); func printnl(); func printsp(); @@ -29,8 +29,8 @@ func cmpstring(string, string) int; func slicestring(string, int, int) string; func indexstring(string, int) byte; func intstring(int64) string; -func arraystring([]byte) string; -func arraystringi([]int) string; +func slicebytetostring([]byte) string; +func sliceinttostring([]int) string; func stringiter(string, int) int; func stringiter2(string, int) (retk int, retv int); @@ -51,7 +51,7 @@ func efaceeq(i1 any, i2 any) (ret bool); func ifacethash(i1 any) (ret uint32); func efacethash(i1 any) (ret uint32); -func newmap(keysize int, valsize int, +func makemap(keysize int, valsize int, keyalg int, valalg int, hint int) (hmap map[any]any); func mapaccess1(hmap map[any]any, key any) (val any); @@ -63,7 +63,7 @@ func mapiternext(hiter *any); func mapiter1(hiter *any) (key any); func mapiter2(hiter *any) (key any, val any); -func newchan(elemsize int, elemalg int, hint int) (hchan chan any); +func makechan(elemsize int, elemalg int, hint int) (hchan chan any); func chanrecv1(hchan <-chan any) (elem any); func chanrecv2(hchan <-chan any) (elem any, pres bool); func chansend1(hchan chan<- any, elem any); @@ -77,10 +77,10 @@ func selectrecv(sel *byte, hchan <-chan any, elem *any) (selected bool); func selectdefault(sel *byte) (selected bool); func selectgo(sel *byte); -func newarray(nel int, cap int, width int) (ary []any); -func arraysliced(old []any, lb int, hb int, width int) (ary []any); -func arrayslices(old *any, nel int, lb int, hb int, width int) (ary []any); -func arrays2d(old *any, nel int) (ary []any); +func makeslice(nel int, cap int, width int) (ary []any); +func sliceslice(old []any, lb int, hb int, width int) (ary []any); +func slicearray(old *any, nel int, lb int, hb int, width int) (ary []any); +func arraytoslice(old *any, nel int) (ary []any); func closure(); // has args, but compiler fills in diff --git a/src/cmd/gc/walk.c b/src/cmd/gc/walk.c index b7d6d8e5e..ec136df60 100644 --- a/src/cmd/gc/walk.c +++ b/src/cmd/gc/walk.c @@ -773,9 +773,9 @@ walkexpr(Node **np, NodeList **init) walkexpr(&n->right->left, init); walkexpr(&n->right->right, init); // dynamic slice - // arraysliced(old []any, lb int, hb int, width int) (ary []any) + // sliceslice(old []any, lb int, hb int, width int) (ary []any) t = n->type; - fn = syslook("arraysliced", 1); + fn = syslook("sliceslice", 1); argtype(fn, t->type); // any-1 argtype(fn, t->type); // any-2 n = mkcall1(fn, t, init, @@ -790,9 +790,9 @@ walkexpr(Node **np, NodeList **init) walkexpr(&n->right->left, init); walkexpr(&n->right->right, init); // static slice - // arrayslices(old *any, nel int, lb int, hb int, width int) (ary []any) + // slicearray(old *any, nel int, lb int, hb int, width int) (ary []any) t = n->type; - fn = syslook("arrayslices", 1); + fn = syslook("slicearray", 1); argtype(fn, n->left->type); // any-1 argtype(fn, t->type); // any-2 n = mkcall1(fn, t, init, @@ -897,7 +897,7 @@ walkexpr(Node **np, NodeList **init) goto ret; case OMAKECHAN: - n = mkcall1(chanfn("newchan", 1, n->type), n->type, init, + n = mkcall1(chanfn("makechan", 1, n->type), n->type, init, nodintconst(n->type->type->width), nodintconst(algtype(n->type->type)), conv(n->left, types[TINT])); @@ -906,7 +906,7 @@ walkexpr(Node **np, NodeList **init) case OMAKEMAP: t = n->type; - fn = syslook("newmap", 1); + fn = syslook("makemap", 1); argtype(fn, t->down); // any-1 argtype(fn, t->type); // any-2 @@ -919,9 +919,9 @@ walkexpr(Node **np, NodeList **init) goto ret; case OMAKESLICE: - // newarray(nel int, max int, width int) (ary []any) + // makeslice(nel int, max int, width int) (ary []any) t = n->type; - fn = syslook("newarray", 1); + fn = syslook("makeslice", 1); argtype(fn, t->type); // any-1 n = mkcall1(fn, n->type, nil, conv(n->left, types[TINT]), @@ -935,13 +935,13 @@ walkexpr(Node **np, NodeList **init) goto ret; case OARRAYBYTESTR: - // arraystring([]byte) string; - n = mkcall("arraystring", n->type, init, n->left); + // slicebytetostring([]byte) string; + n = mkcall("slicebytetostring", n->type, init, n->left); goto ret; case OARRAYRUNESTR: - // arraystring([]byte) string; - n = mkcall("arraystringi", n->type, init, n->left); + // sliceinttostring([]byte) string; + n = mkcall("sliceinttostring", n->type, init, n->left); goto ret; case OCMPIFACE: @@ -988,8 +988,8 @@ walkexpr(Node **np, NodeList **init) goto ret; case OCONVSLICE: - // arrays2d(old *any, nel int) (ary []any) - fn = syslook("arrays2d", 1); + // arraytoslice(old *any, nel int) (ary []any) + fn = syslook("arraytoslice", 1); argtype(fn, n->left->type->type); // any-1 argtype(fn, n->type->type); // any-2 n = mkcall1(fn, n->type, init, n->left, nodintconst(n->left->type->type->bound)); @@ -1490,7 +1490,7 @@ walkprint(Node *nn, NodeList **init) on = syslook("printpointer", 1); argtype(on, n->type); // any-1 } else if(isslice(n->type)) { - on = syslook("printarray", 1); + on = syslook("printslice", 1); argtype(on, n->type); // any-1 } else if(isint[et]) { if(et == TUINT64) |