[Mesa-dev] [PATCH 3/3] radeonsi: fix the max vertex shader input limit
Christian König
deathsimple at vodafone.de
Thu May 2 01:26:52 PDT 2013
Am 02.05.2013 09:06, schrieb Michel Dänzer:
> On Don, 2013-05-02 at 05:45 +0200, Marek Olšák wrote:
>> ---
>> src/gallium/drivers/radeonsi/radeonsi_pipe.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/src/gallium/drivers/radeonsi/radeonsi_pipe.c b/src/gallium/drivers/radeonsi/radeonsi_pipe.c
>> index c923c67..3b9be54 100644
>> --- a/src/gallium/drivers/radeonsi/radeonsi_pipe.c
>> +++ b/src/gallium/drivers/radeonsi/radeonsi_pipe.c
>> @@ -481,7 +481,7 @@ static int r600_get_shader_param(struct pipe_screen* pscreen, unsigned shader, e
>> case PIPE_SHADER_CAP_MAX_CONTROL_FLOW_DEPTH:
>> return 32;
>> case PIPE_SHADER_CAP_MAX_INPUTS:
>> - return 32;
>> + return shader == PIPE_SHADER_VERTEX ? 16 : 32;
> For r600g, I assume the limit of 16 is due to the number of hardware
> registers available for vertex shader inputs, but as of SI the state is
> no longer stored in registers but in resource descriptors in a BO. In
> theory, I think we could even support many more inputs than 32, but
> let's just leave it at that for now.
Yes indeed, we had a limit because the rc offset needed to fit into
10bits, but I fixed that ~2 month ago and now we practically have no
limit any more.
Christian.
More information about the mesa-dev
mailing list