The FTSE 100 has made modest gains, helped by a late surge in Asia and a BP share jump after the oil giant announced big profits.