1. 02 Apr, 2013 3 commits
    • Nigel Tao's avatar
      cmd/gc: recognize (a.b[0]<<1 | a.b[0]>>31) as a rotate, not just · 4de66875
      Nigel Tao authored
      (x<<1 | x>>31).
      
      Fixes #5084.
      
      On the SHA3 benchmark proposals at
      https://golang.org/cl/7760044/
      
      benchmark                       old ns/op    new ns/op    delta
      BenchmarkPermutationFunction         1288         1191   -7.53%
      BenchmarkSingleByteWrite             5795         5811   +0.28%
      BenchmarkBlockWrite512                178          179   +0.56%
      BenchmarkBlockWrite384                230          233   +1.30%
      BenchmarkBlockWrite256                282          286   +1.42%
      BenchmarkBlockWrite224                301          306   +1.66%
      BenchmarkBulkHashSHA3_512          326885       304548   -6.83%
      BenchmarkBulkHashSHA3_384          234839       220074   -6.29%
      BenchmarkBulkHashSHA3_256          186969       175790   -5.98%
      BenchmarkBulkHashSHA3_224          178133       167489   -5.98%
      
      For a function like
      
      func g() {
              x = a[3]<<20 | a[3]>>12
      }
      
      the asm goes from
      
      0006 (main.go:10) TEXT    g+0(SB),$0-0
      0007 (main.go:10) MOVL    a+12(SB),BP
      0008 (main.go:10) LOCALS  ,$0
      0009 (main.go:11) MOVL    BP,BX
      0010 (main.go:11) SHLL    $20,BX
      0011 (main.go:11) SHRL    $12,BP
      0012 (main.go:11) ORL     BP,BX
      0013 (main.go:11) MOVL    BX,x+0(SB)
      0014 (main.go:12) RET     ,
      
      to
      
      0006 (main.go:10) TEXT    g+0(SB),$0-0
      0007 (main.go:10) LOCALS  ,$0
      0008 (main.go:11) MOVL    a+12(SB),BX
      0009 (main.go:11) ROLL    $20,BX
      0010 (main.go:11) MOVL    BX,x+0(SB)
      0011 (main.go:12) RET     ,
      
      R=rsc, iant, remyoudompheng
      CC=golang-dev, jcb
      https://golang.org/cl/7944043
      4de66875
    • Dave Cheney's avatar
      doc/go1.1.html: add a note about additional platforms · 54faecac
      Dave Cheney authored
      Mention support for NetBSD, OpenBSD, and cgo for linux/arm.
      
      R=golang-dev, dvyukov, r, minux.ma, adg, bradfitz, adg
      CC=golang-dev
      https://golang.org/cl/8152043
      54faecac
    • Keith Randall's avatar
      runtime: make map reads multithreaded safe. · 0e7144a8
      Keith Randall authored
      Doing grow work on reads is not multithreaded safe.
      Changed code to do grow work only on inserts & deletes.
      
      This is a short-term fix, eventually we'll want to do
      grow work in parallel to recover the space of the old
      table.
      
      Fixes #5120.
      
      R=bradfitz, khr
      CC=golang-dev
      https://golang.org/cl/8242043
      0e7144a8
  2. 01 Apr, 2013 11 commits
  3. 31 Mar, 2013 6 commits
  4. 30 Mar, 2013 13 commits
  5. 29 Mar, 2013 7 commits