Hi,
So perhaps just adding the NULL check in the barrier for the case where the markWord ”is_marked” is the sane thing to do, knowing that the other costs taken in the same path will dominate.I have this patch, exactly what you suggested. I will let Aleksey run his numbers.
Aleksey is happy with the solution, as we are able to split compiler barrier and runtime barrier. Therefore, I would like to withdraw this CR.
Thanks all of you! -Zhengyu