]> Cypherpunks.ru repositories - gostls13.git/log
gostls13.git
13 years agotag release.2010-10-27 weekly.2010-10-27
Andrew Gerrand [Thu, 28 Oct 2010 00:21:44 +0000 (11:21 +1100)]
tag release.2010-10-27

R=rsc
CC=golang-dev
https://golang.org/cl/2778042

13 years agorelease.2010-10-27
Andrew Gerrand [Thu, 28 Oct 2010 00:19:52 +0000 (11:19 +1100)]
release.2010-10-27

R=rsc
CC=golang-dev
https://golang.org/cl/2747044

13 years agorpc: expose Server type to allow multiple RPC Server instances
Andrew Gerrand [Thu, 28 Oct 2010 00:05:56 +0000 (11:05 +1100)]
rpc: expose Server type to allow multiple RPC Server instances

R=r, rsc, msolo, sougou
CC=golang-dev
https://golang.org/cl/2696041

13 years agogo spec: clarify return type of append, argument type for ...T parameters
Robert Griesemer [Wed, 27 Oct 2010 17:44:31 +0000 (10:44 -0700)]
go spec: clarify return type of append, argument type for ...T parameters

R=iant, ken2, r, rsc
CC=golang-dev
https://golang.org/cl/2774041

13 years agoimage/png: speed up paletted encoding ~25%
Brad Fitzpatrick [Wed, 27 Oct 2010 11:48:18 +0000 (22:48 +1100)]
image/png: speed up paletted encoding ~25%

Avoids a lot of redundant bounds checks.

R=nigeltao, rsc
CC=golang-dev
https://golang.org/cl/2678041

13 years agouse copy
Russ Cox [Wed, 27 Oct 2010 04:52:54 +0000 (21:52 -0700)]
use copy

R=gri
CC=golang-dev
https://golang.org/cl/2763041

13 years ago5g, 6g, 8g: generate code for string index
Russ Cox [Wed, 27 Oct 2010 04:11:17 +0000 (21:11 -0700)]
5g, 6g, 8g: generate code for string index
instead of calling function.

R=ken2
CC=golang-dev
https://golang.org/cl/2762041

13 years agobig: arm assembly, faster software mulWW, divWW
Russ Cox [Wed, 27 Oct 2010 04:10:17 +0000 (21:10 -0700)]
big: arm assembly, faster software mulWW, divWW

Reduces time spent running crypto/rsa test by 65%.

Fixes #1227.

R=gri, PeterGo
CC=golang-dev
https://golang.org/cl/2743041

13 years agogo spec: note re: append() not being implemented yet
Robert Griesemer [Wed, 27 Oct 2010 03:30:35 +0000 (20:30 -0700)]
go spec: note re: append() not being implemented yet

R=rsc
CC=golang-dev
https://golang.org/cl/2761041

13 years agobuilder: pass GOHOSTOS and GOHOSTARCH to build
Andrew Gerrand [Wed, 27 Oct 2010 00:27:52 +0000 (11:27 +1100)]
builder: pass GOHOSTOS and GOHOSTARCH to build

R=rsc
CC=golang-dev
https://golang.org/cl/2759041

13 years agogob: must register basic types to store them in interfaces.
Rob Pike [Wed, 27 Oct 2010 00:07:39 +0000 (17:07 -0700)]
gob: must register basic types to store them in interfaces.
Fixes #1230.

R=rsc
CC=golang-dev
https://golang.org/cl/2750041

13 years agogob: package doc fixes.
Nigel Tao [Tue, 26 Oct 2010 23:46:00 +0000 (10:46 +1100)]
gob: package doc fixes.

R=r, r2, nigeltao_gnome
CC=golang-dev
https://golang.org/cl/2748041

13 years agotest copy([]byte, string)
Russ Cox [Tue, 26 Oct 2010 15:36:23 +0000 (08:36 -0700)]
test copy([]byte, string)

R=r, r2
CC=golang-dev
https://golang.org/cl/2740041

13 years agogc, runtime: copy([]byte, string)
Russ Cox [Tue, 26 Oct 2010 15:36:07 +0000 (08:36 -0700)]
gc, runtime: copy([]byte, string)

R=ken2
CC=golang-dev
https://golang.org/cl/2741041

13 years agoinstall doc: arm is a little better
Russ Cox [Tue, 26 Oct 2010 15:34:40 +0000 (08:34 -0700)]
install doc: arm is a little better

R=adg, r, r2
CC=golang-dev
https://golang.org/cl/2749041

13 years agodoc: update roadmap
Andrew Gerrand [Tue, 26 Oct 2010 05:29:21 +0000 (16:29 +1100)]
doc: update roadmap

R=rsc
CC=golang-dev
https://golang.org/cl/2735042

13 years agodoc: update roadmap
Andrew Gerrand [Tue, 26 Oct 2010 05:18:12 +0000 (16:18 +1100)]
doc: update roadmap

R=r, rsc, iant
CC=golang-dev
https://golang.org/cl/2312042

13 years agoarm: enable all tests
Russ Cox [Tue, 26 Oct 2010 04:25:13 +0000 (21:25 -0700)]
arm: enable all tests

ARM functionality is now completely working.
(Or if it's not, we'll fix it.)

R=ken2
CC=golang-dev
https://golang.org/cl/2738041

13 years agogodoc: show page title in browser title bar
Robert Griesemer [Tue, 26 Oct 2010 01:11:00 +0000 (18:11 -0700)]
godoc: show page title in browser title bar

Fixes #1158.

R=adg
CC=golang-dev
https://golang.org/cl/2736041

13 years agodebug/gosym: do not run when cross-compiling
Russ Cox [Tue, 26 Oct 2010 01:00:42 +0000 (18:00 -0700)]
debug/gosym: do not run when cross-compiling

R=r
CC=golang-dev
https://golang.org/cl/2737041

13 years agoarm: precise float64 software floating point
Russ Cox [Tue, 26 Oct 2010 00:55:50 +0000 (17:55 -0700)]
arm: precise float64 software floating point

Adds softfloat64 to generic runtime
(will be discarded by linker when unused)
and adds test for it.  I used the test to check
the software code against amd64 hardware
and then check the software code against
the arm and its simulation of hardware.
The latter should have been a no-op (testing
against itself) but turned up a bug in 5c causing
the vlrt.c routines to miscompile.

These changes make the cmath, math,
and strconv tests pass without any special
accommodations for arm.

R=ken2
CC=golang-dev
https://golang.org/cl/2713042

13 years agobig: delete unnecessary type decls
Robert Griesemer [Tue, 26 Oct 2010 00:45:43 +0000 (17:45 -0700)]
big: delete unnecessary type decls

R=rsc, r
CC=golang-dev
https://golang.org/cl/2732041

13 years agotabwriter: delete unnecessary type declaration
Robert Griesemer [Tue, 26 Oct 2010 00:45:26 +0000 (17:45 -0700)]
tabwriter: delete unnecessary type declaration

R=rsc, r2
CC=golang-dev
https://golang.org/cl/2733041

13 years agogo/scanner: delete unnecessary type declarations
Robert Griesemer [Tue, 26 Oct 2010 00:44:54 +0000 (17:44 -0700)]
go/scanner: delete unnecessary type declarations

R=rsc, r2
CC=golang-dev
https://golang.org/cl/2735041

13 years agogotest: generate correct gofmt-formatted _testmain.go
Rob Pike [Tue, 26 Oct 2010 00:03:25 +0000 (17:03 -0700)]
gotest: generate correct gofmt-formatted _testmain.go
Fixes #1225.

R=adg
CC=golang-dev
https://golang.org/cl/2729041

13 years agogoinstall: display helpful message when encountering a cgo package.
Andrew Gerrand [Mon, 25 Oct 2010 23:59:30 +0000 (10:59 +1100)]
goinstall: display helpful message when encountering a cgo package.

R=rsc
CC=golang-dev
https://golang.org/cl/2701042

13 years agoruntime: remove .c generated from .goc during make clean
Russ Cox [Mon, 25 Oct 2010 23:54:59 +0000 (16:54 -0700)]
runtime: remove .c generated from .goc during make clean

R=r
CC=golang-dev
https://golang.org/cl/2704042

13 years agogo spec: append built-in
Robert Griesemer [Mon, 25 Oct 2010 23:50:31 +0000 (16:50 -0700)]
go spec: append built-in

R=iant, ken2, r, rsc
CC=golang-dev
https://golang.org/cl/2627043

13 years agogo_spec: allow copy() to copy bytes from a string into a []byte
Robert Griesemer [Mon, 25 Oct 2010 23:41:06 +0000 (16:41 -0700)]
go_spec: allow copy() to copy bytes from a string into a []byte
         (language change as discussed a while ago)

R=iant, ken2, r, rsc
CC=golang-dev
https://golang.org/cl/2716041

13 years agoarm: fix signal handler
Russ Cox [Mon, 25 Oct 2010 23:32:36 +0000 (01:32 +0200)]
arm: fix signal handler

R=ken2
CC=golang-dev
https://golang.org/cl/2670042

13 years ago5g: complex "regalloc"
Russ Cox [Mon, 25 Oct 2010 23:26:33 +0000 (01:26 +0200)]
5g: complex "regalloc"

R=ken2
CC=golang-dev
https://golang.org/cl/2727041

13 years ago5c: implement uint32 -> float
Russ Cox [Mon, 25 Oct 2010 23:18:16 +0000 (16:18 -0700)]
5c: implement uint32 -> float

There are other missing conversion cases
still but they do not show up in my tests.
This one is needed for vlrt.c's _v2d (int64, uint64 -> float).

Thankfully, VFP has a single instruction to do this.

R=ken2
CC=golang-dev
https://golang.org/cl/2726041

13 years agobuild: only print "You need to add foo to PATH" when needed
Andrew Gerrand [Mon, 25 Oct 2010 05:38:48 +0000 (16:38 +1100)]
build: only print "You need to add foo to PATH" when needed

Fixes #1223.

R=bradfitz
CC=golang-dev
https://golang.org/cl/2701041

13 years agocontainer/list: elide redundant tests and fix comment typo
Andrew Gerrand [Mon, 25 Oct 2010 03:50:47 +0000 (14:50 +1100)]
container/list: elide redundant tests and fix comment typo

R=dsymonds
CC=golang-dev
https://golang.org/cl/2700041

13 years agocontainer/list: fix Remove bug and use pointer to self as identifier
Andrew Gerrand [Mon, 25 Oct 2010 03:37:30 +0000 (14:37 +1100)]
container/list: fix Remove bug and use pointer to self as identifier

Remove wasn't nil'ing the *Element.id. This property was exploited
by MoveToFront and MoveToBack internally, so I renamed the existing
Remove to "remove", and created an exported wrapper "Remove" that does
the right thing for the user's sake.

Also, saved an allocation by using *List as the id rather than *byte.

Fixes #1224.

R=rsc, dsymonds
CC=golang-dev
https://golang.org/cl/2685042

13 years agogoinstall: don't wrongly error out with "multiple package names"
Fazlul Shahriar [Mon, 25 Oct 2010 02:13:00 +0000 (13:13 +1100)]
goinstall: don't wrongly error out with "multiple package names"

Fixes #1215.

R=adg, rsc
CC=golang-dev
https://golang.org/cl/2695042

13 years ago6l/8l: global and local variables and type info.
Luuk van Dijk [Sun, 24 Oct 2010 21:07:52 +0000 (23:07 +0200)]
6l/8l: global and local variables and type info.

R=rsc
CC=golang-dev
https://golang.org/cl/2201044

13 years agogob: error cleanup 2
Rob Pike [Fri, 22 Oct 2010 23:07:26 +0000 (16:07 -0700)]
gob: error cleanup 2
Simplify error handling during the compilation phase.

R=rsc
CC=golang-dev
https://golang.org/cl/2652042

13 years agogobs: error cleanup part 1.
Rob Pike [Fri, 22 Oct 2010 22:16:34 +0000 (15:16 -0700)]
gobs: error cleanup part 1.
Remove err from the encoderState and decoderState types, so we're
not always copying to and from various copies of the error, and then
use panic/recover to eliminate lots of error checking.

another pass might take a crack at the same thing for the compilation phase.

R=rsc
CC=golang-dev
https://golang.org/cl/2660042

13 years agoruntime: print unknown types in panic
Russ Cox [Fri, 22 Oct 2010 21:04:32 +0000 (17:04 -0400)]
runtime: print unknown types in panic

R=r
CC=golang-dev
https://golang.org/cl/2683041

13 years ago5l, 6l, 8l: introduce sub-symbols
Russ Cox [Fri, 22 Oct 2010 19:27:50 +0000 (15:27 -0400)]
5l, 6l, 8l: introduce sub-symbols

Sub-symbols are laid out inside a larger symbol
but can be addressed directly.

Use to make Mach-O pointer array not a special case.

Will use later to describe ELF sections.

Glimpses of the beginning of ELF loading.

R=ken2
CC=golang-dev
https://golang.org/cl/2623043

13 years agogob: allow exchange of interface values
Rob Pike [Fri, 22 Oct 2010 18:17:40 +0000 (11:17 -0700)]
gob: allow exchange of interface values

The implemetation describes each value as a string identifying the
concrete type of the value, followed by the usual encoding of that
value.  All types to be exchanged as contents of interface values
must be registered ahead of time with the new Register function.
Although this would not seem strictly necessary, the linker garbage
collects unused types so without some mechanism to guarantee
the type exists in the binary, there could be unpleasant surprises.
Moreover, the receiver needs a reflect.Type of the value to be
written in order to be able to save the data. A Register function
seems necessary.

The implementation may require defining types in the middle of
of sending a value.  The old code never did this. Therefore there
has been some refactoring to make the encoder and decoder
work recursively.

This change changes the internal type IDs. Existing gob archives
will break with this change.  Apologies for that. If this is a deal
breaker it should be possible to create a conversion tool.

Error handling is too complicated in this code. A subsequent
change should clean it up.

R=rsc
CC=golang-dev
https://golang.org/cl/2618042

13 years agogofmt -s -w src misc
Robert Griesemer [Fri, 22 Oct 2010 17:06:33 +0000 (10:06 -0700)]
gofmt -s -w src misc

R=r, rsc
CC=golang-dev
https://golang.org/cl/2662041

13 years agogo ast/parser/printer: permit elision of composite literal types for composite litera...
Robert Griesemer [Fri, 22 Oct 2010 17:03:14 +0000 (10:03 -0700)]
go ast/parser/printer: permit elision of composite literal types for composite literal elements
gofmt: added -s flag to simplify composite literal expressions through type elision where possible

R=rsc
CC=golang-dev
https://golang.org/cl/2319041

13 years agogo spec: relaxed syntax for array, slice, and map composite literals
Robert Griesemer [Fri, 22 Oct 2010 15:58:52 +0000 (08:58 -0700)]
go spec: relaxed syntax for array, slice, and map composite literals

For elements which are themselves composite literals, the type may
be omitted if it is identical to the element type of the containing
composite literal.

R=r, rsc, iant, ken2
CC=golang-dev
https://golang.org/cl/2661041

13 years agoarm: 3 more tests pass
Russ Cox [Fri, 22 Oct 2010 03:53:03 +0000 (05:53 +0200)]
arm: 3 more tests pass

R=ken2
CC=golang-dev
https://golang.org/cl/2666041

13 years ago5g: missed one case last night
Russ Cox [Fri, 22 Oct 2010 03:50:45 +0000 (05:50 +0200)]
5g: missed one case last night

R=ken2
CC=golang-dev
https://golang.org/cl/2658042

13 years agogc: implement new composite literal spec
Russ Cox [Fri, 22 Oct 2010 03:17:20 +0000 (23:17 -0400)]
gc: implement new composite literal spec

R=ken2
CC=golang-dev
https://golang.org/cl/2350041

13 years agobug right shifting 64 bits
Ken Thompson [Fri, 22 Oct 2010 01:15:00 +0000 (18:15 -0700)]
bug right shifting 64 bits
by a variable that equals 32

R=rsc
CC=golang-dev
https://golang.org/cl/2645042

13 years agoplayground: s/it/this/
Andrew Gerrand [Thu, 21 Oct 2010 23:49:29 +0000 (10:49 +1100)]
playground: s/it/this/

R=r, r2
CC=golang-dev
https://golang.org/cl/2663041

13 years agoMake.inc: delete unnecessary -no-inline flag to quietgcc
Rob Pike [Thu, 21 Oct 2010 18:00:54 +0000 (11:00 -0700)]
Make.inc: delete unnecessary -no-inline flag to quietgcc

R=rsc
CC=golang-dev
https://golang.org/cl/2654041

13 years agofix windows build
Russ Cox [Thu, 21 Oct 2010 17:06:17 +0000 (13:06 -0400)]
fix windows build

R=ken2
CC=golang-dev
https://golang.org/cl/2650041

13 years agofix arm build
Russ Cox [Thu, 21 Oct 2010 17:03:59 +0000 (13:03 -0400)]
fix arm build

R=ken2
CC=golang-dev
https://golang.org/cl/2649041

13 years agofix build
Russ Cox [Thu, 21 Oct 2010 16:50:23 +0000 (12:50 -0400)]
fix build

R=ken2
CC=golang-dev
https://golang.org/cl/2621042

13 years agogo/parser: consume auto-inserted semi when calling ParseExpr()
Robert Griesemer [Thu, 21 Oct 2010 15:40:33 +0000 (08:40 -0700)]
go/parser: consume auto-inserted semi when calling ParseExpr()

Fixes #1170.

R=rsc
CC=golang-dev
https://golang.org/cl/2622041

13 years agold: abandon symbol-driven archive loading
Russ Cox [Thu, 21 Oct 2010 15:39:47 +0000 (11:39 -0400)]
ld: abandon symbol-driven archive loading

Load the entire archive file instead.
Reduces I/O by avoiding additional passes
through libraries to resolve symbols.
Go packages always need all the files anyway
(most often, all 1 of them).

R=ken2
CC=golang-dev
https://golang.org/cl/2613042

13 years agoencoding/binary: give LittleEndian, BigEndian specific types
Russ Cox [Thu, 21 Oct 2010 15:25:14 +0000 (11:25 -0400)]
encoding/binary: give LittleEndian, BigEndian specific types

Giving them specific types has the benefit that
binary.BigEndian.Uint32(b) is now a direct call, not an
indirect via a mutable interface value, so it can potentially
be inlined.

Recent changes to the spec relaxed the rules for comparison,
so this code is still valid:

func isLittle(o binary.ByteOrder) { return o == binary.LittleEndian }

The change does break this potential idiom:

o := binary.BigEndian
if foo {
o = binary.LittleEndian
}

That must rewrite to give o an explicit binary.ByteOrder type.
On balance I think the benefit from the direct call and inlining
outweigh the cost of breaking that idiom.

R=r, r2
CC=golang-dev
https://golang.org/cl/2427042

13 years agonet: fix comment on Dial to mention unix/unixgram.
David Symonds [Thu, 21 Oct 2010 12:17:24 +0000 (08:17 -0400)]
net: fix comment on Dial to mention unix/unixgram.

R=rsc
CC=golang-dev
https://golang.org/cl/2639041

13 years agoarm: prop up software floating point
Russ Cox [Thu, 21 Oct 2010 04:56:20 +0000 (06:56 +0200)]
arm: prop up software floating point

Just enough to make mov instructions work,
which in turn is enough to make strconv work
when it avoids any floating point calculations.
That makes a bunch of other packages pass
their tests.

Should suffice until hardware floating point
is available.

Enable package tests that now pass
(some due to earlier fixes).

Looks like there is a new integer math bug
exposed in the fmt and json tests.

R=ken2
CC=golang-dev
https://golang.org/cl/2638041

13 years agomisc: update python scripts to specify python2 or nothing
Andrew Gerrand [Thu, 21 Oct 2010 04:41:51 +0000 (15:41 +1100)]
misc: update python scripts to specify python2 or nothing

(Hopefully this changeset will notice my +x to googlecode_upload.py)

Fixes #1217.

R=rsc
CC=golang-dev
https://golang.org/cl/2634041

13 years agogobuilder: write build and benchmarking logs to disk
Andrew Gerrand [Thu, 21 Oct 2010 04:33:31 +0000 (15:33 +1100)]
gobuilder: write build and benchmarking logs to disk

R=rsc
CC=golang-dev
https://golang.org/cl/2637041

13 years agogo_tutorial: change wording slightly and sync .txt and .html post-gofmt
Andrew Gerrand [Thu, 21 Oct 2010 03:59:23 +0000 (14:59 +1100)]
go_tutorial: change wording slightly and sync .txt and .html post-gofmt

Fixes #1211.

R=r, r2
CC=golang-dev
https://golang.org/cl/2635041

13 years agoweb socket: fix short Read
Fumitoshi Ukai [Thu, 21 Oct 2010 02:36:06 +0000 (22:36 -0400)]
web socket: fix short Read

Fixes #1145.

R=rsc
CC=golang-dev
https://golang.org/cl/2302042

13 years agotest/bench: update numbers
Rob Pike [Thu, 21 Oct 2010 00:43:57 +0000 (17:43 -0700)]
test/bench: update numbers

R=golang-dev, adg
CC=golang-dev
https://golang.org/cl/2631041

13 years agotag release.2010-10-20
Andrew Gerrand [Thu, 21 Oct 2010 00:35:17 +0000 (11:35 +1100)]
tag release.2010-10-20

R=r
CC=golang-dev
https://golang.org/cl/2624042

13 years agorelease.2010-10-20 weekly.2010-10-20
Andrew Gerrand [Thu, 21 Oct 2010 00:33:41 +0000 (11:33 +1100)]
release.2010-10-20

R=r, rsc
CC=golang-dev
https://golang.org/cl/2629041

13 years agogoinstall: fix documentation typo
Fazlul Shahriar [Wed, 20 Oct 2010 23:47:02 +0000 (10:47 +1100)]
goinstall: fix documentation typo

R=golang-dev, adg
CC=golang-dev
https://golang.org/cl/2585043

13 years agobuild: add gobuilder and goplay to run.bash
Andrew Gerrand [Wed, 20 Oct 2010 23:46:10 +0000 (10:46 +1100)]
build: add gobuilder and goplay to run.bash
gobuilder: fix build to work with new log package

R=rsc
CC=golang-dev
https://golang.org/cl/2592041

13 years agoos: correct Stat S_ISDIR on Windows
Yasuhiro Matsumoto [Wed, 20 Oct 2010 23:29:45 +0000 (10:29 +1100)]
os: correct Stat S_ISDIR on Windows

R=rsc, brainman
CC=golang-dev
https://golang.org/cl/2598041

13 years ago5l: two stack split bugs in one day
Russ Cox [Wed, 20 Oct 2010 22:11:53 +0000 (18:11 -0400)]
5l: two stack split bugs in one day

An ARM expert could probably phrase the
comparison in fewer instructions, but this works.

R=ken2
CC=golang-dev
https://golang.org/cl/2620041

13 years agoencoding/hex: fix typo
Russ Cox [Wed, 20 Oct 2010 20:38:57 +0000 (16:38 -0400)]
encoding/hex: fix typo

Thanks to avadh4all for spotting it.

Fixes #1214.

R=r, r2
CC=golang-dev
https://golang.org/cl/2616041

13 years agogc: select receive with implicit conversion
Russ Cox [Wed, 20 Oct 2010 20:38:25 +0000 (16:38 -0400)]
gc: select receive with implicit conversion

Fixes #1172.

R=ken2
CC=golang-dev
https://golang.org/cl/2615041

13 years agocode gen error for *(complex)++
Ken Thompson [Wed, 20 Oct 2010 20:18:00 +0000 (13:18 -0700)]
code gen error for *(complex)++
includes array[i]++ and slice[i]++

R=rsc
CC=golang-dev
https://golang.org/cl/2614041

13 years agoruntime: don't let select split stack
Russ Cox [Wed, 20 Oct 2010 19:54:17 +0000 (15:54 -0400)]
runtime: don't let select split stack

Fixes #1209.

R=ken2
CC=golang-dev
https://golang.org/cl/2612041

13 years agoarm: fix typo in softfloat
Russ Cox [Wed, 20 Oct 2010 19:35:37 +0000 (15:35 -0400)]
arm: fix typo in softfloat

R=kaib
CC=golang-dev
https://golang.org/cl/2608041

13 years ago6l: correct logic for morestack choice
Russ Cox [Wed, 20 Oct 2010 19:16:39 +0000 (12:16 -0700)]
6l: correct logic for morestack choice

The frame that gets allocated is for both
the args and the autos.  If together they
exceed the default frame size, we need to
tell morestack about both so that it allocates
a large enough frame.

Sanity check stack pointer in morestack
to catch similar bugs.

R=ken2
CC=golang-dev
https://golang.org/cl/2609041

13 years agoarm: more tests pass
Russ Cox [Wed, 20 Oct 2010 15:43:27 +0000 (11:43 -0400)]
arm: more tests pass

R=ken2
CC=golang-dev
https://golang.org/cl/2606041

13 years agosyscall/arm: correct 64-bit system call arguments
Russ Cox [Wed, 20 Oct 2010 14:39:46 +0000 (10:39 -0400)]
syscall/arm: correct 64-bit system call arguments

Thanks to kaib for the tip.

R=ken2
CC=golang-dev
https://golang.org/cl/2596043

13 years ago6g: avoid too-large immediate constants
Russ Cox [Wed, 20 Oct 2010 04:40:06 +0000 (00:40 -0400)]
6g: avoid too-large immediate constants

R=ken2
CC=golang-dev
https://golang.org/cl/2566042

13 years agoreflect: add InterfaceValue.Get to enable setting of an interface
Rob Pike [Wed, 20 Oct 2010 04:25:28 +0000 (21:25 -0700)]
reflect: add InterfaceValue.Get to enable setting of an interface
value (through unsafe means) without having a reflect.Type
of type *interface{} (pointer to interface).  This is needed to make
gob able to handle interface values by a method analogous to
the way it handles maps.

R=rsc
CC=golang-dev
https://golang.org/cl/2597041

13 years agogob: break documentation into a separate doc.go file
Rob Pike [Wed, 20 Oct 2010 03:39:29 +0000 (20:39 -0700)]
gob: break documentation into a separate doc.go file

R=adg, r2
CC=golang-dev
https://golang.org/cl/2596041

13 years agohttp: do not close connection after sending HTTP/1.0 request
Russ Cox [Wed, 20 Oct 2010 03:29:25 +0000 (23:29 -0400)]
http: do not close connection after sending HTTP/1.0 request

Fixes #671.

R=adg, cw
CC=golang-dev
https://golang.org/cl/2431042

13 years ago8l: fix windows build
Alex Brainman [Wed, 20 Oct 2010 03:06:00 +0000 (14:06 +1100)]
8l: fix windows build

R=rsc
CC=golang-dev
https://golang.org/cl/2595041

13 years agoos: change TestForkExec so it can run on windows
Yasuhiro Matsumoto [Tue, 19 Oct 2010 22:46:24 +0000 (09:46 +1100)]
os: change TestForkExec so it can run on windows

R=brainman, vcc, Joe Poirier, rsc
CC=golang-dev
https://golang.org/cl/2530041

13 years agonntp: remove nntp package from the standard library.
Nigel Tao [Tue, 19 Oct 2010 22:43:27 +0000 (09:43 +1100)]
nntp: remove nntp package from the standard library.

R=adg
CC=golang-dev
https://golang.org/cl/2470045

13 years ago8l: fix references to INITDAT in windows pe.c
Russ Cox [Tue, 19 Oct 2010 22:17:07 +0000 (18:17 -0400)]
8l: fix references to INITDAT in windows pe.c

R=ken2
CC=golang-dev
https://golang.org/cl/2588041

13 years ago5l, 6l, 8l: link pclntab and symtab as ordinary rodata symbols
Russ Cox [Tue, 19 Oct 2010 22:07:19 +0000 (18:07 -0400)]
5l, 6l, 8l: link pclntab and symtab as ordinary rodata symbols

That is, move the pc/ln table and the symbol table
into the read-only data segment.  This eliminates
the need for a special load command to map the
symbol table into memory, which makes the
information available on systems that couldn't handle
the magic load to 0x99000000, like NaCl and ARM QEMU
and Linux without config_highmem=y.  It also
eliminates an #ifdef and some clumsy code to
find the symbol table on Windows.

The bad news is that the binary appears to be bigger
than it used to be.  This is not actually the case, though:
the same amount of data is being mapped into memory
as before, and the tables are still read-only, so they're
still shared across multiple instances of the binary as
they were before.  The difference is just that the tables
aren't squirreled away in some section that "size" doesn't
know to look at.

This is a checkpoint.
It probably breaks Windows and breaks NaCl more
than it used to be broken, but those will be fixed.
The logic involving -s needs to be revisited too.

Fixes #871.

R=ken2
CC=golang-dev
https://golang.org/cl/2587041

13 years ago5l, 6l, 8l: separate pass to fix addresses
Russ Cox [Tue, 19 Oct 2010 17:08:17 +0000 (13:08 -0400)]
5l, 6l, 8l: separate pass to fix addresses
Lay out code before data.

R=ken2
CC=golang-dev
https://golang.org/cl/2490043

13 years ago[68]l: expose genasmsym.
Luuk van Dijk [Tue, 19 Oct 2010 16:09:18 +0000 (18:09 +0200)]
[68]l: expose genasmsym.

R=rsc
CC=golang-dev
https://golang.org/cl/2512042

13 years agogoplay: fix to run under windows.
Yasuhiro Matsumoto [Tue, 19 Oct 2010 00:29:31 +0000 (11:29 +1100)]
goplay: fix to run under windows.

Fixes #1204.

R=golang-dev, brainman, Joe Poirier, alex.brainman, adg
CC=golang-dev, math-nuts
https://golang.org/cl/2532041

13 years agoA+C: Yasuhiro Matsumoto
Andrew Gerrand [Mon, 18 Oct 2010 23:20:32 +0000 (10:20 +1100)]
A+C: Yasuhiro Matsumoto

R=r, r2
CC=golang-dev
https://golang.org/cl/2543044

13 years agofix bug in example. need to convert Value to float in Abs example
Rob Pike [Mon, 18 Oct 2010 23:05:50 +0000 (16:05 -0700)]
fix bug in example. need to convert Value to float in Abs example

R=adg
CC=golang-dev
https://golang.org/cl/2486043

13 years agogc: update usage string in doc.go
Andrew Gerrand [Mon, 18 Oct 2010 22:26:11 +0000 (09:26 +1100)]
gc: update usage string in doc.go

R=rsc, r2, r
CC=golang-dev
https://golang.org/cl/2550041

13 years agonetchan: add new method Hangup to terminate transmission on a channel
Rob Pike [Mon, 18 Oct 2010 22:09:43 +0000 (15:09 -0700)]
netchan: add new method Hangup to terminate transmission on a channel
Fixes #1151.

R=rsc
CC=golang-dev
https://golang.org/cl/2469043

13 years agobig: add random number generation
Florian Uekermann [Mon, 18 Oct 2010 18:09:20 +0000 (14:09 -0400)]
big: add random number generation

Adds func (z *Int) RandIntn(src rand.Source,n *Int) *Int

R=rsc
CC=golang-dev, gri
https://golang.org/cl/2315045

13 years agoA+C: Florian Ukermann (individual CLA)
Russ Cox [Mon, 18 Oct 2010 18:02:24 +0000 (14:02 -0400)]
A+C: Florian Ukermann (individual CLA)

R=r, r2
CC=florian, golang-dev
https://golang.org/cl/2554042

13 years ago5l: handle jump to middle of floating point sequence
Russ Cox [Mon, 18 Oct 2010 17:44:39 +0000 (13:44 -0400)]
5l: handle jump to middle of floating point sequence

R=ken2
CC=golang-dev
https://golang.org/cl/2473042

13 years agoruntime: fix arm softfloat again for R12
Russ Cox [Mon, 18 Oct 2010 17:24:19 +0000 (13:24 -0400)]
runtime: fix arm softfloat again for R12

Missed a case, so now generalized.

R=ken2
CC=golang-dev
https://golang.org/cl/2540042

13 years agoruntime: fix amd64 build (broke by 386 support for Plan 9)
Russ Cox [Mon, 18 Oct 2010 17:01:10 +0000 (13:01 -0400)]
runtime: fix amd64 build (broke by 386 support for Plan 9)

TBR=r
CC=golang-dev
https://golang.org/cl/2556041

13 years ago8l, runtime: initial support for Plan 9
Yuval Pavel Zholkover [Mon, 18 Oct 2010 16:32:55 +0000 (12:32 -0400)]
8l, runtime: initial support for Plan 9

No multiple processes/locks, managed to compile
and run a hello.go (with print not fmt).  Also test/sieve.go
seems to run until 439 and stops with a
'throw: all goroutines are asleep - deadlock!'
- just like runtime/tiny.

based on Russ's suggestions at:
http://groups.google.com/group/comp.os.plan9/browse_thread/thread/cfda8b82535d2d68/243777a597ec1612

Build instructions:
cd src/pkg/runtime
make clean && GOOS=plan9 make install
this will build and install the runtime.

When linking with 8l, you should pass -s to suppress symbol
generation in the a.out, otherwise the generated executable will not run.

This is runtime only, the porting of the toolchain has already
been done: http://code.google.com/p/go-plan9/source/browse
in the plan9-quanstro branch.

R=rsc
CC=golang-dev
https://golang.org/cl/2273041