Pakistan will face Australia in the tri-series final after beating Zimbabwe by seven wickets despite a record-breaking innings from Solomon Mire in Harare.

All-rounder Mire made a swashbuckling 94 from only 63 balls - the highest T20 international score by a Zimbabwe batsman - as the hosts posted 162-4 a day after Australia captain Aaron Finch put them to the sword with a world record 172.

That was not enough for Zimbabwe to stay in contention for a place in Sunday's final as Fakhar Zaman (47), Hussain Talat (44) and Sarfraz Azhmed (38 not out) chipped in to get Pakistan home with five balls to spare.

Victory for Pakistan was their second of the competition against Zimbabwe after they were beaten by Australia on Monday.

The recalled Cephas Zhuwao and Mire put on 49 for the first wicket before the former lost his leg stump to a sharp delivery from Faheem Ashraf.

Mire dominated the strike, launching Shadab Khan over long-on for six and clearing the ropes over midwicket in the same over, then giving Mohammad Nawaz the treatment to reach his half-century.

Zimbabwe were 82-1 in the 12th over when Shadab removed Hamilton Masakadza, playing his first international for two years, but Mire continued to motor, taking his tally of maximums to six before he pulled Talat to Shadab at deep midwicket in the penultimate over to miss out a on a hundred.

The recalled Mohammad Amir finished with excellent figures of 1-25 after getting rid of Tarisai Musakanda (33) in the final over and Pakistan got off to a flyer in their run chase.

Zaman set about Tendai Chisoro before Haris Sohail holed out to Mire off Masakadza to end an opening stand of 58 in the seventh over.

Mire remained in the thick of the action, sending Zaman on his way three short of his half-century, but Talat kept Pakistan ticking along and Sarfraz struck six boundaries as he and Shoaib Malik got their side over the line and into the final with a match to spare.