ARM, ARM64, PPC: Fix TSETR fallback.

Thanks to Javier Guerra Giraldez.
This commit is contained in:
Mike Pall 2020-05-18 22:06:50 +02:00
parent 322db02081
commit ae20998ff5
3 changed files with 3 additions and 0 deletions

View File

@ -699,6 +699,7 @@ static void build_subroutines(BuildCtx *ctx)
|->vmeta_tsetr: |->vmeta_tsetr:
| str BASE, L->base | str BASE, L->base
| .IOS mov RC, BASE | .IOS mov RC, BASE
| mov CARG1, L
| str PC, SAVE_PC | str PC, SAVE_PC
| bl extern lj_tab_setinth // (lua_State *L, GCtab *t, int32_t key) | bl extern lj_tab_setinth // (lua_State *L, GCtab *t, int32_t key)
| // Returns TValue *. | // Returns TValue *.

View File

@ -711,6 +711,7 @@ static void build_subroutines(BuildCtx *ctx)
|->vmeta_tsetr: |->vmeta_tsetr:
| sxtw CARG3, TMP1w | sxtw CARG3, TMP1w
| str BASE, L->base | str BASE, L->base
| mov CARG1, L
| str PC, SAVE_PC | str PC, SAVE_PC
| bl extern lj_tab_setinth // (lua_State *L, GCtab *t, int32_t key) | bl extern lj_tab_setinth // (lua_State *L, GCtab *t, int32_t key)
| // Returns TValue *. | // Returns TValue *.

View File

@ -1083,6 +1083,7 @@ static void build_subroutines(BuildCtx *ctx)
| |
|->vmeta_tsetr: |->vmeta_tsetr:
| stp BASE, L->base | stp BASE, L->base
| mr CARG1, L
| stw PC, SAVE_PC | stw PC, SAVE_PC
| bl extern lj_tab_setinth // (lua_State *L, GCtab *t, int32_t key) | bl extern lj_tab_setinth // (lua_State *L, GCtab *t, int32_t key)
| // Returns TValue *. | // Returns TValue *.