r300/compiler: Use variable lists in the rename_regs pass
[mesa.git] / src / gallium / drivers / r300 / compiler / radeon_emulate_loops.h
1
2
3 #ifndef RADEON_EMULATE_LOOPS_H
4 #define RADEON_EMULATE_LOOPS_H
5
6 #define MAX_ITERATIONS 8
7
8 struct radeon_compiler;
9
10 struct loop_info {
11 struct rc_instruction * BeginLoop;
12 struct rc_instruction * Cond;
13 struct rc_instruction * If;
14 struct rc_instruction * Brk;
15 struct rc_instruction * EndIf;
16 struct rc_instruction * EndLoop;
17 };
18
19 struct emulate_loop_state {
20 struct radeon_compiler * C;
21 struct loop_info * Loops;
22 unsigned int LoopCount;
23 unsigned int LoopReserved;
24 };
25
26 void rc_transform_loops(struct radeon_compiler *c, void *user);
27
28 void rc_unroll_loops(struct radeon_compiler * c, void *user);
29
30 void rc_emulate_loops(struct radeon_compiler * c, void *user);
31
32 #endif /* RADEON_EMULATE_LOOPS_H */