freebsd-skq/lib/csu/mips/crtn.S
John Baldwin e896328044 Don't include GNU object attributes when building with clang.
LLVM's MIPS assembler parser does not understand the GNU as
'.gnu_attribute' keyword.  This could be re-enabled if LLVM is updated
in the future.  The desired floating point ABI is already described in
the .MIPS.abiflags section.

Reviewed by:	emaste
Sponsored by:	DARPA / AFRL
2017-08-30 19:19:31 +00:00

28 lines
590 B
ArmAsm

#include <machine/asm.h>
__FBSDID("$FreeBSD$");
#ifndef __clang__
.gnu_attribute 4, 0
#endif
.section .init,"ax",%progbits
.align 4
.set noreorder
#if defined(__ABICALLS__) && (defined(__mips_n32) || defined(__mips_n64))
REG_L gp, CALLFRAME_GP(sp)
#endif
REG_L ra, CALLFRAME_RA(sp)
jr ra
PTR_ADDU sp, sp, CALLFRAME_SIZ
.set reorder
.section .fini,"ax",%progbits
.align 4
.set noreorder
#if defined(__ABICALLS__) && (defined(__mips_n32) || defined(__mips_n64))
REG_L gp, CALLFRAME_GP(sp)
#endif
REG_L ra, CALLFRAME_RA(sp)
jr ra
PTR_ADDU sp, sp, CALLFRAME_SIZ
.set reorder