| 630 | } |
| 631 | |
| 632 | void VM::EvalProgram() { |
| 633 | #if VM_USE_LONGJMP |
| 634 | // See longjmp above for why this is needed. |
| 635 | if (setjmp(jump_buffer)) { |
| 636 | // Resume normal error now that we've jumped past the C/JIT-ted code. |
| 637 | THROW_OR_ABORT(errmsg); |
| 638 | } |
| 639 | #endif |
| 640 | #if VM_JIT_MODE |
| 641 | vma.jit_entry(*this, nullptr); |
| 642 | #else |
| 643 | compiled_entry_point(*this, nullptr); |
| 644 | #endif |
| 645 | } |
| 646 | |
| 647 | void VM::CallFunctionValue(Value f) { |
| 648 | auto fv = f.ip(); |
no test coverage detected