There are several places where an OopHandle is checked for having the underlying pointer by comparing the result of ptr_raw() with nullptr. But OopHandle provides a named API for exactly that kind of test - is_empty() (which some other places already use). All such ptr_raw comparisons should instead be using is_empty.