David Chase
9abe2e1903
[dev.simd] all: merge master ( 918644a) into dev.simd
...
Corrected expected strings in test/simd.go.
Formatted two files.
Conflicts:
- src/cmd/compile/internal/ssa/rewriteAMD64.go
Merge List:
+ 2026-03-23 918644a215 net/http/internal/http2: remove inaccessible write schedulers
+ 2026-03-23 9d5d6af2d5 net/http: make ResponseWriter.ReadFrom respect declared Content-Length
+ 2026-03-23 f26befb380 net: avoid wrapping io.EOF in UnixConn read methods
+ 2026-03-23 e1bc5cea82 net/http/internal/http2: modernize the package
+ 2026-03-23 224489f11c cmd/go: fix autocgo test fail when set CGO_ENABLED during make.bash
+ 2026-03-23 325eedb2a9 runtime/race: apply LLVM zero-initialization fix
+ 2026-03-23 07f0c2074c test/codegen: add codegen checks for float32/float64 conversions optimizations
+ 2026-03-22 cfb67d0871 cmd/link/internal/loong64: remove the handling of R_CONST and R_GOTOFF from the internal linker
+ 2026-03-20 c60392da8b Revert "runtime: disable test for 78081"
+ 2026-03-20 5f5f4ccdb3 Revert "runtime, cmd/compile: use preemptible memclr for large pointer-free clears"
+ 2026-03-20 16018b05ae Revert "runtime: fix memclrNoHeapPointersPreemptible"
+ 2026-03-20 2de90fd48f cmd/compile/internal/noder: don't shoot oneself (fix silly mistake)
+ 2026-03-20 bfa3dc4028 runtime: disable test for 78081
+ 2026-03-20 0a750df0b2 Revert "cmd/compile: don't call memclrNoHeapPointersPreemptible from nosplit functions"
+ 2026-03-20 f2dae4c19d all: update to x/tools@5d7afbc08a
+ 2026-03-20 c8df1410d5 cmd/compile: on arm64 pair a load with a load in a subsequent block
+ 2026-03-20 51abbb12c4 internal/pkgbits: add missing tests
+ 2026-03-20 79f3d38562 cmd/internal/obj/arm64: new arm64 assembling path for SVE
+ 2026-03-20 a45c8032bb cmd/go: include test deps in buildinfo
+ 2026-03-20 79a8ccab29 cmd/go/internal/help: reword packages and importpath docs
+ 2026-03-20 55de3efde3 cmd/compile: elide sign-extend after zero-extend for wasm
+ 2026-03-20 686b127fe8 doc: fix 2 links in godebug.md
+ 2026-03-20 f9bdf58fb1 doc: remove template use in godebug.md
+ 2026-03-20 89ba6eec5c cmd/compile: (mips64x) optimize float32(abs|sqrt64(float64(x)))
+ 2026-03-19 fdd38337f0 cmd/link: propagate Mach-O section alignment to symbol in loadmacho
+ 2026-03-19 0520d3f352 cmd/link: skip special symbols for label symbol generation
+ 2026-03-19 30bfe53dd7 cmd/compile: enable promoted field selectors as keys in struct literals
+ 2026-03-19 9ec1d8f335 cmd/compile: skip race detector test failure for unsupported VMA
+ 2026-03-19 d9a600a73b cmd/compile/internal/noder: encode promoted struct fields for composite literals in UIR
+ 2026-03-19 9f7e98d263 go/types, types2: allow promoted field names as keys in struct literals
+ 2026-03-19 86b5e678e8 cmd/go: reject an empty tool name
+ 2026-03-19 59bafc0b07 cmd/go: make all script tests parallel
+ 2026-03-18 7c42da1bc5 syscall: remove the 42 args limit in SyscallN
+ 2026-03-18 4216fa3d04 runtime: return the error code as a return value in asmstdcall
+ 2026-03-18 bf1c1b3bde runtime,runtime/cgo: do cgo thread initialization in Go on Windows
+ 2026-03-18 c1c0af1e16 cmd/compile: simplify the implementation of LoweredMoveLoop on loong64
+ 2026-03-18 4b7b1be731 cmd/internal/objabi: implement GCC-compatible response file parsing
+ 2026-03-18 b48b6fa2fa cmd/link/internal/loong64: add immediate range detection to the internal linker
+ 2026-03-18 e22437d192 cmd/link: work around race syso weak import on macOS
+ 2026-03-18 1e994e0a48 cmd/link: modify the register used in trampoline
+ 2026-03-18 9def4acb06 cmd/link: support loading R_LARCH_GOT64_PC_{LO12, HI20} relocs on loong64
+ 2026-03-18 6bdfdb5f51 runtime: implement part of library initialization in Go
+ 2026-03-18 8e137ff995 sync: modernize examples using newer ranged for loops
+ 2026-03-18 ca3c2a6790 time: fix typo in comment
+ 2026-03-18 d0bd295ec1 cmd/go: provide concise user message to use - go work use
+ 2026-03-18 8afbae3e51 cmd/compile: allow multiple induction variables in one block in prove
+ 2026-03-18 0a56bf8858 runtime: make asmcgocall more robust to missing G
+ 2026-03-18 a481ef071e net/url: allow commas in hostnames for mongodb urls
+ 2026-03-18 a61fd42897 cmd/go: make the package loader a part of the module loader
+ 2026-03-18 72327dd645 runtime: add a test for issue 78081
+ 2026-03-18 9eb830a807 cmd/compile: allow halt flag to run concurrently
+ 2026-03-17 99d4927f69 cmd/internal/obj/loong64: centralize the functions for getting instruction codes into a single file
+ 2026-03-17 a92edd97bf cmd/compile: simplify the implementation of LoweredZeroLoop on loong64
+ 2026-03-17 5978090f9d cmd/internal/obj/loong64: correcting spelling errors in the comments
+ 2026-03-17 adf9c27874 cmd/compile: don't call memclrNoHeapPointersPreemptible from nosplit functions
+ 2026-03-17 cd2fa3b48d runtime: fix memclrNoHeapPointersPreemptible
+ 2026-03-17 a6949e942c go/types, types2: handle unconstrained type parameters correctly in a few places
+ 2026-03-17 e0ebb4c646 cmd/compile: use 128-bit arm64 vector ops for Move expansion
+ 2026-03-17 ab1a2c8874 cmd/compile: don't treat string literal as static data in FIPS mode
+ 2026-03-17 f1f88a8027 crypto/rsa: improve Precompute documentation
+ 2026-03-17 ff7ecb4efc os/exec: document that Cmd.Wait must not be called concurrently
+ 2026-03-17 8e1ecee491 context: fix package doc description of WithDeadlineCause and WithTimeoutCause
+ 2026-03-17 65f76a20a3 cmd/compile: eliminate redundant sign-extensions for wasm
+ 2026-03-17 75fdbda517 cmd/go: update urls in documentation to go.dev
+ 2026-03-17 105b1e2757 cmd/go/internal/modload: delete unused files
+ 2026-03-17 34ff24cb4b doc/next: add release notes for enabling stdversion in tests
+ 2026-03-17 0888303b2f cmd/go/internal/verylongtest: check MustHaveGoBuild in TestGoBuildUmask
+ 2026-03-16 c697e0fc48 spec: fix prose in rule for keys of struct composite literals
+ 2026-03-16 f3966c1ada cmd/compile: (riscv64) optimize float32(abs|sqrt64(float64(x)))
+ 2026-03-16 e7add86f16 internal/syscall/windows: don't force image section checks in Deleteat
+ 2026-03-16 6ab37c1ca5 internal/poll: pin all objects needed during overlapped I/O
+ 2026-03-16 4135faca66 reflect: document corner cases of TypeAssert
+ 2026-03-16 dbb3793b59 slices: document that Delete, DeleteFunc, Replace, Insert modify the slice
+ 2026-03-16 5262546d82 cmd/go/internal/test: enable stdversion by default
+ 2026-03-16 a8a5b81473 cmd/go: ensure go.mod and go.sum are consistent after `go get -tool`
+ 2026-03-16 655aa335c9 cmd/compile/internal/noder: factor out common UIR version
+ 2026-03-16 48bbe7996d net/http/internal/http2: deflake TestServer_Rejects_Too_Many_Streams
+ 2026-03-13 6614616b75 cmd/link: use 13.0.0 OS version for macOS linking
+ 2026-03-13 1f9de17ca8 cmd/go: split mod_get_pseudo_hg test to allow parts to run in parallel
+ 2026-03-13 cba6709506 cmd/go: move go_unix_test tests to cmd/go/internal/verylongtest
+ 2026-03-13 76d10a82dd cmd/go: split reuse_hg test to allow parts to run in parallel
+ 2026-03-13 5b152b0ba7 cmd/go/internal/vcweb: hold hg server lock while serving
+ 2026-03-13 9ce4f3876e cmd/compile: keep blank nodes alive in b.loop
+ 2026-03-12 b3ee07636a net/http/internal/http2: drop benchmarks which use synctest
+ 2026-03-12 0dc89195f9 bytes,slices,strings: ContainsFunc: document short-circuit semantics
+ 2026-03-12 9e2189ef8e cmd/go: isolate some very long tests
+ 2026-03-12 75cfb36608 cmd/go: add VCS telemetry counter
+ 2026-03-12 080aa8e964 net/http: use net/http/internal/http2 rather than h2_bundle.go
+ 2026-03-12 81908597a8 net/http/internal/http2: skip TestTransportNewClientConnCloseOnWriteError
+ 2026-03-12 2cd24ace83 net/http/internal/http2: remove fake connection autowait
+ 2026-03-12 a8a0dc9ea2 net/http/internal/http2: make server write errors sticky
+ 2026-03-12 29ada7aa48 net/http/internal/http2: remove ServeConnOpts.UpgradeRequest
+ 2026-03-12 afef73a5aa net/http: move DetectContentType into net/http/internal
+ 2026-03-12 74649c1cc5 net/http/internal/http2: remove TestClientConnPing
+ 2026-03-12 62dfe99dab net/http/internal/http2: remove TestConfigureTransport
+ 2026-03-12 7f3415d80f net/http/internal/http2: remove TestTransportGroupsPendingDials
+ 2026-03-12 9d3210150b net/http/internal/http2: remove TestServerUpgradeRequestPrefaceFailure
+ 2026-03-12 d6d0f5e08d net/http/internal/http2: remove TestServerHandleCustomConn
+ 2026-03-12 dab0ba481c net/http/internal/http2: use newServerTester in TestIssue53
+ 2026-03-12 9908968095 net/http/internal/http2: remove TestServeConnNilOpts
+ 2026-03-12 b8cdabcf99 net/http/internal/http2: remove ExportSetH2GoawayTimeout
+ 2026-03-12 4498bf1a90 net/http/internal/http2: use net/http Transport and Server in tests
+ 2026-03-12 93893efc69 net/http/internal/http2: make tests pass
+ 2026-03-12 aa4370313d internal/gate: import from x/net/internal/gate
+ 2026-03-12 c5f43ab046 net/http/internal/http2: initial import
+ 2026-03-11 26d5e16075 runtime/cgo: clarify pinning requirement in Handle example
+ 2026-03-11 6b7763407c testing: recognize helper functions that use range-over-function
+ 2026-03-11 3fc4af70d0 net/http: document which headers Request.Write handles specially
+ 2026-03-11 c43088c7a6 net, net/netip: document the lack of security properties of IsPrivate
+ 2026-03-11 3d7681ebab cmd/link: fix macOS 13 build
+ 2026-03-11 a8f99ef1f6 go/printer: use architecture-independent math for alignment decisions
+ 2026-03-11 96d6d38872 net/http: add pluggable HTTP/3 support for closing idle connections
+ 2026-03-10 e30e65f7a8 syscall,runtime/cgo: use cgo_ldflag to link against -lsocket and -lxnet on Solaris
+ 2026-03-10 d3651c5888 runtime/poll: fix race condition in Window's SendFile
+ 2026-03-10 97d6430458 cmd/compile: fix arm direct tail call
+ 2026-03-10 45c6fb4b9b cmd/compile: unwrap OCONVIFACE in staticinit for OAS2
+ 2026-03-10 59b188cee2 cmd/internal/obj/arm: set spadj in arm32 tailcall
+ 2026-03-10 23fde5c48c cmd/link: add -macos and -macsdk flags to set LC_BUILD_VERSION
+ 2026-03-10 2433a3f2d6 net: actually re-check resolv.conf when no explicit nameservers detected
+ 2026-03-10 bd5dc3a2fb cmd/compile: add double-mask elimination rule for wasm
+ 2026-03-10 935ba2e486 bytes: remove unused indexBytePortable
+ 2026-03-10 e22dc6c866 context: modernize AfterFunc example using WaitGroup.Go
+ 2026-03-10 a95f60871f cmd/compile: fix mips64 CALLtailinter argument count
+ 2026-03-10 3694f33692 runtime: GODEBUG=tracebacklabels=1 for 1.27+
+ 2026-03-10 38ac6577cb cmd/compile: forward small Load through Move to avoid redundant copies
+ 2026-03-10 bcc369284d cmd/link: put itabs in the .go.type section
+ 2026-03-10 703cc8abec io/fs: document when ErrClosed should be returned
+ 2026-03-10 8da2be3cd0 cmd/compile: remove loop variable capture workarounds
+ 2026-03-10 c29bec8a3a os: allow EPERM during TestGetwdDeep
+ 2026-03-10 7337b4669b cmd/go/internal/modload: update WillBeEnabled to check for go.work
+ 2026-03-10 dfd2e8027c cmd/internal/obj/riscv: materialise 32 bit unsigned constants
+ 2026-03-10 7f7e4942f1 cmd/internal/obj/riscv: factor out constant materialisation code
+ 2026-03-10 0a0c9c88fd cmd/internal/obj/riscv: factor out constant materialisation identification
+ 2026-03-10 def4e491be cmd/compile: add identity and absorption rules for wasm
+ 2026-03-10 28b1d8886b cmd/compile: fix ICE when checking slice cap
+ 2026-03-10 b0057a4e0c test/fixedbugs: increase issue46234 test timeout
+ 2026-03-09 43f8fb27ae cmd/go/internal/modfetch/codehost: cache some vcs ops
+ 2026-03-09 710014bcc3 go/types, types2: implement simple generic trie
+ 2026-03-09 2a5890cd46 cmd/go/internal/cache: update trim timestamp before trimming
+ 2026-03-09 e2ce40125f internal/poll: move rsan to heap on windows
+ 2026-03-09 e84da0405b cmd/compile, go/*: allow generic methods starting with Go 1.27
+ 2026-03-09 d4ace6b007 go/types, types2: up-date testdata/manual template
+ 2026-03-09 f5e3332108 cmd/internal/test2json: generate and validate test artifacts
+ 2026-03-09 d82eb907f3 testing: annotate output text type
+ 2026-03-09 f5d830d57a cmd/go/internal/testdata: change list_std_vendor to use local modproxy
+ 2026-03-09 16cebc1165 cmd/go/testdata/script: update more tests to not use network
+ 2026-03-09 e715e208f2 cmd/go/testdata/script: rewrite mod_invalid_version to not use network
+ 2026-03-09 827564191b cmd/go/internal/modload: rename type `loader` to `packageLoader`
+ 2026-03-09 9e0b5684e1 net: correctly handle non-nil empty cmsg buffer on windows
+ 2026-03-08 b7d1c58875 cmd/go: disallow go env -w GOROOT=...
+ 2026-03-07 383000da24 cmd/internal/obj: fix indirect tail call code
+ 2026-03-06 b9545da71c testing: escapes framing markers
+ 2026-03-06 90b428ebf5 net: skip TestListenIPv6WildcardAddr on platforms w/o IPv4-mapped IPv6
+ 2026-03-06 ec3373e379 cmd/compile: arm64 add 128-bit vector load/store SSA ops
+ 2026-03-06 3a29ebeef9 cmd/compile: additional optimisation for CZEROEQZ/CZERONEZ on riscv64
+ 2026-03-06 426ea5cd22 test: run go fmt on prove.go
+ 2026-03-06 bbed50aaa3 cmd/link: sort .pdata by function start address
+ 2026-03-06 de5c138eef encoding/json: unwrap IO errors from SyntacticError in transformSyntacticError
+ 2026-03-06 8933fb98f3 cmd/link: allow -no family of flags for testing compiler flag
+ 2026-03-06 cb41169895 cmd/compile: replace boolean simplification rule
+ 2026-03-06 74e9214b53 cmd/compile: fold boolean x == x & x != x
+ 2026-03-06 ef160abf2d cmd/go: avoid repetitive "invalid version" error on go get
+ 2026-03-06 07e487bc5c cmd/go: exclude vendor directories in go work use -r
+ 2026-03-06 e36ae89c18 cmd/go/testdata/script: rewrite mod_download_issue51114 to use vcstest
+ 2026-03-06 21c9de8c1d cmd/go/internal/modfetch: quiet read-only filesystem stat cache warnings
+ 2026-03-06 b764d47e4d cmd/compile: add I64Sub constant folding rule for wasm
+ 2026-03-06 0359353574 net/url: add Values.Clone
+ 2026-03-06 6c083034f8 testing: fix construction of the testing artifacts path
+ 2026-03-06 73db2f85aa cmd/compile: remove left over constant checking
+ 2026-03-06 bf1b0973db cmd/compile/internal/typecheck: simplify tcSliceHeader
+ 2026-03-06 252a8adbc0 internal/runtime/maps/: devirtualize hashing for specialized maps
+ 2026-03-06 e7a09d1ffb cmd/compile: use tail calls for wrappers for embedded interfaces
+ 2026-03-06 50d988e4e0 runtime: when panicking, skip ahead to previous panic
+ 2026-03-06 bf84b002d6 crypto/x509: add more test cases for name constraints.
+ 2026-03-06 51a8f213cd cmd/compile: use the correct const when flagging indirect map elem types
+ 2026-03-05 cbab448de1 crypto/x509: fix name constraint checking panic
+ 2026-03-05 2ebb157295 crypto/x509: fix full email constraint matching
+ 2026-03-05 fb16297ae5 html/template: properly escape URLs in meta content attributes
+ 2026-03-05 36d8b15842 net/url: reject IPv6 literal not at start of host
+ 2026-03-05 4270a44ed7 net: skip TestListenIPv6WildcardAddr on DragonFly BSD and OpenBSD
+ 2026-03-05 0b5e00624f cmd/go/internal/vet: add missing newlines to log messages
+ 2026-03-05 94a89c61e4 image/jpeg: make decoder.receiveExtend branchless
+ 2026-03-05 1a8f9d8141 spec: permit keys denoting embedded fields in struct literals
+ 2026-03-04 460522ed1d net/http: restore accidentally removed package doc
+ 2026-03-04 b16360470c cmd/compile: fix ICE when indexing zero-sized arrays of non-SSAable types
+ 2026-03-04 50126a8e44 runtime, cmd/compile: use preemptible memclr for large pointer-free clears
+ 2026-03-04 7aeb2f7e28 cmd/go: update go help entries to focus on modules
+ 2026-03-04 44ec057a3e cmd/go: revert update default go directive in mod or work init
+ 2026-03-04 f4afab14d0 cmd/link: support Mach-O UNSIGNED relocations for dynamic imports on darwin
+ 2026-03-04 76ebf63307 syscall: make plan9 Errno implement the error interface
+ 2026-03-04 c918cbd556 runtime: fix value of ENOSYS on mips from 38 to 89
+ 2026-03-04 30d873462f image/jpeg: add support for non-standard chroma subsampling ratios
+ 2026-03-04 0b9bcbc58c net/http: add basic unexported pluggable HTTP/3 support
+ 2026-03-03 fdf3bee342 net: treat EPERM/EACCES in IPv6 probe as supported
+ 2026-03-03 0856d46fd1 doc/go_spec: add max and min to forbidden expression statements list
+ 2026-03-03 a7958c664f time: mention Reset in Ticker.Stop doc
+ 2026-03-03 1a0e1fb616 internal/bytealg: on android/arm64, don't read outside 16-byte regions
+ 2026-03-02 b5c2bd7e05 syscall: define no-op Errno type on plan9
+ 2026-03-02 033b11f257 cmd/compile: optimize sccp for faster convergence
+ 2026-03-02 aa80d7a7e6 cmd/compile, simd/archsimd: add VPSRL immeidate peepholes
+ 2026-03-02 ba057f7950 cmd/compile: add concurrency-ok property to some compiler debug flags
+ 2026-03-02 cc1241f353 runtime: fix printfloat, printcomplex buffer sizes
+ 2026-03-02 a5f474fc06 runtime: skip futex_time64 and timer_settime64 on 32-bit Android
+ 2026-03-02 094aacdb04 reflect: outlilne []runtimeSelect allocation in Select
+ 2026-03-02 a6a4a41e22 all: test: remove unneeded loop variables
+ 2026-03-01 5c595a811e cmd/compile: combine some generic AMD64 simplifications
+ 2026-03-01 f6be78b539 math: add benchmark for float32/float64 conversions
+ 2026-03-01 d51d4d75a6 cmd/compile: (wasm) optimize float32(round64(float64(x)))
+ 2026-03-01 425a88193c cmd/compile: (arm64) optimize float32(round64(float64(x)))
+ 2026-03-01 7336381cd1 cmd/compile: (amd64) optimize float32(round64(float64(x)))
+ 2026-03-01 831c489f9c cmd/compile: cleanup downward counting loop code
+ 2026-02-28 de0d77c6f8 cmd/internal/obj/loong64: change to get the opcodes of assembly instructions from a map
+ 2026-02-28 03d9d24404 runtime/cgo: build with C compiler option -std=gnu90
+ 2026-02-28 011e98af3b test: skip TestScanAllocIssue77573 with asan mode
+ 2026-02-28 ad168c5131 runtime/cgo: add abi_riscv64.h for callee-saved register macros
+ 2026-02-28 ff023a3341 test/codegen: add code generation test for subtle.ConstantTimeSelect
+ 2026-02-28 5cd4b35d73 test/codegen: tighten bit related codegen tests on riscv64
+ 2026-02-27 e0c8676edd cmd/compile: canonicalize [0,1] == 1 & [0,1] != 1 → != 0 & == 0
+ 2026-02-27 fea0300499 cmd/compile: test that time.Duration.String is inlineable
+ 2026-02-27 244b156e67 cmd/compile: fix internal compiler error: bad write barrier type
+ 2026-02-27 a48829de1e runtime: unified the calculate for max objects per span
+ 2026-02-27 93b78326c3 cmd/compile: use OpMove instead of memmove more on loong64
+ 2026-02-27 c4de16a714 cmd/compile/internal/test: add benchmark for string comparison operand order
+ 2026-02-27 83b4c5d233 runtime/cgo: avoid unused parameter warning
+ 2026-02-27 f5479628d3 runtime: on android/arm64, don't read outside 16-byte regions
+ 2026-02-27 5055a18156 cmd/go/internal/doc: support @version suffix on first argument
+ 2026-02-27 76222756d9 cmd/compile: gate instrumentEnterExit on NoRaceFunc check
+ 2026-02-27 f2633386e0 cmd/internal/obj: arm64 assembler support unshifted hi for large offsets
+ 2026-02-27 62a1da372a runtime: do signal stack clearing when parking Ms
+ 2026-02-27 6a71295466 cmd/link, cmd/internal: remove the R_JMPLOONG64 relocation of loong64
+ 2026-02-26 f71432d223 cmd/compile: fix bloop test
+ 2026-02-26 40a10063e8 runtime: fix scan size calculation for small arrays of only pointers
+ 2026-02-26 657ed934e8 os: avoid escape from Root via ReadDir or Readdir
+ 2026-02-26 753022f82f crypto/internal/boring: replace slice growth loop with slices.Grow
+ 2026-02-26 89d92fc211 cmd/compile: ternary rewrite of rewrite should skip, not panic
+ 2026-02-26 b4ef60b9cb regexp: add BenchmarkFindAllTenMatches
+ 2026-02-26 20d78eca0a cmd/go: fix ignored error check when sanitizing SwigCXXFiles
+ 2026-02-26 5c7d8a3e48 builtin: incorporate all feedback into doc string for new
+ 2026-02-25 0886e65b11 cmd/compile: treat all zero-sized values as SSA-able
+ 2026-02-25 b48b2002fe cmd/compile: handle zero-sized values more generally
+ 2026-02-25 0ac9d84e3d reflect: fix support for iter with named boolean in Seq/Seq2
+ 2026-02-25 ed0367718f Revert "cmd/compile: avoid panic in ternary rewrite on checked instructions"
+ 2026-02-25 8411ab9d3d Revert "test/simd: add test for issue 77582"
+ 2026-02-25 1aa534dbb8 cmd/compile: ensure StructMake/ArrayMake1 of direct interfaces are unwrapped
+ 2026-02-25 78da9242cd test/simd: add test for issue 77582
+ 2026-02-25 5b40e48a29 Revert "cmd/compile: add loclist for removed DCL nodes"
+ 2026-02-25 abf84a51fc cmd/go: use 'gcloud storage cp' instead of 'gsutil cp'
+ 2026-02-24 45138d477d internal/cpu: use IsProcessorFeaturePresent to calculate ARM64 on windows
+ 2026-02-24 a78df5aa0a cmd/compile: rewriteFixedLoad: ensure AuxInt is sign-extended
+ 2026-02-24 60dc96479a reflect: use &zeroVal[0] instead of nil for data field for zero-sized payloads
+ 2026-02-24 fa8595702e internal/runtime/sys: only use speculation barrier for DIT on Apple Silicon
+ 2026-02-24 e237976802 cmd/asm/internal/asm/testdata: add SB tests
+ 2026-02-24 874c3ceb3f cmd/compile: add loclist for removed DCL nodes
+ 2026-02-24 8d5e57474c builtin: update new function comment
+ 2026-02-24 4afaf67ab4 log/slog: use B.Loop to simplify the code
+ 2026-02-24 19c994cc0c runtime: simplify pprof labels in tracebacks
+ 2026-02-24 8438ace207 cmd/compile: avoid panic in ternary rewrite on checked instructions
+ 2026-02-24 c2fabf1a26 os/signal: completely ignore bogus signals
+ 2026-02-24 01b795bc4c log/syslog: document that this package no longer works after macOS 12.0
+ 2026-02-24 370513491a internal/profile: fix error message casing for function ID not found
+ 2026-02-24 0bd25dc875 internal/runtime/sys: improve DIT assembly
+ 2026-02-24 b7db3246a6 internal/cpu,cmd/internal/obj/arm64: add SB
+ 2026-02-23 bdd4c38ce3 runtime/cgo: fix setg_gcc call on aix/ppc64
+ 2026-02-23 5e6a6840ae cmd/internal/obj/loong64: remove getting 32-bits address optab entry
+ 2026-02-23 9b07a7668c cmd/internal/obj/loong64: merge MOVVF optab entries into ABSF
+ 2026-02-23 c5f1695f79 cmd/internal/obj/loong64: merge moving data operations into one case
+ 2026-02-23 73f72d8c99 cmd/internal/obj/loong64: merge MOVD optab entries into MOVF
+ 2026-02-23 003c0bbf16 cmd/internal/obj/loong64: merge MOVWU optab entries into MOVBU
+ 2026-02-23 e1e73b316c runtime: printquoted: fix decoderune call
+ 2026-02-23 ca94cf1247 cmd/compile/internal/ssa: add codegen for Zicond extension on riscv64
+ 2026-02-23 cdf8951060 runtime: printquoted: preserve bytes of invalid UTF-8 encodings
+ 2026-02-23 215a070a04 net/smtp: prevent test failures due to expired test certificate
+ 2026-02-23 54ebdf6151 cmd/compile: fix a typo in startRegs drop condition
+ 2026-02-23 04772f022a runtime: remove write barriers from traceRegionAlloc
+ 2026-02-23 fe08017303 crypto/rand: remove exported fields in the default Reader
+ 2026-02-23 4e693d1ec5 go/token: add File.String method
+ 2026-02-23 9697bd96bc cmd/internal/obj/loong64: rearrange optab entries
+ 2026-02-22 c373c59d68 cmd/internal/obj: support arm64 FMOVQ from/to global address
+ 2026-02-21 6435bf46c1 cmd/compile: pointer-shaped types are SSAable even if lots of 0-sized fields
+ 2026-02-21 439a82ad25 cmd/compile: add flag for emitting diagnostics unsorted
+ 2026-02-21 841fafcd58 runtime/secret: run crash tests under memory validating modes
+ 2026-02-20 34b9742c81 net: convert wildcard address to local on freebsd
+ 2026-02-20 0bf3f64c6b mime: make TypeByExtension follow Chrome+Firefox's precedence for webm->video and weba->audio
+ 2026-02-19 f3755d9eba internal/syscall/windows: use byte instead of bool for all BOOLEAN Windows data types
+ 2026-02-19 09c3cfbc20 net/url: add (*URL).Clone
Change-Id: I63e99b20938dde284cc0db22a31c3816ba8a6bfd
2026-03-24 17:48:16 +11:00
Nicholas S. Husin
918644a215
net/http/internal/http2: remove inaccessible write schedulers
...
RFC 7540 and random write schedulers are not accessible from std, and
are essentially dead code at this point.
Change-Id: Ib1e9e6e9ae7962b451bc36c0dad3c503f56dc1c0
Reviewed-on: https://go-review.googlesource.com/c/go/+/757380
Reviewed-by: Damien Neil <dneil@google.com >
Reviewed-by: Nicholas Husin <husin@google.com >
Auto-Submit: Nicholas Husin <nsh@golang.org >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2026-03-23 14:10:09 -07:00
Nicholas S. Husin
9d5d6af2d5
net/http: make ResponseWriter.ReadFrom respect declared Content-Length
...
Unlike ResponseWriter.Write, ResponseWriter.ReadFrom does not currently
respect declared Content-Length header. As a result, it is possible for
a server handler to inadvertently write more bytes for their response
body than has been declared via Content-Length. These excess bytes are
written to the wire, and could potentially be misinterpreted by a client
as a separate response.
That said, this is not a concern security-wise. This edge case can only
be exercised by someone who has a relatively complete control of a
server handler—by which point, worse things can be done with less
effort.
Regardless, this is still a bug. Therefore, make sure that
ResponseWriter.ReadFrom respects declared Content-Length too for
consistency.
Fixes #78179
Change-Id: I469b064e43e49e467b907d23fc1ee879066569f0
Reviewed-on: https://go-review.googlesource.com/c/go/+/755701
Reviewed-by: Nicholas Husin <husin@google.com >
Auto-Submit: Nicholas Husin <nsh@golang.org >
Reviewed-by: Damien Neil <dneil@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2026-03-23 14:10:05 -07:00
Basavaraj PB
f26befb380
net: avoid wrapping io.EOF in UnixConn read methods
...
The io.Reader contract requires that Read methods return io.EOF
directly instead of wrapping it in another error.
Currently UnixConn.ReadFromUnix, ReadFrom, and ReadMsgUnix wrap
io.EOF inside net.OpError, causing callers checking for io.EOF
to fail.
Fix by avoiding wrapping when err == io.EOF.
Fixes #78137
Change-Id: Ibb4e67cfb4c727c668ad79d1fb9e205f9b7e1903
Reviewed-on: https://go-review.googlesource.com/c/go/+/754960
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
Reviewed-by: Carlos Amedee <carlos@golang.org >
Reviewed-by: Nicholas Husin <nsh@golang.org >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Basavaraj P <basavarajbankolli76@gmail.com >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
Auto-Submit: Nicholas Husin <nsh@golang.org >
2026-03-23 13:47:18 -07:00
qiulaidongfeng
e1bc5cea82
net/http/internal/http2: modernize the package
...
This CL is mostly generated by running go fix. Manual edits have also been
selectively done to modernize the package where doing so is straightforward; for
example, using slices.Contains in lieu of strSliceContains.
Change-Id: Ie2942481672c56c370e2df0f172cf3e480a12bc5
Reviewed-on: https://go-review.googlesource.com/c/go/+/757220
Reviewed-by: Nicholas Husin <husin@google.com >
Reviewed-by: Nicholas Husin <nsh@golang.org >
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2026-03-23 12:27:43 -07:00
qiulaidongfeng
224489f11c
cmd/go: fix autocgo test fail when set CGO_ENABLED during make.bash
...
Details see CL 706095
Fixes #75340
Change-Id: Ic7276f2fb3abc5f02f224d82e1f26844888f0a1e
Reviewed-on: https://go-review.googlesource.com/c/go/+/757182
Reviewed-by: Cherry Mui <cherryyz@google.com >
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 >
2026-03-23 11:51:12 -07:00
Michael Pratt
325eedb2a9
runtime/race: apply LLVM zero-initialization fix
...
Upstream TSAN had bug that could result in use of uninitialized memory
on Go threads that don't have any TSAN events. For example, if the
thread only ever runs the GC.
This bug was fixed upstream in
cdfdb06c91 .
In https://go.dev/issue/78059 we have reports of actual Go crashes due
to this bug.
Update the prebuilt race sysos to incorporate this fix. The fix is
applied as a single patch on top of the existing LLVM revisions to
minimize risk of this CL, making it safe to backport. A later CL can
update to a newer version of LLVM.
Note that all of the patch files are identical. CL 756620 makes
racebuild add a unique patch file for each architecture in the event
that some arches need distinct patches.
linux-loong64 failed race.bash when building the new syso, though they
were just timeouts, perhaps from a slow builder.
linux-riscv64 is not updated because its builder is too slow
(https://go.dev/issue/78258 ).
linux-ppc64le is not updated because its builder is missing curl
(https://go.dev/issue/78210 ).
openbsd-amd64 is not updated because its builder is missing unzip
(https://go.dev/issue/78212 ).
netbsd-amd64 is not updated because it does not have a LUCI builder
(https://go.dev/issue/61121 ).
Fixes #78059 .
Cq-Include-Trybots: luci.golang.try:gotip-linux-amd64-longtest-race,gotip-darwin-arm64-race,gotip-darwin-amd64-race,gotip-freebsd-amd64-race,gotip-windows-amd64-race,gotip-linux-s390x-race,gotip-linux-arm64-race,gotip-linux-loong64
Change-Id: I5404cb88af9d86b56b385801f8a9ed106a6a6964
Reviewed-on: https://go-review.googlesource.com/c/go/+/757521
Reviewed-by: Carlos Amedee <carlos@golang.org >
Reviewed-by: Cherry Mui <cherryyz@google.com >
TryBot-Bypass: Michael Pratt <mpratt@google.com >
2026-03-23 09:30:12 -07:00
Julian Zhu
07f0c2074c
test/codegen: add codegen checks for float32/float64 conversions optimizations
...
Updates #75463
Change-Id: Iec51bdedd5a29bbb81ac553ad7e22403e1715ee3
Reviewed-on: https://go-review.googlesource.com/c/go/+/757300
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 >
Reviewed-by: Keith Randall <khr@google.com >
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
2026-03-23 07:33:12 -07:00
limeidan
cfb67d0871
cmd/link/internal/loong64: remove the handling of R_CONST and R_GOTOFF from the internal linker
...
These two relocations are already handled in general code and do not require architecture-specific processing.
Change-Id: Ibf29af1a8b45c0ce4c40061524f9f7dda4edfff3
Reviewed-on: https://go-review.googlesource.com/c/go/+/756280
Reviewed-by: Carlos Amedee <carlos@golang.org >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: abner chenc <chenguoqi@loongson.cn >
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
2026-03-22 18:26:39 -07:00
Keith Randall
c60392da8b
Revert "runtime: disable test for 78081"
...
This reverts commit bfa3dc4028 .
Reason for revert: re-enabling the test, after CL 757343 is in.
Change-Id: I78ebb000b95a14f39fc1f62a1013bc83849a0a37
Reviewed-on: https://go-review.googlesource.com/c/go/+/757226
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
Auto-Submit: Keith Randall <khr@golang.org >
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Keith Randall <khr@google.com >
2026-03-20 18:56:10 -07:00
Michael Pratt
5f5f4ccdb3
Revert "runtime, cmd/compile: use preemptible memclr for large pointer-free clears"
...
This reverts CL 750480.
Reason: Adding preemptible memclrNoHeapPointers exposes existing unsafe
use of notInHeapSlice, causing crashes. Revert the memclr stack until
the underlying issue is fixed.
We keep the test added in CL 755942, which is useful regardless.
For #78254 .
Change-Id: I8be3f9a20292b7f294e98e74e5a86c6a204406ae
Reviewed-on: https://go-review.googlesource.com/c/go/+/757343
Reviewed-by: Keith Randall <khr@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Keith Randall <khr@golang.org >
2026-03-20 18:35:35 -07:00
Michael Pratt
16018b05ae
Revert "runtime: fix memclrNoHeapPointersPreemptible"
...
This reverts CL 756122.
Reason: Adding preemptible memclrNoHeapPointers exposes existing unsafe
use of notInHeapSlice, causing crashes. Revert the memclr stack until
the underlying issue is fixed.
For #78254 .
Change-Id: I8a234d1a6dddf70d9aa5ecda1ac8bb25deb08248
Reviewed-on: https://go-review.googlesource.com/c/go/+/757342
Reviewed-by: Keith Randall <khr@golang.org >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Keith Randall <khr@google.com >
2026-03-20 18:35:15 -07:00
Robert Griesemer
2de90fd48f
cmd/compile/internal/noder: don't shoot oneself (fix silly mistake)
...
When reading multiple promoted fields in a struct literal from UIR,
don't overwrite the (top-level) struct literal type needed for the
next field.
Fixes #78262 .
For #9859 .
Change-Id: Ifac64537bebcb7dbb79a6173d0cd032cbf0b8ed8
Reviewed-on: https://go-review.googlesource.com/c/go/+/757225
Reviewed-by: Robert Griesemer <gri@google.com >
Auto-Submit: Robert Griesemer <gri@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Keith Randall <khr@google.com >
2026-03-20 17:58:12 -07:00
Keith Randall
bfa3dc4028
runtime: disable test for 78081
...
The stack we're trying to revert for this issue is tripping
on the test for it. The test fails halfway through the revert stack.
Disable it for now, we can re-enable once the whole revert stack is in.
Change-Id: I3bc2d2f069030d865f799a63ad0f267aa667db07
Reviewed-on: https://go-review.googlesource.com/c/go/+/757224
Reviewed-by: Dmitri Shuralyov <dmitshur@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 >
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
2026-03-20 17:29:41 -07:00
Michael Pratt
0a750df0b2
Revert "cmd/compile: don't call memclrNoHeapPointersPreemptible from nosplit functions"
...
This reverts CL 756123.
Reason: Adding preemptible memclrNoHeapPointers exposes existing unsafe
use of notInHeapSlice, causing crashes. Revert the memclr stack until
the underlying issue is fixed.
For #78254 .
Change-Id: Ic5e6eee8e87f219e06bec8610fcc85cd52d634b1
Reviewed-on: https://go-review.googlesource.com/c/go/+/757341
Reviewed-by: Keith Randall <khr@golang.org >
Reviewed-by: Keith Randall <khr@google.com >
Auto-Submit: Michael Pratt <mpratt@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2026-03-20 16:21:09 -07:00
Dmitri Shuralyov
f2dae4c19d
all: update to x/tools@5d7afbc08a
...
Pull in CL 757060 to get x/tools/cmd/bundle working again.
For #36905 .
For #9859 .
[git-generate]
cd src/cmd
go get golang.org/x/tools@v0.43 .1-0.20260319213245-5d7afbc08aec # CL 757060
go get golang.org/x/sys@v0.42 .1-0.20260320201212-a76ec62d6c53 # for #78259
go mod tidy
go mod vendor
cd ..
go get golang.org/x/sys@v0.42 .1-0.20260320201212-a76ec62d6c53 # for consistency with the version in cmd
go mod tidy
go mod vendor
Change-Id: I27ec579e91923c8ea89c7f3a120f2220676a68c9
Reviewed-on: https://go-review.googlesource.com/c/go/+/757520
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
Auto-Submit: Dmitri Shuralyov <dmitshur@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Robert Griesemer <gri@google.com >
2026-03-20 13:53:43 -07:00
Keith Randall
c8df1410d5
cmd/compile: on arm64 pair a load with a load in a subsequent block
...
Look into the following block(s) for a load that can be paired with
the load we're trying to pair up.
This particularly helps the generated equality functions. Instead of doing
MOVD x(R0), R2
MOVD x(R1), R3
CMP R2, R3
BNE noteq
MOVD x+8(R0), R2
MOVD x+8(R1), R3
CMP R2, R3
BNE noteq
we do
LDP x(R0), (R2, R4)
LDP x(R1), (R3, R5)
CMP R2, R3
BNE noteq
CMP R4, R5
BNE noteq
Removes 5296 bytes of code from cmd/go.
Change-Id: I6368686892ac944783c8b07ed7252126d1ef4031
Reviewed-on: https://go-review.googlesource.com/c/go/+/740741
Reviewed-by: David Chase <drchase@google.com >
Reviewed-by: Keith Randall <khr@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2026-03-20 13:51:47 -07:00
Robert Griesemer
51abbb12c4
internal/pkgbits: add missing tests
...
The encoding version was recently bumped to V3
but the tests were not updated. Do it now.
For #9859 .
Change-Id: Ia61d3e178215e804dcd2db186774883617e5e5a4
Reviewed-on: https://go-review.googlesource.com/c/go/+/757440
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Auto-Submit: Robert Griesemer <gri@google.com >
Reviewed-by: Robert Griesemer <gri@google.com >
Reviewed-by: Mark Freeman <markfreeman@google.com >
2026-03-20 10:43:51 -07:00
Junyang Shao
79f3d38562
cmd/internal/obj/arm64: new arm64 assembling path for SVE
...
This CL integrates a new assembling path specifically designed for SVE
and other modern ARM64 instructions, utilizing generated instruction
tables. It contains the foundational files and modifications to direct
the assembling pipeline to use this new data-driven path.
In a.out.go, it registers new constants for registers and operand types
used by SVE.
A new file inst.go is added, which defines the instruction table data
types and utility functions for the new path. The entry point from the
upstream pipeline is `tryEncode`.
`tryEncode` returns false upon an encoding failure, which allows the
upstream matching logic to handle multiple potential matches. The exact
match is not finalized until an instruction is actually encoded, as
detailed in the comments for `elemEncoders`.
This CL also introduces the core generated tables (`anames_gen.go`,
`encoding_gen.go`, `goops_gen.go`, and `inst_gen.go`) which handle a
wide variety of SVE instructions. A comprehensive end-to-end assembly
test file (`arm64sveenc.s`) is added, containing hundreds of test cases
for these SVE instructions to verify the new encoding path.
To facilitate these encodings, this CL implements handling for operand
types such as AC_ARNG, AC_PREG, AC_PREGZM, and AC_ZREG. Others are left
as TODOs.
The generated files in this CL are produced by the `instgen` tool in CL
755180.
Original author Eric Fang (eric.fang@arm.com , CL 424137)
Change-Id: I483f170c776fcd8edd8b8b04520f9d69ee0855dd
Reviewed-on: https://go-review.googlesource.com/c/go/+/742620
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: David Chase <drchase@google.com >
2026-03-20 10:02:17 -07:00
Stefan VanBuren
a45c8032bb
cmd/go: include test deps in buildinfo
...
Fixes #76926
Change-Id: I822dd6363dea1c4ad73df5958964c1bfe2c46d19
Reviewed-on: https://go-review.googlesource.com/c/go/+/756240
Reviewed-by: Michael Matloob <matloob@google.com >
Reviewed-by: Carlos Amedee <carlos@golang.org >
Reviewed-by: Michael Matloob <matloob@golang.org >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2026-03-20 09:31:43 -07:00
Sean Liao
79a8ccab29
cmd/go/internal/help: reword packages and importpath docs
...
This moves around some of the docs for packages and import paths
so similar concepts are grouped closer together.
It should read better if read top to bottom.
Follow up for CL 664235.
For #57655
Change-Id: I45190c70a0e8698c52fbc06252045f278ff3f1a5
Reviewed-on: https://go-review.googlesource.com/c/go/+/752261
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Michael Matloob <matloob@google.com >
Reviewed-by: Michael Matloob <matloob@golang.org >
2026-03-20 09:30:10 -07:00
George Adams
55de3efde3
cmd/compile: elide sign-extend after zero-extend for wasm
...
Add rules to eliminate sign-extension of values that have already
been zero-extended from fewer bits via an I64And mask:
(I64Extend32S x:(I64And _ (I64Const [c]))) && c >= 0 && int64(int32(c)) == c => x
(I64Extend16S x:(I64And _ (I64Const [c]))) && c >= 0 && int64(int16(c)) == c => x
(I64Extend8S x:(I64And _ (I64Const [c]))) && c >= 0 && int64(int8(c)) == c => x
When a value has been masked to fit within the non-negative range of
the sign-extension width, the upper bits are already zero and sign-
extending is a no-op. For example, (I64Extend32S (I64And x 0xff))
can be elided because 0xff fits in a signed int32, so bit 31 is
guaranteed to be zero and sign-extending from 32 bits is identity.
Cq-Include-Trybots: luci.golang.try:gotip-wasip1-wasm_wasmtime,gotip-wasip1-wasm_wazero
Change-Id: Ia54d67358756e47ca7635a6a8ca4beadb003820a
Reviewed-on: https://go-review.googlesource.com/c/go/+/756320
Reviewed-by: Keith Randall <khr@google.com >
Reviewed-by: Carlos Amedee <carlos@golang.org >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Keith Randall <khr@golang.org >
Auto-Submit: Keith Randall <khr@golang.org >
2026-03-20 08:51:08 -07:00
Dmitri Shuralyov
686b127fe8
doc: fix 2 links in godebug.md
...
For #76349 .
Change-Id: I27dd7658e6cbcf6afd1287a7ec5a39c576ceee67
Reviewed-on: https://go-review.googlesource.com/c/go/+/756580
Reviewed-by: Carlos Amedee <carlos@golang.org >
Reviewed-by: Mateusz Poliwczak <mpoliwczak34@gmail.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
Reviewed-by: David Finkel <david.finkel@gmail.com >
Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org >
2026-03-20 08:49:10 -07:00
Dmitri Shuralyov
f9bdf58fb1
doc: remove template use in godebug.md
...
This file used to be implicitly a template prior to CL 733500, but now
it's no longer a template. The only template use here can be trivially
expressed with pure Markdown syntax, so do that. (The alternative path
would be to set 'template: true' explicitly.)
Fixes #78211 .
Change-Id: I66970f0d081b4e80e8d330330ad17a5702364391
Reviewed-on: https://go-review.googlesource.com/c/go/+/756560
Reviewed-by: Carlos Amedee <carlos@golang.org >
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Sean Liao <sean@liao.dev >
2026-03-20 08:49:06 -07:00
Julian Zhu
89ba6eec5c
cmd/compile: (mips64x) optimize float32(abs|sqrt64(float64(x)))
...
Absorb unnecessary conversion between float32 and float64
if both src and dst are 32 bit.
Ref: CL 733621
Updates #75463
Change-Id: I439f92aa3d940fa4979e76845c0893e43bf584af
Reviewed-on: https://go-review.googlesource.com/c/go/+/739520
Reviewed-by: David Chase <drchase@google.com >
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Joel Sing <joel@sing.id.au >
2026-03-20 01:13:04 -07:00
penglei
fdd38337f0
cmd/link: propagate Mach-O section alignment to symbol in loadmacho
...
The Mach-O object file loader reads the section alignment from the
section header into ldMachoSect.align, but never calls SetAlign on
the symbol builder when converting sections to linker symbols. This
causes all Mach-O .syso sections to fall back to Funcalign (16 bytes
on ARM64) regardless of the alignment declared in the section header.
For .syso files containing C-compiled code with ADRP instructions on
ARM64, the lack of page alignment (4096 bytes) leads to incorrect
PC-relative address computation and runtime crashes.
The ELF loader already correctly propagates section alignment via
sb.SetAlign (ldelf.go:543). Apply the same treatment to the Mach-O
loader. Note that Mach-O stores alignment as log2 (e.g. 12 for 4096),
so we use 1 << sect.align.
Fixes #78192
Change-Id: Icae22be2dc726d56eaa35825b484d04ed18566f2
GitHub-Last-Rev: 85aa42b59a
GitHub-Pull-Request: golang/go#78194
Reviewed-on: https://go-review.googlesource.com/c/go/+/756000
Reviewed-by: Cherry Mui <cherryyz@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
2026-03-19 17:46:44 -07:00
Cherry Mui
0520d3f352
cmd/link: skip special symbols for label symbol generation
...
Some special symbols, e.g. funcdata symbols, don't have a section
set, because they are laid out as part of the top-level
go:func.* symbol. Similarly, other non-top-level symbols are part
of some top-level symbols. There is no relocation directly
targetting those symbols, so there is no need to generate label
symbols for them.
Fixes #77593 .
(No in-tree test as it needs a function with very large funcdata.)
Change-Id: I4aac4d0438bd64ac60b9baa3c2c66bb11f03c404
Reviewed-on: https://go-review.googlesource.com/c/go/+/756060
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
2026-03-19 17:44:50 -07:00
Robert Griesemer
30bfe53dd7
cmd/compile: enable promoted field selectors as keys in struct literals
...
Switch the generated UIR version from V2 to V3.
Adjust cmd/compile/internal/types to accept promoted field selectors
in composite literals.
Fixes #9859 .
Change-Id: Ie314e28567cfa6cf4c9e962a07b32dd05b06bf5e
Reviewed-on: https://go-review.googlesource.com/c/go/+/755740
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Auto-Submit: Robert Griesemer <gri@google.com >
Reviewed-by: Mark Freeman <markfreeman@google.com >
Reviewed-by: Keith Randall <khr@golang.org >
2026-03-19 17:16:38 -07:00
Guoqi Chen
9ec1d8f335
cmd/compile: skip race detector test failure for unsupported VMA
...
Fixes #78219
Updates #77597
Change-Id: I021df668bfc18081e71faaab2e4bad607873bf4d
Reviewed-on: https://go-review.googlesource.com/c/go/+/756780
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Meidan Li <limeidan@loongson.cn >
Reviewed-by: Robert Griesemer <gri@google.com >
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
2026-03-19 16:21:04 -07:00
Robert Griesemer
d9a600a73b
cmd/compile/internal/noder: encode promoted struct fields for composite literals in UIR
...
This change requires an encoding format change for struct literals.
Introduce a new UIR version (V3) and use the opportunity to encode
all composite literals more compactly: specifically, when we know
that (composite literal) keys are always present, avoid encoding a
bool value for each key.
Do not yet enable the new format.
For #9859 .
Change-Id: Ic6dc9adb1aa494e923eadaf578f8cfc61efd5ea4
Reviewed-on: https://go-review.googlesource.com/c/go/+/754664
Reviewed-by: Mark Freeman <markfreeman@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Robert Griesemer <gri@google.com >
2026-03-19 14:32:34 -07:00
Robert Griesemer
9f7e98d263
go/types, types2: allow promoted field names as keys in struct literals
...
For #9859 .
Change-Id: Ie4823e726ab43fe2ce1e96c279f63dad6c1f9873
Reviewed-on: https://go-review.googlesource.com/c/go/+/751702
Reviewed-by: Mark Freeman <markfreeman@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Robert Griesemer <gri@google.com >
2026-03-19 14:32:21 -07:00
Olivier Mengué
86b5e678e8
cmd/go: reject an empty tool name
...
An empty tool name ("") is incorrectly resolved by "go tool" as the directory
containing the tools binaries:
$ go tool ""
go tool : fork/exec /opt/homebrew/Cellar/go/1.24.5/libexec/pkg/tool/darwin_arm64: permission denied
To fix that case we also explicitely disallow an empty tool name in the
cmd/go/internal/base.ValidToolName func.
Tests: go test cmd/go -v '-run=Script/^tool_name$'
Fixes #74757 .
Change-Id: I6dd14096526c9113cef8e4d16a5aaa2120410b08
Reviewed-on: https://go-review.googlesource.com/c/go/+/690435
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
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 >
2026-03-19 14:10:45 -07:00
Michael Matloob
59bafc0b07
cmd/go: make all script tests parallel
...
Move the last non-parallel test to verylongtest, and then check that all
go command invocations in the tests occur in a parallel context. Note
that because TestBuildmodePie starts in a subtest, that the check for
invocations in a parallel context wouldn't catch that the parent test
didn't call t.Parallel.
For #78152
Change-Id: Ie053e56af8efaaea6de9ce6fccbd20f76a6a6964
Reviewed-on: https://go-review.googlesource.com/c/go/+/755140
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org >
Reviewed-by: Michael Matloob <matloob@google.com >
Auto-Submit: Michael Matloob <matloob@golang.org >
2026-03-19 10:52:02 -07:00
qmuntal
7c42da1bc5
syscall: remove the 42 args limit in SyscallN
...
SyscallN already supports more than 42 arguments on 386 and arm64.
Lift that limit on amd64 as well.
Change-Id: I3f5c6ebb959aa9b0d367903cac119fc27cb93064
Reviewed-on: https://go-review.googlesource.com/c/go/+/751862
Reviewed-by: Cherry Mui <cherryyz@google.com >
Reviewed-by: Alex Brainman <alex.brainman@gmail.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Carlos Amedee <carlos@golang.org >
2026-03-18 23:35:04 -07:00
qmuntal
4216fa3d04
runtime: return the error code as a return value in asmstdcall
...
This shaves off 8 bytes from the syscall_syscalln stack frame, which is
significant as that call path is almost over the nosplit limit.
Also, it follows the cgocall convention of returning the error code as
a return value, making it easier to reason about.
Cq-Include-Trybots: luci.golang.try:gotip-windows-amd64-longtest,gotip-windows-arm64,gotip-windows-386
Change-Id: I62acdb7c0d4cf9cb928bf3974d3300dd752f6c29
Reviewed-on: https://go-review.googlesource.com/c/go/+/751861
Reviewed-by: Cherry Mui <cherryyz@google.com >
Reviewed-by: Carlos Amedee <carlos@golang.org >
Reviewed-by: Alex Brainman <alex.brainman@gmail.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2026-03-18 23:34:43 -07:00
qmuntal
bf1c1b3bde
runtime,runtime/cgo: do cgo thread initialization in Go on Windows
...
Windows doesn't require any special handling for cgo threads. They
can be created in the same way as in non-cgo code.
In fact, the code to create threads in runtime and in runtime/cgo is
basically the same, except that the latter does some retries on failure.
Cq-Include-Trybots: luci.golang.try:gotip-windows-amd64-longtest,gotip-windows-amd64-race,gotip-windows-arm64
Change-Id: I49d4de93d4d3b07a4c89e2bfb6b7302c6dfb9877
Reviewed-on: https://go-review.googlesource.com/c/go/+/746300
Reviewed-by: Cherry Mui <cherryyz@google.com >
Reviewed-by: Michael Pratt <mpratt@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2026-03-18 22:58:11 -07:00
Guoqi Chen
c1c0af1e16
cmd/compile: simplify the implementation of LoweredMoveLoop on loong64
...
Removes 632 instructions from the go binary on loong64.
before after delta
asm 560709 560673 -36
cgo 478565 478545 -20
compile 2883165 2883089 -76
cover 528213 528189 -24
fix 848253 848249 -4
link 725957 725901 -56
preprofile 240245 240241 -4
vet 821569 821569 0
go 1633241 1632833 -408
gofmt 318281 318277 -4
Change-Id: I4eebdc5261507a9c9e3a053a417b0bc41a2727da
Reviewed-on: https://go-review.googlesource.com/c/go/+/755880
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Keith Randall <khr@google.com >
Reviewed-by: Carlos Amedee <carlos@golang.org >
Reviewed-by: Meidan Li <limeidan@loongson.cn >
2026-03-18 20:27:10 -07:00
Michael Podtserkovskii
4b7b1be731
cmd/internal/objabi: implement GCC-compatible response file parsing
...
Replace line-based response file parsing with GCC-compatible one
that supports:
- Whitespace-delimited arguments (multiple args per line)
- Single quotes for literal content (no escape processing)
- Double quotes with escape sequences: \\, \", \$, \`
- Backslash-newline line continuation (both LF and CRLF)
Update encodeArg in cmd/go/internal/work to produce GCC-compatible
output with proper escaping of special characters.
Add response file support to cmd/pack.
For #77177
Change-Id: Ib8dbe2761ebe139b3949dcaeb1de4bb5b15ddabb
Reviewed-on: https://go-review.googlesource.com/c/go/+/737500
Reviewed-by: Carlos Amedee <carlos@golang.org >
Reviewed-by: Mark Freeman <markfreeman@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Michael Matloob <matloob@golang.org >
Reviewed-by: Alex Brainman <alex.brainman@gmail.com >
2026-03-18 19:58:52 -07:00
limeidan
b48b6fa2fa
cmd/link/internal/loong64: add immediate range detection to the internal linker
...
Change-Id: If535d843318e5a16584eabd7df2d2fdd04896965
Reviewed-on: https://go-review.googlesource.com/c/go/+/754980
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Carlos Amedee <carlos@golang.org >
Reviewed-by: Mark Freeman <markfreeman@google.com >
Reviewed-by: abner chenc <chenguoqi@loongson.cn >
2026-03-18 19:36:15 -07:00
Cherry Mui
e22437d192
cmd/link: work around race syso weak import on macOS
...
With https://github.com/llvm/llvm-project/pull/182943 , the race
detector syso has a weak import of __dyld_get_dyld_header, which
is only defined on newer macOS (26.4+). For external linking with
a pre-Xcode 26.4 C toolchain, we need to tell the C linker to
permit that symbol not being defined. Pass a flag to do so.
Change-Id: I95a3cd2c7fd3ad50bc47985b3ecca0d4e8352162
Reviewed-on: https://go-review.googlesource.com/c/go/+/755261
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: David Chase <drchase@google.com >
Reviewed-by: Lasse Folger <lassefolger@google.com >
2026-03-18 18:49:43 -07:00
limeidan
1e994e0a48
cmd/link: modify the register used in trampoline
...
R30 is the callee's saved register; using it requires saving and then restoring.
Therefore, we replace it with a register saved by the caller.
R4~R19 are argument registers on loong64, and R20 is the only remaining usable
caller saved register. To use R20 in trampoline, we modified the registers used
by the LoweredMove/LoweredMoveLoop operations (originally using r20 and r21,
now changed to R23 and R24).
Change-Id: Ie7bba0caa30a764a45bcb47635c35c829036c5a2
Reviewed-on: https://go-review.googlesource.com/c/go/+/726140
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Carlos Amedee <carlos@golang.org >
Reviewed-by: abner chenc <chenguoqi@loongson.cn >
Reviewed-by: Cherry Mui <cherryyz@google.com >
2026-03-18 18:08:52 -07:00
Guoqi Chen
9def4acb06
cmd/link: support loading R_LARCH_GOT64_PC_{LO12, HI20} relocs on loong64
...
On loong64, such relocations are increasingly common when built using
an "extreme" code model. To ensure future interoperability with cgo,
the linker needs to be made aware of these relocations.
Ref: https://github.com/loongson/la-abi-specs/blob/release/laelf.adoc
Fixes #78047 .
Change-Id: Ibca205ab837279c69fb243a8e8519c952e11c99e
Reviewed-on: https://go-review.googlesource.com/c/go/+/753521
Reviewed-by: Cherry Mui <cherryyz@google.com >
Reviewed-by: Meidan Li <limeidan@loongson.cn >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Carlos Amedee <carlos@golang.org >
2026-03-18 18:08:22 -07:00
qmuntal
6bdfdb5f51
runtime: implement part of library initialization in Go
...
All architectures supporting c-shared and c-archive share the same
initialization code in assembly, and most of it can be implemented in
pure Go.
Cq-Include-Trybots: luci.golang.try:gotip-darwin-arm64-longtest,gotip-linux-ppc64le_power10,gotip-linux-riscv64,gotip-linux-loong64,gotip-linux-s390x
Change-Id: Iaa9fb7d6f9ca8785f1098461646d607ef6b00d47
Reviewed-on: https://go-review.googlesource.com/c/go/+/706417
Auto-Submit: Quim Muntal <quimmuntal@gmail.com >
Reviewed-by: Cherry Mui <cherryyz@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Carlos Amedee <carlos@golang.org >
2026-03-18 15:32:53 -07:00
Krushnal Patil
8e137ff995
sync: modernize examples using newer ranged for loops
...
The examples in sync package currently use the traditional
for loop pattern.
These examples are modernized using the ranged for loops.
Change-Id: Icc75928f832677f43cde5b7db6cb4590fde6457d
GitHub-Last-Rev: 4836c16042
GitHub-Pull-Request: golang/go#78109
Reviewed-on: https://go-review.googlesource.com/c/go/+/754688
Reviewed-by: Carlos Amedee <carlos@golang.org >
Reviewed-by: Mark Freeman <markfreeman@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Auto-Submit: Jorropo <jorropo.pgm@gmail.com >
Reviewed-by: Jorropo <jorropo.pgm@gmail.com >
2026-03-18 13:52:53 -07:00
Max Proske
ca3c2a6790
time: fix typo in comment
...
Correct "occasonal" to "occasional"
Change-Id: I54b8466a565ad8fd1ae9527c39b935b806062127
GitHub-Last-Rev: 996c59b924
GitHub-Pull-Request: golang/go#76426
Reviewed-on: https://go-review.googlesource.com/c/go/+/723520
Reviewed-by: Mark Freeman <markfreeman@google.com >
Auto-Submit: Sean Liao <sean@liao.dev >
Reviewed-by: Carlos Amedee <carlos@golang.org >
Reviewed-by: Sean Liao <sean@liao.dev >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Jorropo <jorropo.pgm@gmail.com >
2026-03-18 13:52:36 -07:00
Raghvender
d0bd295ec1
cmd/go: provide concise user message to use - go work use
...
Fixes #64007
Change-Id: Ia1de6b33b2a531545984351e4453aa5d97b16953
Reviewed-on: https://go-review.googlesource.com/c/go/+/589815
Reviewed-by: Michael Matloob <matloob@golang.org >
Auto-Submit: Michael Matloob <matloob@google.com >
Reviewed-by: Carlos Amedee <carlos@golang.org >
Reviewed-by: Michael Matloob <matloob@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2026-03-18 13:47:43 -07:00
Youlin Feng
8afbae3e51
cmd/compile: allow multiple induction variables in one block in prove
...
In this CL, the restriction that each block can only have one induction
variable has been removed. This reduces missed optimizations.
Fixes #76269
Change-Id: I14043182a40cc7887c5b6d9c1a5df8ea3a1bfedc
Reviewed-on: https://go-review.googlesource.com/c/go/+/719881
Reviewed-by: Keith Randall <khr@golang.org >
Auto-Submit: Keith Randall <khr@golang.org >
Reviewed-by: Carlos Amedee <carlos@golang.org >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Keith Randall <khr@google.com >
2026-03-18 13:35:03 -07:00
qmuntal
0a56bf8858
runtime: make asmcgocall more robust to missing G
...
Being able to call asmcgocall without a G is useful for code shared
between different stages of the runtime initialization and thread
creation.
Cq-Include-Trybots: luci.golang.try:gotip-darwin-arm64_15,gotip-linux-mips64le,gotip-linux-ppc64le_power10,gotip-linux-riscv64,gotip-openbsd-ppc64,gotip-openbsd-amd64
Change-Id: Ic427764de197e648e8b9987c98c3b7521512cc5c
Reviewed-on: https://go-review.googlesource.com/c/go/+/750541
Reviewed-by: Carlos Amedee <carlos@golang.org >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Cherry Mui <cherryyz@google.com >
2026-03-18 13:33:58 -07:00
yueyoum
a481ef071e
net/url: allow commas in hostnames for mongodb urls
...
A valid MongoDB URL can contain commas
to include multiple host:port pairs.
The current parseHost function splits the port
starting from the first colon (:),
but for MongoDB URLs that contain multiple host:port pairs,
it needs to split from the last colon (:).
Fixes #78077
Change-Id: I9a11f9295d0bc940626d3c6e9db2704237019b51
GitHub-Last-Rev: 5ca2276324
GitHub-Pull-Request: golang/go#77933
Reviewed-on: https://go-review.googlesource.com/c/go/+/751360
Reviewed-by: Carlos Amedee <carlos@golang.org >
Reviewed-by: Sean Liao <sean@liao.dev >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Auto-Submit: Sean Liao <sean@liao.dev >
Reviewed-by: Damien Neil <dneil@google.com >
2026-03-18 13:26:10 -07:00
Michael Matloob
a61fd42897
cmd/go: make the package loader a part of the module loader
...
This is a part of the project to remove global state in the module
loader. Before this change, the packageLoader was stored in a global
field "loaded" which meant that even though the module loader is no
longer global, part of the module loader still depended on global state.
This change will make progress to the point where we can potentially
have multiple module loaders in the same go/command execution.
Change-Id: If4963a8a9d0e04960cf5424e496114276a6a6964
Reviewed-on: https://go-review.googlesource.com/c/go/+/753220
Reviewed-by: Ian Alexander <jitsu@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Michael Matloob <matloob@google.com >
2026-03-18 09:35:22 -07:00