Roger Federer moved within two wins of a 100th career singles title with victory over Marton Fucsovics at the Dubai Duty Free Tennis Championships.
The 37-year-old, who is bidding to become only the second man to reach a century of tour-level tournament wins after Jimmy Connors, saw off Fucsovics 7-6 6-4 in the quarter-finals at the Aviation Club.
Federer will now face sixth seed Borna Coric for a place in a 10th final of an event he has won seven times.
Federer, winner of 20 grand slams, found the going tough against Fucsovics and faced two set points against him in the first set tie-break.
The Hungarian showed nerves and netted twice, allowing Federer to recover and take the lead but there was no procession to victory.
Federer broke early in the second set but Fucsovics broke back to level at 4-4.
The next game was briefly interrupted by rain but Federer eventually battled through it to claim what proved to be the crucial break from his fifth break point.
Croatia's Coric earned his place in the last four by edging out Nikoloz Basilashvili 4-6 6-2 7-6.
Fifth seed Stefanos Tsitsipas reached the last four with a hard-fought 7-6 6-7 6-1 win over Hubert Hurkacz.
Tsitipas, who won a second ATP Tour title in Provence last week, will face in-form Gael Monfils, recent victor in Rotterdam.
Monfils ensured he will move back into the world's top 20 next week as he beat Lithuanian qualifier Ricardas Berankis 6-1 6-7 6-2.
At the Mexico Open in Acapulco, Nick Kygrios backed up his victory over Rafael Nadal with a 7-5 6-7 (3) 6-4 triumph over three-time grand slam winner Stan Wawrinka.
Roger Federer on his #DDFTennis SF opponent Borna Coric:— Reem Abulleil (@ReemAbulleil) February 28, 2019
"We've had a couple tough matches as of late. I'm happy for Borna to have really understood his game. That's really important at the top level if u want to win the big tournaments, which he has now"pic.twitter.com/9Aslrrs8wF
The Australian produced a superb comeback against Nadal, where he came from a set down and saved three match points albeit some controversy which saw the Spaniard described the 23-year-old as someone who "lacks respect for the public, the rival and towards himself."
However, Kyrgios brushed off the criticism and a cut to his hand in the sixth point of the match to claim the first set with the only break in the 12th game.
The second set needed a tie-break to separate the two players, with Wawrinka levelling up with four successive points before a break in the fifth game of the deciding proving enough to secure his place in the last four.
He will play American John Isner, who edged the marathon match with Australian John Millman to win 7-6 (2) 6-7 (4) 7-6 (4) in three hours and seven minutes.
In the battle of the big servers, Isner and Millman were only broken once apiece in the first set before the 33-year-old's experience paid dividends.
World number three Alexander Zverev had a straightforward route to the semi-finals following his 6-4 6-4 success over Alex De Minaur.
A single break in each set proved enough for the German, who also won 91 per cent of his first serve points in the match.
Briton's Cameron Norrie claimed his second ATP semi-final appearance of the season after easing past American Mackenzie McDonald in 6-3 6-2 win, courtesy of two breaks in each set.
In Brazil, the two top seeds both dropped out of the tournament in the second round.
Casper Ruud upset top seed Joao Sousa, progressing to the quarter-final with a 6-3 6-4 win, while Laslo Djere defeated second seed Malek Jaziri 6-3 3-6 7-6 (2).
World number 108 Ruud goes on to face Hugo Dellien, who got the better of another seeded player, beating Juan Ignacio Londero, the seventh seed, 6-4 7-6 (3).
Meanwhile, Djere's next opponent is Canada's Felix Auger-Aliassime, who defeated Spain's Albert Ramos-Vinolas 7-6 (2) 7-6 (5).