go/src/runtime
Cherry Zhang 14f929af91 runtime/internal/atomic: improve ARM atomics
This is a follow-up of CL 93637. There, when we redirect sync/atomic
to runtime/internal/atomic, a few good implementations of ARM atomics
were lost. This CL brings most of them back, with some improvements.

- Change atomic Store to a plain store with memory barrier, as we
  already changed atomic Load to plain load with memory barrier.

- Use native 64-bit atomics on ARMv7, jump to Go implementations
  on older machines. But drop the kernel helper. In particular,
  for Load64, just do loads, not using Cas on the address being
  load from, so it works also for read-only memory (since we have
  already fixed 32-bit Load).

Change-Id: I725cd65cf945ae5200db81a35be3f251c9f7af14
Reviewed-on: https://go-review.googlesource.com/111315
Run-TryBot: Cherry Zhang <cherryyz@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Austin Clements <austin@google.com>
2018-05-03 21:37:31 +00:00
..
cgo runtime: enable memory sanitizer on arm64 2018-05-02 17:52:14 +00:00
debug runtime/debug: mark TestSetGCPercent as flaky 2017-04-24 22:11:58 +00:00
internal runtime/internal/atomic: improve ARM atomics 2018-05-03 21:37:31 +00:00
msan runtime: enable memory sanitizer on arm64 2018-05-02 17:52:14 +00:00
pprof all: skip unsupported tests for js/wasm 2018-04-30 19:39:18 +00:00
race cmd/go: implement per-package asmflags, gcflags, ldflags, gccgoflags 2017-11-09 15:04:04 +00:00
testdata runtime/traceback: support tracking goroutine ancestor tracebacks with GODEBUG="tracebackancestors=N" 2018-04-13 20:42:38 +00:00
trace runtime/trace: add simple benchmarks for user annotation 2018-04-24 17:43:19 +00:00
HACKING.md runtime: make rwmutex work on Ms instead of Gs 2017-06-28 22:08:57 +00:00
Makefile
alg.go runtime: use internal/cpu in alginit 2018-04-10 16:33:26 +00:00
asm.s runtime: handle inlined calls in runtime.Callers 2017-03-29 17:22:08 +00:00
asm_386.s runtime: convert exit to use pthread library on Darwin 2018-05-01 00:20:55 +00:00
asm_amd64.s runtime: convert exit to use pthread library on Darwin 2018-05-01 00:20:55 +00:00
asm_amd64p32.s runtime: use internal/cpu.X86.HasAVX2 instead of support_avx2 2018-04-15 20:33:59 +00:00
asm_arm.s cmd/compile: intrinsify runtime.getcallerpc on all link register architectures 2018-05-02 16:59:27 +00:00
asm_arm64.s cmd/compile: intrinsify runtime.getcallerpc on arm64 2018-04-30 13:29:14 +00:00
asm_mips64x.s cmd/compile: intrinsify runtime.getcallerpc on all link register architectures 2018-05-02 16:59:27 +00:00
asm_mipsx.s cmd/compile: intrinsify runtime.getcallerpc on all link register architectures 2018-05-02 16:59:27 +00:00
asm_ppc64x.h
asm_ppc64x.s cmd/compile: intrinsify runtime.getcallerpc on all link register architectures 2018-05-02 16:59:27 +00:00
asm_s390x.s cmd/compile: intrinsify runtime.getcallerpc on all link register architectures 2018-05-02 16:59:27 +00:00
atomic_arm64.s runtime: use NOFRAME on arm64 2018-02-12 21:41:31 +00:00
atomic_mips64x.s runtime: use NOFRAME on mips and mips64 2018-02-12 21:41:32 +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: eliminate all writebarrierptr* calls 2018-02-13 16:34:45 +00:00
atomic_ppc64x.s
auxv_none.go runtime: parse auxv for page size and executable name on Solaris 2018-04-03 15:49:45 +00:00
callers_test.go
cgo.go runtime: access _cgo_yield indirectly 2017-03-24 15:37:56 +00:00
cgo_mmap.go runtime: enable memory sanitizer on arm64 2018-05-02 17:52:14 +00:00
cgo_ppc64x.go
cgo_sigaction.go runtime: enable memory sanitizer on arm64 2018-05-02 17:52:14 +00:00
cgocall.go runtime: remove the dummy arg of getcallersp 2018-04-26 18:57:20 +00:00
cgocallback.go
cgocheck.go runtime: make throw safer to call 2018-03-08 22:55:52 +00:00
chan.go runtime: convert g.waitreason from string to uint8 2018-05-03 17:04:22 +00:00
chan_test.go runtime: skip test that intermittently hangs on ppc64le 2017-10-03 12:26:42 +00:00
chanbarrier_test.go all: skip unsupported tests for js/wasm 2018-04-30 19:39:18 +00:00
closure_test.go
compiler.go
complex.go runtime: make complex division c99 compatible 2017-03-15 22:45:17 +00:00
complex_test.go
cpuflags_amd64.go runtime: use internal/cpu.X86.HasAVX2 instead of support_avx2 2018-04-15 20:33:59 +00:00
cpuprof.go runtime: in cpuProfile.addExtra, set p.lostExtra to 0 after flush 2017-09-12 16:54:29 +00:00
cputicks.go all: remove some double spaces from comments 2017-08-26 15:09:09 +00:00
crash_cgo_test.go cmd/go, cmd/link, runtime: enable PIE build mode, cgo race tests on FreeBSD 2018-03-27 02:50:29 +00:00
crash_nonunix_test.go all: skip unsupported tests for js/wasm 2018-04-30 19:39:18 +00:00
crash_test.go runtime: ensure abort actually crashes the process 2018-03-08 22:55:55 +00:00
crash_unix_test.go cmd/compile: add TestIntendedInlining from runtime 2017-09-13 18:10:31 +00:00
debug.go runtime: eliminate GOMAXPROCS limit 2017-09-27 16:29:12 +00:00
defs1_linux.go
defs1_netbsd_386.go runtime: for kqueue treat EVFILT_READ with EV_EOF as permitting a write 2017-10-20 22:26:30 +00:00
defs1_netbsd_amd64.go runtime: for kqueue treat EVFILT_READ with EV_EOF as permitting a write 2017-10-20 22:26:30 +00:00
defs1_netbsd_arm.go runtime: for kqueue treat EVFILT_READ with EV_EOF as permitting a write 2017-10-20 22:26:30 +00:00
defs1_solaris_amd64.go
defs2_linux.go
defs3_linux.go
defs_arm_linux.go
defs_darwin.go runtime,cmd/ld: on darwin, create theads using libc 2018-04-30 02:41:03 +00:00
defs_darwin_386.go runtime,cmd/ld: on darwin, create theads using libc 2018-04-30 02:41:03 +00:00
defs_darwin_amd64.go runtime,cmd/ld: on darwin, create theads using libc 2018-04-30 02:41:03 +00:00
defs_darwin_arm.go runtime,cmd/ld: on darwin, create theads using libc 2018-04-30 02:41:03 +00:00
defs_darwin_arm64.go runtime,cmd/ld: on darwin, create theads using libc 2018-04-30 02:41:03 +00:00
defs_dragonfly.go runtime: for kqueue treat EVFILT_READ with EV_EOF as permitting a write 2017-10-20 22:26:30 +00:00
defs_dragonfly_amd64.go runtime: for kqueue treat EVFILT_READ with EV_EOF as permitting a write 2017-10-20 22:26:30 +00:00
defs_freebsd.go runtime: FreeBSD fast clock_gettime HPET timecounter support 2018-04-26 03:54:19 +00:00
defs_freebsd_386.go runtime: FreeBSD fast clock_gettime HPET timecounter support 2018-04-26 03:54:19 +00:00
defs_freebsd_amd64.go runtime: FreeBSD fast clock_gettime HPET timecounter support 2018-04-26 03:54:19 +00:00
defs_freebsd_arm.go runtime: FreeBSD fast clock_gettime HPET timecounter support 2018-04-26 03:54:19 +00:00
defs_linux.go
defs_linux_386.go
defs_linux_amd64.go
defs_linux_arm.go
defs_linux_arm64.go
defs_linux_mips64x.go
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
defs_linux_ppc64le.go
defs_linux_s390x.go
defs_nacl_386.go
defs_nacl_amd64p32.go
defs_nacl_arm.go
defs_netbsd.go runtime: for kqueue treat EVFILT_READ with EV_EOF as permitting a write 2017-10-20 22:26:30 +00:00
defs_netbsd_386.go
defs_netbsd_amd64.go
defs_netbsd_arm.go
defs_openbsd.go runtime: for kqueue treat EVFILT_READ with EV_EOF as permitting a write 2017-10-20 22:26:30 +00:00
defs_openbsd_386.go runtime: for kqueue treat EVFILT_READ with EV_EOF as permitting a write 2017-10-20 22:26:30 +00:00
defs_openbsd_amd64.go runtime: for kqueue treat EVFILT_READ with EV_EOF as permitting a write 2017-10-20 22:26:30 +00:00
defs_openbsd_arm.go runtime: for kqueue treat EVFILT_READ with EV_EOF as permitting a write 2017-10-20 22:26:30 +00:00
defs_plan9_386.go
defs_plan9_amd64.go
defs_plan9_arm.go
defs_solaris.go
defs_solaris_amd64.go
defs_windows.go
defs_windows_386.go
defs_windows_amd64.go
duff_386.s runtime, unicode: use consistent banner for generated code 2017-06-13 05:33:40 +00:00
duff_amd64.s cmd/compile/internal/ssa: use sse to zero on amd64 2017-08-16 15:52:27 +00:00
duff_arm.s runtime, unicode: use consistent banner for generated code 2017-06-13 05:33:40 +00:00
duff_arm64.s runtime, cmd/compile: use ldp for DUFFCOPY on ARM64 2018-03-06 04:14:59 +00:00
duff_mips64x.s runtime: use NOFRAME on mips and mips64 2018-02-12 21:41:32 +00:00
duff_ppc64x.s runtime, unicode: use consistent banner for generated code 2017-06-13 05:33:40 +00:00
env_plan9.go
env_posix.go runtime: clean redundant call of environ function 2017-05-03 10:02:26 +00:00
env_test.go
error.go internal/bytealg: move IndexByte asssembly to the new bytealg package 2018-03-02 22:46:15 +00:00
example_test.go runtime: improve ExampleFrames 2017-04-20 19:46:01 +00:00
export_arm_test.go
export_futex_test.go
export_linux_test.go runtime: fix errno sign for epollctl on mips, mips64 and ppc64 2018-04-24 14:10:43 +00:00
export_mmap_test.go
export_test.go runtime: remove the dummy arg of getcallersp 2018-04-26 18:57:20 +00:00
export_unix_test.go runtime: use SIGKILL if SIGQUIT is blocked; skip tests that need SIGQUIT 2017-07-20 18:09:18 +00:00
export_windows_test.go
extern.go runtime/traceback: support tracking goroutine ancestor tracebacks with GODEBUG="tracebackancestors=N" 2018-04-13 20:42:38 +00:00
fastlog2.go runtime: make complex division c99 compatible 2017-03-15 22:45:17 +00:00
fastlog2_test.go
fastlog2table.go
float.go runtime: make complex division c99 compatible 2017-03-15 22:45:17 +00:00
funcdata.h cmd/compile,link: generate PC-value tables with inlining information 2017-03-03 21:29:30 +00:00
futex_test.go runtime: remove the dummy arg of getcallersp 2018-04-26 18:57:20 +00:00
gc_test.go runtime: add BenchmarkScanStack 2018-05-01 13:33:01 +00:00
gcinfo_test.go cmd/compile: mark the first word of an interface as a uintptr 2018-02-27 22:58:32 +00:00
go_tls.h
hash32.go runtime: specialize memhash32 and memhash64 2017-08-28 19:55:27 +00:00
hash64.go runtime: implement aeshash for arm64 platform 2018-04-04 16:25:39 +00:00
hash_test.go all: skip unsupported tests for js/wasm 2018-04-30 19:39:18 +00:00
heapdump.go runtime: convert g.waitreason from string to uint8 2018-05-03 17:04:22 +00:00
iface.go cmd/compile: pass arguments to convt2E/I integer functions by value 2018-04-29 15:53:39 +00:00
iface_test.go cmd/compile, runtime: specialize convT2x, don't alloc for zero vals 2017-02-28 19:23:33 +00:00
lfstack.go runtime: validate lfnode addresses 2018-02-15 21:12:11 +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: clarify address space limit constants and comments 2018-02-21 20:32:36 +00:00
lfstack_test.go
lock_futex.go runtime: remove the dummy arg of getcallersp 2018-04-26 18:57:20 +00:00
lock_sema.go runtime: remove the dummy arg of getcallersp 2018-04-26 18:57:20 +00:00
malloc.go runtime: stop when we run out of hints in race mode 2018-04-04 18:08:04 +00:00
malloc_test.go runtime: stop when we run out of hints in race mode 2018-04-04 18:08:04 +00:00
map.go runtime,cmd/compile: adjust and correct path names in comments of map code 2018-04-30 13:42:26 +00:00
map_benchmark_test.go runtime: rename map implementation and test files to use a common prefix 2018-02-17 14:57:32 +00:00
map_fast32.go runtime: move map fast functions into type specific files 2018-02-17 15:32:26 +00:00
map_fast64.go runtime: move map fast functions into type specific files 2018-02-17 15:32:26 +00:00
map_faststr.go runtime: move map fast functions into type specific files 2018-02-17 15:32:26 +00:00
map_test.go go/printer, gofmt: tuned table alignment for better results 2018-04-04 13:39:34 -07:00
mbarrier.go runtime: short-circuit typedmemmove when dst==src 2018-02-27 00:56:18 +00:00
mbitmap.go runtime: iterate over set bits in adjustpointers 2018-04-29 05:24:44 +00:00
mcache.go runtime: replace mlookup and findObject with heapBitsForObject 2018-02-15 21:12:12 +00:00
mcentral.go runtime: eliminate most uses of mheap_.arena_* 2018-02-15 21:12:22 +00:00
mem_bsd.go runtime: remove non-reserved heap logic 2018-02-15 21:12:24 +00:00
mem_darwin.go runtime: remove non-reserved heap logic 2018-02-15 21:12:24 +00:00
mem_linux.go runtime: remove non-reserved heap logic 2018-02-15 21:12:24 +00:00
mem_plan9.go runtime: don't try to shrink address space with brk in Plan 9 2018-02-28 15:57:10 +00:00
mem_windows.go runtime: remove non-reserved heap logic 2018-02-15 21:12:24 +00:00
memclr_386.s runtime: refactor cpu feature detection for 386 & amd64 2017-05-01 20:46:03 +00:00
memclr_amd64.s runtime: use internal/cpu.X86.HasAVX2 instead of support_avx2 2018-04-15 20:33:59 +00:00
memclr_amd64p32.s runtime: cleanup amd64p32 memmove and memclr file organization 2017-09-05 20:00:05 +00:00
memclr_arm.s runtime, cmd/compile: rename memclr -> memclrNoHeapPointers 2016-10-28 18:20:33 +00:00
memclr_arm64.s runtime: improve arm64 memclr implementation 2018-03-14 18:20:40 +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 runtime: refactor cpu feature detection for 386 & amd64 2017-05-01 20:46:03 +00:00
memmove_amd64.s runtime: simplify amd64 memmove of 3/4 bytes 2018-02-15 15:05:53 +00:00
memmove_amd64p32.s runtime: cleanup amd64p32 memmove and memclr file organization 2017-09-05 20:00:05 +00:00
memmove_arm.s
memmove_arm64.s runtime: improve arm64 memmove implementation 2018-03-01 20:34:11 +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: use NOFRAME on mips and mips64 2018-02-12 21:41:32 +00:00
memmove_mipsx.s runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
memmove_plan9_386.s
memmove_plan9_amd64.s
memmove_ppc64x.s
memmove_s390x.s
memmove_test.go runtime, cmd/compile: use ldp for DUFFCOPY on ARM64 2018-03-06 04:14:59 +00:00
mfinal.go runtime: convert g.waitreason from string to uint8 2018-05-03 17:04:22 +00:00
mfinal_test.go runtime: shorten tests in all.bash 2017-10-31 13:20:27 +00:00
mfixalloc.go runtime: fix a few typos in comments 2018-02-23 00:17:20 +00:00
mgc.go runtime: convert g.waitreason from string to uint8 2018-05-03 17:04:22 +00:00
mgclarge.go runtime: fix a few typos in comments 2018-02-23 00:17:20 +00:00
mgcmark.go runtime: convert g.waitreason from string to uint8 2018-05-03 17:04:22 +00:00
mgcsweep.go runtime: convert g.waitreason from string to uint8 2018-05-03 17:04:22 +00:00
mgcsweepbuf.go runtime: make markrootSpans time proportional to in-use spans 2016-10-25 22:32:59 +00:00
mgcwork.go runtime: validate lfnode addresses 2018-02-15 21:12:11 +00:00
mheap.go runtime: support a two-level arena map 2018-02-23 21:59:50 +00:00
mkduff.go runtime, cmd/compile: use ldp for DUFFCOPY on ARM64 2018-03-06 04:14:59 +00:00
mkfastlog2table.go
mknacl.sh runtime, unicode: use consistent banner for generated code 2017-06-13 05:33:40 +00:00
mksizeclasses.go runtime: add "max waste" column to size class table comment 2017-08-10 21:45:01 +00:00
mmap.go runtime: enable memory sanitizer on arm64 2018-05-02 17:52:14 +00:00
mprof.go runtime: remove the dummy arg of getcallersp 2018-04-26 18:57:20 +00:00
msan.go runtime: check for nil g and m in msanread 2017-01-19 23:06:54 +00:00
msan0.go
msan_amd64.s runtime/cgo: use libc for sigaction syscalls when possible 2016-11-16 05:38:38 +00:00
msan_arm64.s runtime: enable memory sanitizer on arm64 2018-05-02 17:52:14 +00:00
msize.go runtime: remove sizeToClass 2017-03-13 01:55:44 +00:00
mstats.go runtime: use sparse mappings for the heap 2018-02-15 21:12:23 +00:00
mwbbuf.go runtime: eliminate most uses of mheap_.arena_* 2018-02-15 21:12:22 +00:00
net_plan9.go net: refactor poller into new internal/poll package 2017-02-13 18:36:28 +00:00
netpoll.go runtime: convert g.waitreason from string to uint8 2018-05-03 17:04:22 +00:00
netpoll_epoll.go runtime: adjust netpoll panic messages 2017-04-25 21:39:18 +00:00
netpoll_kqueue.go runtime: for kqueue treat EVFILT_READ with EV_EOF as permitting a write 2017-10-20 22:26:30 +00:00
netpoll_nacl.go os: use poller for file I/O 2017-02-15 19:31:55 +00:00
netpoll_solaris.go runtime: adjust netpoll panic messages 2017-04-25 21:39:18 +00:00
netpoll_stub.go os: use poller for file I/O 2017-02-15 19:31:55 +00:00
netpoll_windows.go runtime: make errno positive in netpollopen 2017-10-24 03:19:09 +00:00
norace_linux_test.go
norace_test.go runtime: remove the dummy arg of getcallersp 2018-04-26 18:57:20 +00:00
numcpu_freebsd_test.go runtime: use cpuset_getaffinity for runtime.NumCPU() on FreeBSD 2017-03-10 22:06:24 +00:00
os2_freebsd.go runtime: remove unused getrlimit function 2018-02-17 18:35:41 +00:00
os2_nacl.go
os2_openbsd.go
os2_plan9.go
os2_solaris.go runtime: remove unused getrlimit function 2018-02-17 18:35:41 +00:00
os3_plan9.go runtime: fix abort handling on arm64 2018-03-09 22:17:04 +00:00
os3_solaris.go runtime,cmd/ld: on darwin, create theads using libc 2018-04-30 02:41:03 +00:00
os_android.go
os_darwin.go runtime: implement darwin raise with pthread_self and pthread_kill 2018-05-01 00:37:36 +00:00
os_darwin_arm.go runtime: use hardware divider to improve performance 2017-04-11 12:25:55 +00:00
os_darwin_arm64.go internal/cpu: detect cpu features in internal/cpu package 2017-11-14 19:07:15 +00:00
os_darwin_raw.go runtime: fix newosproc darwin+arm/arm64 2018-04-30 16:12:24 +00:00
os_dragonfly.go runtime,cmd/ld: on darwin, create theads using libc 2018-04-30 02:41:03 +00:00
os_freebsd.go runtime,cmd/ld: on darwin, create theads using libc 2018-04-30 02:41:03 +00:00
os_freebsd2.go all: enable c-shared/c-archive support for freebsd/amd64 2018-03-21 21:56:20 +00:00
os_freebsd_amd64.go all: enable c-shared/c-archive support for freebsd/amd64 2018-03-21 21:56:20 +00:00
os_freebsd_arm.go runtime: adjust GOARM floating point compatibility error message 2018-03-24 04:47:27 +00:00
os_freebsd_noauxv.go runtime: parse auxv on freebsd 2018-03-21 15:40:01 +00:00
os_linux.go runtime,cmd/ld: on darwin, create theads using libc 2018-04-30 02:41:03 +00:00
os_linux_arm.go runtime: adjust GOARM floating point compatibility error message 2018-03-24 04:47:27 +00:00
os_linux_arm64.go internal/cpu: remove platform specific prefix from cpu hwcap variables 2018-05-01 15:50:19 +00:00
os_linux_be64.go runtime: add missing build constraints to os_linux_{be64,noauxv,novdso,ppc64x}.go files 2018-03-07 14:26:19 +00:00
os_linux_generic.go runtime: remove unused getrlimit function 2018-02-17 18:35:41 +00:00
os_linux_mips64x.go runtime: remove unused getrlimit function 2018-02-17 18:35:41 +00:00
os_linux_mipsx.go runtime: remove unused getrlimit function 2018-02-17 18:35:41 +00:00
os_linux_noauxv.go runtime: add missing build constraints to os_linux_{be64,noauxv,novdso,ppc64x}.go files 2018-03-07 14:26:19 +00:00
os_linux_novdso.go runtime: use vDSO for clock_gettime on linux/arm64 2018-03-27 13:21:27 +00:00
os_linux_ppc64x.go internal/cpu: remove platform specific prefix from cpu hwcap variables 2018-05-01 15:50:19 +00:00
os_linux_s390x.go internal/bytealg: move short string Index implementations into bytealg 2018-03-04 19:49:44 +00:00
os_nacl.go runtime: perform crashes outside systemstack 2018-04-30 21:26:00 +00:00
os_nacl_arm.go runtime: use hardware divider to improve performance 2017-04-11 12:25:55 +00:00
os_netbsd.go runtime,cmd/ld: on darwin, create theads using libc 2018-04-30 02:41:03 +00:00
os_netbsd_386.go
os_netbsd_amd64.go
os_netbsd_arm.go runtime: use hardware divider to improve performance 2017-04-11 12:25:55 +00:00
os_openbsd.go runtime,cmd/ld: on darwin, create theads using libc 2018-04-30 02:41:03 +00:00
os_openbsd_arm.go runtime: use hardware divider to improve performance 2017-04-11 12:25:55 +00:00
os_plan9.go runtime: perform crashes outside systemstack 2018-04-30 21:26:00 +00:00
os_plan9_arm.go runtime: use hardware divider to improve performance 2017-04-11 12:25:55 +00:00
os_solaris.go runtime: remove the dummy arg of getcallersp 2018-04-26 18:57:20 +00:00
os_windows.go runtime,cmd/ld: on darwin, create theads using libc 2018-04-30 02:41:03 +00:00
panic.go runtime: perform crashes outside systemstack 2018-04-30 21:26:00 +00:00
plugin.go runtime, plugin: error not throw on duplicate open 2017-09-09 16:26:33 +00:00
print.go runtime: print hexdump on traceback failure 2018-01-22 21:51:29 +00:00
proc.go runtime: convert g.waitreason from string to uint8 2018-05-03 17:04:22 +00:00
proc_runtime_test.go
proc_test.go all: skip unsupported tests for js/wasm 2018-04-30 19:39:18 +00:00
profbuf.go runtime: fix false positive race in profile label reading 2017-08-18 21:40:37 +00:00
profbuf_test.go runtime: new profile buffer implementation supporting label pointers 2017-02-23 19:47:23 +00:00
proflabel.go runtime: fix false positive race in profile label reading 2017-08-18 21:40:37 +00:00
race.go runtime: split object finding out of heapBitsForObject 2018-02-15 21:12:13 +00:00
race0.go
race_amd64.s
rand_test.go runtime: simplify range expressions in tests 2018-03-12 19:58:42 +00:00
rdebug.go
relax_stub.go runtime: use next timer to decide whether to relax 2017-07-07 21:22:31 +00:00
rt0_android_386.s runtime: pass dummy argc/argv correctly in r0_386_android_lib 2018-01-21 04:56:36 +00:00
rt0_android_amd64.s runtime: unify amd64 -buildmode=c-archive/c-shared entry point code 2017-10-11 21:12:51 +00:00
rt0_android_arm.s runtime, sync/atomic: use NOFRAME on arm 2018-02-12 21:41:30 +00:00
rt0_android_arm64.s runtime: use NOFRAME on arm64 2018-02-12 21:41:31 +00:00
rt0_darwin_386.s runtime: unify 386 entry point code 2017-10-17 04:03:16 +00:00
rt0_darwin_amd64.s runtime: unify amd64 -buildmode=c-archive/c-shared entry point code 2017-10-11 21:12:51 +00:00
rt0_darwin_arm.s runtime: unify arm entry point code 2017-10-25 00:40:40 +00:00
rt0_darwin_arm64.s runtime: use NOFRAME on arm64 2018-02-12 21:41:31 +00:00
rt0_dragonfly_amd64.s runtime: fix dragonfly/amd64 2017-10-12 04:03:50 +00:00
rt0_freebsd_386.s runtime: unify 386 entry point code 2017-10-17 04:03:16 +00:00
rt0_freebsd_amd64.s runtime: unify amd64 -buildmode=c-archive/c-shared entry point code 2017-10-11 21:12:51 +00:00
rt0_freebsd_arm.s runtime: unify arm entry point code 2017-10-25 00:40:40 +00:00
rt0_linux_386.s runtime: unify 386 entry point code 2017-10-17 04:03:16 +00:00
rt0_linux_amd64.s runtime: unify amd64 -buildmode=c-archive/c-shared entry point code 2017-10-11 21:12:51 +00:00
rt0_linux_arm.s runtime, sync/atomic: use NOFRAME on arm 2018-02-12 21:41:30 +00:00
rt0_linux_arm64.s runtime: enable memory sanitizer on arm64 2018-05-02 17:52:14 +00:00
rt0_linux_mips64x.s runtime: use NOFRAME on mips and mips64 2018-02-12 21:41:32 +00:00
rt0_linux_mipsx.s runtime: use NOFRAME on mips and mips64 2018-02-12 21:41:32 +00:00
rt0_linux_ppc64.s
rt0_linux_ppc64le.s runtime: make sure R0 is zero before _main on ppc64le 2017-08-11 17:46:24 +00:00
rt0_linux_s390x.s cmd/link: enable c-shared and c-archive mode on s390x 2017-11-17 15:54:54 +00:00
rt0_nacl_386.s runtime: unify 386 entry point code 2017-10-17 04:03:16 +00:00
rt0_nacl_amd64p32.s
rt0_nacl_arm.s runtime, sync/atomic: use NOFRAME on arm 2018-02-12 21:41:30 +00:00
rt0_netbsd_386.s runtime: unify 386 entry point code 2017-10-17 04:03:16 +00:00
rt0_netbsd_amd64.s runtime: unify amd64 -buildmode=c-archive/c-shared entry point code 2017-10-11 21:12:51 +00:00
rt0_netbsd_arm.s runtime: unify arm entry point code 2017-10-25 00:40:40 +00:00
rt0_openbsd_386.s runtime: unify 386 entry point code 2017-10-17 04:03:16 +00:00
rt0_openbsd_amd64.s runtime: unify amd64 -buildmode=c-archive/c-shared entry point code 2017-10-11 21:12:51 +00:00
rt0_openbsd_arm.s runtime: unify arm entry point code 2017-10-25 00:40:40 +00:00
rt0_plan9_386.s runtime: unify 386 entry point code 2017-10-17 04:03:16 +00:00
rt0_plan9_amd64.s
rt0_plan9_arm.s runtime, sync/atomic: use NOFRAME on arm 2018-02-12 21:41:30 +00:00
rt0_solaris_amd64.s runtime: unify amd64 -buildmode=c-archive/c-shared entry point code 2017-10-11 21:12:51 +00:00
rt0_windows_386.s runtime: unify 386 entry point code 2017-10-17 04:03:16 +00:00
rt0_windows_amd64.s runtime: unify amd64 -buildmode=exe entry point code 2017-10-11 20:07:31 +00:00
runtime-gdb.py runtime: fix another typo in runtime-gdb.py 2018-03-15 02:04:45 +00:00
runtime-gdb_test.go runtime: perform crashes outside systemstack 2018-04-30 21:26:00 +00:00
runtime-lldb_test.go cmd/go: implement per-package asmflags, gcflags, ldflags, gccgoflags 2017-11-09 15:04:04 +00:00
runtime.go syscall: make Exit call runtime.exit 2017-09-27 01:10:05 +00:00
runtime1.go runtime/traceback: support tracking goroutine ancestor tracebacks with GODEBUG="tracebackancestors=N" 2018-04-13 20:42:38 +00:00
runtime2.go runtime: convert g.waitreason from string to uint8 2018-05-03 17:04:22 +00:00
runtime_linux_test.go runtime: fix errno sign for epollctl on mips, mips64 and ppc64 2018-04-24 14:10:43 +00:00
runtime_mmap_test.go runtime: separate error result for mmap 2017-10-18 19:22:08 +00:00
runtime_test.go all: skip unsupported tests for js/wasm 2018-04-30 19:39:18 +00:00
runtime_unix_test.go
rwmutex.go sync: consistently use article "a" for RWMutex 2018-01-16 23:09:57 +00:00
rwmutex_test.go all: skip unsupported tests for js/wasm 2018-04-30 19:39:18 +00:00
select.go runtime: convert g.waitreason from string to uint8 2018-05-03 17:04:22 +00:00
sema.go runtime: convert g.waitreason from string to uint8 2018-05-03 17:04:22 +00:00
sigaction.go runtime: enable memory sanitizer on arm64 2018-05-02 17:52:14 +00:00
signal_386.go runtime: refactor test for pushing sigpanic frame 2018-02-13 21:01:25 +00:00
signal_amd64x.go runtime: refactor test for pushing sigpanic frame 2018-02-13 21:01:25 +00:00
signal_arm.go runtime: refactor test for pushing sigpanic frame 2018-02-13 21:01:25 +00:00
signal_arm64.go runtime: refactor test for pushing sigpanic frame 2018-02-13 21:01:25 +00:00
signal_darwin.go runtime: forward crashing signals to late handlers 2017-08-29 07:40:19 +00:00
signal_darwin_386.go
signal_darwin_amd64.go
signal_darwin_arm.go runtime: normalize (*sigctxt).fault() type 2017-10-05 02:31:25 +00:00
signal_darwin_arm64.go runtime: normalize (*sigctxt).fault() type 2017-10-05 02:31:25 +00:00
signal_dragonfly.go runtime: forward crashing signals to late handlers 2017-08-29 07:40:19 +00:00
signal_dragonfly_amd64.go
signal_freebsd.go runtime: forward crashing signals to late handlers 2017-08-29 07:40:19 +00:00
signal_freebsd_386.go
signal_freebsd_amd64.go
signal_freebsd_arm.go runtime: normalize (*sigctxt).fault() type 2017-10-05 02:31:25 +00:00
signal_linux_386.go
signal_linux_amd64.go
signal_linux_arm.go runtime: normalize (*sigctxt).fault() type 2017-10-05 02:31:25 +00:00
signal_linux_arm64.go runtime: normalize (*sigctxt).fault() type 2017-10-05 02:31:25 +00:00
signal_linux_mips64x.go runtime: restore RSB for sigpanic call on mips64x 2018-01-31 20:57:53 +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: normalize (*sigctxt).fault() type 2017-10-05 02:31:25 +00:00
signal_linux_s390x.go runtime: refactor test for pushing sigpanic frame 2018-02-13 21:01:25 +00:00
signal_mips64x.go runtime: refactor test for pushing sigpanic frame 2018-02-13 21:01:25 +00:00
signal_mipsx.go runtime: refactor test for pushing sigpanic frame 2018-02-13 21:01:25 +00:00
signal_nacl.go runtime: forward crashing signals to late handlers 2017-08-29 07:40:19 +00:00
signal_nacl_386.go
signal_nacl_amd64p32.go
signal_nacl_arm.go runtime: normalize (*sigctxt).fault() type 2017-10-05 02:31:25 +00:00
signal_netbsd.go runtime: forward crashing signals to late handlers 2017-08-29 07:40:19 +00:00
signal_netbsd_386.go
signal_netbsd_amd64.go
signal_netbsd_arm.go runtime: normalize (*sigctxt).fault() type 2017-10-05 02:31:25 +00:00
signal_openbsd.go runtime: forward crashing signals to late handlers 2017-08-29 07:40:19 +00:00
signal_openbsd_386.go
signal_openbsd_amd64.go
signal_openbsd_arm.go runtime: normalize (*sigctxt).fault() type 2017-10-05 02:31:25 +00:00
signal_plan9.go
signal_ppc64x.go runtime: refactor test for pushing sigpanic frame 2018-02-13 21:01:25 +00:00
signal_sighandler.go runtime: fix abort handling on arm64 2018-03-09 22:17:04 +00:00
signal_solaris.go runtime: forward crashing signals to late handlers 2017-08-29 07:40:19 +00:00
signal_solaris_amd64.go
signal_unix.go runtime: perform crashes outside systemstack 2018-04-30 21:26:00 +00:00
signal_windows.go runtime: perform crashes outside systemstack 2018-04-30 21:26:00 +00:00
sigqueue.go os/signal: add func Ignored(sig Signal) bool 2018-04-21 04:18:03 +00:00
sigqueue_plan9.go os/signal: add func Ignored(sig Signal) bool 2018-04-21 04:18:03 +00:00
sigtab_linux_generic.go runtime: forward crashing signals to late handlers 2017-08-29 07:40:19 +00:00
sigtab_linux_mipsx.go runtime: forward crashing signals to late handlers 2017-08-29 07:40:19 +00:00
sizeclasses.go runtime: add "max waste" column to size class table comment 2017-08-10 21:45:01 +00:00
sizeof_test.go runtime: convert g.waitreason from string to uint8 2018-05-03 17:04:22 +00:00
slice.go runtime: use sys.PtrSize in growslice 2018-04-21 01:05:32 +00:00
slice_test.go runtime: avoid division in growslice 2018-04-13 21:33:52 +00:00
softfloat64.go runtime: implement some soft-float routines (used by GOMIPS=softfloat) 2017-11-30 17:12:05 +00:00
softfloat64_test.go
stack.go runtime: iterate over set bits in adjustpointers 2018-04-29 05:24:44 +00:00
stack_test.go all: skip unsupported tests for js/wasm 2018-04-30 19:39:18 +00:00
string.go runtime: use staticbytes in intstring for small v 2018-05-01 18:03:57 +00:00
string_test.go runtime: simplify range expressions in tests 2018-03-12 19:58:42 +00:00
stubs.go runtime: remove stale comment about getcallerpc/sp 2018-04-26 22:06:33 +00:00
stubs2.go runtime: fast clock_gettime call on FreeBSD 2018-04-18 21:54:26 +00:00
stubs3.go runtime: fast clock_gettime call on FreeBSD 2018-04-18 21:54:26 +00:00
stubs32.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
stubs_android.go
stubs_arm.go cmd/internal/obj/arm, runtime: delete old ARM softfloat code 2018-04-17 18:27:55 +00:00
stubs_linux.go runtime: inform arena placement using sbrk(0) 2017-04-21 14:34:10 +00:00
stubs_nonlinux.go runtime: inform arena placement using sbrk(0) 2017-04-21 14:34:10 +00:00
symtab.go runtime: allow inlining of stackmapdata 2018-05-01 19:14:17 +00:00
symtab_test.go runtime: allow calling Func.Name on nil pointer 2017-06-30 23:42:03 +00:00
sys_arm.go
sys_arm64.go
sys_darwin.go runtime: move open/close/read/write from syscall to libc on Darwin 2018-05-01 04:19:18 +00:00
sys_darwin_386.s runtime: move open/close/read/write from syscall to libc on Darwin 2018-05-01 04:19:18 +00:00
sys_darwin_amd64.s runtime: move open/close/read/write from syscall to libc on Darwin 2018-05-01 04:19:18 +00:00
sys_darwin_arm.s runtime, sync/atomic: use NOFRAME on arm 2018-02-12 21:41:30 +00:00
sys_darwin_arm64.s runtime: use NOFRAME on arm64 2018-02-12 21:41:31 +00:00
sys_dragonfly_amd64.s runtime: remove unused getrlimit function 2018-02-17 18:35:41 +00:00
sys_freebsd_386.s runtime: fast clock_gettime call on FreeBSD 2018-04-18 21:54:26 +00:00
sys_freebsd_amd64.s runtime: fast clock_gettime call on FreeBSD 2018-04-18 21:54:26 +00:00
sys_freebsd_arm.s runtime: fast clock_gettime call on FreeBSD 2018-04-18 21:54:26 +00:00
sys_linux_386.s runtime: change GNU/Linux usleep to use nanosleep 2018-04-24 05:01:13 +00:00
sys_linux_amd64.s runtime: change GNU/Linux usleep to use nanosleep 2018-04-24 05:01:13 +00:00
sys_linux_arm.s runtime: use native CAS and memory barrier on ARMv7 2018-05-03 21:35:39 +00:00
sys_linux_arm64.s runtime: enable memory sanitizer on arm64 2018-05-02 17:52:14 +00:00
sys_linux_mips64x.s runtime: fix errno sign for epollctl on mips, mips64 and ppc64 2018-04-24 14:10:43 +00:00
sys_linux_mipsx.s runtime: fix errno sign for epollctl on mips, mips64 and ppc64 2018-04-24 14:10:43 +00:00
sys_linux_ppc64x.s runtime: fix errno sign for epollctl on mips, mips64 and ppc64 2018-04-24 14:10:43 +00:00
sys_linux_s390x.s runtime: change GNU/Linux usleep to use nanosleep 2018-04-24 05:01:13 +00:00
sys_mips64x.go
sys_mipsx.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
sys_nacl_386.s runtime: separate error result for mmap 2017-10-18 19:22:08 +00:00
sys_nacl_amd64p32.s runtime: make Playground timestamps change when the stream fd changes 2018-04-11 18:12:02 +00:00
sys_nacl_arm.s runtime, sync/atomic: use NOFRAME on arm 2018-02-12 21:41:30 +00:00
sys_netbsd_386.s runtime: make NetBSD lwp_park use monotonic time 2017-12-04 03:29:56 +00:00
sys_netbsd_amd64.s runtime: make NetBSD lwp_park use monotonic time 2017-12-04 03:29:56 +00:00
sys_netbsd_arm.s runtime, sync/atomic: use NOFRAME on arm 2018-02-12 21:41:30 +00:00
sys_nonppc64x.go
sys_openbsd_386.s runtime: fix/improve exitThread on openbsd 2018-04-05 19:29:35 +00:00
sys_openbsd_amd64.s runtime: fix/improve exitThread on openbsd 2018-04-05 19:29:35 +00:00
sys_openbsd_arm.s runtime: fix/improve exitThread on openbsd 2018-04-05 19:29:35 +00:00
sys_plan9_386.s runtime: make it possible to exit Go-created threads 2017-10-11 17:47:18 +00:00
sys_plan9_amd64.s runtime: make it possible to exit Go-created threads 2017-10-11 17:47:18 +00:00
sys_plan9_arm.s runtime, sync/atomic: use NOFRAME on arm 2018-02-12 21:41:30 +00:00
sys_ppc64x.go
sys_s390x.go
sys_solaris_amd64.s runtime: call sigtrampgo on solaris 2017-08-29 19:57:32 +00:00
sys_windows_386.s runtime: make time correctly update on Wine 2017-04-25 04:30:06 +00:00
sys_windows_amd64.s runtime: make time correctly update on Wine 2017-04-25 04:30:06 +00:00
sys_x86.go runtime: fix documentation typo for gostartcall 2017-11-29 18:42:49 +00:00
syscall2_solaris.go runtime: clean up libc_* definitions on Solaris 2018-03-01 07:31:53 +00:00
syscall_nacl.h runtime, unicode: use consistent banner for generated code 2017-06-13 05:33:40 +00:00
syscall_solaris.go runtime: remove the dummy arg of getcallersp 2018-04-26 18:57:20 +00:00
syscall_windows.go syscall: make Exit call runtime.exit 2017-09-27 01:10:05 +00:00
syscall_windows_test.go runtime: make TestWindowsStackMemory build even with CGO_ENABLED=0 set 2017-11-14 03:53:15 +00:00
textflag.h
time.go runtime: convert g.waitreason from string to uint8 2018-05-03 17:04:22 +00:00
timeasm.go time: optimize Now on darwin, windows 2017-02-09 14:45:16 +00:00
timestub.go runtime: fast clock_gettime call on FreeBSD 2018-04-18 21:54:26 +00:00
timestub2.go runtime: fast clock_gettime call on FreeBSD 2018-04-18 21:54:26 +00:00
tls_arm.s runtime, sync/atomic: use NOFRAME on arm 2018-02-12 21:41:30 +00:00
tls_arm64.h
tls_arm64.s
tls_mips64x.s runtime: use NOFRAME on mips and mips64 2018-02-12 21:41:32 +00:00
tls_mipsx.s runtime: use NOFRAME on mips and mips64 2018-02-12 21:41:32 +00:00
tls_ppc64x.s
tls_s390x.s
trace.go runtime: convert g.waitreason from string to uint8 2018-05-03 17:04:22 +00:00
traceback.go runtime: convert g.waitreason from string to uint8 2018-05-03 17:04:22 +00:00
type.go reflect: sort exported methods first 2018-03-15 21:56:08 +00:00
typekind.go
unaligned1.go
unaligned2.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
utf8.go
vdso_elf32.go runtime: use vDSO for clock_gettime on linux/arm 2018-03-03 12:12:58 +00:00
vdso_elf64.go runtime: use vDSO for clock_gettime on linux/arm64 2018-03-27 13:21:27 +00:00
vdso_freebsd.go runtime: FreeBSD fast clock_gettime HPET timecounter support 2018-04-26 03:54:19 +00:00
vdso_freebsd_arm.go runtime: fast clock_gettime call on FreeBSD 2018-04-18 21:54:26 +00:00
vdso_freebsd_x86.go runtime: FreeBSD fast clock_gettime HPET timecounter support 2018-04-26 03:54:19 +00:00
vdso_in_none.go runtime: use vDSO for clock_gettime on linux/arm64 2018-03-27 13:21:27 +00:00
vdso_linux.go runtime: use vDSO for clock_gettime on linux/arm64 2018-03-27 13:21:27 +00:00
vdso_linux_386.go runtime: use vDSO for clock_gettime on linux/arm64 2018-03-27 13:21:27 +00:00
vdso_linux_amd64.go runtime: use vDSO for clock_gettime on linux/arm64 2018-03-27 13:21:27 +00:00
vdso_linux_arm.go runtime: use vDSO for clock_gettime on linux/arm64 2018-03-27 13:21:27 +00:00
vdso_linux_arm64.go runtime: use vDSO for clock_gettime on linux/arm64 2018-03-27 13:21:27 +00:00
vdso_linux_test.go runtime: use vDSO for clock_gettime on linux/arm64 2018-03-27 13:21:27 +00:00
vlop_386.s
vlop_arm.s cmd/internal/obj/arm, runtime: delete old ARM softfloat code 2018-04-17 18:27:55 +00:00
vlop_arm_test.go
vlrt.go runtime: add support files for linux/mips{,le} port 2016-11-15 21:49:01 +00:00
wincallback.go
write_err.go
write_err_android.go runtime: update android time_now call 2017-02-08 02:56:25 +00:00
zcallback_windows.go
zcallback_windows.s