aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Pall <mike>2013-05-16 20:07:53 +0200
committerMike Pall <mike>2013-05-16 20:07:53 +0200
commit647cc4613f3acd5ec8785920102af22b85cf2b9c (patch)
treee73f6e3ef1201884eb4be43097c51e1df80d9a7f
parenta946f678d553494ee23a29a10cced1d5cc11ab7e (diff)
parent0f79d4741f29637de1eaaa603fdd0d161feb390d (diff)
downloadluajit-647cc4613f3acd5ec8785920102af22b85cf2b9c.tar.gz
luajit-647cc4613f3acd5ec8785920102af22b85cf2b9c.tar.bz2
luajit-647cc4613f3acd5ec8785920102af22b85cf2b9c.zip
Merge branch 'master' into v2.1
-rw-r--r--src/lj_asm.c2
-rw-r--r--src/lj_asm_arm.h4
-rw-r--r--src/lj_asm_mips.h4
-rw-r--r--src/lj_asm_ppc.h4
-rw-r--r--src/lj_asm_x86.h4
5 files changed, 9 insertions, 9 deletions
diff --git a/src/lj_asm.c b/src/lj_asm.c
index a1e92003..7542c77c 100644
--- a/src/lj_asm.c
+++ b/src/lj_asm.c
@@ -1198,7 +1198,7 @@ static void asm_collectargs(ASMState *as, IRIns *ir,
1198 const CCallInfo *ci, IRRef *args) 1198 const CCallInfo *ci, IRRef *args)
1199{ 1199{
1200 uint32_t n = CCI_XNARGS(ci); 1200 uint32_t n = CCI_XNARGS(ci);
1201 lua_assert(n <= CCI_NARGS_MAX); 1201 lua_assert(n <= CCI_NARGS_MAX*2); /* Account for split args. */
1202 if ((ci->flags & CCI_L)) { *args++ = ASMREF_L; n--; } 1202 if ((ci->flags & CCI_L)) { *args++ = ASMREF_L; n--; }
1203 while (n-- > 1) { 1203 while (n-- > 1) {
1204 ir = IR(ir->op1); 1204 ir = IR(ir->op1);
diff --git a/src/lj_asm_arm.h b/src/lj_asm_arm.h
index 1e024dcd..ddf1480f 100644
--- a/src/lj_asm_arm.h
+++ b/src/lj_asm_arm.h
@@ -455,7 +455,7 @@ static void asm_setupresult(ASMState *as, IRIns *ir, const CCallInfo *ci)
455 455
456static void asm_callx(ASMState *as, IRIns *ir) 456static void asm_callx(ASMState *as, IRIns *ir)
457{ 457{
458 IRRef args[CCI_NARGS_MAX]; 458 IRRef args[CCI_NARGS_MAX*2];
459 CCallInfo ci; 459 CCallInfo ci;
460 IRRef func; 460 IRRef func;
461 IRIns *irf; 461 IRIns *irf;
@@ -2132,7 +2132,7 @@ static void asm_tail_prep(ASMState *as)
2132/* Ensure there are enough stack slots for call arguments. */ 2132/* Ensure there are enough stack slots for call arguments. */
2133static Reg asm_setup_call_slots(ASMState *as, IRIns *ir, const CCallInfo *ci) 2133static Reg asm_setup_call_slots(ASMState *as, IRIns *ir, const CCallInfo *ci)
2134{ 2134{
2135 IRRef args[CCI_NARGS_MAX]; 2135 IRRef args[CCI_NARGS_MAX*2];
2136 uint32_t i, nargs = CCI_XNARGS(ci); 2136 uint32_t i, nargs = CCI_XNARGS(ci);
2137 int nslots = 0, ngpr = REGARG_NUMGPR, nfpr = REGARG_NUMFPR, fprodd = 0; 2137 int nslots = 0, ngpr = REGARG_NUMGPR, nfpr = REGARG_NUMFPR, fprodd = 0;
2138 asm_collectargs(as, ir, ci, args); 2138 asm_collectargs(as, ir, ci, args);
diff --git a/src/lj_asm_mips.h b/src/lj_asm_mips.h
index 5070a7a2..fe7d55d3 100644
--- a/src/lj_asm_mips.h
+++ b/src/lj_asm_mips.h
@@ -328,7 +328,7 @@ static void asm_setupresult(ASMState *as, IRIns *ir, const CCallInfo *ci)
328 328
329static void asm_callx(ASMState *as, IRIns *ir) 329static void asm_callx(ASMState *as, IRIns *ir)
330{ 330{
331 IRRef args[CCI_NARGS_MAX]; 331 IRRef args[CCI_NARGS_MAX*2];
332 CCallInfo ci; 332 CCallInfo ci;
333 IRRef func; 333 IRRef func;
334 IRIns *irf; 334 IRIns *irf;
@@ -1725,7 +1725,7 @@ static void asm_tail_prep(ASMState *as)
1725/* Ensure there are enough stack slots for call arguments. */ 1725/* Ensure there are enough stack slots for call arguments. */
1726static Reg asm_setup_call_slots(ASMState *as, IRIns *ir, const CCallInfo *ci) 1726static Reg asm_setup_call_slots(ASMState *as, IRIns *ir, const CCallInfo *ci)
1727{ 1727{
1728 IRRef args[CCI_NARGS_MAX]; 1728 IRRef args[CCI_NARGS_MAX*2];
1729 uint32_t i, nargs = CCI_XNARGS(ci); 1729 uint32_t i, nargs = CCI_XNARGS(ci);
1730 int nslots = 4, ngpr = REGARG_NUMGPR, nfpr = REGARG_NUMFPR; 1730 int nslots = 4, ngpr = REGARG_NUMGPR, nfpr = REGARG_NUMFPR;
1731 asm_collectargs(as, ir, ci, args); 1731 asm_collectargs(as, ir, ci, args);
diff --git a/src/lj_asm_ppc.h b/src/lj_asm_ppc.h
index a4a35547..1cac6fa9 100644
--- a/src/lj_asm_ppc.h
+++ b/src/lj_asm_ppc.h
@@ -331,7 +331,7 @@ static void asm_setupresult(ASMState *as, IRIns *ir, const CCallInfo *ci)
331 331
332static void asm_callx(ASMState *as, IRIns *ir) 332static void asm_callx(ASMState *as, IRIns *ir)
333{ 333{
334 IRRef args[CCI_NARGS_MAX]; 334 IRRef args[CCI_NARGS_MAX*2];
335 CCallInfo ci; 335 CCallInfo ci;
336 IRRef func; 336 IRRef func;
337 IRIns *irf; 337 IRIns *irf;
@@ -1916,7 +1916,7 @@ static void asm_tail_prep(ASMState *as)
1916/* Ensure there are enough stack slots for call arguments. */ 1916/* Ensure there are enough stack slots for call arguments. */
1917static Reg asm_setup_call_slots(ASMState *as, IRIns *ir, const CCallInfo *ci) 1917static Reg asm_setup_call_slots(ASMState *as, IRIns *ir, const CCallInfo *ci)
1918{ 1918{
1919 IRRef args[CCI_NARGS_MAX]; 1919 IRRef args[CCI_NARGS_MAX*2];
1920 uint32_t i, nargs = CCI_XNARGS(ci); 1920 uint32_t i, nargs = CCI_XNARGS(ci);
1921 int nslots = 2, ngpr = REGARG_NUMGPR, nfpr = REGARG_NUMFPR; 1921 int nslots = 2, ngpr = REGARG_NUMGPR, nfpr = REGARG_NUMFPR;
1922 asm_collectargs(as, ir, ci, args); 1922 asm_collectargs(as, ir, ci, args);
diff --git a/src/lj_asm_x86.h b/src/lj_asm_x86.h
index 3a029970..25da5246 100644
--- a/src/lj_asm_x86.h
+++ b/src/lj_asm_x86.h
@@ -600,7 +600,7 @@ static void *asm_callx_func(ASMState *as, IRIns *irf, IRRef func)
600 600
601static void asm_callx(ASMState *as, IRIns *ir) 601static void asm_callx(ASMState *as, IRIns *ir)
602{ 602{
603 IRRef args[CCI_NARGS_MAX]; 603 IRRef args[CCI_NARGS_MAX*2];
604 CCallInfo ci; 604 CCallInfo ci;
605 IRRef func; 605 IRRef func;
606 IRIns *irf; 606 IRIns *irf;
@@ -2593,7 +2593,7 @@ static void asm_tail_prep(ASMState *as)
2593/* Ensure there are enough stack slots for call arguments. */ 2593/* Ensure there are enough stack slots for call arguments. */
2594static Reg asm_setup_call_slots(ASMState *as, IRIns *ir, const CCallInfo *ci) 2594static Reg asm_setup_call_slots(ASMState *as, IRIns *ir, const CCallInfo *ci)
2595{ 2595{
2596 IRRef args[CCI_NARGS_MAX]; 2596 IRRef args[CCI_NARGS_MAX*2];
2597 int nslots; 2597 int nslots;
2598 asm_collectargs(as, ir, ci, args); 2598 asm_collectargs(as, ir, ci, args);
2599 nslots = asm_count_call_slots(as, ci, args); 2599 nslots = asm_count_call_slots(as, ci, args);