On May 14, 2014, at 5:29 PM, Igor Veresov <igor.veresov at oracle.com> wrote:
> Don’t quite know an easy way to that statically, but we can check at runtime:
Sometimes we use a spot-check, as in vmSymbols::initialize or the end of GraphKit::compute_stack_effects.
I suggest a line or two like:
assert(0 == strcmp("constraint", trap_reason_name(Reason_constraint));
const char* last_reason_name = "tenured"; // update this if enum DeoptReason changes
assert(0 == strcmp(last_reason_name, trap_reason_name(Reason_LIMIT - 1));
...in some spot that gets executed at least once but not too often.
— John