1
0
mirror of https://github.com/golang/go synced 2024-11-23 08:40:08 -07:00
go/misc/cgo/test
Josh Bleecher Snyder 7365fac2db runtime: use bytes.IndexByte in findnull
bytes.IndexByte is heavily optimized.
Use it in findnull.

name        old time/op  new time/op  delta
GoString-8  65.5ns ± 1%  40.2ns ± 1%  -38.62%  (p=0.000 n=19+19)

findnull is also used in gostringnocopy,
which is used in many hot spots in the runtime.

Fixes #23830

Change-Id: I2e6cb279c7d8078f8844065de684cc3567fe89d7
Reviewed-on: https://go-review.googlesource.com/97523
Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-03-01 20:34:07 +00:00
..
gcc68255 all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue8756 cmd/link, cmd/go: delay linking of mingwex and mingw32 until very end 2016-08-31 06:30:26 +00:00
issue8828 all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue9026 misc/cgo/test: fix freebsd test failure by moving test to its own package. 2014-11-03 13:41:03 -05:00
issue9400 runtime: use NOFRAME on mips and mips64 2018-02-12 21:41:32 +00:00
issue9510a cmd/link, cmd/go, cmd/dist: use copy of libgcc.a for internal linking 2015-11-14 18:56:17 +00:00
issue9510b cmd/link, cmd/go, cmd/dist: use copy of libgcc.a for internal linking 2015-11-14 18:56:17 +00:00
issue20266 go/build: make -I/-L options in cgo flags absolute 2017-06-13 18:36:04 +00:00
align.go
api.go cmd/cgo: only record typedef name for pointer to struct 2016-11-01 23:06:24 +00:00
backdoor.go misc/cgo/test: get rid of the backdoor package 2014-12-24 00:18:21 +00:00
basic.go runtime: use bytes.IndexByte in findnull 2018-03-01 20:34:07 +00:00
buildid_linux.go misc/cgo/test: avoid endless loop when we can't parse notes 2018-01-11 19:55:49 +00:00
callback_c_gc.c all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
callback_c_gccgo.c all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
callback_c.c all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
callback.go cmd/cgo: always use a function literal for pointer checking 2016-10-19 21:20:50 +00:00
cflags.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
cgo_linux_test.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
cgo_stubs_android_test.go misc/cgo/test,cmd/dist: enable (most) Cgo tests on Android 2016-06-01 22:06:51 +00:00
cgo_test.go runtime: use bytes.IndexByte in findnull 2018-03-01 20:34:07 +00:00
cgo_thread_lock.go misc/cgo/test: add test that gccgo fails 2016-10-13 00:03:57 +00:00
cgo_unix_test.go runtime/cgo: retry pthread_create on EAGAIN 2016-12-05 18:46:18 +00:00
checkconst.go cmd/cgo: preserve original call arguments when pointer checking 2016-10-21 20:46:20 +00:00
complex.go cmd/compile, cmd/cgo: align complex{64,128} like GCC 2016-10-05 17:44:27 +00:00
cthread_unix.c all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
cthread_windows.c all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
cthread.go misc/cgo/test,cmd/dist: enable (more) Cgo tests on iOS 2016-06-02 10:09:12 +00:00
duplicate_symbol.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
env.go misc/cgo/test: fix go vet warnings 2015-10-13 17:53:20 +00:00
exports.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
fpvar.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
gcc68255.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
helpers.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue1222.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue1328.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue1560.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue1635.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue2462.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue3250.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue3250w.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue3261.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue3729.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue3729w.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue3741.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue3775.go misc/cgo/test,cmd/dist: enable (most) Cgo tests on Android 2016-06-01 22:06:51 +00:00
issue3945.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue4029.c misc/cgo/test: get uintptr, not pointer, from dlopen 2018-02-02 18:42:10 +00:00
issue4029.go misc/cgo/test: get uintptr, not pointer, from dlopen 2018-02-02 18:42:10 +00:00
issue4029w.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue4054a.go cgo: process DWARF info even when debug data is used for value 2012-09-20 13:20:33 +10:00
issue4054b.go cgo: process DWARF info even when debug data is used for value 2012-09-20 13:20:33 +10:00
issue4273.c all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue4273b.c all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue4339.c misc/cgo/test: test of issue 4339 2013-09-11 09:56:38 -04:00
issue4339.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue4339.h misc/cgo/test: test of issue 4339 2013-09-11 09:56:38 -04:00
issue4417.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue4857.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue5227.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue5242.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue5337.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue5337w.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue5548_c.c all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue5548.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue5603.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue5740.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue5740a.c all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue5740b.c all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue5986.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue6128.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue6390.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue6472.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue6506.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue6612.go cmd/cgo: support floating point #define macros 2017-04-07 21:09:44 +00:00
issue6833_c.c all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue6833.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue6907.go cmd/cgo: permit passing string values directly between Go and C 2017-11-15 03:36:54 +00:00
issue6907export_c.c cmd/cgo: permit passing string values directly between Go and C 2017-11-15 03:36:54 +00:00
issue6907export.go cmd/cgo: permit passing string values directly between Go and C 2017-11-15 03:36:54 +00:00
issue6997_linux.c misc/cgo/test,cmd/dist: enable (most) Cgo tests on Android 2016-06-01 22:06:51 +00:00
issue6997_linux.go misc/cgo/test,cmd/dist: enable (most) Cgo tests on Android 2016-06-01 22:06:51 +00:00
issue7234_test.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue7560.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue7665.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue7786.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue7978.go misc/cgo/test: set the traceback level instead of failing the test 2017-09-13 02:53:11 +00:00
issue8092.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue8148.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue8331.h all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue8331a.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue8331b.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue8428.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue8441.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue8517_windows.c misc/cgo/test: add Test8517 2014-10-09 16:10:51 +11:00
issue8517_windows.go misc/cgo/test: add Test8517 2014-10-09 16:10:51 +11:00
issue8517.go misc/cgo/test: add Test8517 2014-10-09 16:10:51 +11:00
issue8694.go misc/cgo/test,cmd/dist: enable (most) Cgo tests on Android 2016-06-01 22:06:51 +00:00
issue8756.go cmd/link, cmd/go: delay linking of mingwex and mingw32 until very end 2016-08-31 06:30:26 +00:00
issue8811.c all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue8811.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue8828.go cmd/go: add '_go_' suffix to go files compiled by gccgo to avoid naming conflicts 2014-10-15 13:13:37 -07:00
issue8945.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue9026.go misc/cgo/test: fix freebsd test failure by moving test to its own package. 2014-11-03 13:41:03 -05:00
issue9400_linux.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue9510.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue9557.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue10303.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue11925.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue12030.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue13402.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue13930.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue14838.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
issue17065.go misc/cgo/test: add skipped test for issue 17065 2016-09-11 20:43:11 +00:00
issue17537.go cmd/cgo: don't strip qualifiers from C void* pointer 2016-12-14 00:59:38 +00:00
issue18126.go cmd/cgo: fix cgo checking when fetching errno value 2016-12-01 02:13:50 +00:00
issue18146.go misc/cgo/test: pass current environment to syscall.Exec 2017-01-20 21:12:54 +00:00
issue18720.go cmd/cgo: support niladic function-like macros 2017-08-30 18:28:58 +00:00
issue20129.go cmd/cgo: unwrap typedef-chains before type checking 2017-06-27 23:02:34 +00:00
issue20266.go go/build: make -I/-L options in cgo flags absolute 2017-06-13 18:36:04 +00:00
issue20369.go cmd/cgo: support large unsigned macros 2017-05-17 14:42:29 +00:00
issue20910.c cmd/cgo: unify cgo output for gc and gccgo 2017-08-16 21:57:56 +00:00
issue20910.go cmd/cgo: unify cgo output for gc and gccgo 2017-08-16 21:57:56 +00:00
issue21668.go cmd/cgo: avoid using common names for sniffing 2017-08-29 00:42:34 +00:00
issue21708.go cmd/cgo: support large unsigned macro again 2017-09-01 00:42:21 +00:00
issue21809.go go/printer: fix formatting of three-index slice expression 2017-10-03 16:16:30 +00:00
issue21897.go cmd/cgo: special case C ptr types to use uintptr 2017-11-17 22:11:03 +00:00
issue21897b.go cmd/cgo: special case C ptr types to use uintptr 2017-11-17 22:11:03 +00:00
issue22958.go cmd/cgo: for C bitfields use only valid Go integer types 2017-12-01 23:50:23 +00:00
setgid_linux.go all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
sigaltstack.go misc/cgo/test: fix test when using GCC 7 2017-01-20 21:12:19 +00:00
sigprocmask.c runtime: don't always unblock all signals on dragonfly, freebsd and openbsd 2016-04-15 21:20:45 +00:00
sigprocmask.go runtime: don't always unblock all signals on dragonfly, freebsd and openbsd 2016-04-15 21:20:45 +00:00
test22906.go cmd/cgo: make JNI's jobject type map to uintptr in Go 2017-12-08 16:13:14 +00:00