It's true (or roughly true) that there isn't a reason to do layoffs unless the company deems it a good financial decision. But it's not true that a company will do layoffs whenever it's a good financial decision. You may know that there are low performers but choose not to let them go because you're worried about morale more generally to that other high performers will take it as a sign of trouble and jump ship. But in a bad economic environment that is less of an issue because high performers are probably more risk averse and fewer competitors are hiring anyway.