Federer into eighth straight Open semi