Detect the different MIPS architecture variants.
Unified · Split
| @@ -1357,11 +1357,21 @@ ARCH_EXT_LIST_X86=" · 1356 unmodified lines | ||
| 1357 | 1357 | i686 |
| 1358 | 1358 | " |
| 1359 | 1359 | |
| 1360 | +ARCH_EXT_LIST_MIPS=" | |
| 1361 | + loongson | |
| 1362 | + mips32r1 | |
| 1363 | + mips64r1 | |
| 1364 | + mips32r2 | |
| 1365 | + mips64r2 | |
| 1366 | + mips32r6 | |
| 1367 | + mips64r6 | |
| 1368 | +" | |
| 1369 | + | |
| 1360 | 1370 | ARCH_EXT_LIST=" |
| 1361 | 1371 | $ARCH_EXT_LIST_ARM |
| 1372 | + $ARCH_EXT_LIST_MIPS | |
| 1362 | 1373 | $ARCH_EXT_LIST_PPC |
| 1363 | 1374 | $ARCH_EXT_LIST_X86 |
| 1364 | − loongson | |
| 1365 | 1375 | vis |
| 1366 | 1376 | " |
| 1367 | 1377 | |
| @@ -4059,6 +4069,19 @@ elif enabled mips; then · 2691 unmodified lines | ||
| 4059 | 4069 | |
| 4060 | 4070 | check_inline_asm loongson '"dmult.g $1, $2, $3"' |
| 4061 | 4071 | |
| 4072 | + # make sure that only an instruction set is enabled | |
| 4073 | + disable mips64r6 mips32r6 mips64r2 mips32r2 mips64r1 mips32r1 | |
| 4074 | + | |
| 4075 | + if enabled mips64; then | |
| 4076 | + check_inline_asm mips64r6 '"dlsa $0, $0, $0, 1"' || | |
| 4077 | + check_inline_asm mips64r2 '"dext $0, $0, 0, 1"' || | |
| 4078 | + check_inline_asm mips64r1 '"daddi $0, $0, 0"' | |
| 4079 | + else | |
| 4080 | + check_inline_asm mips32r6 '"aui $0, $0, 0"' || | |
| 4081 | + check_inline_asm mips32r2 '"ext $0, $0, 0, 1"' || | |
| 4082 | + check_inline_asm mips32r1 '"daddi $0, $0, 0"' | |
| 4083 | + fi | |
| 4084 | + | |
| 4062 | 4085 | elif enabled parisc; then |
| 4063 | 4086 | |
| 4064 | 4087 | if enabled gcc; then |