mesa: no longer need Writemask field in GLSL IR nodes
[mesa.git] / src / mesa / drivers / dri / r300 / r300_mem.h
1 #ifndef __R300_MEM_H__
2 #define __R300_MEM_H__
3
4 //#define R300_MEM_PDL 0
5 #define R300_MEM_UL 1
6
7 #define R300_MEM_R 1
8 #define R300_MEM_W 2
9 #define R300_MEM_RW (R300_MEM_R | R300_MEM_W)
10
11 #define R300_MEM_SCRATCH 2
12
13 struct r300_memory_manager {
14 struct {
15 void *ptr;
16 uint32_t size;
17 uint32_t age;
18 uint32_t h_pending;
19 int pending;
20 int mapped;
21 } *u_list;
22 int u_head, u_size, u_last;
23
24 };
25
26 extern void r300_mem_init(r300ContextPtr rmesa);
27 extern void r300_mem_destroy(r300ContextPtr rmesa);
28 extern void *r300_mem_ptr(r300ContextPtr rmesa, int id);
29 extern int r300_mem_find(r300ContextPtr rmesa, void *ptr);
30 extern int r300_mem_alloc(r300ContextPtr rmesa, int alignment, int size);
31 extern void r300_mem_use(r300ContextPtr rmesa, int id);
32 extern unsigned long r300_mem_offset(r300ContextPtr rmesa, int id);
33 extern void *r300_mem_map(r300ContextPtr rmesa, int id, int access);
34 extern void r300_mem_unmap(r300ContextPtr rmesa, int id);
35 extern void r300_mem_free(r300ContextPtr rmesa, int id);
36
37 #endif