1. 27 Mar, 2016 3 commits
    • Matthew Dempsky's avatar
      cmd/compile: fix stringtoslicebytetmp optimization · 995fb031
      Matthew Dempsky authored
      Fixes #14973.
      
      Change-Id: Iea68c9deca9429bde465c9ae05639209fe0ccf72
      Reviewed-on: https://go-review.googlesource.com/21175Reviewed-by: 's avatarBrad Fitzpatrick <bradfitz@golang.org>
      995fb031
    • Dominik Honnef's avatar
      cmd/vet: don't treat fields like variables in rangeloop check · 4ffa5eb8
      Dominik Honnef authored
      Fixes #13236
      
      Change-Id: If902ac66718e0a0790fab9835921ce4ef980965b
      Reviewed-on: https://go-review.googlesource.com/21183
      Run-TryBot: Rob Pike <r@golang.org>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: 's avatarRob Pike <r@golang.org>
      4ffa5eb8
    • Martin Möhrmann's avatar
      fmt: cleanup reflect value handling · d170d3ed
      Martin Möhrmann authored
      Merge printReflectValue into printValue. Determine if handleMethods
      was already called in printArg by checking if depth is 0. Do not
      call handleMethods on depth 0 again in printValue to not introduce
      a performance regression. handleMethods is called already in printArg
      to not introduce a performance penalty for top-level Stringer,
      GoStringer, Errors and Formatters by using reflect.ValueOf on them
      just to retrieve them again as interface{} values in printValue.
      
      Clear p.arg in printValue after handleMethods to print the type
      of the value inside the reflect.Value when a bad verb is encountered
      on the top level instead of printing "reflect.Value=" as the type of
      the argument. This also fixes a bug that incorrectly prints the
      whole map instead of just the value for a key if the returned value
      by the map for the key is an invalid reflect value.
      
      name                     old time/op  new time/op  delta
      SprintfPadding-2          229ns ± 2%   227ns ± 1%  -0.50%  (p=0.013 n=20+20)
      SprintfEmpty-2           36.4ns ± 6%  37.2ns ±14%    ~     (p=0.091 n=18+20)
      SprintfString-2           102ns ± 1%   102ns ± 0%    ~     (p=0.751 n=20+20)
      SprintfTruncateString-2   142ns ± 0%   141ns ± 1%  -0.95%  (p=0.000 n=16+20)
      SprintfQuoteString-2      389ns ± 0%   388ns ± 0%  -0.12%  (p=0.019 n=20+20)
      SprintfInt-2              100ns ± 2%   100ns ± 1%    ~     (p=0.188 n=20+15)
      SprintfIntInt-2           155ns ± 3%   154ns ± 2%    ~     (p=0.092 n=20+20)
      SprintfPrefixedInt-2      250ns ± 2%   251ns ± 3%    ~     (p=0.559 n=20+20)
      SprintfFloat-2            177ns ± 2%   175ns ± 1%  -1.30%  (p=0.000 n=20+20)
      SprintfComplex-2          516ns ± 1%   510ns ± 1%  -1.13%  (p=0.000 n=19+16)
      SprintfBoolean-2         90.9ns ± 3%  90.6ns ± 1%    ~     (p=0.193 n=19+19)
      SprintfHexString-2        171ns ± 1%   169ns ± 1%  -1.44%  (p=0.000 n=19+20)
      SprintfHexBytes-2         180ns ± 1%   180ns ± 1%    ~     (p=0.060 n=19+18)
      SprintfBytes-2            330ns ± 1%   329ns ± 1%  -0.42%  (p=0.003 n=20+20)
      SprintfStringer-2         354ns ± 3%   352ns ± 3%    ~     (p=0.525 n=20+19)
      SprintfStructure-2        804ns ± 3%   776ns ± 2%  -3.56%  (p=0.000 n=20+20)
      FprintInt-2               155ns ± 0%   151ns ± 1%  -2.35%  (p=0.000 n=19+20)
      FprintfBytes-2            169ns ± 0%   170ns ± 1%  +0.81%  (p=0.000 n=18+19)
      FprintIntNoAlloc-2        112ns ± 0%   109ns ± 1%  -2.28%  (p=0.000 n=20+20)
      
      Change-Id: Ib9a39082ed1be0f1f7499ee6fb6c9530f043e43a
      Reviewed-on: https://go-review.googlesource.com/20923
      Run-TryBot: Rob Pike <r@golang.org>
      Reviewed-by: 's avatarRob Pike <r@golang.org>
      d170d3ed
  2. 26 Mar, 2016 8 commits
  3. 25 Mar, 2016 28 commits
  4. 24 Mar, 2016 1 commit
    • Elias Naur's avatar
      misc/cgo/testcarchive: re-enable c-archive test on iOS and Android · 0a82ed5d
      Elias Naur authored
      The c-archive test were recently converted from shell script to Go.
      Unfortunately, it also lost the ability to target iOS and Android
      that lack C compilers and require exec wrappers.
      
      Compile the c-archive test for the host and run it with the target
      GOOS/GOARCH environment. Change the test to rely on go env GOOS
      and go env GOARCH instead of runtime.GOOS and runtime.GOARCH.
      
      Fixes #8345
      
      Change-Id: I290ace2f7e96b87c55d99492feb7d660140dcb32
      Reviewed-on: https://go-review.googlesource.com/21102Reviewed-by: 's avatarIan Lance Taylor <iant@golang.org>
      Run-TryBot: Ian Lance Taylor <iant@golang.org>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      0a82ed5d