]> git.ipfire.org Git - thirdparty/LuaJIT.git/commitdiff
Bump some limits to accomodate SINK pass.
authorMike Pall <mike>
Wed, 4 Jul 2012 19:14:37 +0000 (21:14 +0200)
committerMike Pall <mike>
Wed, 4 Jul 2012 19:15:15 +0000 (21:15 +0200)
doc/ext_ffi_semantics.html
src/lj_crecord.c
src/lj_def.h

index d0613aed1474e59a7a6bf9fae0c61ed577b2b856..ed32d23fd9de708c0322b20a22f65941e34ec9c6 100644 (file)
@@ -1130,7 +1130,7 @@ suboptimal performance, especially when used in inner loops:
 <li>Table initializers.</li>
 <li>Initialization of nested <tt>struct</tt>/<tt>union</tt> types.</li>
 <li>Allocations of variable-length arrays or structs.</li>
-<li>Allocations of C&nbsp;types with a size &gt; 64&nbsp;bytes or an
+<li>Allocations of C&nbsp;types with a size &gt; 128&nbsp;bytes or an
 alignment &gt; 8&nbsp;bytes.</li>
 <li>Conversions from lightuserdata to <tt>void&nbsp;*</tt>.</li>
 <li>Pointer differences for element sizes that are not a power of
index 18e1ee13ebb170658f57c2325fa842955bc222f4..6cb565c381b5ccc56c0b17fd943ea6587be51117 100644 (file)
@@ -654,7 +654,7 @@ static void crec_alloc(jit_State *J, RecordFFData *rd, CTypeID id)
   CTInfo info = lj_ctype_info(cts, id, &sz);
   CType *d = ctype_raw(cts, id);
   TRef trid;
-  if (sz == 0 || sz > 64 || (info & CTF_VLA) || ctype_align(info) > CT_MEMALIGN)
+  if (!sz || sz > 128 || (info & CTF_VLA) || ctype_align(info) > CT_MEMALIGN)
     lj_trace_err(J, LJ_TRERR_NYICONV);  /* NYI: large/special allocations. */
   trid = lj_ir_kint(J, id);
   /* Use special instruction to box pointer or 32/64 bit integer. */
index 27b6d6b7dd6cb6280b77d415804db2bf166788be..a7531f10aaba3b950dbdb233726260a9e4f082ac 100644 (file)
@@ -80,7 +80,7 @@ typedef unsigned int uintptr_t;
 
 /* JIT compiler limits. */
 #define LJ_MAX_JSLOTS  250             /* Max. # of stack slots for a trace. */
-#define LJ_MAX_PHI     32              /* Max. # of PHIs for a loop. */
+#define LJ_MAX_PHI     64              /* Max. # of PHIs for a loop. */
 #define LJ_MAX_EXITSTUBGR      16      /* Max. # of exit stub groups. */
 
 /* Various macros. */