aboutsummaryrefslogtreecommitdiff
path: root/src/cmd
AgeCommit message (Collapse)Author
17 hourstesting: print the counter if its greater than 1Shulhan
When test run with "-count=Y" and Y is greater that 1, print a line to indicated the current round of test as "### X/Y".
17 hoursall: prealloc slice with possible minimum capabilitiesShulhan
33 hourscmd/go: avoid redundant work in go work syncPierre Gimalac
First, updateWorkspaceRoots creates a new Requirements to update the direct map, but always with an empty graph cache, discarding the cached module graph. Since workspace roots do not change during package loading, the graph is identical each time; propagate the cached graph to the new Requirements to avoid rebuilding it from scratch on each call to Graph. Second, checkMultiplePaths iterates the full build list on every loadFromRoots call. Its result depends only on the build list and workspace replace directives, both fixed for the lifetime of the module graph. Updated the code to only run once per graph. Together these reduce go work sync time on a workspace with 184 modules from ~35s to ~8.5s. Fixes #77889 Change-Id: I7276aed3109424b3b74a4064b369ed7cbfca7735 Reviewed-on: https://go-review.googlesource.com/c/go/+/750500 Reviewed-by: Michael Matloob <matloob@google.com> Reviewed-by: Sean Liao <sean@liao.dev> Reviewed-by: David Chase <drchase@google.com> Auto-Submit: Sean Liao <sean@liao.dev> Reviewed-by: Michael Matloob <matloob@golang.org> TryBot-Bypass: Michael Matloob <matloob@golang.org>
33 hoursgo/types, types2: fail interface inference against generic methodsRob Findley
When unifying an interface against a concrete type, interface inference looks up each interface method on the concrete type and unifies the signatures. If the concrete method is generic, the *Signature unify case (which ignores type parameter lists) would unify the method's own type parameter into the inference variable, leading to errors mentioning a leaked P and recording the wrong type in Info. A generic method never satisfies an interface method, so fail the unification at the lookup site instead. Change-Id: Id01eefcde492399cb94f4452f5627c4edbd22a1c Reviewed-on: https://go-review.googlesource.com/c/go/+/766160 Reviewed-by: Robert Griesemer <gri@google.com> Reviewed-by: Mark Freeman <markfreeman@google.com> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
35 hourscmd/asm, cmd/internal/obj/arm64: support memory with MUL VL imm offsetJunyang Shao
This CL is generated by CL 765440. This CL supports this addressing pattern: (VL*imm)(Reg) (-VL*imm)(Reg) Change-Id: I4d1bab2ef6c4141699a47b28aa14b28cdee6cb3f Reviewed-on: https://go-review.googlesource.com/c/go/+/765420 LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: David Chase <drchase@google.com> Commit-Queue: Junyang Shao <shaojunyang@google.com>
35 hourscmd/asm, cmd/internal/obj/arm64: support memory with imm offset in SVEJunyang Shao
This CL is generated by CL 765100 This CL supports this addressing pattern: imm(reg.T) Change-Id: I16789e8e6cf03c4fa225c0fe1bd31dc23c9feb21 Reviewed-on: https://go-review.googlesource.com/c/go/+/765080 Reviewed-by: David Chase <drchase@google.com> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
35 hourscmd/asm, cmd/internal/obj/arm64: support special operands in SVEJunyang Shao
This CL is generated by CL 764980. This CL supports these new special constants: <prfop>, which Go already support (prefetch modifier) <vl>, which include VLx2 and VLx4, which is the vector length specifier. Change-Id: I831f306a816493c08f3c22786e5360f2a37acf6c Reviewed-on: https://go-review.googlesource.com/c/go/+/765000 LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: David Chase <drchase@google.com>
35 hourscmd/asm, cmd/internal/obj/arm64: support memory with extensions in SVEJunyang Shao
This CL is generated by CL 764800. Supported addressing patterns: (Z7.D.SXTW<<2)(Z6.D), where Z6.D is the base, Z7.D is the indices. SXTW/UXTW represents signed/unsigned extension, << represents LSL. Change-Id: Ifc6c47833d5113be7cfe96943d369ab977b3a6ee Reviewed-on: https://go-review.googlesource.com/c/go/+/764780 Reviewed-by: David Chase <drchase@google.com> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Commit-Queue: Junyang Shao <shaojunyang@google.com>
35 hourscmd/asm, cmd/internal/obj/arm64: support SVE register listsJunyang Shao
This CL adds the register list support for SVE: [Z1.B, Z2.B] [P1.B, P2.B] [Z1.D] [Z1.D, Z2.D, Z3.D] [Z1.D, Z2.D, Z3.D, Z4.D] This CL is generated by CL 763780. Change-Id: I92210097a8a7525a5a53a2dce0b7652397275dd6 Reviewed-on: https://go-review.googlesource.com/c/go/+/763820 Reviewed-by: David Chase <drchase@google.com> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
35 hourscmd/asm, cmd/internal/obj/arm64: add support for immediatesJunyang Shao
This CL supports various immediate operand patterns. ARM designs the immediate to carry significant semantics, this CL tries to address them as what GNU assembler do, and what the ARM ASL specifies. This CL is generated by CL 763781. Change-Id: I40e2b573f196a947c4f3e55c2be7b8d551471c84 Reviewed-on: https://go-review.googlesource.com/c/go/+/763769 LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: David Chase <drchase@google.com> Commit-Queue: Junyang Shao <shaojunyang@google.com>
37 hourscmd/compile: handle min integer step in loopCuong Manh Le
Since negating min int will overflows back to itself, causing a panic inside subWillUnderflow check. Fixes #78641 Change-Id: Ibbf2fa3228b9890a1a76ac6f4ff504b7e125b29f Reviewed-on: https://go-review.googlesource.com/c/go/+/766260 Auto-Submit: Cuong Manh Le <cuong.manhle.vn@gmail.com> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: David Chase <drchase@google.com> Reviewed-by: Jorropo <jorropo.pgm@gmail.com> Reviewed-by: Keith Randall <khr@google.com>
38 hourscmd/compile: remove redundant codeWeixie Cui
Change-Id: If524465cc898a36a31f9034d5b2f13e8842357a9 GitHub-Last-Rev: bdf52219d7d38b94213529f3d399acca69fa5bae GitHub-Pull-Request: golang/go#78604 Reviewed-on: https://go-review.googlesource.com/c/go/+/764361 Reviewed-by: Mark Freeman <markfreeman@google.com> Auto-Submit: Keith Randall <khr@golang.org> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Keith Randall <khr@golang.org> Reviewed-by: Sean Liao <sean@liao.dev> Reviewed-by: Keith Randall <khr@google.com>
39 hourscmd/trace: pcs overflow would panicWeixie Cui
Fixes #78538 Change-Id: I4bf9add8eab7785504a366331f9ec7c0fb1ca40e GitHub-Last-Rev: 8f3389dd5ac37ea5d7584036c90c353d2d64d7a5 GitHub-Pull-Request: golang/go#78539 Reviewed-on: https://go-review.googlesource.com/c/go/+/762960 Reviewed-by: Florian Lehner <lehner.florian86@gmail.com> Reviewed-by: Michael Knyszek <mknyszek@google.com> Reviewed-by: David Chase <drchase@google.com> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
45 hourscmd/compile: add boolean absorption laws to SSA rewrite rulesTimo Friedl
The SSA generic rewrite rules implement DeMorgan's laws but are missing the closely related boolean absorption laws: x & (x | y) == x x | (x & y) == x These are fundamental boolean algebra identities (see https://en.wikipedia.org/wiki/Absorption_law) that hold for all bit patterns, all widths, signed and unsigned. Both GCC and LLVM recognize and optimize these patterns at -O2. Add two generic rules covering all four widths (8, 16, 32, 64). Commutativity of AND/OR is handled automatically by the rule engine, so all argument orderings are matched. The rules eliminate two redundant ALU instructions per occurrence and fire on real code (defer bit-manipulation patterns in runtime, testing, go/parser, and third-party packages). Fixes #78632 Change-Id: Ib59e839081302ad1635e823309d8aec768c25dcf GitHub-Last-Rev: 23f8296ece08c77fcaeeaf59c2c2d8ce23d1202c GitHub-Pull-Request: golang/go#78634 Reviewed-on: https://go-review.googlesource.com/c/go/+/765580 Reviewed-by: Keith Randall <khr@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: David Chase <drchase@google.com> Reviewed-by: Keith Randall <khr@golang.org> Auto-Submit: Keith Randall <khr@golang.org> Reviewed-by: Jorropo <jorropo.pgm@gmail.com>
3 dayscmd/go: remove bzr supportMichael Matloob
Fixes #78090 Change-Id: Ib222ca91a8421f6de3934d46b68b03c56a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/764760 Reviewed-by: Sean Liao <sean@liao.dev> Reviewed-by: Junyang Shao <shaojunyang@google.com> Reviewed-by: David Chase <drchase@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Michael Matloob <matloob@google.com> Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
4 dayscmd/compile/internal/noder: revert to UIR V3Mark Freeman
Upgrading to V4 early doesn't seem to make much sense while we refine things. Any change to encoding would require another version gate and propagation; this gets tedious fast. Instead, let's keep on V3 and test locally with V4. We can commit skipped tests as we refine and then turn them all on *with* the bump up to V4. Change-Id: I571715e5da75095612f68b224c82e6d22ad3ab25 Reviewed-on: https://go-review.googlesource.com/c/go/+/765444 LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Alan Donovan <adonovan@google.com> Auto-Submit: Mark Freeman <markfreeman@google.com>
4 daysall: update to x/net@cd64923cd7f4Nicholas S. Husin
This brings in CL 765520. For #70914 Change-Id: I5b67c8a555c68b03cebe687aeb5095936a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/765441 Reviewed-by: Nicholas Husin <husin@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Damien Neil <dneil@google.com>
5 dayscmd/compile: fix typoWeixie Cui
Change-Id: Ia9ee618aa68aad5bab73ee62eea176084ee162da GitHub-Last-Rev: 4cc005d3cd1ae4e5eaa283b1799c7be26b2279f5 GitHub-Pull-Request: golang/go#78625 Reviewed-on: https://go-review.googlesource.com/c/go/+/765280 Reviewed-by: Keith Randall <khr@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Keith Randall <khr@google.com>
5 dayscmd/asm, cmd/internal/obj/arm64: support register with index in SVEJunyang Shao
This CL is generated by CL 759800. The new register patterns are (examples): Z1.B[5] Z2[6] P1[7] PN1[8] Change-Id: I5bccc4f1c0474dbd4cd4878bd488f36a7026c7ca Reviewed-on: https://go-review.googlesource.com/c/go/+/759780 Reviewed-by: David Chase <drchase@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
5 dayscmd/asm, cmd/internal/obj/arm64: add GP and SIMD reg support for SVEJunyang Shao
The GP registers and SIMD registers are comforming to the existing Go syntax: they are V or R registers, their widths are specified in the Opcode, the rules to specify them is: - if that instruction only contains one GP or SIMD register: If it's 32-bit GP, then append W to the end of the opcode. If it's 64-bit GP, no changes. If it's SIMD register with BHWD width specification, BHSDQ will just be appended to the end of the opcode. - if it contains multiple GP or SIMD registers, then manual observation found that they are either specified the same width, or they are fixed width. We distinguish them by their first Go ASM operand width. The rule to append suffixes are the same to the single-reg case above. This CL is generated by CL 759280. Change-Id: Icc819cc30dd8fd1609de31ba7bcb4e3ac83c465e Reviewed-on: https://go-review.googlesource.com/c/go/+/759261 Reviewed-by: David Chase <drchase@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
5 dayscmd/internal/obj/loong64: correct instruction encodinglimeidan
Change-Id: I4a9b5d8f7a452cbc6082783723450d8713a04fd9 Reviewed-on: https://go-review.googlesource.com/c/go/+/763940 LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Junyang Shao <shaojunyang@google.com> Reviewed-by: David Chase <drchase@google.com> Reviewed-by: abner chenc <chenguoqi@loongson.cn>
6 dayscmd/go: use fsys.ReadDir for IsStandardPackageMichael Matloob
FIPS140 crypto files will be bound into the virtual filesystem using the fsys package. So IsStandardPackage needs to use fsys.ReadDir to check that the fips140 packages are standard packages rather than os.ReadDir because os.ReadDir doesn't know about the overlay. It would be nice if we could pass in a io/fs.FS to IsStandardPackage but the FS paths are slash paths and don't play well with windows paths. So we pass in ReadDir instead. Maybe in the future we could create an alternative interface to pass the filesystem through but that's a bigger project. Fixes #73649 Change-Id: I576f03cfc52a63cec0598e058e1354676a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/762581 Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Reviewed-by: Michael Matloob <matloob@google.com> Auto-Submit: Michael Matloob <matloob@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
6 dayscmd/go: build pkgsite doc command in same go command invocationMichael Matloob
Instead of running go run. This is enabled by Ian Alexander's work to remove global state in the loader package. This also fixes an issue where we can't build and run the pkgsite binary because, with our GOPROXY setting, if pkgsite module is available in the module cache at the requested version, but the pkgsite/cmd/internal/doc module isn't we'll give up trying to fetch the doc module. Now that the build and execution are separated, we can make sure the GOPROXY setting is only supplied to the running pkgsite binary, but not to the operations that build it. Fixes #78457 Change-Id: Id2a754fee12b68240243773f81e7d00b6a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/763760 Reviewed-by: Michael Matloob <matloob@google.com> Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Michael Matloob <matloob@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
6 dayscmd/go/internal/modload: fix logged filename for 'go mod init -modfile'Olivier Mengué
Fix 'go mod init -modfile=tools.mod module' which prints 'creating new go.mod' instead of 'creating new tools.mod'. Note that -modfile already works, but isn't yet documented and this is the subject of proposal #78503, so this patch is the minimal patch to make the feature work better with the existing testsuite, but more test cases will have to be added once the proposal is approved. Change-Id: Ia4a7c9b6fb71b4365cbe5f3b70a7af6011b9e089 Reviewed-on: https://go-review.googlesource.com/c/go/+/761781 LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: David Chase <drchase@google.com> Reviewed-by: Michael Matloob <matloob@golang.org> Reviewed-by: Michael Matloob <matloob@google.com>
6 dayscmd/go: respect -short flag when documenting individual symbolsacehinnnqru
The -short flag was ignored when documenting individual symbols (functions, types, or variables) with "go doc -short package.symbol". This change adds short flag checks to symbolDoc, typeDoc, and valueDoc functions. Fixes #77192 Change-Id: I66935ceb5ffb5836dbd3a2fd2c7a33dd31e82001 Reviewed-on: https://go-review.googlesource.com/c/go/+/764101 Reviewed-by: David Chase <drchase@google.com> Reviewed-by: Michael Matloob <matloob@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Michael Matloob <matloob@golang.org>
6 dayscmd/link: fallback to older minimum Windows target version on older C GNU ↵qmuntal
toolchains Setting Windows 10 as the minimum target version requires setting the IMAGE_GUARD_SECURITY_COOKIE_UNUSED flag in the PE load config directory, else the executable will fail to run. When using an external linker that flag is set by defining a _load_config_used symbol with the proper value. However, older versions of the GNU toolchain do not associate the _load_config_used symbol with the PE load config directory. To work around this issue, we can fallback to the previous minimum Windows target version if the external linker doesn't special-case the _load_config_used symbol. Change-Id: I36ac7a2968c3576ac788bf192e7614bbae35ad1f Reviewed-on: https://go-review.googlesource.com/c/go/+/763960 Reviewed-by: Damien Neil <dneil@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: David Chase <drchase@google.com>
6 dayscmd/compile: remove initContext typeCuong Manh Le
All literals are initialized in init function context, thus it's safe to remove the type and simplify all its usage. Change-Id: If128e915cf63199ab0b23b240e0f31508be8f377 Reviewed-on: https://go-review.googlesource.com/c/go/+/764021 Reviewed-by: Keith Randall <khr@google.com> Auto-Submit: Cuong Manh Le <cuong.manhle.vn@gmail.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: David Chase <drchase@google.com> Reviewed-by: Keith Randall <khr@golang.org>
6 dayscmd/compile: run CondSelect into math rules on all archesJorropo
Fixes #78558 I've also added tests to make sure PPC still generate ISEL when the constant isn't 1. This is to make sure we aren't generating a sequence that wouldn't work right now. But it does not mean we couldn't try to optimize other constants on PPC64 if a fast sequence exists; for example like arm64's inline register shifts. Change-Id: Ic241d593149b7a11533948f5d4c52db357cc134f Reviewed-on: https://go-review.googlesource.com/c/go/+/763340 Reviewed-by: Keith Randall <khr@google.com> Auto-Submit: Jorropo <jorropo.pgm@gmail.com> Reviewed-by: David Chase <drchase@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Jayanth Krishnamurthy <jayanth.krishnamurthy@ibm.com> Reviewed-by: Paul Murphy <paumurph@redhat.com>
6 dayscmd/compile: improve stp merging for non-sequent casesMelnikov Denis
Original algorithm merges stores with the first mergeable store in the chain, but it misses some cases. Additionally, creating list of STs, which store data to adjacent memory cells allows merging them according to the direction of increase of their addresses. I have already tried another algorithm in CL 698097, but it was reverted. This algorithm works differently and fixes bug, generated by variant from another CL. Fixes #71987, #75365 There are the results of sweet benchmarks │ base.stat │ opt.stat │ │ sec/op │ sec/op vs base │ ESBuildThreeJS-4 1.088 ± 2% 1.086 ± 1% ~ (p=1.000 n=10) ESBuildRomeTS-4 263.0m ± 2% 260.8m ± 1% ~ (p=0.105 n=10) EtcdPut-4 73.08m ± 1% 73.16m ± 1% ~ (p=0.971 n=10) EtcdSTM-4 414.9m ± 1% 415.4m ± 1% ~ (p=0.393 n=10) GoBuildKubelet-4 203.3 ± 0% 203.5 ± 0% ~ (p=0.393 n=10) GoBuildKubeletLink-4 19.06 ± 1% 19.05 ± 0% ~ (p=0.280 n=10) GoBuildIstioctl-4 156.6 ± 0% 156.6 ± 0% ~ (p=0.796 n=10) GoBuildIstioctlLink-4 14.16 ± 1% 14.18 ± 1% ~ (p=0.853 n=10) GoBuildFrontend-4 56.45 ± 1% 56.57 ± 0% ~ (p=0.579 n=10) GoBuildFrontendLink-4 3.635 ± 1% 3.646 ± 0% ~ (p=0.436 n=10) GoBuildTsgo-4 103.0 ± 1% 103.4 ± 1% ~ (p=0.529 n=10) GoBuildTsgoLink-4 1.865 ± 1% 1.860 ± 1% ~ (p=0.684 n=10) GopherLuaKNucleotide-4 33.55 ± 0% 33.58 ± 0% ~ (p=0.075 n=10) MarkdownRenderXHTML-4 281.0m ± 0% 280.3m ± 0% -0.23% (p=0.019 n=10) Tile38QueryLoad-4 970.0µ ± 1% 969.3µ ± 0% ~ (p=0.436 n=10) geomean 3.128 3.128 -0.01% Change-Id: Ia548b43601b1bdb1c1723d300a4b8b907ab0c040 Reviewed-on: https://go-review.googlesource.com/c/go/+/760100 Reviewed-by: Mark Freeman <markfreeman@google.com> Reviewed-by: Keith Randall <khr@golang.org> Reviewed-by: Keith Randall <khr@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Keith Randall <khr@golang.org>
6 daysall: update to x/net@056ac74Nicholas S. Husin
This brings in CL 762041, CL 763160, and CL 762040. For #70914 Change-Id: Ieb9e5d59b233fda605fb3168f19f15ff8ca7da2b Reviewed-on: https://go-review.googlesource.com/c/go/+/740121 LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Damien Neil <dneil@google.com> Reviewed-by: Nicholas Husin <husin@google.com>
7 dayscmd/go: use MkdirTemp to create temp directory for "go bug"Damien Neil
Don't use a predictable, potentially attacker-controlled filename in /tmp. Fixes #78584 Fixes CVE-2026-39819 Change-Id: I72116aa6dd8fa50f65b6dc0292a15a8c6a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/763882 Reviewed-by: Nicholas Husin <husin@google.com> Reviewed-by: Nicholas Husin <nsh@golang.org> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
7 dayscmd/compile: remove unused inNonInitFunction contextCuong Manh Le
CL 737821 removed the last functional use of inNonInitFunction. This field and its associated logic are now dead code and can be safely deleted. Change-Id: I4023ec7ef5d10c94ef54b9726f18cda863ee2ff4 Reviewed-on: https://go-review.googlesource.com/c/go/+/764020 LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Keith Randall <khr@google.com> Reviewed-by: David Chase <drchase@google.com> Auto-Submit: Cuong Manh Le <cuong.manhle.vn@gmail.com> Reviewed-by: Keith Randall <khr@golang.org>
7 dayscmd/internal/obj/arm64: add ASIMD cross-lane reduction instructionsAlexander Musman
Add support for ASIMD instructions that reduce a vector to a scalar by operating across all lanes. These use the ASIMDALL encoding class from the ARM architecture specification. Integer cross-lane reductions (.B8, .B16, .H4, .H8, .S4): Signed max/min across lanes: VSMAXV, VSMINV Unsigned max/min across lanes: VUMAXV, VUMINV Floating-point cross-lane reductions (.S4 arrangement): FP max/min across lanes: VFMAXV, VFMINV FP max/min across lanes (NM): VFMAXNMV, VFMINNMV Change-Id: I6af4462d26803dfc7c78db2ad9df4284083e31e8 Reviewed-on: https://go-review.googlesource.com/c/go/+/762202 Reviewed-by: David Chase <drchase@google.com> Reviewed-by: Keith Randall <khr@google.com> Reviewed-by: Keith Randall <khr@golang.org> Auto-Submit: Keith Randall <khr@golang.org> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
7 dayscmd/go: disallow cgo trust boundary bypassNeal Patel
The cgo compiler implicitly trusts generated files with 'cgo' prefixes; thus, SWIG files containing 'cgo' in their names will cause bypass of the trust boundary, leading to code smuggling or arbitrary code execution. The cgo compiler will now produce an error if it encounters any SWIG files containing this prefix. Thanks to Juho Forsén of Mattermost for reporting this issue. Fixes #78335 Fixes CVE-2026-27140 Change-Id: I44185a84e07739b3b347efdb86be7d8fa560b030 Reviewed-on: https://go-internal-review.googlesource.com/c/go/+/3520 Reviewed-by: Nicholas Husin <husin@google.com> Reviewed-by: Damien Neil <dneil@google.com> Reviewed-on: https://go-review.googlesource.com/c/go/+/763768 LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: David Chase <drchase@google.com> Reviewed-by: Russ Cox <rsc@golang.org>
7 dayscmd/compile: fix loopbce overflow check logicJunyang Shao
addWillOverflow and subWillOverflow has an implicit assumption that y is positive, using it outside of addU and subU is really incorrect. This CL fixes those incorrect usage to use the correct logic in place. Thanks to Jakub Ciolek for reporting this issue. Fixes #78333 Fixes CVE-2026-27143 Change-Id: I263e8e7ac227e2a68109eb7bbd45f66569ed22ec Reviewed-on: https://go-internal-review.googlesource.com/c/go/+/3700 Reviewed-by: Damien Neil <dneil@google.com> Reviewed-by: Neal Patel <nealpatel@google.com> Reviewed-on: https://go-review.googlesource.com/c/go/+/763765 Reviewed-by: Jakub Ciolek <jakub@ciolek.dev> Reviewed-by: Russ Cox <rsc@golang.org> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: David Chase <drchase@google.com>
7 dayscmd/compile: fix mem access overlap detectionJunyang Shao
When a no-op interface conversion is wrapped around the rhs of an assignment, the memory overlap detection logic in the compiler failed to peel down conversion to see the actual pointer, causing an incorrect no-overlapping determination. Thanks to Jakub Ciolek for reporting this issue. Fixes #78371 Fixes CVE-2026-27144 Change-Id: I55ff0806b099e1447bdbfba7fde6c6597db5d65c Reviewed-on: https://go-internal-review.googlesource.com/c/go/+/3780 Reviewed-by: Damien Neil <dneil@google.com> Reviewed-by: Neal Patel <nealpatel@google.com> Reviewed-on: https://go-review.googlesource.com/c/go/+/763764 Auto-Submit: David Chase <drchase@google.com> TryBot-Bypass: David Chase <drchase@google.com> Reviewed-by: Russ Cox <rsc@golang.org> Reviewed-by: Jakub Ciolek <jakub@ciolek.dev>
7 dayscmd/compile: preserve dot vars necessary for debuggers in DWARFDerek Parker
This patch fixes a bug introduced in the recent DWARF refactor / cleanup where `shouldEmitDwarf` was unified and ended up pruning certain dot prefixed vars that are necessary for debuggers. Other dot prefixed vars are already pruned in earlier passes, those that remain are intentional and should be preserved. Change-Id: Ib0cee520e2b99770479889feb44f3981a518137b Reviewed-on: https://go-review.googlesource.com/c/go/+/763557 Auto-Submit: Keith Randall <khr@golang.org> Reviewed-by: Keith Randall <khr@golang.org> Reviewed-by: Keith Randall <khr@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: David Chase <drchase@google.com>
7 dayscmd/internal/obj/arm64: add ASIMD miscellaneous unary instructionsAlexander Musman
Add support for ASIMD unary miscellaneous instructions that operate on a single source register. These use the ASIMDMISC encoding class from the ARM architecture specification. These instruction need some validation for arrangement constraints: - VNOT only allows .B8/.B16 arrangements - VCLS/VCLZ do not support D arrangements - Floating-point variants (VFABS, VFNEG, VFSQRT, VFRINT*) only allow floating-point arrangements (S and D) New instructions by group: Integer absolute/negate: VABS, VNEG Floating-point abs/negate: VFABS, VFNEG Floating-point sqrt: VFSQRT Floating-point round: VFRINTN, VFRINTP, VFRINTM, VFRINTZ Saturating abs/negate: VSQABS, VSQNEG Bit/count operations: VCLS, VCLZ, VNOT Change-Id: I62242eda31f82cd34119c7d4f97316a030e7663b Reviewed-on: https://go-review.googlesource.com/c/go/+/762201 Reviewed-by: Keith Randall <khr@google.com> Reviewed-by: Keith Randall <khr@golang.org> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: David Chase <drchase@google.com> Auto-Submit: Keith Randall <khr@golang.org>
7 dayscmd/internal/obj/arm64: add ASIMD arithmetic instructionsAlexander Musman
Add encoding support for ASIMD three-register instructions covering floating-point, saturating, halving, integer multiply/accumulate, min/max (including pairwise variants), and bitwise operations. These belong to the "Advanced SIMD Three-register (same)" instruction class defined by the ARM architecture, meaning the two source registers use the same element arrangement (e.g., both .S4 or both .D2). In the assembler they share a common encoding path using the ASIMDSAME() macro. New instructions by group: Floating-point arithmetic: VFADD, VFSUB, VFMUL, VFDIV Floating-point min/max: VFMAX, VFMAXNM, VFMIN, VFMINNM Pairwise floating-point: VFADDP, VFMAXP, VFMINP, VFMAXNMP, VFMINNMP Saturating arithmetic: VSQADD, VUQADD, VSQSUB, VUQSUB Average (halving add): VSHADD, VSRHADD, VUHADD, VURHADD Integer multiply/accum: VMUL, VMLA, VMLS Integer min/max: VSMAX, VSMIN Pairwise integer min/max: VSMAXP, VSMINP, VUMAXP, VUMINP Bitwise: VBIC, VORN Change-Id: I732c84123ad1f302260514fdfe0d020787da017b Reviewed-on: https://go-review.googlesource.com/c/go/+/762200 Auto-Submit: Keith Randall <khr@golang.org> Reviewed-by: Keith Randall <khr@golang.org> Reviewed-by: Keith Randall <khr@google.com> Reviewed-by: David Chase <drchase@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
7 dayscmd/internal/obj/arm64: add ASIMD shift instructionsAlexander Musman
Add support for ASIMD shift instructions. These use the ASIMDSHF encoding class from the ARM architecture specification, where the shift amount is encoded as an immediate derived from the element size. Also add ASIMD shifts-by-vector (3-register form) where the shift amount comes from a second vector register. These use the ASIMDSAME encoding class. New instructions by group: Shift by immediate (signed): VSSHR, VSRSHR Shift by immediate (saturating): VSQSHL, VUQSHL Narrowing shift by immediate: VSHRN, VSHRN2 Shift by vector (3-reg): VSSHL, VUSHL, VSQSHL, VUQSHL Change-Id: I039cc16bc01980b04e6940cc1d4670faf5fa7e3c Reviewed-on: https://go-review.googlesource.com/c/go/+/762180 Reviewed-by: Keith Randall <khr@google.com> Reviewed-by: Keith Randall <khr@golang.org> Auto-Submit: Keith Randall <khr@golang.org> Reviewed-by: David Chase <drchase@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
7 dayscmd/internal/obj/arm64: add remaining ASIMD compare instructionsAlexander Musman
Add remaining arm64 ASIMD vector compare instructions. All these instructions produce either all zeroes (false) or all ones (true) bits in each corresponding lane as the result. Added integer comparison instructions: - VCMEQ (compare to zero) - VCMGE, VCMGT (singed, both two-register and compare to zero) - VCMHI, VCMHS (unsigned two-register compare) - VCMLE, VCMLT (signed compare to zero) Added floating-point comparison instructions: - VFCMEQ, VFCMGE, VFCMGT (both two-register and zero variants) - VFCMLE, VFCMLT (compare to zero) Change-Id: I913165d3934f2556c9bdf38c5103ef56d86383ef Reviewed-on: https://go-review.googlesource.com/c/go/+/721640 Auto-Submit: Keith Randall <khr@golang.org> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Reviewed-by: Keith Randall <khr@golang.org> Reviewed-by: Keith Randall <khr@google.com>
7 dayscmd/internal/obj: refactor arm64 ASIMD instruction encodingAlexander Musman
Refactor arm64 ASIMD opcodes to use common helper routines named after their instruction classes from the arm64 XML specification. Add helper routines like ASIMDSAME for instructions with encoding class "asimdsame" in arm64 encodingindex.xml. Helper arguments follow the bitfield order in the speficication tables. For example, the CMEQ instruction entry: <tr class="instructiontable" encname="CMEQ_asimdsame_only"...> <td bitwidth="1" class="bitfield">1</td> <td bitwidth="2" class="bitfield"></td> <td bitwidth="5" class="bitfield">10001</td> <td class="iformname" iformid="CMEQ_advsimd_reg">CMEQ (register)</td> <td class="enctags">Vector</td> </tr> Now corresponds to ASIMDSAME(1, 0, 0x11), where each argument matches the correspoding bitfield value in the table. Change-Id: I024f3eba552906a865841bc1a296f14e3fca73f5 Reviewed-on: https://go-review.googlesource.com/c/go/+/719280 Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Cherry Mui <cherryyz@google.com>
7 dayscmd/go/internal/tool: only forward SIGHUP, SIGINT, SIGQUIT, and SIGTERMMichael Matloob
These are the signals that are likely to be sent to go tool by other programs. This means we won't forward SIGTSTP, SIGTTIN, SIGTTOU. Doing so was breaking expected behavior in a terminal. Fixes #76173 Change-Id: I018808e8ecf59e4e111f353968d83b856a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/763060 Reviewed-by: Michael Matloob <matloob@google.com> Reviewed-by: David Chase <drchase@google.com> Reviewed-by: Ian Lance Taylor <iant@golang.org> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
7 dayscmd/compile: support all constant return types in switch lookup tablesqmuntal
Lookup tables for switch statements can be generalized to also support bools, strings, floats, and complex numbers. Change-Id: Ic3ece41fe2009050fbf08ba6f06ea8a567407974 Reviewed-on: https://go-review.googlesource.com/c/go/+/763320 Reviewed-by: David Chase <drchase@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Keith Randall <khr@golang.org> Reviewed-by: Keith Randall <khr@golang.org> Reviewed-by: Keith Randall <khr@google.com>
7 daysall: update to x/tools@f6476fbaabd396b58618b473e4eb71e1f532b495Mark Freeman
This just brings in CL 763663 in hopes of fixing the longest builders. Change-Id: Ib4a24dc214f58e77dfd2999df7ecf5c0dd21d1fc Reviewed-on: https://go-review.googlesource.com/c/go/+/763770 Reviewed-by: Robert Griesemer <gri@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org>
7 daysinternal/syscall/unix: properly support AT_SYMLINK_NOFOLLOW on LinuxDamien Neil
On Linux, the fchmodat syscall silently ignores the AT_SYMLINK_NOFOLLOW flag. Change the Linux Fchmodat function to use the fstatat2 syscall (added in Linux 6.6) when available. When fstatat2 is not available, use the same workaround as GNU libc and musl, which is to open the target file with O_PATH and then chmod it via /proc/self/fd. This change fixes an os.Root escape, where Root.Chmod could follow a symlink and act on a file outside of the root. Root.Chmod checks to see if its target is a symlink before calling fchmodat, so this escape requires the target to be replaced with a symlink in between the initial check and the fchmodat. Thanks to Uuganbayar Lkhamsuren (https://github.com/uug4na) for reporting this issue. Fixes CVE-2026-32282 Fixes #78293 Change-Id: Ie487be1a853b341a77b42ae0c59301d46a6a6964 Reviewed-on: https://go-internal-review.googlesource.com/c/go/+/3900 Reviewed-by: Damien Neil <dneil@google.com> Reviewed-by: Neal Patel <nealpatel@google.com> Reviewed-on: https://go-review.googlesource.com/c/go/+/763761 TryBot-Bypass: David Chase <drchase@google.com> Auto-Submit: David Chase <drchase@google.com>
7 dayscmd/compile/internal/noder: use UIR V4Mark Freeman
Change-Id: If8acdbf0e48ed600c4ba3f762802879335df1465 Reviewed-on: https://go-review.googlesource.com/c/go/+/761980 Reviewed-by: Robert Griesemer <gri@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
8 dayscmd/go/internal/modload: rename State to LoaderIan Alexander
Rename modload.State to modload.Loader. Rename all references to module loader state. The term "Loader" now refers to the module loader by default. The package loader was explicitly renamed "packageLoader" in an earlier change in order to distinguish it from the module loader. [git-generate] cd src/cmd/go/internal/modload rf ' mv State Loader mv NewState NewLoader mv mvsReqs.loaderstate mvsReqs.ld mv replacementRepo.loaderstate replacementRepo.ld mv TestQueryImport.loaderstate TestQueryImport.ld mv LoadPackages.ld LoadPackages.pld mv Loader.CheckAllowed.s Loader.CheckAllowed.ld mv Loader.CheckExclusions.s Loader.CheckExclusions.ld mv Loader.CheckRetractions.s Loader.CheckRetractions.ld mv Loader.Reset.s Loader.Reset.ld mv Loader.setState.s Loader.setState.ld mv Loader.Fetcher.s Loader.Fetcher.ld mv Loader.vendorDir.s Loader.vendorDir.ld mv Loader.VendorDirOrEmpty.s Loader.VendorDirOrEmpty.ld mv Loader.AllowMissingModuleImports.s Loader.AllowMissingModuleImports.ld mv NewNoMainModulesError.s NewNoMainModulesError.ld mv BinDir.loaderstate BinDir.ld mv CheckDeprecation.loaderstate CheckDeprecation.ld mv CreateModFile.loaderstate CreateModFile.ld mv EditBuildList.loaderstate EditBuildList.ld mv EnterModule.loaderstate EnterModule.ld mv EnterWorkspace.loaderstate EnterWorkspace.ld mv ImportFromFiles.loaderstate ImportFromFiles.ld mv Init.loaderstate Init.ld mv ListModules.loaderstate ListModules.ld mv LoadModFile.loaderstate LoadModFile.ld mv LoadModGraph.loaderstate LoadModGraph.ld mv LoadPackages.loaderstate LoadPackages.ld mv Loader.Enabled.loaderstate Loader.Enabled.ld mv Loader.FindGoWork.loaderstate Loader.FindGoWork.ld mv Loader.HasModRoot.loaderstate Loader.HasModRoot.ld mv Loader.InitWorkfile.loaderstate Loader.InitWorkfile.ld mv Loader.ModFilePath.loaderstate Loader.ModFilePath.ld mv Loader.MustHaveModRoot.loaderstate Loader.MustHaveModRoot.ld mv Loader.PackageModule.loaderstate Loader.PackageModule.ld mv Loader.Why.loaderstate Loader.Why.ld mv Loader.WhyDepth.loaderstate Loader.WhyDepth.ld mv Loader.WillBeEnabled.loaderstate Loader.WillBeEnabled.ld mv Loader.inWorkspaceMode.loaderstate Loader.inWorkspaceMode.ld mv Lookup.loaderstate Lookup.ld mv MainModuleSet.DirImportPath.loaderstate MainModuleSet.DirImportPath.ld mv MainModuleSet.GetSingleIndexOrNil.loaderstate MainModuleSet.GetSingleIndexOrNil.ld mv MainModuleSet.GoVersion.loaderstate MainModuleSet.GoVersion.ld mv MainModuleSet.Godebugs.loaderstate MainModuleSet.Godebugs.ld mv MainModuleSet.getSingleMainModule.loaderstate MainModuleSet.getSingleMainModule.ld mv MainModuleSet.mustGetSingleMainModule.loaderstate MainModuleSet.mustGetSingleMainModule.ld mv MatchInModule.loaderstate MatchInModule.ld mv ModFile.loaderstate ModFile.ld mv ModuleGraph.allRootsSelected.loaderstate ModuleGraph.allRootsSelected.ld mv ModuleInfo.loaderstate ModuleInfo.ld mv PackageModRoot.loaderstate PackageModRoot.ld mv PackageModuleInfo.loaderstate PackageModuleInfo.ld mv Query.loaderstate Query.ld mv QueryPackages.loaderstate QueryPackages.ld mv QueryPattern.loaderstate QueryPattern.ld mv Replacement.loaderstate Replacement.ld mv Requirements.GoVersion.loaderstate Requirements.GoVersion.ld mv Requirements.Graph.loaderstate Requirements.Graph.ld mv Requirements.hasRedundantRoot.loaderstate Requirements.hasRedundantRoot.ld mv Requirements.initVendor.loaderstate Requirements.initVendor.ld mv Requirements.rootSelected.loaderstate Requirements.rootSelected.ld mv UpdateGoModFromReqs.loaderstate UpdateGoModFromReqs.ld mv VendorDir.loaderstate VendorDir.ld mv WorkFilePath.loaderstate WorkFilePath.ld mv WriteGoMod.loaderstate WriteGoMod.ld mv addDeprecation.loaderstate addDeprecation.ld mv addRetraction.loaderstate addRetraction.ld mv addUpdate.loaderstate addUpdate.ld mv addVersions.loaderstate addVersions.ld mv canonicalizeReplacePath.loaderstate canonicalizeReplacePath.ld mv checkReuse.loaderstate checkReuse.ld mv checkVendorConsistency.loaderstate checkVendorConsistency.ld mv commitRequirements.loaderstate commitRequirements.ld mv convertPruning.loaderstate convertPruning.ld mv die.loaderstate die.ld mv editRequirements.loaderstate editRequirements.ld mv expandGraph.loaderstate expandGraph.ld mv extendGraph.loaderstate extendGraph.ld mv fetch.loaderstate fetch.ld mv fixVersion.loaderstate fixVersion.ld mv goModSummary.loaderstate goModSummary.ld mv importFromModules.loaderstate importFromModules.ld mv keepSums.loaderstate keepSums.ld mv listModules.loaderstate listModules.ld mv loadFromRoots.loaderstate loadFromRoots.ld mv loadModFile.loaderstate loadModFile.ld mv loadPkg.fromExternalModule.loaderstate loadPkg.fromExternalModule.ld mv lookupRepo.loaderstate lookupRepo.ld mv makeMainModules.loaderstate makeMainModules.ld mv matchLocalDirs.loaderstate matchLocalDirs.ld mv matchPackages.loaderstate matchPackages.ld mv moduleInfo.loaderstate moduleInfo.ld mv modulePrefixesExcludingTarget.loaderstate modulePrefixesExcludingTarget.ld mv mustHaveCompleteRequirements.loaderstate mustHaveCompleteRequirements.ld mv mustHaveSums.loaderstate mustHaveSums.ld mv newRequirements.loaderstate newRequirements.ld mv overrideRoots.loaderstate overrideRoots.ld mv packageLoader.applyPkgFlags.loaderstate packageLoader.applyPkgFlags.ld mv packageLoader.checkMultiplePaths.loaderstate packageLoader.checkMultiplePaths.ld mv packageLoader.checkTidyCompatibility.loaderstate packageLoader.checkTidyCompatibility.ld mv packageLoader.goVersion.loaderstate packageLoader.goVersion.ld mv packageLoader.load.loaderstate packageLoader.load.ld mv packageLoader.pkg.loaderstate packageLoader.pkg.ld mv packageLoader.pkgTest.loaderstate packageLoader.pkgTest.ld mv packageLoader.preloadRootModules.loaderstate packageLoader.preloadRootModules.ld mv packageLoader.resolveMissingImports.loaderstate packageLoader.resolveMissingImports.ld mv packageLoader.stdVendor.loaderstate packageLoader.stdVendor.ld mv packageLoader.updateRequirements.loaderstate packageLoader.updateRequirements.ld mv parseIgnorePatterns.loaderstate parseIgnorePatterns.ld mv pathInModuleCache.loaderstate pathInModuleCache.ld mv previousVersion.loaderstate previousVersion.ld mv queryImport.loaderstate queryImport.ld mv queryLatestVersionIgnoringRetractions.loaderstate queryLatestVersionIgnoringRetractions.ld mv queryMatcher.filterVersions.loaderstate queryMatcher.filterVersions.ld mv queryPrefixModules.loaderstate queryPrefixModules.ld mv queryProxy.loaderstate queryProxy.ld mv queryReuse.loaderstate queryReuse.ld mv rawGoModData.loaderstate rawGoModData.ld mv rawGoModSummary.loaderstate rawGoModSummary.ld mv readModGraph.loaderstate readModGraph.ld mv replaceRelativeTo.loaderstate replaceRelativeTo.ld mv replacementFrom.loaderstate replacementFrom.ld mv requirementsFromModFiles.loaderstate requirementsFromModFiles.ld mv resolveLocalPackage.loaderstate resolveLocalPackage.ld mv resolveReplacement.loaderstate resolveReplacement.ld mv rootsFromModFile.loaderstate rootsFromModFile.ld mv setDefaultBuildMod.loaderstate setDefaultBuildMod.ld mv spotCheckRoots.loaderstate spotCheckRoots.ld mv tidyPrunedRoots.loaderstate tidyPrunedRoots.ld mv tidyRoots.loaderstate tidyRoots.ld mv tidyUnprunedRoots.loaderstate tidyUnprunedRoots.ld mv updatePrunedRoots.loaderstate updatePrunedRoots.ld mv updateRoots.loaderstate updateRoots.ld mv updateUnprunedRoots.loaderstate updateUnprunedRoots.ld mv updateWorkspaceRoots.loaderstate updateWorkspaceRoots.ld mv versionHasGoMod.loaderstate versionHasGoMod.ld mv versions.loaderstate versions.ld ' sed -i -e 's/loaderstate/ld/g' query_test.go cd ../bug rf ' mv runBug.moduleLoaderState runBug.moduleLoader mv printEnvDetails.loaderstate printEnvDetails.ld mv printGoEnv.loaderstate printGoEnv.ld ' cd ../clean rf ' mv runClean.moduleLoaderState runClean.moduleLoader ' cd ../envcmd rf ' mv runEnv.moduleLoaderState runEnv.moduleLoader mv ExtraEnvVars.loaderstate ExtraEnvVars.ld mv ExtraEnvVarsCostly.loaderstate ExtraEnvVarsCostly.ld ' cd ../fmtcmd rf ' mv runFmt.moduleLoaderState runFmt.moduleLoader ' cd ../generate rf ' mv runGenerate.moduleLoaderState runGenerate.moduleLoader ' cd ../list rf ' mv runList.moduleLoaderState runList.moduleLoader ' cd ../load rf ' mv GoFilesPackage.loaderstate GoFilesPackage.ld mv LoadImportWithFlags.loaderstate LoadImportWithFlags.ld mv LoadPackage.loaderstate LoadPackage.ld mv LoadPackageWithFlags.loaderstate LoadPackageWithFlags.ld mv Package.load.loaderstate Package.load.ld mv PackagesAndErrors.loaderstate PackagesAndErrors.ld mv PackagesAndErrorsOutsideModule.loaderstate PackagesAndErrorsOutsideModule.ld mv TestPackageList.loaderstate TestPackageList.ld mv TestPackagesAndErrors.loaderstate TestPackagesAndErrors.ld mv TestPackagesFor.loaderstate TestPackagesFor.ld mv defaultGODEBUG.loaderstate defaultGODEBUG.ld mv defaultGODEBUGGoVersion.loaderstate defaultGODEBUGGoVersion.ld mv disallowInternal.loaderstate disallowInternal.ld mv loadImport.loaderstate loadImport.ld mv loadPackageData.loaderstate loadPackageData.ld mv preload.preloadImports.loaderstate preload.preloadImports.ld mv preload.preloadMatches.loaderstate preload.preloadMatches.ld mv setToolFlags.loaderstate setToolFlags.ld ' cd ../modcmd rf ' mv runDownload.moduleLoaderState runDownload.moduleLoader mv runEdit.moduleLoaderState runEdit.moduleLoader mv runGraph.moduleLoaderState runGraph.moduleLoader mv runInit.moduleLoaderState runInit.moduleLoader mv runTidy.moduleLoaderState runTidy.moduleLoader mv runVendor.moduleLoaderState runVendor.moduleLoader mv runVerify.moduleLoaderState runVerify.moduleLoader mv runWhy.moduleLoaderState runWhy.moduleLoader mv RunVendor.loaderstate RunVendor.ld mv verifyMod.loaderstate verifyMod.ld ' cd ../modget rf ' mv runGet.moduleLoaderState runGet.moduleLoader mv newQuery.loaderstate newQuery.ld mv newResolver.loaderstate newResolver.ld mv parseArgs.loaderstate parseArgs.ld mv query.validate.loaderstate query.validate.ld mv resolver.applyUpgrades.loaderstate resolver.applyUpgrades.ld mv resolver.checkPackageProblems.loaderstate resolver.checkPackageProblems.ld mv resolver.checkWildcardVersions.loaderstate resolver.checkWildcardVersions.ld mv resolver.findAndUpgradeImports.loaderstate resolver.findAndUpgradeImports.ld mv resolver.findMissingWildcards.loaderstate resolver.findMissingWildcards.ld mv resolver.loadPackages.loaderstate resolver.loadPackages.ld mv resolver.matchInModule.loaderstate resolver.matchInModule.ld mv resolver.performLocalQueries.loaderstate resolver.performLocalQueries.ld mv resolver.performPathQueries.loaderstate resolver.performPathQueries.ld mv resolver.performPatternAllQueries.loaderstate resolver.performPatternAllQueries.ld mv resolver.performToolQueries.loaderstate resolver.performToolQueries.ld mv resolver.performWildcardQueries.loaderstate resolver.performWildcardQueries.ld mv resolver.performWorkQueries.loaderstate resolver.performWorkQueries.ld mv resolver.queryModule.loaderstate resolver.queryModule.ld mv resolver.queryNone.loaderstate resolver.queryNone.ld mv resolver.queryPackages.loaderstate resolver.queryPackages.ld mv resolver.queryPath.loaderstate resolver.queryPath.ld mv resolver.queryPattern.loaderstate resolver.queryPattern.ld mv resolver.queryWildcard.loaderstate resolver.queryWildcard.ld mv resolver.resolveQueries.loaderstate resolver.resolveQueries.ld mv resolver.tryWildcard.loaderstate resolver.tryWildcard.ld mv resolver.updateBuildList.loaderstate resolver.updateBuildList.ld mv updateTools.loaderstate updateTools.ld ' cd ../run rf ' mv runRun.moduleLoaderState runRun.moduleLoader ' cd ../test rf ' mv runTest.moduleLoaderState runTest.moduleLoader mv addTestVet.loaderstate addTestVet.ld mv builderTest.loaderstate builderTest.ld ' cd ../tool rf ' mv runTool.moduleLoaderState runTool.moduleLoader mv buildAndRunBuiltinTool.loaderstate buildAndRunBuiltinTool.ld mv buildAndRunModtool.loaderstate buildAndRunModtool.ld mv buildAndRunTool.loaderstate buildAndRunTool.ld mv listTools.loaderstate listTools.ld mv loadModTool.loaderstate loadModTool.ld ' cd ../toolchain rf ' mv Select.moduleLoaderState Select.moduleLoader mv Switcher.loaderstate Switcher.ld mv SwitchOrFatal.loaderstate SwitchOrFatal.ld mv maybeSwitchForGoInstallVersion.loaderstate maybeSwitchForGoInstallVersion.ld mv modGoToolchain.loaderstate modGoToolchain.ld ' cd ../vet rf ' mv run.moduleLoaderState run.moduleLoader ' cd ../work rf ' mv runBuild.moduleLoaderState runBuild.moduleLoader mv runInstall.moduleLoaderState runInstall.moduleLoader mv BuildInit.loaderstate BuildInit.ld mv InstallPackages.loaderstate InstallPackages.ld mv installOutsideModule.loaderstate installOutsideModule.ld ' cd ../workcmd rf ' mv runEditwork.moduleLoaderState runEditwork.moduleLoader mv runInit.moduleLoaderState runInit.moduleLoader mv runSync.moduleLoaderState runSync.moduleLoader mv runUse.moduleLoaderState runUse.moduleLoader mv runVendor.moduleLoaderState runVendor.moduleLoader ' Change-Id: I903063b9f637a2f19a050b4cd660c870da772e54 Reviewed-on: https://go-review.googlesource.com/c/go/+/763620 Reviewed-by: Michael Matloob <matloob@golang.org> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Michael Matloob <matloob@google.com>
8 dayscmd/go/internal/modload: disambiguate package and module loadersIan Alexander
Change the short name of the packageLoader variables to `pld` to allow for the module loader to use `ld` consistently. This change is part of the effort to rename the modload.State type to modload.Loader in order to better reflect its purpose. Change-Id: I73b072613190bcca841bcca16e9af6e60ecd99f8 Reviewed-on: https://go-review.googlesource.com/c/go/+/763380 Reviewed-by: Michael Matloob <matloob@golang.org> Reviewed-by: Michael Matloob <matloob@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
8 dayscmd/internal/testdir: do not fail fast when running asmcheckPaul Murphy
Print each error as they happen, and continue running. This is helpful if multiple targets fail using -all_codegen. Change-Id: Ifcb87a834662fbd4766e562ecf3ca278dcdc1af2 Reviewed-on: https://go-review.googlesource.com/c/go/+/761465 Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Keith Randall <khr@google.com> Reviewed-by: Keith Randall <khr@golang.org> Auto-Submit: Keith Randall <khr@golang.org>