* by inlining statlist() and test_then_block() we cut back the * native stack usage per nested C call from 272 bytes to 152 * which allows us to stay within budget for 8K kernel stacks */
| 605 | * which allows us to stay within budget for 8K kernel stacks |
| 606 | */ |
| 607 | __attribute__((always_inline)) inline |
| 608 | static void statlist (LexState *ls) { |
| 609 | /* statlist -> { stat [`;'] } */ |
| 610 | while (!block_follow(ls, 1)) { |
| 611 | if (ls->t.token == TK_RETURN) { |
| 612 | statement(ls); |
| 613 | return; /* 'return' must be last statement */ |
| 614 | } |
| 615 | statement(ls); |
| 616 | } |
| 617 | } |
| 618 | |
| 619 | |
| 620 | static void fieldsel (LexState *ls, expdesc *v) { |