If you do fly SQ (and it looks like that will probably be your best option given how early you need to be back at BCN), do keep in mind that their lowest fares are non-mileage-earning on all FFPs including their own KrisFlyer. The website does clearly state this on booking, but it's easy to overlook the message.