8214936: assert(_needs_refill == 0) failed: Forgot to handle a failed IC transition requiring IC stubs

Reviewed-by: kvn, thartmann, pliden
This commit is contained in:
Erik Österlund 2018-12-07 13:15:35 +01:00
parent 3981414bce
commit 0874f1945e
6 changed files with 106 additions and 12 deletions

View file

@ -328,6 +328,21 @@ class Thread: public ThreadShadow {
HandleMark* last_handle_mark() const { return _last_handle_mark; }
private:
#ifdef ASSERT
void* _missed_ic_stub_refill_mark;
public:
void* missed_ic_stub_refill_mark() {
return _missed_ic_stub_refill_mark;
}
void set_missed_ic_stub_refill_mark(void* mark) {
_missed_ic_stub_refill_mark = mark;
}
#endif
private:
// debug support for checking if code does allow safepoints or not
// GC points in the VM can happen because of allocation, invoking a VM operation, or blocking on
// mutex, or blocking on an object synchronizer (Java locking).