- 29 Oct, 2018 10 commits
-
-
Martin Möhrmann authored
Minimum Go requirement for ppc64(le) architecture support is POWER8. https://github.com/golang/go/wiki/MinimumRequirements#ppc64-big-endian Reduce CPU features supported in internal/cpu to those needed to test minimum requirements and cpu feature kernel support for ppc64(le). Currently no internal/cpu feature variables are used to guard code from using unsupported instructions. The IsPower9 feature variable and detection is kept as it will soon be used to guard code execution. Reducing the set of detected CPU features for ppc64(le) makes implementing Go support for new operating systems easier as CPU feature detection for ppc64(le) needs operating system support (e.g. hwcap on Linux and getsystemcfg syscall on AIX). Change-Id: Ic4c17b31610970e481cd139c657da46507391d1d Reviewed-on: https://go-review.googlesource.com/c/145117 Run-TryBot: Martin Möhrmann <martisch@uos.de> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Carlos Eduardo Seo <cseo@linux.vnet.ibm.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Martin Möhrmann authored
Only return a pointer p to the new slices backing array from makeslice. Makeslice callers then construct sliceheader{p, len, cap} explictly instead of makeslice returning the slice. Reduces go binary size by ~0.2%. Removes 92 (~3.5%) panicindex calls from go binary. Change-Id: I29b7c3b5fe8b9dcec96e2c43730575071cfe8a94 Reviewed-on: https://go-review.googlesource.com/c/141822 Run-TryBot: Martin Möhrmann <moehrmann@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Josh Bleecher Snyder <josharian@gmail.com>
-
Robert Griesemer authored
Fixes #28423. Change-Id: Ie57ade565d0407a4bffaa86fb4475ff083168e79 Reviewed-on: https://go-review.googlesource.com/c/145537Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Daniel Martí authored
This way, once the constant declarations are typechecked, all named types are fully typechecked and have all of their methods added. Usually this isn't important, as methods and interfaces cannot be used in constant declarations. However, it can lead to confusing and incorrect errors, such as: $ cat f.go package p type I interface{ F() } type T struct{} const _ = I(T{}) func (T) F() {} $ go build f.go ./f.go:6:12: cannot convert T literal (type T) to type I: T does not implement I (missing F method) The error is clearly wrong, as T does have an F method. If we ensure that all funcs are typechecked before all constant declarations, we get the correct error: $ go build f2.go # command-line-arguments ./f.go:6:7: const initializer I(T literal) is not a constant Fixes #24755. Change-Id: I182b60397b9cac521d9a9ffadb11b42fd42e42fe Reviewed-on: https://go-review.googlesource.com/c/115096 Run-TryBot: Daniel Martí <mvdan@mvdan.cc> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Robert Griesemer <gri@golang.org>
-
Bryan C. Mills authored
This will be used to test fixes for bugs in concurrent 'go' command invocations, such as #26794. See the README changes for a description of the semantics. Updates #26794 Change-Id: I897e7b2d11ff4549a4711002eadd6a54f033ce0b Reviewed-on: https://go-review.googlesource.com/c/141218 Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Filippo Valsorda authored
As a first round, rewrite those handshake message types which can be reused in TLS 1.3 with golang.org/x/crypto/cryptobyte. All other types changed significantly in TLS 1.3 and will require separate implementations. They will be ported to cryptobyte in a later CL. The only semantic changes should be enforcing the random length on the marshaling side, enforcing a couple more "must not be empty" on the unmarshaling side, and checking the rest of the SNI list even if we only take the first. Change-Id: Idd2ced60c558fafcf02ee489195b6f3b4735fe22 Reviewed-on: https://go-review.googlesource.com/c/144115 Run-TryBot: Filippo Valsorda <filippo@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Adam Langley <agl@golang.org>
-
Daniel Theophanes authored
Fixes #25829 Change-Id: I400fdaf0ef3a23bc0d61c4873ffa298e0cf0fc6a Reviewed-on: https://go-review.googlesource.com/c/145204Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Daniel Martí authored
The pipeline parsing code was unnecessarily complex. It used a for loop with a trailing break, a complex switch, and up to seven levels of indentation. Instead, drop the loop in favor of a single named goto with a comment, and flatten out the complex switch to be easier to follow. Two lines of code are now duplicated, but they're simple and only three lines apart. While at it, move the pipe initialization further up to remove the need for three variables. Change-Id: I07b29de195f4000336219aadeadeacaaa4285c58 Reviewed-on: https://go-review.googlesource.com/c/145285Reviewed-by: Rob Pike <r@golang.org> Run-TryBot: Rob Pike <r@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
bill_ofarrell authored
VMSLG has three variants on z14 and later machines. These variants are used in "limbified" squaring: VMSLEG: Even Shift Indication -- the even-indexed intermediate result is doubled VMSLOG: Odd Shift Indication -- the odd-indexed intermediate result is doubled VMSLEOG: Even and Odd Shift Indication -- both intermediate results are doubled Limbified squaring is very useful for high performance cryptographic algorithms, such as elliptic curve. This change allows these instructions to be used in Go assembly. Change-Id: Iaad577b07320205539f99b3cb37a2a984882721b Reviewed-on: https://go-review.googlesource.com/c/145180Reviewed-by: Michael Munday <mike.munday@ibm.com>
-
Alex Brainman authored
The wait was there, because we discovered that we could not remove finished process executable without the wait on Windows XP. But Windows XP is not supported by Go. Maybe we do not need the wait with modern Windows versions. Remove the sleep. Fixes #25965 Change-Id: I02094abee3592ce4fea98eaff9d15137dc54dc81 Reviewed-on: https://go-review.googlesource.com/c/145221 Run-TryBot: Alex Brainman <alex.brainman@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
- 28 Oct, 2018 9 commits
-
-
Daniel Martí authored
The package used to accept invalid range pipelines, such as: {{range $k, .}} {{range $k, 123 := .}} This is because the logic that allowed a range pipeline to declare multiple variables was broken. When encountering a single comma inside a range pipeline, it would happily continue parsing a second variable, even if we didn't have a variable token at all. Then, the loop would immediately break, and we'd parse the pipeline we'd be ranging over. That is, we'd parse {{range $k, .}} as if it were {{range $k = .}}. To fix this, only allow the loop to continue if we know we're going to parse another variable or a token that would end the pipeline. Also add a few test cases for these error edge cases. While at it, make use of T.Run, which was useful in debugging Tree.pipeline via print statements. Fixes #28437. Change-Id: Idc9966bf643f0f3bc1b052620357e5b0aa2022ea Reviewed-on: https://go-review.googlesource.com/c/145282 Run-TryBot: Daniel Martí <mvdan@mvdan.cc> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> Reviewed-by: Rob Pike <r@golang.org>
-
Diogo Pinela authored
We achieve this by always running all tests that create files in a fresh temporary directory, rather than just on darwin/{arm,arm64}. As a bonus, this lets us simplify the cleanup code for these tests and assume their working directory starts out empty. Updates #28387 Change-Id: I952007ae390a2451c9a368da26c7f9f5af64b2ba Reviewed-on: https://go-review.googlesource.com/c/145283Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
hearot authored
Change-Id: I411483d76a2ca91cd15ff42ae1adb9134486d183 Reviewed-on: https://go-review.googlesource.com/c/145278Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Josh Bleecher Snyder authored
During development and debugging, I often want to write noteRule(fmt.Sprintf(...)), and end up manually adding the import to the generated code. Let's just make it always available instead. Change-Id: I1e2d47c98ba056e1b5da42e35fb6ad26f1d9cc3d Reviewed-on: https://go-review.googlesource.com/c/145207 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Martin Möhrmann <moehrmann@google.com>
-
Josh Bleecher Snyder authored
CL 114797 reworked how arguments get written to the stack. Some type conversions got lost in the process. Restore them. Fixes #28390 Updates #28430 Change-Id: Ia0d37428d7d615c865500bbd1a7a4167554ee34f Reviewed-on: https://go-review.googlesource.com/c/144598 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Martin Möhrmann authored
Adds AIX, DragonFly BSD, FreeBSD, NetBSD, OpenBSD and Solaris to the list of operating systems where the GODEBUGCPU environment variable will be parsed and interal/cpu features can be enabled and disabled. Updates #27218 Change-Id: I9cd99142e2a5147cb00ca57b581f049ea6ce8508 Reviewed-on: https://go-review.googlesource.com/c/145281Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Martin Möhrmann <martisch@uos.de> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Josh Bleecher Snyder authored
Change-Id: Ib9f621e380dd9a6beace27ec5ff62780012f8274 Reviewed-on: https://go-review.googlesource.com/c/144600 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Keith Randall <khr@golang.org>
-
hearot authored
The function documentation was wrong, it was using a wrong parameter. This change replaces it with the right parameter. The wrong formula was: q = (u1<<_W + u0 - r)/y The function has got a parameter "v" (of type Word), not a parameter "y". So, the right formula is: q = (u1<<_W + u0 - r)/v Fixes #28444 Change-Id: I82e57ba014735a9fdb6262874ddf498754d30d33 Reviewed-on: https://go-review.googlesource.com/c/145280Reviewed-by: Robert Griesemer <gri@golang.org>
-
Martin Möhrmann authored
Use information about required CPU features stored in the CPU feature options slice to test if minimal CPU requirements are met instead of hard coding this information in the tests directly. Change-Id: I72d89b1cff305b8e751995d4230a2217e32f4236 Reviewed-on: https://go-review.googlesource.com/c/145118Reviewed-by: Keith Randall <khr@golang.org> Run-TryBot: Martin Möhrmann <martisch@uos.de> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
- 27 Oct, 2018 7 commits
-
-
Filippo Valsorda authored
The arm5 and mips builders are can't-send-a-packet-to-localhost-in-1s slow apparently. 1m is less useful, but still better than an obscure test timeout panic. Fixes #28405 Change-Id: I2feeae6ea1b095114caccaab4f6709f405faebad Reviewed-on: https://go-review.googlesource.com/c/145037 Run-TryBot: Filippo Valsorda <filippo@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Matthew Dempsky authored
Change-Id: I221f77075a25e934e20b41307758a89c19169e05 Reviewed-on: https://go-review.googlesource.com/c/145201Reviewed-by: Robert Griesemer <gri@golang.org> Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Matthew Dempsky authored
Avoids allocating an ONAME for OLABEL, OGOTO, and named OBREAK and OCONTINUE nodes. Passes toolstash-check. Change-Id: I359142cd48e8987b5bf29ac100752f8c497261c1 Reviewed-on: https://go-review.googlesource.com/c/145200 Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Robert Griesemer <gri@golang.org>
-
Matthew Dempsky authored
This is supposed to print out function stack frames, but it's been broken since golang.org/cl/38593, and no one has noticed. Change-Id: Iad428a9097d452b878b1f8c5df22afd6f671ac2e Reviewed-on: https://go-review.googlesource.com/c/145199 Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Robert Griesemer <gri@golang.org>
-
Ian Gudger authored
The proposal to add a DNS cache was rejected, so there is no longer a need for the associated TODO. Updates #24796 Change-Id: Ifcedcff72c75a70b2143de0bd3f7bf85ac3528f6 Reviewed-on: https://go-review.googlesource.com/c/145197 Run-TryBot: Ian Gudger <igudger@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Mikio Hara <mikioh.public.networking@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Keith Randall authored
Unlike normal load+op opcodes, the load+compare opcode does not clobber its non-load argument. Allow the load+compare merge to happen even if the non-load argument is used elsewhere. Noticed when investigating issue #28417. Change-Id: Ibc48d1f2e06ae76034c59f453815d263e8ec7288 Reviewed-on: https://go-review.googlesource.com/c/145097Reviewed-by: Ainar Garipov <gugl.zadolbal@gmail.com> Reviewed-by: Ben Shi <powerman1st@163.com>
-
Matthew Dempsky authored
Named constants are represented as OLITERAL with n.Sym != nil. Change-Id: If6bc8c507ef8c3e4e47f586d86fd1d0f20bf8974 Reviewed-on: https://go-review.googlesource.com/c/145198Reviewed-by: Robert Griesemer <gri@golang.org>
-
- 26 Oct, 2018 11 commits
-
-
Raghavendra Nagaraj authored
Fixes #27747 Change-Id: I843e9e121d33440648b364650ee8a8a1639a0144 GitHub-Last-Rev: c614e91e23d4d3dea80bc78886a1b7e96456596b GitHub-Pull-Request: golang/go#28413 Reviewed-on: https://go-review.googlesource.com/c/144998Reviewed-by: Robert Griesemer <gri@golang.org> Run-TryBot: Robert Griesemer <gri@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Clément Chigot authored
This instruction was linked with a new stack layout which might be needed for AIX. This change might not be taken finally. So, this instruction must be removed. See https://go-review.googlesource.com/c/go/+/138733 Change-Id: Ic4a2566e2882696b437eb817d980b7c4bfc03b18 Reviewed-on: https://go-review.googlesource.com/c/144957 Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Bryan C. Mills authored
Updates #28102 Change-Id: Iee1ff64c7720108d6d26bfbff60ea51877093960 Reviewed-on: https://go-review.googlesource.com/c/140862 Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Bryan C. Mills authored
The build list is very incomplete in vendor mode, so we can't rely on it in general. findModule may be called in modload.PackageModuleInfo, which load.LoadImport invokes relatively early during a build. Before this change, the accompanying test failed at 'go build -mod=vendor' with the message: build diamondpoint: cannot find module for path diamondpoint Change-Id: I5e667d8e406872be703510afeb079f6cbfdbd3c8 Reviewed-on: https://go-review.googlesource.com/c/140861 Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Bryan C. Mills authored
Fixes #27859 Change-Id: Ibb459cf41c3a8fe41bb008f60ef6cdd3437a37b1 Reviewed-on: https://go-review.googlesource.com/c/140860 Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Bryan C. Mills authored
The existing mod_tidy test uses replacements, but doesn't replace modules that can also be resolved by fetching from GOPROXY, and doesn't check the differences between the internal and external views. This new test clarifies that interaction with a more realistic example. Change-Id: I2bb2028148f4b7b95c3bfcc54b3976a49515379a Reviewed-on: https://go-review.googlesource.com/c/140859 Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Robert Griesemer authored
These files were already ignored via a hard-coded list of excluded files. Instead of trying to interpret the build tags for these (few) files, recognize the tags automatically and continue to exclude them. Fixes #10370. Change-Id: If7a112ede02e3fa90afe303473d9ea51c5c6609d Reviewed-on: https://go-review.googlesource.com/c/144457Reviewed-by: Alan Donovan <adonovan@google.com>
-
Larry Clapp authored
Truthy returns the JavaScript "truthiness" of the given value. In JavaScript, false, 0, "", null, undefined, and NaN are "falsy", and everything else is "truthy". Fixes #28264 Change-Id: I4586f98646c05a4147d06a7c4a5d9c61d956fc83 GitHub-Last-Rev: 649b353ebc23b09d840faf927a2eeca41ee164bf GitHub-Pull-Request: golang/go#28358 Reviewed-on: https://go-review.googlesource.com/c/144384Reviewed-by: Richard Musiol <neelance@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Richard Musiol <neelance@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Clément Chigot authored
This commit adapts TestStmtLines for AIX operating system. Update #25893 Change-Id: I1c76bbd8fc679a66b65ecfbd1ed7745518064eae Reviewed-on: https://go-review.googlesource.com/c/144958Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Clément Chigot authored
This commits fixes tests for AIX inside os package. "hostname" command on AIX returns "name.domain" and not only "name". So, "hostname -s" must be called. Change-Id: I75e193bcb6ad607ce54ad99aabbed9839012f707 Reviewed-on: https://go-review.googlesource.com/c/144537Reviewed-by: Tobias Klauser <tobias.klauser@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Than McIntosh authored
With https://golang.org/cl/135455, gccgo now uses a different mangling scheme for package paths; add code to use this new scheme for function and variable symbols. Since users sometimes use older versions of gccgo with newer versions of go, perform a test at runtime to see which mangling scheme is in effect for the version of 'gccgo' in the path. Updates #27534. Change-Id: If7ecab06a72e1361129fe40ca6582070a3e8e737 Reviewed-on: https://go-review.googlesource.com/c/144418Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
- 25 Oct, 2018 3 commits
-
-
Mark Rushakoff authored
Change-Id: I7e109470e27eb978f920a99f858dbaffa4872eb5 GitHub-Last-Rev: dd684c2481b234f556a1c84c1771f2d8eb8b5ea2 GitHub-Pull-Request: golang/go#28401 Reviewed-on: https://go-review.googlesource.com/c/144837Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Andrew Poydence authored
Writer method returns the underlying io.Writer used by the given Logger object. Fixes #28327 Change-Id: I6347913d8be8d3222b98967b136cf03d00f446d1 GitHub-Last-Rev: 2db0c5c7416436f99852592d2f258ca93da96712 GitHub-Pull-Request: golang/go#28399 Reviewed-on: https://go-review.googlesource.com/c/144757Reviewed-by: Rob Pike <r@golang.org>
-
Keith Randall authored
The alias declaration needs to come after the function it is aliasing. It isn't a big deal in this case, as bits.Mul inlines and has as its body bits.Mul64, so the desired code gets generated regardless. The alias should only have an effect on inlining cost estimates (for functions that call bits.Mul). Change-Id: I0d814899ce7049a0fb36e8ce1ad5ababbaf6265f Reviewed-on: https://go-review.googlesource.com/c/144597 Run-TryBot: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Giovanni Bajo <rasky@develer.com>
-