GLSL : ATI/AMD specific features
When you compile your GLSL shader, if you exceed some hw limit, ATI/AMD let's you know by telling you the shader has exceeded "so and so" limit and therefore it will run in software mode. If you search for the word "software" in the info log of your shader, you'll know!
When you compile your GLSL shader, you might get "Vertex attribute output count exceeds hardware limits".
So what does that mean?
It simply means the number of outputs of your shader is too high.
The vertex shader!
Check the number of varying you have. Call glGetIntegerv(GL_MAX_VARYING_FLOATS, &myvalue). This might be a value like 32. This means 32/4 = 8 so you can have 8 varying vec4.