mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
cmd/compile, internal/buildcfg: enable regABI on s390x, and add s390x
in test func hasRegisterABI
```
goos: linux
goarch: s390x
shortname: minio
pkg: github.com/minio/minio/cmd
│ old │ new
│
│ sec/op │ sec/op vs base
│
DecodehealingTracker-128 1227.5n ± 1% 894.6n ± 1% -27.12%
(p=0.000 n=10)
AppendMsgResyncTargetsInfo-128 8.755n ± 0% 4.942n ± 20% -43.55%
(p=0.000 n=10)
DataUpdateTracker-128 2.075µ ± 1% 1.949µ ± 1% -6.10%
(p=0.000 n=10)
MarshalMsgdataUsageCacheInfo-128 64.32n ± 2% 50.57n ± 6% -21.37%
(p=0.000 n=10)
geomean 194.6n 144.5n -25.76%
shortname: gonum_topo
pkg: gonum.org/v1/gonum/graph/topo
│ old │ new
│
│ sec/op │ sec/op vs base
│
TarjanSCCGnp_10_tenth-128 8.733µ ± 1% 6.953µ ± 2% -20.38%
(p=0.000 n=10)
TarjanSCCGnp_1000_half-128 101.60m ± 0% 72.79m ± 1% -28.36%
(p=0.000 n=10)
geomean 942.0µ 711.4µ -24.48%
shortname: gonum_traverse
pkg: gonum.org/v1/gonum/graph/traverse
│ old │
new │
│ sec/op │ sec/op vs
base │
WalkAllBreadthFirstGnp_10_tenth-128 3.871µ ± 2% 3.242µ ± 2%
-16.25% (p=0.000 n=10)
WalkAllBreadthFirstGnp_1000_tenth-128 11.879m ± 1% 9.034m ± 1%
-23.95% (p=0.000 n=10)
geomean 214.4µ 171.1µ
-20.19%
hortname: ericlagergren_decimal
pkg: github.com/ericlagergren/decimal/benchmarks
│ old │
new │
│ sec/op │ sec/op vs
base │
Pi/foo=ericlagergren_(Go)/prec=100-128 181.6µ ± 0% 145.3µ ± 2%
-20.01% (p=0.000 n=10)
Pi/foo=ericlagergren_(GDA)/prec=100-128 356.4µ ± 1% 298.2µ ± 2%
-16.33% (p=0.000 n=10)
Pi/foo=shopspring/prec=100-128 426.5µ ± 2% 403.1µ ± 4%
-5.47% (p=0.000 n=10)
Pi/foo=apmckinlay/prec=100-128 4.943µ ± 0% 3.903µ ± 1%
-21.03% (p=0.000 n=10)
Pi/foo=go-inf/prec=100-128 132.1µ ± 4% 119.7µ ± 3%
-9.37% (p=0.000 n=10)
Pi/foo=float64/prec=100-128 4.210µ ± 0% 4.210µ ± 0%
~ (p=0.269 n=10)
geomean 65.07µ 57.02µ
-12.37%
shortname: uber_tally
pkg: github.com/uber-go/tally
│ old │ new
│
│ sec/op │ sec/op vs base
│
ScopeTaggedNoCachedSubscopes-128 3.511µ ± 12% 3.067µ ± 6% -12.63%
(p=0.000 n=10)
HistogramAllocation-128 1.085µ ± 15% 1.011µ ± 6% -6.87%
(p=0.001 n=10)
geomean 1.952µ 1.760µ -9.80%
shortname: uber_zap
pkg: go.uber.org/zap/zapcore
│ old │
new │
│ sec/op │
sec/op vs base │
BufferedWriteSyncer/write_file_with_buffer-128 119.0n ± 3% 101.7n
± 5% -14.54% (p=0.000 n=10)
MultiWriteSyncer/2_discarder-128 13.320n ± 34% 9.410n
± 28% -29.35% (p=0.005 n=10)
MultiWriteSyncer/4_discarder-128 10.830n ± 10% 8.883n
± 8% -17.98% (p=0.000 n=10)
MultiWriteSyncer/4_discarder_with_buffer-128 119.0n ± 5% 104.1n
± 4% -12.52% (p=0.000 n=10)
WriteSyncer/write_file_with_no_buffer-128 1.393µ ± 10% 1.409µ
± 7% ~ (p=1.000 n=10)
ZapConsole-128 796.9n ± 14% 722.2n
± 7% -9.37% (p=0.003 n=10)
JSONLogMarshalerFunc-128 1.233µ ± 5% 1.095µ
± 8% -11.20% (p=0.002 n=10)
ZapJSON-128 560.7n ± 9% 547.9n
± 6% ~ (p=0.289 n=10)
StandardJSON-128 628.7n ± 7% 566.2n
± 7% -9.95% (p=0.001 n=10)
Sampler_Check/7_keys-128 8.068n ± 17% 8.232n
± 4% ~ (p=0.382 n=10)
Sampler_Check/50_keys-128 4.064n ± 13% 3.610n
± 17% ~ (p=0.063 n=10)
Sampler_Check/100_keys-128 6.559n ± 5% 6.386n
± 6% ~ (p=0.063 n=10)
Sampler_CheckWithHook/7_keys-128 40.04n ± 3% 36.82n
± 6% -8.05% (p=0.000 n=10)
Sampler_CheckWithHook/50_keys-128 39.48n ± 3% 36.48n
± 4% -7.61% (p=0.000 n=10)
Sampler_CheckWithHook/100_keys-128 41.27n ± 5% 40.85n
± 9% ~ (p=0.353 n=10)
TeeCheck-128 135.2n ± 11% 128.2n
± 10% ~ (p=0.190 n=10)
geomean 77.98n 70.91n
-9.07%
shortname: spexs2
pkg: github.com/egonelbre/spexs2/_benchmark
│ old │ new │
│ sec/op │ sec/op vs base │
Run/10k/1-128 21.58 ± 2% 19.68 ± 12% -8.84% (p=0.015 n=10)
Run/10k/16-128 4.539 ± 6% 4.063 ± 7% -10.48% (p=0.000 n=10)
geomean 9.898 8.941 -9.67%
```
Update #40724
Change-Id: I3c3c02e766e2f7402e385eddadbfe09361d82387
Reviewed-on: https://go-review.googlesource.com/c/go/+/719482
Reviewed-by: Vishwanatha HD <vishwanatha.hd@ibm.com>
Reviewed-by: Keith Randall <khr@google.com>
Reviewed-by: Michael Pratt <mpratt@google.com>
Reviewed-by: Keith Randall <khr@golang.org>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
This commit is contained in:
parent
2fe0ba8d52
commit
89552911b3
3 changed files with 6 additions and 4 deletions
|
|
@ -305,8 +305,8 @@ func NewConfig(arch string, types Types, ctxt *obj.Link, optimize, softfloat boo
|
|||
c.registers = registersS390X[:]
|
||||
c.gpRegMask = gpRegMaskS390X
|
||||
c.fpRegMask = fpRegMaskS390X
|
||||
//c.intParamRegs = paramIntRegS390X
|
||||
//c.floatParamRegs = paramFloatRegS390X
|
||||
c.intParamRegs = paramIntRegS390X
|
||||
c.floatParamRegs = paramFloatRegS390X
|
||||
c.FPReg = framepointerRegS390X
|
||||
c.LinkReg = linkRegS390X
|
||||
c.hasGReg = true
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ func testGoArch() string {
|
|||
|
||||
func hasRegisterABI() bool {
|
||||
switch testGoArch() {
|
||||
case "amd64", "arm64", "loong64", "ppc64", "ppc64le", "riscv":
|
||||
case "amd64", "arm64", "loong64", "ppc64", "ppc64le", "riscv", "s390x":
|
||||
return true
|
||||
}
|
||||
return false
|
||||
|
|
|
|||
|
|
@ -65,6 +65,8 @@ func ParseGOEXPERIMENT(goos, goarch, goexp string) (*ExperimentFlags, error) {
|
|||
case "amd64", "arm64", "loong64", "ppc64le", "ppc64", "riscv64":
|
||||
regabiAlwaysOn = true
|
||||
regabiSupported = true
|
||||
case "s390x":
|
||||
regabiSupported = true
|
||||
}
|
||||
|
||||
// Older versions (anything before V16) of dsymutil don't handle
|
||||
|
|
@ -143,7 +145,7 @@ func ParseGOEXPERIMENT(goos, goarch, goexp string) (*ExperimentFlags, error) {
|
|||
flags.RegabiWrappers = true
|
||||
flags.RegabiArgs = true
|
||||
}
|
||||
// regabi is only supported on amd64, arm64, loong64, riscv64, ppc64 and ppc64le.
|
||||
// regabi is only supported on amd64, arm64, loong64, riscv64, s390x, ppc64 and ppc64le.
|
||||
if !regabiSupported {
|
||||
flags.RegabiWrappers = false
|
||||
flags.RegabiArgs = false
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue