summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mesa/drivers/dri/common/texmem.c2
-rw-r--r--src/mesa/drivers/dri/common/texmem.h4
-rw-r--r--src/mesa/drivers/dri/gamma/gamma_context.h4
-rw-r--r--src/mesa/drivers/dri/mach64/mach64_context.h4
-rw-r--r--src/mesa/drivers/dri/s3v/s3v_context.h4
-rw-r--r--src/mesa/drivers/dri/trident/trident_context.h2
-rw-r--r--src/mesa/main/execmem.c6
-rw-r--r--src/mesa/main/mm.c62
-rw-r--r--src/mesa/main/mm.h41
9 files changed, 53 insertions, 76 deletions
diff --git a/src/mesa/drivers/dri/common/texmem.c b/src/mesa/drivers/dri/common/texmem.c
index c3f6ec9bae..7cf2e21b63 100644
--- a/src/mesa/drivers/dri/common/texmem.c
+++ b/src/mesa/drivers/dri/common/texmem.c
@@ -1138,7 +1138,7 @@ driValidateTextureHeaps( driTexHeap * const * texture_heaps,
unsigned textures_in_heap = 0;
unsigned blocks_in_mempool = 0;
const driTexHeap * heap = texture_heaps[i];
- const memHeap_t * p = heap->memory_heap;
+ const struct mem_block *p = heap->memory_heap;
/* Check each texture object has a MemBlock, and is linked into
* the correct heap.
diff --git a/src/mesa/drivers/dri/common/texmem.h b/src/mesa/drivers/dri/common/texmem.h
index 5c1fc32384..22d1755895 100644
--- a/src/mesa/drivers/dri/common/texmem.h
+++ b/src/mesa/drivers/dri/common/texmem.h
@@ -66,7 +66,7 @@ struct dri_texture_object {
* texture memory in use by another context.
* A placeholder should have a heap and a memBlock.
*/
- PMemBlock memBlock; /**< Memory block containing texture */
+ struct mem_block *memBlock; /**< Memory block containing texture */
unsigned reserved; /**< Cannot be swapped out by user contexts. */
@@ -176,7 +176,7 @@ struct dri_tex_heap {
/** Memory heap used to manage texture memory represented by
* this texture heap.
*/
- memHeap_t * memory_heap;
+ struct mem_block * memory_heap;
/** List of objects that we currently believe to be in texture
* memory.
diff --git a/src/mesa/drivers/dri/gamma/gamma_context.h b/src/mesa/drivers/dri/gamma/gamma_context.h
index 7745f4c3c3..f0ab1c4f05 100644
--- a/src/mesa/drivers/dri/gamma/gamma_context.h
+++ b/src/mesa/drivers/dri/gamma/gamma_context.h
@@ -144,7 +144,7 @@ struct gamma_texture_object_t {
int totalSize;
int bound;
- PMemBlock MemBlock;
+ struct mem_block *MemBlock;
char * BufAddr;
GLuint min_level;
@@ -291,7 +291,7 @@ struct gamma_context {
struct gamma_texture_object_t SwappedOut;
GLenum TexEnvImageFmt[2];
- memHeap_t *texHeap;
+ struct mem_block *texHeap;
unsigned int lastSwap;
int texAge;
diff --git a/src/mesa/drivers/dri/mach64/mach64_context.h b/src/mesa/drivers/dri/mach64/mach64_context.h
index c541f77ab9..e718b96c18 100644
--- a/src/mesa/drivers/dri/mach64/mach64_context.h
+++ b/src/mesa/drivers/dri/mach64/mach64_context.h
@@ -164,7 +164,7 @@ struct mach64_texture_object {
struct mach64_texture_object *prev;
struct gl_texture_object *tObj;
- PMemBlock memBlock;
+ struct mem_block *memBlock;
GLuint offset;
GLuint size;
@@ -236,7 +236,7 @@ struct mach64_context {
#else
mach64TexObj TexObjList[MACH64_NR_TEX_HEAPS];
mach64TexObj SwappedOut;
- memHeap_t *texHeap[MACH64_NR_TEX_HEAPS];
+ struct mem_block *texHeap[MACH64_NR_TEX_HEAPS];
GLuint lastTexAge[MACH64_NR_TEX_HEAPS];
GLint firstTexHeap, lastTexHeap;
#endif
diff --git a/src/mesa/drivers/dri/s3v/s3v_context.h b/src/mesa/drivers/dri/s3v/s3v_context.h
index 4b409fbf37..6f527f3a83 100644
--- a/src/mesa/drivers/dri/s3v/s3v_context.h
+++ b/src/mesa/drivers/dri/s3v/s3v_context.h
@@ -114,7 +114,7 @@ struct s3v_texture_object_t {
int totalSize;
int bound;
- PMemBlock MemBlock;
+ struct mem_block *MemBlock;
GLuint BufAddr;
GLuint min_level;
@@ -269,7 +269,7 @@ struct s3v_context {
struct s3v_texture_object_t SwappedOut;
GLenum TexEnvImageFmt[2];
- memHeap_t *texHeap;
+ struct mem_block *texHeap;
int lastSwap;
int texAge;
diff --git a/src/mesa/drivers/dri/trident/trident_context.h b/src/mesa/drivers/dri/trident/trident_context.h
index 7ebb5f2049..b1e68b0166 100644
--- a/src/mesa/drivers/dri/trident/trident_context.h
+++ b/src/mesa/drivers/dri/trident/trident_context.h
@@ -197,7 +197,7 @@ struct trident_context {
struct gamma_texture_object_t SwappedOut;
GLenum TexEnvImageFmt[2];
- memHeap_t *texHeap;
+ struct mem_block *texHeap;
int lastSwap;
int texAge;
diff --git a/src/mesa/main/execmem.c b/src/mesa/main/execmem.c
index 89deaafad3..1655fd66e6 100644
--- a/src/mesa/main/execmem.c
+++ b/src/mesa/main/execmem.c
@@ -52,7 +52,7 @@
_glthread_DECLARE_STATIC_MUTEX(exec_mutex);
-static memHeap_t *exec_heap = NULL;
+static struct mem_block *exec_heap = NULL;
static unsigned char *exec_mem = NULL;
@@ -72,7 +72,7 @@ init_heap(void)
void *
_mesa_exec_malloc(GLuint size)
{
- PMemBlock block = NULL;
+ struct mem_block *block = NULL;
void *addr = NULL;
_glthread_LOCK_MUTEX(exec_mutex);
@@ -99,7 +99,7 @@ _mesa_exec_free(void *addr)
_glthread_LOCK_MUTEX(exec_mutex);
if (exec_heap) {
- PMemBlock block = mmFindBlock(exec_heap, (unsigned char *)addr - exec_mem);
+ struct mem_block *block = mmFindBlock(exec_heap, (unsigned char *)addr - exec_mem);
if (block)
mmFreeMem(block);
diff --git a/src/mesa/main/mm.c b/src/mesa/main/mm.c
index e4c9682173..0a71c4d851 100644
--- a/src/mesa/main/mm.c
+++ b/src/mesa/main/mm.c
@@ -26,15 +26,15 @@
void
-mmDumpMemInfo(const memHeap_t *heap)
+mmDumpMemInfo(const struct mem_block *heap)
{
- const TMemBlock *p;
+ const struct mem_block *p;
fprintf(stderr, "Memory heap %p:\n", (void *)heap);
if (heap == 0) {
fprintf(stderr, " heap == 0\n");
} else {
- p = (TMemBlock *)heap;
+ p = (struct mem_block *)heap;
while (p) {
fprintf(stderr, " Offset:%08x, Size:%08x, %c%c\n",p->ofs,p->size,
p->free ? '.':'U',
@@ -45,20 +45,20 @@ mmDumpMemInfo(const memHeap_t *heap)
fprintf(stderr, "End of memory blocks\n");
}
-memHeap_t *
+struct mem_block *
mmInit(int ofs, int size)
{
- PMemBlock blocks;
+ struct mem_block *blocks;
if (size <= 0) {
return NULL;
}
- blocks = (TMemBlock *) _mesa_calloc(sizeof(TMemBlock));
+ blocks = (struct mem_block *) _mesa_calloc(sizeof(struct mem_block));
if (blocks) {
blocks->ofs = ofs;
blocks->size = size;
blocks->free = 1;
- return (memHeap_t *)blocks;
+ return (struct mem_block *)blocks;
}
else {
return NULL;
@@ -66,16 +66,16 @@ mmInit(int ofs, int size)
}
-static TMemBlock *
-SliceBlock(TMemBlock *p,
+static struct mem_block *
+SliceBlock(struct mem_block *p,
int startofs, int size,
int reserved, int alignment)
{
- TMemBlock *newblock;
+ struct mem_block *newblock;
/* break left */
if (startofs > p->ofs) {
- newblock = (TMemBlock*) _mesa_calloc(sizeof(TMemBlock));
+ newblock = (struct mem_block*) _mesa_calloc(sizeof(struct mem_block));
if (!newblock)
return NULL;
newblock->ofs = startofs;
@@ -89,7 +89,7 @@ SliceBlock(TMemBlock *p,
/* break right */
if (size < p->size) {
- newblock = (TMemBlock*) _mesa_calloc(sizeof(TMemBlock));
+ newblock = (struct mem_block*) _mesa_calloc(sizeof(struct mem_block));
if (!newblock)
return NULL;
newblock->ofs = startofs + size;
@@ -108,17 +108,17 @@ SliceBlock(TMemBlock *p,
}
-PMemBlock
-mmAllocMem(memHeap_t *heap, int size, int align2, int startSearch)
+struct mem_block *
+mmAllocMem(struct mem_block *heap, int size, int align2, int startSearch)
{
- int mask,startofs,endofs;
- TMemBlock *p;
+ struct mem_block *p = heap;
+ int mask = (1 << align2)-1;
+ int startofs = 0;
+ int endofs;
if (!heap || align2 < 0 || size <= 0)
return NULL;
- mask = (1 << align2)-1;
- startofs = 0;
- p = (TMemBlock *)heap;
+
while (p) {
if ((p)->free) {
startofs = (p->ofs + mask) & ~mask;
@@ -139,10 +139,10 @@ mmAllocMem(memHeap_t *heap, int size, int align2, int startSearch)
}
-PMemBlock
-mmFindBlock(memHeap_t *heap, int start)
+struct mem_block *
+mmFindBlock(struct mem_block *heap, int start)
{
- TMemBlock *p = (TMemBlock *)heap;
+ struct mem_block *p = (struct mem_block *)heap;
while (p) {
if (p->ofs == start && p->free)
@@ -155,12 +155,12 @@ mmFindBlock(memHeap_t *heap, int start)
}
-static INLINE int
-Join2Blocks(TMemBlock *p)
+static int
+Join2Blocks(struct mem_block *p)
{
/* XXX there should be some assertions here */
if (p->free && p->next && p->next->free) {
- TMemBlock *q = p->next;
+ struct mem_block *q = p->next;
p->size += q->size;
p->next = q->next;
_mesa_free(q);
@@ -170,9 +170,9 @@ Join2Blocks(TMemBlock *p)
}
int
-mmFreeMem(PMemBlock b)
+mmFreeMem(struct mem_block *b)
{
- TMemBlock *p,*prev;
+ struct mem_block *p,*prev;
if (!b)
return 0;
@@ -204,16 +204,16 @@ mmFreeMem(PMemBlock b)
void
-mmDestroy(memHeap_t *heap)
+mmDestroy(struct mem_block *heap)
{
- TMemBlock *p;
+ struct mem_block *p;
if (!heap)
return;
- p = (TMemBlock *) heap;
+ p = (struct mem_block *) heap;
while (p) {
- TMemBlock *next = p->next;
+ struct mem_block *next = p->next;
_mesa_free(p);
p = next;
}
diff --git a/src/mesa/main/mm.h b/src/mesa/main/mm.h
index d2aa3777c3..9213b2ad34 100644
--- a/src/mesa/main/mm.h
+++ b/src/mesa/main/mm.h
@@ -35,45 +35,22 @@
#include "imports.h"
-struct mem_block_t {
- struct mem_block_t *next;
- struct mem_block_t *heap;
+struct mem_block {
+ struct mem_block *next;
+ struct mem_block *heap;
int ofs,size;
int align;
unsigned int free:1;
unsigned int reserved:1;
};
-typedef struct mem_block_t TMemBlock;
-
-typedef struct mem_block_t *PMemBlock;
-
-/* a heap is just the first block in a chain */
-typedef struct mem_block_t memHeap_t;
-
-
-/* XXX are these needed? */
-#if 0
-static INLINE int
-mmBlockSize(PMemBlock b)
-{
- return b->size;
-}
-
-static INLINE int
-mmOffset(PMemBlock b)
-{
- return b->ofs;
-}
-#endif
-
/**
* input: total size in bytes
* return: a heap pointer if OK, NULL if error
*/
-extern memHeap_t *mmInit(int ofs, int size);
+extern struct mem_block *mmInit(int ofs, int size);
/**
* Allocate 'size' bytes with 2^align2 bytes alignment,
@@ -85,7 +62,7 @@ extern memHeap_t *mmInit(int ofs, int size);
* startSearch = linear offset from start of heap to begin search
* return: pointer to the allocated block, 0 if error
*/
-extern PMemBlock mmAllocMem(memHeap_t *heap, int size, int align2,
+extern struct mem_block *mmAllocMem(struct mem_block *heap, int size, int align2,
int startSearch);
/**
@@ -93,23 +70,23 @@ extern PMemBlock mmAllocMem(memHeap_t *heap, int size, int align2,
* input: pointer to a block
* return: 0 if OK, -1 if error
*/
-extern int mmFreeMem(PMemBlock b);
+extern int mmFreeMem(struct mem_block *b);
/**
* Free block starts at offset
* input: pointer to a heap, start offset
* return: pointer to a block
*/
-extern PMemBlock mmFindBlock(memHeap_t *heap, int start);
+extern struct mem_block *mmFindBlock(struct mem_block *heap, int start);
/**
* destroy MM
*/
-extern void mmDestroy(memHeap_t *mmInit);
+extern void mmDestroy(struct mem_block *mmInit);
/**
* For debuging purpose.
*/
-extern void mmDumpMemInfo(const memHeap_t *mmInit);
+extern void mmDumpMemInfo(const struct mem_block *mmInit);
#endif