The 10-time champion secured a 3-1 victory over the Spaniard, who had beaten him in their last two matches at major tournaments – back-to-back Wimbledon finals.

Djokovic, coached by former British and world number one Andy Murray, will play Alexander Zverev in the last four.

Defending champ Aryna Sabalenka has set up a semi-final clash with Paula Badosa in the women’s draw.