Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
R=rsc
CC=golang-dev
http://codereview.appspot.com/1677049
|
|
update other code to match.
R=r
CC=golang-dev
http://codereview.appspot.com/1680044
|
|
various cleanup, deleting unused code
R=ken2
CC=golang-dev
http://codereview.appspot.com/1663041
|
|
only front-end compiler work.
best to do thin in 3 steps
1. frontend
2. backend
3. lib
R=rsc
CC=golang-dev
http://codereview.appspot.com/214042
|
|
more to come, but should suffice for Printf work.
R=ken2
CC=golang-dev
http://codereview.appspot.com/197044
|
|
No longer a distinct type; now a property of func types.
R=ken2
CC=golang-dev
http://codereview.appspot.com/197042
|
|
bonus: type switch now detects multiple uses of identical interface types.
bonus: interface types are now order-independent, following the spec.
R=ken2
CC=golang-dev
http://codereview.appspot.com/194053
|
|
detect compilation of special package runtime with
compiler flag instead of package name.
R=ken2
CC=golang-dev
http://codereview.appspot.com/193080
|
|
5g/6g/8g: add import statements to export metadata, mapping package path to package name.
recognize "" as the path of the package in export metadata.
use "" as the path of the package in object symbol names.
5c/6c/8c, 5a/6a/8a: rewrite leading . to "". so that ·Sin means Sin in this package.
5l/6l/8l: rewrite "" in symbol names as object files are read.
gotest: handle new symbol names.
gopack: handle new import lines in export metadata.
Collectively, these changes eliminate the assumption of a global
name space in the object file formats. Higher level pieces such as
reflect and the computation of type hashes still depend on the
assumption; we're not done yet.
R=ken2, r, ken3
CC=golang-dev
http://codereview.appspot.com/186263
Committer: Russ Cox <rsc@golang.org>
|
|
reported by erik quanstrom.
R=ken2
http://codereview.appspot.com/181071
|
|
R=ken2
http://codereview.appspot.com/180092
|
|
* inform garbage collector about memory with no pointers in it
1.9s gcc reverse-complement.c
reverse-complement.go
4.5s / 3.5s original, with/without bounds checks
3.5s / 3.3s bounds check reduction
3.3s / 2.8s smarter garbage collector
2.6s / 2.3s assembler bytes.IndexByte
2.5s / 2.1s even smarter garbage collector (this CL)
R=r
http://codereview.appspot.com/165064
|
|
also eliminate float80 dregs
R=ken
OCL=35894
CL=35896
|
|
R=ken
OCL=34859
CL=34865
|
|
R=ken
OCL=34244
CL=34249
|
|
to write type descriptors for ideal types
R=ken
OCL=33958
CL=33958
|
|
archive size +70%
binary size +30%
old
wreck.mtv=; ls -l /Users/rsc/bin/{godoc,gofmt}
-rwxr-xr-x 1 rsc eng 1487922 Aug 13 13:21 /Users/rsc/bin/godoc
-rwxr-xr-x 1 rsc eng 995995 Aug 13 13:21 /Users/rsc/bin/gofmt
wreck.mtv=; du -sh $GOROOT/pkg/
9.5M /home/rsc/go/pkg/
wreck.mtv=;
new
wreck.mtv=; ls -l /Users/rsc/bin/{godoc,gofmt}
-rwxr-xr-x 1 rsc eng 2014390 Aug 13 14:25 /Users/rsc/bin/godoc
-rwxr-xr-x 1 rsc eng 1268705 Aug 13 14:25 /Users/rsc/bin/gofmt
wreck.mtv=; du -sh $GOROOT/pkg
16M /home/rsc/go/pkg
wreck.mtv=;
R=ken
OCL=33217
CL=33220
|
|
R=ken
OCL=33108
CL=33113
|
|
still to do:
* initializer cycle detection
* nicer error for type checking cycles
R=ken
OCL=32855
CL=32880
|
|
collapse a lot of duplication in dcl.c
switch to NodeList* from Dcl*
R=ken
OCL=32770
CL=32770
|
|
(reported by iant)
R=r
DELTA=50 (32 added, 12 deleted, 6 changed)
OCL=32263
CL=32385
|
|
introduce NodeList* type in compiler to replace OLIST.
this clarifies where lists can and cannot occur.
list append and concatenation are now cheap.
the _r rules are gone from yacc.
rev and unrev are gone.
no more lists of lists.
the representation of assignments is a bit clunkier.
split into OAS (1=1) and OAS2 (2 or more on one side).
delete dead chanrecv3 code.
delay construction of func types.
R=ken
OCL=31745
CL=31762
|
|
R=ken
OCL=31310
CL=31310
|
|
R=ken
OCL=31122
CL=31278
|