Mitt Romney. Justin Sullivan/Getty Images

Mitt Romney announced in a Facebook post on Friday that he's voting for Ted Cruz next week in Utah's presidential primary.

"At this stage, the only way we can reach an open convention is for Senator Cruz to be successful in as many of the remaining nominating elections as possible," Romney wrote.

He explicitly billed his support for Cruz as a tactic to stop Donald Trump from grabbing the GOP nomination.

Romney has been crusading against Trump since the start of March, when the 2012 GOP nominee gave a speech denouncing his own party's leading candidate.

He recently campaigned with another candidate, Ohio Gov. John Kasich, in his home state ahead of last Tuesday's primary there. But Romney suggested on Friday that Kasich's continued campaign was getting in the way of halting Trump's momentum.

"I like Governor John Kasich. I have campaigned with him," he wrote. "I would have voted for him in Ohio. But a vote for Governor Kasich in future contests makes it extremely likely that Trumpism would prevail."

Romney's support for Cruz is especially striking because in many ways Romney has come to personify the Republican establishment that once viewed the Texas senator as a thorn in its side. But the rise of Trump has left the billionaire's critics with few options: only Trump, Kasich, and Cruz remain in the GOP primary.

For his part, Trump reacted to Romney's endorsement of Cruz by quickly attacking them both on Twitter:

Romney and Trump have been fiercely critical of each other for weeks. In Romney's early March speech denouncing Trump, he attacked the frontrunner for his "worthless" promises.

"His promises are as worthless as a degree from Trump University," he said. "He's playing the American public for suckers. He gets a free ride to the White House, and all we get is a lousy hat."

Trump fired back almost instantly, mocking Romney for "begging" for his endorsement during the 2012 cycle.

This week, in the Utah nominating caucus, I will vote for Senator Ted Cruz.

Today, there is a contest between Trumpism and Republicanism. Through the calculated statements of its leader, Trumpism has become associated with racism, misogyny, bigotry, xenophobia, vulgarity and, most recently, threats and violence. I am repulsed by each and every one of these.

The only path that remains to nominate a Republican rather than Mr. Trump is to have an open convention. At this stage, the only way we can reach an open convention is for Senator Cruz to be successful in as many of the remaining nominating elections as possible.

I like Governor John Kasich. I have campaigned with him. He has a solid record as governor. I would have voted for him in Ohio. But a vote for Governor Kasich in future contests makes it extremely likely that Trumpism would prevail.

I will vote for Senator Cruz and I encourage others to do so as well, so that we can have an open convention and nominate a Republican.