gcc/libgo/runtime
Ian Lance Taylor 1ac09ef2c6 libgo: reduce overhead for memory/block/mutex profiling
Revise the gccgo version of memory/block/mutex profiling to reduce
    runtime overhead. The main change is to collect raw stack traces while
    the profile is on line, then post-process the stacks just prior to the
    point where we are ready to use the final product. Memory profiling
    (at a very low sampling rate) is enabled by default, and the overhead
    of the symbolization / DWARF-reading from backtrace_full was slowing
    things down relative to the main Go runtime.
    
    Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/171497

From-SVN: r271172
2019-05-14 14:59:42 +00:00
..
aeshash.c runtime: add arm64 version of AES hash code 2018-10-01 20:14:29 +00:00
arch.h
array.h compiler, runtime: More steps toward separating int and intgo. 2012-11-01 03:02:13 +00:00
defs.h
env_posix.c libgo: add hurd build tags 2019-02-01 21:57:36 +00:00
getncpu-aix.c Big merge of changes to gofrontend repo that were postponed due to the 2017-05-10 17:26:09 +00:00
getncpu-bsd.c runtime: support NumCPU() on more platforms Added support for Solaris, Irix, *BSD (including Darwin). 2012-08-07 04:42:49 +00:00
getncpu-hurd.c runtime: add getproccount for hurd 2019-02-01 22:55:55 +00:00
getncpu-irix.c runtime: support NumCPU() on more platforms Added support for Solaris, Irix, *BSD (including Darwin). 2012-08-07 04:42:49 +00:00
getncpu-linux.c runtime: Check for CPU_COUNT itself, don't check glibc version. 2014-10-03 05:04:59 +00:00
getncpu-none.c runtime: support NumCPU() on more platforms Added support for Solaris, Irix, *BSD (including Darwin). 2012-08-07 04:42:49 +00:00
getncpu-solaris.c runtime: support NumCPU() on more platforms Added support for Solaris, Irix, *BSD (including Darwin). 2012-08-07 04:42:49 +00:00
go-assert.c runtime: Copy runtime_printf from other Go library. 2012-05-24 20:44:34 +00:00
go-assert.h
go-caller.c libgo: reduce overhead for memory/block/mutex profiling 2019-05-14 14:59:42 +00:00
go-callers.c libgo: reduce overhead for memory/block/mutex profiling 2019-05-14 14:59:42 +00:00
go-cdiv.c runtime: fix misc gcc-isms and undefined behavior 2014-05-28 23:10:47 +00:00
go-cgo.c runtime: copy cgo support from Go 1.7 runtime 2016-12-19 18:00:35 +00:00
go-construct-map.c runtime: fix makemap calls in __go_construct_map 2018-01-10 15:04:21 +00:00
go-ffi.c runtime, reflect: rewrite Go to FFI type conversion in Go 2016-11-18 00:15:38 +00:00
go-fieldtrack.c runtime: fix type descriptor name in C code 2018-01-31 18:25:17 +00:00
go-libmain.c runtime: set up g early 2019-05-11 01:12:37 +00:00
go-main.c runtime: set up g early 2019-05-11 01:12:37 +00:00
go-matherr.c runtime: Use __builtin_{inf,nan} rather than INFINITY/NAN. 2012-02-10 00:40:27 +00:00
go-memclr.c libgo: update to Go 1.8 release candidate 1 2017-01-14 00:05:42 +00:00
go-memcmp.c compiler, runtime: Memcmp routine returns intgo. 2012-11-06 18:12:45 +00:00
go-memequal.c compiler, runtime: replace hashmap code with Go 1.7 hashmap 2016-09-21 20:58:51 +00:00
go-nanotime.c runtime: copy runtime package time code from Go 1.7 2016-10-15 00:29:06 +00:00
go-nosys.c runtime: make go-nosys.c compile with !HAVE_SYSCALL 2017-08-29 20:57:20 +00:00
go-now.c re PR c/82922 (Request: add -Wstrict-prototypes to -Wextra as K&R style is obsolescent) 2018-01-10 15:42:23 +00:00
go-reflect-call.c compiler, runtime: harmonize types referenced by both C and Go 2019-02-15 01:57:51 +00:00
go-runtime-error.c runtime: use the call instruction's PC for panic-in-runtime detection 2019-01-29 00:49:23 +00:00
go-setenv.c runtime: don't call __go_alloc/__go_free in environment functions 2016-11-18 16:03:13 +00:00
go-signal.c re PR go/81893 (compilation error in libgo starting with r251127) 2017-08-18 20:17:26 +00:00
go-string.h compiler, libgo: Fixes to prepare for 64-bit int. 2012-11-06 18:28:21 +00:00
go-strslice.c runtime: always initialize str field in __go_string_slice result 2017-09-18 22:29:45 +00:00
go-type.h Big merge of changes to gofrontend repo that were postponed due to the 2017-05-10 17:26:09 +00:00
go-typedesc-equal.c re PR go/65755 (incorrect reflection of struct fields with gccgo) 2015-04-17 18:19:44 +00:00
go-unsafe-pointer.c compiler: rationalize external symbol names 2018-01-24 23:50:09 +00:00
go-unsetenv.c runtime: don't call __go_alloc/__go_free in environment functions 2016-11-18 16:03:13 +00:00
go-unwind.c re PR target/89093 (C++ exception handling clobbers d8 VFP register) 2019-04-24 12:45:45 +00:00
go-varargs.c libgo: fix build on AIX 2019-03-19 14:00:59 +00:00
panic.c compiler, runtime: harmonize types referenced by both C and Go 2019-02-15 01:57:51 +00:00
print.c runtime: copy print/println support from Go 1.7 2016-10-10 23:13:39 +00:00
proc.c runtime: in doscanstackswitch, set gp->m before gogo 2019-01-07 22:07:26 +00:00
rtems-task-variable-add.c
runtime_c.c libgo: update to Go 1.11 2018-09-24 21:46:21 +00:00
runtime.h libgo: reduce overhead for memory/block/mutex profiling 2019-05-14 14:59:42 +00:00
stack.c runtime: add type cast for non-split-stack calls to scanstackblock 2019-02-15 13:54:45 +00:00
yield.c runtime: copy signal code from Go 1.7 runtime 2016-11-10 22:53:23 +00:00