summaryrefslogtreecommitdiff
path: root/arch/mips/lib/libgcc.h
diff options
context:
space:
mode:
authorMax Krummenacher <max.krummenacher@toradex.com>2018-06-19 17:19:28 +0200
committerMax Krummenacher <max.krummenacher@toradex.com>2018-06-19 17:19:28 +0200
commit731e809d3e4a14e49756bd4158b98c69e39a8459 (patch)
tree66644c715500c88a6f6285cae57a6067f0ed8105 /arch/mips/lib/libgcc.h
parentb2a7f2f2fd3ec48b3d309111b6fe8ddee227539d (diff)
parent5b5a04065fb5487303869fd6080c30f86530005d (diff)
Merge branch 'fslc_4.9-1.0.x-imx' into toradex_4.9-1.0.x-imx-next
Diffstat (limited to 'arch/mips/lib/libgcc.h')
-rw-r--r--arch/mips/lib/libgcc.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/arch/mips/lib/libgcc.h b/arch/mips/lib/libgcc.h
index 05909d58e2fe..56ea0df60a44 100644
--- a/arch/mips/lib/libgcc.h
+++ b/arch/mips/lib/libgcc.h
@@ -9,10 +9,18 @@ typedef int word_type __attribute__ ((mode (__word__)));
struct DWstruct {
int high, low;
};
+
+struct TWstruct {
+ long long high, low;
+};
#elif defined(__LITTLE_ENDIAN)
struct DWstruct {
int low, high;
};
+
+struct TWstruct {
+ long long low, high;
+};
#else
#error I feel sick.
#endif
@@ -22,4 +30,13 @@ typedef union {
long long ll;
} DWunion;
+#if defined(CONFIG_64BIT) && defined(CONFIG_CPU_MIPSR6)
+typedef int ti_type __attribute__((mode(TI)));
+
+typedef union {
+ struct TWstruct s;
+ ti_type ti;
+} TWunion;
+#endif
+
#endif /* __ASM_LIBGCC_H */