Bjorn said:
It could be just to speed up the rendering.
So what? Isn't this enough? You could pack multiple pixel shaders into one, and thus reduce pixel shader changes. But you need branching for this, which of course is the main advantage of PS 3.0.