On Mon, Jan 18, 2010 at 09:06:01PM +0100, Luca Barbieri wrote: > As for REing the tables, it may not be possible. > This is the code that apparently sets them up right now: > /* vtxprog output routing */ > so_method(so, screen->curie, 0x1fc4, 1); > so_data (so, 0x06144321); > so_method(so, screen->curie, 0x1fc8, 2); > so_data (so, 0xedcba987); > so_data (so, 0x00000021); > so_method(so, screen->curie, 0x1fd0, 1); > so_data (so, 0x00171615); > so_method(so, screen->curie, 0x1fd4, 1); > so_data (so, 0x001b1a19); > > This makes me think that only 4 bits might be used for the values > (look at the arithmetic progressions of 4-bit values), so that there > is a limit of 16 vertex output/fragment inputs.
Looking at the so_data values, 1fcx is 4 bits, 1fdx is 8 bits. It's also a little strange to have 24 slots for 16 possible values. > If GLSL starts at index 10, we are still in trouble because less than > 8 varyings will be available. Shader model 4 requires at least 32 interpolated values. Subsequent versions will want more and more. Any "start index" is going to blow up someday unless it's a very large value (which 10 isn't). OG. _______________________________________________ Nouveau mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/nouveau
