They are lagging xom because their reputation is shot to death for a while. Unless you can hold out for 10 years then xom would have been better when it was at 55-58 dollars. XOM was way undervalued at that time anyway and was there for a while for people to scoop up. But now xom is no longer a bargain. It is only ok to hold for a while.
BP will get their day 2-3 years from now if they can survive and clean up their reputation and litigation. Until then they will lag others for a while. I dont think the politicians want to award bp any contracts for a long while unless they get insanely bribed like they always do.