--- old/src/hotspot/share/opto/macro.cpp 2018-02-22 16:36:24.944513113 +0100 +++ new/src/hotspot/share/opto/macro.cpp 2018-02-22 16:36:24.748514383 +0100 @@ -767,6 +767,13 @@ DEBUG_ONLY(disq_node = use;) } can_eliminate = false; + } else { + assert(use->Opcode() == Op_CastP2X, "should be"); + if (use->has_out_with(Op_OrL)) { + // Fixme + // This is not a card mark! + can_eliminate = false; + } } } }