< prev index next > src/hotspot/share/gc/shenandoah/shenandoahThreadLocalData.hpp
Print this page
if (gc_state == FORWARDED_MARKING_WEAK) return POS_FORWARDED_MARKING_WEAK;
ShouldNotReachHere();
return 0;
}
+ static char fast_array_index_to_gc_state(int index) {
+ if (index == POS_FORWARDED) return FORWARDED;
+ if (index == POS_MARKING) return MARKING;
+ if (index == POS_WEAK) return WEAK;
+ if (index == POS_FORWARDED_MARKING) return FORWARDED_MARKING;
+ if (index == POS_FORWARDED_WEAK) return FORWARDED_WEAK;
+ if (index == POS_MARKING_WEAK) return MARKING_WEAK;
+ if (index == POS_FORWARDED_MARKING_WEAK) return FORWARDED_MARKING_WEAK;
+ ShouldNotReachHere();
+ return 0;
+ }
+
static void set_gc_state(Thread* thread, char gc_state) {
ShenandoahThreadLocalData* d = data(thread);
d->_gc_state = gc_state;
d->_gc_state_fast_array[POS_FORWARDED] = (gc_state & FORWARDED) != 0;
d->_gc_state_fast_array[POS_MARKING] = (gc_state & MARKING) != 0;
< prev index next >