1
0
mirror of https://github.com/golang/go synced 2024-11-20 00:04:43 -07:00
go/src/runtime
Austin Clements 22e57c6655 runtime: make stack barrier locking more robust
The stack barrier locking functions use a simple cas lock because they
need to support trylock, but currently don't increment g.m.locks. This
is okay right now because they always run on the system stack or the
signal stack and are hence non-preemtible, but this could lead to
difficult-to-reproduce deadlocks if these conditions change in the
future.

Make these functions more robust by incrementing g.m.locks and making
them nosplit to enforce non-preemtibility.

Change-Id: I73d60a35bd2ad2d81c73aeb20dbd37665730eb1b
Reviewed-on: https://go-review.googlesource.com/17058
Run-TryBot: Austin Clements <austin@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ingo Oeser <nightlyone@googlemail.com>
Reviewed-by: Russ Cox <rsc@golang.org>
2015-11-23 19:13:15 +00:00
..
cgo cmd/compile, cmd/link, runtime: on ppc64x, maintain the TOC pointer in R2 when compiling PIC 2015-11-12 23:18:58 +00:00
debug runtime/debug: skip TestFreeOSMemory for mips64{,le} 2015-11-12 04:51:42 +00:00
internal cmd/internal/obj, cmd/link, runtime: use a larger stack frame on ppc64 2015-11-12 22:32:37 +00:00
msan runtime, runtime/msan: add msan runtime support 2015-10-21 17:50:39 +00:00
pprof runtime/pprof: disable TestStackBarrierProfiling on ppc64 2015-11-20 19:39:36 +00:00
race cmd/compile: fix crash with -race on large expr containing string->[]byte conversion 2015-11-19 19:54:55 +00:00
trace runtime/trace: reduce memory usage for trace stress tests on openbsd/arm 2015-10-01 18:00:55 +00:00
alg.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
append_test.go
asm_386.s cmd/link, runtime: call addmoduledata when dynamically linking on linux/386 2015-11-19 00:22:56 +00:00
asm_amd64.s runtime: make asmcgocall work without a g 2015-11-20 02:51:09 +00:00
asm_amd64p32.s runtime: replace tls0 with m0.tls 2015-11-13 01:53:00 +00:00
asm_arm64.s runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
asm_arm.s runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
asm_mips64x.s runtime: added assembly part of linux/mips64{,le} support 2015-11-12 04:46:17 +00:00
asm_ppc64x.h cmd/internal/obj, cmd/link, runtime: use a larger stack frame on ppc64 2015-11-12 22:32:37 +00:00
asm_ppc64x.s cmd/link, runtime: implement & call addmoduledata on ppc64le 2015-11-13 00:51:45 +00:00
asm.s
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_pointer.go runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
atomic_ppc64x.s runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
cgo_mmap.go runtime, runtime/cgo: support using msan on cgo code 2015-09-30 22:17:55 +00:00
cgo_ppc64x.go runtime: fix vet warning about +build rule 2015-11-12 05:13:47 +00:00
cgo.go
cgocall.go cmd/cgo, runtime: exported Go functions can't return a Go pointer 2015-11-19 18:28:39 +00:00
cgocallback.go
cgocheck.go runtime: add optional expensive check for invalid cgo pointer passing 2015-11-16 18:39:06 +00:00
chan_test.go
chan.go runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
chanbarrier_test.go
closure_test.go
compiler.go
complex_test.go
complex.go
cpuprof.go runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
cputicks.go runtime: added mips64{,le} build tags and GOARCH cases 2015-11-12 04:47:42 +00:00
crash_cgo_test.go runtime: run TestCgoExternalThreadSIGPROF on ppc64le 2015-11-12 00:30:04 +00:00
crash_test.go runtime: remove flaky TestInvalidptrCrash to fix build 2015-09-19 01:43:00 +00:00
crash_unix_test.go
debug.go runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
defs1_linux.go
defs1_netbsd_386.go
defs1_netbsd_amd64.go
defs1_netbsd_arm.go
defs1_solaris_amd64.go
defs2_linux.go
defs3_linux.go
defs_arm_linux.go
defs_darwin_386.go
defs_darwin_amd64.go
defs_darwin_arm64.go
defs_darwin_arm.go
defs_darwin.go
defs_dragonfly_amd64.go
defs_dragonfly.go
defs_freebsd_386.go
defs_freebsd_amd64.go
defs_freebsd_arm.go
defs_freebsd.go
defs_linux_386.go src/runtime: Add missing defs for android/386. 2015-08-27 15:14:41 +00:00
defs_linux_amd64.go runtime: add syscalls needed for android/amd64 logging. 2015-10-20 16:56:58 +00:00
defs_linux_arm64.go runtime: android/arm64 support 2015-11-17 16:28:18 +00:00
defs_linux_arm.go
defs_linux_mips64x.go runtime: added go files for linux/mips64{,le} support 2015-11-12 04:47:15 +00:00
defs_linux_ppc64.go
defs_linux_ppc64le.go
defs_linux.go
defs_nacl_386.go
defs_nacl_amd64p32.go
defs_nacl_arm.go
defs_netbsd_386.go
defs_netbsd_amd64.go
defs_netbsd_arm.go
defs_netbsd.go
defs_openbsd_386.go
defs_openbsd_amd64.go
defs_openbsd_arm.go
defs_openbsd.go
defs_plan9_386.go
defs_plan9_amd64.go
defs_solaris_amd64.go
defs_solaris.go
defs_windows_386.go
defs_windows_amd64.go
defs_windows.go
duff_386.s
duff_amd64.s runtime: optimize duffcopy on amd64 2015-09-22 15:02:37 +00:00
duff_arm64.s
duff_arm.s
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 runtime: add stringStructOf helper function 2015-10-20 23:13:27 +00:00
env_posix.go runtime: add stringStructOf helper function 2015-10-20 23:13:27 +00:00
env_test.go
error.go runtime: make iface/eface handling more type safe 2015-10-21 23:08:22 +00:00
export_arm_test.go runtime: replace divide with multiply in runtime.usleep on arm 2015-07-30 15:48:29 +00:00
export_futex_test.go
export_linux_test.go
export_test.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
export_windows_test.go runtime: account for cpu affinity in windows NumCPU 2015-10-23 07:54:42 +00:00
extern.go runtime: add optional expensive check for invalid cgo pointer passing 2015-11-16 18:39:06 +00:00
fastlog2_test.go runtime: Reduce testing for fastlog2 implementation 2015-10-14 04:54:33 +00:00
fastlog2.go pprof: improve sampling for heap profiling 2015-10-05 08:15:09 +00:00
fastlog2table.go pprof: improve sampling for heap profiling 2015-10-05 08:15:09 +00:00
funcdata.h runtime: remove unused FUNCDATA_DeadValueMaps 2015-09-07 21:02:11 +00:00
futex_test.go
gc_test.go test: use go:noinline consistently 2015-11-03 02:01:34 +00:00
gcinfo_test.go runtime: added mips64{,le} build tags and GOARCH cases 2015-11-12 04:47:42 +00:00
go_tls.h
hash32.go runtime: make aeshash more DOS-proof 2015-10-08 16:43:03 +00:00
hash64.go runtime: added mips64{,le} build tags and GOARCH cases 2015-11-12 04:47:42 +00:00
hash_test.go runtime: fix aeshash of empty string 2015-09-15 17:51:23 +00:00
hashmap_fast.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
hashmap.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
heapdump.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
iface_test.go
iface.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
lfstack_32bit.go
lfstack_amd64.go
lfstack_darwin_arm64.go
lfstack_linux_arm64.go
lfstack_linux_mips64x.go runtime: added go files for linux/mips64{,le} support 2015-11-12 04:47:15 +00:00
lfstack_linux_ppc64x.go
lfstack_test.go
lfstack.go runtime: fix vet warning about println 2015-11-12 05:19:58 +00:00
lock_futex.go runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
lock_sema.go runtime: move m's OS-specific semaphore fields into mOS 2015-11-13 02:58:12 +00:00
Makefile
malloc_test.go runtime: fix tiny allocator 2015-10-26 21:14:15 +00:00
malloc.go runtime: check for updated arena_end overflow 2015-11-17 00:16:36 +00:00
map_test.go
mapspeed_test.go
mbarrier.go runtime: add optional expensive check for invalid cgo pointer passing 2015-11-16 18:39:06 +00:00
mbitmap.go runtime: add optional expensive check for invalid cgo pointer passing 2015-11-16 18:39:06 +00:00
mcache.go runtime: make mcache.tiny a uintptr 2015-11-16 22:07:41 +00:00
mcentral.go runtime: rewrite lots of foo_Bar(f, ...) into f.bar(...) 2015-11-12 00:34:58 +00:00
mem_bsd.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
mem_darwin.go runtime: use unsafe.Pointer(x) instead of (unsafe.Pointer)(x) 2015-10-15 21:48:37 +00:00
mem_linux.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
mem_plan9.go runtime: eliminate write barriers from mem_plan9.go 2015-11-19 21:17:14 +00:00
mem_windows.go runtime: print errno and byte count before crashing in mem_windows.go 2015-09-17 07:06:42 +00:00
memclr_386.s runtime: memmove/memclr pointers atomically 2015-11-07 02:42:12 +00:00
memclr_amd64.s runtime: memmove/memclr pointers atomically 2015-11-07 02:42:12 +00:00
memclr_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
memclr_arm.s
memclr_mips64x.s runtime: added assembly part of linux/mips64{,le} support 2015-11-12 04:46:17 +00:00
memclr_plan9_386.s runtime: memmove/memclr pointers atomically 2015-11-07 02:42:12 +00:00
memclr_plan9_amd64.s
memclr_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
memmove_386.s runtime: memmove/memclr pointers atomically 2015-11-07 02:42:12 +00:00
memmove_amd64.s runtime: memmove/memclr pointers atomically 2015-11-07 02:42:12 +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_arm.s
memmove_linux_amd64_test.go
memmove_mips64x.s runtime: added assembly part of linux/mips64{,le} support 2015-11-12 04:46:17 +00:00
memmove_nacl_amd64p32.s runtime: memmove/memclr pointers atomically 2015-11-07 02:42:12 +00:00
memmove_plan9_386.s runtime: memmove/memclr pointers atomically 2015-11-07 02:42:12 +00:00
memmove_plan9_amd64.s runtime: memmove/memclr pointers atomically 2015-11-07 02:42:12 +00:00
memmove_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
memmove_test.go runtime: adjust the arm64 memmove and memclr to operate by word as much as they can 2015-10-08 07:49:35 +00:00
mfinal_test.go runtime: enable TestEmptySlice 2015-07-30 04:47:16 +00:00
mfinal.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
mfixalloc.go runtime: rewrite lots of foo_Bar(f, ...) into f.bar(...) 2015-11-12 00:34:58 +00:00
mgc.go runtime: clear tiny alloc cache in mark term, not sweep term 2015-11-16 22:07:37 +00:00
mgcmark.go runtime: prevent sigprof during all stack barrier ops 2015-11-19 16:35:38 +00:00
mgcsweep.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
mgcwork.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
mheap.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
mkduff.go runtime: added assembly part of linux/mips64{,le} support 2015-11-12 04:46:17 +00:00
mkfastlog2table.go pprof: improve sampling for heap profiling 2015-10-05 08:15:09 +00:00
mknacl.sh
mmap.go runtime, runtime/cgo: support using msan on cgo code 2015-09-30 22:17:55 +00:00
mprof.go runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
msan0.go runtime: fix typos 2015-10-22 00:40:48 +00:00
msan_amd64.s runtime: don't call msanread when running on the system stack 2015-11-11 06:04:04 +00:00
msan.go runtime: don't call msanread when running on the system stack 2015-11-11 06:04:04 +00:00
msize.go
mstats.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
mstkbar.go runtime: make stack barrier locking more robust 2015-11-23 19:13:15 +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 runtime: on unexpected netpoll error, throw instead of looping 2015-09-15 17:56:56 +00:00
netpoll_nacl.go
netpoll_solaris.go runtime: on unexpected netpoll error, throw instead of looping 2015-09-15 17:56:56 +00:00
netpoll_stub.go
netpoll_windows.go
netpoll.go runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
noasm.go runtime: added mips64{,le} build tags and GOARCH cases 2015-11-12 04:47:42 +00:00
norace_linux_test.go
norace_test.go
os1_darwin.go runtime: fix bad signal stack when using cgo-created threads and async signals 2015-11-18 18:05:22 +00:00
os1_dragonfly.go runtime: fix bad signal stack when using cgo-created threads and async signals 2015-11-18 18:05:22 +00:00
os1_freebsd.go runtime: fix bad signal stack when using cgo-created threads and async signals 2015-11-18 18:05:22 +00:00
os1_linux_generic.go runtime: restructured os1_linux.go, added mips64 support 2015-11-12 04:48:23 +00:00
os1_linux_mips64x.go runtime: restructured os1_linux.go, added mips64 support 2015-11-12 04:48:23 +00:00
os1_linux.go runtime: fix bad signal stack when using cgo-created threads and async signals 2015-11-18 18:05:22 +00:00
os1_nacl.go runtime: fix bad signal stack when using cgo-created threads and async signals 2015-11-18 18:05:22 +00:00
os1_netbsd_386.go
os1_netbsd_amd64.go
os1_netbsd.go runtime: fix bad signal stack when using cgo-created threads and async signals 2015-11-18 18:05:22 +00:00
os1_openbsd.go runtime: fix bad signal stack when using cgo-created threads and async signals 2015-11-18 18:05:22 +00:00
os1_plan9.go runtime: fix bad signal stack when using cgo-created threads and async signals 2015-11-18 18:05:22 +00:00
os1_windows.go runtime: fix bad signal stack when using cgo-created threads and async signals 2015-11-18 18:05:22 +00:00
os2_darwin.go
os2_dragonfly.go
os2_freebsd.go
os2_linux_generic.go runtime: renamed os2_linux.go to os2_linux_generic.go, added mips64 support 2015-11-12 04:48:43 +00:00
os2_linux_mips64x.go runtime: renamed os2_linux.go to os2_linux_generic.go, added mips64 support 2015-11-12 04:48:43 +00:00
os2_nacl.go
os2_netbsd.go
os2_openbsd.go
os2_plan9.go
os2_solaris.go
os2_windows.go
os3_plan9.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
os3_solaris.go runtime: fix bad signal stack when using cgo-created threads and async signals 2015-11-18 18:05:22 +00:00
os_android.go runtime: android/arm64 support 2015-11-17 16:28:18 +00:00
os_darwin_arm64.go
os_darwin_arm.go runtime: run on GOARM=5 and GOARM=6 uniprocessor freebsd/arm systems 2015-08-07 17:39:07 +00:00
os_darwin.go Revert "runtime: use a proper type, sigset, for m.sigmask" 2015-11-18 17:18:20 +00:00
os_dragonfly.go runtime: split plan9 and solaris's m fields into new embedded mOS type 2015-10-22 00:04:52 +00:00
os_freebsd_arm.go runtime: run on GOARM=5 and GOARM=6 uniprocessor freebsd/arm systems 2015-08-07 17:39:07 +00:00
os_freebsd.go runtime: split plan9 and solaris's m fields into new embedded mOS type 2015-10-22 00:04:52 +00:00
os_linux_386.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
os_linux_arm64.go
os_linux_arm.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
os_linux_mips64x.go runtime: added go files for linux/mips64{,le} support 2015-11-12 04:47:15 +00:00
os_linux.go runtime: split plan9 and solaris's m fields into new embedded mOS type 2015-10-22 00:04:52 +00:00
os_nacl_arm.go runtime: run on GOARM=5 and GOARM=6 uniprocessor freebsd/arm systems 2015-08-07 17:39:07 +00:00
os_nacl.go runtime: move m's OS-specific semaphore fields into mOS 2015-11-13 02:58:12 +00:00
os_netbsd_arm.go runtime: run on GOARM=5 and GOARM=6 uniprocessor freebsd/arm systems 2015-08-07 17:39:07 +00:00
os_netbsd.go runtime: move m's OS-specific semaphore fields into mOS 2015-11-13 02:58:12 +00:00
os_openbsd_arm.go runtime: run on GOARM=5 and GOARM=6 uniprocessor freebsd/arm systems 2015-08-07 17:39:07 +00:00
os_openbsd.go Revert "runtime: use a proper type, sigset, for m.sigmask" 2015-11-18 17:18:20 +00:00
os_plan9.go runtime: move m's OS-specific semaphore fields into mOS 2015-11-13 02:58:12 +00:00
os_solaris.go runtime: make it possible to call syscall on solaris without g 2015-11-20 08:11:35 +00:00
os_windows.go runtime: move m's OS-specific semaphore fields into mOS 2015-11-13 02:58:12 +00:00
panic.go runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
parfor_test.go
parfor.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
print.go runtime: remove unused printpc and printbyte functions 2015-10-22 15:02:44 +00:00
proc_test.go
proc.go runtime: recursively disallow write barriers in sysmon 2015-11-19 21:17:25 +00:00
race0.go runtime: rename gothrow to throw 2014-12-28 06:16:16 +00:00
race_amd64.s
race.go runtime: merge race1.go -> race.go 2015-10-18 23:48:22 +00:00
rdebug.go runtime, runtime/debug: access unexported runtime functions with //go:linkname, not assembly stubs 2015-10-16 09:14:25 +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, cmd: TLS setup for android/amd64. 2015-10-28 20:54:28 +00:00
rt0_android_arm64.s runtime: android/arm64 support 2015-11-17 16:28:18 +00:00
rt0_android_arm.s
rt0_darwin_386.s runtime: darwin/386 entrypoint for c-archive 2015-10-02 11:45:52 +00:00
rt0_darwin_amd64.s
rt0_darwin_arm64.s
rt0_darwin_arm.s runtime: preserve R11 in darwin/arm entrypoint 2015-09-16 11:23:32 +00:00
rt0_dragonfly_amd64.s
rt0_freebsd_386.s
rt0_freebsd_amd64.s
rt0_freebsd_arm.s
rt0_linux_386.s
rt0_linux_amd64.s
rt0_linux_arm64.s runtime: c-shared entrypoint for linux/arm64 2015-10-28 21:21:33 +00:00
rt0_linux_arm.s
rt0_linux_mips64x.s runtime: added assembly part of linux/mips64{,le} support 2015-11-12 04:46:17 +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: replace tls0 with m0.tls 2015-11-13 01:53:00 +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 build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
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_solaris_amd64.s runtime: replace is{plan9,solaris,windows} with GOOS tests 2015-10-23 18:11:17 +00:00
rt0_windows_386.s runtime: replace is{plan9,solaris,windows} with GOOS tests 2015-10-23 18:11:17 +00:00
rt0_windows_amd64.s runtime: replace is{plan9,solaris,windows} with GOOS tests 2015-10-23 18:11:17 +00:00
rune.go
runtime1.go runtime: add optional expensive check for invalid cgo pointer passing 2015-11-16 18:39:06 +00:00
runtime2.go Revert "runtime: use a proper type, sigset, for m.sigmask" 2015-11-18 17:18:20 +00:00
runtime_linux_test.go
runtime_test.go
runtime_unix_test.go runtime: multi-threaded, utilization-scheduled background mark 2015-04-21 15:35:32 +00:00
runtime-gdb_test.go runtime: added mips64{,le} build tags and GOARCH cases 2015-11-12 04:47:42 +00:00
runtime-gdb.py
runtime.go runtime: replace tls0 with m0.tls 2015-11-13 01:53:00 +00:00
select.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
sema.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
signal1_unix.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
signal2_unix.go runtime: drop sigfwd from signal forwarding unsupported platforms 2015-10-02 01:07:44 +00:00
signal_386.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
signal_amd64x.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
signal_arm64.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
signal_arm.go runtime: introduce GOTRACEBACK=single, now the default 2015-10-30 18:43:44 +00:00
signal_darwin_386.go
signal_darwin_amd64.go
signal_darwin_arm64.go
signal_darwin_arm.go
signal_darwin.go runtime: drop sigfwd from signal forwarding unsupported platforms 2015-10-02 01:07:44 +00:00
signal_dragonfly_amd64.go
signal_dragonfly.go
signal_freebsd_386.go
signal_freebsd_amd64.go
signal_freebsd_arm.go
signal_freebsd.go
signal_linux_386.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
signal_linux_amd64.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
signal_linux_arm64.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
signal_linux_arm.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
signal_linux_mips64x.go runtime, runtime/internal/sys: fix build for linux/{mips64,mips64le} 2015-11-12 20:59:56 +00:00
signal_linux_ppc64x.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
signal_linux.go runtime: restructured signal_linux.go, added signal table for mips64. 2015-11-12 04:49:06 +00:00
signal_mips64x.go runtime, runtime/internal/sys: fix build for linux/{mips64,mips64le} 2015-11-12 20:59:56 +00:00
signal_nacl_386.go
signal_nacl_amd64p32.go
signal_nacl_arm.go
signal_nacl.go
signal_netbsd_386.go
signal_netbsd_amd64.go
signal_netbsd_arm.go
signal_netbsd.go
signal_openbsd_386.go
signal_openbsd_amd64.go
signal_openbsd_arm.go
signal_openbsd.go
signal_plan9.go runtime: handle abort note on Plan 9 2015-10-26 22:12:30 +00:00
signal_ppc64x.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
signal_solaris_amd64.go
signal_solaris.go all: use one 'l' when cancelling everywhere except Solaris 2015-09-11 18:31:51 +00:00
signal_unix.go runtime: drop sigfwd from signal forwarding unsupported platforms 2015-10-02 01:07:44 +00:00
signal_windows.go runtime: introduce GOTRACEBACK=single, now the default 2015-10-30 18:43:44 +00:00
sigpanic_unix.go
sigqueue_plan9.go runtime, os/signal: use //go:linkname instead of assembly stubs to get access to runtime functions 2015-10-16 07:11:04 +00:00
sigqueue.go runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
sigtab_linux_generic.go runtime: restructured signal_linux.go, added signal table for mips64. 2015-11-12 04:49:06 +00:00
sigtab_linux_mips64x.go runtime: restructured signal_linux.go, added signal table for mips64. 2015-11-12 04:49:06 +00:00
slice.go runtime: add optional expensive check for invalid cgo pointer passing 2015-11-16 18:39:06 +00:00
softfloat64_test.go
softfloat64.go
softfloat_arm.go runtime: teach softfloat interpreter about "add r11, pc, r11" 2015-09-04 06:43:35 +00:00
sqrt_test.go runtime: copy sqrt normalization bugfix from math 2015-10-23 23:43:47 +00:00
sqrt.go runtime: copy sqrt normalization bugfix from math 2015-10-23 23:43:47 +00:00
stack_test.go all: link to https instead of http 2015-07-11 14:36:33 +00:00
stack.go cmd/internal/obj, cmd/link, runtime: increase stack limit to accommodate larger frames on ppc64x 2015-11-12 22:32:16 +00:00
string_test.go
string.go runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
stubs2.go runtime, runtime/cgo: support using msan on cgo code 2015-09-30 22:17:55 +00:00
stubs32.go
stubs_android.go runtime: add syscalls needed for android/amd64 logging. 2015-10-20 16:56:58 +00:00
stubs.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
symtab_test.go
symtab.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
sys_arm64.go
sys_arm.go runtime: replace divide with multiply in runtime.usleep on arm 2015-07-30 15:48:29 +00:00
sys_darwin_386.s runtime: update newosproc asm to access m.id directly 2015-11-12 23:16:33 +00:00
sys_darwin_amd64.s
sys_darwin_arm64.s runtime: use pthread_sigmask, not sigprocmask, on Darwin ARM/ARM64 2015-11-07 15:48:58 +00:00
sys_darwin_arm.s runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
sys_dragonfly_amd64.s
sys_freebsd_386.s runtime: update newosproc asm to access m.id directly 2015-11-12 23:16:33 +00:00
sys_freebsd_amd64.s
sys_freebsd_arm.s runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
sys_linux_386.s runtime: handle volatility of CX when dynamically linking on linux/386 2015-11-18 01:36:44 +00:00
sys_linux_amd64.s runtime, cmd: TLS setup for android/amd64. 2015-10-28 20:54:28 +00:00
sys_linux_arm64.s runtime: android/arm64 support 2015-11-17 16:28:18 +00:00
sys_linux_arm.s runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
sys_linux_mips64x.s runtime: added assembly part of linux/mips64{,le} support 2015-11-12 04:46:17 +00:00
sys_linux_ppc64x.s 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_mips64x.go runtime: added go files for mips64 architecture support 2015-11-12 04:46:50 +00:00
sys_nacl_386.s
sys_nacl_amd64p32.s
sys_nacl_arm.s runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
sys_netbsd_386.s
sys_netbsd_amd64.s
sys_netbsd_arm.s runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +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
sys_openbsd_amd64.s runtime: update comment that was missed in CL 6584 2015-11-12 03:38:04 +00:00
sys_openbsd_arm.s runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
sys_plan9_386.s runtime: split plan9 and solaris's m fields into new embedded mOS type 2015-10-22 00:04:52 +00:00
sys_plan9_amd64.s runtime: split plan9 and solaris's m fields into new embedded mOS type 2015-10-22 00:04:52 +00:00
sys_ppc64x.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_solaris_amd64.s runtime: make it possible to call syscall on solaris without g 2015-11-20 08:11:35 +00:00
sys_windows_386.s
sys_windows_amd64.s runtime: provide room for first 4 syscall parameters in windows usleep2 2015-09-15 01:12:32 +00:00
sys_x86.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
syscall2_solaris.go runtime, syscall: remove unused bits from Solaris implementation 2015-08-21 11:39:24 +00:00
syscall_nacl.h
syscall_solaris.go
syscall_windows_test.go runtime: account for cpu affinity in windows NumCPU 2015-10-23 07:54:42 +00:00
syscall_windows.go runtime: change functype's in and out fields to []*_type 2015-10-21 18:37:45 +00:00
textflag.h cmd/internal/obj, runtime: add NOFRAME flag to suppress stack frame set up on ppc64x 2015-10-18 22:13:30 +00:00
time.go
tls_arm64.h runtime: android/arm64 support 2015-11-17 16:28:18 +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_arm.s cmd/internal/obj, cmd/link, runtime: lots of TLS cleanup 2015-10-08 00:21:30 +00:00
tls_mips64x.s runtime: added assembly part of linux/mips64{,le} support 2015-11-12 04:46:17 +00:00
tls_ppc64x.s cmd/internal/obj, runtime: implement IE model TLS on ppc64le 2015-11-12 23:50:27 +00:00
trace.go runtime: eliminate traceAllocBlock write barriers 2015-11-19 21:17:09 +00:00
traceback.go runtime: fix new stack barrier check 2015-11-20 19:08:21 +00:00
type.go cmd/cgo, runtime: add checks for passing pointers from Go to C 2015-11-10 22:22:10 +00:00
typekind.go runtime: remove _Kind constants 2015-10-13 00:15:36 +00:00
unaligned1.go
unaligned2.go runtime: added mips64{,le} build tags and GOARCH cases 2015-11-12 04:47:42 +00:00
vdso_linux_amd64.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
vdso_none.go
vlop_386.s
vlop_arm_test.go runtime: replace divide with multiply in runtime.usleep on arm 2015-07-30 15:48:29 +00:00
vlop_arm.s runtime: change arm software div/mod call sequence not to modify stack 2015-07-30 16:14:05 +00:00
vlrt.go
wbfat_gen.go
wbfat.go
wincallback.go
write_err_android.go runtime: change odd 'print1_write' file names 2015-10-20 23:03:06 +00:00
write_err.go runtime: change odd 'print1_write' file names 2015-10-20 23:03:06 +00:00
zcallback_windows.go
zcallback_windows.s