From: Samuele Pedroni <pedronis@bl...>  20021017 17:54:19

[me] > > JsrExp: > > f_lasti[cur_try_finally_level] = allocate lasti number for this level lasti > > <newLasti> > > f_lasti[cur_try_finally_level+1] = 0 > > jsr FinallyBlock > > goto Skip > > Reenter<newLasti>: > > # assert f_lasti[cur_try_finally_level] == newLasti > > put dummy values inside active locals at JsrExp point above (obviously this is a conservative choice, the exact choice would be the active locals in the context surrounding the FinallyBlock we are about to call, which is a subset. > > skipping the locals containing RetAddrs for rets) > > jsr FinallyBlock > The length of f_lasti should be computed considering the jsrgraph. obviously the total number of finally block in a function is a upper bound on this, and it could be small enough to be used directly in practice. 