瀏覽代碼

generate the OpenGL 1.5 entrypoints

tags/R300_DRIVER_0
Brian Paul 22 年之前
父節點
當前提交
62b6eb320e
共有 5 個文件被更改,包括 792 次插入3 次删除
  1. 144
    1
      src/mesa/glapi/APIspec
  2. 114
    0
      src/mesa/glapi/glapitemp.h
  3. 21
    2
      src/mesa/glapi/glprocs.h
  4. 399
    0
      src/mesa/sparc/glapi_sparc.S
  5. 114
    0
      src/mesa/x86/glapi_x86.S

+ 144
- 1
src/mesa/glapi/APIspec 查看文件

@@ -1,4 +1,4 @@
# $Id: APIspec,v 1.20 2003/08/22 23:28:03 idr Exp $
# $Id: APIspec,v 1.21 2003/11/24 22:30:32 brianp Exp $

# This file describes all the OpenGL functions.
# We use a number of Python scripts to parse this file and
@@ -8424,6 +8424,149 @@ offset 707



# OpenGL 1.5 functions

name BindBuffer
alias BindBufferARB
return void
param target GLenum
param buffer GLuint
category 1.5

name BufferData
alias BufferDataARB
return void
param target GLenum
param size GLsizeiptrARB
param data const GLvoid *
param usage GLenum
category 1.5

name BufferSubData
alias BufferSubDataARB
return void
param target GLenum
param size GLsizeiptrARB
param data const GLvoid *
category 1.5

name DeleteBuffers
alias DeleteBuffersARB
return void
param n GLsizei
param buffer const GLuint *
category 1.5

name GenBuffers
alias GenBuffersARB
return void
param n GLsizei
param buffer GLuint *
category 1.5

name GetBufferParameteriv
alias GetBufferParameterivARB
return void
param target GLenum
param pname GLenum
param params GLint *
category 1.5

name GetBufferPointerv
alias GetBufferPointervARB
return void
param target GLenum
param pname GLenum
param params GLvoid **
category 1.5

name GetBufferSubData
alias GetBufferSubDataARB
return void
param target GLenum
param size GLsizeiptrARB
param data void *
category 1.5

name IsBuffer
alias IsBufferARB
return GLboolean
param buffer GLuint
category 1.5

name MapBuffer
alias MapBufferARB
return void *
param target GLenum
param access GLenum
category 1.5

name UnmapBuffer
alias UnmapBufferARB
return GLboolean
param target GLenum
category 1.5


name GenQueries
alias GenQueriesARB
return void
param n GLsizei
param ids GLuint *
category 1.5

name DeleteQueries
alias DeleteQueriesARB
return void
param n GLsizei
param ids const GLuint *
category 1.5

name IsQuery
alias IsQueryARB
return GLboolean
param id GLuint
category 1.5

name BeginQuery
alias BeginQueryARB
return void
param target GLenum
param id GLuint
category 1.5

name EndQuery
alias EndQueryARB
return void
param target GLenum
category 1.5

name GetQueryiv
alias GetQueryivARB
return void
param target GLenum
param pname GLenum
param params GLint *
category 1.5

name GetQueryObjectiv
alias GetQueryObjectivARB
return void
param id GLuint
param pname GLenum
param params GLint *
category GL_ARB_occlusion_query

name GetQueryObjectuiv
alias GetQueryObjectuivARB
return void
param id GLuint
param pname GLenum
param params GLuint *
category GL_ARB_occlusion_query



# end of file sentinal

name dummy

+ 114
- 0
src/mesa/glapi/glapitemp.h 查看文件

@@ -4672,6 +4672,101 @@ KEYWORD1 void KEYWORD2 NAME(GetQueryObjectuivARB)(GLuint id, GLenum pname, GLuin
DISPATCH(GetQueryObjectuivARB, (id, pname, params), (F, "glGetQueryObjectuivARB(%d, 0x%x, %p);\n", id, pname, (const void *) params));
}

KEYWORD1 void KEYWORD2 NAME(BindBuffer)(GLenum target, GLuint buffer)
{
DISPATCH(BindBufferARB, (target, buffer), (F, "glBindBuffer(0x%x, %d);\n", target, buffer));
}

KEYWORD1 void KEYWORD2 NAME(BufferData)(GLenum target, GLsizeiptrARB size, const GLvoid * data, GLenum usage)
{
DISPATCH(BufferDataARB, (target, size, data, usage), (F, "glBufferData(0x%x, %p, %p, 0x%x);\n", target, (const void *) size, (const void *) data, usage));
}

KEYWORD1 void KEYWORD2 NAME(BufferSubData)(GLenum target, GLsizeiptrARB size, const GLvoid * data)
{
DISPATCH(BufferSubDataARB, (target, size, data), (F, "glBufferSubData(0x%x, %p, %p);\n", target, (const void *) size, (const void *) data));
}

KEYWORD1 void KEYWORD2 NAME(DeleteBuffers)(GLsizei n, const GLuint * buffer)
{
DISPATCH(DeleteBuffersARB, (n, buffer), (F, "glDeleteBuffers(%d, %p);\n", n, (const void *) buffer));
}

KEYWORD1 void KEYWORD2 NAME(GenBuffers)(GLsizei n, GLuint * buffer)
{
DISPATCH(GenBuffersARB, (n, buffer), (F, "glGenBuffers(%d, %p);\n", n, (const void *) buffer));
}

KEYWORD1 void KEYWORD2 NAME(GetBufferParameteriv)(GLenum target, GLenum pname, GLint * params)
{
DISPATCH(GetBufferParameterivARB, (target, pname, params), (F, "glGetBufferParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
}

KEYWORD1 void KEYWORD2 NAME(GetBufferPointerv)(GLenum target, GLenum pname, GLvoid ** params)
{
DISPATCH(GetBufferPointervARB, (target, pname, params), (F, "glGetBufferPointerv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
}

KEYWORD1 void KEYWORD2 NAME(GetBufferSubData)(GLenum target, GLsizeiptrARB size, void * data)
{
DISPATCH(GetBufferSubDataARB, (target, size, data), (F, "glGetBufferSubData(0x%x, %p, %p);\n", target, (const void *) size, (const void *) data));
}

KEYWORD1 GLboolean KEYWORD2 NAME(IsBuffer)(GLuint buffer)
{
RETURN_DISPATCH(IsBufferARB, (buffer), (F, "glIsBuffer(%d);\n", buffer));
}

KEYWORD1 void * KEYWORD2 NAME(MapBuffer)(GLenum target, GLenum access)
{
RETURN_DISPATCH(MapBufferARB, (target, access), (F, "glMapBuffer(0x%x, 0x%x);\n", target, access));
}

KEYWORD1 GLboolean KEYWORD2 NAME(UnmapBuffer)(GLenum target)
{
RETURN_DISPATCH(UnmapBufferARB, (target), (F, "glUnmapBuffer(0x%x);\n", target));
}

KEYWORD1 void KEYWORD2 NAME(GenQueries)(GLsizei n, GLuint * ids)
{
DISPATCH(GenQueriesARB, (n, ids), (F, "glGenQueries(%d, %p);\n", n, (const void *) ids));
}

KEYWORD1 void KEYWORD2 NAME(DeleteQueries)(GLsizei n, const GLuint * ids)
{
DISPATCH(DeleteQueriesARB, (n, ids), (F, "glDeleteQueries(%d, %p);\n", n, (const void *) ids));
}

KEYWORD1 GLboolean KEYWORD2 NAME(IsQuery)(GLuint id)
{
RETURN_DISPATCH(IsQueryARB, (id), (F, "glIsQuery(%d);\n", id));
}

KEYWORD1 void KEYWORD2 NAME(BeginQuery)(GLenum target, GLuint id)
{
DISPATCH(BeginQueryARB, (target, id), (F, "glBeginQuery(0x%x, %d);\n", target, id));
}

KEYWORD1 void KEYWORD2 NAME(EndQuery)(GLenum target)
{
DISPATCH(EndQueryARB, (target), (F, "glEndQuery(0x%x);\n", target));
}

KEYWORD1 void KEYWORD2 NAME(GetQueryiv)(GLenum target, GLenum pname, GLint * params)
{
DISPATCH(GetQueryivARB, (target, pname, params), (F, "glGetQueryiv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
}

KEYWORD1 void KEYWORD2 NAME(GetQueryObjectiv)(GLuint id, GLenum pname, GLint * params)
{
DISPATCH(GetQueryObjectivARB, (id, pname, params), (F, "glGetQueryObjectiv(%d, 0x%x, %p);\n", id, pname, (const void *) params));
}

KEYWORD1 void KEYWORD2 NAME(GetQueryObjectuiv)(GLuint id, GLenum pname, GLuint * params)
{
DISPATCH(GetQueryObjectuivARB, (id, pname, params), (F, "glGetQueryObjectuiv(%d, 0x%x, %p);\n", id, pname, (const void *) params));
}



/*
@@ -5694,6 +5789,25 @@ void *UNUSED_TABLE_NAME[] = {
TABLE_ENTRY(GetVertexAttribfvARB),
TABLE_ENTRY(GetVertexAttribivARB),
TABLE_ENTRY(GetVertexAttribPointervARB),
TABLE_ENTRY(BindBuffer),
TABLE_ENTRY(BufferData),
TABLE_ENTRY(BufferSubData),
TABLE_ENTRY(DeleteBuffers),
TABLE_ENTRY(GenBuffers),
TABLE_ENTRY(GetBufferParameteriv),
TABLE_ENTRY(GetBufferPointerv),
TABLE_ENTRY(GetBufferSubData),
TABLE_ENTRY(IsBuffer),
TABLE_ENTRY(MapBuffer),
TABLE_ENTRY(UnmapBuffer),
TABLE_ENTRY(GenQueries),
TABLE_ENTRY(DeleteQueries),
TABLE_ENTRY(IsQuery),
TABLE_ENTRY(BeginQuery),
TABLE_ENTRY(EndQuery),
TABLE_ENTRY(GetQueryiv),
TABLE_ENTRY(GetQueryObjectiv),
TABLE_ENTRY(GetQueryObjectuiv),
};
#endif /*UNUSED_TABLE_NAME*/


+ 21
- 2
src/mesa/glapi/glprocs.h 查看文件

@@ -672,6 +672,8 @@ static struct name_address_offset static_functions[] = {
{ "glWindowPos4ivMESA", (GLvoid *) glWindowPos4ivMESA, _gloffset_WindowPos4ivMESA },
{ "glWindowPos4sMESA", (GLvoid *) glWindowPos4sMESA, _gloffset_WindowPos4sMESA },
{ "glWindowPos4svMESA", (GLvoid *) glWindowPos4svMESA, _gloffset_WindowPos4svMESA },
{ "glMultiModeDrawArraysIBM", (GLvoid *) glMultiModeDrawArraysIBM, _gloffset_MultiModeDrawArraysIBM },
{ "glMultiModeDrawElementsIBM", (GLvoid *) glMultiModeDrawElementsIBM, _gloffset_MultiModeDrawElementsIBM },
{ "glTbufferMask3DFX", (GLvoid *) glTbufferMask3DFX, _gloffset_TbufferMask3DFX },
{ "glSampleMaskEXT", (GLvoid *) glSampleMaskEXT, _gloffset_SampleMaskSGIS },
{ "glSamplePatternEXT", (GLvoid *) glSamplePatternEXT, _gloffset_SamplePatternSGIS },
@@ -898,7 +900,24 @@ static struct name_address_offset static_functions[] = {
{ "glGetQueryivARB", (GLvoid *) glGetQueryivARB, _gloffset_GetQueryivARB },
{ "glGetQueryObjectivARB", (GLvoid *) glGetQueryObjectivARB, _gloffset_GetQueryObjectivARB },
{ "glGetQueryObjectuivARB", (GLvoid *) glGetQueryObjectuivARB, _gloffset_GetQueryObjectuivARB },
{ "glMultiModeDrawArraysIBM", (GLvoid *) glMultiModeDrawArraysIBM, _gloffset_MultiModeDrawArraysIBM },
{ "glMultiModeDrawElementsIBM", (GLvoid *) glMultiModeDrawElementsIBM, _gloffset_MultiModeDrawElementsIBM },
{ "glBindBuffer", (GLvoid *) glBindBuffer, _gloffset_BindBufferARB },
{ "glBufferData", (GLvoid *) glBufferData, _gloffset_BufferDataARB },
{ "glBufferSubData", (GLvoid *) glBufferSubData, _gloffset_BufferSubDataARB },
{ "glDeleteBuffers", (GLvoid *) glDeleteBuffers, _gloffset_DeleteBuffersARB },
{ "glGenBuffers", (GLvoid *) glGenBuffers, _gloffset_GenBuffersARB },
{ "glGetBufferParameteriv", (GLvoid *) glGetBufferParameteriv, _gloffset_GetBufferParameterivARB },
{ "glGetBufferPointerv", (GLvoid *) glGetBufferPointerv, _gloffset_GetBufferPointervARB },
{ "glGetBufferSubData", (GLvoid *) glGetBufferSubData, _gloffset_GetBufferSubDataARB },
{ "glIsBuffer", (GLvoid *) glIsBuffer, _gloffset_IsBufferARB },
{ "glMapBuffer", (GLvoid *) glMapBuffer, _gloffset_MapBufferARB },
{ "glUnmapBuffer", (GLvoid *) glUnmapBuffer, _gloffset_UnmapBufferARB },
{ "glGenQueries", (GLvoid *) glGenQueries, _gloffset_GenQueriesARB },
{ "glDeleteQueries", (GLvoid *) glDeleteQueries, _gloffset_DeleteQueriesARB },
{ "glIsQuery", (GLvoid *) glIsQuery, _gloffset_IsQueryARB },
{ "glBeginQuery", (GLvoid *) glBeginQuery, _gloffset_BeginQueryARB },
{ "glEndQuery", (GLvoid *) glEndQuery, _gloffset_EndQueryARB },
{ "glGetQueryiv", (GLvoid *) glGetQueryiv, _gloffset_GetQueryivARB },
{ "glGetQueryObjectiv", (GLvoid *) glGetQueryObjectiv, _gloffset_GetQueryObjectivARB },
{ "glGetQueryObjectuiv", (GLvoid *) glGetQueryObjectuiv, _gloffset_GetQueryObjectuivARB },
{ NULL, NULL } /* end of list marker */
};

+ 399
- 0
src/mesa/sparc/glapi_sparc.S 查看文件

@@ -18819,6 +18819,405 @@ glGetQueryObjectivARB:
.globl glGetQueryObjectuivARB
.type glGetQueryObjectuivARB,#function
glGetQueryObjectuivARB:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1
or %g2, %lo(0x00000000), %g2
or %g1, %lo(0x00000000), %g1
sllx %g2, 32, %g2
ldx [%g1 + %g2], %g1
sethi %hi(8 * _gloffset_GetQueryObjectuivARB), %g2
or %g2, %lo(8 * _gloffset_GetQueryObjectuivARB), %g2
ldx [%g1 + %g2], %g3
#else
sethi %hi(0x00000000), %g1
ld [%g1 + %lo(0x00000000)], %g1
ld [%g1 + (4 * _gloffset_GetQueryObjectuivARB)], %g3
#endif
jmpl %g3, %g0
nop

.globl glBindBuffer
.type glBindBuffer,#function
glBindBuffer:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1
or %g2, %lo(0x00000000), %g2
or %g1, %lo(0x00000000), %g1
sllx %g2, 32, %g2
ldx [%g1 + %g2], %g1
sethi %hi(8 * _gloffset_BindBufferARB), %g2
or %g2, %lo(8 * _gloffset_BindBufferARB), %g2
ldx [%g1 + %g2], %g3
#else
sethi %hi(0x00000000), %g1
ld [%g1 + %lo(0x00000000)], %g1
ld [%g1 + (4 * _gloffset_BindBufferARB)], %g3
#endif
jmpl %g3, %g0
nop

.globl glBufferData
.type glBufferData,#function
glBufferData:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1
or %g2, %lo(0x00000000), %g2
or %g1, %lo(0x00000000), %g1
sllx %g2, 32, %g2
ldx [%g1 + %g2], %g1
sethi %hi(8 * _gloffset_BufferDataARB), %g2
or %g2, %lo(8 * _gloffset_BufferDataARB), %g2
ldx [%g1 + %g2], %g3
#else
sethi %hi(0x00000000), %g1
ld [%g1 + %lo(0x00000000)], %g1
ld [%g1 + (4 * _gloffset_BufferDataARB)], %g3
#endif
jmpl %g3, %g0
nop

.globl glBufferSubData
.type glBufferSubData,#function
glBufferSubData:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1
or %g2, %lo(0x00000000), %g2
or %g1, %lo(0x00000000), %g1
sllx %g2, 32, %g2
ldx [%g1 + %g2], %g1
sethi %hi(8 * _gloffset_BufferSubDataARB), %g2
or %g2, %lo(8 * _gloffset_BufferSubDataARB), %g2
ldx [%g1 + %g2], %g3
#else
sethi %hi(0x00000000), %g1
ld [%g1 + %lo(0x00000000)], %g1
ld [%g1 + (4 * _gloffset_BufferSubDataARB)], %g3
#endif
jmpl %g3, %g0
nop

.globl glDeleteBuffers
.type glDeleteBuffers,#function
glDeleteBuffers:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1
or %g2, %lo(0x00000000), %g2
or %g1, %lo(0x00000000), %g1
sllx %g2, 32, %g2
ldx [%g1 + %g2], %g1
sethi %hi(8 * _gloffset_DeleteBuffersARB), %g2
or %g2, %lo(8 * _gloffset_DeleteBuffersARB), %g2
ldx [%g1 + %g2], %g3
#else
sethi %hi(0x00000000), %g1
ld [%g1 + %lo(0x00000000)], %g1
ld [%g1 + (4 * _gloffset_DeleteBuffersARB)], %g3
#endif
jmpl %g3, %g0
nop

.globl glGenBuffers
.type glGenBuffers,#function
glGenBuffers:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1
or %g2, %lo(0x00000000), %g2
or %g1, %lo(0x00000000), %g1
sllx %g2, 32, %g2
ldx [%g1 + %g2], %g1
sethi %hi(8 * _gloffset_GenBuffersARB), %g2
or %g2, %lo(8 * _gloffset_GenBuffersARB), %g2
ldx [%g1 + %g2], %g3
#else
sethi %hi(0x00000000), %g1
ld [%g1 + %lo(0x00000000)], %g1
ld [%g1 + (4 * _gloffset_GenBuffersARB)], %g3
#endif
jmpl %g3, %g0
nop

.globl glGetBufferParameteriv
.type glGetBufferParameteriv,#function
glGetBufferParameteriv:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1
or %g2, %lo(0x00000000), %g2
or %g1, %lo(0x00000000), %g1
sllx %g2, 32, %g2
ldx [%g1 + %g2], %g1
sethi %hi(8 * _gloffset_GetBufferParameterivARB), %g2
or %g2, %lo(8 * _gloffset_GetBufferParameterivARB), %g2
ldx [%g1 + %g2], %g3
#else
sethi %hi(0x00000000), %g1
ld [%g1 + %lo(0x00000000)], %g1
ld [%g1 + (4 * _gloffset_GetBufferParameterivARB)], %g3
#endif
jmpl %g3, %g0
nop

.globl glGetBufferPointerv
.type glGetBufferPointerv,#function
glGetBufferPointerv:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1
or %g2, %lo(0x00000000), %g2
or %g1, %lo(0x00000000), %g1
sllx %g2, 32, %g2
ldx [%g1 + %g2], %g1
sethi %hi(8 * _gloffset_GetBufferPointervARB), %g2
or %g2, %lo(8 * _gloffset_GetBufferPointervARB), %g2
ldx [%g1 + %g2], %g3
#else
sethi %hi(0x00000000), %g1
ld [%g1 + %lo(0x00000000)], %g1
ld [%g1 + (4 * _gloffset_GetBufferPointervARB)], %g3
#endif
jmpl %g3, %g0
nop

.globl glGetBufferSubData
.type glGetBufferSubData,#function
glGetBufferSubData:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1
or %g2, %lo(0x00000000), %g2
or %g1, %lo(0x00000000), %g1
sllx %g2, 32, %g2
ldx [%g1 + %g2], %g1
sethi %hi(8 * _gloffset_GetBufferSubDataARB), %g2
or %g2, %lo(8 * _gloffset_GetBufferSubDataARB), %g2
ldx [%g1 + %g2], %g3
#else
sethi %hi(0x00000000), %g1
ld [%g1 + %lo(0x00000000)], %g1
ld [%g1 + (4 * _gloffset_GetBufferSubDataARB)], %g3
#endif
jmpl %g3, %g0
nop

.globl glIsBuffer
.type glIsBuffer,#function
glIsBuffer:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1
or %g2, %lo(0x00000000), %g2
or %g1, %lo(0x00000000), %g1
sllx %g2, 32, %g2
ldx [%g1 + %g2], %g1
sethi %hi(8 * _gloffset_IsBufferARB), %g2
or %g2, %lo(8 * _gloffset_IsBufferARB), %g2
ldx [%g1 + %g2], %g3
#else
sethi %hi(0x00000000), %g1
ld [%g1 + %lo(0x00000000)], %g1
ld [%g1 + (4 * _gloffset_IsBufferARB)], %g3
#endif
jmpl %g3, %g0
nop

.globl glMapBuffer
.type glMapBuffer,#function
glMapBuffer:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1
or %g2, %lo(0x00000000), %g2
or %g1, %lo(0x00000000), %g1
sllx %g2, 32, %g2
ldx [%g1 + %g2], %g1
sethi %hi(8 * _gloffset_MapBufferARB), %g2
or %g2, %lo(8 * _gloffset_MapBufferARB), %g2
ldx [%g1 + %g2], %g3
#else
sethi %hi(0x00000000), %g1
ld [%g1 + %lo(0x00000000)], %g1
ld [%g1 + (4 * _gloffset_MapBufferARB)], %g3
#endif
jmpl %g3, %g0
nop

.globl glUnmapBuffer
.type glUnmapBuffer,#function
glUnmapBuffer:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1
or %g2, %lo(0x00000000), %g2
or %g1, %lo(0x00000000), %g1
sllx %g2, 32, %g2
ldx [%g1 + %g2], %g1
sethi %hi(8 * _gloffset_UnmapBufferARB), %g2
or %g2, %lo(8 * _gloffset_UnmapBufferARB), %g2
ldx [%g1 + %g2], %g3
#else
sethi %hi(0x00000000), %g1
ld [%g1 + %lo(0x00000000)], %g1
ld [%g1 + (4 * _gloffset_UnmapBufferARB)], %g3
#endif
jmpl %g3, %g0
nop

.globl glGenQueries
.type glGenQueries,#function
glGenQueries:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1
or %g2, %lo(0x00000000), %g2
or %g1, %lo(0x00000000), %g1
sllx %g2, 32, %g2
ldx [%g1 + %g2], %g1
sethi %hi(8 * _gloffset_GenQueriesARB), %g2
or %g2, %lo(8 * _gloffset_GenQueriesARB), %g2
ldx [%g1 + %g2], %g3
#else
sethi %hi(0x00000000), %g1
ld [%g1 + %lo(0x00000000)], %g1
ld [%g1 + (4 * _gloffset_GenQueriesARB)], %g3
#endif
jmpl %g3, %g0
nop

.globl glDeleteQueries
.type glDeleteQueries,#function
glDeleteQueries:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1
or %g2, %lo(0x00000000), %g2
or %g1, %lo(0x00000000), %g1
sllx %g2, 32, %g2
ldx [%g1 + %g2], %g1
sethi %hi(8 * _gloffset_DeleteQueriesARB), %g2
or %g2, %lo(8 * _gloffset_DeleteQueriesARB), %g2
ldx [%g1 + %g2], %g3
#else
sethi %hi(0x00000000), %g1
ld [%g1 + %lo(0x00000000)], %g1
ld [%g1 + (4 * _gloffset_DeleteQueriesARB)], %g3
#endif
jmpl %g3, %g0
nop

.globl glIsQuery
.type glIsQuery,#function
glIsQuery:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1
or %g2, %lo(0x00000000), %g2
or %g1, %lo(0x00000000), %g1
sllx %g2, 32, %g2
ldx [%g1 + %g2], %g1
sethi %hi(8 * _gloffset_IsQueryARB), %g2
or %g2, %lo(8 * _gloffset_IsQueryARB), %g2
ldx [%g1 + %g2], %g3
#else
sethi %hi(0x00000000), %g1
ld [%g1 + %lo(0x00000000)], %g1
ld [%g1 + (4 * _gloffset_IsQueryARB)], %g3
#endif
jmpl %g3, %g0
nop

.globl glBeginQuery
.type glBeginQuery,#function
glBeginQuery:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1
or %g2, %lo(0x00000000), %g2
or %g1, %lo(0x00000000), %g1
sllx %g2, 32, %g2
ldx [%g1 + %g2], %g1
sethi %hi(8 * _gloffset_BeginQueryARB), %g2
or %g2, %lo(8 * _gloffset_BeginQueryARB), %g2
ldx [%g1 + %g2], %g3
#else
sethi %hi(0x00000000), %g1
ld [%g1 + %lo(0x00000000)], %g1
ld [%g1 + (4 * _gloffset_BeginQueryARB)], %g3
#endif
jmpl %g3, %g0
nop

.globl glEndQuery
.type glEndQuery,#function
glEndQuery:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1
or %g2, %lo(0x00000000), %g2
or %g1, %lo(0x00000000), %g1
sllx %g2, 32, %g2
ldx [%g1 + %g2], %g1
sethi %hi(8 * _gloffset_EndQueryARB), %g2
or %g2, %lo(8 * _gloffset_EndQueryARB), %g2
ldx [%g1 + %g2], %g3
#else
sethi %hi(0x00000000), %g1
ld [%g1 + %lo(0x00000000)], %g1
ld [%g1 + (4 * _gloffset_EndQueryARB)], %g3
#endif
jmpl %g3, %g0
nop

.globl glGetQueryiv
.type glGetQueryiv,#function
glGetQueryiv:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1
or %g2, %lo(0x00000000), %g2
or %g1, %lo(0x00000000), %g1
sllx %g2, 32, %g2
ldx [%g1 + %g2], %g1
sethi %hi(8 * _gloffset_GetQueryivARB), %g2
or %g2, %lo(8 * _gloffset_GetQueryivARB), %g2
ldx [%g1 + %g2], %g3
#else
sethi %hi(0x00000000), %g1
ld [%g1 + %lo(0x00000000)], %g1
ld [%g1 + (4 * _gloffset_GetQueryivARB)], %g3
#endif
jmpl %g3, %g0
nop

.globl glGetQueryObjectiv
.type glGetQueryObjectiv,#function
glGetQueryObjectiv:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1
or %g2, %lo(0x00000000), %g2
or %g1, %lo(0x00000000), %g1
sllx %g2, 32, %g2
ldx [%g1 + %g2], %g1
sethi %hi(8 * _gloffset_GetQueryObjectivARB), %g2
or %g2, %lo(8 * _gloffset_GetQueryObjectivARB), %g2
ldx [%g1 + %g2], %g3
#else
sethi %hi(0x00000000), %g1
ld [%g1 + %lo(0x00000000)], %g1
ld [%g1 + (4 * _gloffset_GetQueryObjectivARB)], %g3
#endif
jmpl %g3, %g0
nop

.globl glGetQueryObjectuiv
.type glGetQueryObjectuiv,#function
glGetQueryObjectuiv:
#ifdef __sparc_v9__
sethi %hi(0x00000000), %g2
sethi %hi(0x00000000), %g1

+ 114
- 0
src/mesa/x86/glapi_x86.S 查看文件

@@ -5400,5 +5400,119 @@ GL_PREFIX(GetQueryObjectuivARB,GetQueryObjectuivARB@12):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_GetQueryObjectuivARB))

ALIGNTEXT16
GLOBL_FN(GL_PREFIX(BindBuffer,BindBuffer@8))
GL_PREFIX(BindBuffer,BindBuffer@8):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_BindBufferARB))

ALIGNTEXT16
GLOBL_FN(GL_PREFIX(BufferData,BufferData@16))
GL_PREFIX(BufferData,BufferData@16):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_BufferDataARB))

ALIGNTEXT16
GLOBL_FN(GL_PREFIX(BufferSubData,BufferSubData@12))
GL_PREFIX(BufferSubData,BufferSubData@12):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_BufferSubDataARB))

ALIGNTEXT16
GLOBL_FN(GL_PREFIX(DeleteBuffers,DeleteBuffers@8))
GL_PREFIX(DeleteBuffers,DeleteBuffers@8):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_DeleteBuffersARB))

ALIGNTEXT16
GLOBL_FN(GL_PREFIX(GenBuffers,GenBuffers@8))
GL_PREFIX(GenBuffers,GenBuffers@8):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_GenBuffersARB))

ALIGNTEXT16
GLOBL_FN(GL_PREFIX(GetBufferParameteriv,GetBufferParameteriv@12))
GL_PREFIX(GetBufferParameteriv,GetBufferParameteriv@12):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_GetBufferParameterivARB))

ALIGNTEXT16
GLOBL_FN(GL_PREFIX(GetBufferPointerv,GetBufferPointerv@12))
GL_PREFIX(GetBufferPointerv,GetBufferPointerv@12):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_GetBufferPointervARB))

ALIGNTEXT16
GLOBL_FN(GL_PREFIX(GetBufferSubData,GetBufferSubData@12))
GL_PREFIX(GetBufferSubData,GetBufferSubData@12):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_GetBufferSubDataARB))

ALIGNTEXT16
GLOBL_FN(GL_PREFIX(IsBuffer,IsBuffer@4))
GL_PREFIX(IsBuffer,IsBuffer@4):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_IsBufferARB))

ALIGNTEXT16
GLOBL_FN(GL_PREFIX(MapBuffer,MapBuffer@8))
GL_PREFIX(MapBuffer,MapBuffer@8):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_MapBufferARB))

ALIGNTEXT16
GLOBL_FN(GL_PREFIX(UnmapBuffer,UnmapBuffer@4))
GL_PREFIX(UnmapBuffer,UnmapBuffer@4):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_UnmapBufferARB))

ALIGNTEXT16
GLOBL_FN(GL_PREFIX(GenQueries,GenQueries@8))
GL_PREFIX(GenQueries,GenQueries@8):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_GenQueriesARB))

ALIGNTEXT16
GLOBL_FN(GL_PREFIX(DeleteQueries,DeleteQueries@8))
GL_PREFIX(DeleteQueries,DeleteQueries@8):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_DeleteQueriesARB))

ALIGNTEXT16
GLOBL_FN(GL_PREFIX(IsQuery,IsQuery@4))
GL_PREFIX(IsQuery,IsQuery@4):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_IsQueryARB))

ALIGNTEXT16
GLOBL_FN(GL_PREFIX(BeginQuery,BeginQuery@8))
GL_PREFIX(BeginQuery,BeginQuery@8):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_BeginQueryARB))

ALIGNTEXT16
GLOBL_FN(GL_PREFIX(EndQuery,EndQuery@4))
GL_PREFIX(EndQuery,EndQuery@4):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_EndQueryARB))

ALIGNTEXT16
GLOBL_FN(GL_PREFIX(GetQueryiv,GetQueryiv@12))
GL_PREFIX(GetQueryiv,GetQueryiv@12):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_GetQueryivARB))

ALIGNTEXT16
GLOBL_FN(GL_PREFIX(GetQueryObjectiv,GetQueryObjectiv@12))
GL_PREFIX(GetQueryObjectiv,GetQueryObjectiv@12):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_GetQueryObjectivARB))

ALIGNTEXT16
GLOBL_FN(GL_PREFIX(GetQueryObjectuiv,GetQueryObjectuiv@12))
GL_PREFIX(GetQueryObjectuiv,GetQueryObjectuiv@12):
MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX)
JMP(GL_OFFSET(_gloffset_GetQueryObjectuivARB))


#endif /* __WIN32__ */

Loading…
取消
儲存