Brandon Crawford went 5-for-6 with two homers and tied a San Francisco team record with eight RBI, and the Giants scored a season high in runs in a 19-2 rout of the Colorado Rockies on Monday in the first game of a split doubleheader in Denver. Crawford hit another homer in the nightcap, which the Giants won 2-1.

"I never expect a five-hit game to come along, but yeah, I have been feeling a lot better at the plate," Crawford said. "There were a couple of at-bats in Milwaukee where I was having good at-bats, kind of battling and getting deep into counts. Even drawing walks kind of helps your confidence."

Cincinnati 6, Chicago 3: Jesse Winker scored an unearned go-ahead run to cap a two-run seventh inning, and Eugenio Suarez and Yasiel Puig each hit his 22nd home run for the Reds in Chicago. After the game, the Cubs acquired catcher Martin Maldonado from the Royals for pitcher Mike Montgomery, and put catcher Wilson Contreras on the injured list because of a strained arch.

Los Angeles 16, Philadelphia 2: Cody Bellinger hit his major league-leading 32nd and 33rd homers, and the league-leading Dodgers routed the host Phillies.

Atlanta 4, Milwaukee 2: Freddie Freeman's 25th home run helped the visiting Braves move 21 games over .500.

St. Louis 7, Pittsburgh 0: Miles Mikolas pitched an eight-hitter, the host Cardinals' first complete game this season, and Tyler O'Neill hit two two-run homers.

American League

Cleveland 8, Detroit 6: Oscar Mercado hit a tiebreaking homer and Jose Ramirez added a two-run double in the host Indians' decisive three-run seventh.

Boston 10, Toronto 8: Rookie Michael Chavis hit a grand slam, Xander Bogaerts had three hits and Andrew Benintendi had three RBI for the host Red Sox.

Kansas City 5, Chicago 2: Jakob Junis struck out a 10 and Nicky Lopez drove in two runs as the host Royals spoiled Lucas Giolito's bid for a 12th victory.

Los Angeles 9, Houston 6: Albert Pujols and Kevan Smith knocked in three runs each and Andrelton Simmons two as the host Angels beat the Astros.

Notes

• The Dodgers' Chris Taylor, who suffered a broken left forearm when he was hit by a pitch in the 11th inning Sunday at Boston, was placed on the injured list.

• Boston designated infielder Eduardo Nunez, a former Twins All-Star, for assignment.