summaryrefslogtreecommitdiff
path: root/src/lj_frame.h
diff options
context:
space:
mode:
authorMike Pall <mike>2016-05-28 05:10:55 +0200
committerMike Pall <mike>2016-05-28 05:10:55 +0200
commitd9986fbadb6c50b826e39e5f690bcf0b4cd6a20b (patch)
treec89961a1a8949c19872aa39269c2408dd6595733 /src/lj_frame.h
parente3c4c9af0f07a114fb754fed6ac358a102f49e2f (diff)
downloadluajit-d9986fbadb6c50b826e39e5f690bcf0b4cd6a20b.tar.gz
luajit-d9986fbadb6c50b826e39e5f690bcf0b4cd6a20b.tar.bz2
luajit-d9986fbadb6c50b826e39e5f690bcf0b4cd6a20b.zip
MIPS64, part 1: Add MIPS64 support to interpreter.
Contributed by Djordje Kovacevic and Stefan Pejic from RT-RK.com. Sponsored by Cisco Systems, Inc.
Diffstat (limited to 'src/lj_frame.h')
-rw-r--r--src/lj_frame.h25
1 files changed, 20 insertions, 5 deletions
diff --git a/src/lj_frame.h b/src/lj_frame.h
index db2e4da1..d8d8cff2 100644
--- a/src/lj_frame.h
+++ b/src/lj_frame.h
@@ -229,26 +229,41 @@ enum { LJ_CONT_TAILCALL, LJ_CONT_FFI_CALLBACK }; /* Special continuations. */
229#define CFRAME_SIZE 272 229#define CFRAME_SIZE 272
230#define CFRAME_SHIFT_MULTRES 3 230#define CFRAME_SHIFT_MULTRES 3
231#endif 231#endif
232#elif LJ_TARGET_MIPS 232#elif LJ_TARGET_MIPS32
233#if LJ_ARCH_HASFPU 233#if LJ_ARCH_HASFPU
234#define CFRAME_OFS_ERRF 124 234#define CFRAME_OFS_ERRF 124
235#define CFRAME_OFS_NRES 120 235#define CFRAME_OFS_NRES 120
236#define CFRAME_OFS_PREV 116 236#define CFRAME_OFS_PREV 116
237#define CFRAME_OFS_L 112 237#define CFRAME_OFS_L 112
238#define CFRAME_OFS_PC 20
239#define CFRAME_OFS_MULTRES 16
240#define CFRAME_SIZE 112 238#define CFRAME_SIZE 112
241#define CFRAME_SHIFT_MULTRES 3
242#else 239#else
243#define CFRAME_OFS_ERRF 76 240#define CFRAME_OFS_ERRF 76
244#define CFRAME_OFS_NRES 72 241#define CFRAME_OFS_NRES 72
245#define CFRAME_OFS_PREV 68 242#define CFRAME_OFS_PREV 68
246#define CFRAME_OFS_L 64 243#define CFRAME_OFS_L 64
244#define CFRAME_SIZE 64
245#endif
247#define CFRAME_OFS_PC 20 246#define CFRAME_OFS_PC 20
248#define CFRAME_OFS_MULTRES 16 247#define CFRAME_OFS_MULTRES 16
249#define CFRAME_SIZE 64
250#define CFRAME_SHIFT_MULTRES 3 248#define CFRAME_SHIFT_MULTRES 3
249#elif LJ_TARGET_MIPS64
250#if LJ_ARCH_HASFPU
251#define CFRAME_OFS_ERRF 188
252#define CFRAME_OFS_NRES 184
253#define CFRAME_OFS_PREV 176
254#define CFRAME_OFS_L 168
255#define CFRAME_OFS_PC 160
256#define CFRAME_SIZE 192
257#else
258#define CFRAME_OFS_ERRF 124
259#define CFRAME_OFS_NRES 120
260#define CFRAME_OFS_PREV 112
261#define CFRAME_OFS_L 104
262#define CFRAME_OFS_PC 96
263#define CFRAME_SIZE 128
251#endif 264#endif
265#define CFRAME_OFS_MULTRES 0
266#define CFRAME_SHIFT_MULTRES 3
252#else 267#else
253#error "Missing CFRAME_* definitions for this architecture" 268#error "Missing CFRAME_* definitions for this architecture"
254#endif 269#endif