diff options
author | Mike Pall <mike> | 2011-05-09 18:16:39 +0200 |
---|---|---|
committer | Mike Pall <mike> | 2011-05-09 20:46:58 +0200 |
commit | 67d3ac9b19caba68069e83d1e3e9de14994d66cd (patch) | |
tree | ad1b075e255dcaabebfea8b6e5e70aa4a3eb63d2 /src/lj_snap.c | |
parent | 28e87d33e931661e8118a25b293213938a9e0af4 (diff) | |
download | luajit-67d3ac9b19caba68069e83d1e3e9de14994d66cd.tar.gz luajit-67d3ac9b19caba68069e83d1e3e9de14994d66cd.tar.bz2 luajit-67d3ac9b19caba68069e83d1e3e9de14994d66cd.zip |
Fix some portability issues with the JIT compiler.
Diffstat (limited to 'src/lj_snap.c')
-rw-r--r-- | src/lj_snap.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/lj_snap.c b/src/lj_snap.c index c044923a..a3c081e1 100644 --- a/src/lj_snap.c +++ b/src/lj_snap.c | |||
@@ -406,7 +406,10 @@ const BCIns *lj_snap_restore(jit_State *J, void *exptr) | |||
406 | if (irt_isinteger(t)) { | 406 | if (irt_isinteger(t)) { |
407 | setintV(o, (int32_t)ex->gpr[r-RID_MIN_GPR]); | 407 | setintV(o, (int32_t)ex->gpr[r-RID_MIN_GPR]); |
408 | } else if (irt_isnum(t)) { | 408 | } else if (irt_isnum(t)) { |
409 | setnumV(o, ex->fpr[r-RID_MIN_FPR]); | 409 | if (RID_NUM_FPR) |
410 | setnumV(o, ex->fpr[r-RID_MIN_FPR]); | ||
411 | else | ||
412 | setnumV(o, *(double *)&ex->gpr[r-RID_MIN_GPR]); | ||
410 | #if LJ_64 | 413 | #if LJ_64 |
411 | } else if (irt_islightud(t)) { | 414 | } else if (irt_islightud(t)) { |
412 | /* 64 bit lightuserdata which may escape already has the tag bits. */ | 415 | /* 64 bit lightuserdata which may escape already has the tag bits. */ |