9069eb28d4
libsanitizer/ * acinclude.m4: Add enable.m4 and cet.m4. * Makefile.in: Regenerate. * asan/Makefile.am: Update AM_CXXFLAGS. * asan/Makefile.in: Regenerate. * configure: Likewise. * configure.ac: Set CET_FLAGS. Update EXTRA_CFLAGS, EXTRA_CXXFLAGS, EXTRA_ASFLAGS. * interception/Makefile.am: Update AM_CXXFLAGS. * interception/Makefile.in: Regenerate. * libbacktrace/Makefile.am: Update AM_CFLAGS, AM_CXXFLAGS. * libbacktrace/Makefile.in: Regenerate. * lsan/Makefile.am: Update AM_CXXFLAGS. * lsan/Makefile.in: Regenerate. * sanitizer_common/Makefile.am: Update AM_CXXFLAGS, AM_CCASFLAGS. * sanitizer_common/sanitizer_linux_x86_64.S: Include cet.h. Add _CET_ENDBR macro. * sanitizer_common/Makefile.in: Regenerate. * tsan/Makefile.am: Update AM_CXXFLAGS. * tsan/Makefile.in: Regenerate. * tsan/tsan_rtl_amd64.S Include cet.h. Add _CET_ENDBR macro. * ubsan/Makefile.am: Update AM_CXXFLAGS. * ubsan/Makefile.in: Regenerate. From-SVN: r254896
28 lines
891 B
ArmAsm
28 lines
891 B
ArmAsm
// This file is dual licensed under the MIT and the University of Illinois Open
|
|
// Source Licenses. See LICENSE.TXT for details.
|
|
|
|
// Avoid being marked as needing an executable stack:
|
|
#if defined(__linux__) && defined(__ELF__)
|
|
.section .note.GNU-stack,"",%progbits
|
|
#endif
|
|
|
|
// Further contents are x86_64-only:
|
|
#if defined(__linux__) && defined(__x86_64__)
|
|
|
|
#include "../builtins/assembly.h"
|
|
#include "cet.h"
|
|
|
|
// If the "naked" function attribute were supported for x86 we could
|
|
// do this via inline asm.
|
|
.text
|
|
.balign 4
|
|
DEFINE_COMPILERRT_FUNCTION(internal_sigreturn)
|
|
_CET_ENDBR
|
|
mov $0xf, %eax // 0xf == SYS_rt_sigreturn
|
|
mov %rcx, %r10
|
|
syscall
|
|
ret // Won't normally reach here.
|
|
END_COMPILERRT_FUNCTION(internal_sigreturn)
|
|
|
|
#endif // defined(__linux__) && defined(__x86_64__)
|