TORONTO — Boston right-hander Clay Buchholz says his latest bullpen session was “probably the best day so far” in his recovery from neck and shoulder ailments.

Buchholz has been sidelined since June 9. He threw nearly 50 pitches Wednesday.

He got up and down three times to simulate inning breaks, and said his final 10 to 15 pitches were thrown at approximately 85 percent effort.

Buchholz will throw a similar session on Saturday, then pitch with batters standing in the box in his following stint.

“I’d rather have some guys stand in,” he said. “You know, it’s been a while. Instead of just going out and throwing in a minor league game, it’d be better for me to just see the hitter and be able to throw my pitches doing that.”

Buchholz was 9-0 with a 1.71 ERA before he hurt himself fielding two grounders on June 8 against the Angels.

Boston was in Toronto playing the second game of a three-game set. Boston won the series opener on Tuesday night, 4-2.

Taking no chances, Tigers manager Jim Leyland brought in closer Joaquin Benoit with one out in the eighth. Benoit struck out Adam Dunn and Avisail Garcia, the worked out of another jam in the ninth inning for his 15th save in 15 chances.

John Danks (2-10) pitched into the eighth.

Porcello surrendered three runs and four hits in the first, needing 40 pitches to get the first three outs of. Garcia and Conor Gillaspie had RBI singles and the other run came on a sacrifice fly by Jeff Keppinger.

That’s where the score stayed until the top of the third when Cabrera launched a majestic drive that sailed high above the left-field fence to tie the score at 3.

The Tigers then broke the game open with three more runs in the sixth. Omar Infante drove in the go-ahead run with a single and two more scored on an error at third base by Gillaspie.

Arroyo (11-9) allowed two hits, struck out seven and walked none in his second straight win. The crafty right-hander retired his first nine batters and faced the minimum through six innings.

Frazier also had one of Cincinnati’s four run-scoring doubles as the Reds (68-52) earned their fourth consecutive win to move a season-high 16 games over .500. They improved to 13-3 against the Cubs this year, including a 9-1 mark at Wrigley Field.

The Cubs wasted a solid start by Chris Rusin (2-2) in their fourth straight loss. The left-hander allowed two runs and three hits while throwing just 76 pitches over six innings.

Marlins 5, Royals 2

KANSAS CITY, Mo. — The Miami Marlins took advantage of an error by the Kansas City Royals to score the go-ahead runs in the seventh inning Wednesday, then turned to their bullpen to wrap up a 5-2 victory.

The Royals were leading 2-1 when Koyie Hill doubled off reliever Tim Collins (2-6) to start the seventh. Christian Yelich then hit a grounder toward third that utility man Elliot Johnson let through his legs, putting runners on second and third with nobody out.

Donovan Solano and Logan Morrison followed with RBI groundouts to give the Marlins the lead.

That was enough for the Marlins bullpen. Dan Jennings (2-3) got through the sixth, A.J. Ramos worked the seventh and eighth, and Steve Cishek handled the ninth for his 26th save.

Cishek struck out Alex Gordon with runners on first and second to end the game.