1. 10 Sep, 2012 7 commits
  2. 09 Sep, 2012 2 commits
    • Rémy Oudompheng's avatar
      cmd/8g: import componentgen from 6g. · ae0862c1
      Rémy Oudompheng authored
      This makes the compilers code more similar and improves
      code generation a lot.
      
      The number of LEAL instructions generated for cmd/go drops
      by 60%.
      
      % GOARCH=386 go build -gcflags -S -a cmd/go | grep LEAL | wc -l
      Before:       89774
      After:        47548
      
      benchmark                              old ns/op    new ns/op    delta
      BenchmarkAppendFloatDecimal                  540          444  -17.78%
      BenchmarkAppendFloat                        1160         1035  -10.78%
      BenchmarkAppendFloatExp                     1060          922  -13.02%
      BenchmarkAppendFloatNegExp                  1053          920  -12.63%
      BenchmarkAppendFloatBig                     1773         1558  -12.13%
      BenchmarkFormatInt                         13065        12481   -4.47%
      BenchmarkAppendInt                         10981         9900   -9.84%
      BenchmarkFormatUint                         3804         3650   -4.05%
      BenchmarkAppendUint                         3506         3303   -5.79%
      BenchmarkUnquoteEasy                         714          683   -4.34%
      BenchmarkUnquoteHard                        5117         2915  -43.03%
      
      Update #1914.
      
      R=nigeltao, rsc, golang-dev
      CC=golang-dev, remy
      https://golang.org/cl/6489067
      ae0862c1
    • Mikio Hara's avatar
      net: change cname lookup test target to iana.org · b7376442
      Mikio Hara authored
      It might be meaningful, and stable than others.
      
      R=golang-dev, agl
      CC=golang-dev
      https://golang.org/cl/6499091
      b7376442
  3. 08 Sep, 2012 3 commits
  4. 07 Sep, 2012 12 commits
  5. 06 Sep, 2012 8 commits
  6. 05 Sep, 2012 3 commits
  7. 04 Sep, 2012 5 commits
    • Nigel Tao's avatar
      cmd/gc: add commentary to the OXXX constants. · 1c675ac8
      Nigel Tao authored
      R=rsc, daniel.morsing
      CC=golang-dev
      https://golang.org/cl/6495074
      1c675ac8
    • Alan Donovan's avatar
      runtime: fix typo in openbsd-only symbol name. · ee911c42
      Alan Donovan authored
      R=golang-dev, minux.ma, rsc
      CC=golang-dev
      https://golang.org/cl/6490076
      ee911c42
    • Sébastien Paolacci's avatar
      net: fix {FileConn, FileListener, FilePacketConn} fd leak to child process. · 2836c634
      Sébastien Paolacci authored
      All of them call `newFileFD' which must properly restore close-on-exec on
      duplicated fds.
      
      R=golang-dev, bradfitz, mikioh.mikioh
      CC=golang-dev
      https://golang.org/cl/6445081
      2836c634
    • Alan Donovan's avatar
      runtime: discard SIGPROF delivered to non-Go threads. · 532dee38
      Alan Donovan authored
      Signal handlers are global resources but many language
      environments (Go, C++ at Google, etc) assume they have sole
      ownership of a particular handler.  Signal handlers in
      mixed-language applications must therefore be robust against
      unexpected delivery of certain signals, such as SIGPROF.
      
      The default Go signal handler runtime·sigtramp assumes that it
      will never be called on a non-Go thread, but this assumption
      is violated by when linking in C++ code that spawns threads.
      Specifically, the handler asserts the thread has an associated
      "m" (Go scheduler).
      
      This CL is a very simple workaround: discard SIGPROF delivered to non-Go threads.  runtime.badsignal(int32) now receives the signal number; if it returns without panicking (e.g. sig==SIGPROF) the signal is discarded.
      
      I don't think there is any really satisfactory solution to the
      problem of signal-based profiling in a mixed-language
      application.  It's not only the issue of handler clobbering,
      but also that a C++ SIGPROF handler called in a Go thread
      can't unwind the Go stack (and vice versa).  The best we can
      hope for is not crashing.
      
      Note:
      - I've ported this to all POSIX platforms, except ARM-linux which already ignores unexpected signals on m-less threads.
      - I've avoided tail-calling runtime.badsignal because AFAICT the 6a/6l don't support it.
      - I've avoided hoisting 'push sig' (common to both function calls) because it makes the code harder to read.
      - Fixed an (apparently incorrect?) docstring.
      
      R=iant, rsc, minux.ma
      CC=golang-dev
      https://golang.org/cl/6498057
      532dee38
    • Alan Donovan's avatar
      runtime/pprof: emit end-of-log marker at end of CPU profile. · b2458ff7
      Alan Donovan authored
      R=golang-dev, rsc
      CC=golang-dev
      https://golang.org/cl/6489065
      b2458ff7