ATLANTA (AP) -- Freddie Freeman, Dan Uggla and Brian McCann homered, powering Atlanta Braves past the Arizona Diamondbacks 6-2 Sunday for a three-game sweep in the matchup of division leaders.
Paul Maholm (9-6) gave up two runs and eight hits in 6 2-3 innings for the Braves, who improved to a big league-best 28-11 at home.
Trevor Cahill (3-10) allowed six runs and seven hits in 4 1-3 innings as the NL West-leading Diamondbacks lost for the fifth time in six games. Cahill is 0-6 with a 7.91 ERA in eight starts since a May 17 win at Miami.
Arizona has gone 22 straight games without a win from its rotation, the longest streak in the majors since San Diego went 25 in row from April 17-May 14, 2009, according to STATS.
The first of Paul Goldschmidt's two run-scoring, double-play grounders put Arizona ahead in the first, but McCann tied the score in the second with an opposite-field homer that bounced off the top of the wall in left-center.
Freeman's three-run homer made it 4-1 in the third, and Uggla added a two-run drive in the fifth, his 14th home run of the season, for a 6-1 lead.
Maholm labored in the seventh, giving up consecutive singles to Cody Ross and Gerardo Parra and a one-out walk to Cliff Pennington. Maholm struck out pinch-hitter Jason Kubel, and Anthony Varvaro relieved and retired A.J. Pollock on a flyout.
NOTES: Cahill had not allowed three homers since Oakland's 10-2 loss at Toronto on April 30, 2010. ... Goldschmidt, who leads the NL with 67 RBIs, went 1 for 9 and stranded four runners in the series. ... The Braves improved to 9-1-4 in home series. ... Diamondbacks RHP Tony Hill pitched a scoreless seventh and has not allowed a run in 11 straight road appearances. ... Atlanta is 34-6 when outhitting opponents. ... RHP David Carpenter pitched the last two innings for the Braves. ... LHP Tony Sipp pitched the eighth for Arizona.