WASHINGTON —The U.S. Senate on Thursday approved a revamp of the 26-year-old North American Free Trade Agreement that includes tougher rules on labor and automotive content but leaves $1.2 trillion in annual U.S.-Mexico-Canada trade flows largely unchanged.

The legislation to implement the U.S.-Mexico-Canada Agreement passed on an 89-10 bipartisan vote, sending the measure to President Donald Trump for him to sign into law.

The Democratic-controlled U.S. House of Representatives passed the legislation on Dec. 19 after hammering out changes to ensure better enforcement of labor rights and tighter environmental rules during months of often contentious negotiations with the Trump administration.

The Senate vote came a day after Trump signed a long-awaited Phase 1 trade deal with China, and shortly before the Senate formally began the impeachment trial of Trump on charges that he abused his power.

The U.S. S&P 500 stock index hit the 3,300 mark on Thursday for the first time, buoyed by the two trade deals, solid retail sales and upbeat Morgan Stanley earnings.

U.S. Treasury Secretary Steven Mnuchin said Trump's efforts to rebalance U.S. ties with its major trading partners were bearing fruit, and boosting U.S. economic growth.

"This historic agreement not only modernizes and rebalances our trade relationship with Canada and Mexico, but it promotes economic growth, creates jobs, and provides crucial certainty for farmers, workers and manufacturers," he said in a statement.

On Wednesday, Mnuchin told Fox News that interim trade deal with China and passage of USMCA would boost growth of the U.S. gross domestic product by 50 to 75 basis points.

Mexican President Andres Manuel Lopez Obrador on Thursday called the deal's approval good news for the Mexican economy, and predicted it would jump start new investments.

Canada still needs to approve the deal before it can take effect and replace NAFTA. It was signed by the leaders of the United States, Mexico and Canada in September 2018.

Trump made renegotiating NAFTA a centrepiece of his 2016 election campaign, calling it "the worst trade deal ever made" and blaming it for the loss of thousands of American factory jobs to low-wage Mexico.

He had threatened to cancel NAFTA outright unless Congress acted to approve the replacement deal, sparking uncertainty among business owners and putting a damper on new investment.

The AFL-CIO union federation, which represents some 12.5 million workers across the United States, estimates that some 851,700 U.S. jobs were lost to Mexico because of NAFTA.

The U.S. goods trade deficit with Mexico was $80.7 billion in 2018, compared with a $1.7 billion surplus in 1993, thanks in part to U.S. companies moving manufacturing operations south of the border.

But NAFTA also quadrupled trade among the United States, Canada and Mexico, sending it to $1.2 trillion a year by 2017, and knitting together supply chains across the continent.

Industry groups hailed the trade agreement and said it would provide sorely needed certainty to revive investment flows.

"This trade agreement will serve as a model for future trade agreements, and help grow the U.S. economy as a whole, especially the auto sector and its manufacturing supply chain," said Matt Blunt, president of the American Automotive Policy Council.

Canada's parliament does not return to session until Jan. 27, so the scheduling of a vote there remains unclear. But USMCA is expected to see little resistance in Canada, as Conservatives have said they would back the deal negotiated earlier by Prime Minister Justin Trudeau's Liberal-dominated government.

"Today the Senate will send this landmark agreement to the president's desk. A big bipartisan win," Senate Republican Leader Mitch McConnell said on the Senate floor.

Republican Senator Joni Ernst told Fox Business Network that she expected Trump to hold a signing ceremony next week.

The bill was opposed by eight Democrats -- including Senate Minority Leader Chuck Schumer -- Republican Senator Pat Toomey of Pennsylvania and presidential candidate Senator Bernie Sanders, an Independent. Senator Jim Inhofe, a Republican from Oklahoma, did not vote.