diff options
author | Mike Pall <mike> | 2011-01-28 02:15:30 +0100 |
---|---|---|
committer | Mike Pall <mike> | 2011-01-28 02:15:30 +0100 |
commit | 07d8a53b393b5fbb52f3920f913ab21ce6dde4fa (patch) | |
tree | 0542c4e32ccbad394ba433c06d01df2aaed279e5 /src/lj_crecord.c | |
parent | cd9b8f90e2241c3f6c540844eedc04bc6bc28faf (diff) | |
download | luajit-07d8a53b393b5fbb52f3920f913ab21ce6dde4fa.tar.gz luajit-07d8a53b393b5fbb52f3920f913ab21ce6dde4fa.tar.bz2 luajit-07d8a53b393b5fbb52f3920f913ab21ce6dde4fa.zip |
FFI: Split up 64 bit x^k helper into signed/unsigned.
Diffstat (limited to 'src/lj_crecord.c')
-rw-r--r-- | src/lj_crecord.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/lj_crecord.c b/src/lj_crecord.c index 647c464a..86e95679 100644 --- a/src/lj_crecord.c +++ b/src/lj_crecord.c | |||
@@ -689,8 +689,8 @@ static TRef crec_arith_int64(jit_State *J, TRef *sp, CType **s, MMS mm) | |||
689 | J->postproc = LJ_POST_FIXGUARD; | 689 | J->postproc = LJ_POST_FIXGUARD; |
690 | return TREF_TRUE; | 690 | return TREF_TRUE; |
691 | } else if (mm == MM_pow) { | 691 | } else if (mm == MM_pow) { |
692 | tr = lj_ir_call(J, IRCALL_lj_carith_powi64, sp[0], sp[1], | 692 | tr = lj_ir_call(J, dt == IRT_I64 ? IRCALL_lj_carith_powi64 : |
693 | lj_ir_kint(J, (int)dt-(int)IRT_I64)); | 693 | IRCALL_lj_carith_powu64, sp[0], sp[1]); |
694 | } else { | 694 | } else { |
695 | if (mm == MM_div || mm == MM_mod) | 695 | if (mm == MM_div || mm == MM_mod) |
696 | return 0; /* NYI: integer div, mod. */ | 696 | return 0; /* NYI: integer div, mod. */ |