Hey so basically the m_volitile generally speaking is only and only an indication of the volatility of such register and does not change the comparison/operation behavior at least in UVM1.1d.
If you have such registers in your design (status register, HW written only register or shadow register) then the best approach I could suggest is to call the predict on your own by modeling how those registers should be predicted.
Alternatively, you can add a specific call back to those registers (if they behave in the same way) so that the post predict will be called hence you will have to compare the mirrored value between RAL and RTL.
This is the best approach I come up wit in my testbench since I have such tricky registers in RTL.
Regards