From: Jay Conrod Date: Wed, 8 Sep 2021 19:46:16 +0000 (-0700) Subject: [dev.fuzz] all: merge master (65f0d24) into dev.fuzz X-Git-Tag: go1.18beta1~1282^2~16 X-Git-Url: http://www.git.cypherpunks.ru/?a=commitdiff_plain;h=5abfd2379b2e7319d3f08f496c12acdb50e1065a;p=gostls13.git [dev.fuzz] all: merge master (65f0d24) into dev.fuzz Conflicts: - api/next.txt - src/cmd/go/alldocs.go - src/cmd/go/internal/test/test.go Merge List: + 2021-09-08 65f0d24f73 cmd/go: print offending -mod value in workspace mode + 2021-09-08 37c9552e06 cmd/go: improve the creation and editing of go.work files + 2021-09-08 c8d4fe2adc go/types: temporarily pin the Checker to Interface during checking + 2021-09-08 d419f9c612 go/types: spell out 'Type' in type parameter APIs + 2021-09-08 12eb7331b9 go/ast: rename TParams fields to TypeParams + 2021-09-08 38c2e08cbd go/types: move NewTypeParam off of Checker + 2021-09-08 cb9ccd494b go/types: move typeHash to environment.go + 2021-09-08 a1a6540bf1 go/types: implement deduplication of instances using the Environment + 2021-09-08 409434d623 cmd/go/internal/modload: scan dependencies of root paths when raising version limits in editRequirements + 2021-09-08 054710ce46 cmd/compile/internal/types2: reduce number of delayed functions (optimization) + 2021-09-08 73a062c3e7 cmd/compile/internal/types2: handle recursive type parameter constraints + 2021-09-08 9581d891ab cmd/pprof: update vendored github.com/google/pprof + 2021-09-08 8214257347 test/codegen: fix package name for test case + 2021-09-08 1da64686f8 test/codegen: fix compilation of bitfield tests + 2021-09-08 fdc2072420 test/codegen: remove broken riscv64 test + 2021-09-08 64bdad2011 all: update vendored golang.org/x/tools + 2021-09-08 9295723079 cmd/link: rework .TOC. handling for ppc64le + 2021-09-08 50c69cc3a9 cmd/link/internal/riscv64,cmd/internal/obj/riscv: make error messages consistent + 2021-09-08 c50d811c7a cmd/interna/obj/riscv: use obj.REG_NONE rather than 0 + 2021-09-08 f030043e37 cmd/internal/obj/riscv: simplify machine code output + 2021-09-08 da790cccc5 cmd/internal/obj/riscv: absorb rewriteMOV into instruction generation + 2021-09-08 f5bdbf311c cmd/internal/obj/riscv: simplify rewriteMOV + 2021-09-08 bab79dd362 reflect: add back signaling NaN test + 2021-09-08 963218cc9c reflect: correct typoo in comment + 2021-09-07 3fff213ac2 cmd/compile: add CONVIFACE nodes needed in generic code due to assignments + 2021-09-07 b606739be6 reflect: add test for passing float32 signaling NaNs + 2021-09-07 b5e33a50fe reflect: rename MapIter method receiver variable from it to iter + 2021-09-07 07f623063d reflect: add MapIter.Reset + 2021-09-07 a9a01a3fbd cmd/compile: remove now-unneeded SetHasTParam() for cached ptr element + 2021-09-07 dcf3545774 encoding/gob: optimize decoding of slice + 2021-09-07 80783558b0 cmd/compile: make sure imported instantiated types have their methods created + 2021-09-07 23f4f0db68 cmd/compile: add prefetch intrinsic support + 2021-09-07 d92101f452 cmd/compile: resolve TODO in inl.go + 2021-09-07 903958d2f5 encoding/gob: marshal maps using reflect.Value.MapRange + 2021-09-07 6640171914 cmd/compile: fix type substituter to copy Funarg value for structs + 2021-09-07 e581ec07ee cmd/compile: fix lazy loading in reader2 + 2021-09-07 81188661f1 go/types: do not format TParams when hashing + 2021-09-07 2a4845257f cmd/compile: fix deadlock in (*Named).load + 2021-09-07 bca8c6ffa2 cmd/link: resolve magic value in gdbscript section generation + 2021-09-07 21de6bc463 cmd/compile: simplify less with non-negative number and constant 0 or 1 + 2021-09-07 6226020c2f cmd/compile: make sure that the names created for instantiated type are the same + 2021-09-06 a1938435d6 syscall: use dup3 in forkAndExecInChild1 on all Linux platforms + 2021-09-06 20a71c9a1d cmd/internal/sys: fix placement of loong64 definition + 2021-09-06 ecfff58fb8 cmd/compile: fix delay transformation in *subster.node() + 2021-09-06 c7f09eeb13 cmd/internal/sys: declare loong64 arch + 2021-09-06 7b69ddc171 cmd/compile: merge sign extension and shift into SBFIZ + 2021-09-06 43b05173a2 cmd/compile: merge zero/sign extensions with UBFX/SBFX on arm64 + 2021-09-05 7619a4528d reflect: improve panic when MapIter has no associated map Value + 2021-09-05 1b2d794ca3 reflect: allocate hiter as part of MapIter + 2021-09-04 9133245be7 cmd/compile/internal/types2: detect constraint type inference cycles + 2021-09-04 28dae3defb cmd/internal/obj/riscv: improve code generation for loading of constants + 2021-09-04 37e9c1d6fe cmd/internal/obj/riscv: avoid obj.Prog rewriting for address to register loads + 2021-09-04 2d90df91a8 cmd/internal/obj/riscv: avoid obj.Prog rewriting for immediate splitting + 2021-09-04 5c224ec921 database/sql: improve the documentation of Conn.Raw + 2021-09-04 ba66d62b68 cmd/internal/obj/riscv: avoid obj.Prog rewriting for memory stores + 2021-09-04 5ec298d7b0 cmd/internal/obj/riscv: avoid obj.Prog rewriting for memory loads + 2021-09-04 0b66310924 cmd/internal/obj/riscv: avoid obj.Prog rewriting for store instructions + 2021-09-04 8a01010c26 cmd/internal/obj/riscv: avoid obj.Prog rewriting for load instructions + 2021-09-04 9cb5716f00 cmd/internal/obj/riscv: avoid obj.Prog rewriting for constant loads + 2021-09-03 4957976b1a cmd/link: make npkgsyms meaningful + 2021-09-03 d9244f8b64 Revert "go/ast: clarify when Ident.Obj is nil" + 2021-09-03 04d8d24960 misc/wasm: enable ECMAScript strict mode + 2021-09-03 52aef05498 go/ast: clarify when Ident.Obj is nil + 2021-09-03 ab7c904bf2 cmd/internal/obj/riscv: factor out instructions for MOV pseudo-instructions + 2021-09-03 17910ed4ff refect: rename Ptr Kind to Pointer (but keep Ptr) + 2021-09-03 9f69a44308 image/draw: add RGBA64Image fast path + 2021-09-02 065f380815 debug/dwarf: check for DWARFv4 AttrDataBitOffset value + 2021-09-02 a8aa6cfa6d cmd/compile: correct a comment in uint64Tofloat + 2021-09-02 58244eee01 test: only test -G=3 by default + 2021-09-02 9633195ae1 src: do not emit warning when GOROOT_BOOTSTRAP is unset + 2021-09-02 7609b50701 go/types: systematic detection of missing instantiation + 2021-09-02 acc2957bc9 net/http: fix hang in probing for a zero-length request body + 2021-09-02 2a463a22ce net/http: close request body after recovering from a handler panic + 2021-09-02 ead3fe0dba all: update vendored dependencies for Go 1.18 + 2021-09-02 08588e6036 go/internal/gcimporter: always call SetTParams, even if empty + 2021-09-02 d01388b04f all: update vendored golang.org/x/crypto + 2021-09-02 782aa42255 cmd/link: mark stacks as non-executable on freebsd + 2021-09-02 d8b156773c all: update vendored golang.org/x/sys + 2021-09-02 014a9720f9 cmd/link: avoid crash on undefined func sym with external linking + 2021-09-02 37d4532867 cmd/internal/obj/riscv: simplify addition with constant + 2021-09-02 4fb79569d2 go/internal/gcimporter: add import tests for type parameters + 2021-09-02 b8420baf46 go/internal/gcimporter: add support for importing parameterized types + 2021-09-02 4591f49938 runtime: do not alloc never used tail bytes in fixalloc + 2021-09-02 a35c5c98c0 runtime: constify a test variable + 2021-09-02 90ed541149 runtime: ensure the fixalloc object size is valid + 2021-09-02 69107e73ce runtime: change 0 to pollNoError in netpollblock + 2021-09-02 08e2519ded cmd/compile: workaround inlining of closures with range statements + 2021-09-02 6705191e02 syscall: drop fallback to accept in Accept on Linux + 2021-09-02 17e9d148d3 syscall: drop fallback to utimes in UtimesNano on Linux + 2021-09-02 d13d62c49a os, syscall: remove fallback to pipe syscall on Linux + 2021-09-02 840b4292c9 src: emit warning when make.bash run with invalid GOROOT_BOOTSTRAP + 2021-09-02 1ae7ddc235 test: always run test in unified IR mode regardless of explicit -G flag + 2021-09-02 3db4888a05 cmd/compile: use types2.Unsafe to represent package unsafe in gcimports + 2021-09-02 9afbf82667 cmd/compile: allow objStub from unsafe package + 2021-09-02 1bd35fab05 runtime: use vDSO clock_gettime on linux/riscv64 + 2021-09-02 df4c625d88 cmd/compile: disable type list syntax for the compiler + 2021-09-01 2872496ba5 cmd/compile/internal/types2: systematic detection of missing instantiation + 2021-09-01 0bfd6fcea6 all: update golang.org/x/net to pull in CL 346890 + 2021-09-01 88859f3cd8 cmd/compile: optimize unified IR handling of imported functions + 2021-09-01 50f38d0405 cmd/compile: emit unified IR wrappers after inlining + 2021-09-01 5e0f8edbdc cmd/compile: remove useless fcount + 2021-09-01 ea51e223c2 cmd/{asm,compile}: add fused multiply-add support on riscv64 + 2021-09-01 711e1c8224 cmd/compile: fix irgen mis-handling invalid function declaration + 2021-09-01 592ee433f5 spec: adjust example for consistency + 2021-09-01 6c5f028242 cmd/compile/internal/pkginit: separate "init" and "inittask" logic + 2021-09-01 8f397bc118 cmd/internal/obj/ppc64: improve long conditional branch fixup + 2021-09-01 5670ff4ae5 cmd/compile: fix conversions from TypeParam to interface + 2021-09-01 717f337d1d cmd/asm: adjust riscv64 test data to avoid churn + 2021-09-01 5a687eeaf1 cmd/asm,cmd/internal/obj/riscv: add more error tests for riscv64 assembly + 2021-09-01 faf9c7d8fe cmd/compile: assign results of transformAssign back to source location + 2021-09-01 2dd7b770de cmd/compile: fix missing case for shape double-check function + 2021-09-01 62ba72b353 cmd/compile: fix method expression lookup during import + 2021-09-01 f4e24599dd go/types: disallow aliases for generic types + 2021-09-01 36ac2214fa go/types: remove superfluous ordinaryType calls + 2021-09-01 1a9807906d go/types: more systematic error handling in typeWriter + 2021-09-01 5cd1b847dc go/types: eliminate typeHashing global variable + 2021-09-01 0df6df17e1 go/types: generalize instanceHash to accept any type, rename to typeHash + 2021-08-31 3c8c9e1e44 go/types: don't print instance markers for type hashes + 2021-08-31 2d98a4b4bc go/types: use a typeWriter to write types (cleanup) + 2021-08-31 b2f09cd717 go/types: do not declare new methods on instantiated types + 2021-08-31 5e9ba0b1bd go/types: implement TypeList.String (debugging support) + 2021-08-31 580987cd58 go/types: remove need for the instance struct + 2021-08-31 d15a75e070 go/types: address some TODOs (cleanup) + 2021-08-31 1f83a8c16c cmd/compile: use the zero value for results of impossible indexing + 2021-08-31 bb0b511738 cmd/compile: use right line number for conversion expression + 2021-08-31 7637345b6e go/internal/typeparams: remove typeparams.{Get,Set} (cleanup) + 2021-08-31 78d0f8c870 go/types: fix type set printing and add a test + 2021-08-31 ae2b2dc01a go/types: rename IsMethodSet to IsConstraint (cleanup) + 2021-08-31 b93581e47d go/types: add error reporting for 1.18 syntax if GoVersion is below 1.18 + 2021-08-31 aed59d172a go/types: allow composite literals of type parameter type + 2021-08-31 891470fbf7 cmd/compile: fix handling of Defn field during stenciling + 2021-08-31 46121306d3 cmd/compile: remove folding of 32 bit pointer offsets on amd64 + 2021-08-31 144e0b1f6e cmd/compile: add MOVOstoreconst with offset folding on amd64 + 2021-08-31 f27d6a23b0 cmd/compile: builtins may be in the unsafe package + 2021-08-31 68152359fd cmd/compile/internal/types2: disallow aliases for generic types + 2021-08-31 605d1aaea2 go/types, types2: union terms must be instantiated + 2021-08-31 ded10d75a9 cmd/compile/internal/types2: remove superfluous ordinaryType calls + 2021-08-31 3920d6f208 runtime: eliminate the redundant for loop in runqget() + 2021-08-31 f118d145a5 cmd/compile: make unified IR more selective about method wrappers + 2021-08-31 d384ebde60 net: enable multicast listener tests on solaris/illumos + 2021-08-30 7622e41c84 go/types, types2: add a test for invalid import of "init" + 2021-08-30 3342aa5f51 cmd/compile/internal/types2: more systematic error handling in typeWriter + 2021-08-30 b06cfe9b25 cmd/compile/internal/types2: eliminate typeHashing global variable + 2021-08-30 437362ccec cmd/compile/internal/types2: generalize instanceHash to accept any type, rename to typeHash + 2021-08-30 86fa510d24 go/types, types2: types in method expressions must be instantiated + 2021-08-30 8f4c020660 cmd/compile: fix bug with Inferred targs + 2021-08-30 8250141c9a cmd/compile/internal/types2: don't print instance markers for type hashes + 2021-08-30 5f0d821add cmd/compile/internal/types2: use a typeWriter to write types (cleanup) + 2021-08-30 61120c634c cmd/go/internal/modload: use "pruned" instead of "lazy" to describe pruned module graphs + 2021-08-30 af9009a989 cmd/go/internal/modload: remove go117LazyTODO + 2021-08-30 9da7ccab58 cmd/go/internal/modload: remove go117EnableLazyLoading + 2021-08-30 bdc1bef8a0 cmd/go: ensure 'go get -u' can upgrade pruned (1.17+) modules + 2021-08-30 b602daea1b cmd/compile: fix error when revcType is ptr in selectorExpr + 2021-08-30 7b38dd8e25 runtime: remove unnecesarry newline on freeStackSpans + 2021-08-30 56c3856d52 cmd/compile/internal/types: unexport Type.widthCalculated + 2021-08-30 21d0b306af cmd/compile/internal/types: remove unused Tie method + 2021-08-30 a29d9aad7a test/typeparam/sliceimp.dir: fix typo in a.go + 2021-08-29 f29abccd8a test: add test cases for issue47892. + 2021-08-28 f4cd001b57 os/user: simplify skipping listGroups test + 2021-08-28 6df3aac4ae cmd/compile: fix offset-generator for storeOneLoad + 2021-08-28 5afa555428 cmd/compile: fix wrong check for b.Controls in isBlockMultiValueExit + 2021-08-28 d7a43e8912 cmd/compile: support type C comparable + 2021-08-28 044550ab0e runtime: add test case for checkptr alignment with nested expression + 2021-08-28 010817714e cmd/compile: ignore SliceExpr.CheckPtrCall for mknode + 2021-08-28 f371b30f32 unicode/utf8: add AppendRune + 2021-08-28 ef4cb2f776 cmd/compile/internal/types: change NewNamed to use TypeObject + 2021-08-28 5fb177163b go/types, types2: types in type switch cases must be instantiated + 2021-08-28 c81fa001a7 cmd/compile/internal/types: simplify and optimize PtrDataSize + 2021-08-27 a9377183d0 cmd/compile/internal/types: unexport New and NewBasic + 2021-08-27 82efc05403 cmd/compile: use Type.OrigSym getter/setters [generated] + 2021-08-27 68ecdc2c70 cmd/compile/internal/types: add Type.OrigSym getter/setters + 2021-08-27 72c003ef82 cmd/compile: unexport Type.Width and Type.Align [generated] + 2021-08-27 94f2a03951 cmd: update requirement on golang.org/x/mod + 2021-08-27 6a35e07512 cmd/compile: fix stenciling of conversions between interfaces + 2021-08-27 4f0dedca71 cmd/compile: fix parameterized interfaces + 2021-08-27 39eb1cc3f4 crypto/x509: drop compatibility hack for expired COMODO intermediates + 2021-08-27 acdea4f9f7 all: REVERSE MERGE dev.cmdgo (220bc44) into master + 2021-08-27 220bc44a4c [dev.cmdgo] all: merge master (67f7e16) into dev.cmdgo + 2021-08-27 67f7e16bcc encoding/gob: optimize decoding of []byte + 2021-08-27 2c60a99f72 cmd/compile/internal/syntax: make valid type parameter list in presence of errors + 2021-08-27 d350a66532 cmd/compile: eagerly CalcStructSize for synthetic ABI types + 2021-08-27 d7e2e2ec2b cmd/compile: delay fillinMethods to deal with mutually-recursive types + 2021-08-27 c927599783 cmd/compile: eliminate repetitive code + 2021-08-27 62f88b6dc8 cmd/compile: add types.RecalcSize + 2021-08-27 e7eee5e265 cmd/compile: remove ssagen/pgen_test.go + 2021-08-27 f153b6739b cmd/compile: use typecheck.InitUniverse in unit tests + 2021-08-26 967a8017f7 cmd/compile: move types init code into package types + 2021-08-26 af80af22b5 cmd/compile/internal/types2: do not declare new methods on instantiated types + 2021-08-26 03db2c2413 cmd/compile/internal/types2: implement TypeList.String (debugging support) + 2021-08-26 c9e05fdcf7 cmd/compile: fix reference to generic type needed by crawler + 2021-08-26 eb6a07fcf9 cmd/compile: unexport Type.Vargen + 2021-08-26 3836983779 cmd/compile/internal/types: unexport Type.Extra + 2021-08-26 1f8d4562de cmd/compile: change typecheck.iscmp into ir.Op.IsCmp + 2021-08-26 de83ef67ac [dev.cmdgo] all: merge master (5e6a7e9) into dev.cmdgo + 2021-08-26 5e6a7e9b86 embed: remove reference to global variables in docs + 2021-08-26 166b691b65 cmd/compile/internal/types2: remove need for instance (struct) + 2021-08-26 d6bdae33e9 cmd/compile/internal/types2: address some TODOs (cleanup) + 2021-08-26 770df2e18d crypto/tls: fix typo in PreferServerCipherSuites comment + 2021-08-26 a6ff433d6a cmd/go: pass -gcflags after other flags generated by the go command + 2021-08-25 4f2620285d cmd/compile/internal/types2: fix type set printing and add test + 2021-08-25 0ac64f6d70 cmd/compile/internal/types2: rename IsMethodSet to IsConstraint (cleanup) + 2021-08-25 4068fb6c21 cmd/compile: always accept 1.18 syntax but complain if not 1.18 + 2021-08-25 bf0bc4122f go/types, types2: don't re-evaluate context string for each function argument (optimization) + 2021-08-25 4158e88f64 cmd/compile/internal/syntax: fix position of type parameter field + 2021-08-25 647bef6c59 go/types: implement NewTypeList and use it instead of composite literals + 2021-08-25 6cf1d5d0fa cmd/compile: generic SSA rules for simplifying 2 and 3 operand integer arithmetic expressions + 2021-08-25 5baf60d472 bytes, strings: optimize Trim for single byte cutsets + 2021-08-25 3d667671ad cmd/compile: fix function contains no TParam in generic function + 2021-08-25 4f2ebfe34b cmd/compile: allow embed into any byte slice type + 2021-08-25 d2f002cb39 time/format: avoid growslice in time.String()/time.GoString() + 2021-08-25 de23549a39 [dev.cmdgo] cmd/go: fix calls to modFileGoVersion to pass in modFile + 2021-08-25 3b523caf41 [dev.cmdgo] cmd/go: clean up TODOWorkspaces instances + 2021-08-25 08d4cc20ca cmd/compile: fix stencil call expression. + 2021-08-25 109c13b64f [dev.cmdgo] all: merge master (c2f96e6) into dev.cmdgo + 2021-08-25 099b819085 cmd/compile: fix CheckSize() calculation for -G=3 and stencils + 2021-08-25 e1fcf8857e test: add test that caused gofrontend compiler crash + 2021-08-25 d37b8dedf7 test: add test case that gofrontend miscompiled + 2021-08-25 41b99dab0f os/user: don't skip TestLookupGroup if supported + 2021-08-25 de1c934b97 cmd/compile: fix checkptr false positive for (*[Big]T)(ptr)[:n:n] pattern + 2021-08-24 54cdef1f10 reflect: add MapIter.SetKey and MapIter.SetValue + 2021-08-24 5d863f89fe cmd/compile: simplify bad conversion check + 2021-08-24 c2f96e686f cmd/compile: mark ODYNAMICDOTTYPE as an expression that can panic + 2021-08-24 5b64381155 cmd/compile: fix naming of types inside instantiations + 2021-08-24 4a9f0cec29 cmd/compile: change irgen to generate exprs/stmts after decls processed + 2021-08-24 daa55b21d1 cmd/link: guarantee "section .debug_gdb_scripts" is always "$GOROOT/src/runtime/runtime-gdb.py". + 2021-08-24 e6798795ff cmd/compile/internal/types2: use TypeList in the Inferred struct + 2021-08-24 b1cdf860dd cmd/compile/internal/types2: use a TypeList type to hold type arguments + 2021-08-24 1ff0554b53 cmd/compile/internal/types2: use []*TypeParam rather than []*TypeName for type param lists + 2021-08-24 bd97763577 cmd/compile/internal/types2: use an opaque environment for Instantiate + 2021-08-24 bba460499c cmd/compile/internal/types2: don't export TypeSet + 2021-08-24 d70c69d830 embed: document the maximum file size supported + 2021-08-24 f98b6111eb go/token: match the implementation of index selection with sort.Search + 2021-08-24 8eeb1bff1d cmd/compile: reuse same node for global dictionaries + 2021-08-23 be1a693477 cmd/compile: fixes for non-constant Sizeof/Alignof/Offsetof + 2021-08-23 8157960d7f all: replace runtime SSE2 detection with GO386 setting + 2021-08-23 22540abf76 runtime: use RDTSCP for instruction stream serialized read of TSC + 2021-08-23 fa34678c67 internal/buildcfg: change GOEXPERIMENT to always return non-empty string + 2021-08-23 0a7f00ae23 cmd/compile: do not mark arrays used for map initialization noalg + 2021-08-23 6b9e3f883e cmd/compile: don't emit write barriers for offsets of global addresses + 2021-08-23 3081f817da cmd/compile: always remove receiver type from instantiated method values + 2021-08-23 8486ced8b0 cmd/compile: copy captured dictionary var to local var + 2021-08-23 aeec6dbfe0 spec: add example for method value in case of embedded method + 2021-08-23 f457ecc7f0 cmd/compile: fixing 15.go for -G=3 + 2021-08-23 f1d8ea1da3 reflect: fix memmove for big endian cases with new ABI + 2021-08-23 4fbb5c8666 go/types: use TypeList in the Inferred struct + 2021-08-23 7a6d64fed6 go/types: use a TypeList type to hold type arguments + 2021-08-23 2438660602 go/types: use []*TypeParam rather than []*TypeName type param lists + 2021-08-23 9fe5c7f122 go/types: add the TypeParam.Obj method + 2021-08-23 baf2866956 go/types: move to an opaque environment for Instantiate + 2021-08-23 c7e354d9d1 go/types: return an error from Instantiate + 2021-08-23 c1a14781ec runtime: remove unused cpu architecture feature variables from binaries + 2021-08-23 457418b475 cmd/go: fix long test builders + 2021-08-22 86ee89225a strings: smarter growth of temporal buffer and avoid copying on return + 2021-08-22 29d7e5472b go/types: report argument type for unsafe.OffsetOf + 2021-08-22 8fcc614360 cmd/compile/internal/types2: enable TestSelection API test + 2021-08-22 5d5e50c3db os/user: simplify test skip for plan9 + 2021-08-22 5d0c2840da cmd/compile/internal/types2: report argument type for unsafe.OffsetOf + 2021-08-22 19585826fa math/big: clarified doc string for SetMantExp + 2021-08-22 6416bde023 runtime: use asmcgocall_no_g when calling sigprocmask on openbsd + 2021-08-22 bd6845965c reflect: add example for FieldByIndex + 2021-08-22 96d816c574 runtime: fix buckHashSize duplication + 2021-08-21 6e50991d2a strconv: reject surrogate halves in Unquote + 2021-08-21 8fff20ffeb cmd/compile: absorb NEG into branch when possible on riscv64 + 2021-08-21 bcd146d398 cmd/compile: convert branch with zero to more optimal branch zero on riscv64 + 2021-08-21 dcee007aad cmd/compile: sort regalloc switch by architecture + 2021-08-21 e17439e087 go/types: don't override x.mode before using it + 2021-08-21 c9912780ab cmd/compile: enable -G=3 by default + 2021-08-20 97d17dc023 test/typeparam: add a test case for issue46591 + 2021-08-20 835ff47c16 cmd/internal/buildid: reject empty id + 2021-08-20 f67e31d643 test: enable regabi test on arm64 + 2021-08-20 ab9aaf46ee cmd/compile/internal/syntax: add PosBase.Trimmed + 2021-08-20 5045477be8 net/http: fix typo in header.go + 2021-08-20 0f25251127 go/types: change Checker.verify to return an error + 2021-08-20 30a423eb39 go/types: no need to validate substituted instances + 2021-08-20 e49775e057 go/types: consolidate verification logic + 2021-08-20 4d00fcbc43 go/types: clean up panics in instantiation + 2021-08-20 bacbc33439 archive/zip: prevent preallocation check from overflowing + 2021-08-20 7007431374 crypto/rand, internal/syscall/unix: don't use getentropy on iOS + 2021-08-20 303446395d cmd/compile: use typeAndStr directly in signatslice + 2021-08-20 e9e0d1ef70 cmd/asm/internal/arch: adds the missing type check for arm64 SXTB extension + 2021-08-20 c92c2c9d62 cmd/internal/obj/arm64: disable the pre and post index formats for pseudo registers + 2021-08-19 65074a4086 cmd/dist: remove unused variables + 2021-08-19 0e598e7da4 syscall: add SyscallN + 2021-08-19 91e2e3b903 cmd/compile: prevent duplicated works in WriteRuntimeTypes + 2021-08-19 9871726c72 reflect: add test for invalid conversion + 2021-08-19 69d8fbec7a cmd/compile/internal/types2: return an error from Instantiate + 2021-08-19 3bdc1799d6 io: unexport internal methods + 2021-08-19 740f7d7370 archive/tar: unexport internal methods + 2021-08-19 c85695a117 cmd/compile: add support for //go:nointerface for -G=3 + 2021-08-18 322879d5c9 cmd/compile/internal/dwarfgen: use src.Pos.Rel{Filename,Line,Col} consistently + 2021-08-18 687f2acf6a cmd/compile: only use dictionaries for conversions to type parameters + 2021-08-18 eda3de0f79 cmd/compile/internal/types2: change Checker.verify to return an error + 2021-08-18 805d38a352 cmd/compile/internal/types2: no need to validate substituted instances + 2021-08-18 c2bd9ee2db cmd/compile: only sort methods/interfaces during export for -d=unifiedquirks + 2021-08-18 8f0578ef39 cmd/compile/internal/types2: consolidate verification logic + 2021-08-18 165ebd85a7 cmd/compile/internal/types2: clean up panics in instantiation + 2021-08-18 4a0fd73ead cmd/go/internal/work/exec: throw an error when buildP is negative + 2021-08-18 0c83e01e0c cmd/go/testdata/script: fix test script added by CL 334873 + 2021-08-18 8b471db71b path/filepath: change IsAbs to treat \\host\share as an absolute path + 2021-08-18 946e2543f8 runtime: use RDCYCLE for cputicks on riscv64 + 2021-08-18 8e18428e38 cmd/internal/obj/arm64: don't use REGTMP when moving C_AACON2 to a register + 2021-08-18 aef24d8f7d cmd/internal/obj/arm64: fix the encoding error when operating with ZR + 2021-08-17 ddfcc02352 cmd/link: do not use GO_LDSO when cross compile + 2021-08-17 a2a9a7b513 cmd/go: make mod init disallow invalid major version suffixes + 2021-08-17 3848488f0f cmd/go/internal/test: add an all sentinel to -vet + 2021-08-17 ace1730a41 cmd/go: go test flag -failfast should be cacheable + 2021-08-17 0f85b0c0e1 go/types: fix method lookup for type-parameter based types + 2021-08-17 9d9e3291fa cmd/compile/internal/types2: fix method lookup for type-parameter based types + 2021-08-17 cf12b0d1f9 cmd/trace: use newTaskDesc to create taskDesc + 2021-08-17 3001b0abf0 cmd/link: remove elfwritedynentsym + 2021-08-17 4012fea822 all: fix typos + 2021-08-17 b7b790a71a cmd/compile: fix CONVIFACE case converting interface to empty interface + 2021-08-17 a304273d74 cmd/compile/internal/types2: allow composite literals of type parameter type + 2021-08-17 d3deb2c359 cmd/compile: fix typos + 2021-08-17 29ec74fb82 go/types: check if the interface is already complete in Complete + 2021-08-17 91a935ea0f Revert "go/types: make Interface.Complete a no-op" + 2021-08-17 a8d39f151d src: simplify race.bash checking condition + 2021-08-17 1951afc919 cmd/compile: lowered MulUintptr on riscv64 + 2021-08-16 2a19333716 net: reduce allocations for UDP send/recv on Windows + 2021-08-16 9c5eb16f6c net: reduce allocation size in ReadFromUDP + 2021-08-16 d9349175ad net: remove allocation from UDPConn.WriteTo + 2021-08-16 8ff16c1990 runtime: accept restartable sequence pcdata values in isAsyncSafePoint + 2021-08-16 df9c5d8f5d cmd/cgo: fix unused parameter warnings in generated _cgo_main.c + 2021-08-16 213e157d3a testing/fstest: allow specifying file for "." in MapFS + 2021-08-16 c04a32e59a net: avoid memory copy calling absDomainName + 2021-08-16 6406227d71 runtime: skip sysmon workaround on NetBSD >= 9.2 + 2021-08-16 a05a7d49a9 cmd/go: address code review comments in test cgo_path_space_quote + 2021-08-16 54ce8793a8 cmd: update x/tools and remove copy of txtar + 2021-08-16 742dcba7bb cmd: support space and quotes in CC and CXX + 2021-08-16 41d991e4e1 cmd/internal/str: add utilities for quoting and splitting args + 2021-08-16 4466141822 cmd/go: add document -json in testflag + 2021-08-16 8d2066177d cmd/go/internal/modfetch/codehost: refactor gitRepo.loadRefs to be harder to misuse + 2021-08-16 ec27168712 net/http: drop headers with invalid keys in Header.Write + 2021-08-16 d35035f84e go/types: use the orig object for Named.Obj + 2021-08-16 ddffe30a21 go/types: rename TypeParams to TParamList + 2021-08-16 631af58e20 go/types: remove targs from substMap + 2021-08-16 d1ba047edf go/types: simplify Named.under + 2021-08-16 56a919f17f go/types: define Identical for instances + 2021-08-16 ff36d11470 go/types: merge Instantiate and InstantiateLazy + 2021-08-16 2460cf8602 go/types: remove Named.SetTArgs + 2021-08-16 281ed619f8 go/types: parameterized functions must have a body + 2021-08-16 aab1d1fcb9 go/types: expand is only required for *Named types + 2021-08-16 9ff61acbd7 go/types,types2: superficial changes to align types and types2 + 2021-08-16 fda8ee8b07 go/types: make Interface.Complete a no-op + 2021-08-16 e61d1445ab cmd/compile: fix panic with dead hidden closures + 2021-08-16 5c7a460a1c syscall: hoist Getsockname out of NetlinkRIB loops + 2021-08-16 850768bbc9 time: update current time comment + 2021-08-16 a0adf91d85 internal/syscall/unix: change Ioctl arg type to unsafe.Pointer on AIX + 2021-08-16 5a40100141 cmd/compile: fix dictionaries for nested closures + 2021-08-16 c92f5ee170 cmd/link: start at address 0 when external linking + 2021-08-16 5da2010840 doc: start draft of go1.18 release notes, move go1.17 to x/website + 2021-08-16 ea8298e2f5 cmd/compile/internal/ssa: delete unused code + 2021-08-16 fe489c86a7 go/types: limit termlist lengths + 2021-08-16 b9f135d98f go/types: change types2.Union API to accept a list of Terms + 2021-08-16 c2b4ec8f49 go/types: add defined type to term/termlist tests + 2021-08-16 11a43df461 go/types: minor cleanup of writeTParamList + 2021-08-16 b0fba64ef4 go/types: fix make with type parameter argument + 2021-08-16 efd206eb40 cmd/compile: intrinsify Mul64 on riscv64 + 2021-08-16 7b7d7d7818 go/types: fix range over exprs of type parameter type + 2021-08-16 02f932e173 go/types: better names for things (cleanup) + 2021-08-16 a192ef8ac4 go/types: cleanup panic calls + 2021-08-16 11a1f37b07 go/types: remove TestIncompleteInterfaces (cleanup) + 2021-08-16 0b61dc4577 go/types: remove unused gcCompatibilityMode flag (cleanup) + 2021-08-16 c88e3ff648 cmd/compile/internal/types2: use the underlying TypeParam in assignableTo + 2021-08-16 d043c8ea89 go/types: implement type sets with term lists + 2021-08-16 94002f6fca go/types: implement term lists + 2021-08-16 3d679c6554 syscall: use correct type for TIOCSPGRP/TIOCGPGRP + 2021-08-16 fcdc3c098c runtime: make asmcgocall g0/gsignal checks consistent + 2021-08-16 160d797260 runtime: correct mips64 asmcgocall signal stack behaviour + 2021-08-16 6a760d6c36 runtime: include pthread.h in defs_openbsd.go + 2021-08-16 7aa57a9687 runtime: remove unused getrlimit on linux/riscv64 + 2021-08-16 57c115e1f6 crypto/sha{256,512}: unname result parameters for consistency + 2021-08-15 717894cf80 cmd/compile/internal/types2: better error message for index syntax error (follow-up) + 2021-08-15 6ed9463133 cmd/compile/internal/syntax: better error message for index syntax error + 2021-08-15 48dfddbab3 lib/time: fix RFC 6557 url + 2021-08-15 1162aae0ad time/tzdata: update links in comment + 2021-08-14 ff3469b1c2 cmd/dist: remove tests using the typeparams build tag + 2021-08-14 0a0a160d4d sync/atomic: fix documentation for CompareAndSwap + 2021-08-14 49c688e45c cmd/compile/internal/types2: rename TypeParams to TParamList + 2021-08-14 b2253c8041 cmd/compile/internal/types2: remove targs from substMap + 2021-08-14 456759b246 cmd/compile/internal/types2: use the orig object for Named.Obj + 2021-08-14 2d250043b4 cmd/compile/internal/types2: simplify Named.under + 2021-08-14 50f4ebbdd3 cmd/compile/internal/types2: define Identical for instances + 2021-08-14 fc27eb50ff cmd/compile/internal/types2: merge Instantiate and InstantiateLazy + 2021-08-13 7eaabae84d net: update IP.String doc to reflect RFC 5952 conformance + 2021-08-13 58490972c0 cmd/link: fix dead reference link + 2021-08-13 a95f1b51be test: change issue10441.go from "build" to "compile" + 2021-08-13 89a4f99640 lib/time: fix tz-link ftp url + 2021-08-13 2eb4d68833 runtime: don't use systemstack for BeforeFork/AfterFork + 2021-08-13 bad1fc1265 test: add test case for CL 340609 + 2021-08-13 641e8bc2c7 test: add test case that caused a gofrontend compiler crash + 2021-08-13 98f3d7fecb all: gofmt more (but vendor, testdata, and top-level test directories) + 2021-08-13 20a620fd9f runtime: drop SIGPROF while in ARM < 7 kernel helpers + 2021-08-13 4c8ffb3baa cmd/internal/str: move package from cmd/go/internal/str + 2021-08-13 4be75faa3e cmd/go: make fewer 'go mod' commands update go.mod + 2021-08-13 1fffeddfe9 cmd/go: add -testsum flag to update go.sum in script tests + 2021-08-12 e2e1987b31 [dev.cmdgo] cmd/link: fix TestBuildForTvOS + 2021-08-12 0d01934094 Merge "all: REVERSE MERGE dev.typeparams (4d3cc84) into master" + 2021-08-12 044ec4fa98 time: fix docs for new comma layouts + 2021-08-12 3601aedff6 all: REVERSE MERGE dev.typeparams (4d3cc84) into master + 2021-08-12 4d3cc84774 Merge "[dev.typeparams] all: merge master (46fd547) into dev.typeparams" into dev.typeparams + 2021-08-12 a64ab8d3ec [dev.typeparams] all: merge master (46fd547) into dev.typeparams + 2021-08-12 7e9f911ec4 [dev.typeparams] cmd/compile: remove some shape checks in type substituter, other cleanups + 2021-08-12 46fd547d89 internal/goversion: update Version to 1.18 + 2021-08-12 5805efc78e doc/go1.17: remove draft notice + 2021-08-12 39634e7dae CONTRIBUTORS: update for the Go 1.17 release + 2021-08-12 d397fc1169 [dev.cmdgo] don't give command-line-arguments a module + 2021-08-12 095bb790e1 os/exec: re-enable LookPathTest/16 + 2021-08-12 677dfe5ad6 [dev.typeparams] cmd/compile: don't print out node pointer in ir.Dump + 2021-08-11 dea23e9ca8 src/make.*: make --no-clean flag a no-op that prints a warning + 2021-08-11 8ab59d812a [dev.typeparams] cmd/compile: change export version to 1.17 for testing + 2021-08-11 aaf914d0e6 [dev.cmdgo] cmd/go: remove modload.ModRoot function + 2021-08-11 d7d4f28a06 [dev.typeparams] runtime, internal/bytealg: remove regabi fallback code on AMD64 + 2021-08-11 eeb7899137 [dev.typeparams] internal/buildcfg: always enable regabi on AMD64 + 2021-08-11 d4c0ed26ac doc/go1.17: linker passes -I to extld as -Wl,--dynamic-linker + 2021-08-11 0888a8cd2d [dev.typeparams] cmd/compile/internal/types2: remove unused TypeParam.Bound method + 2021-08-10 7308d747e7 [dev.typeparams] cmd/compile/internal/types2: remove Named.SetTArgs + 2021-08-10 0f34a92df7 [dev.typeparams] go/types: don't expose the TypeSet API for 1.18 + 2021-08-10 40ba119e3f [dev.typeparams] cmd/compile: keep export format unchanged if no type params are exported + 2021-08-10 fb8579746c [dev.typeparams] internal/goexperiment: update comment for RegabiArgs requirements + 2021-08-10 2e250cc957 [dev.typeparams] cmd: update vendored golang.org/x/tools to 337cebd2c151 + 2021-08-10 2fbf6aafe7 [dev.typeparams] cmd/compile: handle interface type parameters in type switches + 2021-08-10 e4cfa2f6da [dev.typeparams] cmd/compile/internal/types2: parameterized functions must have a body + 2021-08-10 508624f359 [dev.typeparams] cmd/compile/internal/types2: expand is only required for *Named types + 2021-08-10 1f9c9d8530 doc: use "high address/low address" instead of "top/bottom" + 2021-08-09 f5f79c47f9 [dev.typeparams] cmd/compile: use types2.Constraint() rather than types2.Bound() + 2021-08-09 f1dce319ff cmd/go: with -mod=vendor, don't panic if there are duplicate requirements + 2021-08-09 9f4d6a8359 [dev.typeparams] cmd/compile: call transformArgs before early typecheckaste in noder + 2021-08-09 ca3c6985cd [dev.typeparams] cmd/compile: implement generic type switches + 2021-08-09 57668b84ff [dev.typeparams] cmd/compile: simplify interface conversions + 2021-08-09 7aeaad5c86 runtime/cgo: when using msan explicitly unpoison cgoCallers + 2021-08-08 507cc341ec doc: add example for conversion from slice expressions to array ptr + 2021-08-07 d10a904712 [dev.typeparams] cmd/compile: don't export/import type parameter indices anymore + 2021-08-07 891547e2d4 doc/go1.17: fix a typo introduced in CL 335135 + 2021-08-06 3025ce2fa8 [dev.cmdgo] cmd/go: address code review comments in test cgo_path_space_quote + 2021-08-06 8eaf4d16bc make.bash: do not overwrite GO_LDSO if already set + 2021-08-06 fc8e0cbbba [dev.cmdgo] cmd: update x/tools and remove copy of txtar + 2021-08-06 63b968f4f8 doc/go1.17: clarify Modules changes + 2021-08-06 9e0ac72d68 [dev.typeparams] cmd/compile/internal/types2: remove Interface.Complete (cleanup) + 2021-08-06 9bd1817e41 [dev.typeparams] cmd/compile/internal/types2: limit termlist lengths + 2021-08-06 313924f272 [dev.typeparams] cmd/compile: swap export order of union term components (cleanup) + 2021-08-06 0d7dc417ea [dev.typeparams] cmd/compile: change types2.Union API to accept a list of Terms + 2021-08-06 09d82689ed [dev.typeparams] cmd/compile/internal/types2: add defined type to term/termlist tests + 2021-08-06 3a9fd99849 [dev.typeparams] cmd/compile/internal/syntax: cleanup panic calls + 2021-08-06 c3b57af8bc [dev.typeparams] cmd/compile/internal/types2: minor cleanup of writeTParamList + 2021-08-06 0811108670 [dev.typeparams] cmd/compile/internal/types2: fix make with type parameter argument + 2021-08-06 93285c89d1 [dev.typeparams] cmd/compile/internal/types2: fix range over exprs of type parameter type + 2021-08-06 5aac85ad5e [dev.typeparams] cmd/compile/internal/types2: better names for things (cleanup) + 2021-08-06 110343e4a2 [dev.typeparams] cmd/compile: cleanup wrapper code for generics + 2021-08-06 5e33d11e10 [dev.typeparams] cmd/compile: do transformCall with non-shape type of call + 2021-08-06 ac78501b9c [dev.typeparams] cmd/compile: make sure closures inside generic funcs are not compiled + 2021-08-06 70546f6404 runtime: allow arm64 SEH to be called if illegal instruction + 2021-08-05 fd45e267c2 runtime: warn that KeepAlive is not an unsafe.Pointer workaround + 2021-08-05 f78d538858 [dev.typeparams] cmd/compile/internal/types2: cleanup panic calls + 2021-08-05 c5b6c36ddd [dev.typeparams] cmd/compile/internal/types2: remove TestIncompleteInterfaces (cleanup) + 2021-08-05 f14908d01b [dev.typeparams] cmd/compile/internal/types2: remove unused gcCompatibilityMode flag (cleanup) + 2021-08-05 bb5608dd5d [dev.typeparams] cmd/compile/internal/types2: implement type sets with term lists + 2021-08-05 6dadee759c [dev.typeparams] cmd/compile: unified importReader receiver name to r + 2021-08-05 5dcb5e2cea [dev.typeparams] cmd/compile: dictionary/shape cleanup + 2021-08-05 3cdf8b429e [dev.typeparams] cmd/compile: fixing case where type arg is an interface + 2021-08-04 1b708c0260 [dev.typeparams] go/types: remove a stale comment (cleanup) + 2021-08-04 0ec2a8b42d [dev.typeparams] go/types: switch the TArgs API to NumTArgs/TArg + 2021-08-04 e5fe769be1 [dev.typeparams] cmd/compile/internal/types2: implement term lists + 2021-08-04 b730a26729 [dev.typeparams] cmd/compile: put shape types in their own package + 2021-08-04 e590cb64f9 [dev.typeparams] runtime: handle d.link carefully when freeing a defer + 2021-08-04 6e738868a7 net/http: speed up and deflake TestCancelRequestWhenSharingConnection + 2021-08-04 d27a889119 [dev.typeparams] go/types: move instance.go contents into named.go (cleanup) + 2021-08-04 b01e775e9c [dev.typeparams] go/types: print constraint info for type param operands + 2021-08-04 3efc8f9a8d [dev.typeparams] go/types: (TypeParam) SetBound -> SetConstraint + 2021-08-04 ed3667d079 [dev.typeparams] go/types: use type terms to represent unions + 2021-08-04 880ab6209e [dev.typeparams] cmd/compile/internal/types2: fix a panic in missingMethod + 2021-08-04 5b51cf47dc [dev.typeparams] go/types: implement type terms + 2021-08-04 e0d0907212 [dev.typeparams] go/types: use comparable bit rather than ==() method + 2021-08-04 18e0503724 [dev.typeparams] go/types: embedded type cannot be a (pointer to) a type parameter + 2021-08-04 89897473e2 [dev.typeparams] go/types: implement TypeParam.Constraint + 2021-08-04 1ea3596b41 [dev.typeparams] go/types: adjust unsafe.Alignof/Offsetof/Sizeof + 2021-08-03 88bd92bb6d [dev.typeparams] runtime: simplify freedefer + 2021-08-03 1a0630aef4 [dev.typeparams] runtime,cmd/compile,cmd/link: replace jmpdefer with a loop + 2021-08-03 077925e2b0 [dev.typeparams] runtime: remove unnecessary split-prevention from defer code + 2021-08-03 7ab8754029 [dev.typeparams] cmd/compile: avoid redundant method wrappers in unified IR + 2021-08-03 fe73f28dc5 [dev.typeparams] cmd/compile: set sym.Def to ir.Name for method value wrappers + 2021-08-03 656f0888b7 [dev.typeparams] cmd/compile: make softfloat mode work with register ABI + 2021-08-03 1b193598b3 [dev.typeparams] cmd/compile: fail early on unexpected types2.Invalid + 2021-08-02 e56234a305 [dev.typeparams] cmd/compile: simple shape cleanups + 2021-08-02 c3c19731a9 [dev.typeparams] cmd/compile/internal/types2: move instance.go contents into named.go (cleanup) + 2021-08-02 156eeb40a6 [dev.typeparams] cmd/compile: make HasShape() more efficient by implementing with a type flag + 2021-08-02 8a7ee4c51e io/fs: don't use absolute path in DirEntry.Name doc + 2021-08-02 283991bd7f [dev.typeparams] cmd/compile/internal/types2: print constraint info for type param operands + 2021-08-02 aa3d54da07 [dev.typeparams] runtime: rewrite softfloat functions to avoid using floats + 2021-07-31 b8ca6e59ed all: gofmt + 2021-07-31 0b8a9ccb25 [dev.typeparams] cmd/compile: make all pointer types have the same shape + 2021-07-31 3799012990 [dev.cmdgo] cmd/go: add go mod editwork command + 2021-07-30 b3b53e1dad [dev.cmdgo] cmd/go: thread through modroots providing replacements + 2021-07-30 47694b59eb [dev.cmdgo] cmd/go: provide a more helpful missing required module error in workspaces + 2021-07-30 90830699ae [dev.cmdgo] cmd/go: allow expliticly setting -mod=readonly in workspace mode + 2021-07-30 7bed50e667 [dev.typeparams] Revert "[dev.typeparams] runtime: remove unnecessary split-prevention from defer code" + 2021-07-30 e3e9f0bb2d [dev.typeparams] Revert "[dev.typeparams] runtime,cmd/compile,cmd/link: replace jmpdefer with a loop" + 2021-07-30 8e2ab05dd3 Merge "[dev.cmdgo] all: merge master (9eee0ed) into dev.cmdgo" into dev.cmdgo + 2021-07-30 40e561d933 [dev.typeparams] cmd/compile: allow types with the same underlying type to have the same shape + 2021-07-30 fd0011dca5 [dev.typeparams] runtime,cmd/compile,cmd/link: replace jmpdefer with a loop + 2021-07-30 53fd5b1b77 [dev.typeparams] runtime: remove unnecessary split-prevention from defer code + 2021-07-30 ea94e5d3c5 [dev.typeparams] runtime: use func() for deferred functions + 2021-07-30 52e970b1c8 [dev.cmdgo] cmd: support space and quotes in CC and CXX + 2021-07-30 3a69cef65a [dev.cmdgo] cmd/internal/str: add utilities for quoting and splitting args + 2021-07-30 137089ffb9 [dev.cmdgo] cmd/internal/str: move package from cmd/go/internal/str + 2021-07-30 b7a85e0003 net/http/httputil: close incoming ReverseProxy request body + 2021-07-30 4480e3b11a [dev.typeparams] go/types: backport lazy loading changes from CL 336252 + 2021-07-30 27283d208f [dev.typeparams] cmd/compile: remove now-unneeded check for '==' method for comparable type + 2021-07-29 3e7571f6ff [dev.typeparams] go/types,cmd/compile/internal/types2: fix TypeParams.At docs + 2021-07-29 1d35d8ffa5 [dev.typeparams] cmd/compile: switch unified IR from TypeParam.Bound to TypeParam.Constraint + 2021-07-29 35dbdda2fe [dev.typeparams] cmd/compile: remove remaining uses of Unshapify + 2021-07-29 600b7b431b [dev.typeparams] cmd/compile: handle meth expressions on typeparams + 2021-07-29 5ecbd811b5 [dev.typeparams] cmd/compile/internal/types2: (TypeParam) SetBound -> SetConstraint + 2021-07-29 46cc686381 [dev.typeparams] cmd/compile/internal/types2: use the TParams API consistently + 2021-07-29 27552e9172 [dev.typeparams] cmd/compile: set type parameter indices when they are bound + 2021-07-29 af903261e7 [dev.typeparams] go/types, types2: remove instance.verify field (cleanup) + 2021-07-29 c079b6baaa [dev.typeparams] cmd/compile/internal/types2: trigger verification while resolving instance + 2021-07-29 ff0c0dbca6 [dev.typeparams] cmd/compile/internal/types2: use type terms to represent unions + 2021-07-29 2fa8f00915 [dev.typeparams] cmd/compile/internal/types2: implement type terms + 2021-07-29 f4f503e0a3 [dev.typeparams] cmd/compile: implement generic .(T) operations + 2021-07-29 70fd4e47d7 runtime: avoid possible preemption when returning from Go to C + 2021-07-28 4a47e40a14 [dev.typeparams] cmd/compile: don't export blank functions in unified IR + 2021-07-28 506fd520d5 [dev.typeparams] cmd/compile: don't compile blank functions + 2021-07-28 adedf54288 [dev.typeparams] test: rename blank functions + 2021-07-28 5355753009 [dev.typeparams] test/typeparam: gofmt -w + 2021-07-28 47cdfa95ae [dev.cmdgo] all: merge master (9eee0ed) into dev.cmdgo + 2021-07-28 9eee0ed439 cmd/go: fix go.mod file name printed in error messages for replacements + 2021-07-28 473e493d18 [dev.typeparams] cmd/compile/internal/types2: merge instance and Named to eliminate sanitization + 2021-07-28 176baafd5b [dev.cmdgo] cmd/go: sort roots when joining multiple main module roots + 2021-07-28 288a83dcff [dev.cmdgo] cmd/go: maintain a go.work.sum file + 2021-07-28 b39e0f461c runtime: don't crash on nil pointers in checkptrAlignment + 2021-07-28 e00a6ec084 [dev.typeparams] cmd/compile: mark methods of instantiated interface types as used + 2021-07-27 2c8acf63c2 [dev.cmdgo] cmd/go: make fewer 'go mod' commands update go.mod + 2021-07-27 72233d27c4 [dev.cmdgo] cmd/go: add -testsum flag to update go.sum in script tests + 2021-07-27 7cd10c1149 cmd/go: use .mod instead of .zip to determine if version has go.mod file + 2021-07-27 b2205eab0e [dev.cmdgo] cmd/go: add go mod initwork command + 2021-07-27 f05f5ceffa [dev.cmdgo] cmd/go: fold index and modFile into MainModules + 2021-07-27 c751e2e6ba [dev.typeparams] cmd/compile/internal/types2: use comparable bit rather than ==() method + 2021-07-27 c8cf0f74e4 cmd/go: add missing flag in UsageLine + 2021-07-27 5d8f90f904 [dev.typeparams] cmd/compile: don't need to unshapify append calls + 2021-07-27 cb14e673ec [dev.typeparams] runtime: don't keep stack uintptr across potential stack move + 2021-07-27 7ba8e796c9 testing: clarify T.Name returns a distinct name of the running test + 2021-07-27 33ff155970 go/types: preserve untyped constants on the RHS of a shift expression + 2021-07-26 840e583ff3 runtime: correct variable name in comment + 2021-07-26 bfbb288574 runtime: remove adjustTimers counter + 2021-07-26 9c81fd53b3 cmd/vet: add missing copyright header + 2021-07-26 7ce257147f [dev.cmdgo] cmd/go: add the workspace mode + 2021-07-26 3cd15e02ed [dev.cmdgo] cmd: pull in x/mod on the dev.cmdgo branch + 2021-07-26 37d2219960 [dev.typeparams] cmd/compile/internal/types2: embedded type cannot be a (pointer to) a type parameter + 2021-07-26 d6753fd491 [dev.typeparams] cmd/compile/internal/types2: implement TypeParam.Constraint + 2021-07-26 9e3274bb3d [dev.typeparams] cmd/compile/internal/types2: import regexp/syntax instead of cmd/compile/internal/syntax + 2021-07-26 b93f646125 [dev.typeparams] cmd/compile/internal/types2: fix a bug in package qualification logic + 2021-07-26 996b0dbc65 [dev.typeparams] all: merge master (ecaa681) into dev.typeparams + 2021-07-26 bfcb7c4c8a [dev.typeparams] cmd/compile: fix unified IR support for //go:nointerface + 2021-07-26 ecaa6816bf doc: clarify non-nil zero length slice to array pointer conversion + 2021-07-26 1868f8296e crypto/x509: update iOS bundled roots to version 55188.120.1.0.1 + 2021-07-25 849b791129 spec: use consistent capitalization for rune literal hex constants + 2021-07-24 b27c7e30dc [dev.typeparams] cmd/compile: fix HasShape, add dottype test + 2021-07-24 a2e2b0362b [dev.typeparams] transformDot() should set Selection and tc flag for added ODOTs + 2021-07-24 3dc0a0a2c5 [dev.typeparams] cmd/compile: get rid of concretify use for bounds. + 2021-07-24 77e0bf294c [dev.typeparams] cmd/compile: introduce OCONVIDATA op + 2021-07-24 9f928f9318 [dev.typeparams] go/types, types2: set tset when constructing interfaces in the universe + 2021-07-23 6992dcdad9 [dev.typeparams] cmd/compile: fix some issues with cons.go + 2021-07-23 e6d956e1c5 [dev.typeparams] cmd/compile: add CONVIFACE nodes for return values during noder2 + 2021-07-23 02c0172500 [dev.typeparams] cmd/compile: add dictionary entries for itab conversion + 2021-07-23 12866bd8ea [dev.typeparams] Add CONVIFACE nodes in noder2, where possible + 2021-07-23 0914646ab9 doc/1.17: fix two dead rfc links + 2021-07-23 4cdc65d32a [dev.typeparams] cmd/compile/internal/types: format union types + 2021-07-22 244267e8c4 Merge "[dev.typeparams] all: merge master (798ec73) into dev.typeparams" into dev.typeparams + 2021-07-22 052da5717e cmd/compile: do not change field offset in ABI analysis + 2021-07-22 d8ceb133ca [dev.typeparams] runtime: mark TestGcSys as flaky + 2021-07-22 a27e325c59 [dev.typeparams] all: merge master (798ec73) into dev.typeparams + 2021-07-22 798ec73519 runtime: don't clear timerModifiedEarliest if adjustTimers is 0 + 2021-07-22 a627fcd3c4 [dev.cmdgo] cmd/go: replace Target with MainModules, allowing for multiple targets + 2021-07-22 5cb84f0604 [dev.typeparams] cmd/compile: make sure types added to the dictionary are instantiated correctly + 2021-07-22 73162a54c2 [dev.typeparams] cmd/compile: remove outdate TODO in escape analysis + 2021-07-22 80127a7dfe [dev.typeparams] cmd/compile/internal/types2: adjust unsafe.Alignof/Offsetof/Sizeof + 2021-07-22 fca3e5c445 [dev.typeparams] cmd/compile: fix missing condition in usemethod + 2021-07-22 5ba06495c1 [dev.typeparams] go/types: use the TParams API consistently + 2021-07-22 6f57139c7a [dev.typeparams] go/types: set type parameter indices when they are bound + 2021-07-22 311baf65f4 [dev.typeparams] test: cleanup 'go env' and -goexperiment + 2021-07-22 fdb45acd1f runtime: move mem profile sampling into m-acquired section + 2021-07-22 b7149b781f [dev.typeparams] go/types: trigger verification while resolving instance + 2021-07-22 61f69d2559 [dev.typeparams] go/types: merge instance and Named to eliminate sanitization + 2021-07-22 8e9109e95a [dev.typeparams] Fix problem with 14.go + 2021-07-22 ee20dff27d [dev.typeparams] Get dictionaryCapture.go working. + 2021-07-21 4e6836e82c [dev.typeparams] Fix the types of the OFUNCINST nodes in noder2 + 2021-07-21 dcc8350ad3 [dev.typeparams] cmd/compile: handle ++/-- in noder2 for operands with generic type + 2021-07-21 f19e49e7b1 [dev.typeparams] cmd/compile: added a builtins.go test, fixed one bug + 2021-07-21 e6a2cf233f [dev.typeparams] cmd/compile: get runtime stuff working + 2021-07-21 4a97fe8c22 [dev.typeparams] cmd/compile: avoid adding incorrectly instantiated types to the dictionary + 2021-07-21 2fe4b14795 [dev.typeparams] cmd/compile: ensure methods of generic types survive linker pruning + 2021-07-21 73af5f718f [dev.typeparams] cmd/compile: disable failing generic tests + 2021-07-21 a7a17f0ca8 [dev.typeparams] cmd/compile: introduce named gcshape types + 2021-07-21 3e48c0381f reflect: add missing copyright header + 2021-07-21 48c88f1b1b reflect: add Value.CanConvert + 2021-07-21 897970688b [dev.typeparams] cmd/compile: cleanup unified IR file format a little + 2021-07-21 d5f6ba943c [dev.typeparams] test: add regression test for go/defer wrapper + 2021-07-20 6a931673f0 [dev.typeparams] cmd/compile: add base.Assertf{,At} functions + 2021-07-20 e4994e71fb [dev.typeparams] all: merge master (c8f4e61) into dev.typeparams + 2021-07-20 9e26569293 cmd/go: don't add C compiler ID to hash for standard library + 2021-07-20 d568e6e075 runtime/debug: skip TestPanicOnFault on netbsd/arm + 2021-07-20 ab361499ef [dev.cmdgo] cmd/go/testdata/script: fix a small typo in modfile_flag + 2021-07-19 c8f4e6152d spec: correct example comment in Conversions from slice to array + 2021-07-19 1d91551b73 time: correct typo in documentation for UnixMicro + 2021-07-19 404127c30f cmd/compile: fix off-by-one error in traceback argument counting + 2021-07-19 c6d3d0b0ad [dev.typeparams] go/types: fix the type parameter index in applyTypeFunc + 2021-07-19 6298cfe672 cmd/compile: fix typo in fatal message of builtinCall + 2021-07-19 6bf2667d4e [dev.typeparams] go/types: more consistent handling of predeclared "any" + 2021-07-19 7e714f448e [dev.typeparams] go/types: embedding stand-alone type parameters is not permitted + 2021-07-19 82f875d735 [dev.typeparams] go/types: fix generic type indirection + 2021-07-19 62f6f130fe [dev.typeparams] go/types: interface identity must consider full type set + 2021-07-19 baeabf3b36 [dev.typeparams] go/types: cleanups around receiver type checks + 2021-07-19 b3d91e3a24 [dev.typeparams] go/types: implement delete(m, k) where m is of type parameter type + 2021-07-19 cf7e66b7d4 [dev.typeparams] go/types: implement close(ch) where ch is of type parameter type + 2021-07-19 19b4142f24 [dev.typeparams] go/types: implement ch <- x where ch is of type parameter type + 2021-07-19 d6d7f8458e [dev.typeparams] go/types: implement <-ch where ch is of type parameter type + 2021-07-19 796ac6d5f2 [dev.typeparams] go/types: move methods on *Named into named.go + 2021-07-19 22f39ba208 [dev.typeparams] go/types: use InstantiateLazy to create instance types (cleanup) + 2021-07-19 4a72be87b3 [dev.typeparams] go/types: move instantiation code to instantiate.go (cleanup) + 2021-07-19 41ff0aac13 [dev.typeparams] go/types: replace types2.Instantiate with Checker.Instantiate + 2021-07-19 9e147c55b7 [dev.typeparams] go/types: update TypeParam APIs to match types2 + 2021-07-19 22a38ba5ca [dev.typeparams] go/types: remove unnecessary guard from NewInterfaceType + 2021-07-19 b96f1b9419 [dev.typeparams] go/types: add some missing APIs for the importer + 2021-07-19 43ad1ffa99 [dev.typeparams] go/types: recursive substitution must terminate (bug fix) + 2021-07-19 c7c13ae432 [dev.typeparams] go/types: use scope numbers to identify local types + 2021-07-19 ccf95f17dd [dev.typeparams] go/types: support local defined types + 2021-07-19 76b39959f4 [dev.typeparams] go/types: don't permit method calls on ptr to type parameter receivers + 2021-07-19 49402bee36 cmd/{compile,link}: fix bug in map.zero handling + 2021-07-19 9b85985d36 [dev.typeparams] Separate out gcshape types that are instantiated types + 2021-07-18 a66190ecee test/bench/go1: fix size for RegexpMatchMedium_32 + 2021-07-18 650fc2117a text/scanner: use Go convention in Position doc comment + 2021-07-17 df778e6fd9 [dev.typeparams] go/types: replace optype() with under() in various cases (cleanup) + 2021-07-17 e9836fe318 [dev.typeparams] go/types: clean up index expr implementation for type parameters + 2021-07-17 c4cd76fbbb [dev.typeparams] go/types: disallow "free" type parameter as RHS of a type declaration + 2021-07-16 521828091c [dev.typeparams] go/types: move (remaining) type decls into their own files (cleanup) + 2021-07-16 624d152db7 [dev.typeparams] go/types: move Interface type decl into interface.go (cleanup) + 2021-07-16 e12d43866d [dev.typeparams] go/types: move Signature type decl into signature.go (cleanup) + 2021-07-16 b3e7f23a48 [dev.typeparams] go/types: move Struct type decl into struct.go (cleanup) + 2021-07-16 7c35f5c2fc [dev.typeparams] go/types: rename newTypeSet -> computeTypeSet + 2021-07-16 de209e693a [dev.typeparams] go/types: make Interface.obj a *TypeName + 2021-07-16 0f4198b5e2 [dev.typeparams] go/types: delay interface check for type bounds + 2021-07-16 5f50a6442e [dev.typeparams] go/internal/typeparams: remove the Enabled guard + 2021-07-16 726ffce659 [dev.typeparams] go/types: "comparable" must not be visible before Go 1.18 + 2021-07-16 79955155e9 [dev.typeparams] go/types: move newTypeSet function into typeset.go + 2021-07-16 fe4f13404d [dev.typeparams] go/types: move embedding positions from Checker to Interface + 2021-07-16 b98b8b9b5b [dev.typeparams] go/types: remove unused *Checker arguments (cleanup) + 2021-07-16 fce6290e0a [dev.typeparams] go/types: remove typeparams wrappers and aliases + 2021-07-16 24f9eb2de3 [dev.typeparams] go/types: introduce type set abstraction for interfaces + 2021-07-16 b296e54618 [dev.typeparams] go/types: port lazy import resolution from types2 + 2021-07-16 10c8b7c1d7 [dev.typeparams] cmd/compile: use dictionary to convert arguments of ==, != to interfaces + 2021-07-16 ed9e109dc9 [dev.typeparams] cmd/compile: fix small -G=3 issues for tests disabled in run.go + 2021-07-16 3d8453e00e [dev.typeparams] cmd/compile/internal/types2: more consistent handling of predeclared "any" + 2021-07-16 aa4e0f528e net/http: correct capitalization in cancelTimeBody comment + 2021-07-16 334f2fc045 [dev.typeparams] go/*: switch from ListExpr to MultiIndexExpr + 2021-07-15 6b85a218b8 [dev.typeparams] cmd/compile: make TestUnifiedCompare insensitive to default -G level + 2021-07-15 0941dbca6a testing: clarify in docs that TestMain is advanced + 2021-07-15 69728ead87 cmd/go: update error messages in tests to match CL 332573 + 2021-07-15 c1cc9f9c3d cmd/compile: fix lookup package of redeclared dot import symbol + 2021-07-15 21a04e3335 doc/go1.17: mention GOARCH=loong64 + 2021-07-14 4ff0e04c2e [dev.typeparams] cmd/compile/internal/types2: embedding stand-alone type parameters is not permitted + 2021-07-14 3a047326e8 [dev.typeparams] cmd/compile/internal/types2: fix generic type indirection + 2021-07-14 dd8bdf4a1f [dev.typeparams] cmd/compile/internal/types2: interface identity must consider full type set + 2021-07-14 2a8087817c [dev.typeparams] cmd/compile/internal/types2: cleanups around receiver type checks + 2021-07-14 95f8e64fc0 [dev.typeparams] cmd/compile/internal/types2: implement delete(m, k) where m is of type parameter type + 2021-07-14 5f0ea40c67 [dev.typeparams] cmd/compile/internal/types2: implement close(ch) where ch is of type parameter type + 2021-07-14 6511922a14 [dev.typeparams] cmd/compile/internal/types2: implement ch <- x where ch is of type parameter type + 2021-07-14 ff33d3dc3a [dev.typeparams] cmd/compile/internal/types2: implement <-ch where ch is of type parameter type + 2021-07-14 2b00a54baf go/build, runtime/internal/sys: reserve GOARCH=loong64 + 2021-07-14 e3e6cd3022 [dev.typeparams] cmd/compile: fix escape printout bugs for -G=3 + 2021-07-14 2b10d7ff0b [dev.typeparams] go/types: export the Config.GoVersion field + 2021-07-14 60ddf42b46 cmd/go: change link in error message from /wiki to /doc. + 2021-07-14 5517053d17 [dev.typeparams] cmd/compile: record more typ/fun info for dictionaries in unified IR + 2021-07-14 82744bfbfc [dev.typeparams] cmd/compile: handle objStub earlier in reader + 2021-07-13 d8f348a589 cmd/go: remove a duplicated word from 'go help mod graph' + 2021-07-13 e5faa8d84b [dev.typeparams] cmd/compile/internal/types2: move methods on *Named into named.go (cleanup) + 2021-07-13 d0324eb8fb [dev.typeparams] cmd/compile/internal/types2: use InstantiateLazy to create instance types (cleanup) + 2021-07-13 70f1246a9f [dev.typeparams] cmd/compile/internal/types2: move instantiation code to instantiate.go (cleanup) + 2021-07-13 22e9265467 [dev.typeparams] cmd/compile/internal/types2: replace types2.Instantiate with Checker.Instantiate + 2021-07-12 a98589711d crypto/tls: test key type when casting + 2021-07-12 cfbd73ba33 doc/go1.17: editing pass over the "Compiler" section + 2021-07-12 1c783dc148 [dev.typeparams] Add optional sub-dict entry for typeparam bound calls + 2021-07-11 0dcab98fd8 [dev.typeparams] cmd/compile: slightly more incremental unified typecheck + 2021-07-10 3c3c1d8d28 [dev.typeparams] cmd/compile: more incremental typecheck for unified IR + 2021-07-10 a12ad27119 [dev.typeparams] cmd/compile: report functions declared in Go and assembly + 2021-07-10 5059aed9dd [dev.typeparams] internal/buildcfg: allow regabiwrappers on all GOARCH + 2021-07-09 ab4085ce84 runtime/pprof: call runtime.GC twice in memory profile test + 2021-07-09 f2ed30c31e [dev.typeparams] cmd/compile/internal/types2: recursive substitution must terminate (bug fix) + 2021-07-09 69d945fc6e [dev.typeparams] cmd/compile/internal/types2: use scope numbers to identify local types + 2021-07-09 04acb8a7b9 [dev.typeparams] cmd/compile: report mismatch between types because of //go:notinheap + 2021-07-08 2b1d70a137 [dev.typeparams] all: merge master (296ddf2) into dev.typeparams + 2021-07-08 42fe132787 [dev.typeparams] cmd/compile: cleanup ABI utils tests + 2021-07-08 d4f6d161e4 [dev.typeparams] cmd/compile: fix bunch of -G=3 bugs for test cases in test/typeparams/mdempsky + 2021-07-08 296ddf2a93 net: filter bad names from Lookup functions instead of hard failing + 2021-07-08 ce76298ee7 Update oudated comment + 2021-07-08 2ca44fe221 doc/go1.17: linkify time.UnixMilli and time.UnixMicro + 2021-07-07 18135150b0 [dev.typeparams] cmd/compile/internal/types2: don't permit method calls on ptr to type parameter receivers + 2021-07-07 d2bf94fb86 [dev.typeparams] cmd/compile/internal/types2: replace optype() with under() in various cases (cleanup) + 2021-07-07 03ec8de24b [dev.typeparams] cmd/compile/internal/types2: clean up index expr implementation for type parameters + 2021-07-07 47547d8508 [dev.typeparams] cmd/compile/internal/types2: disallow "free" type parameter as RHS of a type declaration + 2021-07-07 60cb2cab97 [dev.typeparams] cmd/compile: fix bug with types2.Instantiate with interface type param + 2021-07-07 85267f402c [dev.typeparams] cmd/compile: move def of comparable to end of predeclared slices + 2021-07-07 5c59e11f5e cmd/compile: remove special-casing of blank in types.sconv{,2} + 2021-07-07 b003a8b1ae cmd/compile: optimize types.sconv + 2021-07-07 11f5df2d67 cmd/compile: extract pkgqual from symfmt + 2021-07-07 991fd381d5 cmd/go: don't lock .mod and .sum files for read in overlay + 2021-07-07 186a3bb4b0 cmd/go/internal/modfetch/codehost: skip hg tests if no hg binary is present + 2021-07-07 00c00558e1 cmd/go/internal/modload: remove unused functions + 2021-07-07 f264879f74 cmd/go/internal/modload: fix an apparent typo in the AutoRoot comment + 2021-07-07 c65ca97a45 [dev.typeparams] cmd/compile: fix windows longtest builder + 2021-07-07 501725032c [dev.typeparams] cmd/compile: handle derived types that are converted to interfaces + 2021-07-07 b614c05a15 [dev.typeparams] cmd/compile: add built-in name/type "comparable". + 2021-07-07 b4844c9f54 [dev.typeparams] cmd/compile: handle the (*T).M method expression with dictionaries + 2021-07-07 c96833e5ba doc: remove stale comment about arm64 port + 2021-07-07 4676c3675e [dev.typeparams] cmd/compile: rename PartialCallType -> MethodValueType + 2021-07-07 5c42b6a953 [dev.typeparams] test: add regress tests that fail(ed) with -G=3 + 2021-07-07 49ade6b298 [dev.typeparams] test: add expected failure mechanism + 2021-07-06 aa4da4f189 [dev.cmdgo] all: merge master (912f075) into dev.cmdgo + 2021-07-04 cd00499c61 [dev.typeparams] cmd/compile: better Call constructor + 2021-07-04 899b158ee9 [dev.typeparams] cmd/compile: set Func.ClosureCalled in escape analysis + 2021-07-03 ea5369bac0 [dev.typeparams] cmd/compile: remove ir.CallUse + 2021-07-03 c45d0eaadb [dev.typeparams] cmd/compile: flatten OINLCALL in walk + 2021-07-03 ad2ba3ff51 [dev.typeparams] src,cmd: run 'go mod tidy' + 2021-07-03 5dac279fbd [dev.typeparams] cmd/compile: formalize "hidden parameters" idea + 2021-07-03 611056ec34 Merge "[dev.typeparams] all: merge master (912f075) into dev.typeparams" into dev.typeparams + 2021-07-02 ef39edefe1 [dev.typeparams] src,cmd: bump go.mod to 'go 1.18' + 2021-07-02 f35d86fd5f [dev.typeparams] all: merge master (912f075) into dev.typeparams + 2021-07-02 b994cc69e0 [dev.typeparams] cmd/compile: separate out creating instantiations from creating dictionaries + 2021-07-02 912f075047 net/http: mention socks5 support in proxy + 2021-07-02 287c5e8066 cmd/compile: fix stack growing algorithm + 2021-07-02 743f03eeb0 spec, unsafe: clarify unsafe.Slice docs + 2021-07-02 6dec18cc75 [dev.typeparams] cmd/compile: start using sub-dictionary entries where needed + 2021-07-02 6125d0c426 cmd/dist: correct comment: SysProcAttri -> SysProcAttr + 2021-07-02 a18726a648 [dev.typeparams] cmd/compile: incremental typecheck during unified IR + 2021-07-02 2aea44204e [dev.typeparams] cmd/compile: enable generics syntax with -lang=go1.18 + 2021-07-01 30e5f266ed [dev.typeparams] cmd/compile/internal/types2: move (remaining) type decls into their own files (cleanup) + 2021-07-01 9c1e7d9eff [dev.typeparams] cmd/compile/internal/types2: move Interface type decl into interface.go (cleanup) + 2021-07-01 838079beef [dev.typeparams] cmd/internal/dwarf: remove putInlinedFunc's callersym param + 2021-07-01 03761ede02 net: don't reject null mx records + 2021-07-01 877688c838 testing: add TB.Setenv + 2021-07-01 ef8ae82b37 cmd/compile: fix bug in dwarf-gen var location generation + 2021-07-01 9ba294e15b [dev.typeparams] cmd/compile: fix getDictionarySym for methods references, write out sub-dictionaries + 2021-07-01 770899f7e1 cmd/go: add a regression test for 'go mod vendor' path traversal + 2021-07-01 835d86a17e cmd/go: use path.Dir instead of filepath.Dir for package paths in 'go mod vendor' + 2021-07-01 eb437ba92c cmd/compile: make stack value size threshold comparisons consistent + 2021-07-01 0e0b80cb56 [dev.typeparams] cmd/compile/internal/types2: move Signature type decl into signature.go (cleanup) + 2021-07-01 1aadb18f83 [dev.typeparams] cmd/compile/internal/types2: move Struct type decl into struct.go (cleanup) + 2021-07-01 fac21803ce [dev.typeparams] cmd/compile/internal/types2: rename newTypeSet -> computeTypeSet + 2021-07-01 1eb756689c [dev.typeparams] cmd/compile/internal/types2: make Interface.obj a *TypeName + 2021-07-01 9cb1b0f50b [dev.typeparams] cmd/compile/internal/types2: delay interface check for type bounds + 2021-07-01 1cd505c353 [dev.typeparams] cmd/compile/internal/types2: "comparable" must not be visible before Go 1.18 + 2021-07-01 706c580ee1 [dev.typeparams] cmd/compile: simplify autotmpname + 2021-07-01 372b312735 [dev.typeparams] cmd/compile: refactor top-level typechecking in unified IR + 2021-07-01 9d65578b83 cmd/compile: fix typos in document + 2021-06-30 ad7e5b219e [dev.typeparams] all: merge master (4711bf3) into dev.typeparams + 2021-06-30 4711bf30e5 doc/go1.17: linkify "language changes" in the runtime section + 2021-06-30 8767b87ab5 [dev.typeparams] cmd/compile: functions to create GC shape types/names for a concrete type + 2021-06-30 ed56ea73e8 path/filepath: deflake TestEvalSymlinksAboveRoot on darwin + 2021-06-30 b47cbc2ffe [dev.typeparams] cmd/compile/internal/types2: move newTypeSet function into typeset.go + 2021-06-30 f0206e3df2 [dev.typeparams] cmd/compile/internal/types2: move embedding positions from Checker to Interface + 2021-06-30 1ff43d1b17 [dev.typeparams] cmd/compile/internal/types2: remove unused *Checker arguments (cleanup) + 2021-06-30 4b5fdb0b7a [dev.typeparams] cmd/compile/internal/types2: introduce type set abstraction for interfaces + 2021-06-30 c080d0323b cmd/dist: pass -Wno-unknown-warning-option in swig_callback_lto + 2021-06-30 7d0e9e6e74 image/gif: fix typo in the comment (io.ReadByte -> io.ByteReader) + 2021-06-30 0fa3265fe1 os: change example to avoid deprecated function + 2021-06-30 f503740ccf [dev.typeparams] cmd/compile: add derived-type dictionaries to unified IR + 2021-06-30 d19a53338f image: add Uniform.RGBA64At and Rectangle.RGBA64At + 2021-06-30 c45e800e0c crypto/x509: don't fail on optional auth key id fields + 2021-06-29 f9d50953b9 net: fix failure of TestCVE202133195 + 2021-06-29 6a5f7e8498 [dev.typeparams] cmd/compile: use dictionary entries for more conversion cases + 2021-06-29 5fa6bbc669 [dev.typeparams] cmd/compile: clean up instantiation and dictionary naming + 2021-06-29 e294b8a49e doc/go1.17: fix typo "MacOS" -> "macOS" + 2021-06-29 3463852b76 math/big: fix typo of comment (`BytesScanner` to `ByteScanner`) + 2021-06-29 fd4b587da3 cmd/compile: suppress details error for invalid variadic argument type + 2021-06-29 e2e05af6e1 cmd/internal/obj/arm64: fix an encoding error of CMPW instruction + 2021-06-29 dfa8fd861c [dev.typeparams] cmd/compile: add a field (method) name for function in TestABIUtilsInterfaces + 2021-06-28 4bb0847b08 cmd/compile,runtime: change unsafe.Slice((*T)(nil), 0) to return []T(nil) + 2021-06-28 1519271a93 spec: change unsafe.Slice((*T)(nil), 0) to return []T(nil) + 2021-06-28 5385e2386b runtime/internal/atomic: drop Cas64 pointer indirection in comments + 2021-06-28 64e6c75924 [dev.typeparams] cmd/compile: port fix for issue46725 to transform.go + 2021-06-28 956c81bfe6 cmd/go: add GOEXPERIMENT to `go env` output + 2021-06-28 a1d27269d6 cmd/go: prep for 'go env' refactoring + 2021-06-28 901510ed4e cmd/link/internal/ld: skip the windows ASLR test when CGO_ENABLED=0 + 2021-06-28 361159c055 cmd/cgo: fix 'see gmp.go' to 'see doc.go' + 2021-06-28 f99b3fe2ab [dev.typeparams] cmd/compile: move MethodValueWrapper to walk + 2021-06-28 a8861b907d [dev.typeparams] cmd/compile: port CL 330838 for -G=3 + 2021-06-27 20a04f6041 [dev.typeparams] cmd/compile: delay method value wrapper generation until walk + 2021-06-27 1b995f91a5 [dev.typeparams] cmd/compile: rename OCALLPART to OMETHVALUE + 2021-06-27 d44ed5d144 [dev.typeparams] cmd/compile: add method value wrappers to unified IR + 2021-06-26 3ea0fcfe15 [dev.typeparams] cmd/compile: do not skip TestUnifiedCompare in short mode + 2021-06-26 27e3b797bb [dev.typeparams] cmd/compile: remove OCALLMETH Fatals in SSA generation + 2021-06-26 0cf71f7f92 [dev.typeparams] cmd/compile: rewrite method calls during typecheck + 2021-06-26 180c338c68 [dev.typeparams] cmd/compile: restore check for OCALLMETH in walkCall + 2021-06-26 942bcc2d4f [dev.typeparams] cmd/compile: fix wrong AST generation in devirtualization + 2021-06-26 d417b8cf87 [dev.typeparams] cmd/compile: clarify comment about checking reflect.Method in usemethod + 2021-06-25 ed647b16d0 [dev.typeparams] cmd/compile: use Type.LinkString for map keys + 2021-06-25 942edc7502 [dev.typeparams] cmd/compile: rename types.Type.{Short,Long}String to {Link,Name}String + 2021-06-25 373ca3a846 Merge "[dev.typeparams] all: merge master (37f9a8f) into dev.typeparams" into dev.typeparams + 2021-06-25 1b60284c0a [dev.typeparams] cmd/compile: simplify variable capturing in unified IR + 2021-06-25 9fe7c38d3d [dev.typeparams] cmd/compile: fix TestUnifiedCompare + 2021-06-25 f4198f85d5 [dev.typeparams] cmd/compile: generate wrappers within unified IR + 2021-06-25 3f1a517a45 [dev.typeparams] cmd/compile: refactor "need to emit" logic for types + 2021-06-25 badb98364b [dev.typeparams] cmd/compile: switch CaptureVars to use syntax.Walk + 2021-06-25 ac2de11cfb [dev.typeparams] all: merge master (37f9a8f) into dev.typeparams + 2021-06-25 2493c72742 [dev.typeparams] cmd/compile: rewrite method call into method expression during escape analysis + 2021-06-25 f190a9280d [dev.typeparams] cmd/compile: simplify usemethod + 2021-06-25 aee209c044 [dev.typeparams] cmd/compile: catch another mis-used OCALLMETH in backend + 2021-06-24 75ad323773 [dev.typeparams] test: skip -G=3 testing under GOEXPERIMENT=unified + 2021-06-24 808dca3b2d [dev.typeparams] cmd/compile: suppress liveness diagnostics of wrappers + 2021-06-24 ddb09af1b8 [dev.typeparams] cmd/compile: add derived types and subdictionaries to dictionaries + 2021-06-24 df00abc61b [dev.typeparams] cmd/compile: skip escape analysis diagnostics for wrappers + 2021-06-24 b55cc6687d [dev.typeparams] cmd/compile: use r.hasTypeParams in typIdx + 2021-06-24 9bdbf73c98 [dev.typeparams] cmd/compile: simplify writer.collectDecls + 2021-06-23 ee4fc0c1bc [dev.typeparams] Fix issues related to dictionaries and method calls with embedded fields + 2021-06-23 8165256bc2 [dev.typeparams] cmd/compile/internal/syntax: go/ast-style walk API + 2021-06-23 a72a499c24 [dev.typeparams] cmd/compile: optimize wrapping of constant arguments + 2021-06-23 eb691fdd62 [dev.typeparams] cmd/compile: escape analysis of method expression calls + 2021-06-23 0a0e3a3dea [dev.typeparams] cmd/compile: move call logic from order.go to escape + 2021-06-23 574ec1c645 [dev.typeparams] cmd/compile: desugar ORECOVER into ORECOVERFP + 2021-06-23 9be8303df9 [dev.typeparams] cmd/compile: add ORECOVERFP, OGETCALLER{PC,SP} ops + 2021-06-23 70f4ab6565 [dev.typeparams] cmd/compile: remove SetClosureCalled(false) hacks + 2021-06-23 107b1fce64 [dev.typeparams] cmd/compile: explain why expandInline needed + 2021-06-23 99732b9070 [dev.typeparams] cmd/compile: refactor escape analysis of calls + 2021-06-23 1a445dab66 [dev.typeparams] cmd/compile: remove CallExpr.PreserveClosure + 2021-06-23 e59a19cceb [dev.typeparams] cmd/compile: simplify walkGoDefer + 2021-06-23 493e177639 [dev.typeparams] cmd/compile: allow typecheck of OCHECKNIL + 2021-06-23 c4e0c652fb [dev.typeparams] cmd/compile: refactor CaptureName + 2021-06-22 62095c66e0 [dev.typeparams] go/types: adjust logic for method expression arg naming + 2021-06-22 541612b974 [dev.typeparams] cmd/gofmt: remove typeparams guards + 2021-06-22 3e6219c6a9 [dev.typeparams] cmd/compile: split package escape into multiple files + 2021-06-22 077100dfcd [dev.typeparams] cmd/compile: remove special escape analysis tags + 2021-06-22 859d903b06 [dev.typeparams] cmd/compile: add -d=unifiedquirks for quirks mode + 2021-06-22 d626ba27bb [dev.typeparams] all: merge master (16e82be) into dev.typeparams + 2021-06-21 844c076359 [dev.typeparams] cmd/compile: simplify import* functions + 2021-06-21 e57da8e53c [dev.typeparams] cmd/compile: explain why reader.funcExt need to set n.Defn + 2021-06-21 3f7f72a258 [dev.typeparams] cmd/compile: fold reader checking type params logic to separate method + 2021-06-20 d24c90a153 [dev.typeparams] cmd/compile: explain how pkgReader.typIdx handles alias cyclic + 2021-06-18 3f7a3133da [dev.typeparams] cmd/compile: add "toolstash -cmp"-like test of -d=unified + 2021-06-18 e9c01f9804 [dev.typeparams] cmd/compile: add missing copy of Field.Embedded in type substituter. + 2021-06-18 6fa0437958 [dev.typeparams] cmd/compile: add documentation for unified IR pipeline + 2021-06-18 54fe57bc22 [dev.typeparams] cmd/compile: record writer's stack at export data sync points + 2021-06-18 78aa251ace [dev.typeparams] cmd/go: include new internal packages in TestNewReleaseRebuildsStalePackagesInGOPATH + 2021-06-18 2a7900762c [dev.typeparams] go/types: report better error for invalid untyped operation + 2021-06-18 90096f445e [dev.typeparams] cmd/compile/internal/syntax: convert (most) parser tests to new type set syntax + 2021-06-17 feec53c4e5 [dev.typeparams] cmd/compile: skip types2 GC test during bootstrapping + 2021-06-17 fb84d213a8 [dev.typeparams] reflect: support big endian architectures in callMethod + 2021-06-17 9f50d9a0b4 [dev.typeparams] internal/reflectlite: remove unused ptrSize + 2021-06-17 890a8407a9 [dev.typeparams] internal/reflectlite: use goarch.PtrSize instead of the duplicated ptrSize [generated] + 2021-06-17 bfd9b63f12 [dev.typeparams] reflect: delete unused ptrSize and PtrSize + 2021-06-17 95c104ee61 [dev.typeparams] reflect: use goarch.PtrSize instead of the duplicated ptrSize [generated] + 2021-06-17 2e600fb8b3 [dev.typeparams] runtime/internal/sys: remove unused Goarch* and Goos* constants + 2021-06-17 46e1e74a86 [dev.typeparams] runtime: replace Goarch* constants with internal/goarch versions [generated] + 2021-06-17 7b0e9cae66 [dev.typeparams] runtime: replace Goos* constants with internal/goos versions [generated] + 2021-06-17 81a6a4354b [dev.typeparams] internal/goarch,internal/goos: rename Goos and Goarch constants + 2021-06-17 33d1b82d16 [dev.typeparams] runtime/internal/sys: replace ArchFamily and constants with goarch + 2021-06-17 85b12a8563 [dev.typeparams] runtime,runtime/internal/sys: remove unused BigEndian + 2021-06-17 9a93072a07 [dev.typeparams] runtime/internal/sys: replace BigEndian with goarch.BigEndian [generated] + 2021-06-17 9c58e399a4 [dev.typeparams] runtime: fix import sort order [generated] + 2021-06-17 671954e72e [dev.typeparams] runtime/internal/sys: replace GOOS with goos.GOOS + 2021-06-17 5c028751bd [dev.typeparams] runtime/internal/sys: replace uses of GOARCH with goarch.GOARCH + 2021-06-17 6d89c90fb1 [dev.typeparams] runtime/internal/sys: remove unused PtrSize + 2021-06-17 6d85891b29 [dev.typeparams] runtime: replace uses of runtime/internal/sys.PtrSize with internal/goarch.PtrSize [generated] + 2021-06-17 122f5e16d6 [dev.typeparams] internal/goarch,internal/goos: explode runtime/internal/sys into pieces + 2021-06-17 804ecc2581 [dev.typeparams] all: add GOEXPERIMENT=unified knob + 2021-06-17 b14fd720a8 [dev.typeparams] cmd/compile: make types2 report better error for invalid untyped operation + 2021-06-17 8115ae198d [dev.typeparams] go/types: disallow ~T where T is a defined type or an interface + 2021-06-17 6237e441bc [dev.typeparams] go/types: disallow type list handling + 2021-06-17 6e50f4f111 [dev.typeparams] go/types: convert testdata/check tests to type set syntax + 2021-06-17 b6fc4d01a8 [dev.typeparams] go/types: convert testdata/fixedbugs tests to type set sytax + 2021-06-17 795f4475e5 [dev.typeparams] go/types: convert testdata/examples tests to type set sytax + 2021-06-17 8e14a9cf04 [dev.typeparams] go/types: eliminate need for unpack and asUnion functions + 2021-06-17 aecfd5c29e [dev.typeparams] go/types: clean up type set/union intersection + 2021-06-17 c7a460526e [dev.typeparams] go/types: replace Sum type with Union type + 2021-06-17 e7451f6616 [dev.typeparams] go/types: accept embedded interface elements + 2021-06-17 54f854fb41 [dev.typeparams] go/parser: accept embedded type literals + 2021-06-17 ab4b3c4b15 [dev.typeparams] go/parser: accept "~" and "|" interface elements + 2021-06-17 7c5d7a4caf [dev.typeparams] go/token, go/scanner: add the "~" operator + 2021-06-17 ad59efb027 [dev.typeparams] go/ast: remove the typeparams build constraint + 2021-06-16 1ba2074440 [dev.typeparams] cmd/compile/internal/types2: support local defined types + 2021-06-16 dd95a4e3db [dev.typeparams] cmd/compile: simplify SSA devirtualization + 2021-06-16 132ea56d29 [dev.typeparams] cmd/compile: fix crawling of embeddable types + 2021-06-16 8f95eaddd3 [dev.typeparams] cmd/compile: fix missing sync implicit types + 2021-06-16 a4121d7dd6 [dev.typeparams] Revert "[dev.typeparams] runtime: make deferproc take a func() argument" + 2021-06-16 4d6f9d60cf [dev.typeparams] all: merge master (785a8f6) into dev.typeparams + 2021-06-16 ee0420d3b5 [dev.typeparams] cmd/compile: factor out implicit/explicit handling + 2021-06-15 cf1ae5fc36 [dev.typeparams] cmd/compile: add -d=unified flag to enable unified IR + 2021-06-15 79cd1687e6 [dev.typeparams] cmd/compile: unified IR construction + 2021-06-14 ea438bda85 [dev.typeparams] all: merge master (fdab5be) into dev.typeparams + 2021-06-13 8eeaf961c5 [dev.typeparams] cmd/compile: move //go:embed -lang check to noder + 2021-06-12 f1b1c2f67f [dev.typeparams] cmd/compile: simplify NewClosureFunc + 2021-06-12 db7c868307 [dev.typeparams] test: add string quoting support to test/run.go + 2021-06-12 0132b91127 [dev.typeparams] cmd/compile: refactor closure construction + 2021-06-12 8f00eb0099 [dev.typeparams] cmd/compile: avoid ir.DeepCopy in noder.constDecl + 2021-06-12 2954f11ead [dev.typeparams] cmd/compile: scaffolding for export data experiments + 2021-06-11 c93d5d1a52 [dev.typeparams] all: always enable regabig on AMD64 + 2021-06-11 2fe324858b [dev.typeparams] internal/buildcfg: always enable regabiwrappers on AMD64 + 2021-06-11 e0e9fb8aff [dev.typeparams] runtime: simplify defer record allocation + 2021-06-11 4468e1cfb9 [dev.typeparams] runtime: allow newproc split stack + 2021-06-11 ef6c5be160 [dev.typeparams] cmd/compile: fix wrapper generation for imported generics + 2021-06-11 4a735ce068 [dev.typeparams] cmd/compile: add "check" field to noder.gcimports + 2021-06-11 61888d47c4 [dev.typeparams] cmd/compile: allow embedding Type.Vargen into Sym.Name + 2021-06-11 62e32dd386 [dev.typeparams] cmd/compile: extract SetBaseTypeIndex function + 2021-06-11 18788245ea [dev.typeparams] cmd/compile: add ir.TypeNodeAt + 2021-06-09 b20747334a [dev.typeparams] cmd/compile, runtime: simplify opendefer metadata + 2021-06-09 c0a86c10f1 [dev.typeparams] cmd/compile: simplify openDeferSave + 2021-06-08 74b0b2772a [dev.typeparams] cmd/compile, runtime: remove _defer.siz field + 2021-06-08 b80a4c56f0 [dev.typeparams] runtime: allow deferproc split stack + 2021-06-08 83da32749c [dev.typeparams] runtime: make deferproc take a func() argument + 2021-06-08 8e5304f729 [dev.typeparams] cmd/compile, runtime: remove the siz argument of newproc/deferproc + 2021-06-08 00d01b5786 [dev.typeparams] runtime: remove tracebackdefers + 2021-06-08 12b37b713f [dev.typeparams] runtime: remove variadic defer/go calls + 2021-06-08 5b350505da [dev.typeparams] cmd/compile: remove variadic defer calls + 2021-06-08 a9de78ac88 [dev.typeparams] cmd/compile, runtime: always enable defer/go wrapping + 2021-06-08 e58bddde70 [dev.typeparams] internal/goexperiment: regenerate generated files + 2021-06-08 0c40cb4a07 [dev.typeparams] cmd/compile/internal/types2: provide valid signature in errors involving method expressions + 2021-06-07 74d46381b2 [dev.typeparams] cmd/compile: do extra markObjects during iexport to deal with generics + 2021-06-07 ccfb0ce8df [dev.typeparams] cmd/compile: convert generic values to interface type using dictionary + 2021-06-07 cf4b6dc48e [dev.typeparams] cmd/compile: allow conversions from type parameter to interface + 2021-06-07 bcb3927cb5 [dev.typeparams] cmd/compile: introduce IsTypeParam() helper + 2021-06-07 f0c97219a3 Merge "[dev.typeparams] all: merge master (8212707) into dev.typeparams" into dev.typeparams + 2021-06-07 201d55e637 [dev.typeparams] cmd/compile: create .dict Param in the package of the instantiated function + 2021-06-07 0e39cdc0e9 [dev.typeparams] all: merge master (8212707) into dev.typeparams + 2021-06-07 7c8a5be2d6 [dev.typeparams] go/types: factor out constraint satisfaction check + 2021-06-07 7497e57a39 [dev.typeparams] go/types: simplify Interface accessors + 2021-06-07 2f26adc232 [dev.typeparams] go/types: re-use existing code for Interface.Complete + 2021-06-07 1395952075 [dev.typeparams] go/types: add Named.SetTParams and Named.Orig methods + 2021-06-07 991dca0112 [dev.typeparams] go/types: move signature checking into separate file + 2021-06-06 c23294d6b3 [dev.typeparams] cmd/compile/internal/types2: return Universe for ((*Package)(nil)).Scope() + 2021-06-05 a5be3eaee2 [dev.typeparams] cmd/compile: refactor export writing + 2021-06-05 4c072c94dc [dev.typeparams] cmd/compile: refactor import reading + 2021-06-05 4e001a8d9e [dev.typeparams] runtime/race: make test compatible with types2 + 2021-06-05 246a5570be [dev.typeparams] cmd/compile: rename (types2.Inferred.)Targs to TArgs + 2021-06-05 692399fbaa [dev.typeparams] cmd/compile/internal/syntax: not all index expressions can be instantiated types + 2021-06-04 a94e4f5a85 [dev.typeparams] cmd/compile: point StructKeyExpr at the types.Field + 2021-06-04 bad388744b [dev.typeparams] cmd/compile: handle dictionaries for top-level instantiations + 2021-06-04 de61465156 [dev.typeparams] cmd/compile: allow inlining in instantiated functions + 2021-06-04 4cf7f5f694 [dev.typeparams] test: test regabidefers in live.go + 2021-06-04 3298c749ac [dev.typeparams] runtime: undo go'd closure argument workaround + 2021-06-04 46beeed0ac [dev.typeparams] cmd/compile: allow go'd closure to escape when compiling runtime + 2021-06-04 8e6dfe1b31 [dev.typeparams] cmd/compile: export/import of recursive generic types. + 2021-06-04 93a886a165 [dev.typeparams] go/types: move struct checking into separate file + 2021-06-04 ffc74ad5d3 [dev.typeparams] go/types: move interface checking into separate file + 2021-06-04 090a17c998 [dev.typeparams] go/types: use correct type parameter list in missingMethod + 2021-06-04 62c40878e4 [dev.typeparams] go/types: better recv Var for method expressions + 2021-06-04 e32fab145b [dev.typeparams] go/types: fix panic with nil package name + 2021-06-04 cd6e9df446 [dev.typeparams] go/types: print "incomplete" for interfaces in debug mode only + 2021-06-04 655246f99a [dev.typeparams] go/types: make TestManual work for directories + 2021-06-04 d7592ab424 [dev.typeparams] go/types: implement types.Instantiate + 2021-06-04 410fa4c75b [dev.typeparams] go/types: rename Inferred.Targs to TArgs + 2021-06-04 298149a915 [dev.typeparams] go/types: use Checker-provided type parameter IDs when possible + 2021-06-04 2175e2f573 [dev.typeparams] cmd/compile: lazy import resolution for types2 + 2021-06-03 4d2b528795 [dev.typeparams] internal/buildcfg: turn on register ABI by default on ARM64 + 2021-06-03 5f034f9b46 [dev.typeparams] internal/buildcfg: turn on regabireflect by default on ARM64 + 2021-06-03 026480d06b [dev.typeparams] cmd/compile: allow nil Syms in Sym.Less + 2021-06-03 a2d6a2caeb [dev.typeparams] internal/buildcfg: turn on regabiwrappers by default on ARM64 + 2021-06-03 55b4310acd [dev.typeparams] runtime: crash the GC at clobberdead pointer on ARM64 + 2021-06-03 6b1e4430bb [dev.typeparams] cmd/compile: implement clobberdead mode on ARM64 + 2021-06-03 1c947e4f31 [dev.typeparams] cmd/compile: properly copy tilde value for unions in types2-to-types1 conversion + 2021-06-03 e9ba0750b6 [dev.typeparams] reflect: guard abi_test.go with regabiargs build tag + 2021-06-03 28bd325e41 [dev.typeparams] runtime: use ABIInternal callbackWrap in callbackasm1 on ARM64 + 2021-06-03 3de4986852 [dev.typeparams] runtime: call cgocallbackg indirectly on ARM64 + 2021-06-03 5a40fab19f [dev.typeparams] runtime, internal/bytealg: port performance-critical functions to register ABI on ARM64 + 2021-06-03 370ff5ff96 [dev.typeparams] test: update all the typeparam tests to use the new union/tilde syntax + 2021-06-03 5a008a92e8 [dev.typeparams] internal/bytealg: call memeqbody directly in memequal_varlen on ARM64 + 2021-06-03 165d39a1d4 [dev.typeparams] test: adjust codegen test for register ABI on ARM64 + 2021-06-03 b5f37faf3b [dev.typeparams] cmd/internal/goobj: add duffzero/duffcopy to builtin list + 2021-06-03 9c054f4137 [dev.typeparams] cmd/link: take function address in assembly in TestFuncAlign + 2021-06-03 95c618e99a [dev.typeparams] cmd/compile/internal/types2: add Config.AllowTypeLists to control type list handling + 2021-06-03 10d6b36ca3 [dev.typeparams] cmd/compile/internal/types2: disallow ~T where T is a defined type or an interface + 2021-06-02 8cdce85bdf [dev.typeparams] cmd/compile/internal/types2: convert testdata/check tests to type set sytax + 2021-06-02 c790964ae4 [dev.typeparams] cmd/compile/internal/types2: convert testdata/fixedbugs tests to type set sytax + 2021-06-02 9a99e728fe [dev.typeparams] cmd/compile/internal/types2: convert testdata/examples tests to type set sytax + 2021-06-02 d36b7d7bdd [dev.typeparams] cmd/compile/internal/importer: review of gcimporter_test.go + 2021-06-02 3c1d502a19 [dev.typeparams] cmd/compile/internal/types2: eliminate need for unpack and asUnion functions + 2021-06-02 848b58e473 [dev.typeparams] cmd/compile/internal/types2: clean up type set/union intersection + 2021-06-02 97cb0113a3 [dev.typeparams] cmd/compile: fix export/import of constants with typeparam type + 2021-06-02 6b1cdeaef3 [dev.typeparams] cmd/link: include "go build" output in test logs + 2021-06-02 c7b9811581 [dev.typeparams] cmd/compile/internal/importer: review of gcimporter.go + 2021-06-02 498a48327f [dev.typeparams] cmd/compile: sort iface fields before expansion + 2021-06-02 cc52fdd1f3 [dev.typeparams] cmd/compile/internal/importer: review of exportdata.go + 2021-06-02 8c5c5a9e69 [dev.typeparams] cmd/compile/internal/importer: review of support.go + 2021-06-02 589e32dbdf [dev.typeparams] cmd/compile/internal/types2: replace Sum type with Union type + 2021-06-02 7b876def6c [dev.typeparams] cmd/compile: add dictionary argument to generic functions + 2021-06-02 aa9cfdf775 [dev.typeparams] runtime: update ABIInternal assembly with register ABI on ARM64 + 2021-06-02 0c123cdf8b [dev.typeparams] reflect: implement register ABI for MakeFunc etc. on ARM64 + 2021-06-02 2e4b79949f [dev.typeparams] runtime: implement register ABI for reflectcall on ARM64 + 2021-06-02 dc2cb529a8 [dev.typeparams] runtime: mark assembly functions called directly from compiler ABIInternal + 2021-06-02 d2b435117d test: fix error check messages for 2 types2 tests + 2021-06-02 b1f48e8add [dev.typeparams] cmd/compile: fix formatting + 2021-06-01 58ad36b359 [dev.typeparams] internal/buildcfg: allow regabi GOEXPERIMENTs on ARM64 + 2021-06-01 c3639918d1 [dev.typeparams] internal/abi: define ARM64 register ABI constants + 2021-06-01 6633dc8b09 [dev.typeparams] reflect: call ABI0 spill/unspill functions on AMD64 + 2021-06-01 e4003463ff [dev.typeparams] cmd/compile: match register-ABI version of memmove call on ARM64 + 2021-06-01 8e7abefdaa [dev.typeparams] cmd/compile: update ARM64 CALL* ops for register ABI + 2021-06-01 c9d1a2bdd2 [dev.typeparams] all: merge master (2725522) into dev.typeparams + 2021-06-01 2580e9a160 [dev.typeparams] cmd/compile: refactor noder/irgen helpers + 2021-06-01 4b10e4c547 [dev.typeparams] cmd/compile: handle ONONAME in subster.node + 2021-05-31 f32f4f58d9 [dev.typeparams] cmd/compile: simplify formatting of defined types + 2021-05-27 22f5ece3b1 [dev.typeparams] cmd/compile/internal/noder: refactor irgen import handling + 2021-05-27 417955d151 [dev.typeparams] cmd/compile/internal/inline: refactor mkinlcall + 2021-05-27 88583a2a66 [dev.typeparams] test: trim list of expected -G=3 failures + 2021-05-27 ea522bc546 [dev.typeparams] cmd/compile: add and use ir.RawOrigExpr + 2021-05-27 de5d1aca5e [dev.typeparams] cmd/compile: tweaks to match types2 + 2021-05-27 c2c1b53b39 [dev.typeparams] cmd/compile: use old export format if not compiling with generics + 2021-05-27 8c99e5db43 [dev.typeparams] cmd/compile/internal/types2: ensure that Named.check is nilled out once it is expanded + 2021-05-27 963f33b03b [dev.typeparams] cmd/compile: enable register args on ARM64 + 2021-05-27 06df0ee7fa [dev.typeparams] cmd/compile: add arg/result register load/spill code on ARM64 + 2021-05-26 1ec056244e [dev.typeparams] cmd/compile: inlining tweaks for toolstash + 2021-05-26 6da1661371 [dev.typeparams] cmd/compile: simplify inlining variadic calls + 2021-05-26 e99e9a6e01 [dev.typeparams] cmd/compile: simplify ~r/~b naming + 2021-05-26 4c68edd1fe [dev.typeparams] cmd/compile: add morestack arg spilling code on ARM64 + 2021-05-26 a4b2a04bc5 [dev.typeparams] cmd/internal/obj/arm64: use ABI-compatible registers in function prologue + 2021-05-26 4bb927f82e [dev.typeparams] cmd/compile: define ARM64 parameter registers + 2021-05-26 cf23daeda3 [dev.typeparams] cmd/compile: do not schedule in-register args late, even for block control + 2021-05-26 4ed6317e73 [dev.typeparams] cmd/compile: always generate (*T).M wrappers for instantiated methods + 2021-05-26 b7f7d1cd7b [dev.typeparams] cmd/compile: get type aliases working with generic types + 2021-05-26 95748d1b74 [dev.typeparams] cmd/compile: avoid some redundant type construction + 2021-05-26 fd54ae8b0c [dev.typeparams] cmd/compile: adding union support in types1 + 2021-05-25 6c9e1c58bc [dev.typeparams] test: fix and update run.go's generics testing + 2021-05-25 5c1e119d48 [dev.typeparams] all: merge master (f22ec51) into dev.typeparams + 2021-05-24 155dc0e541 [dev.typeparams] cmd/compile/internal/types2: factor out constraint satisfaction check + 2021-05-24 5770d7a637 [dev.typeparams] cmd/compile/internal/types2: accept embedded interface elements + 2021-05-24 cc7ceea585 [dev.typeparams] cmd/compile/internal/types2: simplify Interface accessors + 2021-05-24 1608577e05 [dev.typeparams] cmd/compile/internal/types2: re-use existing code for Interface.Complete + 2021-05-24 d48f6d9f6f [dev.typeparams] Don't check typecheck(3) on transform, so no need to export/import it + 2021-05-24 4c50721cda [dev.typeparams] cmd/compile: Fix handling of Name nodes during stenciling + 2021-05-24 dcaf785add [dev.typeparams] internal/buildcfg: enable defer/go wrapping everywhere + 2021-05-24 f642742678 [dev.typeparams] reflect: use internal/abi.FuncPCABI0 to take address of assembly functions + 2021-05-24 e0844acfc8 [dev.typeparams] runtime/pprof: replace funcPC with internal/abi.FuncPCABIInternal + 2021-05-24 ae26b45113 [dev.typeparams] cmd/compile/abi-internal.md: specify ARM64 register-based ABI + 2021-05-24 b18b2d372e [dev.typeparams] cmd/compile: fix case where we were copying a raw Node + 2021-05-21 5b1120fac7 [dev.typeparams] cmd/compile: fix handling of Nname field in (*subster).tstruct. + 2021-05-21 8d2b4cb6cc [dev.typeparams] cmd/compile: fixing import of comm clauses/closures in generic functions + 2021-05-21 626e89c261 [dev.typeparams] runtime: replace funcPC with internal/abi.FuncPCABIInternal + 2021-05-21 6a81e063dd [dev.typeparams] runtime: fix misuse of funcPC + 2021-05-21 7d928460a1 [dev.typeparams] runtime: use internal/abi.FuncPCABI0 to reference ABI0 assembly symbols + 2021-05-21 0e0a1f94f3 [dev.typeparams] runtime: use ABI0 handler addresses on Windows/ARM64 + 2021-05-21 fb42fb705d [dev.typeparams] runtime: use internal/abi.FuncPCABI0 to take address of assembly functions + 2021-05-21 21db1d193c [dev.typeparams] runtime: fix newproc arg size on ARM + 2021-05-21 b1a398cf0f [dev.typeparams] cmd/compile: add import/export of calls to builtin functions + 2021-05-21 ccbfbb1c33 [dev.typeparams] cmd/compile: export OFUNCINST and OSELRECV2 nodes (for generic functions) + 2021-05-21 243076da64 [dev.typeparams] cmd/compile/internal/types2: move signature checking into separate file + 2021-05-21 cfe0250497 [dev.typeparams] cmd/compile/internal/types2: move struct checking into separate file + 2021-05-21 211244e172 [dev.typeparams] cmd/compile/internal/types2: move interface checking into separate file + 2021-05-21 7b3ee6102d [dev.typeparams] cmd/compile: move to new export version, keep reading previous version + 2021-05-21 15ad61aff5 [dev.typeparams] cmd/compile: get export/import of generic types & functions working + 2021-05-20 468efd5e2f [dev.typeparams] cmd/compile: change method instantiations back to being functions + 2021-05-20 382c5dd5f7 [dev.typeparams] internal/buildcfg: turn on register ABI on all AMD64 platforms + 2021-05-20 240d6d00ca [dev.typeparams] cmd/link: mangle symbol ABI name on Plan 9 + 2021-05-20 ed2001232a [dev.typeparams] runtime: use internal/abi.FuncPCABI0 for sigtramp PC on Plan 9 + 2021-05-20 02117775d1 [dev.typeparams] cmd/compile, runtime: do not zero X15 on Plan 9 + 2021-05-20 a5cd89b8c3 [dev.typeparams] runtime: use internal/abi.FuncPCABI0 and cgo_unsafe_args for Solaris syscall wrappers + 2021-05-19 6bdfff112f [dev.typeparams] cmd/compile/internal/types2: use correct type parameter list in missingMethod + 2021-05-19 eff66248ea [dev.typeparams] cmd/compile/internal/types2: implement package height + 2021-05-19 3f6f12972b [dev.typeparams] runtime: use internal/abi.FuncPCABI0 for sigtramp PC on DragonflyBSD + 2021-05-19 b69347d24a [dev.typeparams] cmd/compile: simplify tparam's type + 2021-05-19 701bd60646 [dev.typeparams] cmd/compile: simplify targ's type + 2021-05-19 c2966ae272 [dev.typeparams] cmd/compile/internal/ir: more position details in dump + 2021-05-19 fb79f6955e [dev.typeparams] cmd/compile/internal/importer: implement position reading + 2021-05-19 c92ae885d9 [dev.typeparams] cmd/compile/internal/types2: better recv Var for method expressions + 2021-05-19 90b6e72605 [dev.typeparams] cmd/compile/internal/types2: tweak anonymous parameter position + 2021-05-19 fc9e64cc98 [dev.typeparams] cmd/compile/internal/types2: fix types2 panic + 2021-05-19 c81562d99f [dev.typeparams] test: update regress tests for types2 + 2021-05-19 81b22480cf [dev.typeparams] cmd/compile/internal/syntax: accept embedded type literals + 2021-05-18 f3fc8b5779 [dev.typeparams] cmd/compile: simplify type alias handling for export + 2021-05-18 140cd7c1d3 [dev.typeparams] runtime: use internal/abi.FuncPCABI0 for syscall wrappers on OpenBSD + 2021-05-18 bbc0059b03 [dev.typeparams] test: run more tests with -G=3 + 2021-05-18 f208f1ac99 [dev.typeparams] cmd/compile/internal/ir: more useful Fatalfs + 2021-05-18 c7dd3e305d [dev.typeparams] all: merge master (690a8c3) into dev.typeparams + 2021-05-18 077f03f4d8 [dev.typeparams] runtime: use internal/abi.FuncPCABI0 for sigtramp PC on FreeBSD + 2021-05-17 f39200b037 [dev.typeparams] go/constant: implement Kind.String + 2021-05-14 0d1e293b23 [dev.typeparams] cmd/compile/internal/types2: print "incomplete" for interfaces in debug mode only + 2021-05-14 03ed590e51 [dev.typeparams] cmd/compile/internal/types2: use Checker-provided type parameter IDs when possible + 2021-05-13 c3fa51c9a2 cmd/compile: changed representation of typeparam bound in types1 + 2021-05-13 9daf3cca82 [dev.typeparams] cmd/compile: keep instantiated method as a method, rather than converting to function + 2021-05-12 04f65d394c [dev.typeparams] cmd/compile: fix use of method values with stenciled methods + 2021-05-11 d2b3efcb90 [dev.typeparams] all: merge master (9b84814) into dev.typeparams + 2020-12-22 6dc2c16f95 [dev.cmdgo] codereview.cfg: add config for dev.cmdgo Change-Id: I252f9f64197b9fd0d5b230aa83941c3cfcbda6cf --- 5abfd2379b2e7319d3f08f496c12acdb50e1065a diff --cc api/next.txt index 6b568e2857,3eb7f3f797..b1b9c1d7b1 --- a/api/next.txt +++ b/api/next.txt @@@ -1,133 -1,108 +1,144 @@@ - pkg compress/lzw, method (*Reader) Close() error - pkg compress/lzw, method (*Reader) Read([]uint8) (int, error) - pkg compress/lzw, method (*Reader) Reset(io.Reader, Order, int) - pkg compress/lzw, method (*Writer) Close() error - pkg compress/lzw, method (*Writer) Reset(io.Writer, Order, int) - pkg compress/lzw, method (*Writer) Write([]uint8) (int, error) - pkg compress/lzw, type Reader struct - pkg compress/lzw, type Writer struct - pkg crypto/tls, method (*CertificateRequestInfo) Context() context.Context - pkg crypto/tls, method (*ClientHelloInfo) Context() context.Context - pkg crypto/tls, method (*Conn) HandshakeContext(context.Context) error - pkg debug/elf, const SHT_MIPS_ABIFLAGS = 1879048234 - pkg debug/elf, const SHT_MIPS_ABIFLAGS SectionType - pkg encoding/csv, method (*Reader) FieldPos(int) (int, int) - pkg go/ast, method (*FuncDecl) IsMethod() bool - pkg go/build, type Context struct, ToolTags []string - pkg go/parser, const SkipObjectResolution = 64 - pkg go/parser, const SkipObjectResolution Mode - pkg go/types, type Config struct, GoVersion string - pkg io/fs, func FileInfoToDirEntry(FileInfo) DirEntry - pkg net, method (*ParseError) Temporary() bool - pkg net, method (*ParseError) Timeout() bool - pkg net, method (IP) IsPrivate() bool - pkg reflect, func VisibleFields(Type) []StructField - pkg reflect, method (Method) IsExported() bool - pkg reflect, method (StructField) IsExported() bool - pkg runtime/cgo (darwin-amd64-cgo), func NewHandle(interface{}) Handle - pkg runtime/cgo (darwin-amd64-cgo), method (Handle) Delete() - pkg runtime/cgo (darwin-amd64-cgo), method (Handle) Value() interface{} - pkg runtime/cgo (darwin-amd64-cgo), type Handle uintptr - pkg runtime/cgo (freebsd-386-cgo), func NewHandle(interface{}) Handle - pkg runtime/cgo (freebsd-386-cgo), method (Handle) Delete() - pkg runtime/cgo (freebsd-386-cgo), method (Handle) Value() interface{} - pkg runtime/cgo (freebsd-386-cgo), type Handle uintptr - pkg runtime/cgo (freebsd-amd64-cgo), func NewHandle(interface{}) Handle - pkg runtime/cgo (freebsd-amd64-cgo), method (Handle) Delete() - pkg runtime/cgo (freebsd-amd64-cgo), method (Handle) Value() interface{} - pkg runtime/cgo (freebsd-amd64-cgo), type Handle uintptr - pkg runtime/cgo (freebsd-arm-cgo), func NewHandle(interface{}) Handle - pkg runtime/cgo (freebsd-arm-cgo), method (Handle) Delete() - pkg runtime/cgo (freebsd-arm-cgo), method (Handle) Value() interface{} - pkg runtime/cgo (freebsd-arm-cgo), type Handle uintptr - pkg runtime/cgo (linux-386-cgo), func NewHandle(interface{}) Handle - pkg runtime/cgo (linux-386-cgo), method (Handle) Delete() - pkg runtime/cgo (linux-386-cgo), method (Handle) Value() interface{} - pkg runtime/cgo (linux-386-cgo), type Handle uintptr - pkg runtime/cgo (linux-amd64-cgo), func NewHandle(interface{}) Handle - pkg runtime/cgo (linux-amd64-cgo), method (Handle) Delete() - pkg runtime/cgo (linux-amd64-cgo), method (Handle) Value() interface{} - pkg runtime/cgo (linux-amd64-cgo), type Handle uintptr - pkg runtime/cgo (linux-arm-cgo), func NewHandle(interface{}) Handle - pkg runtime/cgo (linux-arm-cgo), method (Handle) Delete() - pkg runtime/cgo (linux-arm-cgo), method (Handle) Value() interface{} - pkg runtime/cgo (linux-arm-cgo), type Handle uintptr - pkg runtime/cgo (netbsd-386-cgo), func NewHandle(interface{}) Handle - pkg runtime/cgo (netbsd-386-cgo), method (Handle) Delete() - pkg runtime/cgo (netbsd-386-cgo), method (Handle) Value() interface{} - pkg runtime/cgo (netbsd-386-cgo), type Handle uintptr - pkg runtime/cgo (netbsd-amd64-cgo), func NewHandle(interface{}) Handle - pkg runtime/cgo (netbsd-amd64-cgo), method (Handle) Delete() - pkg runtime/cgo (netbsd-amd64-cgo), method (Handle) Value() interface{} - pkg runtime/cgo (netbsd-amd64-cgo), type Handle uintptr - pkg runtime/cgo (netbsd-arm-cgo), func NewHandle(interface{}) Handle - pkg runtime/cgo (netbsd-arm-cgo), method (Handle) Delete() - pkg runtime/cgo (netbsd-arm-cgo), method (Handle) Value() interface{} - pkg runtime/cgo (netbsd-arm-cgo), type Handle uintptr - pkg runtime/cgo (netbsd-arm64-cgo), func NewHandle(interface{}) Handle - pkg runtime/cgo (netbsd-arm64-cgo), method (Handle) Delete() - pkg runtime/cgo (netbsd-arm64-cgo), method (Handle) Value() interface{} - pkg runtime/cgo (netbsd-arm64-cgo), type Handle uintptr - pkg runtime/cgo (openbsd-386-cgo), func NewHandle(interface{}) Handle - pkg runtime/cgo (openbsd-386-cgo), method (Handle) Delete() - pkg runtime/cgo (openbsd-386-cgo), method (Handle) Value() interface{} - pkg runtime/cgo (openbsd-386-cgo), type Handle uintptr - pkg runtime/cgo (openbsd-amd64-cgo), func NewHandle(interface{}) Handle - pkg runtime/cgo (openbsd-amd64-cgo), method (Handle) Delete() - pkg runtime/cgo (openbsd-amd64-cgo), method (Handle) Value() interface{} - pkg runtime/cgo (openbsd-amd64-cgo), type Handle uintptr - pkg syscall (openbsd-386), const MSG_CMSG_CLOEXEC = 2048 - pkg syscall (openbsd-386), const MSG_CMSG_CLOEXEC ideal-int - pkg syscall (openbsd-386-cgo), const MSG_CMSG_CLOEXEC = 2048 - pkg syscall (openbsd-386-cgo), const MSG_CMSG_CLOEXEC ideal-int - pkg syscall (openbsd-amd64), const MSG_CMSG_CLOEXEC = 2048 - pkg syscall (openbsd-amd64), const MSG_CMSG_CLOEXEC ideal-int - pkg syscall (openbsd-amd64-cgo), const MSG_CMSG_CLOEXEC = 2048 - pkg syscall (openbsd-amd64-cgo), const MSG_CMSG_CLOEXEC ideal-int - pkg syscall (windows-386), type SysProcAttr struct, AdditionalInheritedHandles []Handle - pkg syscall (windows-386), type SysProcAttr struct, ParentProcess Handle - pkg syscall (windows-amd64), type SysProcAttr struct, AdditionalInheritedHandles []Handle - pkg syscall (windows-amd64), type SysProcAttr struct, ParentProcess Handle + pkg syscall (darwin-amd64), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (darwin-amd64), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (darwin-amd64), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (darwin-amd64), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (darwin-amd64-cgo), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (darwin-amd64-cgo), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (darwin-amd64-cgo), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (darwin-amd64-cgo), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (freebsd-386), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (freebsd-386), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (freebsd-386), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (freebsd-386), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (freebsd-386-cgo), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (freebsd-386-cgo), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (freebsd-386-cgo), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (freebsd-386-cgo), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (freebsd-amd64), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (freebsd-amd64), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (freebsd-amd64), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (freebsd-amd64), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (freebsd-amd64-cgo), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (freebsd-amd64-cgo), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (freebsd-amd64-cgo), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (freebsd-amd64-cgo), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (freebsd-arm), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (freebsd-arm), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (freebsd-arm), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (freebsd-arm), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (freebsd-arm-cgo), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (freebsd-arm-cgo), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (freebsd-arm-cgo), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (freebsd-arm-cgo), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (linux-386), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (linux-386), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (linux-386), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (linux-386), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (linux-386-cgo), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (linux-386-cgo), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (linux-386-cgo), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (linux-386-cgo), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (linux-amd64), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (linux-amd64), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (linux-amd64), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (linux-amd64), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (linux-amd64-cgo), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (linux-amd64-cgo), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (linux-amd64-cgo), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (linux-amd64-cgo), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (linux-arm), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (linux-arm), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (linux-arm), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (linux-arm), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (linux-arm-cgo), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (linux-arm-cgo), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (linux-arm-cgo), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (linux-arm-cgo), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (netbsd-386), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (netbsd-386), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (netbsd-386), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (netbsd-386), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (netbsd-386-cgo), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (netbsd-386-cgo), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (netbsd-386-cgo), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (netbsd-386-cgo), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (netbsd-amd64), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (netbsd-amd64), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (netbsd-amd64), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (netbsd-amd64), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (netbsd-amd64-cgo), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (netbsd-amd64-cgo), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (netbsd-amd64-cgo), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (netbsd-amd64-cgo), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (netbsd-arm), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (netbsd-arm), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (netbsd-arm), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (netbsd-arm), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (netbsd-arm-cgo), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (netbsd-arm-cgo), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (netbsd-arm-cgo), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (netbsd-arm-cgo), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (netbsd-arm64), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (netbsd-arm64), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (netbsd-arm64), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (netbsd-arm64), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (netbsd-arm64-cgo), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (netbsd-arm64-cgo), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (netbsd-arm64-cgo), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (netbsd-arm64-cgo), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (openbsd-386), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (openbsd-386), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (openbsd-386), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (openbsd-386), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (openbsd-386-cgo), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (openbsd-386-cgo), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (openbsd-386-cgo), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (openbsd-386-cgo), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (openbsd-amd64), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (openbsd-amd64), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (openbsd-amd64), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (openbsd-amd64), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (openbsd-amd64-cgo), func RecvfromInet4(int, []uint8, int, *SockaddrInet4) (int, error) + pkg syscall (openbsd-amd64-cgo), func RecvfromInet6(int, []uint8, int, *SockaddrInet6) (int, error) + pkg syscall (openbsd-amd64-cgo), func SendtoInet4(int, []uint8, int, SockaddrInet4) error + pkg syscall (openbsd-amd64-cgo), func SendtoInet6(int, []uint8, int, SockaddrInet6) error + pkg syscall (windows-386), func WSASendtoInet4(Handle, *WSABuf, uint32, *uint32, uint32, SockaddrInet4, *Overlapped, *uint8) error + pkg syscall (windows-386), func WSASendtoInet6(Handle, *WSABuf, uint32, *uint32, uint32, SockaddrInet6, *Overlapped, *uint8) error + pkg syscall (windows-amd64), func WSASendtoInet4(Handle, *WSABuf, uint32, *uint32, uint32, SockaddrInet4, *Overlapped, *uint8) error + pkg syscall (windows-amd64), func WSASendtoInet6(Handle, *WSABuf, uint32, *uint32, uint32, SockaddrInet6, *Overlapped, *uint8) error +pkg testing, func Fuzz(func(*F)) FuzzResult +pkg testing, func MainStart(testDeps, []InternalTest, []InternalBenchmark, []InternalFuzzTarget, []InternalExample) *M +pkg testing, func RunFuzzTargets(func(string, string) (bool, error), []InternalFuzzTarget) bool +pkg testing, func RunFuzzing(func(string, string) (bool, error), []InternalFuzzTarget) bool +pkg testing, method (*B) Setenv(string, string) +pkg testing, method (*F) Add(...interface{}) +pkg testing, method (*F) Cleanup(func()) +pkg testing, method (*F) Error(...interface{}) +pkg testing, method (*F) Errorf(string, ...interface{}) +pkg testing, method (*F) Fail() +pkg testing, method (*F) FailNow() +pkg testing, method (*F) Failed() bool +pkg testing, method (*F) Fatal(...interface{}) +pkg testing, method (*F) Fatalf(string, ...interface{}) +pkg testing, method (*F) Fuzz(interface{}) +pkg testing, method (*F) Helper() +pkg testing, method (*F) Log(...interface{}) +pkg testing, method (*F) Logf(string, ...interface{}) +pkg testing, method (*F) Name() string +pkg testing, method (*F) Setenv(string, string) +pkg testing, method (*F) Skip(...interface{}) +pkg testing, method (*F) SkipNow() +pkg testing, method (*F) Skipf(string, ...interface{}) +pkg testing, method (*F) Skipped() bool +pkg testing, method (*F) TempDir() string +pkg testing, method (*T) Setenv(string, string) +pkg testing, method (FuzzResult) String() string +pkg testing, type F struct +pkg testing, type FuzzResult struct +pkg testing, type FuzzResult struct, Crasher entry +pkg testing, type FuzzResult struct, Error error +pkg testing, type FuzzResult struct, N int +pkg testing, type FuzzResult struct, T time.Duration +pkg testing, type InternalFuzzTarget struct +pkg testing, type InternalFuzzTarget struct, Fn func(*F) +pkg testing, type InternalFuzzTarget struct, Name string - pkg text/template/parse, const SkipFuncCheck = 2 - pkg text/template/parse, const SkipFuncCheck Mode - pkg time, func UnixMicro(int64) Time - pkg time, func UnixMilli(int64) Time - pkg time, method (*Time) IsDST() bool - pkg time, method (Time) UnixMicro() int64 - pkg time, method (Time) UnixMilli() int64 diff --cc src/cmd/compile/internal/noder/unified_test.go index 0000000000,96cc66f775..7f0bca2332 mode 000000,100644..100644 --- a/src/cmd/compile/internal/noder/unified_test.go +++ b/src/cmd/compile/internal/noder/unified_test.go @@@ -1,0 -1,153 +1,154 @@@ + // Copyright 2021 The Go Authors. All rights reserved. + // Use of this source code is governed by a BSD-style + // license that can be found in the LICENSE file. + + package noder_test + + import ( + "encoding/json" + "flag" + exec "internal/execabs" + "os" + "reflect" + "runtime" + "strings" + "testing" + ) + + var ( + flagPkgs = flag.String("pkgs", "std", "list of packages to compare (ignored in -short mode)") + flagAll = flag.Bool("all", false, "enable testing of all GOOS/GOARCH targets") + flagParallel = flag.Bool("parallel", false, "test GOOS/GOARCH targets in parallel") + ) + + // TestUnifiedCompare implements a test similar to running: + // + // $ go build -toolexec="toolstash -cmp" std + // + // The -pkgs flag controls the list of packages tested. + // + // By default, only the native GOOS/GOARCH target is enabled. The -all + // flag enables testing of non-native targets. The -parallel flag + // additionally enables testing of targets in parallel. + // + // Caution: Testing all targets is very resource intensive! On an IBM + // P920 (dual Intel Xeon Gold 6154 CPUs; 36 cores, 192GB RAM), testing + // all targets in parallel takes about 5 minutes. Using the 'go test' + // command's -run flag for subtest matching is recommended for less + // powerful machines. + func TestUnifiedCompare(t *testing.T) { ++ t.Skip("TODO(#48265): this fails on testing/internal/testdeps, possibly due to type aliases. Fix before merging to master.") + targets, err := exec.Command("go", "tool", "dist", "list").Output() + if err != nil { + t.Fatal(err) + } + + for _, target := range strings.Fields(string(targets)) { + t.Run(target, func(t *testing.T) { + parts := strings.Split(target, "/") + goos, goarch := parts[0], parts[1] + + if !(*flagAll || goos == runtime.GOOS && goarch == runtime.GOARCH) { + t.Skip("skipping non-native target (use -all to enable)") + } + if *flagParallel { + t.Parallel() + } + + pkgs1 := loadPackages(t, goos, goarch, "-d=unified=0 -d=inlfuncswithclosures=0 -d=unifiedquirks=1 -G=0") + pkgs2 := loadPackages(t, goos, goarch, "-d=unified=1 -d=inlfuncswithclosures=0 -d=unifiedquirks=1 -G=0") + + if len(pkgs1) != len(pkgs2) { + t.Fatalf("length mismatch: %v != %v", len(pkgs1), len(pkgs2)) + } + + for i := range pkgs1 { + pkg1 := pkgs1[i] + pkg2 := pkgs2[i] + + path := pkg1.ImportPath + if path != pkg2.ImportPath { + t.Fatalf("mismatched paths: %q != %q", path, pkg2.ImportPath) + } + + // Packages that don't have any source files (e.g., packages + // unsafe, embed/internal/embedtest, and cmd/internal/moddeps). + if pkg1.Export == "" && pkg2.Export == "" { + continue + } + + if pkg1.BuildID == pkg2.BuildID { + t.Errorf("package %q: build IDs unexpectedly matched", path) + } + + // Unlike toolstash -cmp, we're comparing the same compiler + // binary against itself, just with different flags. So we + // don't need to worry about skipping over mismatched version + // strings, but we do need to account for differing build IDs. + // + // Fortunately, build IDs are cryptographic 256-bit hashes, + // and cmd/go provides us with them up front. So we can just + // use them as delimeters to split the files, and then check + // that the substrings are all equal. + file1 := strings.Split(readFile(t, pkg1.Export), pkg1.BuildID) + file2 := strings.Split(readFile(t, pkg2.Export), pkg2.BuildID) + if !reflect.DeepEqual(file1, file2) { + t.Errorf("package %q: compile output differs", path) + } + } + }) + } + } + + type pkg struct { + ImportPath string + Export string + BuildID string + Incomplete bool + } + + func loadPackages(t *testing.T, goos, goarch, gcflags string) []pkg { + args := []string{"list", "-e", "-export", "-json", "-gcflags=all=" + gcflags, "--"} + if testing.Short() { + t.Log("short testing mode; only testing package runtime") + args = append(args, "runtime") + } else { + args = append(args, strings.Fields(*flagPkgs)...) + } + + cmd := exec.Command("go", args...) + cmd.Env = append(os.Environ(), "GOOS="+goos, "GOARCH="+goarch) + cmd.Stderr = os.Stderr + t.Logf("running %v", cmd) + stdout, err := cmd.StdoutPipe() + if err != nil { + t.Fatal(err) + } + if err := cmd.Start(); err != nil { + t.Fatal(err) + } + + var res []pkg + for dec := json.NewDecoder(stdout); dec.More(); { + var pkg pkg + if err := dec.Decode(&pkg); err != nil { + t.Fatal(err) + } + if pkg.Incomplete { + t.Fatalf("incomplete package: %q", pkg.ImportPath) + } + res = append(res, pkg) + } + if err := cmd.Wait(); err != nil { + t.Fatal(err) + } + return res + } + + func readFile(t *testing.T, name string) string { + buf, err := os.ReadFile(name) + if err != nil { + t.Fatal(err) + } + return string(buf) + } diff --cc src/cmd/go/alldocs.go index 3ff0ba1068,425aa831d8..18afaf1706 --- a/src/cmd/go/alldocs.go +++ b/src/cmd/go/alldocs.go @@@ -1449,19 -1545,17 +1548,19 @@@ // The rule for a match in the cache is that the run involves the same // test binary and the flags on the command line come entirely from a // restricted set of 'cacheable' test flags, defined as -benchtime, -cpu, - // -list, -parallel, -run, -short, and -v. If a run of go test has any test - // or non-test flags outside this set, the result is not cached. To - // disable test caching, use any test flag or argument other than the - // cacheable flags. The idiomatic way to disable test caching explicitly - // is to use -count=1. Tests that open files within the package's source - // root (usually $GOPATH) or that consult environment variables only - // match future runs in which the files and environment variables are unchanged. - // A cached test result is treated as executing in no time at all, - // so a successful package test result will be cached and reused - // regardless of -timeout setting. + // -list, -parallel, -run, -short, -timeout, -failfast, and -v. + // If a run of go test has any test or non-test flags outside this set, + // the result is not cached. To disable test caching, use any test flag + // or argument other than the cacheable flags. The idiomatic way to disable + // test caching explicitly is to use -count=1. Tests that open files within + // the package's source root (usually $GOPATH) or that consult environment + // variables only match future runs in which the files and environment + // variables are unchanged. A cached test result is treated as executing + // in no time at all,so a successful package test result will be cached and + // reused regardless of -timeout setting. // +// Run 'go help fuzz' for details around how the go command handles fuzz targets. +// // In addition to the build flags, the flags handled by 'go test' itself are: // // -args @@@ -2658,34 -2757,19 +2763,38 @@@ // -failfast // Do not start new tests after the first test failure. // +// -fuzz name +// Run the fuzz target with the given regexp. Must match exactly one fuzz +// target. This is an experimental feature. +// +// -fuzztime t +// Run enough iterations of the fuzz test to take t, specified as a +// time.Duration (for example, -fuzztime 1h30s). The default is to run +// forever. +// The special syntax Nx means to run the fuzz test N times +// (for example, -fuzztime 100x). +// + // -json + // Log verbose output and test results in JSON. This presents the + // same information as the -v flag in a machine-readable format. + // +// -keepfuzzing +// Keep running the fuzz target if a crasher is found. +// // -list regexp -// List tests, benchmarks, or examples matching the regular expression. -// No tests, benchmarks or examples will be run. This will only -// list top-level tests. No subtest or subbenchmarks will be shown. +// List tests, benchmarks, fuzz targets, or examples matching the regular +// expression. No tests, benchmarks, fuzz targets, or examples will be run. +// This will only list top-level tests. No subtest or subbenchmarks will be +// shown. // // -parallel n -// Allow parallel execution of test functions that call t.Parallel. +// Allow parallel execution of test functions that call t.Parallel, and +// f.Fuzz functions that call t.Parallel when running the seed corpus. // The value of this flag is the maximum number of tests to run -// simultaneously; by default, it is set to the value of GOMAXPROCS. +// simultaneously. While fuzzing, the value of this flag is the +// maximum number of workers to run the fuzz function simultaneously, +// regardless of whether t.Parallel has been called; by default, it is set +// to the value of GOMAXPROCS. // Note that -parallel only applies within a single test binary. // The 'go test' command may run tests for different packages // in parallel as well, according to the setting of the -p flag diff --cc src/cmd/go/internal/test/test.go index 5bf4d79b5c,d65f54f2bd..c36cb0b221 --- a/src/cmd/go/internal/test/test.go +++ b/src/cmd/go/internal/test/test.go @@@ -119,19 -121,17 +121,19 @@@ elapsed time in the summary line The rule for a match in the cache is that the run involves the same test binary and the flags on the command line come entirely from a restricted set of 'cacheable' test flags, defined as -benchtime, -cpu, - -list, -parallel, -run, -short, and -v. If a run of go test has any test - or non-test flags outside this set, the result is not cached. To - disable test caching, use any test flag or argument other than the - cacheable flags. The idiomatic way to disable test caching explicitly - is to use -count=1. Tests that open files within the package's source - root (usually $GOPATH) or that consult environment variables only - match future runs in which the files and environment variables are unchanged. - A cached test result is treated as executing in no time at all, - so a successful package test result will be cached and reused - regardless of -timeout setting. + -list, -parallel, -run, -short, -timeout, -failfast, and -v. + If a run of go test has any test or non-test flags outside this set, + the result is not cached. To disable test caching, use any test flag + or argument other than the cacheable flags. The idiomatic way to disable + test caching explicitly is to use -count=1. Tests that open files within + the package's source root (usually $GOPATH) or that consult environment + variables only match future runs in which the files and environment + variables are unchanged. A cached test result is treated as executing + in no time at all,so a successful package test result will be cached and + reused regardless of -timeout setting. +Run 'go help fuzz' for details around how the go command handles fuzz targets. + In addition to the build flags, the flags handled by 'go test' itself are: -args @@@ -245,34 -244,19 +247,38 @@@ control the execution of any test -failfast Do not start new tests after the first test failure. + -fuzz name + Run the fuzz target with the given regexp. Must match exactly one fuzz + target. This is an experimental feature. + + -fuzztime t + Run enough iterations of the fuzz test to take t, specified as a + time.Duration (for example, -fuzztime 1h30s). The default is to run + forever. + The special syntax Nx means to run the fuzz test N times + (for example, -fuzztime 100x). + + -json + Log verbose output and test results in JSON. This presents the + same information as the -v flag in a machine-readable format. + + -keepfuzzing + Keep running the fuzz target if a crasher is found. + -list regexp - List tests, benchmarks, or examples matching the regular expression. - No tests, benchmarks or examples will be run. This will only - list top-level tests. No subtest or subbenchmarks will be shown. + List tests, benchmarks, fuzz targets, or examples matching the regular + expression. No tests, benchmarks, fuzz targets, or examples will be run. + This will only list top-level tests. No subtest or subbenchmarks will be + shown. -parallel n - Allow parallel execution of test functions that call t.Parallel. + Allow parallel execution of test functions that call t.Parallel, and + f.Fuzz functions that call t.Parallel when running the seed corpus. The value of this flag is the maximum number of tests to run - simultaneously; by default, it is set to the value of GOMAXPROCS. + simultaneously. While fuzzing, the value of this flag is the + maximum number of workers to run the fuzz function simultaneously, + regardless of whether t.Parallel has been called; by default, it is set + to the value of GOMAXPROCS. Note that -parallel only applies within a single test binary. The 'go test' command may run tests for different packages in parallel as well, according to the setting of the -p flag