| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
R=golang-dev, rsc
CC=golang-dev
http://codereview.appspot.com/5672052
|
|
|
|
|
|
| |
R=bradfitz, ality, r, r, iant, mikioh.mikioh
CC=golang-dev
http://codereview.appspot.com/5615058
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Consequently, remove many package Makefiles,
and shorten the few that remain.
gomake becomes 'go tool make'.
Turn off test phases of run.bash that do not work,
flagged with $BROKEN. Future CLs will restore these,
but this seemed like a big enough CL already.
R=golang-dev, r
CC=golang-dev
http://codereview.appspot.com/5601057
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I have included a few important microbenchmarks,
but the overall intent is to have mostly end-to-end
benchmarks timing real world operations.
The jsondata.go file is a summary of agl's
activity in various open source repositories.
It gets used as test data for many of the benchmarks.
Everything links into one binary (even the test data)
so that it is easy to run the benchmarks on many
computers: there is just one file to copy around.
R=golang-dev, r, bradfitz, adg, r
CC=golang-dev
http://codereview.appspot.com/5484071
|
|
|
|
|
|
|
|
| |
(These are benchmarks for the garbage collector, not tests.)
R=golang-dev, adg
CC=golang-dev
http://codereview.appspot.com/5484070
|
|
|
|
|
|
| |
TBR=r
CC=golang-dev
http://codereview.appspot.com/5488066
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
src/clean.bash:
Add clean-ups for previously overlooked directories.
doc/codelab/wiki/Makefile:
Dropped "index.html" from CLEANFILES so it will not be
deleted on cleaning.
R=golang-dev, r
CC=golang-dev
http://codereview.appspot.com/5476050
Committer: Rob Pike <r@golang.org>
|
|
|
|
|
|
|
|
|
| |
This change had already been made in revision 7371, but
was then undone with changes in revision 7606.
R=golang-dev, rsc1
CC=golang-dev
http://codereview.appspot.com/4239064
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Change use of m->g0 stack (aka scheduler stack).
* Provide runtime.mcall(f) to invoke f() on m->g0 stack.
* Replace scheduler loop entry with runtime.mcall(schedule).
Runtime.mcall eliminates the need for fake scheduler states that
exist just to run a bit of code on the m->g0 stack
(Grecovery, Gstackalloc).
The elimination of the scheduler as a loop that stops and
starts using gosave and gogo fixes a bad interaction with the
way cgo uses the m->g0 stack. Cgo runs external (gcc-compiled)
C functions on that stack, and then when calling back into Go,
it sets m->g0->sched.sp below the added call frames, so that
other uses of m->g0's stack will not interfere with those frames.
Unfortunately, gogo (longjmp) back to the scheduler loop at
this point would end up running scheduler with the lower
sp, which no longer points at a valid stack frame for
a call to scheduler. If scheduler then wrote any function call
arguments or local variables to where it expected the stack
frame to be, it would overwrite other data on the stack.
I realized this possibility while debugging a problem with
calling complex Go code in a Go -> C -> Go cgo callback.
This wasn't the bug I was looking for, it turns out, but I believe
it is a real bug nonetheless. Switching to runtime.mcall, which
only adds new frames to the stack and never jumps into
functions running in existing ones, fixes this bug.
* Move cgo-related code out of proc.c into cgocall.c.
* Add very large comment describing cgo call sequences.
* Simpilify, regularize cgo function implementations and names.
* Add test suite as misc/cgo/test.
Now the Go -> C path calls cgocall, which calls asmcgocall,
and the C -> Go path calls cgocallback, which calls cgocallbackg.
The shuffling, which affects mainly the callback case, moves
most of the callback implementation to cgocallback running
on the m->curg stack (not the m->g0 scheduler stack) and
only while accounted for with $GOMAXPROCS (between calls
to exitsyscall and entersyscall).
The previous callback code did not block in startcgocallback's
approximation to exitsyscall, so if, say, the garbage collector
were running, it would still barge in and start doing things
like call malloc. Similarly endcgocallback's approximation of
entersyscall did not call matchmg to kick off new OS threads
when necessary, which caused the bug in issue 1560.
Fixes issue 1560.
R=iant
CC=golang-dev
http://codereview.appspot.com/4253054
|
|
|
|
|
|
|
|
| |
R=golang-dev, rsc
CC=golang-dev
http://codereview.appspot.com/4257045
Committer: Russ Cox <rsc@golang.org>
|
|
|
|
|
|
|
|
|
|
| |
Must be invoked as ./clean.bash --gomake make
(or --gomake gmake, depending on the name of
GNU make).
R=niemeyer
CC=golang-dev
http://codereview.appspot.com/4023065
|
|
|
|
|
|
| |
R=r
CC=golang-dev
http://codereview.appspot.com/3448043
|
|
|
|
|
|
|
|
|
|
|
| |
All scripts and makefiles assume that GOBIN is correctly set
in PATH.
R=rsc
CC=golang-dev
http://codereview.appspot.com/2043041
Committer: Russ Cox <rsc@golang.org>
|
|
|
|
|
|
|
|
| |
R=rsc
CC=golang-dev
http://codereview.appspot.com/1933043
Committer: Russ Cox <rsc@golang.org>
|
|
|
|
|
|
|
|
| |
R=rsc
CC=golang-dev
http://codereview.appspot.com/1784042
Committer: Andrew Gerrand <adg@golang.org>
|
|
|
|
|
|
| |
R=rsc
CC=golang-dev
http://codereview.appspot.com/1843046
|
|
|
|
|
|
| |
R=agl1
CC=golang-dev
http://codereview.appspot.com/207043
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Doing rm -rf /pkg/.. blindly isn't nice. It could have
unintended consequences.
Secondly set bash to abort on (unexpected) errors.
R=dho, rsc
CC=golang-dev
http://codereview.appspot.com/176056
Committer: Russ Cox <rsc@golang.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change removes the necessity to have GOBIN in $PATH,
and also doesn't assume that the build is being run from
$GOROOT/src. This is a minimal set of necessary changes
to get Go to build happily from the FreeBSD ports
collection.
R=rsc
CC=golang-dev
http://codereview.appspot.com/171044
Committer: Russ Cox <rsc@golang.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the bash scripts and makefiles for building go didn't take into account
the fact $GOROOT / $GOBIN could both be directories containing whitespaces,
and was not possible to build it in such a situation.
this commit adjusts the various makefiles/scripts to make it aware of that
possibility, and now it builds successfully when using a path with whitespaces
as well.
Fixes issue 115.
R=rsc, dsymonds1
http://codereview.appspot.com/157067
Committer: Russ Cox <rsc@golang.org>
|
|
|
|
|
|
|
|
|
|
| |
This does still contain some FreeBSD-specific bits, but
it's a pain to do partial diffs.
R=rsc
http://codereview.appspot.com/152138
Committer: Russ Cox <rsc@golang.org>
|
|
|
|
|
| |
R=r
http://go/go-review/1016017
|
|
|
|
|
|
|
|
| |
various missing or incorrect files.
R=r
CC=go-dev
http://go/go-review/1014004
|
|
|
|
|
|
|
|
|
|
| |
Remove remainder of usr/dsymonds.
R=rsc,r
APPROVED=r
DELTA=685 (275 added, 409 deleted, 1 changed)
OCL=35810
CL=35933
|
|
|
|
|
|
|
|
| |
avoid infinite loop when cd fails.
TBR=r
OCL=35750
CL=35750
|
|
|
|
|
|
|
|
|
|
| |
should let a 6g build and an 8g build be done in sequence
without stepping on each other.
R=rsc
DELTA=2 (0 added, 0 deleted, 2 changed)
OCL=35478
CL=35481
|
|
|
|
|
|
|
| |
R=r
DELTA=40 (9 added, 3 deleted, 28 changed)
OCL=35277
CL=35305
|
|
|
|
|
|
| |
R=rsc
OCL=33273
CL=33276
|
|
|
|
|
|
|
|
| |
tests: all.bash passes, gobuild still works, godoc still works.
R=rsc
OCL=30096
CL=30102
|
|
|
|
|
|
|
|
|
| |
hand-edited files.
R=r
DELTA=125 (77 added, 16 deleted, 32 changed)
OCL=30001
CL=30008
|
|
|
|
|
|
|
|
|
| |
rename place-holder to _place_holder_ so it can be avoided.
R=r
DELTA=5 (2 added, 2 deleted, 1 changed)
OCL=29093
CL=29097
|
|
|
|
|
|
|
|
|
|
| |
install runtime lib in correct location.
fix one bad type definition in defs.h.
clear out $GOROOT/lib in clean.bash.
TBR=r
OCL=26691
CL=26691
|
|
|
|
|
|
|
| |
R=r
DELTA=3 (3 added, 0 deleted, 0 changed)
OCL=19935
CL=19937
|
|
|
|
|
|
|
|
|
| |
mainly for "make bufio.install".
R=r
DELTA=144 (80 added, 62 deleted, 2 changed)
OCL=19760
CL=19799
|
|
|
|
|
|
|
|
|
|
|
| |
enforce rule: all kernel data structures and constants
go in syscall module.
move things that should be in syscall out of net.
make net a single package.
R=r
OCL=15985
CL=15994
|
|
|
|
|
|
|
|
|
|
| |
use gobuild-generated Makefile for math and os.
other makefile tweaks.
move math/main.go to test/math.go
R=r
OCL=15529
CL=15537
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
use -j4 (4-way parallel) in make.bash.
halves time for make.bash on r45
also add libregexp, acid to default build
R=r
DELTA=90 (39 added, 37 deleted, 14 changed)
OCL=15485
CL=15487
|
|
|
|
|
|
|
|
|
| |
fix an issue with autolib names by compiling to target location
print a bit more when compiling
R=gri
OCL=13988
CL=13988
|
|
|
|
| |
SVN=126577
|
|
|
|
| |
SVN=122793
|
|
remove the dependency on /home/r.
SVN=122482
|