summaryrefslogtreecommitdiff
path: root/configure
diff options
context:
space:
mode:
authorMans Rullgard <mans@mansr.com>2012-12-01 15:19:10 +0000
committerMans Rullgard <mans@mansr.com>2012-12-07 16:54:03 +0000
commit7f2b3dcabd108926bde819ad574017f4161d1546 (patch)
treebffd5f926266f03c3741189d892519c1db039da8 /configure
parentc6ebc9faa2210d7f36a3036c357f6f199520f575 (diff)
configure: arm: check inline and external asm support for extensions
This tests instruction set support in both inline and external asm. If both fail, the base config option is disabled. Signed-off-by: Mans Rullgard <mans@mansr.com>
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure14
1 files changed, 8 insertions, 6 deletions
diff --git a/configure b/configure
index 6758438e11..42975e120c 100755
--- a/configure
+++ b/configure
@@ -3152,12 +3152,14 @@ EOF
warn "Compiler does not indicate floating-point ABI, guessing $fpabi."
fi
- enabled armv5te && check_inline_asm armv5te '"qadd r0, r0, r0"'
- enabled armv6 && check_inline_asm armv6 '"sadd16 r0, r0, r0"'
- enabled armv6t2 && check_inline_asm armv6t2 '"movt r0, #0"'
- enabled armvfp && check_inline_asm armvfp '"fadds s0, s0, s0"'
- enabled neon && check_inline_asm neon '"vadd.i16 q0, q0, q0"'
- enabled vfpv3 && check_inline_asm vfpv3 '"vmov.f32 s0, #1.0"'
+ enabled armv5te && check_insn armv5te 'qadd r0, r0, r0'
+ enabled armv6 && check_insn armv6 'sadd16 r0, r0, r0'
+ enabled armv6t2 && check_insn armv6t2 'movt r0, #0'
+ enabled armvfp && check_insn armvfp 'fadds s0, s0, s0'
+ enabled neon && check_insn neon 'vadd.i16 q0, q0, q0'
+ enabled vfpv3 && check_insn vfpv3 'vmov.f32 s0, #1.0'
+
+ map 'enabled_any ${v}_external ${v}_inline || disable $v' $ARCH_EXT_LIST_ARM
check_inline_asm asm_mod_q '"add r0, %Q0, %R0" :: "r"((long long)0)'
check_inline_asm asm_mod_y '"vmul.i32 d0, d0, %y0" :: "x"(0)'