1 #ifndef __NV50_PROGRAM_H__
2 #define __NV50_PROGRAM_H__
4 #include "pipe/p_state.h"
5 #include "tgsi/tgsi_scan.h"
7 struct nv50_program_exec
{
8 struct nv50_program_exec
*next
;
28 struct pipe_shader_state pipe
;
29 struct tgsi_shader_info info
;
33 struct nv50_program_exec
*exec_head
;
34 struct nv50_program_exec
*exec_tail
;
36 struct nouveau_resource
*data
[1];
37 unsigned data_start
[1];
39 struct nouveau_bo
*bo
;
52 /* for VPs, io_nr doesn't count 'private' results (PSIZ etc.) */
54 struct nv50_sreg4 io
[PIPE_MAX_SHADER_OUTPUTS
];
56 /* FP colour inputs, VP/GP back colour outputs */
57 struct nv50_sreg4 two_side
[2];
60 uint8_t clpd
, clpd_nr
;