GP compiler uniform alignment discrepancy with command stream.
There's an issue with GP uniforms in mesa master.
See attached dump raw.txt
Shader has 3 float uniforms, and they're addressed as t[0].x - arg0, t[0].y - tolerance, t[0].z - expected in shader, e.g. excerpt from shader disassembly:
017: , add ^102 ^96 -t[0].z, ; ^102 = sin(arg0) - expected
018: , max ^108 ^102 -^102,; ^108 = fabs(^102)
019: , ge ^114 t[0].y ^108; ^114 = tolerance > ^108
But in command stream they're aligned as vec4:
update gp uniform at va 2d6080
0000: -3.141593 0.000000 0.000000 0.000000
0010: 0.000100 0.000000 0.000000 0.000000
0020: 0.000000 0.000000 0.000000 0.000000
0030: 125.000000 -125.000000 0.500000 0.000000
0040: 125.000000 125.000000 0.500000 0.000000
0050: 0.000000 1.000000 0.159155 -1.000000
0060: 0.500000 -0.500000 8.000000 -16.000000
0070: 0.225000
Constants are aligned correctly.
Edited by Vasily Khoruzhick