Blame src/libmpg123/check_neon.S

Packit c32a2d
/*
Packit c32a2d
	check_neon: check NEON availability
Packit c32a2d
Packit c32a2d
	copyright 1995-2014 by the mpg123 project - free software under the terms of the LGPL 2.1
Packit c32a2d
	see COPYING and AUTHORS files in distribution or http://mpg123.org
Packit c32a2d
	initially written by Taihei Momma
Packit c32a2d
*/
Packit c32a2d
Packit c32a2d
#include "mangle.h"
Packit c32a2d
Packit c32a2d
#ifndef __aarch64__
Packit c32a2d
#ifndef _M_ARM
Packit c32a2d
	.code 32
Packit c32a2d
#endif
Packit c32a2d
#ifndef __APPLE__
Packit c32a2d
	.fpu neon
Packit c32a2d
#endif
Packit c32a2d
#endif
Packit c32a2d
Packit c32a2d
	.text
Packit c32a2d
	GLOBAL_SYMBOL ASM_NAME(check_neon)
Packit c32a2d
#ifdef __ELF__
Packit c32a2d
	.type ASM_NAME(check_neon), %function
Packit c32a2d
#endif
Packit c32a2d
	ALIGN4
Packit c32a2d
ASM_NAME(check_neon):
Packit c32a2d
#ifdef __aarch64__
Packit c32a2d
	orr		v0.16b, v0.16b, v0.16b
Packit c32a2d
	ret
Packit c32a2d
#else
Packit c32a2d
	vorr	d0, d0, d0
Packit c32a2d
	bx		lr
Packit c32a2d
#endif
Packit c32a2d
Packit c32a2d
NONEXEC_STACK