On 07/07/2017 07:18 AM, Lluís Vilanova wrote:
There was no code being generated after this specific case, but I haven't
checked if DISAS_EXC is set in any other place that is not immediately followed
by a "goto done_generating".
Typically we haven't actually done a goto, but simply exit the loop and emit
nothing within the final cleanup (tb_stop?).
Does this mean DISAS_EXC should be on the generic code and do a "goto
done_generating" whenever it is found? And if so, what are the correct places to
check for this? After ops->insn_start, ops->translate_insn, ops->tb_stop?
Yes, this should be handled generically, since all targets need it.
That said, I would prefer a better name like DISAS_NORETURN, which does not
imply that an actual exception has been raised, but explicitly says that all
following code is dead.
r~