Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fixes issue 776.
R=rsc
CC=golang-dev
http://codereview.appspot.com/1745041
|
|
R=r
CC=golang-dev
http://codereview.appspot.com/1083041
|
|
R=rsc
CC=golang-dev
http://codereview.appspot.com/1140041
|
|
Fixes issue 589.
R=ken2
CC=golang-dev
http://codereview.appspot.com/1032044
|
|
R=rsc, Joe Poirier
CC=golang-dev
http://codereview.appspot.com/1015043
Committer: Russ Cox <rsc@golang.org>
|
|
fmt.Printf("float32 %f\n", float32(1234.56789))
fmt.Printf("float64 %f\n", float64(1234.56789))
->
float32 1234.567871
float64 1234.567890
this is a snapshot. extended instruction support, corner cases
and fixes coming in subseuent cls.
R=rsc
CC=dpx, golang-dev
http://codereview.appspot.com/876045
|
|
remove internal functions from traces in gopprof instead.
R=r
CC=golang-dev
http://codereview.appspot.com/855046
|
|
These functions are used to call from a C function back to a
Go function. This only includes 386 support.
R=rsc
CC=golang-dev
http://codereview.appspot.com/834045
|
|
tested on linux/amd64, linux/386, linux/arm, darwin/amd64, darwin/386.
freebsd untested; will finish in a separate CL.
for now all the panics are errorStrings.
richer structures can be added as necessary
once the mechanism is shaked out.
R=r
CC=golang-dev
http://codereview.appspot.com/906041
|
|
when garbage collector sees recovering goroutine
Fixes issue 711.
R=r
CC=golang-dev
http://codereview.appspot.com/869045
|
|
R=ken2
CC=golang-dev
http://codereview.appspot.com/821048
|
|
* correct symbol table size
* do not reorder functions in output
* traceback
* signal handling
* use same code for go + defer
* handle leaf functions in symbol table
R=kaib, dpx
CC=golang-dev
http://codereview.appspot.com/884041
|
|
R=ken2, r
CC=golang-dev
http://codereview.appspot.com/871042
Committer: Russ Cox <rsc@golang.org>
|
|
R=r
CC=golang-dev
http://codereview.appspot.com/805043
|
|
R=ken2, r, ken3
CC=golang-dev
http://codereview.appspot.com/831042
|
|
main semantic change is to enforce single argument to panic.
runtime: change to 1-argument panic.
use String method on argument if it has one.
R=ken2, r
CC=golang-dev
http://codereview.appspot.com/812043
|
|
baby step toward panic+recover.
Fixes issue 349.
R=r
CC=golang-dev
http://codereview.appspot.com/825043
|
|
eliminate second pass of mark+sweep
by scanning finalizer table specially.
R=r
CC=golang-dev
http://codereview.appspot.com/782041
|
|
R=r
CC=golang-dev
http://codereview.appspot.com/719041
|
|
no way to get the data out yet.
add prototype for runtime.Callers,
missing from last CL.
R=r
CC=golang-dev
http://codereview.appspot.com/713041
|
|
cut copies of traceback from 6 to 1.
R=r
CC=golang-dev
http://codereview.appspot.com/703041
|
|
more complex -- constants, variables and print.
R=rsc
CC=golang-dev
http://codereview.appspot.com/217061
|
|
finalize chan, to free OS X semaphore inside Lock.
os: finalize File, to close fd.
Fixes issue 503.
R=ken2
CC=golang-dev
http://codereview.appspot.com/204065
|
|
add simple garbage collection benchmark.
R=iant
CC=golang-dev
http://codereview.appspot.com/204053
|
|
R=rsc
CC=golang-dev
http://codereview.appspot.com/203053
|
|
R=r, cw
CC=golang-dev
http://codereview.appspot.com/198085
|
|
Fixes issue 219.
R=ken2, r
CC=golang-dev
http://codereview.appspot.com/194097
|
|
(eliminate assumption of package global name space,
make code easier to move between packages).
R=r
CC=golang-dev
http://codereview.appspot.com/194072
|
|
in various already expensive routines.
helps keep cpu utilization up when GOMAXPROCS > 1,
but not a full solution.
http://groups.google.com/group/golang-nuts/t/7a9535c4136d3e2
R=r
CC=golang-dev
http://codereview.appspot.com/184043
|
|
R=rsc
CC=golang-dev
http://codereview.appspot.com/176066
Committer: Russ Cox <rsc@golang.org>
|
|
(Thanks to ken and rsc for pointing this out)
rsc:
ken pointed out that there's a race in the new
one-lock-per-channel code. the issue is that
if one goroutine has gone to sleep doing
select {
case <-c1:
case <-c2:
}
and then two more goroutines try to send
on c1 and c2 simultaneously, the way that
the code makes sure only one wins is the
selgen field manipulation in dequeue:
// if sgp is stale, ignore it
if(sgp->selgen != sgp->g->selgen) {
//prints("INVALID PSEUDOG POINTER\n");
freesg(c, sgp);
goto loop;
}
// invalidate any others
sgp->g->selgen++;
but because the global lock is gone both
goroutines will be fiddling with sgp->g->selgen
at the same time.
This results in a 7% slowdown in the single threaded case for a
ping-pong microbenchmark.
Since the cas predominantly succeeds, adding a simple check first
didn't make any difference.
R=rsc
CC=golang-dev
http://codereview.appspot.com/180068
|
|
most signals, so that ordinary programs
can be killed, for example.
Fixes issue 434.
R=dsymonds1
CC=golang-dev, hoisie
http://codereview.appspot.com/180064
|
|
Fixes issue 71.
R=rsc, r
http://codereview.appspot.com/162056
Committer: Russ Cox <rsc@golang.org>
|
|
* throw away dead code
* add mlookup counter
* add malloc counter
* set up for blocks with no pointers
Fixes issue 367.
R=r
http://codereview.appspot.com/165050
|
|
* add runtime sliceslice1 for x[lo:]
* remove runtime arraytoslice, rewriting &arr into arr[0:len(arr)].
* port cgen_inline into 8g, 5g.
* use native memmove in maps
R=ken2
http://codereview.appspot.com/157106
|
|
In thread.c, we need to cast to whatever the native
size of intptr is on the system, but we only have
uintptr available. They're the same size, but can't
do signed casts without this one :).
R=rsc
CC=golang-dev
http://codereview.appspot.com/156073
Committer: Russ Cox <rsc@golang.org>
|
|
SELinux will cause mmap to fail when we request w+x memory unless the
user has configured their policies. We have a warning in make.bash,
but it's quite likely that the policy will be reset at some point and
then all their binaries start failing.
This patch prints a warning on Linux when mmap fails with EACCES.
R=rsc
CC=golang-dev
http://codereview.appspot.com/152086
|
|
now that all arguments are passed on the stack.
go/test: passes 89% (310/345)
R=rsc
APPROVED=rsc
DELTA=33 (13 added, 14 deleted, 6 changed)
OCL=36009
CL=36022
|
|
because they are in package runtime.
another step to enforcing package boundaries.
R=r
DELTA=732 (114 added, 93 deleted, 525 changed)
OCL=35811
CL=35824
|
|
R=r
DELTA=209 (65 added, 114 deleted, 30 changed)
OCL=35718
CL=35721
|