nv50: fix build-predicate function
[mesa.git] / src / mesa / slang / slang_label.h
1 #ifndef SLANG_LABEL_H
2 #define SLANG_LABEL_H 1
3
4 #include "main/glheader.h"
5
6 struct gl_program;
7
8 struct slang_label_
9 {
10 char *Name;
11 GLint Location;
12 /**
13 * List of instruction references (numbered starting at zero) which need
14 * their BranchTarget field filled in with the location eventually
15 * assigned to the label.
16 */
17 GLuint NumReferences;
18 GLuint *References; /** Array [NumReferences] */
19 };
20
21 typedef struct slang_label_ slang_label;
22
23
24 extern slang_label *
25 _slang_label_new(const char *name);
26
27 extern slang_label *
28 _slang_label_new_unique(const char *name);
29
30 extern void
31 _slang_label_delete(slang_label *l);
32
33 extern void
34 _slang_label_add_reference(slang_label *l, GLuint inst);
35
36 extern GLint
37 _slang_label_get_location(const slang_label *l);
38
39 extern void
40 _slang_label_set_location(slang_label *l, GLint location,
41 struct gl_program *prog);
42
43
44 #endif /* SLANG_LABEL_H */