diff options
Diffstat (limited to 'arch/mips/include/asm/mipsregs.h')
-rw-r--r-- | arch/mips/include/asm/mipsregs.h | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/arch/mips/include/asm/mipsregs.h b/arch/mips/include/asm/mipsregs.h index cf3b580c3df6..22a135ac91de 100644 --- a/arch/mips/include/asm/mipsregs.h +++ b/arch/mips/include/asm/mipsregs.h | |||
@@ -661,6 +661,8 @@ | |||
661 | #define MIPS_CONF6_SYND (_ULCAST_(1) << 13) | 661 | #define MIPS_CONF6_SYND (_ULCAST_(1) << 13) |
662 | /* proAptiv FTLB on/off bit */ | 662 | /* proAptiv FTLB on/off bit */ |
663 | #define MIPS_CONF6_FTLBEN (_ULCAST_(1) << 15) | 663 | #define MIPS_CONF6_FTLBEN (_ULCAST_(1) << 15) |
664 | /* FTLB probability bits */ | ||
665 | #define MIPS_CONF6_FTLBP_SHIFT (16) | ||
664 | 666 | ||
665 | #define MIPS_CONF7_WII (_ULCAST_(1) << 31) | 667 | #define MIPS_CONF7_WII (_ULCAST_(1) << 31) |
666 | 668 | ||
@@ -1324,7 +1326,7 @@ do { \ | |||
1324 | /* | 1326 | /* |
1325 | * Macros to access the floating point coprocessor control registers | 1327 | * Macros to access the floating point coprocessor control registers |
1326 | */ | 1328 | */ |
1327 | #define read_32bit_cp1_register(source) \ | 1329 | #define _read_32bit_cp1_register(source, gas_hardfloat) \ |
1328 | ({ \ | 1330 | ({ \ |
1329 | int __res; \ | 1331 | int __res; \ |
1330 | \ | 1332 | \ |
@@ -1334,12 +1336,21 @@ do { \ | |||
1334 | " # gas fails to assemble cfc1 for some archs, \n" \ | 1336 | " # gas fails to assemble cfc1 for some archs, \n" \ |
1335 | " # like Octeon. \n" \ | 1337 | " # like Octeon. \n" \ |
1336 | " .set mips1 \n" \ | 1338 | " .set mips1 \n" \ |
1339 | " "STR(gas_hardfloat)" \n" \ | ||
1337 | " cfc1 %0,"STR(source)" \n" \ | 1340 | " cfc1 %0,"STR(source)" \n" \ |
1338 | " .set pop \n" \ | 1341 | " .set pop \n" \ |
1339 | : "=r" (__res)); \ | 1342 | : "=r" (__res)); \ |
1340 | __res; \ | 1343 | __res; \ |
1341 | }) | 1344 | }) |
1342 | 1345 | ||
1346 | #ifdef GAS_HAS_SET_HARDFLOAT | ||
1347 | #define read_32bit_cp1_register(source) \ | ||
1348 | _read_32bit_cp1_register(source, .set hardfloat) | ||
1349 | #else | ||
1350 | #define read_32bit_cp1_register(source) \ | ||
1351 | _read_32bit_cp1_register(source, ) | ||
1352 | #endif | ||
1353 | |||
1343 | #ifdef HAVE_AS_DSP | 1354 | #ifdef HAVE_AS_DSP |
1344 | #define rddsp(mask) \ | 1355 | #define rddsp(mask) \ |
1345 | ({ \ | 1356 | ({ \ |