llvm-project/compiler-rt
Marcin Koscielnicki 463897f1a9 [sanitizers] [SystemZ] Add __tls_get_offset interceptor.
s390 is special again - instead of __tls_get_addr, it has __tls_get_offset
with special calling conventions: the result is TP relative, and
the argument is GOT-relative.  Since we need to get address of the caller's
GOT, which is in %r12, we have to use assembly like glibc does.

Aside of __tls_get_offset, glibc also implements a slightly saner
__tls_get_addr_internal, which takes a pointer as argument, but still
returns a TP-relative offset.  It is used for dlsym() called on TLS
symbols, so we have to intercept it was well.  Our __tls_get_offset
is also implemented by delegating to it.

Differential Revision: http://reviews.llvm.org/D19778

llvm-svn: 273041
2016-06-17 20:24:35 +00:00
..
cmake Turn off -Wunused-parameter when building compiler-rt with clang on Windows, it is very noisy 2016-06-17 18:30:37 +00:00
include [sanitizers] introduce yet another API function: __sanitizer_install_malloc_and_free_hooks 2016-06-16 20:06:06 +00:00
lib [sanitizers] [SystemZ] Add __tls_get_offset interceptor. 2016-06-17 20:24:35 +00:00
make [PGO] Add API for profile merge from buffer 2016-03-03 18:54:46 +00:00
test [esan|cfrag] Add the struct field size array in StructInfo 2016-06-17 04:50:11 +00:00
unittests Replace hardcoded comment at 'lit.site.cfg.in' 2016-04-16 07:03:45 +00:00
www Update references to new lists.llvm.org mailing lists. 2015-08-05 03:58:00 +00:00
.arcconfig
.gitignore
CMakeLists.txt Turn off -Wunused-parameter when building compiler-rt with clang on Windows, it is very noisy 2016-06-17 18:30:37 +00:00
CODE_OWNERS.TXT [sanitizers] remove earthdok@ from owners 2016-05-18 18:52:18 +00:00
CREDITS.TXT Add Guan-Hong Liu. 2014-06-16 08:38:19 +00:00
LICENSE.TXT Update copyright year to 2016. 2016-03-30 22:38:50 +00:00
Makefile
README.txt Moved the builtins documentation to lib/builtins/ 2014-05-28 23:09:45 +00:00

README.txt

Compiler-RT
================================

This directory and its subdirectories contain source code for the compiler
support routines.

Compiler-RT is open source software. You may freely distribute it under the
terms of the license agreement found in LICENSE.txt.

================================