diff options
| author | Keith Randall <khr@golang.org> | 2025-06-03 16:23:02 -0700 |
|---|---|---|
| committer | Keith Randall <khr@golang.org> | 2025-07-31 17:12:39 -0700 |
| commit | eb7f515c4d920c884ba7c37939f016a153c466e9 (patch) | |
| tree | d1e35ad98237d41b2815035d643b016b6240e50f /test/codegen | |
| parent | c0ee2fd4e309ef0b8f4ab6f4860e2626c8e00802 (diff) | |
| download | go-eb7f515c4d920c884ba7c37939f016a153c466e9.tar.xz | |
cmd/compile: use generated loops instead of DUFFZERO on amd64
goarch: amd64
cpu: 12th Gen Intel(R) Core(TM) i7-12700
│ base │ exp │
│ sec/op │ sec/op vs base │
MemclrKnownSize112-20 1.270n ± 14% 1.006n ± 0% -20.72% (p=0.000 n=10)
MemclrKnownSize128-20 1.266n ± 0% 1.005n ± 0% -20.58% (p=0.000 n=10)
MemclrKnownSize192-20 1.771n ± 0% 1.579n ± 1% -10.84% (p=0.000 n=10)
MemclrKnownSize248-20 4.034n ± 0% 3.520n ± 0% -12.75% (p=0.000 n=10)
MemclrKnownSize256-20 2.269n ± 0% 2.014n ± 0% -11.26% (p=0.000 n=10)
MemclrKnownSize512-20 4.280n ± 0% 4.030n ± 0% -5.84% (p=0.000 n=10)
MemclrKnownSize1024-20 8.309n ± 1% 8.057n ± 0% -3.03% (p=0.000 n=10)
Change-Id: I8f1627e2a1e981ff351dc7178932b32a2627f765
Reviewed-on: https://go-review.googlesource.com/c/go/+/678937
Reviewed-by: Keith Randall <khr@google.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Diffstat (limited to 'test/codegen')
| -rw-r--r-- | test/codegen/issue52635.go | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/test/codegen/issue52635.go b/test/codegen/issue52635.go index 9ee63f0fbe..65f2a021d6 100644 --- a/test/codegen/issue52635.go +++ b/test/codegen/issue52635.go @@ -17,31 +17,31 @@ type T struct { func (t *T) f() { // amd64:-".*runtime.memclrNoHeapPointers" - // amd64:"DUFFZERO" + // amd64:`MOVUPS\tX15,` for i := range t.a { t.a[i] = 0 } // amd64:-".*runtime.memclrNoHeapPointers" - // amd64:"DUFFZERO" + // amd64:`MOVUPS\tX15,` for i := range *t.a { t.a[i] = 0 } // amd64:-".*runtime.memclrNoHeapPointers" - // amd64:"DUFFZERO" + // amd64:`MOVUPS\tX15,` for i := range t.a { (*t.a)[i] = 0 } // amd64:-".*runtime.memclrNoHeapPointers" - // amd64:"DUFFZERO" + // amd64:`MOVUPS\tX15,` for i := range *t.a { (*t.a)[i] = 0 } // amd64:-".*runtime.memclrNoHeapPointers" - // amd64:"DUFFZERO" + // amd64:`MOVUPS\tX15,` for i := range t.b { t.b[i] = 0 } |
