summaryrefslogtreecommitdiff
path: root/src/lj_obj.h
diff options
context:
space:
mode:
authorMike Pall <mike>2011-05-16 02:38:07 +0200
committerMike Pall <mike>2011-05-16 02:38:07 +0200
commit1ac71f1fa8c0ad0c691ca7a2a96d74121b75ec9e (patch)
treed8e690b8533d11caa287daab113f22738347a7e4 /src/lj_obj.h
parentbe73a96751261bb3a424aa1c5d28547f23037733 (diff)
downloadluajit-1ac71f1fa8c0ad0c691ca7a2a96d74121b75ec9e.tar.gz
luajit-1ac71f1fa8c0ad0c691ca7a2a96d74121b75ec9e.tar.bz2
luajit-1ac71f1fa8c0ad0c691ca7a2a96d74121b75ec9e.zip
ARM: Add LJ_SOFTFP define. Add support for soft-float slot handling.
Diffstat (limited to 'src/lj_obj.h')
-rw-r--r--src/lj_obj.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/lj_obj.h b/src/lj_obj.h
index c1bdb844..6d6782b4 100644
--- a/src/lj_obj.h
+++ b/src/lj_obj.h
@@ -786,18 +786,18 @@ static LJ_AINLINE void copyTV(lua_State *L, TValue *o1, const TValue *o2)
786 786
787/* -- Number to integer conversion ---------------------------------------- */ 787/* -- Number to integer conversion ---------------------------------------- */
788 788
789#if !LJ_ARCH_HASFPU 789#if LJ_SOFTFP
790LJ_ASMF int32_t lj_vm_tobit(double x); 790LJ_ASMF int32_t lj_vm_tobit(double x);
791#endif 791#endif
792 792
793static LJ_AINLINE int32_t lj_num2bit(lua_Number n) 793static LJ_AINLINE int32_t lj_num2bit(lua_Number n)
794{ 794{
795#if LJ_ARCH_HASFPU 795#if LJ_SOFTFP
796 return lj_vm_tobit(n);
797#else
796 TValue o; 798 TValue o;
797 o.n = n + 6755399441055744.0; /* 2^52 + 2^51 */ 799 o.n = n + 6755399441055744.0; /* 2^52 + 2^51 */
798 return (int32_t)o.u32.lo; 800 return (int32_t)o.u32.lo;
799#else
800 return lj_vm_tobit(n);
801#endif 801#endif
802} 802}
803 803