[interp] Simplify the main interpreter loop code to speed up compilation. (#15889)
commitf8fd60b5c088753a4a0ccb79483ebae73489e7a2
authorZoltan Varga <vargaz@gmail.com>
Tue, 30 Jul 2019 20:02:27 +0000 (30 16:02 -0400)
committerGitHub <noreply@github.com>
Tue, 30 Jul 2019 20:02:27 +0000 (30 16:02 -0400)
tree2891a8d1e36ac3b4cc6d60e3b5ad65192ce8fbdb
parenteb686754612e2c1dbeedae8fab82f0c143e60334
[interp] Simplify the main interpreter loop code to speed up compilation. (#15889)

* [interp] Simplify the control flow in the main loop to speed up compilation of interp.c.

Get rid of the handle_finally and main_loop labels.

* [interp] Move some rarely used locals to InterpFrame to speed up compilation and to increase the chance that the other locals end up in registers.

* Add macros for throwing exceptions to shorten the code a bit.

* Fix a previous change.
mono/mini/interp/interp-internals.h
mono/mini/interp/interp.c