summaryrefslogtreecommitdiff
path: root/src/lj_crecord.c
diff options
context:
space:
mode:
authorMike Pall <mike>2011-10-24 16:43:51 +0200
committerMike Pall <mike>2011-10-24 16:43:51 +0200
commit0cf8c20be8ee009e01752874186a1dea352009fb (patch)
tree28280798d8765fa4693d41a7310ccb87e6f5d02e /src/lj_crecord.c
parentfa9ade356b0543f11295023de3b4441a1e7d39a3 (diff)
downloadluajit-0cf8c20be8ee009e01752874186a1dea352009fb.tar.gz
luajit-0cf8c20be8ee009e01752874186a1dea352009fb.tar.bz2
luajit-0cf8c20be8ee009e01752874186a1dea352009fb.zip
PPC: Integrate and enable JIT compiler.
Diffstat (limited to 'src/lj_crecord.c')
-rw-r--r--src/lj_crecord.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/lj_crecord.c b/src/lj_crecord.c
index 001cf600..4e6a644a 100644
--- a/src/lj_crecord.c
+++ b/src/lj_crecord.c
@@ -526,9 +526,13 @@ again:
526 idx = emitir(IRT(IR_BAND, IRT_INTP), idx, lj_ir_kintp(J, 1)); 526 idx = emitir(IRT(IR_BAND, IRT_INTP), idx, lj_ir_kintp(J, 1));
527 sz = lj_ctype_size(cts, (sid = ctype_cid(ct->info))); 527 sz = lj_ctype_size(cts, (sid = ctype_cid(ct->info)));
528 idx = crec_reassoc_ofs(J, idx, &ofs, sz); 528 idx = crec_reassoc_ofs(J, idx, &ofs, sz);
529#if LJ_TARGET_ARM || LJ_TARGET_PPC
530 /* Hoist base add to allow fusion of index/shift into operands. */
531 if (LJ_LIKELY(J->flags & JIT_F_OPT_LOOP) && ofs
529#if LJ_TARGET_ARM 532#if LJ_TARGET_ARM
530 /* Hoist base add to allow fusion of shifts into operands. */ 533 && (sz == 1 || sz == 4)
531 if (LJ_LIKELY(J->flags & JIT_F_OPT_LOOP) && ofs && (sz == 1 || sz == 4)) { 534#endif
535 ) {
532 ptr = emitir(IRT(IR_ADD, IRT_PTR), ptr, lj_ir_kintp(J, ofs)); 536 ptr = emitir(IRT(IR_ADD, IRT_PTR), ptr, lj_ir_kintp(J, ofs));
533 ofs = 0; 537 ofs = 0;
534 } 538 }