As Companies reported strong earnings, the stock market closed higher.

The stock market had its best day in more than 3 weeks Tuesday as more companies reported how much profit they made during the spring.

The S&P 500 climbed 2.8% after a powerful tide carried 99% of the stocks in the index higher.

The Dow Jones Industrial Average rose 2.4% and the Nasdaq composite roared 3.1% higher.

Smaller company stocks rose even more, sending the Russell 2000 index 3.5% higher.

Netflix jumped 8% in after-hours trading after the company reported better-than expected results and a smaller subscriber loss than analysts expected.

Oilfield services provider Halliburton added 2.1% after its profit and revenue topped forecasts.

IBM, though, fell 5.2% despite reporting stronger revenue and earnings than expected. The company’s profit margins fell short of as expected.