summaryrefslogtreecommitdiff
path: root/configure
diff options
context:
space:
mode:
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure18
1 files changed, 13 insertions, 5 deletions
diff --git a/configure b/configure
index d641d9f658..ce745d21e4 100755
--- a/configure
+++ b/configure
@@ -358,7 +358,6 @@ Optimization options (experts only):
--disable-neon disable NEON optimizations
--disable-inline-asm disable use of inline assembly
--disable-yasm disable use of nasm/yasm assembly
- --disable-mips32r2 disable MIPS32R2 optimizations
--disable-mipsdspr1 disable MIPS DSP ASE R1 optimizations
--disable-mipsdspr2 disable MIPS DSP ASE R2 optimizations
--disable-mipsfpu disable floating point MIPS optimizations
@@ -1999,7 +1998,6 @@ setend_deps="arm"
map 'eval ${v}_inline_deps=inline_asm' $ARCH_EXT_LIST_ARM
mipsfpu_deps="mips"
-mips32r2_deps="mips"
mipsdspr1_deps="mips"
mipsdspr2_deps="mips"
@@ -4569,8 +4567,19 @@ EOF
elif enabled mips; then
check_inline_asm loongson '"dmult.g $1, $2, $3"'
- enabled mips32r2 && add_cflags "-mips32r2" && add_asflags "-mips32r2" &&
- check_inline_asm mips32r2 '"rotr $t0, $t1, 1"'
+
+ # Enable minimum ISA based on selected options
+ if enabled mips64 && (enabled mipsdspr1 || enabled mipsdspr2); then
+ add_cflags "-mips64r2"
+ add_asflags "-mips64r2"
+ elif enabled mips64 && enabled mipsfpu; then
+ add_cflags "-mips64"
+ add_asflags "-mips64"
+ elif enabled mipsfpu || enabled mipsdspr1 || enabled mipsdspr2; then
+ add_cflags "-mips32r2"
+ add_asflags "-mips32r2"
+ fi
+
enabled mipsdspr1 && add_cflags "-mdsp" && add_asflags "-mdsp" &&
check_inline_asm mipsdspr1 '"addu.qb $t0, $t1, $t2"'
enabled mipsdspr2 && add_cflags "-mdspr2" && add_asflags "-mdspr2" &&
@@ -5522,7 +5531,6 @@ if enabled arm; then
fi
if enabled mips; then
echo "MIPS FPU enabled ${mipsfpu-no}"
- echo "MIPS32R2 enabled ${mips32r2-no}"
echo "MIPS DSP R1 enabled ${mipsdspr1-no}"
echo "MIPS DSP R2 enabled ${mipsdspr2-no}"
fi