Go to file
Ian Lance Taylor 4d12cf3cc3 runtime: implement cheaper context switch on Linux/AMD64
Currently, goroutine switches are implemented with libc
    getcontext/setcontext functions, which saves/restores the machine
    register states and also the signal context. This does more than
    what we need, and performs an expensive syscall.
    
    This CL implements a simplified version of getcontext/setcontext,
    in assembly, that only saves/restores the necessary part, i.e.
    the callee-save registers, and the PC, SP. A simplified version
    of makecontext, written in C, is also added. Currently this is
    only implemented on Linux/AMD64.
    
    Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/178298

From-SVN: r271818
2019-05-31 17:56:36 +00:00
INSTALL
config Generalize getconf _NPROCESSORS_ONLN 2019-05-30 09:06:48 +00:00
contrib contrib/mklog: Open files in text mode 2019-05-21 11:37:05 +03:00
fixincludes fixincludes - fix PR90379 2019-05-11 20:19:31 +00:00
gcc runtime: implement cheaper context switch on Linux/AMD64 2019-05-31 17:56:36 +00:00
gnattools
gotools Makefile.am (check-go-tool): Only chmod check-go-dir if it exists. 2019-05-27 19:21:22 +00:00
include libiberty.h (vasprintf): Don't declare if HAVE_DECL_VASPRINTF is not defined. 2019-04-26 09:35:01 -06:00
intl
libada
libatomic
libbacktrace Makefile.am (BUILDTESTS): Remove test_elf, add test_elf_32 and test_elf_64. 2019-05-24 11:55:21 +00:00
libcc1 [C++ PATCH] Using decls 2019-05-21 14:33:24 +00:00
libcpp [PATCH] Fix PR 81721: ICE with PCH and Pragma warning and C++ operator 2019-05-19 23:59:06 -07:00
libdecnumber
libffi
libgcc config.gcc (rx-*-linux*): New target. 2019-05-29 12:36:06 -06:00
libgfortran fortran/89100: Default widths with -fdec-format-defaults 2019-05-22 14:56:01 +03:00
libgo runtime: implement cheaper context switch on Linux/AMD64 2019-05-31 17:56:36 +00:00
libgomp Generalize getconf _NPROCESSORS_ONLN 2019-05-30 09:06:48 +00:00
libhsail-rt
libiberty d-demangle.c (dlang_parse_assocarray): Correctly handle error result. 2019-04-30 08:39:14 -06:00
libitm Makefile.am (finclude): Remove. 2019-05-03 09:20:04 +02:00
libobjc re PR target/89093 (C++ exception handling clobbers d8 VFP register) 2019-04-23 12:03:41 +02:00
liboffloadmic
libphobos Check if Solaris ld supports -z relax=transtls 2019-05-07 10:38:45 +00:00
libquadmath
libsanitizer rs6000: Fix sanitizer build (PR90639) 2019-05-27 21:12:19 +02:00
libssp
libstdc++-v3 Add noexcept to tuple<> and simplify tuple<T1,T2> noexcept-specifiers 2019-05-31 15:58:05 +01:00
libvtv
lto-plugin lto-plugin, removed unused variable 2019-05-15 14:10:27 +00:00
maintainer-scripts crontab: Snapshots from trunk are now GCC 10 related. 2019-05-04 13:28:49 +00:00
zlib
.dir-locals.el
.gitattributes
.gitignore
ABOUT-NLS
COPYING
COPYING.LIB
COPYING.RUNTIME
COPYING3
COPYING3.LIB
ChangeLog Add myself to MAINTAINERS 2019-05-20 15:33:12 +00:00
ChangeLog.jit
ChangeLog.tree-ssa
MAINTAINERS Add myself to MAINTAINERS 2019-05-20 15:33:12 +00:00
Makefile.def
Makefile.in re PR lto/85574 (LTO bootstapped binaries differ) 2019-05-02 13:58:47 +00:00
Makefile.tpl re PR lto/85574 (LTO bootstapped binaries differ) 2019-05-02 13:58:47 +00:00
README
ar-lib
compile
config-ml.in
config.guess
config.rpath
config.sub
configure PR d/87799 Fix D build on windows hosts 2019-04-14 09:52:22 +00:00
configure.ac PR d/87799 Fix D build on windows hosts 2019-04-14 09:52:22 +00:00
depcomp
install-sh
libtool-ldflags
libtool.m4
ltgcc.m4
ltmain.sh
ltoptions.m4
ltsugar.m4
ltversion.m4
lt~obsolete.m4
missing
mkdep
mkinstalldirs
move-if-change
multilib.am
symlink-tree
test-driver
ylwrap

README

This directory contains the GNU Compiler Collection (GCC).

The GNU Compiler Collection is free software.  See the files whose
names start with COPYING for copying permission.  The manuals, and
some of the runtime libraries, are under different terms; see the
individual source files for details.

The directory INSTALL contains copies of the installation information
as HTML and plain text.  The source of this information is
gcc/doc/install.texi.  The installation information includes details
of what is included in the GCC sources and what files GCC installs.

See the file gcc/doc/gcc.texi (together with other files that it
includes) for usage and porting information.  An online readable
version of the manual is in the files gcc/doc/gcc.info*.

See http://gcc.gnu.org/bugs/ for how to report bugs usefully.

Copyright years on GCC source files may be listed using range
notation, e.g., 1987-2012, indicating that every year in the range,
inclusive, is a copyrightable year that could otherwise be listed
individually.