PITTSBURGH (AP) -- Carlos Martinez pitched eight marvelous innings, Harrison Bader hit an early three-run homer and the St. Louis Cardinals blanked the Pittsburgh Pirates 3-0 for a three-game sweep.

St. Louis has won seven straight against the Pirates and is 20-6 versus Pittsburgh since the start of the 2019 season. The sweep was the second in three series for the Cardinals, who have won eight of 10 overall. Bader's home run off rookie Wil Crowe came with one out in the second inning.

Martinez allowed five hits and two walks. He struck out three and retired his final eight batters. Alex Reyes retired the side in order in the ninth for his seventh save.