diff options
| author | Mike Pall <mike> | 2010-09-11 01:53:59 +0200 |
|---|---|---|
| committer | Mike Pall <mike> | 2010-09-11 01:53:59 +0200 |
| commit | 90f22760afc2d84de4854e61893feb15668e5ac5 (patch) | |
| tree | b94e49f86906a70b54d43a822ea457cc3485d0d7 | |
| parent | c330af2452a52c5c33cbe88517b03cffccaa3bd5 (diff) | |
| download | luajit-90f22760afc2d84de4854e61893feb15668e5ac5.tar.gz luajit-90f22760afc2d84de4854e61893feb15668e5ac5.tar.bz2 luajit-90f22760afc2d84de4854e61893feb15668e5ac5.zip | |
PPC: Add argument coercion for BC_FORI.
| -rw-r--r-- | src/buildvm_ppc.dasc | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/src/buildvm_ppc.dasc b/src/buildvm_ppc.dasc index 99d98bc1..77e9b1ab 100644 --- a/src/buildvm_ppc.dasc +++ b/src/buildvm_ppc.dasc | |||
| @@ -653,7 +653,24 @@ static void build_subroutines(BuildCtx *ctx) | |||
| 653 | |//-- Argument coercion for 'for' statement ------------------------------ | 653 | |//-- Argument coercion for 'for' statement ------------------------------ |
| 654 | | | 654 | | |
| 655 | |->vmeta_for: | 655 | |->vmeta_for: |
| 656 | | NYI | 656 | | mr CARG1, L |
| 657 | | stw BASE, L->base | ||
| 658 | | mr CARG2, RA | ||
| 659 | | stw PC, SAVE_PC | ||
| 660 | | mr SAVE0, INS | ||
| 661 | | bl extern lj_meta_for // (lua_State *L, TValue *base) | ||
| 662 | #if LJ_HASJIT | ||
| 663 | | decode_OP1 TMP0, SAVE0 | ||
| 664 | #endif | ||
| 665 | | decode_RA8 RA, SAVE0 | ||
| 666 | #if LJ_HASJIT | ||
| 667 | | cmpwi TMP0, BC_JFORI | ||
| 668 | #endif | ||
| 669 | | decode_RD8 RD, SAVE0 | ||
| 670 | #if LJ_HASJIT | ||
| 671 | | beq =>BC_JFORI | ||
| 672 | #endif | ||
| 673 | | b =>BC_FORI | ||
| 657 | | | 674 | | |
| 658 | |//----------------------------------------------------------------------- | 675 | |//----------------------------------------------------------------------- |
| 659 | |//-- Fast functions ----------------------------------------------------- | 676 | |//-- Fast functions ----------------------------------------------------- |
