gcc/libsanitizer/sanitizer_common/sanitizer_linux_x86_64.S
Jakub Jelinek 86b2a5583b re PR sanitizer/79168 (libtsan fails to link when cross compiling GCC tip for Aarch64 target)
PR sanitizer/79168
	* merge.sh (change_comment_headers): Don't remove 2nd and 3rd line
	if the 3rd line doesn't contain 'The LLVM Compiler Infrastructure'
	text.
	* sanitizer_common/sanitizer_linux_mips64.S: Regenerated.
	* sanitizer_common/sanitizer_linux_x86_64.S: Likewise.
	* tsan/tsan_ppc_regs.h: Likewise.
	* tsan/tsan_rtl_aarch64.S: Likewise.
	* tsan/tsan_rtl_mips64.S: Likewise.
	* tsan/tsan_rtl_ppc64.S: Likewise.

From-SVN: r244844
2017-01-24 01:18:36 +01:00

26 lines
862 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"
// If the "naked" function attribute were supported for x86 we could
// do this via inline asm.
.text
.balign 4
DEFINE_COMPILERRT_FUNCTION(internal_sigreturn)
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__)