| 427 | |
| 428 | |
| 429 | int luaK_exp2anyreg (FuncState *fs, expdesc *e) { |
| 430 | luaK_dischargevars(fs, e); |
| 431 | if (e->k == VNONRELOC) { |
| 432 | if (!hasjumps(e)) return e->u.s.info; /* exp is already in a register */ |
| 433 | if (e->u.s.info >= fs->nactvar) { /* reg. is not a local? */ |
| 434 | exp2reg(fs, e, e->u.s.info); /* put value on it */ |
| 435 | return e->u.s.info; |
| 436 | } |
| 437 | } |
| 438 | luaK_exp2nextreg(fs, e); /* default */ |
| 439 | return e->u.s.info; |
| 440 | } |
| 441 | |
| 442 | |
| 443 | void luaK_exp2val (FuncState *fs, expdesc *e) { |
no test coverage detected