Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

internal/syscall/unix: fix number of params for unlinkat #72960

Closed
Closed
Changes from 1 commit
Commits
Show all changes
10000 commits
Select commit Hold shift + click to select a range
c578670
crypto/internal/fips140/edwards25519/field: optimize carryPropagate
egonelbre Feb 18, 2025
8cbb512
crypto/internal/fips140/edwards25519/field: inline carryPropagate
egonelbre Feb 18, 2025
beb314c
os, syscall: use unix build tag where appropriate
tklauser Feb 25, 2025
8203265
cmd/compile, runtime: optimize concatbytes
cuonglm Feb 25, 2025
b38b0c0
cmd/compile: document -embedcfg flag
ianlancetaylor Feb 25, 2025
767c0fb
go/scanner: report specific error for UCS-2 encoded files
adonovan Feb 25, 2025
969a0da
runtime: route calls to msan_memmove through cgo
ianlancetaylor Feb 25, 2025
1b1c6b8
cmd/compile: simplify intrinsification of BitLen16 and BitLen8
4a6f656c Feb 22, 2025
011da16
cmd/compile/internal/test: fix noopt builder
cuonglm Feb 26, 2025
4c75671
runtime: Added usage example for the runtime.AddCleanup() function.
streamdp Feb 15, 2025
8b8bff7
cmd/compile: don't pull constant offsets out of pointer arithmetic
randall77 Feb 24, 2025
194696f
reflect: let Value.Seq return the iteration value correct type
qiulaidongfeng Feb 23, 2025
76c7028
runtime/cgo: avoid errors from -Wdeclaration-after-statement
ianlancetaylor Feb 26, 2025
1421b98
runtime: document that cleanups can run concurrently with each other
mknyszek Feb 19, 2025
ee0d03f
sync: don't keep func alive after OnceFunc panics
mateusz834 Feb 25, 2025
1695979
crypto/internal/fips140/edwards25519/field/_asm: update avo dependency
egonelbre Feb 26, 2025
983e30b
crypto/internal/fips140/edwards25519/field: optimize AMD64
egonelbre Feb 26, 2025
9cceaf8
cmd/link: require cgo for -linkmode=external test
ianlancetaylor Feb 26, 2025
c55c1cb
net: return proper error from Context
mateusz834 Feb 26, 2025
2e71ae3
runtime/cgo: avoid errors from -Wdeclaration-after-statement
ianlancetaylor Feb 26, 2025
c594762
runtime: remove ret field from gobuf
randall77 Feb 25, 2025
11c847e
runtime: use correct memory barrier in exitThread function on loong64
abner-chenc Nov 26, 2024
01ba8bf
runtime/cgo: use standard ABI call setg_gcc in crosscall1 on loong64
abner-chenc Feb 25, 2025
927fdb7
cmd/compile: simplify intrinsification of TrailingZeros16 and Trailin…
4a6f656c Feb 22, 2025
37e9c5e
cmd/internal/obj/riscv: implement vector load/store instructions
4a6f656c Jun 17, 2024
b66d83c
math/big: clean up GCD a little
rsc Jan 16, 2025
763766e
math/big: report allocs in BenchmarkNatMul, BenchmarkNatSqr
rsc Feb 16, 2025
872496d
math/big: replace nat pool with Word stack
rsc Jan 17, 2025
f8f08bf
math/big: improve scan test and benchmark
rsc Jan 18, 2025
1f7e28a
math/big: optimize atoi of base 2, 4, 16
rsc Feb 19, 2025
0ab2253
math/big: move multiplication to natmul.go
rsc Jan 17, 2025
2b73707
math/big: add tests for allocation during multiply
rsc Feb 14, 2025
0135120
cmd/go: update c document
linsite Feb 27, 2025
d31c805
net/http: reject newlines in chunk-size lines
neild Feb 26, 2025
b3e3636
flag: replace interface{} -> any for textValue.Get method
callthingsoff Feb 26, 2025
5559747
cmd/cgo: update generated headers for compatibility with latest MSVC …
KangJiJi Feb 27, 2025
6e8d7a1
crypto/x509: avoid crypto/rand.Int to generate serial number
FiloSottile Jan 22, 2025
1dafcca
runtime: increase timeout in TestSpuriousWakeupsNeverHangSemasleep
mknyszek Feb 26, 2025
74ba216
reflect: add more tests for Type.{CanSeq,CanSeq2}
callthingsoff Feb 28, 2025
2298215
cmd/link: use __got as the .got section name
qmuntal Feb 25, 2025
64feded
cmd/covdata: close output meta-data file
testwill Feb 27, 2025
6894904
cmd/go/internal/modindex: clean modroot and pkgdir for openIndexPackage
matloob Feb 25, 2025
f24d2e1
cmd/internal/obj, cmd/asm: reclassify 32-bit immediate value of loong64
limeidan Dec 16, 2024
039b3eb
runtime: use ABIInternal on syscall and other sys.stuff for loong64
sophie-zhao Oct 25, 2024
f4750a6
cmd/go/internal/work: use par.Cache to cache tool IDs.
qmuntal Feb 28, 2025
5a7db81
cmd/internal/obj/riscv: add riscv64 CSR map
markdryan Nov 19, 2024
b199d97
runtime: add padding to m struct for 64 bit architectures
4a6f656c Feb 27, 2025
bda9f85
net/http: allocate CloseNotifier channel lazily
das7pad Jan 7, 2025
0312e31
net: fix parsing of interfaces on plan9 without associated devices
bradfitz Mar 2, 2025
f48b53f
testing: fix testing.B.Loop doc on loop condition
JunyangShao Feb 21, 2025
4b1ac7b
go/types, types2: remove references to core type in append
griesemer Feb 26, 2025
19d0b3e
crypto/rsa: use Div instead of GCD for trial division
FiloSottile Jan 3, 2025
26ba61d
go/types, types2: remove most remaining references to coreType in bui…
griesemer Feb 26, 2025
05354fc
go/types, types2: remove remaining references to coreType in literals.go
griesemer Feb 26, 2025
14647b0
os: only call GetConsoleMode for char devices
qmuntal Mar 3, 2025
0a0e6af
context: use atomic operation in ctx.Err
neild Feb 28, 2025
7e81bcf
go/types, types2: remove remaining mentions of core type in error mes…
griesemer Mar 3, 2025
47fd73a
cmd/internal/obj/loong64: add {V,XV}{SLL/SRL/SRA/ROTR}[I].{B/H/W/D} i…
sophie-zhao Dec 19, 2024
2ce1fb4
cmd/internal/obj/loong64: add F{MAXA/MINA}.{S/D} instructions
sophie-zhao Dec 30, 2024
3b9d10c
net/textproto: document enforcement of RFC 9112 for headers
seankhliao Jul 27, 2024
8279188
crypto/internal/fips140/bigmod/_asm: update avo to v0.6.0
egonelbre Feb 27, 2025
4f45b2b
cmd/compile: fix out of memory when inlining closure
cuonglm Mar 3, 2025
4c0a47a
cmd/compile,cmd/link: move to DWARF5-style range lists
thanm Dec 12, 2024
bef2bb8
cmd/compile,cmd/link: move to DWARF5-style location lists
thanm Dec 13, 2024
7181118
net/http: check server shutting down before processing the request
WineChord Feb 20, 2024
a053e79
net/http: support TCP half-close when HTTP is upgraded in ReverseProxy
MrWako Jan 2, 2025
32fdcd7
mime/quotedprintable: accept LWSP-char after =
emersion Dec 22, 2024
fd8938c
net/http: speed up cookie and method validation
Feb 17, 2025
ba3c57f
os: guarantee min buffer size for ReadFile reads on /proc-like files
bradfitz Mar 3, 2025
f95941d
net/http/httputil: skip new test on Plan 9
ianlancetaylor Mar 4, 2025
52eaed6
runtime: decorate anonymous memory mappings
L3n41c Feb 1, 2025
0cfc641
crypto/elliptic: drop hidden Inverse and CombinedMult methods
FiloSottile Jan 3, 2025
3705a6f
all: update golang.org/x/net
JunyangShao Mar 4, 2025
a188955
context: skip allocs test with -asan
neild Mar 4, 2025
3501186
net/http: don't modify caller's tls.Config.NextProtos
neild Mar 4, 2025
583d586
sync: document behavior of Map.Delete when key is not present
FiloSottile Jan 8, 2025
8abb8aa
testing: modify got,want equal comparison for unordered example output
callthingsoff Mar 3, 2025
f27d86c
cmd/compile: add tests for too-large shift amounts
randall77 Mar 3, 2025
6f90ae3
cmd/compile: improve issue62407_test
TapirLiu Dec 21, 2024
2e6cbab
encoding/pem: clarify Decode only works on lines
seankhliao Aug 6, 2022
2c16041
text/template: provide example of overwriting template func after parse
rorycl Mar 4, 2025
932a4a4
go/types: add Var.Kind() VarKind method
adonovan Jan 28, 2025
37026a7
cmd/go: skip some tests that run builds in short mode
matloob Feb 28, 2025
061efaa
net/http: make http.FileServer return 404 when a path is invalid/unsafe
lodi-g Mar 5, 2025
f7204d7
html/template: example for disallowed script type change
seankhliao May 19, 2023
9189921
go/types,types2: externalize used objects
findleyr Feb 19, 2025
cad4dca
cmd/compile: use inline-Pos-based recursion test
dr2chase Mar 5, 2025
645ea53
runtime: in asan mode call __lsan_do_leak_check when exiting
ianlancetaylor Feb 22, 2025
39d7a49
cmd/internal/obj/loong64: add {V,XV}{ADD/SUB}.{B,H,W,D,Q} and {V,XV}{…
sophie-zhao Dec 19, 2024
6ba91df
math: implement func archExp and archExp2 in assembly on loong64
sophie-zhao Dec 31, 2024
6cb8c83
cmd/link/internal: remove trampoline for plt on loong64
limeidan Mar 5, 2025
92a63bd
runtime: explicitly disable async preempt for internal/runtime
panjf2000 Mar 5, 2025
e7f9e76
crypto: test for unexpected concrete methods in interface value returns
FiloSottile Dec 20, 2024
5e0dbec
crypto/rsa: add a test with very different prime sizes
FiloSottile Mar 5, 2025
70dcc78
math/big: avoid negative slice size in nat.rem
rsc Mar 5, 2025
3aef716
doc: update godebug doc to clarify godebug directive in workspace
matloob Mar 5, 2025
53d689c
cmd/internal/obj/loong64: add {V,XV}ILV{L/H}.{B/H/W/D} instructions s…
sophie-zhao Dec 13, 2024
66b7640
compress/lzw,compress/gzip,compress/flate,compress/zlib,compress/bzip…
dolmen Mar 5, 2025
938b6c1
os: more godoc links
dolmen Mar 6, 2025
6a4bc8d
cmd/go: cache coverage profile with tests
ryancurrah Feb 25, 2025
1cf6b50
cmd/compile: remove no-longer-necessary recursive inlining checks
dr2chase Mar 5, 2025
9bd2160
os: add missing calls to Root.Close() in tests
dolmen Mar 6, 2025
24d2235
cmd/go: add 'work' package pattern
matloob Jan 16, 2025
f55bb13
cmd/cgo/internal/testsanitizers: for "leak", use -fsanitize=address
ianlancetaylor Mar 6, 2025
8b7e376
go/types, types2: factor out single commonUnder function
griesemer Mar 3, 2025
584e631
go/types, types2: better error messages for invalid calls
griesemer Mar 4, 2025
5af3658
go/types, types2: use errorCause instead of reportf in comparableType
griesemer Mar 4, 2025
232dfd2
go/types, types2: rename errorCause to typeError
griesemer Mar 4, 2025
8a7742e
go/types, types2: factor out shared for-range checking code into rang…
griesemer Mar 6, 2025
d43c0f8
net: add comment about blocking to Conn.Close
ianlancetaylor Mar 6, 2025
fe9b292
go/types,types2: allocate the used* maps in initFiles
findleyr Mar 7, 2025
812a44e
archive/zip: preallocate fileList size for Reader.Open
dolmen Mar 6, 2025
e0b110b
text/template: add an if func example
linsite Mar 6, 2025
b4a333f
crypto/internal/fips140/bigmod: explicitly clear expanded limbs on reset
FiloSottile Mar 5, 2025
d7e5cd5
compress/flate,compress/lzw: fix incorrect godoc links
dolmen Mar 6, 2025
705fa92
crypto/internal/fips140: make Version return latest when not frozen
FiloSottile Mar 6, 2025
e690884
os: remove unused testingForceReadDirLstat
tklauser Mar 7, 2025
bc5f4a5
crypto/tls: small bogo shim test tidying
cpu Feb 15, 2025
22d5d09
net/http/httputil: close hijacked connections when CloseWrite not ava…
neild Mar 6, 2025
c3950f8
crypto/pbkdf2: fix code example for Key
Gusted Mar 8, 2025
c40a373
internal/godebugs: add decoratemappings as an opaque godebug setting
prattmic Mar 7, 2025
c3e7d5f
debug/dwarf: refactor entry DIE reading helper
thanm Mar 7, 2025
e256e64
debug/dwarf: fix problem with DWARF 5 and Seek method
thanm Mar 7, 2025
fd39971
cmd/cgo/internal/testsanitizers: bump GCC version for asan location c…
thanm Mar 9, 2025
2620cc1
cmd/go/internal/mmap: close file after mmap
matloob Feb 26, 2025
895bcf1
crypto/tls: reject empty TLS 1.3 session ticket
cpu Feb 17, 2025
04164e5
internal/runtime/atomic: updated go assembler comments
prabhavdogra Mar 7, 2025
b0e7f95
crypto/tls: run SkipNewSessionTicket bogo test
cpu Feb 18, 2025
2611d81
crypto/tls: ignore TLS 1.3 user canceled alerts
cpu Feb 19, 2025
01688da
crypto/tls: support bogo -wait-for-debugger
cpu Feb 19, 2025
5b4209f
crypto/tls: update GREASE-Server-TLS13 BoGo skip
cpu Feb 19, 2025
4635ad0
crypto/tls: align cert decode alert w/ BSSL
cpu Feb 26, 2025
574a9fa
crypto/tls: reject TLS 1.3 compat session ID in TLS 1.2
cpu Feb 26, 2025
2abe5ce
testing: warn against calling Log after a test completes
seankhliao Mar 10, 2025
2a772a2
cmd/compile: optimize shifts of int32 and uint32 on loong64
sophie-zhao Nov 14, 2024
e3ea8e6
cmd/internal/obj/loong64: add {V,XV}SEQI, {V,XV}.{AND,OR,XOR,NOR} ins…
abner-chenc Mar 6, 2025
2d097e3
go/types, types2: better error messages for copy built-in
griesemer Mar 6, 2025
e5d3ece
go/types, types2: remove need for coreString in signature.go
griesemer Mar 7, 2025
ae4c13a
go/types, types2: report better error messages for slice expressions
griesemer Mar 7, 2025
a588c6f
go/types, types2: report better error messages for make calls
griesemer Mar 8, 2025
73fea03
cmd/go: allow symlinks of non-directory files in embed
matloob Jan 16, 2025
be2ecfb
debug/dwarf: read DWARF 5 cu base offsets on SeekPC() path
thanm Mar 11, 2025
598df45
net: unblock UDP Reads upon Close on plan9, add test
bradfitz Mar 10, 2025
31658ac
runtime/internal: clean up completely
callthingsoff Mar 7, 2025
39b7837
net/mail: use sync.OnceValue to build dateLayouts
Mar 8, 2025
8591f8e
log/slog: use consistent call depth for all output
op Mar 5, 2025
3e033b7
cmd/compile: add constant folding for PopCount
Jorropo Mar 9, 2025
c18ff21
cmd/compile, runtime: remove plan9 special case avoiding SSE
rsc Mar 4, 2025
6c70f2b
cmd/compile: Enable inlining of tail calls
amusman Feb 17, 2025
b0e2f18
cmd/internal/obj/loong64: add {V,XV}MUL{B/H/W/V} and {V,XV}MUH{B/H/W/…
sophie-zhao Dec 16, 2024
8867af9
os: add more File.WriteAt tests
qmuntal Mar 10, 2025
3fb8b4f
all: move //go:debug decoratemappings=0 test to cmd/go
prattmic Mar 11, 2025
817218a
net/http: document Redirect behavior for non-ASCII characters
ianlancetaylor Mar 9, 2025
908af65
archive/zip: error on ReadDir if there are invalid file names
seankhliao Mar 10, 2025
4acc5b4
cmp: add examples for Compare and Less
cuishuang Mar 11, 2025
ca19f98
internal/buildcfg: enable DWARF version 5 by default
thanm Dec 19, 2024
17b9c9f
internal/bytealg: optimize Count{,String} in loong64
abner-chenc Mar 6, 2025
4364893
cmd/internal/script/scripttest: use GOHOSTARCH to find tool directory
ianlancetaylor Mar 11, 2025
bcd0ebb
internal/cpu: use correct variable when parsing CPU features lamcas a…
abner-chenc Mar 6, 2025
d284222
cmd/compile: compute min's & max's limits from argument's limits insi…
Jorropo Mar 9, 2025
554a3c5
cmd/compile: use min & max builtins to assert constant bounds in prov…
Jorropo Mar 9, 2025
c00647b
cmd/compile: set bits.OnesCount's limits to [0, 64]
Jorropo Mar 9, 2025
c032b04
internal/buildcfg: fix typo in DWARF 5 enabling code
thanm Mar 12, 2025
8d767ff
runtime: increase GDB version testing requirement to 10 from 7.7
thanm Mar 12, 2025
99411d7
cmd/compile: compute bits.OnesCount's limits from argument's limits
Jorropo Mar 9, 2025
4ff70cf
cmd/compile: add MakeTuple generic SSA op to remove duplicate Select[…
Jorropo Mar 11, 2025
b60b9cf
cmd/compile: add constant folding for bits.Add64
Jorropo Mar 9, 2025
644b984
cmd/compile: compute bitsize from type size in prove to clean some sw…
Jorropo Mar 10, 2025
35cb497
cmd/compile: remove useSSE
rsc Mar 5, 2025
c9b07e8
cmd/compile: use FMA on plan9, and drop UseFMA
rsc Mar 5, 2025
26040b1
cmd/compile: remove noDuffDevice
rsc Mar 7, 2025
d037ed6
math/big: simplify, speed up Karatsuba multiplication
rsc Jan 17, 2025
40c953c
runtime: remove nextSampleNoFP from plan9
rsc Mar 7, 2025
a812e5f
math/big: update calibration tests and recalibrate
rsc Jan 18, 2025
7e8cead
cmd/compile/internal/ssagen: use an alias for math/bits.Len
4a6f656c Mar 12, 2025
bec12f1
log/slog: optimize appendKey to reduce allocations
Aoang Nov 23, 2024
955cf08
cmd/internal/dwarf: fix bug in inlined func DIE range DWARF 5 info
thanm Mar 12, 2025
485480f
net: deflake recently added TestCloseUnblocksReadUDP
bradfitz Mar 12, 2025
a68bf75
cmd/go: don't write own toolchain line when updating go line
matloob Mar 10, 2025
d729053
mime/multipart: add helper to build content-disposition header contents
malta895 Mar 12, 2025
b10c359
cmd/internal/obj/loong64: add {V,XV}DIV{B/H/W/V}[U] and {V,XV}MOD{B/H…
sophie-zhao Dec 16, 2024
b143c98
cmd/compile: simplify bounded shift on loong64
sophie-zhao Nov 16, 2024
8cdef12
cmd/link: only check PIE size difference when the linkmode is the same
4a6f656c Mar 12, 2025
d7f5883
doc/next: add tentative DWARF 5 release note fragment
thanm Mar 12, 2025
bdfa604
cmd/internal/dwarf: always use AT_ranges for scopes with DWARF 5
thanm Mar 12, 2025
af92bb5
test/codegen: remove plan9/amd64 specific array zeroing/copying tests
4a6f656c Mar 12, 2025
fb8691e
syscall: use testing.T.Context
tklauser Mar 12, 2025
f3c69c2
cmd/go/internal/load,cmd/link/internal/ld: use objabi.LookupPkgSpecia…
callthingsoff Mar 12, 2025
12ea4f7
doc/next: add release note for new toolchain line behavior
matloob Mar 12, 2025
fbdd994
crypto/tls: allow P-521 in FIPS 140-3 mode and Go+BoringCrypto
FiloSottile Mar 12, 2025
6bd5741
crypto/tls: add ConnectionState.CurveID
FiloSottile Feb 27, 2025
0f5d86c
cmd/go: permit additional cflags when compiling
Jul 9, 2023
59afdd3
crypto/tls: clean up supported/default/allowed parameters
FiloSottile Feb 19, 2025
6114b69
crypto/tls: relax native FIPS 140-3 mode
FiloSottile Feb 19, 2025
d704ef7
crypto/tls/internal/fips140tls: use crypto/fips140
qmuntal Jan 10, 2025
3b456ff
crypto/x509,ecoding/asn1: better handling of weird encodings
rolandshoemaker Feb 21, 2025
937368f
crypto/x509: change how we retrieve chains on darwin
rolandshoemaker Mar 4, 2025
80f0689
cmd/internal/obj/loong64: add {V,XV}{FSQRT/FRECIP/FRSQRT}.{S/D} instr…
sophie-zhao Dec 16, 2024
a1ddbdd
cmd/compile: don't move nilCheck operations during tighten
randall77 Mar 13, 2025
7e3d2aa
encoding/asn1: make sure implicit fields roundtrip
rolandshoemaker Mar 3, 2025
577bb3d
runtime: only set isExtraInC if there are no Go frames left
prattmic Mar 14, 2025
c1c7e59
test/codegen: tighten the TrailingZeros64 test on 386
4a6f656c Feb 26, 2025
853b514
time: optimize quote using byte(c) for ASCII
Mar 13, 2025
5bb73e6
debug/elf: add riscv attributes definitions
mengzhuo Mar 13, 2025
580b6ee
cmd/go: enable fuzz testing on OpenBSD
macie May 30, 2023
3c3b8dd
internal/runtime/atomic: add Xchg8 for s390x and wasm
rhysh Mar 14, 2025
c01fa0c
test/codegen: add riscv64/rva23u64 specifiers to existing tests
4a6f656c Feb 23, 2025
e1f9013
test/codegen: add riscv64 codegen for arithmetic tests
4a6f656c Feb 24, 2025
a8f2e63
test/codegen: add a test for negation and conversion to int32
4a6f656c Feb 24, 2025
10d0706
cmd/compile/internal/ssa: remove double negation with addition on ris…
4a6f656c Feb 23, 2025
2141751
cmd/compile: combine negation and word sign extension on riscv64
4a6f656c Oct 12, 2022
35139d6
runtime: log profile when mutex profile test fails
rhysh Mar 14, 2025
bb6a400
os: use slices.Clone
tklauser Mar 14, 2025
e0edd3e
html/template: replace end-of-life link
cuishuang Jan 15, 2024
e6ffe76
strings: add FuzzReplace test
Jorropo Mar 14, 2025
6fb7bdc
cmd/compile: intrinsify math/bits.TrailingZeros on riscv64
4a6f656c Feb 23, 2025
38d146d
doc/go_mem: fix grammar issue
Mar 16, 2025
f41fdd9
cmd/internal/obj/loong64: add {V,XV}NEG{B/H/W/V} instructions support
sophie-zhao Dec 13, 2024
7dd7d70
runtime: skip TestCgoCallbackPprof on platforms with broken profiling
prattmic Mar 17, 2025
57c44fd
html/template: document comment stripping
seankhliao Mar 15, 2025
bceade5
doc/next: add release note for work package pattern
matloob Mar 17, 2025
e41ec30
reflect: document Method(ByName) w.r.t dead code elimination
ikonst Mar 15, 2025
5e98202
internal/buildcfg: expand spinbitmutex platforms
rhysh Mar 14, 2025
7a8ce5e
cmd/go: point tidy errors to correct URL
mohammed90 Dec 6, 2024
44d1d2e
crypto/internal/hpke: use crypto/hkdf
qmuntal Mar 17, 2025
eb7ab11
crypto/internal/hpke: propagate hkdf error value
qmuntal Mar 17, 2025
c7ea871
log/slog: document Logger ignores Handler.Handle errors
seankhliao Mar 17, 2025
cd2f347
crypto/tls: fix ECH compatibility
gdy666 Feb 10, 2025
180795c
runtime, runtime/cgo: use libc for sigaction syscalls when cgo is ena…
limeidan Mar 5, 2025
0694718
runtime: add function runtime.cgoSigtramp support on loong64 and enab…
limeidan Mar 6, 2025
5916bc5
runtime, time: don't use monotonic clock inside synctest bubbles
neild Mar 12, 2025
a17c092
net/http: add onClose hook to fake net listener
neild Mar 17, 2025
6b18311
cmd/go/internal/clean: add logging to help debug openbsd flakes
matloob Mar 18, 2025
c8eced8
net/http/httputil: document ProxyRequest.SetURL limitations
seankhliao Mar 17, 2025
fcb27f7
cmd/compile/internal/amd64: disable FIPS 140-3 mode for TestGoAMD64v1
FiloSottile Mar 18, 2025
bfb27fb
bytes,strings: document Fields trimming of leading and trailing chara…
seankhliao Mar 17, 2025
3309658
doc: document change in nil-ptr checking behavior
randall77 Mar 18, 2025
2148309
os: add Root.Chtimes
neild Feb 11, 2025
2e749a6
internal/godebugs: fix changed version for winsymlink and winreadlink…
liggitt Mar 19, 2025
24b3951
cmd/internal/obj/riscv: prevent duplicate error reports
markdryan Dec 10, 2024
1aee4f3
cmd/internal/obj/riscv: prevent panics on bad branches
markdryan Dec 11, 2024
56e5476
runtime: in asan mode unregister root regions on free
znkr Mar 19, 2025
deb6790
cmd/compile: remove implicit deref from len(p) where p is ptr-to-array
randall77 Mar 14, 2025
1aa9c31
net/http/httputil: don't call WriteHeader after Hijack
neild Mar 19, 2025
011b7ce
go/types, types2: fix silly logic error in commonUnder
griesemer Mar 19, 2025
f9f5d1e
runtime/race: detect when TestRace fails to run all tests, skip failures
neild Mar 18, 2025
1eb1579
os: add Root.Lchown
neild Feb 14, 2025
cb0d767
os: add Root.Readlink
neild Mar 18, 2025
48240ad
internal/syscall/unix: use correct number of params in unlinkat, fcho…
neild Mar 19, 2025
f233739
internal/syscall/unix: fix number of params for unlinkat
kolyshkin Mar 19, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
crypto/internal/fips140/edwards25519/field: optimize AMD64
Replace constant multiplication with shift and adds,
this reduces pressure on multiplications, making things overall
faster.

goos: windows
goarch: amd64
pkg: crypto/internal/fips140/edwards25519/field
cpu: AMD Ryzen Threadripper 2950X 16-Core Processor
            │   v0.log~   │              v1.log~               │
            │   sec/op    │   sec/op     vs base               │
Add-32        4.768n ± 1%   4.763n ± 0%       ~ (p=0.683 n=20)
Multiply-32   20.93n ± 0%   19.48n ± 0%  -6.88% (p=0.000 n=20)
Square-32     15.88n ± 0%   15.00n ± 0%  -5.51% (p=0.000 n=20)
Invert-32     4.291µ ± 0%   4.072µ ± 0%  -5.10% (p=0.000 n=20)
Mult32-32     5.184n ± 0%   5.169n ± 0%  -0.30% (p=0.032 n=20)
Bytes-32      11.36n ± 0%   11.34n ± 0%       ~ (p=0.106 n=20)
geomean       27.15n        26.32n       -3.06%

Change-Id: I9c2f588fad29d89c3e6c712c092b32b66479f596
Reviewed-on: https://go-review.googlesource.com/c/go/+/652716
Reviewed-by: Filippo Valsorda <[email protected]>
Reviewed-by: Junyang Shao <[email protected]>
LUCI-TryBot-Result: Go LUCI <[email protected]>
Commit-Queue: Junyang Shao <[email protected]>
Reviewed-by: Michael Pratt <[email protected]>
Auto-Submit: Filippo Valsorda <[email protected]>
egonelbre authored and gopherbot committed Feb 26, 2025
commit 983e30bd3b78ca77a5028a94323c6da363358648
Original file line number Diff line number Diff line change
@@ -256,6 +256,23 @@ func addMul64(r uint128, i uint64, aX, bX namedComponent) {
case 1:
Comment(fmt.Sprintf("%s += %s×%s", r, aX, bX))
Load(aX, RAX)
case 2:
Comment(fmt.Sprintf("%s += %d×%s×%s", r, i, aX, bX))
Load(aX, RAX)
SHLQ(U8(1), RAX)
case 19:
Comment(fmt.Sprintf("%s += %d×%s×%s", r, i, aX, bX))
// 19 * v ==> v + (v+v*8)*2
tmp := Load(aX, GP64())
LEAQ(Mem{Base: tmp, Index: tmp, Scale: 8}, RAX)
LEAQ(Mem{Base: tmp, Index: RAX, Scale: 2}, RAX)
case 38:
Comment(fmt.Sprintf("%s += %d×%s×%s", r, i, aX, bX))
// 38 * v ==> (v + (v+v*8)*2) * 2
tmp := Load(aX, GP64())
LEAQ(Mem{Base: tmp, Index: tmp, Scale: 8}, RAX)
LEAQ(Mem{Base: tmp, Index: RAX, Scale: 2}, RAX)
SHLQ(U8(1), RAX)
default:
Comment(fmt.Sprintf("%s += %d×%s×%s", r, i, aX, bX))
IMUL3Q(Imm(i), Load(aX, GP64()), RAX)
200 changes: 110 additions & 90 deletions src/crypto/internal/fips140/edwards25519/field/fe_amd64.s
Original file line number Diff line number Diff line change
@@ -16,32 +16,36 @@ TEXT ·feMul(SB), NOSPLIT, $0-24
MOVQ DX, SI

// r0 += 19×a1×b4
MOVQ 8(CX), AX
IMUL3Q $0x13, AX, AX
MULQ 32(BX)
ADDQ AX, DI
ADCQ DX, SI
MOVQ 8(CX), DX
LEAQ (DX)(DX*8), AX
LEAQ (DX)(AX*2), AX
MULQ 32(BX)
ADDQ AX, DI
ADCQ DX, SI

// r0 += 19×a2×b3
MOVQ 16(CX), AX
IMUL3Q $0x13, AX, AX
MULQ 24(BX)
ADDQ AX, DI
ADCQ DX, SI
MOVQ 16(CX), DX
LEAQ (DX)(DX*8), AX
LEAQ (DX)(AX*2), AX
MULQ 24(BX)
ADDQ AX, DI
ADCQ DX, SI

// r0 += 19×a3×b2
MOVQ 24(CX), AX
IMUL3Q $0x13, AX, AX
MULQ 16(BX)
ADDQ AX, DI
ADCQ DX, SI
MOVQ 24(CX), DX
LEAQ (DX)(DX*8), AX
LEAQ (DX)(AX*2), AX
MULQ 16(BX)
ADDQ AX, DI
ADCQ DX, SI

// r0 += 19×a4×b1
MOVQ 32(CX), AX
IMUL3Q $0x13, AX, AX
MULQ 8(BX)
ADDQ AX, DI
ADCQ DX, SI
MOVQ 32(CX), DX
LEAQ (DX)(DX*8), AX
LEAQ (DX)(AX*2), AX
MULQ 8(BX)
ADDQ AX, DI
ADCQ DX, SI

// r1 = a0×b1
MOVQ (CX), AX
@@ -56,25 +60,28 @@ TEXT ·feMul(SB), NOSPLIT, $0-24
ADCQ DX, R8

// r1 += 19×a2×b4
MOVQ 16(CX), AX
IMUL3Q $0x13, AX, AX
MULQ 32(BX)
ADDQ AX, R9
ADCQ DX, R8
MOVQ 16(CX), DX
LEAQ (DX)(DX*8), AX
LEAQ (DX)(AX*2), AX
MULQ 32(BX)
ADDQ AX, R9
ADCQ DX, R8

// r1 += 19×a3×b3
MOVQ 24(CX), AX
IMUL3Q $0x13, AX, AX
MULQ 24(BX)
ADDQ AX, R9
ADCQ DX, R8
MOVQ 24(CX), DX
LEAQ (DX)(DX*8), AX
LEAQ (DX)(AX*2), AX
MULQ 24(BX)
ADDQ AX, R9
ADCQ DX, R8

// r1 += 19×a4×b2
MOVQ 32(CX), AX
IMUL3Q $0x13, AX, AX
MULQ 16(BX)
ADDQ AX, R9
ADCQ DX, R8
MOVQ 32(CX), DX
LEAQ (DX)(DX*8), AX
LEAQ (DX)(AX*2), AX
MULQ 16(BX)
ADDQ AX, R9
ADCQ DX, R8

// r2 = a0×b2
MOVQ (CX), AX
@@ -95,18 +102,20 @@ TEXT ·feMul(SB), NOSPLIT, $0-24
ADCQ DX, R10

// r2 += 19×a3×b4
MOVQ 24(CX), AX
IMUL3Q $0x13, AX, AX
MULQ 32(BX)
ADDQ AX, R11
ADCQ DX, R10
MOVQ 24(CX), DX
LEAQ (DX)(DX*8), AX
LEAQ (DX)(AX*2), AX
MULQ 32(BX)
ADDQ AX, R11
ADCQ DX, R10

// r2 += 19×a4×b3
MOVQ 32(CX), AX
IMUL3Q $0x13, AX, AX
MULQ 24(BX)
ADDQ AX, R11
ADCQ DX, R10
MOVQ 32(CX), DX
LEAQ (DX)(DX*8), AX
LEAQ (DX)(AX*2), AX
MULQ 24(BX)
ADDQ AX, R11
ADCQ DX, R10

// r3 = a0×b3
MOVQ (CX), AX
@@ -133,11 +142,12 @@ TEXT ·feMul(SB), NOSPLIT, $0-24
ADCQ DX, R12

// r3 += 19×a4×b4
MOVQ 32(CX), AX
IMUL3Q $0x13, AX, AX
MULQ 32(BX)
ADDQ AX, R13
ADCQ DX, R12
MOVQ 32(CX), DX
LEAQ (DX)(DX*8), AX
LEAQ (DX)(AX*2), AX
MULQ 32(BX)
ADDQ AX, R13
ADCQ DX, R12

// r4 = a0×b4
MOVQ (CX), AX
@@ -231,18 +241,22 @@ TEXT ·feSquare(SB), NOSPLIT, $0-16
MOVQ DX, BX

// r0 += 38×l1×l4
MOVQ 8(CX), AX
IMUL3Q $0x26, AX, AX
MULQ 32(CX)
ADDQ AX, SI
ADCQ DX, BX
MOVQ 8(CX), DX
LEAQ (DX)(DX*8), AX
LEAQ (DX)(AX*2), AX
SHLQ $0x01, AX
MULQ 32(CX)
ADDQ AX, SI
ADCQ DX, BX

// r0 += 38×l2×l3
MOVQ 16(CX), AX
IMUL3Q $0x26, AX, AX
MULQ 24(CX)
ADDQ AX, SI
ADCQ DX, BX
MOVQ 16(CX), DX
LEAQ (DX)(DX*8), AX
LEAQ (DX)(AX*2), AX
SHLQ $0x01, AX
MULQ 24(CX)
ADDQ AX, SI
ADCQ DX, BX

// r1 = 2×l0×l1
MOVQ (CX), AX
@@ -252,18 +266,21 @@ TEXT ·feSquare(SB), NOSPLIT, $0-16
MOVQ DX, DI

// r1 += 38×l2×l4
MOVQ 16(CX), AX
IMUL3Q $0x26, AX, AX
MULQ 32(CX)
ADDQ AX, R8
ADCQ DX, DI
MOVQ 16(CX), DX
LEAQ (DX)(DX*8), AX
LEAQ (DX)(AX*2), AX
SHLQ $0x01, AX
MULQ 32(CX)
ADDQ AX, R8
ADCQ DX, DI

// r1 += 19×l3×l3
MOVQ 24(CX), AX
IMUL3Q $0x13, AX, AX
MULQ 24(CX)
ADDQ AX, R8
ADCQ DX, DI
MOVQ 24(CX), DX
LEAQ (DX)(DX*8), AX
LEAQ (DX)(AX*2), AX
MULQ 24(CX)
ADDQ AX, R8
ADCQ DX, DI

// r2 = 2×l0×l2
MOVQ (CX), AX
@@ -279,11 +296,13 @@ TEXT ·feSquare(SB), NOSPLIT, $0-16
ADCQ DX, R9

// r2 += 38×l3×l4
MOVQ 24(CX), AX
IMUL3Q $0x26, AX, AX
MULQ 32(CX)
ADDQ AX, R10
ADCQ DX, R9
MOVQ 24(CX), DX
LEAQ (DX)(DX*8), AX
LEAQ (DX)(AX*2), AX
SHLQ $0x01, AX
MULQ 32(CX)
ADDQ AX, R10
ADCQ DX, R9

// r3 = 2×l0×l3
MOVQ (CX), AX
@@ -293,18 +312,19 @@ TEXT ·feSquare(SB), NOSPLIT, $0-16
MOVQ DX, R11

// r3 += 2×l1×l2
MOVQ 8(CX), AX
IMUL3Q $0x02, AX, AX
MULQ 16(CX)
ADDQ AX, R12
ADCQ DX, R11
MOVQ 8(CX), AX
SHLQ $0x01, AX
MULQ 16(CX)
ADDQ AX, R12
ADCQ DX, R11

// r3 += 19×l4×l4
MOVQ 32(CX), AX
IMUL3Q $0x13, AX, AX
MULQ 32(CX)
ADDQ AX, R12
ADCQ DX, R11
MOVQ 32(CX), DX
LEAQ (DX)(DX*8), AX
LEAQ (DX)(AX*2), AX
MULQ 32(CX)
ADDQ AX, R12
ADCQ DX, R11

// r4 = 2×l0×l4
MOVQ (CX), AX
@@ -314,11 +334,11 @@ TEXT ·feSquare(SB), NOSPLIT, $0-16
MOVQ DX, R13

// r4 += 2×l1×l3
MOVQ 8(CX), AX
IMUL3Q $0x02, AX, AX
MULQ 24(CX)
ADDQ AX, R14
ADCQ DX, R13
MOVQ 8(CX), AX
SHLQ $0x01, AX
MULQ 24(CX)
ADDQ AX, R14
ADCQ DX, R13

// r4 += l2×l2
MOVQ 16(CX), AX