summaryrefslogtreecommitdiff
path: root/arch/mips/include/asm/compiler.h
diff options
context:
space:
mode:
authorMarkos Chandras <markos.chandras@imgtec.com>2014-11-18 15:02:32 +0000
committerMarkos Chandras <markos.chandras@imgtec.com>2015-02-17 15:37:14 +0000
commitbe5136988e25ae0dc8379fcb937efc63d87aba9e (patch)
treec948e2a2428578e8b25490775a66ff0a573bb993 /arch/mips/include/asm/compiler.h
parenta168b8f1cde6588ff7a67699fa11e01bc77a5ddd (diff)
MIPS: asm: compiler: Add new macros to set ISA and arch asm annotations
There are certain places where the code uses .set mips32 or .set mips64 or .set arch=r4000. In preparation of MIPS R6 support, and in order to use as less #ifdefs as possible, we define new macros to set similar annotations for MIPS R6. Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
Diffstat (limited to 'arch/mips/include/asm/compiler.h')
-rw-r--r--arch/mips/include/asm/compiler.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/arch/mips/include/asm/compiler.h b/arch/mips/include/asm/compiler.h
index c73815e0123a..10b642f55eb7 100644
--- a/arch/mips/include/asm/compiler.h
+++ b/arch/mips/include/asm/compiler.h
@@ -24,4 +24,17 @@
#error "microMIPS compilation unsupported with GCC older than 4.9"
#endif
+#ifdef CONFIG_CPU_MIPSR6
+#define MIPS_ISA_LEVEL "mips64r6"
+#define MIPS_ISA_ARCH_LEVEL MIPS_ISA_LEVEL
+#define MIPS_ISA_LEVEL_RAW mips64r6
+#define MIPS_ISA_ARCH_LEVEL_RAW MIPS_ISA_LEVEL_RAW
+#else
+/* MIPS64 is a superset of MIPS32 */
+#define MIPS_ISA_LEVEL "mips64r2"
+#define MIPS_ISA_ARCH_LEVEL "arch=r4000"
+#define MIPS_ISA_LEVEL_RAW mips64r2
+#define MIPS_ISA_ARCH_LEVEL_RAW MIPS_ISA_LEVEL_RAW
+#endif /* CONFIG_CPU_MIPSR6 */
+
#endif /* _ASM_COMPILER_H */