go/src/runtime
Keith Randall 5a75d6a08e cmd/compile: optimize non-empty-interface type conversions
When doing i.(T) for non-empty-interface i and concrete type T,
there's no need to read the type out of the itab. Just compare the
itab to the itab we expect for that interface/type pair.

Also optimize type switches by putting the type hash of the
concrete type in the itab. That way we don't need to load the
type pointer out of the itab.

Update #18492

Change-Id: I49e280a21e5687e771db5b8a56b685291ac168ce
Reviewed-on: https://go-review.googlesource.com/34810
Run-TryBot: Keith Randall <khr@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Josh Bleecher Snyder <josharian@gmail.com>
Reviewed-by: David Chase <drchase@google.com>
2017-02-13 18:16:31 +00:00
..
cgo runtime: add cgo support for GOARCH=mips{,le} 2016-12-14 23:52:33 +00:00
debug runtime/debug: don't run a GC when setting SetGCPercent negative 2017-02-10 18:28:37 +00:00
internal runtime/internal/atomic: crash on unaligned 64-bit ops on 32-bit MIPS 2016-11-22 02:05:07 +00:00
msan runtime, runtime/msan: add msan runtime support 2015-10-21 17:50:39 +00:00
pprof runtime/pprof: merge internal/protopprof into pprof package 2017-02-10 13:09:19 +00:00
race runtime/race: allow TestFail to run longer than 0.00s 2016-11-07 02:55:52 +00:00
testdata runtime: add explicit (void) in C to avoid GCC 7 problem 2017-01-30 19:27:49 +00:00
trace cmd/compile/internal/syntax: removed gcCompat code needed to pass orig. tests 2017-02-10 01:22:30 +00:00
HACKING.md runtime: expand HACKING.md 2017-01-06 18:30:36 +00:00
Makefile
alg.go runtime, cmd/compile: rename memclr -> memclrNoHeapPointers 2016-10-28 18:20:33 +00:00
append_test.go runtime: make append only clear uncopied memory 2016-10-04 22:40:20 +00:00
asm.s runtime: cull dead code 2016-08-22 16:41:34 +00:00
asm_386.s runtime: implement fastrand in go 2017-02-10 19:16:29 +00:00
asm_amd64.s runtime: implement fastrand in go 2017-02-10 19:16:29 +00:00
asm_amd64p32.s runtime: implement fastrand in go 2017-02-10 19:16:29 +00:00
asm_arm.s runtime: implement fastrand in go 2017-02-10 19:16:29 +00:00
asm_arm64.s runtime: implement fastrand in go 2017-02-10 19:16:29 +00:00
asm_mips64x.s runtime: implement fastrand in go 2017-02-10 19:16:29 +00:00
asm_mipsx.s runtime: implement fastrand in go 2017-02-10 19:16:29 +00:00
asm_ppc64x.h all: single space after period. 2016-03-02 00:13:47 +00:00
asm_ppc64x.s runtime: implement fastrand in go 2017-02-10 19:16:29 +00:00
asm_s390x.s runtime: implement fastrand in go 2017-02-10 19:16:29 +00:00
atomic_arm64.s runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
atomic_mips64x.s runtime: added assembly part of linux/mips64{,le} support 2015-11-12 04:46:17 +00:00
atomic_mipsx.s runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
atomic_pointer.go runtime: perform write barrier before pointer write 2016-10-28 20:47:52 +00:00
atomic_ppc64x.s sync/atomic, runtime/internal/atomic: improve ppc64x atomics 2016-05-05 18:52:28 +00:00
callers_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
cgo.go cmd/cgo, runtime, runtime/cgo: TSAN support for malloc 2016-05-25 23:22:24 +00:00
cgo_mmap.go runtime/cgo: use libc for sigaction syscalls when possible 2016-11-16 05:38:38 +00:00
cgo_ppc64x.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
cgo_sigaction.go runtime/cgo: use libc for sigaction syscalls when possible 2016-11-16 05:38:38 +00:00
cgocall.go runtime: handle SIGPIPE in c-archive and c-shared programs 2017-02-03 20:07:36 +00:00
cgocallback.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
cgocheck.go runtime: access modules via a slice 2016-11-01 16:04:12 +00:00
chan.go runtime: perform write barriers on direct channel receive 2016-10-31 23:46:13 +00:00
chan_test.go all: don't call t.Fatal from a goroutine 2016-11-15 15:13:48 +00:00
chanbarrier_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
closure_test.go
compiler.go all: single space after period. 2016-03-02 00:13:47 +00:00
complex.go
complex_test.go
cpuflags_amd64.go runtime: improve memmove for amd64 2016-10-06 10:21:58 +00:00
cpuidlow_amd64.s runtime: improve memmove for amd64 2016-10-06 10:21:58 +00:00
cpuprof.go runtime: mark several types go:notinheap 2016-10-15 17:58:20 +00:00
cputicks.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
crash_cgo_test.go runtime: don't skip TestCgoCallbackGC on FreeBSD 2016-12-05 18:10:50 +00:00
crash_nonunix_test.go runtime: if the test program hangs, try to get a stack trace 2016-06-15 15:03:48 +00:00
crash_test.go runtime: do not print runtime panic frame at top of user stack 2016-11-22 18:33:30 +00:00
crash_unix_test.go all: sprinkle t.Parallel on some slow tests 2016-11-04 16:56:57 +00:00
debug.go all: single space after period. 2016-03-02 00:13:47 +00:00
defs1_linux.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs1_netbsd_386.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs1_netbsd_amd64.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs1_netbsd_arm.go runtime, cmd/link: fix netbsd/arm EABI support 2016-10-24 15:23:13 +00:00
defs1_solaris_amd64.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs2_linux.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs3_linux.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs_arm_linux.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs_darwin.go runtime: write sigsetstack for Darwin, fix sigaction arg 2015-12-18 20:56:10 +00:00
defs_darwin_386.go runtime: write sigsetstack for Darwin, fix sigaction arg 2015-12-18 20:56:10 +00:00
defs_darwin_amd64.go runtime: write sigsetstack for Darwin, fix sigaction arg 2015-12-18 20:56:10 +00:00
defs_darwin_arm.go runtime: write sigsetstack for Darwin, fix sigaction arg 2015-12-18 20:56:10 +00:00
defs_darwin_arm64.go runtime: write sigsetstack for Darwin, fix sigaction arg 2015-12-18 20:56:10 +00:00
defs_dragonfly.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs_dragonfly_amd64.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs_freebsd.go runtime: sleep on CLOCK_MONOTONIC in futexsleep1 on freebsd 2016-10-01 01:25:21 +00:00
defs_freebsd_386.go runtime: sleep on CLOCK_MONOTONIC in futexsleep1 on freebsd 2016-10-01 01:25:21 +00:00
defs_freebsd_amd64.go runtime: sleep on CLOCK_MONOTONIC in futexsleep1 on freebsd 2016-10-01 01:25:21 +00:00
defs_freebsd_arm.go runtime: sleep on CLOCK_MONOTONIC in futexsleep1 on freebsd 2016-10-01 01:25:21 +00:00
defs_linux.go
defs_linux_386.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs_linux_amd64.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs_linux_arm.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs_linux_arm64.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs_linux_mips64x.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs_linux_mipsx.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
defs_linux_ppc64.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs_linux_ppc64le.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs_linux_s390x.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs_nacl_386.go
defs_nacl_amd64p32.go
defs_nacl_arm.go
defs_netbsd.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs_netbsd_386.go
defs_netbsd_amd64.go
defs_netbsd_arm.go
defs_openbsd.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs_openbsd_386.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs_openbsd_amd64.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs_openbsd_arm.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs_plan9_386.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
defs_plan9_amd64.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
defs_plan9_arm.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
defs_solaris.go runtime: unify handling of alternate signal stack 2016-09-26 04:07:31 +00:00
defs_solaris_amd64.go
defs_windows.go
defs_windows_386.go
defs_windows_amd64.go
duff_386.s
duff_amd64.s runtime: optimize duffcopy on amd64 2015-09-22 15:02:37 +00:00
duff_arm.s
duff_arm64.s runtime, cmd/compile: implement and use DUFFCOPY on ARM64 2016-09-27 15:07:31 +00:00
duff_mips64x.s runtime: added assembly part of linux/mips64{,le} support 2015-11-12 04:46:17 +00:00
duff_ppc64x.s cmd/internal/obj, runtime: add NOFRAME flag to suppress stack frame set up on ppc64x 2015-10-18 22:13:30 +00:00
env_plan9.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
env_posix.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
env_test.go
error.go cmd/compile: make panicwrap argument-free 2017-02-11 23:27:35 +00:00
example_test.go runtime: add Frames example 2017-02-13 06:10:35 +00:00
export_arm_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
export_futex_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
export_linux_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
export_mmap_test.go runtime: fetch physical page size from the OS 2016-09-06 21:05:50 +00:00
export_test.go runtime: implement fastrand in go 2017-02-10 19:16:29 +00:00
export_windows_test.go runtime: revert "do not call timeBeginPeriod on windows" 2016-04-09 16:11:41 +00:00
extern.go runtime: disable stack rescanning by default 2016-10-28 21:24:13 +00:00
fastlog2.go all: fix misspellings 2017-01-07 16:53:25 +00:00
fastlog2_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
fastlog2table.go pprof: improve sampling for heap profiling 2015-10-05 08:15:09 +00:00
funcdata.h runtime: fix a typo in asssembly macro GO_RESULTS_INITIALIZED 2016-03-14 14:53:29 +00:00
futex_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
gc_test.go cmd/compile: do more type conversion inline 2016-11-02 21:33:03 +00:00
gcinfo_test.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
go_tls.h all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
hash32.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
hash64.go runtime: add s390x support (modified files only) 2016-04-06 04:25:06 +00:00
hash_test.go runtime: remove TestCollisions from -short 2016-09-24 03:10:13 +00:00
hashmap.go runtime, cmd/compile: rename memclr -> memclrNoHeapPointers 2016-10-28 18:20:33 +00:00
hashmap_fast.go runtime: limit the number of map overflow buckets 2016-09-13 17:53:32 +00:00
heapdump.go time: optimize Now on darwin, windows 2017-02-09 14:45:16 +00:00
iface.go cmd/compile: optimize non-empty-interface type conversions 2017-02-13 18:16:31 +00:00
iface_test.go
lfstack.go runtime: fix stale comment in lfstack 2016-06-16 19:45:33 +00:00
lfstack_32bit.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
lfstack_64bit.go runtime: merge lfstack_amd64.go into lfstack_64bit.go 2016-04-11 06:18:52 +00:00
lfstack_test.go
lock_futex.go runtime: find a home for orphaned comments 2016-04-14 18:34:09 +00:00
lock_sema.go all: single space after period. 2016-03-02 00:13:47 +00:00
malloc.go runtime: fix confusion between _MaxMem and _MaxArena32 2017-02-07 18:39:18 +00:00
malloc_test.go runtime: add number of forced GCs to MemStats 2016-12-07 20:59:16 +00:00
map_test.go all: sprinkle t.Parallel on some slow tests 2016-11-04 16:56:57 +00:00
mapspeed_test.go
mbarrier.go runtime: implement unconditional hybrid barrier 2016-10-28 21:24:02 +00:00
mbitmap.go runtime: remove markBits.clearMarkedNonAtomic 2017-02-06 04:45:55 +00:00
mcache.go runtime: make fixalloc zero allocations on reuse 2016-10-28 18:20:23 +00:00
mcentral.go runtime: mark several types go:notinheap 2016-10-15 17:58:20 +00:00
mem_bsd.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
mem_darwin.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
mem_linux.go runtime: don't hard-code physical page size 2016-09-06 21:05:53 +00:00
mem_plan9.go runtime, cmd/compile: rename memclr -> memclrNoHeapPointers 2016-10-28 18:20:33 +00:00
mem_windows.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
memclr_386.s runtime, cmd/compile: rename memclr -> memclrNoHeapPointers 2016-10-28 18:20:33 +00:00
memclr_amd64.s runtime, cmd/compile: rename memclr -> memclrNoHeapPointers 2016-10-28 18:20:33 +00:00
memclr_arm.s runtime, cmd/compile: rename memclr -> memclrNoHeapPointers 2016-10-28 18:20:33 +00:00
memclr_arm64.s runtime, cmd/compile: rename memclr -> memclrNoHeapPointers 2016-10-28 18:20:33 +00:00
memclr_mips64x.s runtime, cmd/compile: rename memclr -> memclrNoHeapPointers 2016-10-28 18:20:33 +00:00
memclr_mipsx.s runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
memclr_plan9_386.s runtime, cmd/compile: rename memclr -> memclrNoHeapPointers 2016-10-28 18:20:33 +00:00
memclr_plan9_amd64.s runtime, cmd/compile: rename memclr -> memclrNoHeapPointers 2016-10-28 18:20:33 +00:00
memclr_ppc64x.s runtime, cmd/compile: rename memclr -> memclrNoHeapPointers 2016-10-28 18:20:33 +00:00
memclr_s390x.s runtime, cmd/compile: rename memclr -> memclrNoHeapPointers 2016-10-28 18:20:33 +00:00
memmove_386.s all: fix obsolete inferno-os links 2016-08-29 04:54:42 +00:00
memmove_amd64.s runtime: amd64, use 4-byte ops for memmove of 4 bytes 2017-01-23 19:39:22 +00:00
memmove_arm.s all: fix obsolete inferno-os links 2016-08-29 04:54:42 +00:00
memmove_arm64.s runtime: adjust the arm64 memmove and memclr to operate by word as much as they can 2015-10-08 07:49:35 +00:00
memmove_linux_amd64_test.go all: sprinkle t.Parallel on some slow tests 2016-11-04 16:56:57 +00:00
memmove_mips64x.s runtime: added assembly part of linux/mips64{,le} support 2015-11-12 04:46:17 +00:00
memmove_mipsx.s runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
memmove_nacl_amd64p32.s all: single space after period. 2016-03-02 00:13:47 +00:00
memmove_plan9_386.s all: fix obsolete inferno-os links 2016-08-29 04:54:42 +00:00
memmove_plan9_amd64.s all: fix obsolete inferno-os links 2016-08-29 04:54:42 +00:00
memmove_ppc64x.s runtime: improve memmove performance ppc64,ppc64le 2016-04-13 15:27:59 +00:00
memmove_s390x.s runtime: add s390x support (new files and lfstack_64bit.go modifications) 2016-04-07 18:56:54 +00:00
memmove_test.go runtime: amd64, use 4-byte ops for memmove of 4 bytes 2017-01-23 19:39:22 +00:00
mfinal.go cmd/compile: do more type conversion inline 2016-11-02 21:33:03 +00:00
mfinal_test.go
mfixalloc.go runtime, cmd/compile: rename memclr -> memclrNoHeapPointers 2016-10-28 18:20:33 +00:00
mgc.go time: optimize Now on darwin, windows 2017-02-09 14:45:16 +00:00
mgcmark.go cmd/trace: Record mark assists in execution traces 2017-02-10 18:03:42 +00:00
mgcsweep.go runtime: debug prints for spanBytesAlloc underflow 2017-01-10 15:59:39 +00:00
mgcsweepbuf.go runtime: make markrootSpans time proportional to in-use spans 2016-10-25 22:32:59 +00:00
mgcwork.go runtime: wake idle Ps when enqueuing GC work 2016-11-20 22:44:22 +00:00
mheap.go runtime: compute size classes statically 2016-10-30 03:48:49 +00:00
mkduff.go runtime: update mkduff legacy comments 2016-10-12 14:51:50 +00:00
mkfastlog2table.go pprof: improve sampling for heap profiling 2015-10-05 08:15:09 +00:00
mknacl.sh all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
mksizeclasses.go runtime: add table of size classes in a comment 2017-01-08 00:01:30 +00:00
mmap.go runtime: find a home for orphaned comments 2016-04-14 18:34:09 +00:00
mprof.go runtime: ensure elapsed cycles are not negative 2016-10-28 22:14:10 +00:00
msan.go runtime: check for nil g and m in msanread 2017-01-19 23:06:54 +00:00
msan0.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
msan_amd64.s runtime/cgo: use libc for sigaction syscalls when possible 2016-11-16 05:38:38 +00:00
msize.go runtime: compute size classes statically 2016-10-30 03:48:49 +00:00
mstats.go time: optimize Now on darwin, windows 2017-02-09 14:45:16 +00:00
mstkbar.go runtime: don't reserve space for stack barriers if they're off 2016-10-19 21:36:37 +00:00
net_plan9.go net: implement asynchonous cancelable I/O on Plan 9 2016-11-12 05:44:36 +00:00
netpoll.go runtime: mark several types go:notinheap 2016-10-15 17:58:20 +00:00
netpoll_epoll.go runtime: on unexpected netpoll error, throw instead of looping 2015-09-15 17:56:56 +00:00
netpoll_kqueue.go all: single space after period. 2016-03-02 00:13:47 +00:00
netpoll_nacl.go
netpoll_solaris.go all: fix typos and spelling 2016-02-24 18:42:29 +00:00
netpoll_stub.go
netpoll_windows.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
noasm.go all: fix assembly vet issues 2016-08-25 18:52:31 +00:00
norace_linux_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
norace_test.go all: use cannot instead of can not 2016-02-21 15:35:50 +00:00
os2_freebsd.go
os2_nacl.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
os2_openbsd.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
os2_plan9.go
os2_solaris.go
os3_plan9.go runtime: enable/disable SIGPROF if needed when profiling 2017-02-09 18:53:34 +00:00
os3_solaris.go runtime, cmd/compile: rename memclr -> memclrNoHeapPointers 2016-10-28 18:20:33 +00:00
os_android.go runtime: android/arm64 support 2015-11-17 16:28:18 +00:00
os_darwin.go runtime: os.Executable runtime support for Darwin 2016-11-07 20:18:36 +00:00
os_darwin_arm.go runtime: rename fastrand1 to fastrand 2016-08-30 23:59:21 +00:00
os_darwin_arm64.go runtime: rename fastrand1 to fastrand 2016-08-30 23:59:21 +00:00
os_dragonfly.go runtime: minor simplifications to signal code 2016-09-28 13:12:47 +00:00
os_freebsd.go runtime: sleep on CLOCK_MONOTONIC in futexsleep1 on freebsd 2016-10-01 01:25:21 +00:00
os_freebsd_arm.go runtime: rename fastrand1 to fastrand 2016-08-30 23:59:21 +00:00
os_linux.go runtime: check sched_getaffinity return value 2017-01-03 22:35:42 +00:00
os_linux_arm.go runtime: skip floating point hardware check on Android 2016-12-22 19:31:15 +00:00
os_linux_arm64.go runtime: rename fastrand1 to fastrand 2016-08-30 23:59:21 +00:00
os_linux_be64.go runtime: fix sigset type for ppc64 big-endian GNU/Linux 2016-10-06 22:24:40 +00:00
os_linux_generic.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
os_linux_mips64x.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
os_linux_mipsx.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
os_linux_noauxv.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
os_linux_ppc64x.go runtime: get ppc64x ISA level and hardware capabilities from HWCAP/HWCAP2 2016-11-01 13:41:04 +00:00
os_linux_s390x.go runtime: get s390x vector facility availability from AT_HWCAP 2016-10-19 21:50:13 +00:00
os_nacl.go runtime: enable/disable SIGPROF if needed when profiling 2017-02-09 18:53:34 +00:00
os_nacl_arm.go runtime: rename fastrand1 to fastrand 2016-08-30 23:59:21 +00:00
os_netbsd.go runtime: minor simplifications to signal code 2016-09-28 13:12:47 +00:00
os_netbsd_386.go os: consolidate os{1,2}_*.go files 2016-04-06 05:04:47 +00:00
os_netbsd_amd64.go os: consolidate os{1,2}_*.go files 2016-04-06 05:04:47 +00:00
os_netbsd_arm.go runtime: rename fastrand1 to fastrand 2016-08-30 23:59:21 +00:00
os_openbsd.go runtime: minor simplifications to signal code 2016-09-28 13:12:47 +00:00
os_openbsd_arm.go runtime: rename fastrand1 to fastrand 2016-08-30 23:59:21 +00:00
os_plan9.go net: implement asynchonous cancelable I/O on Plan 9 2016-11-12 05:44:36 +00:00
os_plan9_arm.go runtime: rename fastrand1 to fastrand 2016-08-30 23:59:21 +00:00
os_solaris.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
os_windows.go runtime: enable/disable SIGPROF if needed when profiling 2017-02-09 18:53:34 +00:00
panic.go all: make spelling consistent 2016-12-08 23:22:37 +00:00
plugin.go cmd/compile: optimize non-empty-interface type conversions 2017-02-13 18:16:31 +00:00
print.go runtime: include pre-panic/throw logs in core dumps 2016-11-11 21:29:53 +00:00
proc.go runtime: enable/disable SIGPROF if needed when profiling 2017-02-09 18:53:34 +00:00
proc_runtime_test.go runtime: improve randomized stealing logic 2016-03-25 11:00:48 +00:00
proc_test.go runtime: fix goroutine priority elevation 2016-05-19 18:18:13 +00:00
proflabel.go runtime: add definitions for SetGoroutineLabels and Do 2017-02-06 20:29:37 +00:00
race.go testing: mark tests and benchmarks failed if a race occurs during execution 2016-11-03 18:19:49 +00:00
race0.go runtime: per-P contexts for race detector 2016-05-03 11:00:43 +00:00
race_amd64.s runtime: fix race atomic operations on external memory 2016-06-29 15:30:54 +00:00
rand_test.go runtime: implement fastrand in go 2017-02-10 19:16:29 +00:00
rdebug.go runtime: simplify setPanicOnFault slightly 2016-04-13 06:14:06 +00:00
rt0_android_386.s cmd,runtime: TLS setup for android/386 2015-11-11 21:59:24 +00:00
rt0_android_amd64.s runtime: fall back to /proc/self/auxv in Android libs 2016-11-29 15:27:53 +00:00
rt0_android_arm.s runtime: fall back to /proc/self/auxv in Android libs 2016-11-29 15:27:53 +00:00
rt0_android_arm64.s runtime: fall back to /proc/self/auxv in Android libs 2016-11-29 15:27:53 +00:00
rt0_darwin_386.s runtime: for c-archive/c-shared, install signal handlers synchronously 2016-01-09 00:58:38 +00:00
rt0_darwin_amd64.s runtime: align C library startup calls on amd64 2016-05-25 23:16:46 +00:00
rt0_darwin_arm.s runtime,runtime/cgo: save callee-saved FP register on arm 2016-05-25 06:54:28 +00:00
rt0_darwin_arm64.s runtime, runtime/cgo: save callee-saved FP registers on arm64 2016-03-25 23:04:44 +00:00
rt0_dragonfly_amd64.s
rt0_freebsd_386.s
rt0_freebsd_amd64.s
rt0_freebsd_arm.s
rt0_linux_386.s runtime, syscall: switch linux/386 to use int 0x80 2016-02-24 02:07:17 +00:00
rt0_linux_amd64.s runtime: make stack 16-byte aligned for external code in _rt0_amd64_linux_lib 2016-08-05 23:56:07 +00:00
rt0_linux_arm.s runtime,runtime/cgo: save callee-saved FP register on arm 2016-05-25 06:54:28 +00:00
rt0_linux_arm64.s runtime, runtime/cgo: save callee-saved FP registers on arm64 2016-03-25 23:04:44 +00:00
rt0_linux_mips64x.s cmd/link, runtime: add external linking support for linux/mips64x 2016-05-01 02:38:37 +00:00
rt0_linux_mipsx.s runtime: add cgo support for GOARCH=mips{,le} 2016-12-14 23:52:33 +00:00
rt0_linux_ppc64.s runtime, runtime/cgo: conform to PIC register use rules in ppc64 asm 2015-10-18 23:36:39 +00:00
rt0_linux_ppc64le.s runtime: add library startup support for ppc64le 2016-05-26 03:31:59 +00:00
rt0_linux_s390x.s runtime: add s390x support (new files and lfstack_64bit.go modifications) 2016-04-07 18:56:54 +00:00
rt0_nacl_386.s
rt0_nacl_amd64p32.s
rt0_nacl_arm.s
rt0_netbsd_386.s
rt0_netbsd_amd64.s
rt0_netbsd_arm.s
rt0_openbsd_386.s
rt0_openbsd_amd64.s
rt0_openbsd_arm.s
rt0_plan9_386.s runtime: replace is{plan9,solaris,windows} with GOOS tests 2015-10-23 18:11:17 +00:00
rt0_plan9_amd64.s runtime: replace is{plan9,solaris,windows} with GOOS tests 2015-10-23 18:11:17 +00:00
rt0_plan9_arm.s runtime: new files for plan9_arm support 2016-03-07 16:25:48 +00:00
rt0_solaris_amd64.s runtime: replace is{plan9,solaris,windows} with GOOS tests 2015-10-23 18:11:17 +00:00
rt0_windows_386.s cmd/go: fix -buildmode=c-archive should work on windows 2016-04-04 03:38:25 +00:00
rt0_windows_amd64.s cmd/go: fix -buildmode=c-archive should work on windows 2016-04-04 03:38:25 +00:00
runtime-gdb.py runtime: set $sp before $pc in gdb python script 2016-06-09 20:02:59 +00:00
runtime-gdb_test.go runtime: skip flaky TestGdbPythonCgo on MIPS 2017-02-02 21:45:42 +00:00
runtime-lldb_test.go cmd/link: put text at address 0x1000000 on darwin/amd64 2016-10-28 20:17:53 +00:00
runtime.go syscall: make Getpagesize return page size from runtime 2016-09-06 21:05:55 +00:00
runtime1.go runtime: access modules via a slice 2016-11-01 16:04:12 +00:00
runtime2.go cmd/compile: optimize non-empty-interface type conversions 2017-02-13 18:16:31 +00:00
runtime_linux_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
runtime_mmap_test.go runtime: fetch physical page size from the OS 2016-09-06 21:05:50 +00:00
runtime_test.go runtime: check that Version does not contain \r \n 2016-12-05 16:49:53 +00:00
runtime_unix_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
select.go runtime: fix corruption crash/race between select and stack growth 2017-01-06 19:19:35 +00:00
sema.go runtime: use two-level list for semaphore address search in semaRoot 2017-02-12 15:54:16 +00:00
sigaction_linux.go runtime/cgo: use libc for sigaction syscalls when possible 2016-11-16 05:38:38 +00:00
signal_386.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_amd64x.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_arm.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_arm64.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_darwin.go runtime: unify sigtrampgo 2016-09-26 17:22:42 +00:00
signal_darwin_386.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_darwin_amd64.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_darwin_arm.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_darwin_arm64.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_dragonfly.go runtime: don't always unblock all signals on dragonfly, freebsd and openbsd 2016-04-15 21:20:45 +00:00
signal_dragonfly_amd64.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_freebsd.go runtime: unify sigtrampgo 2016-09-26 17:22:42 +00:00
signal_freebsd_386.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_freebsd_amd64.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_freebsd_arm.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_linux_386.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_linux_amd64.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_linux_arm.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_linux_arm64.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_linux_mips64x.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_linux_mipsx.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
signal_linux_ppc64x.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_linux_s390x.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_mips64x.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_mipsx.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
signal_nacl.go runtime: set SIGCONT to _SigNotify + _SigDefault 2016-01-05 17:44:46 +00:00
signal_nacl_386.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_nacl_amd64p32.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_nacl_arm.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_netbsd.go runtime: set SIGCONT to _SigNotify + _SigDefault 2016-01-05 17:44:46 +00:00
signal_netbsd_386.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_netbsd_amd64.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_netbsd_arm.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_openbsd.go runtime: unify sigtrampgo 2016-09-26 17:22:42 +00:00
signal_openbsd_386.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_openbsd_amd64.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_openbsd_arm.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_plan9.go runtime: signal handling support for plan9_arm 2016-03-07 16:25:17 +00:00
signal_ppc64x.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_sighandler.go runtime: print sigcode on signal crash 2016-10-27 17:46:01 +00:00
signal_solaris.go runtime: treat SIGSTOP on Solaris as we do on other systems 2016-11-01 20:02:40 +00:00
signal_solaris_amd64.go runtime: record current PC for SIGPROF on non-Go thread 2016-10-11 12:56:15 +00:00
signal_unix.go runtime: enable/disable SIGPROF if needed when profiling 2017-02-09 18:53:34 +00:00
signal_windows.go runtime: minor simplifications to signal code 2016-09-28 13:12:47 +00:00
sigqueue.go runtime: improve last ditch signal forwarding for Unix libraries 2016-03-24 19:34:17 +00:00
sigqueue_plan9.go all: single space after period. 2016-03-02 00:13:47 +00:00
sigtab_linux_generic.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
sigtab_linux_mipsx.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
sizeclasses.go runtime: add table of size classes in a comment 2017-01-08 00:01:30 +00:00
slice.go runtime, cmd/compile: rename memclr -> memclrNoHeapPointers 2016-10-28 18:20:33 +00:00
softfloat64.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
softfloat64_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
softfloat_arm.go [dev.ssa] cmd/internal/obj, etc.: add and use NEGF, NEGD instructions on ARM 2016-07-20 18:15:37 +00:00
sqrt.go all: single space after period. 2016-03-02 00:13:47 +00:00
sqrt_test.go runtime: copy sqrt normalization bugfix from math 2015-10-23 23:43:47 +00:00
stack.go runtime: use 4K as the boundary of legal pointers 2017-01-06 16:19:14 +00:00
stack_test.go all: single space after period. 2016-03-02 00:13:47 +00:00
string.go runtime: improve atoi implementation 2016-11-01 14:04:39 +00:00
string_test.go runtime: improve atoi implementation 2016-11-01 14:04:39 +00:00
stubs.go runtime: implement fastrand in go 2017-02-10 19:16:29 +00:00
stubs2.go runtime, runtime/cgo: support using msan on cgo code 2015-09-30 22:17:55 +00:00
stubs32.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
stubs_android.go runtime: add syscalls needed for android/amd64 logging. 2015-10-20 16:56:58 +00:00
stubs_asm.go all: fix assembly vet issues 2016-08-25 18:52:31 +00:00
symtab.go runtime: reorder modules so main.main comes first 2017-01-25 22:33:57 +00:00
symtab_test.go
sys_arm.go runtime, cmd/internal/obj: get rid of rewindmorestack 2016-10-05 18:19:46 +00:00
sys_arm64.go runtime, cmd/internal/obj: get rid of rewindmorestack 2016-10-05 18:19:46 +00:00
sys_darwin_386.s time: optimize Now on darwin, windows 2017-02-09 14:45:16 +00:00
sys_darwin_amd64.s time: optimize Now on darwin, windows 2017-02-09 14:45:16 +00:00
sys_darwin_arm.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_darwin_arm64.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_dragonfly_amd64.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_freebsd_386.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_freebsd_amd64.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_freebsd_arm.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_linux_386.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_linux_amd64.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_linux_arm.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_linux_arm64.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_linux_mips64x.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_linux_mipsx.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_linux_ppc64x.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_linux_s390x.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_mips64x.go runtime, cmd/internal/obj: get rid of rewindmorestack 2016-10-05 18:19:46 +00:00
sys_mipsx.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
sys_nacl_386.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_nacl_amd64p32.s cmd/internal/obj: remove Follow pass 2017-02-07 15:00:48 +00:00
sys_nacl_arm.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_netbsd_386.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_netbsd_amd64.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_netbsd_arm.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_nonppc64x.go cmd/compile, cmd/link, runtime: on ppc64x, maintain the TOC pointer in R2 when compiling PIC 2015-11-12 23:18:58 +00:00
sys_openbsd_386.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_openbsd_amd64.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_openbsd_arm.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_plan9_386.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_plan9_amd64.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_plan9_arm.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_ppc64x.go runtime, cmd/internal/obj: get rid of rewindmorestack 2016-10-05 18:19:46 +00:00
sys_s390x.go runtime, cmd/internal/obj: get rid of rewindmorestack 2016-10-05 18:19:46 +00:00
sys_solaris_amd64.s time: record monotonic clock reading in time.Now, for more accurate comparisons 2017-02-03 19:04:52 +00:00
sys_windows_386.s time: optimize Now on darwin, windows 2017-02-09 14:45:16 +00:00
sys_windows_amd64.s time: optimize Now on darwin, windows 2017-02-09 14:45:16 +00:00
sys_x86.go runtime, cmd/internal/obj: get rid of rewindmorestack 2016-10-05 18:19:46 +00:00
syscall2_solaris.go
syscall_nacl.h
syscall_solaris.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
syscall_windows.go runtime, syscall: only search for Windows DLLs in the System32 directory 2016-04-01 22:55:36 +00:00
syscall_windows_test.go runtime: pass windows float syscall args via XMM 2016-10-28 13:13:08 +00:00
textflag.h cmd/compile: track reflect.Type.Method in deadcode 2016-03-11 21:19:20 +00:00
time.go time: optimize Now on darwin, windows 2017-02-09 14:45:16 +00:00
timeasm.go time: optimize Now on darwin, windows 2017-02-09 14:45:16 +00:00
timestub.go time: optimize Now on darwin, windows 2017-02-09 14:45:16 +00:00
tls_arm.s all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
tls_arm64.h runtime: set TLSG_IS_VARIABLE for android/arm64. 2015-12-02 22:00:04 +00:00
tls_arm64.s cmd/internal/obj, cmd/link, runtime: native-ish support for tls on arm64 2015-10-28 19:51:05 +00:00
tls_mips64x.s runtime: add linux/mips64x cgo support 2016-05-04 16:41:10 +00:00
tls_mipsx.s runtime: add cgo support for GOARCH=mips{,le} 2016-12-14 23:52:33 +00:00
tls_ppc64x.s all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
tls_s390x.s runtime: add s390x support (new files and lfstack_64bit.go modifications) 2016-04-07 18:56:54 +00:00
trace.go cmd/trace: Record mark assists in execution traces 2017-02-10 18:03:42 +00:00
traceback.go runtime: clean up and improve reflect.methodValue comments 2016-12-19 21:02:53 +00:00
type.go [dev.typealias] cmd/compile, reflect: fix struct field names for embedded byte, rune 2017-01-25 18:57:20 +00:00
typekind.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
unaligned1.go runtime: add s390x support (modified files only) 2016-04-06 04:25:06 +00:00
unaligned2.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
utf8.go runtime: speed up non-ASCII rune decoding 2016-10-17 11:25:22 +00:00
vdso_linux_amd64.go runtime: common handling of _AT_RANDOM auxv 2016-04-16 21:42:31 +00:00
vdso_none.go runtime: os.Executable runtime support for Darwin 2016-11-07 20:18:36 +00:00
vlop_386.s all: fix obsolete inferno-os links 2016-08-29 04:54:42 +00:00
vlop_arm.s cmd/link: insert trampolines for too-far jumps on ARM 2016-10-11 13:35:33 +00:00
vlop_arm_test.go runtime: arm5, fix large-offset floating-point stores 2016-04-25 22:33:33 +00:00
vlrt.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
wincallback.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
write_err.go runtime: change odd 'print1_write' file names 2015-10-20 23:03:06 +00:00
write_err_android.go runtime: update android time_now call 2017-02-08 02:56:25 +00:00
zcallback_windows.go
zcallback_windows.s