- 11 Mar, 2016 8 commits
-
-
Matthew Dempsky authored
In particular, make Alignof work more like Sizeof. Other idiomatic cleanups while here. Passes toolstash -cmp. Change-Id: I4def20894f3d95e49ab6a50ddba189be36fdd258 Reviewed-on: https://go-review.googlesource.com/20555 Run-TryBot: Matthew Dempsky <mdempsky@google.com> Reviewed-by:
Ian Lance Taylor <iant@golang.org>
-
Matthew Dempsky authored
This could be done by threading the Iter value down through memrun and ispaddedfield, but that ends up a bit clunky. This way is also closer to how we'll want the code to look once fields are kept in slices. Passes toolstash -cmp. Change-Id: I8a44445c85f921eb18d97199df2026c5ce0f4f67 Reviewed-on: https://go-review.googlesource.com/20558 Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-
Keith Randall authored
x86 has a lot of instructions that require the output to be in the same register as one of the inputs. When allocating the output register, allocate the same register as the input if it is available. Improves the performance of golang.org/x/crypto/sha3 by 10% (from 6% slower than 1.6 to 4% faster). Fixes #14745 Change-Id: I4d81785240c9368e4dc75107b45c959d200df8e6 Reviewed-on: https://go-review.googlesource.com/20488Reviewed-by:
Josh Bleecher Snyder <josharian@gmail.com>
-
Robert Griesemer authored
Not calling popdcl doesn't have an impact on generated code but the result is a growing (rather than empty) stack of symbols, possibly causing more data to remain alive than necessary. Also: minor cleanups. Change-Id: Ic4fdbcd8843637d69ab1aa15e896a7e6339bc990 Reviewed-on: https://go-review.googlesource.com/20554Reviewed-by:
Matthew Dempsky <mdempsky@google.com> Run-TryBot: Robert Griesemer <gri@golang.org>
-
Matthew Dempsky authored
Use a map to detect duplicate symbols. Allows eliminating an otherwise unneeded field from Sym and gets rid of a global variable. Change-Id: Ic004bca7e9130a1261a1cddbc17244529a2a1df4 Reviewed-on: https://go-review.googlesource.com/20552Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Matthew Dempsky <mdempsky@google.com>
-
Todd Neal authored
Change the existing flags from compile time consts to be configurable from the command line. Change-Id: I4aab4bf3dfcbdd8e2b5a2ff51af95c2543967769 Reviewed-on: https://go-review.googlesource.com/20560Reviewed-by:
Keith Randall <khr@golang.org> Run-TryBot: Todd Neal <todd@tneal.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Keith Randall authored
The location of VARDEFs is incorrect for PPARAMOUT variables which are also used as temporary locations. We put in VARDEFs when setting the variable at return time, but when the location is also used as a temporary the lifetime values are wrong. Fix copyelim to update the names map properly. This is a real name bug fix which, as a result, allows me to write a reasonable test to trigger the PPARAMOUT bug. This is kind of a band-aid fix for #14591. A more pricipled fix (which allows values to be stored in the return variable earlier than the return point) will be harder. Fixes #14591 Change-Id: I7df8ae103a982d1f218ed704c080d7b83cdcfdd9 Reviewed-on: https://go-review.googlesource.com/20457Reviewed-by:
Josh Bleecher Snyder <josharian@gmail.com>
-
Ian Lance Taylor authored
Fixes #14759. Change-Id: I6cef0b49ba00ab85b25ce1e7bad80ad85e2d5076 Reviewed-on: https://go-review.googlesource.com/20545 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Michael Hudson-Doyle <michael.hudson@canonical.com>
-
- 10 Mar, 2016 29 commits
-
-
Adam Langley authored
PKIX versions are off-by-one, so v1 is actually a zero on the wire, v2 is a one, and so on. The RFC says that the version in a CRL is optional, but doesn't say what the default is. Since v2 is the only accepted version, I had made the default v2. However, OpenSSL considers the default to be v1. Also, if the default is v2 and the element is optional then we'll never actually write v2 on the wire. That's contrary to the RFC which clearly assumes that v2 will be expressed on the wire in some cases. Therefore, this change aligns with OpenSSL and assumes that v1 is the default CRL version. Fixes #13931 [1] https://tools.ietf.org/html/rfc5280#section-5.1 Change-Id: Ic0f638ebdd21981d92a99a882affebf3a77ab71a Reviewed-on: https://go-review.googlesource.com/20544Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-
Adam Langley authored
The default version of an X.509 certificate is v1, which is encoded on the wire as a zero. Fixes #13382. Change-Id: I5fd725c3fc8b08fd978ab694a3e2d6d2a495918b Reviewed-on: https://go-review.googlesource.com/20548Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-
Matthew Dempsky authored
Allows safely eliminating more direct uses of Type's Type and Down fields. Passes toolstash -cmp. Change-Id: I5c17fe541a0473c3cd2978d8314c4ab759079a61 Reviewed-on: https://go-review.googlesource.com/20541 Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-
Matthew Dempsky authored
I would like to add a func (t *Type) Elem() *Type method to package gc, but that would collide with the existing func (t *Type) Elem() ssa.Type method needed to make *gc.Type implement ssa.Type. Because the latter is much less widely used right now than the former will be, this CL renames it to ElemType. Longer term, hopefully gc and ssa will share a common Type interface, and ElemType can go away. Change-Id: I270008515dc4c01ef531cf715637a924659c4735 Reviewed-on: https://go-review.googlesource.com/20546 Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Keith Randall <khr@golang.org>
-
Matthew Dempsky authored
Eliminate "else_clause" parameter and move error messages about bad if statements into the if_stmt parsing method. Passes toolstash -cmp. Change-Id: Ibc31619bdb2e7e0cf28712b14640f7d9b6124a40 Reviewed-on: https://go-review.googlesource.com/20543 Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Robert Griesemer <gri@golang.org>
-
Ian Lance Taylor authored
Change-Id: I06dedf4ebfa32b598f5545dc9354c8e4a95610b1 Reviewed-on: https://go-review.googlesource.com/20525 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-
Shenghou Ma authored
Fixes #14741. Change-Id: Idb8de8b0c1059c15e4c3df4a60bbd340d4e74aba Reviewed-on: https://go-review.googlesource.com/20487Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by:
Andrew Gerrand <adg@golang.org>
-
Keith Randall authored
Make sure we do any just-before-return cleanup on all paths out of a function, including when recovering. Each exit path should include deferreturn (if there are any defers) and then the exit code (e.g. copying heap-escaping return values back to the stack). Introduce a Defer SSA block type which has two outgoing edges - one the fallthrough edge (the defer was queued successfully) and one which immediately returns (the defer had a successful recover() call and normal execution should resume at the return point). Fixes #14725 Change-Id: Iad035c9fd25ef8b7a74dafbd7461cf04833d981f Reviewed-on: https://go-review.googlesource.com/20486Reviewed-by:
David Chase <drchase@google.com>
-
Josh Bleecher Snyder authored
Passes toolstash -cmp. Change-Id: I014613985005780d1a622c1981b35a94cda798bb Reviewed-on: https://go-review.googlesource.com/20530 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by:
Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Ian Lance Taylor authored
Change-Id: I055e986c3f27d5c07badcd1684f4fe1d65a917a9 Reviewed-on: https://go-review.googlesource.com/20523 Run-TryBot: Ian Lance Taylor <iant@golang.org> Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Matthew Dempsky authored
This CL was mostly produced by a one-off automated rewrite tool looking for statements like "for X := T.Type; X != nil; X = X.Down" and a few minor variations. Passes toolstash -cmp. Change-Id: Ib22705e37d078ef97841ee2e08f60bdbcabb94ad Reviewed-on: https://go-review.googlesource.com/20520 Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Ian Lance Taylor <iant@golang.org>
-
Ian Lance Taylor authored
Passes toolstash -cmp. Change-Id: I05322fb5afd213f13fb247ec1a5f655c17a58774 Reviewed-on: https://go-review.googlesource.com/20522 Run-TryBot: Ian Lance Taylor <iant@golang.org> Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Ian Lance Taylor authored
That was easy. Fixes #14473. Change-Id: I9d1d20a5c5a9b1423e6c72c0460ee4a78130864f Reviewed-on: https://go-review.googlesource.com/20521 Run-TryBot: Ian Lance Taylor <iant@golang.org> Reviewed-by:
David Crawshaw <crawshaw@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Ian Lance Taylor authored
Fixes #14554. Change-Id: I37ab4e4dc1aee84ac448d437314f8eecbbc02994 Reviewed-on: https://go-review.googlesource.com/20021Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-
Ian Lance Taylor authored
Passes toolstash -cmp. Update #14473. Change-Id: I2ac5c595d7af7a8da1a7e3945e6a753299446250 Reviewed-on: https://go-review.googlesource.com/20497 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-
Klaus Post authored
If the upstream writer has returned an error, it may not be returned by subsequent calls. This makes sure that if an error has been returned, the Writer will keep returning an error on all subsequent calls, and not silently "swallow" them. Change-Id: I2c9f614df72e1f4786705bf94e119b66c62abe5e Reviewed-on: https://go-review.googlesource.com/20515Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Joe Tsai <thebrokentoaster@gmail.com>
-
Martin Möhrmann authored
The fmt package does not use bytes.Buffer anymore as an internal buffer. Change-Id: I34c7a52506290ccbcb10ea2e85dea49a0a8b8203 Reviewed-on: https://go-review.googlesource.com/20511Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-
Paul Marks authored
This allows TestDialerFallbackDelay to pass again on machines where IPv6 connections to nowhere fail quickly instead of hanging. This bug appeared last month, when I deleted the slowTimeout constant. Updates #11225 Fixes #14731 Change-Id: I840011eee571aab1041022411541736111c7fad5 Reviewed-on: https://go-review.googlesource.com/20493 Run-TryBot: Paul Marks <pmarks@google.com> Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Mikio Hara <mikioh.mikioh@gmail.com>
-
Lynn Boger authored
The existing implementation uses code written in Go to implement Sqrt; this adds the assembler to use the sqrt instruction for Power and makes the necessary changes to allow it to be inlined. The following tests showed this relative improvement: benchmark delta BenchmarkSqrt -97.91% BenchmarkSqrtIndirect -96.65% BenchmarkSqrtGo -35.93% BenchmarkSqrtPrime -96.94% Fixes #14349 Change-Id: I8074f4dc63486e756587564ceb320aca300bf5fa Reviewed-on: https://go-review.googlesource.com/19515Reviewed-by:
Minux Ma <minux@golang.org>
-
Todd Neal authored
When calling freeValue for possible const values, remove them from the cache as well. Change-Id: I087ed592243e33c58e5db41700ab266fc70196d9 Reviewed-on: https://go-review.googlesource.com/20481 Run-TryBot: Todd Neal <tolchz@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Keith Randall <khr@golang.org>
-
Dave Cheney authored
More cleanups after CL 20089 - copysub, take a bool rather than an int for the f (force) parameter. - copysub returns a bool rather than an int. - prevl, reg is now int16, which reduces type conversion in its callers. - copy1, reduce the scope of t and p variables. - small simplifications in copyau1, copyas, etc. - {mips64,ppc64}/regzer returns a bool. - apply CL 20181 to x86/peep.go which was missed in the last CL. - various comment fixes. Change-Id: Ib73ffb768c979ce86f1614e5366fd576dea50986 Reviewed-on: https://go-review.googlesource.com/20281Reviewed-by:
Matthew Dempsky <mdempsky@google.com> Run-TryBot: Dave Cheney <dave@cheney.net> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Matthew Dempsky authored
Change-Id: I93b4821254c9b0a3cebd912f447ed58f20adeb58 Reviewed-on: https://go-review.googlesource.com/19937Reviewed-by:
David Crawshaw <crawshaw@golang.org> Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-
Matthew Dempsky authored
Fixes #13337. Change-Id: Ie74d00390111796619150287d3f7a147750ab456 Reviewed-on: https://go-review.googlesource.com/19932Reviewed-by:
Ian Lance Taylor <iant@golang.org>
-
Matthew Dempsky authored
Change-Id: Ice3aa807169f4fec85745a3991b1084a9f85c1b5 Reviewed-on: https://go-review.googlesource.com/20499 Run-TryBot: Matthew Dempsky <mdempsky@google.com> Reviewed-by:
Ian Lance Taylor <iant@golang.org>
-
Matthew Dempsky authored
Accessing the n'th field of a struct is fairly common, and in particular accessing the 0'th field of the receiver parameter list is very common. Add helper methods for both of these tasks and update code to make use of them. Change-Id: I81f551fecdca306b3800636caebcd0dc106f2ed7 Reviewed-on: https://go-review.googlesource.com/20498 Run-TryBot: Matthew Dempsky <mdempsky@google.com> Reviewed-by:
Dave Cheney <dave@cheney.net>
-
Matthew Dempsky authored
Also, more lazy variable declarations, and make Dijkstra happy by replacing "goto loop" with a for loop. Change-Id: Idf2cd779a92eb3f33bd3394e12c9a0be72002ff4 Reviewed-on: https://go-review.googlesource.com/20496Reviewed-by:
Dave Cheney <dave@cheney.net> Reviewed-by:
Ian Lance Taylor <iant@golang.org>
-
Dave Cheney authored
Follow up to CL 20494 addressing Type.Copy and a few other tiny cleanups. Change-Id: I3d0913a9f50a22ac2fd802858b1a94c15c5cb1bc Reviewed-on: https://go-review.googlesource.com/20501 Run-TryBot: Dave Cheney <dave@cheney.net> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Matthew Dempsky <mdempsky@google.com>
-
Matthew Dempsky authored
Better documentation. Change parameter types from **Type and int to just *Type and bool. Make use of short var declarations. Change-Id: I909846ba0df65cd2bc05ee145b72d60e881588bd Reviewed-on: https://go-review.googlesource.com/20495Reviewed-by:
Dave Cheney <dave@cheney.net>
-
Matthew Dempsky authored
This should is preparatory cleanup to make it easier to use separate types to represent each kind of Go type, rather than a single omnibus Type struct with heavily overloaded fields. Also, add TODO comments marking assignments that change an existing Type's kind, as they need to be removed before we can factor Type. Change-Id: If4b551fdea4ae045b10b1a3de2ee98f5cf32a517 Reviewed-on: https://go-review.googlesource.com/20494Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-
- 09 Mar, 2016 3 commits
-
-
Andrew Gerrand authored
Change-Id: I142a9f97303e3bfbd9522fd061530c0a91305389 Reviewed-on: https://go-review.googlesource.com/20500Reviewed-by:
Minux Ma <minux@golang.org>
-
Josh Bleecher Snyder authored
With this, the start and end of geneq and genhash are parallel. This removes a few rare nilchecks from generated hash functions, but nothing to write home about. Change-Id: I3b4836111d04daa6f6834a579bbec374a3f42c70 Reviewed-on: https://go-review.googlesource.com/20456 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
David Crawshaw <crawshaw@golang.org>
-
Ian Lance Taylor authored
Mix in several other minor cleanups, including adding some new methods to Nodes: Index, Addr, SetIndex, SetNodes. Passes toolstash -cmp. Update #14473. Change-Id: I8bd4ae3fde7c5e20ba66e7dd1654fbc70c3ddeb8 Reviewed-on: https://go-review.googlesource.com/20491Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-