- 05 Nov, 2014 4 commits
-
-
Russ Cox authored
Now each C printf, Go print, or Go println is guaranteed not to be interleaved with other calls of those functions. This should help when debugging concurrent failures. LGTM=rlh R=rlh CC=golang-codereviews https://golang.org/cl/169120043
-
Russ Cox authored
We still don't know why this is happening. LGTM=rlh R=rlh CC=golang-codereviews https://golang.org/cl/169990043
-
Russ Cox authored
- Some sequencing issues with stopping the first gc_m round at the right place to set up correctly for the second round. - atomicxor8 is not idempotent; avoid xor. - Maintain BitsDead type bits correctly; see long comment added. - Enable checkmark phase by default for now. LGTM=rlh R=rlh CC=golang-codereviews https://golang.org/cl/171090043
-
Russ Cox authored
TBR=crawshaw R=crawshaw CC=golang-codereviews https://golang.org/cl/168860046
-
- 04 Nov, 2014 1 commit
-
-
Rick Hudson authored
This adds an independent mark phase to the GC that can be used to verify the the default concurrent mark phase has found all reachable objects. It uses the upper 2 bits of the boundary nibble to encode the mark leaving the lower bits to encode the boundary and the normal mark bit. LGTM=rsc R=rsc CC=golang-codereviews https://golang.org/cl/167130043
-
- 30 Oct, 2014 1 commit
-
-
Russ Cox authored
This CL implements the many multiword write barriers by calling writebarrierptr, so that only writebarrierptr needs the actual barrier. In lieu of an actual barrier, writebarrierptr checks that the value being copied is not a small non-zero integer. This is enough to shake out bugs where the barrier is being called when it should not (for non-pointer values). It also found a few tests in sync/atomic that were being too clever. This CL adds a write barrier for the memory moved during the builtin copy function, which I forgot when inserting barriers for Go 1.4. This CL re-enables some write barriers that were disabled for Go 1.4. Those were disabled because it is possible to change the generated code so that they are unnecessary most of the time, but we have not changed the generated code yet. For safety they must be enabled. None of this is terribly efficient. We are aiming for correct first. LGTM=rlh R=rlh CC=golang-codereviews https://golang.org/cl/168770043
-
- 29 Oct, 2014 15 commits
-
-
Russ Cox authored
The goal here is to get the big-endian fixes so that in some upcoming code movement for write barriers I don't make them unmergeable. LGTM=rlh R=rlh CC=golang-codereviews https://golang.org/cl/166890043
-
Russ Cox authored
LGTM=rlh R=rlh CC=golang-codereviews https://golang.org/cl/170730043
-
Russ Cox authored
Still passes on amd64. LGTM=austin R=austin CC=golang-codereviews https://golang.org/cl/165110043
-
Rob Pike authored
Stupid mistake in previous CL. TBR=rsc R=rsc CC=golang-codereviews https://golang.org/cl/166880043
-
Russ Cox authored
TBR=iant CC=golang-codereviews https://golang.org/cl/164180043
-
Russ Cox authored
TBR=austin CC=golang-codereviews https://golang.org/cl/167820043
-
Russ Cox authored
TBR=austin CC=golang-codereviews https://golang.org/cl/162420043
-
Ian Lance Taylor authored
Fixes #8803. LGTM=rsc R=rsc CC=golang-codereviews https://golang.org/cl/169720043
-
Russ Cox authored
Fixes #9006. LGTM=r R=r CC=golang-codereviews https://golang.org/cl/167800043
-
Rob Pike authored
It now echoes what strconv.FormatFloat says. Fixes #9012. LGTM=rsc R=golang-codereviews, rsc CC=golang-codereviews https://golang.org/cl/169730043
-
Rob Pike authored
LGTM=rsc R=golang-codereviews, rsc CC=golang-codereviews https://golang.org/cl/160660046
-
Russ Cox authored
Fixes #8861. Fixes #8911. LGTM=r R=r CC=golang-codereviews https://golang.org/cl/165780043
-
Russ Cox authored
Fixes #8588. LGTM=austin R=austin CC=golang-codereviews, khr https://golang.org/cl/159700044
-
Russ Cox authored
goprintf is a printf-like print for Go. It is used in the code generated by 'defer print(...)' and 'go print(...)'. Normally print(1, 2, 3) turns into printint(1) printint(2) printint(3) but defer and go need a single function call to give the runtime; they give the runtime something like goprintf("%d%d%d", 1, 2, 3). Variadic functions like goprintf cannot be described in the new type information world, so we have to replace it. Replace with a custom function, so that defer print(1, 2, 3) turns into defer func(a1, a2, a3 int) { print(a1, a2, a3) }(1, 2, 3) (and then the print becomes three different printints as usual). Fixes #8614. LGTM=austin R=austin CC=golang-codereviews, r https://golang.org/cl/159700043
-
Russ Cox authored
I removed support for jumping between functions years ago, as part of doing the instruction layout for each function separately. Given that, it makes sense to treat labels as function-scoped. This lets each function have its own 'loop' label, for example. Makes the assembly much cleaner and removes the last reason anyone would reach for the 123(PC) form instead. Note that this is on the dev.power64 branch, but it changes all the assemblers. The change will ship in Go 1.5 (perhaps after being ported into the new assembler). Came up as part of CL 167730043. LGTM=r R=r CC=austin, dave, golang-codereviews, minux https://golang.org/cl/159670043
-
- 28 Oct, 2014 19 commits
-
-
David du Colombier authored
In CL 160670043 the write function was changed so a zero-length write is now allowed. This leads the ExampleWriter_Init test to fail. The reason is that Plan 9 preserves message boundaries, while the os library expects systems that don't preserve them. We have to ignore zero-length writes so they will never turn into EOF. This issue was previously discussed in CL 7406046. LGTM=bradfitz R=rsc, bradfitz CC=golang-codereviews https://golang.org/cl/163510043
-
Rob Pike authored
LGTM=rsc R=golang-codereviews, rsc CC=golang-codereviews https://golang.org/cl/166850043
-
Austin Clements authored
Power64 servers do not currently support sub-word size atomic memory access, so atomicor8 uses word size atomic access. However, previously atomicor8 made no attempt to align this access, resulting in errors. Fix this by aligning the pointer to a word boundary and shifting the value appropriately. Since atomicor8 is used in GC, add a test to runtime·check to make sure this doesn't break in the future. This also fixes an incorrect branch label, an incorrectly sized argument move, and adds argument names to help go vet. LGTM=rsc R=rsc, dave CC=golang-codereviews https://golang.org/cl/165820043
-
Russ Cox authored
Also a few other minor changes. Fixes #8712. LGTM=r R=r CC=golang-codereviews https://golang.org/cl/164150043
-
Russ Cox authored
TBR=crawshaw CC=golang-codereviews https://golang.org/cl/162390043
-
Rob Pike authored
LGTM=rsc, aram, minux R=golang-codereviews, aram, minux, rsc CC=golang-codereviews https://golang.org/cl/162370045
-
Austin Clements authored
The "to" field was the penultimate argument to outgcode, instead of the last argument, which swapped the third and fourth operands. The argument order was correct in a.y, so just swap the meaning of the arguments in outgcode. This hadn't come up because we hadn't used these more obscure operations in any hand-written assembly until now. LGTM=rsc, dave R=rsc, dave CC=golang-codereviews https://golang.org/cl/160690043
-
Russ Cox authored
Fixes #9007. LGTM=iant, r R=r, iant CC=golang-codereviews https://golang.org/cl/160670043
-
Rob Pike authored
LGTM=rsc R=golang-codereviews, rsc CC=golang-codereviews https://golang.org/cl/165800043
-
Jens Frederich authored
Fixes #8787. LGTM=rsc R=rsc, dvyukov CC=golang-codereviews https://golang.org/cl/153670043
-
Russ Cox authored
No easy way to test (would have to actually trigger some routing events from kernel) but the code is clearly wrong as written. If the header says there is a submessage, we need to at least skip over its bytes, not just continue to the next iteration. Fixes #8203. LGTM=r R=r CC=golang-codereviews, mikioh.mikioh, p https://golang.org/cl/164140044
-
Russ Cox authored
get -u now checks that remote repo paths match the ones predicted by the import paths: if you are get -u'ing rsc.io/pdf, it has to be checked out from the right location. This is important in case the rsc.io/pdf redirect changes. In some cases, people have good reasons to use non-standard remote repos. Add -f flag to allow that. The f can stand for force or fork, as you see fit. Fixes #8850. LGTM=r R=r CC=golang-codereviews https://golang.org/cl/164120043
-
Austin Clements authored
The wrapper code was being emitted before the stack reservation, rather than after. LGTM=rsc R=rsc, dave CC=golang-codereviews https://golang.org/cl/161540043
-
Mikio Hara authored
Just to confirm the fix, by typing the follwing: go test -run=TestLookupIPDeadline -dnsflood or go test -run=TestLookupIPDeadline -dnsflood -tags netgo Update #8602 LGTM=iant R=iant CC=golang-codereviews https://golang.org/cl/166740043
-
Rob Pike authored
still need to do internal and import comments LGTM=adg R=golang-codereviews, adg CC=golang-codereviews https://golang.org/cl/160600043
-
Rob Pike authored
LGTM=adg, rsc R=golang-codereviews, adg, bradfitz, dave, rsc CC=golang-codereviews https://golang.org/cl/164090044
-
Russ Cox authored
This leaked into the CL I submitted for Minux, because I was testing it. TBR=adg CC=golang-codereviews https://golang.org/cl/159600044
-
Russ Cox authored
NaCl creates /tmp. This lets the zip file populate it. LGTM=adg R=adg CC=golang-codereviews https://golang.org/cl/159600043
-
Shenghou Ma authored
Revived from CL 15690048. Fixes #5356. LGTM=rsc R=adg, dvyukov, rsc CC=golang-codereviews https://golang.org/cl/101400043
-