Blame src/GLdispatch/vnd-glapi/u_execmem.h
|
Packit Service |
9e77c8 |
#ifndef _U_EXECMEM_H_
|
|
Packit Service |
9e77c8 |
#define _U_EXECMEM_H_
|
|
Packit Service |
9e77c8 |
|
|
Packit Service |
9e77c8 |
/**
|
|
Packit Service |
9e77c8 |
* Allocates \p size bytes of executable memory.
|
|
Packit Service |
9e77c8 |
*
|
|
Packit Service |
9e77c8 |
* The returned pointer may or may not be writable. Call
|
|
Packit Service |
9e77c8 |
* \c u_execmem_get_writable to get a pointer to a writable mapping.
|
|
Packit Service |
9e77c8 |
*/
|
|
Packit Service |
9e77c8 |
void *u_execmem_alloc(unsigned int size);
|
|
Packit Service |
9e77c8 |
|
|
Packit Service |
9e77c8 |
/**
|
|
Packit Service |
9e77c8 |
* Returns a writable mapping for a pointer returned by \c u_execmem_alloc.
|
|
Packit Service |
9e77c8 |
*
|
|
Packit Service |
9e77c8 |
* If \p execPtr is a pointer returned by \c u_execmem_alloc, then this
|
|
Packit Service |
9e77c8 |
* function will return a writable mapping of the same memory.
|
|
Packit Service |
9e77c8 |
*
|
|
Packit Service |
9e77c8 |
* If \p execPtr was not returned by \c u_execmem_alloc, then it will be
|
|
Packit Service |
9e77c8 |
* returned unmodified. Thus, it's safe to pass a pointer to a static
|
|
Packit Service |
9e77c8 |
* or dynamic entrypoint.
|
|
Packit Service |
9e77c8 |
*/
|
|
Packit Service |
9e77c8 |
void *u_execmem_get_writable(void *execPtr);
|
|
Packit Service |
9e77c8 |
|
|
Packit Service |
9e77c8 |
/**
|
|
Packit Service |
9e77c8 |
* Frees the memory allocated from u_execmem_alloc.
|
|
Packit Service |
9e77c8 |
*/
|
|
Packit Service |
9e77c8 |
void u_execmem_free(void);
|
|
Packit Service |
9e77c8 |
|
|
Packit Service |
9e77c8 |
#endif /* _U_EXECMEM_H_ */
|