1
0
mirror of https://github.com/golang/go synced 2024-10-04 10:11:21 -06:00
go/src/pkg/runtime
Russ Cox bf18d57d4a runtime: handle and test large map values
This is from CL 5451105 but was dropped from that CL.
See also CL 6137051.

The only change compared to 5451105 is to check for
h != nil in reflect·mapiterinit; allowing use of nil maps
must have happened after that original CL.

Fixes #3573.

R=golang-dev, dave, r
CC=golang-dev
https://golang.org/cl/6215078
2012-05-24 22:41:07 -04:00
..
cgo runtime: cgo support for Linux/ARM 2012-05-04 18:20:09 +08:00
debug runtime/debug: fix test when source cannot be found 2012-03-05 16:13:15 -05:00
pprof runtime/pprof: disable test on Leopard 64-bit 2012-03-07 11:44:54 -05:00
alg.c runtime: fix float64 hash on 32-bit machine 2012-02-06 11:24:34 -05:00
append_test.go runtime: make TestSideEffectOrder work twice 2011-07-14 23:43:03 -04:00
arch_386.h cmd/cc: add PREFETCH built-in (like SET, USED) 2012-05-02 16:22:56 -04:00
arch_amd64.h cmd/cc: add PREFETCH built-in (like SET, USED) 2012-05-02 16:22:56 -04:00
arch_arm.h cmd/cc: add PREFETCH built-in (like SET, USED) 2012-05-02 16:22:56 -04:00
asm_386.s cmd/cc: add PREFETCH built-in (like SET, USED) 2012-05-02 16:22:56 -04:00
asm_amd64.s cmd/cc: add PREFETCH built-in (like SET, USED) 2012-05-02 16:22:56 -04:00
asm_arm.s runtime: get per-process random number from auxv for hash table 2012-05-05 01:59:14 +08:00
atomic_386.c runtime: add 64-bit atomics 2012-04-05 18:47:43 +04:00
atomic_amd64.c runtime: add 64-bit atomics 2012-04-05 18:47:43 +04:00
atomic_arm.c runtime: add 64-bit atomics 2012-04-05 18:47:43 +04:00
callback_windows_386.c runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
callback_windows_amd64.c runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
cgocall.c runtime: cgo support for Linux/ARM 2012-05-04 18:20:09 +08:00
cgocall.h runtime: scheduler, cgo reorganization 2011-03-07 10:37:42 -05:00
chan_test.go runtime: add type algorithms for zero-sized types 2012-01-20 10:32:55 +04:00
chan.c runtime: put lockorder before pollorder in Select memory block. 2012-02-10 21:24:14 -08:00
closure_386.c runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
closure_amd64.c runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
closure_arm.c runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
closure_test.go gc: make merely referencing an outer variable in a closure not force heapallocation. 2011-06-01 17:02:43 +02:00
compiler.go runtime: add Compiler 2012-03-05 22:28:02 -05:00
complex_test.go runtime: fix complex division benchmarks 2012-05-11 03:09:14 +08:00
complex.c runtime: ,s/[a-zA-Z0-9_]+/runtime·&/g, almost 2010-11-04 14:00:19 -04:00
cpuprof.c runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
debug.go runtime: goroutine profile, stack dumps 2012-02-22 21:45:01 -05:00
defs1_linux.go runtime: separate out auto-generated files, take 2 2011-12-19 15:51:13 -05:00
defs2_linux.go runtime: separate out auto-generated files, take 2 2011-12-19 15:51:13 -05:00
defs_arm_linux.go runtime: fix arm 2012-02-23 23:10:38 -05:00
defs_darwin_386.h runtime: madvise and SysUnused for Darwin 2012-01-19 15:51:29 -05:00
defs_darwin_amd64.h runtime: madvise and SysUnused for Darwin 2012-01-19 15:51:29 -05:00
defs_darwin.go runtime: madvise and SysUnused for Darwin 2012-01-19 15:51:29 -05:00
defs_freebsd_386.h runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
defs_freebsd_amd64.h runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
defs_freebsd.go runtime: separate out auto-generated files, take 2 2011-12-19 15:51:13 -05:00
defs_linux_386.h runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
defs_linux_amd64.h runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
defs_linux_arm.h runtime: fix arm 2012-02-23 23:10:38 -05:00
defs_linux.go runtime: separate out auto-generated files, take 2 2011-12-19 15:51:13 -05:00
defs_netbsd_386.go runtime: fix netbsd runtime defs 2012-05-16 01:52:20 +10:00
defs_netbsd_386.h runtime: fix netbsd runtime defs 2012-05-16 01:52:20 +10:00
defs_netbsd_amd64.go runtime: fix netbsd runtime defs 2012-05-16 01:52:20 +10:00
defs_netbsd_amd64.h runtime: fix netbsd runtime defs 2012-05-16 01:52:20 +10:00
defs_netbsd.go runtime: fix netbsd runtime defs 2012-05-16 01:52:20 +10:00
defs_openbsd_386.h runtime: update defs for openbsd 2012-04-17 02:35:41 +10:00
defs_openbsd_amd64.h runtime: update defs for openbsd 2012-04-17 02:35:41 +10:00
defs_openbsd.go runtime: update defs for openbsd 2012-04-17 02:35:41 +10:00
defs_plan9_386.h runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
defs_windows_386.h runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
defs_windows_amd64.h runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
defs_windows.go runtime: separate out auto-generated files, take 2 2011-12-19 15:51:13 -05:00
error.go runtime: delete Type and implementations (use reflect instead) 2012-02-12 23:26:20 -05:00
export_test.go runtime: add parallel for algorithm 2012-05-11 10:50:03 +04:00
extern.go runtime: fix docs for Caller and Callers 2012-05-24 14:15:43 -07:00
float.c runtime: ,s/[a-zA-Z0-9_]+/runtime·&/g, almost 2010-11-04 14:00:19 -04:00
gc_test.go runtime: relax TestGcSys 2012-05-22 00:07:13 -04:00
hashmap.c runtime: handle and test large map values 2012-05-24 22:41:07 -04:00
hashmap.h gc: implement == on structs and arrays 2011-12-12 22:22:09 -05:00
iface_test.go runtime: add interface microbenchmarks 2012-04-11 22:45:44 +10:00
iface.c runtime: delete Type and implementations (use reflect instead) 2012-02-12 23:26:20 -05:00
lfstack_test.go runtime: add lock-free stack 2012-04-12 11:49:25 +04:00
lfstack.c runtime: add lock-free stack 2012-04-12 11:49:25 +04:00
lock_futex.c runtime/pprof: support OS X CPU profiling 2012-02-28 16:18:24 -05:00
lock_sema.c runtime/pprof: support OS X CPU profiling 2012-02-28 16:18:24 -05:00
Makefile runtime, pprof: add profiling of thread creation 2012-02-08 10:33:54 -05:00
malloc1.go runtime: API 2012-02-19 00:11:44 -05:00
malloc.goc runtime: fix counting of free objects 2012-05-15 11:48:58 -04:00
malloc.h runtime: faster GC mark phase 2012-05-24 10:55:50 +04:00
mallocrand.go runtime: API 2012-02-19 00:11:44 -05:00
mallocrep1.go runtime: API 2012-02-19 00:11:44 -05:00
mallocrep.go runtime: API 2012-02-19 00:11:44 -05:00
mcache.c runtime: remove redundant code 2012-04-05 18:37:46 +04:00
mcentral.c runtime: avoid unnecessary zeroization of huge memory blocks 2012-05-02 18:01:11 +04:00
mem_darwin.c runtime: madvise and SysUnused for Darwin 2012-01-19 15:51:29 -05:00
mem_freebsd.c runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
mem_linux.c runtime: fix grsec support 2012-02-14 22:09:02 -02:00
mem_netbsd.c runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
mem_openbsd.c runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
mem_plan9.c runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
mem_windows.c runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
mem.go runtime: release unused memory to the OS. 2012-02-16 13:30:04 -05:00
memmove_386.s runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
memmove_amd64.s runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
memmove_arm.s runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
memset_arm.s runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
mfinal_test.go runtime: faster finalizers 2011-10-06 18:42:51 +03:00
mfinal.c runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
mfixalloc.c runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
mgc0.c runtime: faster GC mark phase 2012-05-24 10:55:50 +04:00
mheap.c runtime: avoid unnecessary zeroization of huge memory blocks 2012-05-02 18:01:11 +04:00
mkasmh.sh build: rename $GOROOT/bin/go-tool to $GOROOT/bin/tool. 2012-02-02 23:32:41 -05:00
mkversion.c runtime: separate out auto-generated files, take 2 2011-12-19 15:51:13 -05:00
mprof.goc runtime: refactor helpgc functionality in preparation for parallel GC 2012-05-15 19:10:16 +04:00
msize.c runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
os_darwin.h runtime: give proper messages when user defined DYLD_INSERT_LIBRARIES on Darwin 2012-04-30 15:55:07 -04:00
os_freebsd.h runtime/pprof: support OS X CPU profiling 2012-02-28 16:18:24 -05:00
os_linux.h runtime: size arena to fit in virtual address space limit 2012-02-24 15:28:51 -05:00
os_netbsd.h runtime: make go work on netbsd/amd64 2012-05-24 11:33:11 +10:00
os_openbsd.h runtime: block signals during thread creation on openbsd 2012-04-10 21:57:05 +10:00
os_plan9.h pkg/runtime: Fix semasleep on Plan 9 2012-05-16 15:09:28 -07:00
os_windows.h runtime, syscall, os/signal: fix windows build 2012-02-14 13:51:38 +11:00
parfor_test.go runtime: add parallel for algorithm 2012-05-11 10:50:03 +04:00
parfor.c runtime: add parallel for algorithm 2012-05-11 10:50:03 +04:00
print.c runtime: goroutine profile, stack dumps 2012-02-22 21:45:01 -05:00
proc_test.go runtime: faster entersyscall, exitsyscall 2011-07-19 11:01:17 -04:00
proc.c runtime: refactor helpgc functionality in preparation for parallel GC 2012-05-15 19:10:16 +04:00
proc.p runtime: faster entersyscall/exitsyscall 2011-07-23 12:22:55 -04:00
rt0_darwin_386.s runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
rt0_darwin_amd64.s runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
rt0_freebsd_386.s runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
rt0_freebsd_amd64.s runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
rt0_linux_386.s runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
rt0_linux_amd64.s runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
rt0_linux_arm.s runtime: get per-process random number from auxv for hash table 2012-05-05 01:59:14 +08:00
rt0_netbsd_386.s runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
rt0_netbsd_amd64.s runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
rt0_openbsd_386.s runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
rt0_openbsd_amd64.s runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
rt0_plan9_386.s runtime: fix floating point exception on Plan 9 2012-04-10 15:14:10 -04:00
rt0_windows_386.s runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
rt0_windows_amd64.s runtime: separate out auto-generated files, take 2 2011-12-19 15:51:13 -05:00
rune.c runtime: ,s/[a-zA-Z0-9_]+/runtime·&/g, almost 2010-11-04 14:00:19 -04:00
runtime1.goc runtime: add NumCPU 2012-01-09 18:45:59 -08:00
runtime_linux_test.go runtime: run init on main thread 2012-03-01 11:48:17 -05:00
runtime_test.go gc: optimize interface ==, != 2012-02-11 00:19:24 -05:00
runtime-gdb.py pkg/runtime: 2 sanity checks in the runtime-gdb.py prettyprinters. 2012-02-29 16:42:25 +01:00
runtime.c runtime: add 64-bit atomics 2012-04-05 18:47:43 +04:00
runtime.h runtime: refactor helpgc functionality in preparation for parallel GC 2012-05-15 19:10:16 +04:00
sema.goc runtime: API 2012-02-19 00:11:44 -05:00
signal_darwin_386.c runtime/pprof: support OS X CPU profiling 2012-02-28 16:18:24 -05:00
signal_darwin_amd64.c runtime/pprof: support OS X CPU profiling 2012-02-28 16:18:24 -05:00
signal_freebsd_386.c runtime: use startpanic so that only one thread handles an incoming SIGQUIT 2012-02-13 23:06:21 -05:00
signal_freebsd_amd64.c runtime: use startpanic so that only one thread handles an incoming SIGQUIT 2012-02-13 23:06:21 -05:00
signal_linux_386.c runtime: use startpanic so that only one thread handles an incoming SIGQUIT 2012-02-13 23:06:21 -05:00
signal_linux_amd64.c runtime: use startpanic so that only one thread handles an incoming SIGQUIT 2012-02-13 23:06:21 -05:00
signal_linux_arm.c runtime: get per-process random number from auxv for hash table 2012-05-05 01:59:14 +08:00
signal_netbsd_386.c runtime: fix netbsd signal handling 2012-05-16 01:53:26 +10:00
signal_netbsd_amd64.c runtime: make go work on netbsd/amd64 2012-05-24 11:33:11 +10:00
signal_openbsd_386.c runtime: update defs for openbsd 2012-04-17 02:35:41 +10:00
signal_openbsd_amd64.c runtime: update defs for openbsd 2012-04-17 02:35:41 +10:00
signal_plan9_386.c runtime: remove unused runtime·signame and runtime·newError 2012-03-06 09:07:00 -08:00
signal_unix.c runtime: remove unused runtime·signame and runtime·newError 2012-03-06 09:07:00 -08:00
signal_windows_386.c runtime: silence warnings 2012-02-17 17:05:41 +11:00
signal_windows_amd64.c runtime: silence warnings 2012-02-17 17:05:41 +11:00
signals_darwin.h runtime: Permit default behaviour of SIGTSTP, SIGTTIN, SIGTTOU. 2012-02-17 14:36:40 +11:00
signals_freebsd.h runtime: Permit default behaviour of SIGTSTP, SIGTTIN, SIGTTOU. 2012-02-17 14:36:40 +11:00
signals_linux.h runtime: Permit default behaviour of SIGTSTP, SIGTTIN, SIGTTOU. 2012-02-17 14:36:40 +11:00
signals_netbsd.h runtime: fix netbsd signal handling 2012-05-16 01:53:26 +10:00
signals_openbsd.h runtime: block signals during thread creation on openbsd 2012-04-10 21:57:05 +10:00
signals_plan9.h runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
signals_windows.h runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
sigqueue.goc runtime: Permit default behaviour of SIGTSTP, SIGTTIN, SIGTTOU. 2012-02-17 14:36:40 +11:00
slice.c runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
softfloat64_test.go renaming_3: gofix -r go1pkgrename src/pkg/[m-z]* 2011-11-08 15:41:54 -08:00
softfloat64.go all: update 'gotest' to 'go test' 2012-02-13 13:58:17 -05:00
softfloat_arm.c runtime: support conditional execution in ARM softfloat 2012-05-23 02:00:40 +08:00
stack_test.go 5l, 6l, 8l: fix stack split logic for stacks near default segment size 2012-03-15 15:22:30 -04:00
stack.h 5l, 6l, 8l: fix stack split logic for stacks near default segment size 2012-03-15 15:22:30 -04:00
string.goc runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
symtab_test.go runtime: fix data race in findfunc() 2011-07-29 13:47:24 -04:00
symtab.c runtime: avoid malloc during malloc 2012-02-21 16:36:15 -05:00
sys_darwin_386.s runtime: give proper messages when user defined DYLD_INSERT_LIBRARIES on Darwin 2012-04-30 15:55:07 -04:00
sys_darwin_amd64.s runtime: give proper messages when user defined DYLD_INSERT_LIBRARIES on Darwin 2012-04-30 15:55:07 -04:00
sys_freebsd_386.s runtime: print error on receipt of signal on non-Go thread 2012-03-12 15:55:18 -04:00
sys_freebsd_amd64.s runtime: print error on receipt of signal on non-Go thread 2012-03-12 15:55:18 -04:00
sys_linux_386.s runtime: print error on receipt of signal on non-Go thread 2012-03-12 15:55:18 -04:00
sys_linux_amd64.s runtime: print error on receipt of signal on non-Go thread 2012-03-12 15:55:18 -04:00
sys_linux_arm.s runtime: cgo support for Linux/ARM 2012-05-04 18:20:09 +08:00
sys_netbsd_386.s runtime: implement getcontext and sigprocmask for netbsd 2012-05-16 04:32:49 +10:00
sys_netbsd_amd64.s runtime: make go work on netbsd/amd64 2012-05-24 11:33:11 +10:00
sys_openbsd_386.s runtime: use __tfork() syscall on openbsd 2012-04-26 00:08:02 +10:00
sys_openbsd_amd64.s runtime: use __tfork() syscall on openbsd 2012-04-26 00:08:02 +10:00
sys_plan9_386.s pkg/runtime: Fix semasleep on Plan 9 2012-05-16 15:09:28 -07:00
sys_windows_386.s runtime: print error on receipt of signal on non-Go thread 2012-03-12 15:55:18 -04:00
sys_windows_amd64.s runtime: manage stack by ourselves for badcallback on windows/amd64 2012-03-15 02:24:49 +08:00
syscall_windows_test.go runtime: fix syscall test to satisfy new error 2011-11-14 20:54:47 +11:00
syscall_windows.goc runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
thread_darwin.c runtime: give proper messages when user defined DYLD_INSERT_LIBRARIES on Darwin 2012-04-30 15:55:07 -04:00
thread_freebsd.c runtime: print error on receipt of signal on non-Go thread 2012-03-12 15:55:18 -04:00
thread_linux.c runtime: print error on receipt of signal on non-Go thread 2012-03-12 15:55:18 -04:00
thread_netbsd.c runtime: make go work on netbsd/amd64 2012-05-24 11:33:11 +10:00
thread_openbsd.c runtime: use __tfork() syscall on openbsd 2012-04-26 00:08:02 +10:00
thread_plan9.c pkg/runtime: Fix semasleep on Plan 9 2012-05-16 15:09:28 -07:00
thread_windows.c runtime: print error on receipt of signal on non-Go thread 2012-03-12 15:55:18 -04:00
time.goc runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
traceback_arm.c runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
traceback_x86.c runtime: fix build 2011-12-16 15:46:25 -05:00
type.go runtime: delete Type and implementations (use reflect instead) 2012-02-12 23:26:20 -05:00
type.h runtime: prep for type-specific algorithms 2011-12-05 09:40:22 -05:00
vlop_386.s runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
vlop_arm.s runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
vlrt_386.c runtime: make more build-friendly 2011-12-16 15:33:58 -05:00
vlrt_arm.c runtime: fix c compiler warning 2012-05-05 01:39:09 +08:00