1
0
mirror of https://github.com/golang/go synced 2024-11-14 15:00:27 -07:00
go/src/cmd/5g
Dave Cheney 5bdf40dcca cmd/5g: avoid temporary during OMINUS
Saves one MOVW and one register during the fast div/mod introduced in CL 6819123.

linux/arm (armv5)

benchmark               old ns/op    new ns/op    delta
BenchmarkInt64Mod1             12           12   +7.50%
BenchmarkUint16Mod2             7            7   +0.28%
BenchmarkUint16Mod4             7            7   -0.28%
BenchmarkUint64Mod1            15           11  -23.72%
BenchmarkInt8Neg                8            7  -17.66%
BenchmarkInt16Neg               8            7  -17.66%
BenchmarkInt32Neg               5            5   -9.04%
BenchmarkUint8Neg               7            6  -14.35%
BenchmarkUint16Neg              8            7  -17.66%
BenchmarkUint32Neg              5            5   -9.04%

R=rsc
CC=golang-dev
https://golang.org/cl/6842045
2012-12-12 19:25:22 +11:00
..
cgen64.c cmd/5a, cmd/5l: add MULW{T,B} and MULAW{T,B} support for ARM 2012-06-08 02:42:28 +08:00
cgen.c cmd/5g: avoid temporary during OMINUS 2012-12-12 19:25:22 +11:00
doc.go
galign.c cmd/gc: prepare for 64-bit ints 2012-09-24 14:59:44 -04:00
gg.h cmd/5g, cmd/8g: fix internal error on 64-bit indices statically bounded 2012-11-27 21:37:38 +01:00
ggen.c cmd/gc: add division rewrite to walk pass. 2012-11-26 23:45:22 +01:00
gobj.c cmd/5a, cmd/5l: add MULW{T,B} and MULAW{T,B} support for ARM 2012-06-08 02:42:28 +08:00
gsubr.c cmd/5g: avoid temporary during OMINUS 2012-12-12 19:25:22 +11:00
list.c cmd/5c, cmd/5g, cmd/5l: fix cross compilation failure on darwin 2012-06-08 13:13:02 +10:00
Makefile
opt.h cmd/{5g,6g,8g,6c}: remove unused macro, use %E to print etype. 2012-09-24 23:44:00 +02:00
peep.c cmd/gc: add division rewrite to walk pass. 2012-11-26 23:45:22 +01:00
reg.c cmd/[568]g: recycle ONAME nodes used in regopt to denote registers. 2012-12-09 19:10:52 +01:00