diff options
author | Christian König <[email protected]> | 2011-05-07 14:11:40 +0200 |
---|---|---|
committer | Christian König <[email protected]> | 2011-05-07 14:11:40 +0200 |
commit | 213b9004a6ee033a16af3dcd187aa68b56c39858 (patch) | |
tree | f577f4dc276f70dad63f102f69f87f4d566186ef /src | |
parent | 6ad846ee78d9d8ba93dcecdefbf89f2b981333ef (diff) | |
parent | 03615c02d81437cf546609fc6a39c6c73be39360 (diff) |
Merge remote-tracking branch 'origin/master' into pipe-video
Conflicts:
src/gallium/drivers/r600/r600_state.c
Diffstat (limited to 'src')
271 files changed, 19787 insertions, 15801 deletions
diff --git a/src/SConscript b/src/SConscript index f11894f2990..7b614daeea1 100644 --- a/src/SConscript +++ b/src/SConscript @@ -23,6 +23,7 @@ SConscript('mapi/vgapi/SConscript') if env['platform'] != 'embedded': SConscript('egl/main/SConscript') + SConscript('glu/sgi/SConscript') SConscript('glut/glx/SConscript') if env['gles']: diff --git a/src/egl/drivers/dri2/egl_dri2.c b/src/egl/drivers/dri2/egl_dri2.c index 5e47fbe126a..afab679bff6 100644 --- a/src/egl/drivers/dri2/egl_dri2.c +++ b/src/egl/drivers/dri2/egl_dri2.c @@ -922,14 +922,11 @@ dri2_create_image_mesa_drm_buffer(_EGLDisplay *disp, _EGLContext *ctx, return &dri2_img->base; } -static EGLBoolean -dri2_export_drm_image_mesa(_EGLDriver *drv, _EGLDisplay *disp, _EGLImage *img, - EGLint *name, EGLint *handle, EGLint *stride); - static _EGLImage * dri2_reference_drm_image(_EGLDisplay *disp, _EGLContext *ctx, - _EGLImage *image, EGLint width, EGLint height) + __DRIimage *dri_image, EGLint width, EGLint height) { + struct dri2_egl_display *dri2_dpy = dri2_egl_display(disp); EGLint attr_list[] = { EGL_WIDTH, 0, EGL_HEIGHT, 0, @@ -939,8 +936,8 @@ dri2_reference_drm_image(_EGLDisplay *disp, _EGLContext *ctx, }; EGLint name, stride; - dri2_export_drm_image_mesa(disp->Driver, disp, image, - &name, NULL, &stride); + dri2_dpy->image->queryImage(dri_image, __DRI_IMAGE_ATTRIB_NAME, &name); + dri2_dpy->image->queryImage(dri_image, __DRI_IMAGE_ATTRIB_STRIDE, &stride); attr_list[1] = width; attr_list[3] = height; @@ -954,16 +951,19 @@ dri2_reference_drm_image(_EGLDisplay *disp, _EGLContext *ctx, #ifdef HAVE_WAYLAND_PLATFORM static _EGLImage * dri2_create_image_wayland_wl_buffer(_EGLDisplay *disp, _EGLContext *ctx, - EGLClientBuffer buffer, + EGLClientBuffer _buffer, const EGLint *attr_list) { - struct wl_drm_buffer *wl_drm_buffer = (struct wl_drm_buffer *) buffer; + struct wl_buffer *buffer = (struct wl_buffer *) _buffer; + (void) attr_list; - (void) attr_list; + if (!wayland_buffer_is_drm(buffer)) + return NULL; - return dri2_reference_drm_image(disp, ctx, wl_drm_buffer->image, - wl_drm_buffer->buffer.width, - wl_drm_buffer->buffer.height); + return dri2_reference_drm_image(disp, ctx, + wayland_drm_buffer_get_buffer(buffer), + buffer->width, + buffer->height); } #endif @@ -1054,7 +1054,8 @@ dri2_create_drm_image_mesa(_EGLDriver *drv, _EGLDisplay *disp, valid_mask = EGL_DRM_BUFFER_USE_SCANOUT_MESA | - EGL_DRM_BUFFER_USE_SHARE_MESA; + EGL_DRM_BUFFER_USE_SHARE_MESA | + EGL_DRM_BUFFER_USE_CURSOR_MESA; if (attrs.DRMBufferUseMESA & ~valid_mask) { _eglLog(_EGL_WARNING, "bad image use bit 0x%04x", attrs.DRMBufferUseMESA & ~valid_mask); @@ -1066,6 +1067,8 @@ dri2_create_drm_image_mesa(_EGLDriver *drv, _EGLDisplay *disp, dri_use |= __DRI_IMAGE_USE_SHARE; if (attrs.DRMBufferUseMESA & EGL_DRM_BUFFER_USE_SCANOUT_MESA) dri_use |= __DRI_IMAGE_USE_SCANOUT; + if (attrs.DRMBufferUseMESA & EGL_DRM_BUFFER_USE_CURSOR_MESA) + dri_use |= __DRI_IMAGE_USE_CURSOR; dri2_img->dri_image = dri2_dpy->image->createImage(dri2_dpy->dri_screen, @@ -1112,6 +1115,41 @@ dri2_export_drm_image_mesa(_EGLDriver *drv, _EGLDisplay *disp, _EGLImage *img, } #ifdef HAVE_WAYLAND_PLATFORM + +static void * +dri2_wl_reference_buffer(void *user_data, uint32_t name, + int32_t width, int32_t height, + uint32_t stride, struct wl_visual *visual) +{ + _EGLDisplay *disp = user_data; + struct dri2_egl_display *dri2_dpy = dri2_egl_display(disp); + __DRIimage *image; + + image = dri2_dpy->image->createImageFromName(dri2_dpy->dri_screen, + width, height, + __DRI_IMAGE_FORMAT_ARGB8888, + name, stride / 4, + NULL); + + return image; +} + +static void +dri2_wl_release_buffer(void *user_data, void *buffer) +{ + _EGLDisplay *disp = user_data; + __DRIimage *image = buffer; + struct dri2_egl_display *dri2_dpy = dri2_egl_display(disp); + + dri2_dpy->image->destroyImage(image); +} + +static struct wayland_drm_callbacks wl_drm_callbacks = { + .authenticate = NULL, + .reference_buffer = dri2_wl_reference_buffer, + .release_buffer = dri2_wl_release_buffer +}; + static EGLBoolean dri2_bind_wayland_display_wl(_EGLDriver *drv, _EGLDisplay *disp, struct wl_display *wl_dpy) @@ -1123,10 +1161,12 @@ dri2_bind_wayland_display_wl(_EGLDriver *drv, _EGLDisplay *disp, if (dri2_dpy->wl_server_drm) return EGL_FALSE; + wl_drm_callbacks.authenticate = + (int(*)(void *, uint32_t)) dri2_dpy->authenticate; + dri2_dpy->wl_server_drm = - wayland_drm_init(wl_dpy, disp, - dri2_dpy->authenticate, - dri2_dpy->device_name); + wayland_drm_init(wl_dpy, dri2_dpy->device_name, + &wl_drm_callbacks, disp); if (!dri2_dpy->wl_server_drm) return EGL_FALSE; @@ -1145,7 +1185,7 @@ dri2_unbind_wayland_display_wl(_EGLDriver *drv, _EGLDisplay *disp, if (!dri2_dpy->wl_server_drm) return EGL_FALSE; - wayland_drm_destroy(dri2_dpy->wl_server_drm); + wayland_drm_uninit(dri2_dpy->wl_server_drm); dri2_dpy->wl_server_drm = NULL; return EGL_TRUE; diff --git a/src/egl/drivers/dri2/platform_drm.c b/src/egl/drivers/dri2/platform_drm.c index 9c6d3ddac22..68912e36732 100644 --- a/src/egl/drivers/dri2/platform_drm.c +++ b/src/egl/drivers/dri2/platform_drm.c @@ -488,6 +488,7 @@ const int r600_chip_ids[] = { 0x68E8, /* PCI_CHIP_CEDAR_68E8 */ 0x68E9, /* PCI_CHIP_CEDAR_68E9 */ 0x68F1, /* PCI_CHIP_CEDAR_68F1 */ + 0x68F2, /* PCI_CHIP_CEDAR_68F2 */ 0x68F8, /* PCI_CHIP_CEDAR_68F8 */ 0x68F9, /* PCI_CHIP_CEDAR_68F9 */ 0x68FE, /* PCI_CHIP_CEDAR_68FE */ @@ -506,13 +507,16 @@ const int r600_chip_ids[] = { 0x68B0, /* PCI_CHIP_JUNIPER_68B0 */ 0x68B8, /* PCI_CHIP_JUNIPER_68B8 */ 0x68B9, /* PCI_CHIP_JUNIPER_68B9 */ + 0x68BA, /* PCI_CHIP_JUNIPER_68BA */ 0x68BE, /* PCI_CHIP_JUNIPER_68BE */ + 0x68BF, /* PCI_CHIP_JUNIPER_68BF */ 0x6880, /* PCI_CHIP_CYPRESS_6880 */ 0x6888, /* PCI_CHIP_CYPRESS_6888 */ 0x6889, /* PCI_CHIP_CYPRESS_6889 */ 0x688A, /* PCI_CHIP_CYPRESS_688A */ 0x6898, /* PCI_CHIP_CYPRESS_6898 */ 0x6899, /* PCI_CHIP_CYPRESS_6899 */ + 0x689B, /* PCI_CHIP_CYPRESS_689B */ 0x689E, /* PCI_CHIP_CYPRESS_689E */ 0x689C, /* PCI_CHIP_HEMLOCK_689C */ 0x689D, /* PCI_CHIP_HEMLOCK_689D */ @@ -520,6 +524,8 @@ const int r600_chip_ids[] = { 0x9803, /* PCI_CHIP_PALM_9803 */ 0x9804, /* PCI_CHIP_PALM_9804 */ 0x9805, /* PCI_CHIP_PALM_9805 */ + 0x9806, /* PCI_CHIP_PALM_9806 */ + 0x9807, /* PCI_CHIP_PALM_9807 */ 0x6720, /* PCI_CHIP_BARTS_6720 */ 0x6721, /* PCI_CHIP_BARTS_6721 */ 0x6722, /* PCI_CHIP_BARTS_6722 */ @@ -532,6 +538,7 @@ const int r600_chip_ids[] = { 0x6729, /* PCI_CHIP_BARTS_6729 */ 0x6738, /* PCI_CHIP_BARTS_6738 */ 0x6739, /* PCI_CHIP_BARTS_6738 */ + 0x673E, /* PCI_CHIP_BARTS_673E */ 0x6740, /* PCI_CHIP_TURKS_6740 */ 0x6741, /* PCI_CHIP_TURKS_6741 */ 0x6742, /* PCI_CHIP_TURKS_6742 */ diff --git a/src/egl/drivers/dri2/platform_wayland.c b/src/egl/drivers/dri2/platform_wayland.c index 030c68777af..1b75ffea0c5 100644 --- a/src/egl/drivers/dri2/platform_wayland.c +++ b/src/egl/drivers/dri2/platform_wayland.c @@ -680,7 +680,7 @@ dri2_initialize_wayland(_EGLDriver *drv, _EGLDisplay *disp) id = wl_display_get_global(dri2_dpy->wl_dpy, "wl_drm", 1); if (id == 0) - wl_display_iterate(dri2_dpy->wl_dpy, WL_DISPLAY_READABLE); + force_roundtrip(dri2_dpy->wl_dpy); id = wl_display_get_global(dri2_dpy->wl_dpy, "wl_drm", 1); if (id == 0) goto cleanup_dpy; diff --git a/src/egl/main/eglapi.c b/src/egl/main/eglapi.c index 19dfd574268..336ec23da5a 100644 --- a/src/egl/main/eglapi.c +++ b/src/egl/main/eglapi.c @@ -914,7 +914,7 @@ eglGetProcAddress(const char *procname) { "eglCreateDRMImageMESA", (_EGLProc) eglCreateDRMImageMESA }, { "eglExportDRMImageMESA", (_EGLProc) eglExportDRMImageMESA }, #endif -#ifdef EGL_WL_bind_display +#ifdef EGL_WL_bind_wayland_display { "eglBindWaylandDisplayWL", (_EGLProc) eglBindWaylandDisplayWL }, { "eglUnbindWaylandDisplayWL", (_EGLProc) eglUnbindWaylandDisplayWL }, #endif diff --git a/src/egl/wayland/wayland-drm/wayland-drm.c b/src/egl/wayland/wayland-drm/wayland-drm.c index 3d5cb399e57..03a756bf0a3 100644 --- a/src/egl/wayland/wayland-drm/wayland-drm.c +++ b/src/egl/wayland/wayland-drm/wayland-drm.c @@ -1,5 +1,6 @@ /* * Copyright © 2011 Kristian Høgsberg + * Copyright © 2011 Benjamin Franzke * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -35,19 +36,21 @@ #include "wayland-drm.h" #include "wayland-drm-server-protocol.h" -#include "egldisplay.h" -#include "egldriver.h" -#include "eglimage.h" -#include "egltypedefs.h" - struct wl_drm { struct wl_object object; struct wl_display *display; - _EGLDisplay *edisp; - + void *user_data; char *device_name; - authenticate_t authenticate; + + struct wayland_drm_callbacks *callbacks; +}; + +struct wl_drm_buffer { + struct wl_buffer buffer; + struct wl_drm *drm; + + void *driver_buffer; }; static void @@ -60,19 +63,20 @@ static void destroy_buffer(struct wl_resource *resource, struct wl_client *client) { struct wl_drm_buffer *buffer = (struct wl_drm_buffer *) resource; - _EGLDriver *drv = buffer->drm->edisp->Driver; + struct wl_drm *drm = buffer->drm; - drv->API.DestroyImageKHR(drv, buffer->drm->edisp, buffer->image); + drm->callbacks->release_buffer(drm->user_data, + buffer->driver_buffer); free(buffer); } static void buffer_destroy(struct wl_client *client, struct wl_buffer *buffer) { - wl_resource_destroy(&buffer->resource, client); + wl_resource_destroy(&buffer->resource, client, 0); } -const static struct wl_buffer_interface buffer_interface = { +const static struct wl_buffer_interface drm_buffer_interface = { buffer_damage, buffer_destroy }; @@ -83,14 +87,6 @@ drm_create_buffer(struct wl_client *client, struct wl_drm *drm, uint32_t stride, struct wl_visual *visual) { struct wl_drm_buffer *buffer; - EGLint attribs[] = { - EGL_WIDTH, 0, - EGL_HEIGHT, 0, - EGL_DRM_BUFFER_STRIDE_MESA, 0, - EGL_DRM_BUFFER_FORMAT_MESA, EGL_DRM_BUFFER_FORMAT_ARGB32_MESA, - EGL_NONE - }; - _EGLDriver *drv = drm->edisp->Driver; buffer = malloc(sizeof *buffer); if (buffer == NULL) { @@ -114,16 +110,12 @@ drm_create_buffer(struct wl_client *client, struct wl_drm *drm, return; } - attribs[1] = width; - attribs[3] = height; - attribs[5] = stride / 4; - buffer->image = drv->API.CreateImageKHR(drv, drm->edisp, - EGL_NO_CONTEXT, - EGL_DRM_BUFFER_MESA, - (EGLClientBuffer) (intptr_t) name, - attribs); + buffer->driver_buffer = + drm->callbacks->reference_buffer(drm->user_data, name, + width, height, + stride, visual); - if (buffer->image == NULL) { + if (buffer->driver_buffer == NULL) { /* FIXME: Define a real exception event instead of * abusing this one */ wl_client_post_event(client, @@ -136,7 +128,7 @@ drm_create_buffer(struct wl_client *client, struct wl_drm *drm, buffer->buffer.resource.object.id = id; buffer->buffer.resource.object.interface = &wl_buffer_interface; buffer->buffer.resource.object.implementation = (void (**)(void)) - &buffer_interface; + &drm_buffer_interface; buffer->buffer.resource.destroy = destroy_buffer; @@ -147,7 +139,7 @@ static void drm_authenticate(struct wl_client *client, struct wl_drm *drm, uint32_t id) { - if (drm->authenticate(drm->edisp, id) < 0) + if (drm->callbacks->authenticate(drm->user_data, id) < 0) wl_client_post_event(client, (struct wl_object *) drm->display, WL_DISPLAY_INVALID_OBJECT, 0); @@ -162,9 +154,7 @@ const static struct wl_drm_interface drm_interface = { }; static void -post_drm_device(struct wl_client *client, - struct wl_object *global, - uint32_t version) +post_drm_device(struct wl_client *client, struct wl_object *global) { struct wl_drm *drm = (struct wl_drm *) global; @@ -172,17 +162,17 @@ post_drm_device(struct wl_client *client, } struct wl_drm * -wayland_drm_init(struct wl_display *display, _EGLDisplay *disp, - authenticate_t authenticate, char *device_name) +wayland_drm_init(struct wl_display *display, char *device_name, + struct wayland_drm_callbacks *callbacks, void *user_data) { struct wl_drm *drm; drm = malloc(sizeof *drm); drm->display = display; - drm->edisp = disp; - drm->authenticate = authenticate; drm->device_name = strdup(device_name); + drm->callbacks = callbacks; + drm->user_data = user_data; drm->object.interface = &wl_drm_interface; drm->object.implementation = (void (**)(void)) &drm_interface; @@ -193,7 +183,7 @@ wayland_drm_init(struct wl_display *display, _EGLDisplay *disp, } void -wayland_drm_destroy(struct wl_drm *drm) +wayland_drm_uninit(struct wl_drm *drm) { free(drm->device_name); @@ -201,3 +191,18 @@ wayland_drm_destroy(struct wl_drm *drm) free(drm); } + +int +wayland_buffer_is_drm(struct wl_buffer *buffer) +{ + return buffer->resource.object.implementation == + (void (**)(void)) &drm_buffer_interface; +} + +void * +wayland_drm_buffer_get_buffer(struct wl_buffer *buffer_base) +{ + struct wl_drm_buffer *buffer = (struct wl_drm_buffer *) buffer_base; + + return buffer->driver_buffer; +} diff --git a/src/egl/wayland/wayland-drm/wayland-drm.h b/src/egl/wayland/wayland-drm/wayland-drm.h index 675a6a5ce43..4324b591425 100644 --- a/src/egl/wayland/wayland-drm/wayland-drm.h +++ b/src/egl/wayland/wayland-drm/wayland-drm.h @@ -8,19 +8,27 @@ struct wl_drm; -typedef int (*authenticate_t) (_EGLDisplay *disp, uint32_t id); +struct wayland_drm_callbacks { + int (*authenticate)(void *user_data, uint32_t id); -struct wl_drm_buffer { - struct wl_buffer buffer; - struct wl_drm *drm; - _EGLImage *image; + void *(*reference_buffer)(void *user_data, uint32_t name, + int32_t width, int32_t height, + uint32_t stride, struct wl_visual *visual); + + void (*release_buffer)(void *user_data, void *buffer); }; struct wl_drm * -wayland_drm_init(struct wl_display *display, _EGLDisplay *disp, - authenticate_t authenticate, char *device_name); +wayland_drm_init(struct wl_display *display, char *device_name, + struct wayland_drm_callbacks *callbacks, void *user_data); void -wayland_drm_destroy(struct wl_drm *drm); +wayland_drm_uninit(struct wl_drm *drm); + +int +wayland_buffer_is_drm(struct wl_buffer *buffer); + +void * +wayland_drm_buffer_get_buffer(struct wl_buffer *buffer); #endif diff --git a/src/gallium/auxiliary/draw/draw_context.h b/src/gallium/auxiliary/draw/draw_context.h index 7db75b71b43..5523e44563b 100644 --- a/src/gallium/auxiliary/draw/draw_context.h +++ b/src/gallium/auxiliary/draw/draw_context.h @@ -243,7 +243,7 @@ boolean draw_need_pipeline(const struct draw_context *draw, unsigned prim ); static INLINE int -draw_get_shader_param(unsigned shader, enum pipe_cap param) +draw_get_shader_param(unsigned shader, enum pipe_shader_cap param) { switch(shader) { case PIPE_SHADER_VERTEX: diff --git a/src/gallium/auxiliary/draw/draw_vertex.c b/src/gallium/auxiliary/draw/draw_vertex.c index a4f5e882c0a..a1b2b8ff975 100644 --- a/src/gallium/auxiliary/draw/draw_vertex.c +++ b/src/gallium/auxiliary/draw/draw_vertex.c @@ -60,10 +60,9 @@ draw_compute_vertex_size(struct vertex_info *vinfo) void draw_dump_emitted_vertex(const struct vertex_info *vinfo, const uint8_t *data) { - unsigned i, j; + unsigned i; for (i = 0; i < vinfo->num_attribs; i++) { - j = vinfo->attrib[i].src_index; switch (vinfo->attrib[i].emit) { case EMIT_OMIT: debug_printf("EMIT_OMIT:"); diff --git a/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c b/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c index d1585c8e2b7..d8adb9fbfaf 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c +++ b/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c @@ -2565,7 +2565,7 @@ lp_build_system_values_array(struct gallivm_state *gallivm, for (i = 0; i < info->num_system_values; i++) { LLVMValueRef index = lp_build_const_int32(gallivm, i * 4); - LLVMValueRef ptr, value; + LLVMValueRef ptr, value = 0; switch (info->system_value_semantic_name[i]) { case TGSI_SEMANTIC_INSTANCEID: diff --git a/src/gallium/auxiliary/os/os_time.c b/src/gallium/auxiliary/os/os_time.c index 84907215fe6..325f316784c 100644 --- a/src/gallium/auxiliary/os/os_time.c +++ b/src/gallium/auxiliary/os/os_time.c @@ -37,7 +37,7 @@ #if !defined(PIPE_OS_EMBEDDED) -#if defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD) || defined(PIPE_OS_SOLARIS) || defined(PIPE_OS_APPLE) || defined(PIPE_OS_HAIKU) || defined(PIPE_OS_CYGWIN) +#if defined(PIPE_OS_UNIX) # include <sys/time.h> /* timeval */ #elif defined(PIPE_SUBSYSTEM_WINDOWS_DISPLAY) # include <windows.h> diff --git a/src/gallium/auxiliary/rbug/rbug_context.c b/src/gallium/auxiliary/rbug/rbug_context.c index 36824058c7d..1188dd966e4 100644 --- a/src/gallium/auxiliary/rbug/rbug_context.c +++ b/src/gallium/auxiliary/rbug/rbug_context.c @@ -470,9 +470,6 @@ int rbug_send_context_draw_blocked(struct rbug_connection *__con, struct rbug_proto_context_list * rbug_demarshal_context_list(struct rbug_proto_header *header) { - uint32_t len = 0; - uint32_t pos = 0; - uint8_t *data = NULL; struct rbug_proto_context_list *ret; if (!header) @@ -480,9 +477,6 @@ struct rbug_proto_context_list * rbug_demarshal_context_list(struct rbug_proto_h if (header->opcode != (int32_t)RBUG_OP_CONTEXT_LIST) return NULL; - pos = 0; - len = header->length * 4; - data = (uint8_t*)&header[1]; ret = MALLOC(sizeof(*ret)); if (!ret) return NULL; @@ -490,7 +484,6 @@ struct rbug_proto_context_list * rbug_demarshal_context_list(struct rbug_proto_h ret->header.__message = header; ret->header.opcode = header->opcode; - return ret; } diff --git a/src/gallium/auxiliary/rbug/rbug_core.c b/src/gallium/auxiliary/rbug/rbug_core.c index 1d47d13c9f3..514a10932bc 100644 --- a/src/gallium/auxiliary/rbug/rbug_core.c +++ b/src/gallium/auxiliary/rbug/rbug_core.c @@ -226,9 +226,6 @@ int rbug_send_error_reply(struct rbug_connection *__con, struct rbug_proto_noop * rbug_demarshal_noop(struct rbug_proto_header *header) { - uint32_t len = 0; - uint32_t pos = 0; - uint8_t *data = NULL; struct rbug_proto_noop *ret; if (!header) @@ -236,9 +233,6 @@ struct rbug_proto_noop * rbug_demarshal_noop(struct rbug_proto_header *header) if (header->opcode != (int32_t)RBUG_OP_NOOP) return NULL; - pos = 0; - len = header->length * 4; - data = (uint8_t*)&header[1]; ret = MALLOC(sizeof(*ret)); if (!ret) return NULL; @@ -246,15 +240,11 @@ struct rbug_proto_noop * rbug_demarshal_noop(struct rbug_proto_header *header) ret->header.__message = header; ret->header.opcode = header->opcode; - return ret; } struct rbug_proto_ping * rbug_demarshal_ping(struct rbug_proto_header *header) { - uint32_t len = 0; - uint32_t pos = 0; - uint8_t *data = NULL; struct rbug_proto_ping *ret; if (!header) @@ -262,9 +252,6 @@ struct rbug_proto_ping * rbug_demarshal_ping(struct rbug_proto_header *header) if (header->opcode != (int32_t)RBUG_OP_PING) return NULL; - pos = 0; - len = header->length * 4; - data = (uint8_t*)&header[1]; ret = MALLOC(sizeof(*ret)); if (!ret) return NULL; @@ -272,7 +259,6 @@ struct rbug_proto_ping * rbug_demarshal_ping(struct rbug_proto_header *header) ret->header.__message = header; ret->header.opcode = header->opcode; - return ret; } diff --git a/src/gallium/auxiliary/rbug/rbug_texture.c b/src/gallium/auxiliary/rbug/rbug_texture.c index 2ad577915e8..017c8d0b99b 100644 --- a/src/gallium/auxiliary/rbug/rbug_texture.c +++ b/src/gallium/auxiliary/rbug/rbug_texture.c @@ -410,9 +410,6 @@ int rbug_send_texture_read_reply(struct rbug_connection *__con, struct rbug_proto_texture_list * rbug_demarshal_texture_list(struct rbug_proto_header *header) { - uint32_t len = 0; - uint32_t pos = 0; - uint8_t *data = NULL; struct rbug_proto_texture_list *ret; if (!header) @@ -420,9 +417,6 @@ struct rbug_proto_texture_list * rbug_demarshal_texture_list(struct rbug_proto_h if (header->opcode != (int32_t)RBUG_OP_TEXTURE_LIST) return NULL; - pos = 0; - len = header->length * 4; - data = (uint8_t*)&header[1]; ret = MALLOC(sizeof(*ret)); if (!ret) return NULL; @@ -430,7 +424,6 @@ struct rbug_proto_texture_list * rbug_demarshal_texture_list(struct rbug_proto_h ret->header.__message = header; ret->header.opcode = header->opcode; - return ret; } diff --git a/src/gallium/auxiliary/tgsi/tgsi_build.c b/src/gallium/auxiliary/tgsi/tgsi_build.c index d2cb98e84af..269940ec840 100644 --- a/src/gallium/auxiliary/tgsi/tgsi_build.c +++ b/src/gallium/auxiliary/tgsi/tgsi_build.c @@ -917,7 +917,6 @@ tgsi_build_full_instruction( for( i = 0; i < full_inst->Instruction.NumDstRegs; i++ ) { const struct tgsi_full_dst_register *reg = &full_inst->Dst[i]; struct tgsi_dst_register *dst_register; - struct tgsi_token *prev_token; if( maxsize <= size ) return 0; @@ -932,7 +931,6 @@ tgsi_build_full_instruction( reg->Register.Index, instruction, header ); - prev_token = (struct tgsi_token *) dst_register; if( reg->Register.Indirect ) { struct tgsi_src_register *ind; @@ -1001,7 +999,6 @@ tgsi_build_full_instruction( for( i = 0; i < full_inst->Instruction.NumSrcRegs; i++ ) { const struct tgsi_full_src_register *reg = &full_inst->Src[i]; struct tgsi_src_register *src_register; - struct tgsi_token *prev_token; if( maxsize <= size ) return 0; @@ -1021,7 +1018,6 @@ tgsi_build_full_instruction( reg->Register.Index, instruction, header ); - prev_token = (struct tgsi_token *) src_register; if( reg->Register.Indirect ) { struct tgsi_src_register *ind; diff --git a/src/gallium/auxiliary/util/u_format.csv b/src/gallium/auxiliary/util/u_format.csv index e4b3f5df6ee..347e2beb8dd 100644 --- a/src/gallium/auxiliary/util/u_format.csv +++ b/src/gallium/auxiliary/util/u_format.csv @@ -147,7 +147,7 @@ PIPE_FORMAT_G8R8_G8B8_UNORM , subsampled, 2, 1, x32 , , , , xyz # some special formats not fitting anywhere else PIPE_FORMAT_R10G10B10A2_USCALED , plain, 1, 1, u10 , u10 , u10 , u2 , xyzw, rgb -PIPE_FORMAT_R11G11B10_FLOAT , plain, 1, 1, f11 , f11 , f10 , , xyz1, rgb +PIPE_FORMAT_R11G11B10_FLOAT , other, 1, 1, x32 , , , , xyz1, rgb PIPE_FORMAT_R9G9B9E5_FLOAT , other, 1, 1, x32 , , , , xyz1, rgb PIPE_FORMAT_R1_UNORM , other, 8, 1, x8 , , , , x001, rgb # A.k.a. D3DFMT_CxV8U8 diff --git a/src/gallium/auxiliary/util/u_format_other.c b/src/gallium/auxiliary/util/u_format_other.c index fa42ec37138..c23f4ee4ac5 100644 --- a/src/gallium/auxiliary/util/u_format_other.c +++ b/src/gallium/auxiliary/util/u_format_other.c @@ -28,6 +28,8 @@ #include "u_math.h" #include "u_format_other.h" +#include "u_format_rgb9e5.h" +#include "u_format_r11g11b10f.h" void @@ -35,7 +37,23 @@ util_format_r9g9b9e5_float_unpack_rgba_float(float *dst_row, unsigned dst_stride const uint8_t *src_row, unsigned src_stride, unsigned width, unsigned height) { - + unsigned x, y; + for(y = 0; y < height; y += 1) { + float *dst = dst_row; + const uint8_t *src = src_row; + for(x = 0; x < width; x += 1) { + uint32_t value = *(const uint32_t *)src; +#ifdef PIPE_ARCH_BIG_ENDIAN + value = util_bswap32(value); +#endif + rgb9e5_to_float3(value, dst); + dst[3] = 1; /* a */ + src += 4; + dst += 4; + } + src_row += src_stride; + dst_row += dst_stride/sizeof(*dst_row); + } } void @@ -43,14 +61,34 @@ util_format_r9g9b9e5_float_pack_rgba_float(uint8_t *dst_row, unsigned dst_stride const float *src_row, unsigned src_stride, unsigned width, unsigned height) { - + unsigned x, y; + for(y = 0; y < height; y += 1) { + const float *src = src_row; + uint8_t *dst = dst_row; + for(x = 0; x < width; x += 1) { + uint32_t value = float3_to_rgb9e5(src); +#ifdef PIPE_ARCH_BIG_ENDIAN + value = util_bswap32(value); +#endif + *(uint32_t *)dst = value; + src += 4; + dst += 4; + } + dst_row += dst_stride; + src_row += src_stride/sizeof(*src_row); + } } void util_format_r9g9b9e5_float_fetch_rgba_float(float *dst, const uint8_t *src, unsigned i, unsigned j) { - + uint32_t value = *(const uint32_t *)src; +#ifdef PIPE_ARCH_BIG_ENDIAN + value = util_bswap32(value); +#endif + rgb9e5_to_float3(value, dst); + dst[3] = 1; /* a */ } @@ -59,7 +97,27 @@ util_format_r9g9b9e5_float_unpack_rgba_8unorm(uint8_t *dst_row, unsigned dst_str const uint8_t *src_row, unsigned src_stride, unsigned width, unsigned height) { - + unsigned x, y; + float p[3]; + for(y = 0; y < height; y += 1) { + uint8_t *dst = dst_row; + const uint8_t *src = src_row; + for(x = 0; x < width; x += 1) { + uint32_t value = *(const uint32_t *)src; +#ifdef PIPE_ARCH_BIG_ENDIAN + value = util_bswap32(value); +#endif + rgb9e5_to_float3(value, p); + dst[0] = float_to_ubyte(p[0]); /* r */ + dst[1] = float_to_ubyte(p[1]); /* g */ + dst[2] = float_to_ubyte(p[2]); /* b */ + dst[3] = 255; /* a */ + src += 4; + dst += 4; + } + src_row += src_stride; + dst_row += dst_stride/sizeof(*dst_row); + } } @@ -68,7 +126,145 @@ util_format_r9g9b9e5_float_pack_rgba_8unorm(uint8_t *dst_row, unsigned dst_strid const uint8_t *src_row, unsigned src_stride, unsigned width, unsigned height) { + unsigned x, y; + float p[3]; + for(y = 0; y < height; y += 1) { + const uint8_t *src = src_row; + uint8_t *dst = dst_row; + for(x = 0; x < width; x += 1) { + uint32_t value; + p[0] = ubyte_to_float(src[0]); + p[1] = ubyte_to_float(src[1]); + p[2] = ubyte_to_float(src[2]); + value = float3_to_rgb9e5(p); +#ifdef PIPE_ARCH_BIG_ENDIAN + value = util_bswap32(value); +#endif + *(uint32_t *)dst = value; + src += 4; + dst += 4; + } + dst_row += dst_stride; + src_row += src_stride/sizeof(*src_row); + } +} + +void +util_format_r11g11b10_float_unpack_rgba_float(float *dst_row, unsigned dst_stride, + const uint8_t *src_row, unsigned src_stride, + unsigned width, unsigned height) +{ + unsigned x, y; + for(y = 0; y < height; y += 1) { + float *dst = dst_row; + const uint8_t *src = src_row; + for(x = 0; x < width; x += 1) { + uint32_t value = *(const uint32_t *)src; +#ifdef PIPE_ARCH_BIG_ENDIAN + value = util_bswap32(value); +#endif + r11g11b10f_to_float3(value, dst); + dst[3] = 1; /* a */ + src += 4; + dst += 4; + } + src_row += src_stride; + dst_row += dst_stride/sizeof(*dst_row); + } +} + +void +util_format_r11g11b10_float_pack_rgba_float(uint8_t *dst_row, unsigned dst_stride, + const float *src_row, unsigned src_stride, + unsigned width, unsigned height) +{ + unsigned x, y; + for(y = 0; y < height; y += 1) { + const float *src = src_row; + uint8_t *dst = dst_row; + for(x = 0; x < width; x += 1) { + uint32_t value = float3_to_r11g11b10f(src); +#ifdef PIPE_ARCH_BIG_ENDIAN + value = util_bswap32(value); +#endif + *(uint32_t *)dst = value; + src += 4; + dst += 4; + } + dst_row += dst_stride; + src_row += src_stride/sizeof(*src_row); + } +} + +void +util_format_r11g11b10_float_fetch_rgba_float(float *dst, const uint8_t *src, + unsigned i, unsigned j) +{ + uint32_t value = *(const uint32_t *)src; +#ifdef PIPE_ARCH_BIG_ENDIAN + value = util_bswap32(value); +#endif + r11g11b10f_to_float3(value, dst); + dst[3] = 1; /* a */ +} + + +void +util_format_r11g11b10_float_unpack_rgba_8unorm(uint8_t *dst_row, unsigned dst_stride, + const uint8_t *src_row, unsigned src_stride, + unsigned width, unsigned height) +{ + unsigned x, y; + float p[3]; + for(y = 0; y < height; y += 1) { + uint8_t *dst = dst_row; + const uint8_t *src = src_row; + for(x = 0; x < width; x += 1) { + uint32_t value = *(const uint32_t *)src; +#ifdef PIPE_ARCH_BIG_ENDIAN + value = util_bswap32(value); +#endif + r11g11b10f_to_float3(value, p); + dst[0] = float_to_ubyte(p[0]); /* r */ + dst[1] = float_to_ubyte(p[1]); /* g */ + dst[2] = float_to_ubyte(p[2]); /* b */ + dst[3] = 255; /* a */ + src += 4; + dst += 4; + } + src_row += src_stride; + dst_row += dst_stride/sizeof(*dst_row); + } +} + + +void +util_format_r11g11b10_float_pack_rgba_8unorm(uint8_t *dst_row, unsigned dst_stride, + const uint8_t *src_row, unsigned src_stride, + unsigned width, unsigned height) +{ + unsigned x, y; + float p[3]; + for(y = 0; y < height; y += 1) { + const uint8_t *src = src_row; + uint8_t *dst = dst_row; + for(x = 0; x < width; x += 1) { + uint32_t value; + p[0] = ubyte_to_float(src[0]); + p[1] = ubyte_to_float(src[1]); + p[2] = ubyte_to_float(src[2]); + value = float3_to_r11g11b10f(p); +#ifdef PIPE_ARCH_BIG_ENDIAN + value = util_bswap32(value); +#endif + *(uint32_t *)dst = value; + src += 4; + dst += 4; + } + dst_row += dst_stride; + src_row += src_stride/sizeof(*src_row); + } } diff --git a/src/gallium/auxiliary/util/u_format_other.h b/src/gallium/auxiliary/util/u_format_other.h index 98c97be33fa..2f6a908bbe8 100644 --- a/src/gallium/auxiliary/util/u_format_other.h +++ b/src/gallium/auxiliary/util/u_format_other.h @@ -57,6 +57,32 @@ util_format_r9g9b9e5_float_pack_rgba_8unorm(uint8_t *dst_row, unsigned dst_strid const uint8_t *src_row, unsigned src_stride, unsigned width, unsigned height); + +void +util_format_r11g11b10_float_unpack_rgba_float(float *dst_row, unsigned dst_stride, + const uint8_t *src_row, unsigned src_stride, + unsigned width, unsigned height); + +void +util_format_r11g11b10_float_pack_rgba_float(uint8_t *dst_row, unsigned dst_stride, + const float *src_row, unsigned src_stride, + unsigned width, unsigned height); + +void +util_format_r11g11b10_float_fetch_rgba_float(float *dst, const uint8_t *src, + unsigned i, unsigned j); + +void +util_format_r11g11b10_float_unpack_rgba_8unorm(uint8_t *dst_row, unsigned dst_stride, + const uint8_t *src_row, unsigned src_stride, + unsigned width, unsigned height); + +void +util_format_r11g11b10_float_pack_rgba_8unorm(uint8_t *dst_row, unsigned dst_stride, + const uint8_t *src_row, unsigned src_stride, + unsigned width, unsigned height); + + void util_format_r1_unorm_unpack_rgba_float(float *dst_row, unsigned dst_stride, const uint8_t *src_row, unsigned src_stride, diff --git a/src/gallium/auxiliary/util/u_format_r11g11b10f.h b/src/gallium/auxiliary/util/u_format_r11g11b10f.h new file mode 100644 index 00000000000..c4181d0e34e --- /dev/null +++ b/src/gallium/auxiliary/util/u_format_r11g11b10f.h @@ -0,0 +1,190 @@ +/* + * Copyright (C) 2011 Marek Olšák <[email protected]> + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice (including the next + * paragraph) shall be included in all copies or substantial portions of the + * Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + */ + +/* Based on code from The OpenGL Programming Guide / 7th Edition, Appendix J. + * Available here: http://www.opengl-redbook.com/appendices/ + * The algorithm in the book contains a bug though, which is fixed in the code + * below. + */ + +#define UF11_EXPONENT_BIAS 15 +#define UF11_EXPONENT_BITS 0x1F +#define UF11_EXPONENT_SHIFT 6 +#define UF11_MANTISSA_BITS 0x3F +#define UF11_MANTISSA_SHIFT (23 - UF11_EXPONENT_SHIFT) +#define UF11_MAX_EXPONENT (UF11_EXPONENT_BITS << UF11_EXPONENT_SHIFT) + +#define UF10_EXPONENT_BIAS 15 +#define UF10_EXPONENT_BITS 0x1F +#define UF10_EXPONENT_SHIFT 5 +#define UF10_MANTISSA_BITS 0x3F +#define UF10_MANTISSA_SHIFT (23 - UF10_EXPONENT_SHIFT) +#define UF10_MAX_EXPONENT (UF10_EXPONENT_BITS << UF10_EXPONENT_SHIFT) + +#define F32_INFINITY 0x7f800000 + +static INLINE unsigned f32_to_uf11(float val) +{ + uint32_t f32 = (*(uint32_t *) &val); + uint16_t uf11 = 0; + + /* Decode little-endian 32-bit floating-point value */ + int sign = (f32 >> 16) & 0x8000; + /* Map exponent to the range [-127,128] */ + int exponent = ((f32 >> 23) & 0xff) - 127; + int mantissa = f32 & 0x007fffff; + + if (sign) return 0; + + if (exponent == 128) { /* Infinity or NaN */ + uf11 = UF11_MAX_EXPONENT; + if (mantissa) uf11 |= (mantissa & UF11_MANTISSA_BITS); + } + else if (exponent > 15) { /* Overflow - flush to Infinity */ + uf11 = UF11_MAX_EXPONENT; + } + else if (exponent > -15) { /* Representable value */ + exponent += UF11_EXPONENT_BIAS; + mantissa >>= UF11_MANTISSA_SHIFT; + uf11 = exponent << UF11_EXPONENT_SHIFT | mantissa; + } + + return uf11; +} + +static INLINE float uf11_to_f32(uint16_t val) +{ + union { + float f; + uint32_t ui; + } f32; + + int exponent = (val & 0x07c0) >> UF11_EXPONENT_SHIFT; + int mantissa = (val & 0x003f); + + f32.f = 0.0; + + if (exponent == 0) { + if (mantissa != 0) { + const float scale = 1.0 / (1 << 20); + f32.f = scale * mantissa; + } + } + else if (exponent == 31) { + f32.ui = F32_INFINITY | mantissa; + } + else { + float scale, decimal; + exponent -= 15; + if (exponent < 0) { + scale = 1.0 / (1 << -exponent); + } + else { + scale = 1 << exponent; + } + decimal = 1.0 + (float) mantissa / 64; + f32.f = scale * decimal; + } + + return f32.f; +} + +static INLINE unsigned f32_to_uf10(float val) +{ + uint32_t f32 = (*(uint32_t *) &val); + uint16_t uf10 = 0; + + /* Decode little-endian 32-bit floating-point value */ + int sign = (f32 >> 16) & 0x8000; + /* Map exponent to the range [-127,128] */ + int exponent = ((f32 >> 23) & 0xff) - 127; + int mantissa = f32 & 0x007fffff; + + if (sign) return 0; + + if (exponent == 128) { /* Infinity or NaN */ + uf10 = UF10_MAX_EXPONENT; + if (mantissa) uf10 |= (mantissa & UF10_MANTISSA_BITS); + } + else if (exponent > 15) { /* Overflow - flush to Infinity */ + uf10 = UF10_MAX_EXPONENT; + } + else if (exponent > -15) { /* Representable value */ + exponent += UF10_EXPONENT_BIAS; + mantissa >>= UF10_MANTISSA_SHIFT; + uf10 = exponent << UF10_EXPONENT_SHIFT | mantissa; + } + + return uf10; +} + +static INLINE float uf10_to_f32(uint16_t val) +{ + union { + float f; + uint32_t ui; + } f32; + + int exponent = (val & 0x07c0) >> UF10_EXPONENT_SHIFT; + int mantissa = (val & 0x003f); + + f32.f = 0.0; + + if (exponent == 0) { + if (mantissa != 0) { + const float scale = 1.0 / (1 << 20); + f32.f = scale * mantissa; + } + } + else if (exponent == 31) { + f32.ui = F32_INFINITY | mantissa; + } + else { + float scale, decimal; + exponent -= 15; + if (exponent < 0) { + scale = 1.0 / (1 << -exponent); + } + else { + scale = 1 << exponent; + } + decimal = 1.0 + (float) mantissa / 32; + f32.f = scale * decimal; + } + + return f32.f; +} + +static INLINE unsigned float3_to_r11g11b10f(const float rgb[3]) +{ + return ( f32_to_uf11(rgb[0]) & 0x7ff) | + ((f32_to_uf11(rgb[1]) & 0x7ff) << 11) | + ((f32_to_uf10(rgb[2]) & 0x3ff) << 22); +} + +static INLINE void r11g11b10f_to_float3(unsigned rgb, float retval[3]) +{ + retval[0] = uf11_to_f32( rgb & 0x7ff); + retval[1] = uf11_to_f32((rgb >> 11) & 0x7ff); + retval[2] = uf10_to_f32((rgb >> 22) & 0x3ff); +} diff --git a/src/gallium/auxiliary/util/u_format_rgb9e5.h b/src/gallium/auxiliary/util/u_format_rgb9e5.h new file mode 100644 index 00000000000..c2a3f6f3e9d --- /dev/null +++ b/src/gallium/auxiliary/util/u_format_rgb9e5.h @@ -0,0 +1,164 @@ +/* + * Copyright (C) 2011 Marek Olšák <[email protected]> + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice (including the next + * paragraph) shall be included in all copies or substantial portions of the + * Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + */ + +/* Copied from EXT_texture_shared_exponent and edited. */ + +#ifndef RGB9E5_H +#define RGB9E5_H + +#include <math.h> +#include <assert.h> + +#define RGB9E5_EXPONENT_BITS 5 +#define RGB9E5_MANTISSA_BITS 9 +#define RGB9E5_EXP_BIAS 15 +#define RGB9E5_MAX_VALID_BIASED_EXP 31 + +#define MAX_RGB9E5_EXP (RGB9E5_MAX_VALID_BIASED_EXP - RGB9E5_EXP_BIAS) +#define RGB9E5_MANTISSA_VALUES (1<<RGB9E5_MANTISSA_BITS) +#define MAX_RGB9E5_MANTISSA (RGB9E5_MANTISSA_VALUES-1) +#define MAX_RGB9E5 (((float)MAX_RGB9E5_MANTISSA)/RGB9E5_MANTISSA_VALUES * (1<<MAX_RGB9E5_EXP)) +#define EPSILON_RGB9E5 ((1.0/RGB9E5_MANTISSA_VALUES) / (1<<RGB9E5_EXP_BIAS)) + +typedef union { + unsigned int raw; + float value; + struct { +#if defined(MESA_BIG_ENDIAN) || defined(PIPE_ARCH_BIG_ENDIAN) + unsigned int negative:1; + unsigned int biasedexponent:8; + unsigned int mantissa:23; +#else + unsigned int mantissa:23; + unsigned int biasedexponent:8; + unsigned int negative:1; +#endif + } field; +} float754; + +typedef union { + unsigned int raw; + struct { +#if defined(MESA_BIG_ENDIAN) || defined(PIPE_ARCH_BIG_ENDIAN) + unsigned int biasedexponent:RGB9E5_EXPONENT_BITS; + unsigned int b:RGB9E5_MANTISSA_BITS; + unsigned int g:RGB9E5_MANTISSA_BITS; + unsigned int r:RGB9E5_MANTISSA_BITS; +#else + unsigned int r:RGB9E5_MANTISSA_BITS; + unsigned int g:RGB9E5_MANTISSA_BITS; + unsigned int b:RGB9E5_MANTISSA_BITS; + unsigned int biasedexponent:RGB9E5_EXPONENT_BITS; +#endif + } field; +} rgb9e5; + +static INLINE float rgb9e5_ClampRange(float x) +{ + if (x > 0.0) { + if (x >= MAX_RGB9E5) { + return MAX_RGB9E5; + } else { + return x; + } + } else { + /* NaN gets here too since comparisons with NaN always fail! */ + return 0.0; + } +} + +/* Ok, FloorLog2 is not correct for the denorm and zero values, but we + are going to do a max of this value with the minimum rgb9e5 exponent + that will hide these problem cases. */ +static INLINE int rgb9e5_FloorLog2(float x) +{ + float754 f; + + f.value = x; + return (f.field.biasedexponent - 127); +} + +static INLINE unsigned float3_to_rgb9e5(const float rgb[3]) +{ + rgb9e5 retval; + float maxrgb; + int rm, gm, bm; + float rc, gc, bc; + int exp_shared, maxm; + double denom; + + rc = rgb9e5_ClampRange(rgb[0]); + gc = rgb9e5_ClampRange(rgb[1]); + bc = rgb9e5_ClampRange(rgb[2]); + + maxrgb = MAX3(rc, gc, bc); + exp_shared = MAX2(-RGB9E5_EXP_BIAS-1, rgb9e5_FloorLog2(maxrgb)) + 1 + RGB9E5_EXP_BIAS; + assert(exp_shared <= RGB9E5_MAX_VALID_BIASED_EXP); + assert(exp_shared >= 0); + /* This pow function could be replaced by a table. */ + denom = pow(2, exp_shared - RGB9E5_EXP_BIAS - RGB9E5_MANTISSA_BITS); + + maxm = (int) floor(maxrgb / denom + 0.5); + if (maxm == MAX_RGB9E5_MANTISSA+1) { + denom *= 2; + exp_shared += 1; + assert(exp_shared <= RGB9E5_MAX_VALID_BIASED_EXP); + } else { + assert(maxm <= MAX_RGB9E5_MANTISSA); + } + + rm = (int) floor(rc / denom + 0.5); + gm = (int) floor(gc / denom + 0.5); + bm = (int) floor(bc / denom + 0.5); + + assert(rm <= MAX_RGB9E5_MANTISSA); + assert(gm <= MAX_RGB9E5_MANTISSA); + assert(bm <= MAX_RGB9E5_MANTISSA); + assert(rm >= 0); + assert(gm >= 0); + assert(bm >= 0); + + retval.field.r = rm; + retval.field.g = gm; + retval.field.b = bm; + retval.field.biasedexponent = exp_shared; + + return retval.raw; +} + +static INLINE void rgb9e5_to_float3(unsigned rgb, float retval[3]) +{ + rgb9e5 v; + int exponent; + float scale; + + v.raw = rgb; + exponent = v.field.biasedexponent - RGB9E5_EXP_BIAS - RGB9E5_MANTISSA_BITS; + scale = (float) pow(2, exponent); + + retval[0] = v.field.r * scale; + retval[1] = v.field.g * scale; + retval[2] = v.field.b * scale; +} + +#endif diff --git a/src/gallium/auxiliary/util/u_math.h b/src/gallium/auxiliary/util/u_math.h index e3d4c06b6f9..dad6a101fd7 100644 --- a/src/gallium/auxiliary/util/u_math.h +++ b/src/gallium/auxiliary/util/u_math.h @@ -581,11 +581,11 @@ util_bswap16(uint16_t n) #define MIN2( A, B ) ( (A)<(B) ? (A) : (B) ) #define MAX2( A, B ) ( (A)>(B) ? (A) : (B) ) -#define MIN3( A, B, C ) MIN2( MIN2( A, B ), C ) -#define MAX3( A, B, C ) MAX2( MAX2( A, B ), C ) +#define MIN3( A, B, C ) ((A) < (B) ? MIN2(A, C) : MIN2(B, C)) +#define MAX3( A, B, C ) ((A) > (B) ? MAX2(A, C) : MAX2(B, C)) -#define MIN4( A, B, C, D ) MIN2( MIN2( A, B ), MIN2(C, D) ) -#define MAX4( A, B, C, D ) MAX2( MAX2( A, B ), MAX2(C, D) ) +#define MIN4( A, B, C, D ) ((A) < (B) ? MIN3(A, C, D) : MIN3(B, C, D)) +#define MAX4( A, B, C, D ) ((A) > (B) ? MAX3(A, C, D) : MAX3(B, C, D)) /** diff --git a/src/gallium/docs/source/cso/sampler.rst b/src/gallium/docs/source/cso/sampler.rst index 9bbb784de8e..648b5cc60ea 100644 --- a/src/gallium/docs/source/cso/sampler.rst +++ b/src/gallium/docs/source/cso/sampler.rst @@ -107,3 +107,7 @@ max_anisotropy Set to zero to disable anisotropic filtering. Any other setting enables anisotropic filtering, however it's not unexpected some drivers only will change their filtering with a setting of 2 and higher. +seamless_cube_map + If set, the bilinear filter of a cube map may take samples from adjacent + cube map faces when sampled near a texture border to produce a seamless + look.
\ No newline at end of file diff --git a/src/gallium/drivers/i915/i915_resource_texture.c b/src/gallium/drivers/i915/i915_resource_texture.c index 7816925d230..e05b059706d 100644 --- a/src/gallium/drivers/i915/i915_resource_texture.c +++ b/src/gallium/drivers/i915/i915_resource_texture.c @@ -181,8 +181,7 @@ i915_texture_tiling(struct i915_screen *is, struct i915_texture *tex) return I915_TILE_NONE; if (util_format_is_s3tc(tex->b.b.format)) - /* XXX X-tiling might make sense */ - return I915_TILE_NONE; + return I915_TILE_X; if (is->debug.use_blitter) return I915_TILE_X; diff --git a/src/gallium/drivers/i915/i915_screen.c b/src/gallium/drivers/i915/i915_screen.c index 0f4327fdc81..0e427749636 100644 --- a/src/gallium/drivers/i915/i915_screen.c +++ b/src/gallium/drivers/i915/i915_screen.c @@ -28,6 +28,7 @@ #include "draw/draw_context.h" #include "util/u_format.h" +#include "util/u_format_s3tc.h" #include "util/u_inlines.h" #include "util/u_memory.h" #include "util/u_string.h" @@ -267,6 +268,10 @@ i915_is_format_supported(struct pipe_screen *screen, PIPE_FORMAT_YUYV, /* XXX why not? PIPE_FORMAT_Z16_UNORM, */ + PIPE_FORMAT_DXT1_RGB, + PIPE_FORMAT_DXT1_RGBA, + PIPE_FORMAT_DXT3_RGBA, + PIPE_FORMAT_DXT5_RGBA, PIPE_FORMAT_Z24X8_UNORM, PIPE_FORMAT_Z24_UNORM_S8_USCALED, PIPE_FORMAT_NONE /* list terminator */ @@ -432,5 +437,7 @@ i915_screen_create(struct i915_winsys *iws) i915_debug_init(is); + util_format_s3tc_init(); + return &is->base; } diff --git a/src/gallium/drivers/i915/i915_state_sampler.c b/src/gallium/drivers/i915/i915_state_sampler.c index 916cb767536..be70e7a92c9 100644 --- a/src/gallium/drivers/i915/i915_state_sampler.c +++ b/src/gallium/drivers/i915/i915_state_sampler.c @@ -223,15 +223,13 @@ static uint translate_texture_format(enum pipe_format pipeFormat) #endif case PIPE_FORMAT_Z16_UNORM: return (MAPSURF_16BIT | MT_16BIT_L16); -#if 0 - case PIPE_FORMAT_RGBA_DXT1: - case PIPE_FORMAT_RGB_DXT1: + case PIPE_FORMAT_DXT1_RGBA: + case PIPE_FORMAT_DXT1_RGB: return (MAPSURF_COMPRESSED | MT_COMPRESS_DXT1); - case PIPE_FORMAT_RGBA_DXT3: + case PIPE_FORMAT_DXT3_RGBA: return (MAPSURF_COMPRESSED | MT_COMPRESS_DXT2_3); - case PIPE_FORMAT_RGBA_DXT5: + case PIPE_FORMAT_DXT5_RGBA: return (MAPSURF_COMPRESSED | MT_COMPRESS_DXT4_5); -#endif case PIPE_FORMAT_Z24_UNORM_S8_USCALED: case PIPE_FORMAT_Z24X8_UNORM: return (MAPSURF_32BIT | MT_32BIT_xI824); diff --git a/src/gallium/drivers/llvmpipe/lp_setup.c b/src/gallium/drivers/llvmpipe/lp_setup.c index c82ab821c7e..cbe06e58a78 100644 --- a/src/gallium/drivers/llvmpipe/lp_setup.c +++ b/src/gallium/drivers/llvmpipe/lp_setup.c @@ -1065,6 +1065,8 @@ lp_setup_begin_query(struct lp_setup_context *setup, set_scene_state(setup, SETUP_ACTIVE, "begin_query"); + setup->active_query = pq; + if (setup->scene) { if (!lp_scene_bin_everywhere(setup->scene, LP_RAST_OP_BEGIN_QUERY, @@ -1080,8 +1082,6 @@ lp_setup_begin_query(struct lp_setup_context *setup, } } } - - setup->active_query = pq; } diff --git a/src/gallium/drivers/nouveau/nouveau_mm.c b/src/gallium/drivers/nouveau/nouveau_mm.c index 7edeb4d21d6..6c6d28c17f6 100644 --- a/src/gallium/drivers/nouveau/nouveau_mm.c +++ b/src/gallium/drivers/nouveau/nouveau_mm.c @@ -143,7 +143,7 @@ mm_slab_new(struct nouveau_mman *cache, int chunk_order) cache->allocated += size; - debug_printf("MM: new slab, total memory = %lu KiB\n", + debug_printf("MM: new slab, total memory = %llu KiB\n", cache->allocated / 1024); return PIPE_OK; diff --git a/src/gallium/drivers/nv50/nv50_formats.c b/src/gallium/drivers/nv50/nv50_formats.c index c65189d0671..96ed9a7d6d4 100644 --- a/src/gallium/drivers/nv50/nv50_formats.c +++ b/src/gallium/drivers/nv50/nv50_formats.c @@ -571,4 +571,22 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] = [PIPE_FORMAT_A8B8G8R8_UNORM] = { 0, B_(C3, C2, C1, C0, UNORM, UNORM, UNORM, UNORM, 8_8_8_8, 0), SAMPLER_VIEW }, + + /* FIXED FORMATS - hw doesn't support these, convert on vbo push for now */ + + [PIPE_FORMAT_R32G32B32A32_FIXED] = { 0, + B_(C0, C1, C2, C3, FLOAT, FLOAT, FLOAT, FLOAT, 32_32_32_32, 0), + VERTEX_BUFFER }, + + [PIPE_FORMAT_R32G32B32_FIXED] = { 0, + B_(C0, C1, C2, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 32_32_32, 0), + VERTEX_BUFFER }, + + [PIPE_FORMAT_R32G32_FIXED] = { 0, + B_(C0, C1, ZERO, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 32_32, 0), + VERTEX_BUFFER }, + + [PIPE_FORMAT_R32_FIXED] = { 0, + B_(C0, ZERO, ZERO, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 32, 0), + VERTEX_BUFFER }, }; diff --git a/src/gallium/drivers/nv50/nv50_miptree.c b/src/gallium/drivers/nv50/nv50_miptree.c index 9eeca05ada3..486b368ae98 100644 --- a/src/gallium/drivers/nv50/nv50_miptree.c +++ b/src/gallium/drivers/nv50/nv50_miptree.c @@ -158,6 +158,9 @@ nv50_miptree_create(struct pipe_screen *pscreen, tile_flags = 0x6000; break; default: + if (pt->bind & PIPE_BIND_CURSOR) + tile_flags = 0; + else if ((pt->bind & PIPE_BIND_SCANOUT) && util_format_get_blocksizebits(pt->format) == 32) tile_flags = 0x7a00; @@ -165,6 +168,8 @@ nv50_miptree_create(struct pipe_screen *pscreen, tile_flags = 0x7000; break; } + if (pt->bind & (PIPE_BIND_SCANOUT | PIPE_BIND_CURSOR)) + tile_flags |= NOUVEAU_BO_TILE_SCANOUT; /* For 3D textures, a mipmap is spanned by all the layers, for array * textures and cube maps, each layer contains its own mipmaps. @@ -176,7 +181,10 @@ nv50_miptree_create(struct pipe_screen *pscreen, unsigned blocksize = util_format_get_blocksize(pt->format); lvl->offset = mt->total_size; - lvl->tile_mode = get_tile_dims(nbx, nby, d); + + if (tile_flags & NOUVEAU_BO_TILE_LAYOUT_MASK) + lvl->tile_mode = get_tile_dims(nbx, nby, d); + lvl->pitch = align(nbx * blocksize, NV50_TILE_PITCH(lvl->tile_mode)); mt->total_size += lvl->pitch * diff --git a/src/gallium/drivers/nv50/nv50_screen.c b/src/gallium/drivers/nv50/nv50_screen.c index 641ad7e2780..4dad8599870 100644 --- a/src/gallium/drivers/nv50/nv50_screen.c +++ b/src/gallium/drivers/nv50/nv50_screen.c @@ -89,7 +89,10 @@ nv50_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param) case PIPE_CAP_TEXTURE_SHADOW_MAP: case PIPE_CAP_NPOT_TEXTURES: case PIPE_CAP_ANISOTROPIC_FILTER: - return 1; + case PIPE_CAP_SEAMLESS_CUBE_MAP: + return nv50_screen(pscreen)->tesla->grclass >= NVA0_3D; + case PIPE_CAP_SEAMLESS_CUBE_MAP_PER_TEXTURE: + return 0; case PIPE_CAP_TWO_SIDED_STENCIL: case PIPE_CAP_DEPTH_CLAMP: case PIPE_CAP_DEPTHSTENCIL_CLEAR_SEPARATE: @@ -417,6 +420,11 @@ nv50_screen_create(struct pipe_winsys *ws, struct nouveau_device *dev) BEGIN_RING(chan, RING_3D(BLEND_SEPARATE_ALPHA), 1); OUT_RING (chan, 1); + if (tesla_class >= NVA0_3D) { + BEGIN_RING(chan, RING_3D_(NVA0_3D_TEX_MISC), 1); + OUT_RING (chan, NVA0_3D_TEX_MISC_SEAMLESS_CUBE_MAP); + } + BEGIN_RING(chan, RING_3D(SCREEN_Y_CONTROL), 1); OUT_RING (chan, 0); BEGIN_RING(chan, RING_3D(WINDOW_OFFSET_X), 2); @@ -469,7 +477,7 @@ nv50_screen_create(struct pipe_winsys *ws, struct nouveau_device *dev) screen->tls_size = tls_space * max_warps * 32; - debug_printf("max_warps = %i, tls_size = %lu KiB\n", + debug_printf("max_warps = %i, tls_size = %llu KiB\n", max_warps, screen->tls_size >> 10); ret = nouveau_bo_new(dev, NOUVEAU_BO_VRAM, 1 << 16, screen->tls_size, diff --git a/src/gallium/drivers/nv50/nv50_state.c b/src/gallium/drivers/nv50/nv50_state.c index 799f49619d2..8d75dd07c4d 100644 --- a/src/gallium/drivers/nv50/nv50_state.c +++ b/src/gallium/drivers/nv50/nv50_state.c @@ -34,6 +34,36 @@ #include "nouveau/nouveau_gldefs.h" +/* Caveats: + * ! pipe_sampler_state.normalized_coords is ignored - rectangle textures will + * use non-normalized coordinates, everything else won't + * (The relevant bit is in the TIC entry and not the TSC entry.) + * + * ! pipe_sampler_state.seamless_cube_map is ignored - seamless filtering is + * always activated on NVA0 + + * (Give me the global bit, otherwise it's not worth the CPU work.) + * + * ! pipe_sampler_state.border_color is not swizzled according to the texture + * swizzle in pipe_sampler_view + * (This will be ugly with indirect independent texture/sampler access, + * we'd have to emulate the logic in the shader. GL doesn't have that, + * D3D doesn't have swizzle, if we knew what we were implementing we'd be + * good.) + * + * ! pipe_rasterizer_state.line_last_pixel is ignored - it is never drawn + * + * ! pipe_rasterizer_state.flatshade_first also applies to QUADS + * (There's a GL query for that, forcing an exception is just ridiculous.) + * + * ! pipe_rasterizer_state.gl_rasterization_rules is ignored - pixel centers + * are always at half integer coordinates and the top-left rule applies + * (There does not seem to be a hardware switch for this.) + * + * ! pipe_rasterizer_state.sprite_coord_enable is masked with 0xff on NVC0 + * (The hardware only has 8 slots meant for TexCoord and we have to assign + * in advance to maintain elegant separate shader objects.) + */ + static INLINE uint32_t nv50_colormask(unsigned mask) { diff --git a/src/gallium/drivers/nvc0/nvc0_formats.c b/src/gallium/drivers/nvc0/nvc0_formats.c index 678e9b563ee..81077a7fa80 100644 --- a/src/gallium/drivers/nvc0/nvc0_formats.c +++ b/src/gallium/drivers/nvc0/nvc0_formats.c @@ -576,4 +576,22 @@ const struct nvc0_format nvc0_format_table[PIPE_FORMAT_COUNT] = [PIPE_FORMAT_A8B8G8R8_UNORM] = { 0, B_(C3, C2, C1, C0, UNORM, UNORM, UNORM, UNORM, 8_8_8_8, 0), SAMPLER_VIEW }, + + /* FIXED FORMATS - hw doesn't support these, convert on vbo push for now */ + + [PIPE_FORMAT_R32G32B32A32_FIXED] = { 0, + B_(C0, C1, C2, C3, FLOAT, FLOAT, FLOAT, FLOAT, 32_32_32_32, 0), + VERTEX_BUFFER }, + + [PIPE_FORMAT_R32G32B32_FIXED] = { 0, + B_(C0, C1, C2, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 32_32_32, 0), + VERTEX_BUFFER }, + + [PIPE_FORMAT_R32G32_FIXED] = { 0, + B_(C0, C1, ZERO, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 32_32, 0), + VERTEX_BUFFER }, + + [PIPE_FORMAT_R32_FIXED] = { 0, + B_(C0, ZERO, ZERO, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 32, 0), + VERTEX_BUFFER }, }; diff --git a/src/gallium/drivers/nvc0/nvc0_screen.c b/src/gallium/drivers/nvc0/nvc0_screen.c index ca0691d2aee..34bf0f0a2ad 100644 --- a/src/gallium/drivers/nvc0/nvc0_screen.c +++ b/src/gallium/drivers/nvc0/nvc0_screen.c @@ -74,7 +74,10 @@ nvc0_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param) case PIPE_CAP_TEXTURE_SHADOW_MAP: case PIPE_CAP_NPOT_TEXTURES: case PIPE_CAP_ANISOTROPIC_FILTER: + case PIPE_CAP_SEAMLESS_CUBE_MAP: return 1; + case PIPE_CAP_SEAMLESS_CUBE_MAP_PER_TEXTURE: + return 0; case PIPE_CAP_TWO_SIDED_STENCIL: case PIPE_CAP_DEPTH_CLAMP: case PIPE_CAP_DEPTHSTENCIL_CLEAR_SEPARATE: @@ -441,6 +444,8 @@ nvc0_screen_create(struct pipe_winsys *ws, struct nouveau_device *dev) OUT_RING (chan, 1); BEGIN_RING(chan, RING_3D(BLEND_ENABLE_COMMON), 1); OUT_RING (chan, 0); + BEGIN_RING(chan, RING_3D(TEX_MISC), 1); + OUT_RING (chan, NVC0_3D_TEX_MISC_SEAMLESS_CUBE_MAP); nvc0_magic_3d_init(chan); diff --git a/src/gallium/drivers/r300/r300_screen.c b/src/gallium/drivers/r300/r300_screen.c index 9ec16c6562f..7a1366a4f8f 100644 --- a/src/gallium/drivers/r300/r300_screen.c +++ b/src/gallium/drivers/r300/r300_screen.c @@ -113,14 +113,21 @@ static int r300_get_param(struct pipe_screen* pscreen, enum pipe_cap param) case PIPE_CAP_TEXTURE_MIRROR_REPEAT: case PIPE_CAP_BLEND_EQUATION_SEPARATE: case PIPE_CAP_VERTEX_ELEMENT_INSTANCE_DIVISOR: - case PIPE_CAP_FRAGMENT_COLOR_CLAMP_CONTROL: - return is_r500 ? 1 : 0; + case PIPE_CAP_TGSI_FS_COORD_ORIGIN_UPPER_LEFT: + case PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_HALF_INTEGER: + return 1; + + /* r300 cannot do swizzling of compressed textures. Supported otherwise. */ case PIPE_CAP_TEXTURE_SWIZZLE: return util_format_s3tc_enabled ? r300screen->caps.dxtc_swizzle : 1; + + /* Supported on r500 only. */ + case PIPE_CAP_FRAGMENT_COLOR_CLAMP_CONTROL: case PIPE_CAP_MIXED_COLORBUFFER_FORMATS: + case PIPE_CAP_SM3: return is_r500 ? 1 : 0; - /* Unsupported features (boolean caps). */ + /* Unsupported features. */ case PIPE_CAP_TIMER_QUERY: case PIPE_CAP_DUAL_SOURCE_BLEND: case PIPE_CAP_INDEP_BLEND_ENABLE: @@ -130,6 +137,11 @@ static int r300_get_param(struct pipe_screen* pscreen, enum pipe_cap param) case PIPE_CAP_SHADER_STENCIL_EXPORT: case PIPE_CAP_ARRAY_TEXTURES: case PIPE_CAP_TGSI_INSTANCEID: + case PIPE_CAP_TGSI_FS_COORD_ORIGIN_LOWER_LEFT: + case PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_INTEGER: + case PIPE_CAP_MAX_VERTEX_TEXTURE_UNITS: + case PIPE_CAP_SEAMLESS_CUBE_MAP: + case PIPE_CAP_SEAMLESS_CUBE_MAP_PER_TEXTURE: return 0; /* SWTCL-only features. */ @@ -141,8 +153,6 @@ static int r300_get_param(struct pipe_screen* pscreen, enum pipe_cap param) case PIPE_CAP_MAX_TEXTURE_IMAGE_UNITS: case PIPE_CAP_MAX_COMBINED_SAMPLERS: return r300screen->caps.num_tex_units; - case PIPE_CAP_MAX_VERTEX_TEXTURE_UNITS: - return 0; case PIPE_CAP_MAX_TEXTURE_2D_LEVELS: case PIPE_CAP_MAX_TEXTURE_3D_LEVELS: case PIPE_CAP_MAX_TEXTURE_CUBE_LEVELS: @@ -153,16 +163,6 @@ static int r300_get_param(struct pipe_screen* pscreen, enum pipe_cap param) case PIPE_CAP_MAX_RENDER_TARGETS: return 4; - /* General shader limits and features. */ - case PIPE_CAP_SM3: - return is_r500 ? 1 : 0; - /* Fragment coordinate conventions. */ - case PIPE_CAP_TGSI_FS_COORD_ORIGIN_UPPER_LEFT: - case PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_HALF_INTEGER: - return 1; - case PIPE_CAP_TGSI_FS_COORD_ORIGIN_LOWER_LEFT: - case PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_INTEGER: - return 0; default: debug_printf("r300: Warning: Unknown CAP %d in get_param.\n", param); diff --git a/src/gallium/drivers/r300/r300_tgsi_to_rc.c b/src/gallium/drivers/r300/r300_tgsi_to_rc.c index 6a000cfe2c6..0561ab9bfa4 100644 --- a/src/gallium/drivers/r300/r300_tgsi_to_rc.c +++ b/src/gallium/drivers/r300/r300_tgsi_to_rc.c @@ -266,6 +266,7 @@ static void transform_texture(struct rc_instruction * dst, struct tgsi_instructi *shadowSamplers |= 1 << dst->U.I.TexSrcUnit; break; } + dst->U.I.TexSwizzle = RC_SWIZZLE_XYZW; } static void transform_instruction(struct tgsi_to_rc * ttr, struct tgsi_full_instruction * src) diff --git a/src/gallium/drivers/r600/Makefile b/src/gallium/drivers/r600/Makefile index 436de9c4dbd..3dda3a6339f 100644 --- a/src/gallium/drivers/r600/Makefile +++ b/src/gallium/drivers/r600/Makefile @@ -10,7 +10,6 @@ C_SOURCES = \ r600_asm.c \ r600_blit.c \ r600_buffer.c \ - r600_helper.c \ r600_pipe.c \ r600_query.c \ r600_resource.c \ diff --git a/src/gallium/drivers/r600/SConscript b/src/gallium/drivers/r600/SConscript index 5a5fa6d65fd..0135808f10a 100644 --- a/src/gallium/drivers/r600/SConscript +++ b/src/gallium/drivers/r600/SConscript @@ -19,7 +19,6 @@ r600 = env.ConvenienceLibrary( 'r600_asm.c', 'r600_buffer.c', 'r600_blit.c', - 'r600_helper.c', 'r600_pipe.c', 'r600_query.c', 'r600_resource.c', diff --git a/src/gallium/drivers/r600/eg_state_inlines.h b/src/gallium/drivers/r600/eg_state_inlines.h index f20d45f48de..a2ba73febdd 100644 --- a/src/gallium/drivers/r600/eg_state_inlines.h +++ b/src/gallium/drivers/r600/eg_state_inlines.h @@ -348,7 +348,7 @@ static inline uint32_t r600_translate_colorswap(enum pipe_format format) case PIPE_FORMAT_A8B8G8R8_UNORM: case PIPE_FORMAT_X8B8G8R8_UNORM: - // case PIPE_FORMAT_R8SG8SB8UX8U_NORM: + /* case PIPE_FORMAT_R8SG8SB8UX8U_NORM: */ return V_028C70_SWAP_STD_REV; case PIPE_FORMAT_Z24X8_UNORM: @@ -367,6 +367,7 @@ static inline uint32_t r600_translate_colorswap(enum pipe_format format) case PIPE_FORMAT_B10G10R10A2_UNORM: return V_028C70_SWAP_ALT; + case PIPE_FORMAT_R11G11B10_FLOAT: case PIPE_FORMAT_R32_FLOAT: case PIPE_FORMAT_R16G16_FLOAT: case PIPE_FORMAT_R16G16_UNORM: @@ -469,6 +470,9 @@ static INLINE uint32_t r600_translate_colorformat(enum pipe_format format) case PIPE_FORMAT_R16G16_UNORM: return V_028C70_COLOR_16_16; + case PIPE_FORMAT_R11G11B10_FLOAT: + return V_028C70_COLOR_10_11_11_FLOAT; + /* 64-bit buffers. */ case PIPE_FORMAT_R16G16B16_USCALED: case PIPE_FORMAT_R16G16B16A16_USCALED: @@ -502,60 +506,60 @@ static INLINE uint32_t r600_translate_colorformat(enum pipe_format format) case PIPE_FORMAT_UYVY: case PIPE_FORMAT_YUYV: default: - //R600_ERR("unsupported color format %d\n", format); + /* R600_ERR("unsupported color format %d\n", format); */ return ~0; /* Unsupported. */ } } static INLINE uint32_t r600_colorformat_endian_swap(uint32_t colorformat) { -#ifdef PIPE_ARCH_BIG_ENDIAN - switch(colorformat) { - case V_0280A0_COLOR_4_4: - return(ENDIAN_NONE); - - /* 8-bit buffers. */ - case V_0280A0_COLOR_8: - return(ENDIAN_NONE); - - /* 16-bit buffers. */ - case V_0280A0_COLOR_5_6_5: - case V_0280A0_COLOR_1_5_5_5: - case V_0280A0_COLOR_4_4_4_4: - case V_0280A0_COLOR_16: - case V_0280A0_COLOR_8_8: - return(ENDIAN_8IN16); - - /* 32-bit buffers. */ - case V_0280A0_COLOR_8_8_8_8: - case V_0280A0_COLOR_2_10_10_10: - case V_0280A0_COLOR_8_24: - case V_0280A0_COLOR_24_8: - case V_0280A0_COLOR_32_FLOAT: - case V_0280A0_COLOR_16_16_FLOAT: - case V_0280A0_COLOR_16_16: - return(ENDIAN_8IN32); - - /* 64-bit buffers. */ - case V_0280A0_COLOR_16_16_16_16: - case V_0280A0_COLOR_16_16_16_16_FLOAT: - return(ENDIAN_8IN16); - - case V_0280A0_COLOR_32_32_FLOAT: - case V_0280A0_COLOR_32_32: - return(ENDIAN_8IN32); - - /* 128-bit buffers. */ - case V_0280A0_COLOR_32_32_32_FLOAT: - case V_0280A0_COLOR_32_32_32_32_FLOAT: - case V_0280A0_COLOR_32_32_32_32: - return(ENDIAN_8IN32); - default: - return ENDIAN_NONE; /* Unsupported. */ + if (R600_BIG_ENDIAN) { + switch(colorformat) { + case V_028C70_COLOR_4_4: + return(ENDIAN_NONE); + + /* 8-bit buffers. */ + case V_028C70_COLOR_8: + return(ENDIAN_NONE); + + /* 16-bit buffers. */ + case V_028C70_COLOR_5_6_5: + case V_028C70_COLOR_1_5_5_5: + case V_028C70_COLOR_4_4_4_4: + case V_028C70_COLOR_16: + case V_028C70_COLOR_8_8: + return(ENDIAN_8IN16); + + /* 32-bit buffers. */ + case V_028C70_COLOR_8_8_8_8: + case V_028C70_COLOR_2_10_10_10: + case V_028C70_COLOR_8_24: + case V_028C70_COLOR_24_8: + case V_028C70_COLOR_32_FLOAT: + case V_028C70_COLOR_16_16_FLOAT: + case V_028C70_COLOR_16_16: + return(ENDIAN_8IN32); + + /* 64-bit buffers. */ + case V_028C70_COLOR_16_16_16_16: + case V_028C70_COLOR_16_16_16_16_FLOAT: + return(ENDIAN_8IN16); + + case V_028C70_COLOR_32_32_FLOAT: + case V_028C70_COLOR_32_32: + return(ENDIAN_8IN32); + + /* 128-bit buffers. */ + case V_028C70_COLOR_32_32_32_FLOAT: + case V_028C70_COLOR_32_32_32_32_FLOAT: + case V_028C70_COLOR_32_32_32_32: + return(ENDIAN_8IN32); + default: + return ENDIAN_NONE; /* Unsupported. */ + } + } else { + return ENDIAN_NONE; } -#else - return ENDIAN_NONE; -#endif } static INLINE boolean r600_is_sampler_format_supported(struct pipe_screen *screen, enum pipe_format format) diff --git a/src/gallium/drivers/r600/evergreen_state.c b/src/gallium/drivers/r600/evergreen_state.c index a972f82fb1d..502f2663e8b 100644 --- a/src/gallium/drivers/r600/evergreen_state.c +++ b/src/gallium/drivers/r600/evergreen_state.c @@ -143,14 +143,17 @@ static void *evergreen_create_blend_state(struct pipe_context *ctx, static void *evergreen_create_dsa_state(struct pipe_context *ctx, const struct pipe_depth_stencil_alpha_state *state) { - struct r600_pipe_state *rstate = CALLOC_STRUCT(r600_pipe_state); + struct r600_pipe_dsa *dsa = CALLOC_STRUCT(r600_pipe_dsa); unsigned db_depth_control, alpha_test_control, alpha_ref, db_shader_control; unsigned stencil_ref_mask, stencil_ref_mask_bf, db_render_override, db_render_control; + struct r600_pipe_state *rstate; - if (rstate == NULL) { + if (dsa == NULL) { return NULL; } + rstate = &dsa->rstate; + rstate->id = R600_PIPE_STATE_DSA; /* depth TODO some of those db_shader_control field depend on shader adjust mask & add it to shader */ db_shader_control = S_02880C_Z_ORDER(V_02880C_EARLY_Z_THEN_LATE_Z); @@ -190,6 +193,7 @@ static void *evergreen_create_dsa_state(struct pipe_context *ctx, alpha_test_control |= S_028410_ALPHA_TEST_ENABLE(1); alpha_ref = fui(state->alpha.ref_value); } + dsa->alpha_ref = alpha_ref; /* misc */ db_render_control = 0; @@ -206,7 +210,6 @@ static void *evergreen_create_dsa_state(struct pipe_context *ctx, r600_pipe_state_add_reg(rstate, R_028434_DB_STENCILREFMASK_BF, stencil_ref_mask_bf, 0xFFFFFFFF & C_028434_STENCILREF_BF, NULL); - r600_pipe_state_add_reg(rstate, R_028438_SX_ALPHA_REF, alpha_ref, 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_0286DC_SPI_FOG_CNTL, 0x00000000, 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_028800_DB_DEPTH_CONTROL, db_depth_control, 0xFFFFFFFF, NULL); /* The DB_SHADER_CONTROL mask is 0xFFFFFFBC since Z_EXPORT_ENABLE, @@ -307,16 +310,11 @@ static void *evergreen_create_sampler_state(struct pipe_context *ctx, { struct r600_pipe_state *rstate = CALLOC_STRUCT(r600_pipe_state); union util_color uc; - uint32_t coord_trunc = 0; if (rstate == NULL) { return NULL; } - if ((state->mag_img_filter == PIPE_TEX_FILTER_NEAREST) || - (state->min_img_filter == PIPE_TEX_FILTER_NEAREST)) - coord_trunc = 1; - rstate->id = R600_PIPE_STATE_SAMPLER; util_pack_color(state->border_color, PIPE_FORMAT_B8G8R8A8_UNORM, &uc); r600_pipe_state_add_reg(rstate, R_03C000_SQ_TEX_SAMPLER_WORD0_0, @@ -328,14 +326,13 @@ static void *evergreen_create_sampler_state(struct pipe_context *ctx, S_03C000_MIP_FILTER(r600_tex_mipfilter(state->min_mip_filter)) | S_03C000_DEPTH_COMPARE_FUNCTION(r600_tex_compare(state->compare_func)) | S_03C000_BORDER_COLOR_TYPE(uc.ui ? V_03C000_SQ_TEX_BORDER_COLOR_REGISTER : 0), 0xFFFFFFFF, NULL); - /* FIXME LOD it depends on texture base level ... */ r600_pipe_state_add_reg(rstate, R_03C004_SQ_TEX_SAMPLER_WORD1_0, S_03C004_MIN_LOD(S_FIXED(CLAMP(state->min_lod, 0, 15), 8)) | S_03C004_MAX_LOD(S_FIXED(CLAMP(state->max_lod, 0, 15), 8)), 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_03C008_SQ_TEX_SAMPLER_WORD2_0, S_03C008_LOD_BIAS(S_FIXED(CLAMP(state->lod_bias, -16, 16), 8)) | - S_03C008_MC_COORD_TRUNCATE(coord_trunc) | + (state->seamless_cube_map ? 0 : S_03C008_DISABLE_CUBE_WRAP(1)) | S_03C008_TYPE(1), 0xFFFFFFFF, NULL); @@ -409,7 +406,6 @@ static struct pipe_sampler_view *evergreen_create_sampler_view(struct pipe_conte array_mode = tmp->array_mode[0]; tile_type = tmp->tile_type; - /* FIXME properly handle first level != 0 */ r600_pipe_state_add_reg(rstate, R_030000_RESOURCE0_WORD0, S_030000_DIM(r600_tex_dim(texture->target)) | S_030000_PITCH((pitch / 8) - 1) | @@ -715,12 +711,26 @@ static void evergreen_cb(struct r600_pipe_context *rctx, struct r600_pipe_state S_028C70_ENDIAN(endian); - /* we can only set the export size if any thing is snorm/unorm component is > 11 bits, - if we aren't a float, sint or uint */ + /* EXPORT_NORM is an optimzation that can be enabled for better + * performance in certain cases. + * EXPORT_NORM can be enabled if: + * - 11-bit or smaller UNORM/SNORM/SRGB + * - 16-bit or smaller FLOAT + */ + /* FIXME: This should probably be the same for all CBs if we want + * useful alpha tests. */ if (desc->colorspace != UTIL_FORMAT_COLORSPACE_ZS && - desc->channel[i].size < 12 && desc->channel[i].type != UTIL_FORMAT_TYPE_FLOAT && - ntype != V_028C70_NUMBER_UINT && ntype != V_028C70_NUMBER_SINT) + ((desc->channel[i].size < 12 && + desc->channel[i].type != UTIL_FORMAT_TYPE_FLOAT && + ntype != V_028C70_NUMBER_UINT && ntype != V_028C70_NUMBER_SINT) || + (desc->channel[i].size < 17 && + desc->channel[i].type == UTIL_FORMAT_TYPE_FLOAT))) { color_info |= S_028C70_SOURCE_FORMAT(V_028C70_EXPORT_4C_16BPC); + rctx->export_16bpc = true; + } else { + rctx->export_16bpc = false; + } + rctx->alpha_ref_dirty = true; if (rtex->array_mode[level] > V_028C70_ARRAY_LINEAR_ALIGNED) { tile_type = rtex->tile_type; @@ -922,7 +932,7 @@ void evergreen_init_state_functions(struct r600_pipe_context *rctx) rctx->context.create_vertex_elements_state = r600_create_vertex_elements; rctx->context.create_vs_state = r600_create_shader_state; rctx->context.bind_blend_state = r600_bind_blend_state; - rctx->context.bind_depth_stencil_alpha_state = r600_bind_state; + rctx->context.bind_depth_stencil_alpha_state = r600_bind_dsa_state; rctx->context.bind_fragment_sampler_states = evergreen_bind_ps_sampler; rctx->context.bind_fs_state = r600_bind_ps_shader; rctx->context.bind_rasterizer_state = r600_bind_rs_state; @@ -1232,9 +1242,11 @@ void evergreen_init_config(struct r600_pipe_context *rctx) r600_pipe_state_add_reg(rstate, R_009100_SPI_CONFIG_CNTL, 0x0, 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_00913C_SPI_CONFIG_CNTL_1, S_00913C_VTX_DONE_DELAY(4), 0xFFFFFFFF, NULL); -// r600_pipe_state_add_reg(rstate, R_028350_SX_MISC, 0x0, 0xFFFFFFFF, NULL); +#if 0 + r600_pipe_state_add_reg(rstate, R_028350_SX_MISC, 0x0, 0xFFFFFFFF, NULL); -// r600_pipe_state_add_reg(rstate, R_008D8C_SQ_DYN_GPR_CNTL_PS_FLUSH_REQ, 0x0, 0xFFFFFFFF, NULL); + r600_pipe_state_add_reg(rstate, R_008D8C_SQ_DYN_GPR_CNTL_PS_FLUSH_REQ, 0x0, 0xFFFFFFFF, NULL); +#endif r600_pipe_state_add_reg(rstate, R_028A48_PA_SC_MODE_CNTL_0, 0x0, 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_028A4C_PA_SC_MODE_CNTL_1, 0x0, 0xFFFFFFFF, NULL); @@ -1574,9 +1586,7 @@ void evergreen_pipe_set_buffer_resource(struct r600_pipe_context *rctx, r600_pipe_state_add_reg(rstate, R_030004_RESOURCE0_WORD1, rbuffer->bo_size - offset - 1, 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_030008_RESOURCE0_WORD2, -#ifdef PIPE_ARCH_BIG_ENDIAN - S_030008_ENDIAN_SWAP(ENDIAN_8IN32) | -#endif + S_030008_ENDIAN_SWAP(r600_endian_swap(32)) | S_030008_STRIDE(stride), 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_03000C_RESOURCE0_WORD3, S_03000C_DST_SEL_X(V_03000C_SQ_SEL_X) | diff --git a/src/gallium/drivers/r600/evergreend.h b/src/gallium/drivers/r600/evergreend.h index de445b879a1..670606d9b07 100644 --- a/src/gallium/drivers/r600/evergreend.h +++ b/src/gallium/drivers/r600/evergreend.h @@ -1194,6 +1194,15 @@ #define S_03C008_FORCE_DEGAMMA(x) (((x) & 0x1) << 21) #define G_03C008_FORCE_DEGAMMA(x) (((x) >> 21) & 0x1) #define C_03C008_FORCE_DEGAMMA 0xFFDFFFFF +#define S_03C008_ANISO_BIAS(x) (((x) & 0x3f) << 22) +#define G_03C008_ANISO_BIAS(x) (((x) >> 22) & 0x3f) +#define C_03C008_ANISO_BIAS (~(0x3f << 22)) +#define S_03C008_TRUNCATE_COORD(x) (((x) & 0x1) << 28) +#define G_03C008_TRUNCATE_COORD(x) (((x) >> 28) & 0x1) +#define C_03C008_TRUNCATE_COORD (~(1 << 28)) +#define S_03C008_DISABLE_CUBE_WRAP(x) (((x) & 0x1) << 29) +#define G_03C008_DISABLE_CUBE_WRAP(x) (((x) >> 29) & 0x1) +#define C_03C008_DISABLE_CUBE_WRAP (~(1 << 29)) #define S_03C008_TYPE(x) (((x) & 0x1) << 31) #define G_03C008_TYPE(x) (((x) >> 31) & 0x1) #define C_03C008_TYPE 0x7FFFFFFF diff --git a/src/gallium/drivers/r600/r600.h b/src/gallium/drivers/r600/r600.h index 0b0df9d019b..33aa45088a8 100644 --- a/src/gallium/drivers/r600/r600.h +++ b/src/gallium/drivers/r600/r600.h @@ -235,6 +235,7 @@ struct r600_query { #define R600_CONTEXT_DRAW_PENDING (1 << 0) #define R600_CONTEXT_DST_CACHES_DIRTY (1 << 1) +#define R600_CONTEXT_CHECK_EVENT_FLUSH (1 << 2) struct r600_context { struct radeon *radeon; diff --git a/src/gallium/drivers/r600/r600_asm.c b/src/gallium/drivers/r600/r600_asm.c index 7e854b1b81d..033e84665f5 100644 --- a/src/gallium/drivers/r600/r600_asm.c +++ b/src/gallium/drivers/r600/r600_asm.c @@ -33,12 +33,6 @@ #include "r600_formats.h" #include "r600d.h" -#ifdef PIPE_ARCH_BIG_ENDIAN -#define CPU_TO_LE32(x) bswap_32(x) -#else -#define CPU_TO_LE32(x) (x) -#endif - #define NUM_OF_CYCLES 3 #define NUM_OF_COMPONENTS 4 @@ -531,19 +525,19 @@ static int assign_alu_units(struct r600_bc *bc, struct r600_bc_alu *alu_first, else if (is_alu_vec_unit_inst(bc, alu)) trans = 0; else if (assignment[chan]) - trans = 1; // assume ALU_INST_PREFER_VECTOR + trans = 1; /* Assume ALU_INST_PREFER_VECTOR. */ else trans = 0; if (trans) { if (assignment[4]) { - assert(0); //ALU.Trans has already been allocated + assert(0); /* ALU.Trans has already been allocated. */ return -1; } assignment[4] = alu; } else { if (assignment[chan]) { - assert(0); //ALU.chan has already been allocated + assert(0); /* ALU.chan has already been allocated. */ return -1; } assignment[chan] = alu; @@ -595,7 +589,7 @@ static int reserve_gpr(struct alu_bank_swizzle *bs, unsigned sel, unsigned chan, if (bs->hw_gpr[cycle][chan] == -1) bs->hw_gpr[cycle][chan] = sel; else if (bs->hw_gpr[cycle][chan] != (int)sel) { - // Another scalar operation has already used GPR read port for channel + /* Another scalar operation has already used the GPR read port for the channel. */ return -1; } return 0; @@ -615,9 +609,9 @@ static int reserve_cfile(struct r600_bc *bc, struct alu_bank_swizzle *bs, unsign return 0; } else if (bs->hw_cfile_addr[res] == sel && bs->hw_cfile_elem[res] == chan) - return 0; // Read for this scalar element already reserved, nothing to do here. + return 0; /* Read for this scalar element already reserved, nothing to do here. */ } - // All cfile read ports are used, cannot reference vector element + /* All cfile read ports are used, cannot reference vector element. */ return -1; } @@ -632,8 +626,8 @@ static int is_gpr(unsigned sel) static int is_cfile(unsigned sel) { return (sel > 255 && sel < 512) || - (sel > 511 && sel < 4607) || // Kcache before translate - (sel > 127 && sel < 192); // Kcache after translate + (sel > 511 && sel < 4607) || /* Kcache before translation. */ + (sel > 127 && sel < 192); /* Kcache after translation. */ } static int is_const(int sel) @@ -655,8 +649,8 @@ static int check_vector(struct r600_bc *bc, struct r600_bc_alu *alu, if (is_gpr(sel)) { cycle = cycle_for_bank_swizzle_vec[bank_swizzle][src]; if (src == 1 && sel == alu->src[0].sel && elem == alu->src[0].chan) - // Nothing to do; special-case optimization, - // second source uses first source’s reservation + /* Nothing to do; special-case optimization, + * second source uses first source’s reservation. */ continue; else { r = reserve_gpr(bs, sel, elem, cycle); @@ -668,7 +662,7 @@ static int check_vector(struct r600_bc *bc, struct r600_bc_alu *alu, if (r) return r; } - // No restrictions on PV, PS, literal or special constants + /* No restrictions on PV, PS, literal or special constants. */ } return 0; } @@ -682,10 +676,10 @@ static int check_scalar(struct r600_bc *bc, struct r600_bc_alu *alu, for (const_count = 0, src = 0; src < num_src; ++src) { sel = alu->src[src].sel; elem = alu->src[src].chan; - if (is_const(sel)) { // Any constant, including literal and inline constants + if (is_const(sel)) { /* Any constant, including literal and inline constants. */ if (const_count >= 2) - // More than two references to a constant in - // transcendental operation. + /* More than two references to a constant in + * transcendental operation. */ return -1; else const_count++; @@ -702,15 +696,19 @@ static int check_scalar(struct r600_bc *bc, struct r600_bc_alu *alu, if (is_gpr(sel)) { cycle = cycle_for_bank_swizzle_scl[bank_swizzle][src]; if (cycle < const_count) - // Cycle for GPR load conflicts with - // constant load in transcendental operation. + /* Cycle for GPR load conflicts with + * constant load in transcendental operation. */ return -1; r = reserve_gpr(bs, sel, elem, cycle); if (r) return r; } - // Constants already processed - // No restrictions on PV, PS + /* PV PS restrictions */ + if (const_count && (sel == 254 || sel == 255)) { + cycle = cycle_for_bank_swizzle_scl[bank_swizzle][src]; + if (cycle < const_count) + return -1; + } } return 0; } @@ -721,30 +719,36 @@ static int check_and_set_bank_swizzle(struct r600_bc *bc, struct alu_bank_swizzle bs; int bank_swizzle[5]; int i, r = 0, forced = 0; - - for (i = 0; i < 5; i++) + boolean scalar_only = true; + for (i = 0; i < 5; i++) { if (slots[i] && slots[i]->bank_swizzle_force) { slots[i]->bank_swizzle = slots[i]->bank_swizzle_force; forced = 1; } - + if (i < 4 && slots[i]) + scalar_only = false; + } if (forced) return 0; - // just check every possible combination of bank swizzle - // not very efficent, but works on the first try in most of the cases + /* Just check every possible combination of bank swizzle. + * Not very efficent, but works on the first try in most of the cases. */ for (i = 0; i < 4; i++) bank_swizzle[i] = SQ_ALU_VEC_012; bank_swizzle[4] = SQ_ALU_SCL_210; while(bank_swizzle[4] <= SQ_ALU_SCL_221) { init_bank_swizzle(&bs); - for (i = 0; i < 4; i++) { - if (slots[i]) { - r = check_vector(bc, slots[i], &bs, bank_swizzle[i]); - if (r) - break; + if (scalar_only == false) { + for (i = 0; i < 4; i++) { + if (slots[i]) { + r = check_vector(bc, slots[i], &bs, bank_swizzle[i]); + if (r) + break; + } } - } + } else + r = 0; + if (!r && slots[4]) { r = check_scalar(bc, slots[4], &bs, bank_swizzle[4]); } @@ -756,16 +760,20 @@ static int check_and_set_bank_swizzle(struct r600_bc *bc, return 0; } - for (i = 0; i < 5; i++) { - bank_swizzle[i]++; - if (bank_swizzle[i] <= SQ_ALU_VEC_210) - break; - else - bank_swizzle[i] = SQ_ALU_VEC_012; + if (scalar_only) { + bank_swizzle[4]++; + } else { + for (i = 0; i < 5; i++) { + bank_swizzle[i]++; + if (bank_swizzle[i] <= SQ_ALU_VEC_210) + break; + else + bank_swizzle[i] = SQ_ALU_VEC_012; + } } } - // couldn't find a working swizzle + /* Couldn't find a working swizzle. */ return -1; } @@ -835,17 +843,17 @@ void r600_bc_special_constants(u32 value, unsigned *sel, unsigned *neg) case -1: *sel = V_SQ_ALU_SRC_M_1_INT; break; - case 0x3F800000: // 1.0f + case 0x3F800000: /* 1.0f */ *sel = V_SQ_ALU_SRC_1; break; - case 0x3F000000: // 0.5f + case 0x3F000000: /* 0.5f */ *sel = V_SQ_ALU_SRC_0_5; break; - case 0xBF800000: // -1.0f + case 0xBF800000: /* -1.0f */ *sel = V_SQ_ALU_SRC_1; *neg ^= 1; break; - case 0xBF000000: // -0.5f + case 0xBF000000: /* -0.5f */ *sel = V_SQ_ALU_SRC_0_5; *neg ^= 1; break; @@ -938,13 +946,13 @@ static int merge_inst_groups(struct r600_bc *bc, struct r600_bc_alu *slots[5], if (slots[i] && r600_bc_alu_nliterals(bc, slots[i], literal, &nliteral)) return 0; - // let's check used slots + /* Let's check used slots. */ if (prev[i] && !slots[i]) { result[i] = prev[i]; continue; } else if (prev[i] && slots[i]) { if (result[4] == NULL && prev[4] == NULL && slots[4] == NULL) { - // trans unit is still free try to use it + /* Trans unit is still free try to use it. */ if (is_alu_any_unit_inst(bc, slots[i])) { result[i] = prev[i]; result[4] = slots[i]; @@ -963,14 +971,14 @@ static int merge_inst_groups(struct r600_bc *bc, struct r600_bc_alu *slots[5], alu = slots[i]; num_once_inst += is_alu_once_inst(bc, alu); - // let's check dst gpr + /* Let's check dst gpr. */ if (alu->dst.rel) { if (have_mova) return 0; have_rel = 1; } - // let's check source gprs + /* Let's check source gprs */ num_src = r600_bc_get_num_operands(bc, alu); for (src = 0; src < num_src; ++src) { if (alu->src[src].rel) { @@ -979,7 +987,7 @@ static int merge_inst_groups(struct r600_bc *bc, struct r600_bc_alu *slots[5], have_rel = 1; } - // constants doesn't matter + /* Constants don't matter. */ if (!is_gpr(alu->src[src].sel)) continue; @@ -987,7 +995,7 @@ static int merge_inst_groups(struct r600_bc *bc, struct r600_bc_alu *slots[5], if (!prev[j] || !prev[j]->dst.write) continue; - // if it's relative then we can't determin which gpr is really used + /* If it's relative then we can't determin which gpr is really used. */ if (prev[j]->dst.chan == alu->src[src].chan && (prev[j]->dst.sel == alu->src[src].sel || prev[j]->dst.rel || alu->src[src].rel)) @@ -1390,7 +1398,7 @@ static int r600_bc_vtx_build(struct r600_bc *bc, struct r600_bc_vtx *vtx, unsign S_SQ_VTX_WORD1_SRF_MODE_ALL(vtx->srf_mode_all) | S_SQ_VTX_WORD1_GPR_DST_GPR(vtx->dst_gpr); bc->bytecode[id++] = S_SQ_VTX_WORD2_OFFSET(vtx->offset) | - S_SQ_VTX_WORD2_ENDIAN_SWAP(vtx->endian) | + S_SQ_VTX_WORD2_ENDIAN_SWAP(vtx->endian) | S_SQ_VTX_WORD2_MEGA_FETCH(1); bc->bytecode[id++] = 0; return 0; @@ -1927,7 +1935,7 @@ void r600_bc_dump(struct r600_bc *bc) fprintf(stderr, "%04d %08X ", id, bc->bytecode[id]); fprintf(stderr, "ENDIAN:%d ", vtx->endian); fprintf(stderr, "OFFSET:%d\n", vtx->offset); - //TODO + /* TODO */ id++; fprintf(stderr, "%04d %08X \n", id, bc->bytecode[id]); id++; @@ -1960,6 +1968,8 @@ static void r600_vertex_data_type(enum pipe_format pformat, unsigned *format, } } + *endian = r600_endian_swap(desc->channel[i].size); + switch (desc->channel[i].type) { /* Half-floats, floats, ints */ case UTIL_FORMAT_TYPE_FLOAT: @@ -1977,9 +1987,6 @@ static void r600_vertex_data_type(enum pipe_format pformat, unsigned *format, *format = FMT_16_16_16_16_FLOAT; break; } -#ifdef PIPE_ARCH_BIG_ENDIAN - *endian = ENDIAN_8IN16; -#endif break; case 32: switch (desc->nr_channels) { @@ -1996,9 +2003,6 @@ static void r600_vertex_data_type(enum pipe_format pformat, unsigned *format, *format = FMT_32_32_32_32_FLOAT; break; } -#ifdef PIPE_ARCH_BIG_ENDIAN - *endian = ENDIAN_8IN32; -#endif break; default: goto out_unknown; @@ -2036,9 +2040,6 @@ static void r600_vertex_data_type(enum pipe_format pformat, unsigned *format, *format = FMT_16_16_16_16; break; } -#ifdef PIPE_ARCH_BIG_ENDIAN - *endian = ENDIAN_8IN16; -#endif break; case 32: switch (desc->nr_channels) { @@ -2055,9 +2056,6 @@ static void r600_vertex_data_type(enum pipe_format pformat, unsigned *format, *format = FMT_32_32_32_32; break; } -#ifdef PIPE_ARCH_BIG_ENDIAN - *endian = ENDIAN_8IN32; -#endif break; default: goto out_unknown; @@ -2093,11 +2091,11 @@ int r600_vertex_elements_build_fetch_shader(struct r600_pipe_context *rctx, stru u32 *bytecode; int i, r; - /* vertex elements offset need special handling, if offset is bigger - + * than what we can put in fetch instruction then we need to alterate - * the vertex resource offset. In such case in order to simplify code - * we will bound one resource per elements. It's a worst case scenario. - */ + /* Vertex element offsets need special handling. If the offset is + * bigger than what we can put in the fetch instruction we need to + * alter the vertex resource offset. In order to simplify code we + * will bind one resource per element in such cases. It's a worst + * case scenario. */ for (i = 0; i < ve->count; i++) { ve->vbuffer_offset[i] = C_SQ_VTX_WORD2_OFFSET & elements[i].src_offset; if (ve->vbuffer_offset[i]) { @@ -2202,8 +2200,12 @@ int r600_vertex_elements_build_fetch_shader(struct r600_pipe_context *rctx, stru return -ENOMEM; } - for(i = 0; i < ve->fs_size / 4; i++) { - *(bytecode + i) = CPU_TO_LE32(*(bc.bytecode + i)); + if (R600_BIG_ENDIAN) { + for (i = 0; i < ve->fs_size / 4; ++i) { + bytecode[i] = bswap_32(bc.bytecode[i]); + } + } else { + memcpy(bytecode, bc.bytecode, ve->fs_size); } r600_bo_unmap(rctx->radeon, ve->fetch_shader); diff --git a/src/gallium/drivers/r600/r600_buffer.c b/src/gallium/drivers/r600/r600_buffer.c index 71b47e1b056..72f352df3c3 100644 --- a/src/gallium/drivers/r600/r600_buffer.c +++ b/src/gallium/drivers/r600/r600_buffer.c @@ -81,18 +81,11 @@ static void *r600_buffer_transfer_map(struct pipe_context *pipe, struct pipe_transfer *transfer) { struct r600_resource_buffer *rbuffer = r600_buffer(transfer->resource); - int write = 0; uint8_t *data; if (rbuffer->r.b.user_ptr) return (uint8_t*)rbuffer->r.b.user_ptr + transfer->box.x; - if (transfer->usage & PIPE_TRANSFER_DONTBLOCK) { - /* FIXME */ - } - if (transfer->usage & PIPE_TRANSFER_WRITE) { - write = 1; - } data = r600_bo_map((struct radeon*)pipe->winsys, rbuffer->r.bo, transfer->usage, pipe); if (!data) return NULL; @@ -268,31 +261,30 @@ void r600_upload_const_buffer(struct r600_pipe_context *rctx, struct r600_resour uint8_t *ptr = (*rbuffer)->r.b.user_ptr; unsigned size = (*rbuffer)->r.b.b.b.width0; boolean flushed; -#ifdef PIPE_ARCH_BIG_ENDIAN - int i; - uint32_t *tmpPtr; *rbuffer = NULL; - tmpPtr = (uint32_t *)malloc(size); - /* big endian swap */ - if(tmpPtr == NULL) { - return; - } - for(i = 0; i < size / 4; i++) { - tmpPtr[i] = bswap_32(*((uint32_t *)ptr + i)); - } + if (R600_BIG_ENDIAN) { + uint32_t *tmpPtr; + unsigned i; - u_upload_data(rctx->vbuf_mgr->uploader, 0, size, tmpPtr, const_offset, - (struct pipe_resource**)rbuffer, &flushed); + if (!(tmpPtr = malloc(size))) { + R600_ERR("Failed to allocate BE swap buffer.\n"); + return; + } - free(tmpPtr); -#else - *rbuffer = NULL; + for (i = 0; i < size / 4; ++i) { + tmpPtr[i] = bswap_32(((uint32_t *)ptr)[i]); + } + + u_upload_data(rctx->vbuf_mgr->uploader, 0, size, tmpPtr, const_offset, + (struct pipe_resource**)rbuffer, &flushed); - u_upload_data(rctx->vbuf_mgr->uploader, 0, size, ptr, const_offset, - (struct pipe_resource**)rbuffer, &flushed); -#endif + free(tmpPtr); + } else { + u_upload_data(rctx->vbuf_mgr->uploader, 0, size, ptr, const_offset, + (struct pipe_resource**)rbuffer, &flushed); + } } else { *const_offset = 0; } diff --git a/src/gallium/drivers/r600/r600_formats.h b/src/gallium/drivers/r600/r600_formats.h index 0c91a212384..ae0bc432ad2 100644 --- a/src/gallium/drivers/r600/r600_formats.h +++ b/src/gallium/drivers/r600/r600_formats.h @@ -1,6 +1,8 @@ #ifndef R600_FORMATS_H #define R600_FORMATS_H +#include "r600_pipe.h" + /* list of formats from R700 ISA document - apply across GPUs in different registers */ #define FMT_INVALID 0x00000000 #define FMT_8 0x00000001 @@ -52,5 +54,31 @@ #define FMT_BC3 0x00000033 #define FMT_BC4 0x00000034 #define FMT_BC5 0x00000035 +#define FMT_BC6 0x00000036 +#define FMT_BC7 0x00000037 +#define FMT_32_AS_32_32_32_32 0x00000038 + +#define ENDIAN_NONE 0 +#define ENDIAN_8IN16 1 +#define ENDIAN_8IN32 2 +#define ENDIAN_8IN64 3 + +static INLINE unsigned r600_endian_swap(unsigned size) +{ + if (R600_BIG_ENDIAN) { + switch (size) { + case 64: + return ENDIAN_8IN64; + case 32: + return ENDIAN_8IN32; + case 16: + return ENDIAN_8IN16; + default: + return ENDIAN_NONE; + } + } else { + return ENDIAN_NONE; + } +} #endif diff --git a/src/gallium/drivers/r600/r600_helper.c b/src/gallium/drivers/r600/r600_helper.c deleted file mode 100644 index 7e131093060..00000000000 --- a/src/gallium/drivers/r600/r600_helper.c +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Copyright 2010 Jerome Glisse <[email protected]> - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * on the rights to use, copy, modify, merge, publish, distribute, sub - * license, and/or sell copies of the Software, and to permit persons to whom - * the Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice (including the next - * paragraph) shall be included in all copies or substantial portions of the - * Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL - * THE AUTHOR(S) AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, - * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR - * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE - * USE OR OTHER DEALINGS IN THE SOFTWARE. - * - * Authors: - * Jerome Glisse - */ -#include <stdio.h> -#include <errno.h> -#include <util/u_inlines.h> -#include "r600_pipe.h" -#include "r600d.h" - -int r600_conv_pipe_prim(unsigned pprim, unsigned *prim) -{ - switch (pprim) { - case PIPE_PRIM_POINTS: - *prim = V_008958_DI_PT_POINTLIST; - return 0; - case PIPE_PRIM_LINES: - *prim = V_008958_DI_PT_LINELIST; - return 0; - case PIPE_PRIM_LINE_STRIP: - *prim = V_008958_DI_PT_LINESTRIP; - return 0; - case PIPE_PRIM_LINE_LOOP: - *prim = V_008958_DI_PT_LINELOOP; - return 0; - case PIPE_PRIM_TRIANGLES: - *prim = V_008958_DI_PT_TRILIST; - return 0; - case PIPE_PRIM_TRIANGLE_STRIP: - *prim = V_008958_DI_PT_TRISTRIP; - return 0; - case PIPE_PRIM_TRIANGLE_FAN: - *prim = V_008958_DI_PT_TRIFAN; - return 0; - case PIPE_PRIM_POLYGON: - *prim = V_008958_DI_PT_POLYGON; - return 0; - case PIPE_PRIM_QUADS: - *prim = V_008958_DI_PT_QUADLIST; - return 0; - case PIPE_PRIM_QUAD_STRIP: - *prim = V_008958_DI_PT_QUADSTRIP; - return 0; - default: - fprintf(stderr, "%s:%d unsupported %d\n", __func__, __LINE__, pprim); - return -EINVAL; - } -} diff --git a/src/gallium/drivers/r600/r600_pipe.c b/src/gallium/drivers/r600/r600_pipe.c index 89b46f5ad7e..ec13e48e14e 100644 --- a/src/gallium/drivers/r600/r600_pipe.c +++ b/src/gallium/drivers/r600/r600_pipe.c @@ -374,27 +374,29 @@ static int r600_get_param(struct pipe_screen* pscreen, enum pipe_cap param) case PIPE_CAP_SHADER_STENCIL_EXPORT: case PIPE_CAP_VERTEX_ELEMENT_INSTANCE_DIVISOR: case PIPE_CAP_MIXED_COLORBUFFER_FORMATS: + case PIPE_CAP_TGSI_FS_COORD_ORIGIN_UPPER_LEFT: + case PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_HALF_INTEGER: return 1; + + /* Supported except the original R600. */ case PIPE_CAP_INDEP_BLEND_ENABLE: + case PIPE_CAP_INDEP_BLEND_FUNC: /* R600 doesn't support per-MRT blends */ - if (family == CHIP_R600) - return 0; - else - return 1; + return family == CHIP_R600 ? 0 : 1; - case PIPE_CAP_TGSI_INSTANCEID: - return 0; + /* Supported on Evergreen. */ + case PIPE_CAP_SEAMLESS_CUBE_MAP: + case PIPE_CAP_SEAMLESS_CUBE_MAP_PER_TEXTURE: + return family >= CHIP_CEDAR ? 1 : 0; - /* Unsupported features (boolean caps). */ + /* Unsupported features. */ case PIPE_CAP_STREAM_OUTPUT: case PIPE_CAP_PRIMITIVE_RESTART: - case PIPE_CAP_INDEP_BLEND_FUNC: /* FIXME allow this */ case PIPE_CAP_FRAGMENT_COLOR_CLAMP_CONTROL: - /* R600 doesn't support per-MRT blends */ - if (family == CHIP_R600) - return 0; - else - return 0; + case PIPE_CAP_TGSI_INSTANCEID: + case PIPE_CAP_TGSI_FS_COORD_ORIGIN_LOWER_LEFT: + case PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_INTEGER: + return 0; case PIPE_CAP_ARRAY_TEXTURES: /* fix once the CS checker upstream is fixed */ @@ -409,25 +411,16 @@ static int r600_get_param(struct pipe_screen* pscreen, enum pipe_cap param) else return 14; case PIPE_CAP_MAX_VERTEX_TEXTURE_UNITS: - /* FIXME allow this once infrastructure is there */ - return 16; case PIPE_CAP_MAX_TEXTURE_IMAGE_UNITS: - case PIPE_CAP_MAX_COMBINED_SAMPLERS: return 16; + case PIPE_CAP_MAX_COMBINED_SAMPLERS: + return 32; /* Render targets. */ case PIPE_CAP_MAX_RENDER_TARGETS: /* FIXME some r6xx are buggy and can only do 4 */ return 8; - /* Fragment coordinate conventions. */ - case PIPE_CAP_TGSI_FS_COORD_ORIGIN_UPPER_LEFT: - case PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_HALF_INTEGER: - return 1; - case PIPE_CAP_TGSI_FS_COORD_ORIGIN_LOWER_LEFT: - case PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_INTEGER: - return 0; - /* Timer queries, present when the clock frequency is non zero. */ case PIPE_CAP_TIMER_QUERY: return r600_get_clock_crystal_freq(rscreen->radeon) != 0; @@ -492,9 +485,10 @@ static int r600_get_shader_param(struct pipe_screen* pscreen, unsigned shader, e else return 16; case PIPE_SHADER_CAP_MAX_TEMPS: - return 256; //max native temporaries + return 256; /* Max native temporaries. */ case PIPE_SHADER_CAP_MAX_ADDRS: - return 1; //max native address registers/* FIXME Isn't this equal to TEMPS? */ + /* FIXME Isn't this equal to TEMPS? */ + return 1; /* Max native address registers */ case PIPE_SHADER_CAP_MAX_CONSTS: return R600_MAX_CONST_BUFFER_SIZE; case PIPE_SHADER_CAP_MAX_CONST_BUFFERS: diff --git a/src/gallium/drivers/r600/r600_pipe.h b/src/gallium/drivers/r600/r600_pipe.h index 88aff0e81bb..aa5ef4efb3b 100644 --- a/src/gallium/drivers/r600/r600_pipe.h +++ b/src/gallium/drivers/r600/r600_pipe.h @@ -40,6 +40,12 @@ #define R600_MAX_CONST_BUFFERS 1 #define R600_MAX_CONST_BUFFER_SIZE 4096 +#ifdef PIPE_ARCH_BIG_ENDIAN +#define R600_BIG_ENDIAN 1 +#else +#define R600_BIG_ENDIAN 0 +#endif + enum r600_pipe_state_id { R600_PIPE_STATE_BLEND = 0, R600_PIPE_STATE_BLEND_COLOR, @@ -91,6 +97,11 @@ struct r600_pipe_blend { unsigned cb_target_mask; }; +struct r600_pipe_dsa { + struct r600_pipe_state rstate; + unsigned alpha_ref; +}; + struct r600_vertex_element { unsigned count; @@ -180,6 +191,9 @@ struct r600_pipe_context { /* shader information */ unsigned sprite_coord_enable; bool flatshade; + bool export_16bpc; + unsigned alpha_ref; + bool alpha_ref_dirty; struct r600_textures_info ps_samplers; struct r600_pipe_fences fences; @@ -241,7 +255,6 @@ int r600_find_vs_semantic_index(struct r600_shader *vs, /* r600_state.c */ void r600_init_state_functions(struct r600_pipe_context *rctx); -void r600_spi_update(struct r600_pipe_context *rctx); void r600_init_config(struct r600_pipe_context *rctx); void r600_pipe_shader_ps(struct pipe_context *ctx, struct r600_pipe_shader *shader); void r600_pipe_shader_vs(struct pipe_context *ctx, struct r600_pipe_shader *shader); @@ -253,9 +266,6 @@ void r600_pipe_set_buffer_resource(struct r600_pipe_context *rctx, struct r600_resource *rbuffer, unsigned offset, unsigned stride); -/* r600_helper.h */ -int r600_conv_pipe_prim(unsigned pprim, unsigned *prim); - /* r600_texture.c */ void r600_init_screen_texture_functions(struct pipe_screen *screen); void r600_init_surface_functions(struct r600_pipe_context *r600); @@ -281,11 +291,11 @@ void *r600_create_vertex_elements(struct pipe_context *ctx, const struct pipe_vertex_element *elements); void r600_delete_vertex_element(struct pipe_context *ctx, void *state); void r600_bind_blend_state(struct pipe_context *ctx, void *state); +void r600_bind_dsa_state(struct pipe_context *ctx, void *state); void r600_bind_rs_state(struct pipe_context *ctx, void *state); void r600_delete_rs_state(struct pipe_context *ctx, void *state); void r600_sampler_view_destroy(struct pipe_context *ctx, struct pipe_sampler_view *state); -void r600_bind_state(struct pipe_context *ctx, void *state); void r600_delete_state(struct pipe_context *ctx, void *state); void r600_bind_vertex_elements(struct pipe_context *ctx, void *state); void *r600_create_shader_state(struct pipe_context *ctx, diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c index 188cea0ff88..845d41ace02 100644 --- a/src/gallium/drivers/r600/r600_shader.c +++ b/src/gallium/drivers/r600/r600_shader.c @@ -21,6 +21,7 @@ * USE OR OTHER DEALINGS IN THE SOFTWARE. */ #include "pipe/p_shader_tokens.h" +#include "tgsi/tgsi_info.h" #include "tgsi/tgsi_parse.h" #include "tgsi/tgsi_scan.h" #include "tgsi/tgsi_dump.h" @@ -35,12 +36,6 @@ #include <errno.h> #include <byteswap.h> -#ifdef PIPE_ARCH_BIG_ENDIAN -#define CPU_TO_LE32(x) bswap_32(x) -#else -#define CPU_TO_LE32(x) (x) -#endif - int r600_find_vs_semantic_index(struct r600_shader *vs, struct r600_shader *ps, int id) { @@ -69,8 +64,12 @@ static int r600_pipe_shader(struct pipe_context *ctx, struct r600_pipe_shader *s return -ENOMEM; } ptr = (uint32_t*)r600_bo_map(rctx->radeon, shader->bo, 0, NULL); - for(i = 0; i < rshader->bc.ndw; i++) { - *(ptr + i) = CPU_TO_LE32(*(rshader->bc.bytecode + i)); + if (R600_BIG_ENDIAN) { + for (i = 0; i < rshader->bc.ndw; ++i) { + ptr[i] = bswap_32(rshader->bc.bytecode[i]); + } + } else { + memcpy(ptr, rshader->bc.bytecode, rshader->bc.ndw * sizeof(*ptr)); } r600_bo_unmap(rctx->radeon, shader->bo); } @@ -477,11 +476,7 @@ static int tgsi_fetch_rel_const(struct r600_shader_ctx *ctx, unsigned int offset vtx.num_format_all = 2; /* NUM_FORMAT_SCALED */ vtx.format_comp_all = 1; /* FORMAT_COMP_SIGNED */ vtx.srf_mode_all = 1; /* SRF_MODE_NO_ZERO */ -#ifdef PIPE_ARCH_BIG_ENDIAN - vtx.endian = ENDIAN_8IN32; -#else - vtx.endian = ENDIAN_NONE; -#endif + vtx.endian = r600_endian_swap(32); if ((r = r600_bc_add_vtx(ctx->bc, &vtx))) return r; @@ -830,7 +825,8 @@ out_err: static int tgsi_unsupported(struct r600_shader_ctx *ctx) { - R600_ERR("%d tgsi opcode unsupported\n", ctx->inst_info->tgsi_opcode); + R600_ERR("%s tgsi opcode unsupported\n", + tgsi_get_opcode_name(ctx->inst_info->tgsi_opcode)); return -EINVAL; } @@ -911,6 +907,8 @@ static int tgsi_op2_s(struct r600_shader_ctx *ctx, int swap) break; case TGSI_OPCODE_ABS: alu.src[0].abs = 1; + if (alu.src[0].neg) + alu.src[0].neg = 0; break; default: break; @@ -1997,9 +1995,11 @@ static int tgsi_exp(struct r600_shader_ctx *ctx) r600_bc_src(&alu.src[0], &ctx->src[0], 0); alu.dst.sel = ctx->temp_reg; -// r = tgsi_dst(ctx, &inst->Dst[0], i, &alu.dst); -// if (r) -// return r; +#if 0 + r = tgsi_dst(ctx, &inst->Dst[0], i, &alu.dst); + if (r) + return r; +#endif alu.dst.write = 1; alu.dst.chan = 1; diff --git a/src/gallium/drivers/r600/r600_state.c b/src/gallium/drivers/r600/r600_state.c index 8646b9f4905..b9084c953ee 100644 --- a/src/gallium/drivers/r600/r600_state.c +++ b/src/gallium/drivers/r600/r600_state.c @@ -199,14 +199,17 @@ static void *r600_create_blend_state(struct pipe_context *ctx, static void *r600_create_dsa_state(struct pipe_context *ctx, const struct pipe_depth_stencil_alpha_state *state) { - struct r600_pipe_state *rstate = CALLOC_STRUCT(r600_pipe_state); + struct r600_pipe_dsa *dsa = CALLOC_STRUCT(r600_pipe_dsa); unsigned db_depth_control, alpha_test_control, alpha_ref, db_shader_control; unsigned stencil_ref_mask, stencil_ref_mask_bf, db_render_override, db_render_control; + struct r600_pipe_state *rstate; - if (rstate == NULL) { + if (dsa == NULL) { return NULL; } + rstate = &dsa->rstate; + rstate->id = R600_PIPE_STATE_DSA; /* depth TODO some of those db_shader_control field depend on shader adjust mask & add it to shader */ db_shader_control = S_02880C_Z_ORDER(V_02880C_EARLY_Z_THEN_LATE_Z); @@ -246,6 +249,7 @@ static void *r600_create_dsa_state(struct pipe_context *ctx, alpha_test_control |= S_028410_ALPHA_TEST_ENABLE(1); alpha_ref = fui(state->alpha.ref_value); } + dsa->alpha_ref = alpha_ref; /* misc */ db_render_control = 0; @@ -262,7 +266,6 @@ static void *r600_create_dsa_state(struct pipe_context *ctx, r600_pipe_state_add_reg(rstate, R_028434_DB_STENCILREFMASK_BF, stencil_ref_mask_bf, 0xFFFFFFFF & C_028434_STENCILREF_BF, NULL); - r600_pipe_state_add_reg(rstate, R_028438_SX_ALPHA_REF, alpha_ref, 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_0286E0_SPI_FOG_FUNC_SCALE, 0x00000000, 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_0286E4_SPI_FOG_FUNC_BIAS, 0x00000000, 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_0286DC_SPI_FOG_CNTL, 0x00000000, 0xFFFFFFFF, NULL); @@ -371,16 +374,11 @@ static void *r600_create_sampler_state(struct pipe_context *ctx, { struct r600_pipe_state *rstate = CALLOC_STRUCT(r600_pipe_state); union util_color uc; - uint32_t coord_trunc = 0; if (rstate == NULL) { return NULL; } - if ((state->mag_img_filter == PIPE_TEX_FILTER_NEAREST) || - (state->min_img_filter == PIPE_TEX_FILTER_NEAREST)) - coord_trunc = 1; - rstate->id = R600_PIPE_STATE_SAMPLER; util_pack_color(state->border_color, PIPE_FORMAT_B8G8R8A8_UNORM, &uc); r600_pipe_state_add_reg(rstate, R_03C000_SQ_TEX_SAMPLER_WORD0_0, @@ -392,14 +390,11 @@ static void *r600_create_sampler_state(struct pipe_context *ctx, S_03C000_MIP_FILTER(r600_tex_mipfilter(state->min_mip_filter)) | S_03C000_DEPTH_COMPARE_FUNCTION(r600_tex_compare(state->compare_func)) | S_03C000_BORDER_COLOR_TYPE(uc.ui ? V_03C000_SQ_TEX_BORDER_COLOR_REGISTER : 0), 0xFFFFFFFF, NULL); - /* FIXME LOD it depends on texture base level ... */ r600_pipe_state_add_reg(rstate, R_03C004_SQ_TEX_SAMPLER_WORD1_0, S_03C004_MIN_LOD(S_FIXED(CLAMP(state->min_lod, 0, 15), 6)) | S_03C004_MAX_LOD(S_FIXED(CLAMP(state->max_lod, 0, 15), 6)) | S_03C004_LOD_BIAS(S_FIXED(CLAMP(state->lod_bias, -16, 16), 6)), 0xFFFFFFFF, NULL); - r600_pipe_state_add_reg(rstate, R_03C008_SQ_TEX_SAMPLER_WORD2_0, - S_03C008_MC_COORD_TRUNCATE(coord_trunc) | - S_03C008_TYPE(1), 0xFFFFFFFF, NULL); + r600_pipe_state_add_reg(rstate, R_03C008_SQ_TEX_SAMPLER_WORD2_0, S_03C008_TYPE(1), 0xFFFFFFFF, NULL); if (uc.ui) { r600_pipe_state_add_reg(rstate, R_00A400_TD_PS_SAMPLER0_BORDER_RED, fui(state->border_color[0]), 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_00A404_TD_PS_SAMPLER0_BORDER_GREEN, fui(state->border_color[1]), 0xFFFFFFFF, NULL); @@ -477,7 +472,6 @@ static struct pipe_sampler_view *r600_create_sampler_view(struct pipe_context *c depth = texture->array_size; } - /* FIXME properly handle first level != 0 */ r600_pipe_state_add_reg(rstate, R_038000_RESOURCE0_WORD0, S_038000_DIM(r600_tex_dim(texture->target)) | S_038000_TILE_MODE(array_mode) | @@ -724,7 +718,7 @@ static void r600_cb(struct r600_pipe_context *rctx, struct r600_pipe_state *rsta struct r600_surface *surf; unsigned level = state->cbufs[cb]->u.tex.level; unsigned pitch, slice; - unsigned color_info, color_info_mask; + unsigned color_info; unsigned format, swap, ntype, endian; unsigned offset; const struct util_format_description *desc; @@ -780,17 +774,36 @@ static void r600_cb(struct r600_pipe_context *rctx, struct r600_pipe_state *rsta S_0280A0_NUMBER_TYPE(ntype) | S_0280A0_ENDIAN(endian); - color_info_mask = 0xFFFFFFFF & ~S_0280A0_BLEND_CLAMP(1); - - /* on R600 this can't be set if BLEND_CLAMP isn't set, - if BLEND_FLOAT32 is set of > 11 bits in a UNORM or SNORM */ - if (desc->colorspace != UTIL_FORMAT_COLORSPACE_ZS && desc->channel[i].size < 12) { - //TODO: Seems to work on RV710, but i have no idea what to do between R600-RV710 - if (rctx->family < CHIP_RV710) { - color_info |= S_0280A0_BLEND_CLAMP(1); - color_info_mask |= S_0280A0_BLEND_CLAMP(1); - } - color_info |= S_0280A0_SOURCE_FORMAT(V_0280A0_EXPORT_NORM); + /* EXPORT_NORM is an optimzation that can be enabled for better + * performance in certain cases + */ + if (rctx->family < CHIP_RV770) { + /* EXPORT_NORM can be enabled if: + * - 11-bit or smaller UNORM/SNORM/SRGB + * - BLEND_CLAMP is enabled + * - BLEND_FLOAT32 is disabled + */ + // TODO get BLEND_CLAMP state from rasterizer state + if (desc->colorspace != UTIL_FORMAT_COLORSPACE_ZS && + (desc->channel[i].size < 12 && + desc->channel[i].type != UTIL_FORMAT_TYPE_FLOAT && + ntype != V_0280A0_NUMBER_UINT && + ntype != V_0280A0_NUMBER_SINT) && + G_0280A0_BLEND_CLAMP(color_info) && + !G_0280A0_BLEND_FLOAT32(color_info)) + color_info |= S_0280A0_SOURCE_FORMAT(V_0280A0_EXPORT_NORM); + } else { + /* EXPORT_NORM can be enabled if: + * - 11-bit or smaller UNORM/SNORM/SRGB + * - 16-bit or smaller FLOAT + */ + if (desc->colorspace != UTIL_FORMAT_COLORSPACE_ZS && + ((desc->channel[i].size < 12 && + desc->channel[i].type != UTIL_FORMAT_TYPE_FLOAT && + ntype != V_0280A0_NUMBER_UINT && ntype != V_0280A0_NUMBER_SINT) || + (desc->channel[i].size < 17 && + desc->channel[i].type == UTIL_FORMAT_TYPE_FLOAT))) + color_info |= S_0280A0_SOURCE_FORMAT(V_0280A0_EXPORT_NORM); } r600_pipe_state_add_reg(rstate, @@ -798,7 +811,7 @@ static void r600_cb(struct r600_pipe_context *rctx, struct r600_pipe_state *rsta (offset + r600_bo_offset(bo[0])) >> 8, 0xFFFFFFFF, bo[0]); r600_pipe_state_add_reg(rstate, R_0280A0_CB_COLOR0_INFO + cb * 4, - color_info, color_info_mask, NULL); + color_info, ~S_0280A0_BLEND_CLAMP(1), NULL); r600_pipe_state_add_reg(rstate, R_028060_CB_COLOR0_SIZE + cb * 4, S_028060_PITCH_TILE_MAX(pitch) | @@ -984,7 +997,7 @@ void r600_init_state_functions(struct r600_pipe_context *rctx) rctx->context.create_vertex_elements_state = r600_create_vertex_elements; rctx->context.create_vs_state = r600_create_shader_state; rctx->context.bind_blend_state = r600_bind_blend_state; - rctx->context.bind_depth_stencil_alpha_state = r600_bind_state; + rctx->context.bind_depth_stencil_alpha_state = r600_bind_dsa_state; rctx->context.bind_fragment_sampler_states = r600_bind_ps_sampler; rctx->context.bind_fs_state = r600_bind_ps_shader; rctx->context.bind_rasterizer_state = r600_bind_rs_state; @@ -1472,9 +1485,7 @@ void r600_pipe_set_buffer_resource(struct r600_pipe_context *rctx, r600_pipe_state_add_reg(rstate, R_038004_RESOURCE0_WORD1, rbuffer->bo_size - offset - 1, 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_038008_RESOURCE0_WORD2, -#ifdef PIPE_ARCH_BIG_ENDIAN - S_038008_ENDIAN_SWAP(ENDIAN_8IN32) | -#endif + S_038008_ENDIAN_SWAP(r600_endian_swap(32)) | S_038008_STRIDE(stride), 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_03800C_RESOURCE0_WORD3, 0x00000000, 0xFFFFFFFF, NULL); diff --git a/src/gallium/drivers/r600/r600_state_common.c b/src/gallium/drivers/r600/r600_state_common.c index 997c9a597ee..de1b811ce89 100644 --- a/src/gallium/drivers/r600/r600_state_common.c +++ b/src/gallium/drivers/r600/r600_state_common.c @@ -28,9 +28,49 @@ #include <util/u_format.h> #include <pipebuffer/pb_buffer.h> #include "pipe/p_shader_tokens.h" +#include "r600_formats.h" #include "r600_pipe.h" #include "r600d.h" +static int r600_conv_pipe_prim(unsigned pprim, unsigned *prim) +{ + switch (pprim) { + case PIPE_PRIM_POINTS: + *prim = V_008958_DI_PT_POINTLIST; + return 0; + case PIPE_PRIM_LINES: + *prim = V_008958_DI_PT_LINELIST; + return 0; + case PIPE_PRIM_LINE_STRIP: + *prim = V_008958_DI_PT_LINESTRIP; + return 0; + case PIPE_PRIM_LINE_LOOP: + *prim = V_008958_DI_PT_LINELOOP; + return 0; + case PIPE_PRIM_TRIANGLES: + *prim = V_008958_DI_PT_TRILIST; + return 0; + case PIPE_PRIM_TRIANGLE_STRIP: + *prim = V_008958_DI_PT_TRISTRIP; + return 0; + case PIPE_PRIM_TRIANGLE_FAN: + *prim = V_008958_DI_PT_TRIFAN; + return 0; + case PIPE_PRIM_POLYGON: + *prim = V_008958_DI_PT_POLYGON; + return 0; + case PIPE_PRIM_QUADS: + *prim = V_008958_DI_PT_QUADLIST; + return 0; + case PIPE_PRIM_QUAD_STRIP: + *prim = V_008958_DI_PT_QUADSTRIP; + return 0; + default: + fprintf(stderr, "%s:%d unsupported %d\n", __func__, __LINE__, pprim); + return -1; + } +} + /* common state between evergreen and r600 */ void r600_bind_blend_state(struct pipe_context *ctx, void *state) { @@ -46,6 +86,21 @@ void r600_bind_blend_state(struct pipe_context *ctx, void *state) r600_context_pipe_state_set(&rctx->ctx, rstate); } +void r600_bind_dsa_state(struct pipe_context *ctx, void *state) +{ + struct r600_pipe_context *rctx = (struct r600_pipe_context *)ctx; + struct r600_pipe_dsa *dsa = state; + struct r600_pipe_state *rstate; + + if (state == NULL) + return; + rstate = &dsa->rstate; + rctx->states[rstate->id] = rstate; + rctx->alpha_ref = dsa->alpha_ref; + rctx->alpha_ref_dirty = true; + r600_context_pipe_state_set(&rctx->ctx, rstate); +} + void r600_bind_rs_state(struct pipe_context *ctx, void *state) { struct r600_pipe_rasterizer *rs = (struct r600_pipe_rasterizer *)state; @@ -91,17 +146,6 @@ void r600_sampler_view_destroy(struct pipe_context *ctx, FREE(resource); } -void r600_bind_state(struct pipe_context *ctx, void *state) -{ - struct r600_pipe_context *rctx = (struct r600_pipe_context *)ctx; - struct r600_pipe_state *rstate = (struct r600_pipe_state *)state; - - if (state == NULL) - return; - rctx->states[rstate->id] = rstate; - r600_context_pipe_state_set(&rctx->ctx, rstate); -} - void r600_delete_state(struct pipe_context *ctx, void *state) { struct r600_pipe_context *rctx = (struct r600_pipe_context *)ctx; @@ -276,8 +320,25 @@ void r600_delete_vs_shader(struct pipe_context *ctx, void *state) free(shader); } +static void r600_update_alpha_ref(struct r600_pipe_context *rctx) +{ + unsigned alpha_ref = rctx->alpha_ref; + struct r600_pipe_state rstate; + + if (!rctx->alpha_ref_dirty) + return; + + rstate.nregs = 0; + if (rctx->export_16bpc) + alpha_ref &= ~0x1FFF; + r600_pipe_state_add_reg(&rstate, R_028438_SX_ALPHA_REF, alpha_ref, 0xFFFFFFFF, NULL); + + r600_context_pipe_state_set(&rctx->ctx, &rstate); + rctx->alpha_ref_dirty = false; +} + /* FIXME optimize away spi update when it's not needed */ -void r600_spi_update(struct r600_pipe_context *rctx) +static void r600_spi_update(struct r600_pipe_context *rctx, unsigned prim) { struct r600_pipe_shader *shader = rctx->ps_shader; struct r600_pipe_state rstate; @@ -309,6 +370,12 @@ void r600_spi_update(struct r600_pipe_context *rctx) r600_pipe_state_add_reg(&rstate, R_028644_SPI_PS_INPUT_CNTL_0 + i * 4, tmp, 0xFFFFFFFF, NULL); } + + if (prim == PIPE_PRIM_QUADS || prim == PIPE_PRIM_QUAD_STRIP || prim == PIPE_PRIM_POLYGON) { + r600_pipe_state_add_reg(&rstate, R_028814_PA_SU_SC_MODE_CNTL, + S_028814_PROVOKING_VTX_LAST(1), + S_028814_PROVOKING_VTX_LAST(1), NULL); + } r600_context_pipe_state_set(&rctx->ctx, &rstate); } @@ -472,16 +539,16 @@ void r600_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info *info) case 2: vgt_draw_initiator = 0; vgt_dma_index_type = 0; -#ifdef PIPE_ARCH_BIG_ENDIAN - vgt_dma_swap_mode = ENDIAN_8IN16; -#endif + if (R600_BIG_ENDIAN) { + vgt_dma_swap_mode = ENDIAN_8IN16; + } break; case 4: vgt_draw_initiator = 0; vgt_dma_index_type = 1; -#ifdef PIPE_ARCH_BIG_ENDIAN - vgt_dma_swap_mode = ENDIAN_8IN32; -#endif + if (R600_BIG_ENDIAN) { + vgt_dma_swap_mode = ENDIAN_8IN32; + } break; case 0: vgt_draw_initiator = 2; @@ -508,7 +575,8 @@ void r600_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info *info) return; } - r600_spi_update(rctx); + r600_update_alpha_ref(rctx); + r600_spi_update(rctx, draw.info.mode); mask = 0; for (int i = 0; i < rctx->framebuffer.nr_cbufs; i++) { diff --git a/src/gallium/drivers/r600/r600_state_inlines.h b/src/gallium/drivers/r600/r600_state_inlines.h index 5eabfdc2bc6..39c647835a6 100644 --- a/src/gallium/drivers/r600/r600_state_inlines.h +++ b/src/gallium/drivers/r600/r600_state_inlines.h @@ -343,7 +343,7 @@ static inline uint32_t r600_translate_colorswap(enum pipe_format format) case PIPE_FORMAT_A8B8G8R8_UNORM: case PIPE_FORMAT_X8B8G8R8_UNORM: - // case PIPE_FORMAT_R8SG8SB8UX8U_NORM: + /* case PIPE_FORMAT_R8SG8SB8UX8U_NORM: */ return V_0280A0_SWAP_STD_REV; case PIPE_FORMAT_Z24X8_UNORM: @@ -362,6 +362,7 @@ static inline uint32_t r600_translate_colorswap(enum pipe_format format) case PIPE_FORMAT_B10G10R10A2_UNORM: return V_0280A0_SWAP_ALT; + case PIPE_FORMAT_R11G11B10_FLOAT: case PIPE_FORMAT_R16G16_UNORM: case PIPE_FORMAT_R16G16_FLOAT: case PIPE_FORMAT_R32_FLOAT: @@ -465,6 +466,8 @@ static INLINE uint32_t r600_translate_colorformat(enum pipe_format format) case PIPE_FORMAT_R16G16_UNORM: return V_0280A0_COLOR_16_16; + case PIPE_FORMAT_R11G11B10_FLOAT: + return V_0280A0_COLOR_10_11_11_FLOAT; /* 64-bit buffers. */ case PIPE_FORMAT_R16G16B16_USCALED: @@ -499,60 +502,60 @@ static INLINE uint32_t r600_translate_colorformat(enum pipe_format format) case PIPE_FORMAT_UYVY: case PIPE_FORMAT_YUYV: default: - //R600_ERR("unsupported color format %d %s\n", format, util_format_name(format)); + /* R600_ERR("unsupported color format %d %s\n", format, util_format_name(format)); */ return ~0; /* Unsupported. */ } } static INLINE uint32_t r600_colorformat_endian_swap(uint32_t colorformat) { -#ifdef PIPE_ARCH_BIG_ENDIAN - switch(colorformat) { - case V_0280A0_COLOR_4_4: - return(ENDIAN_NONE); - - /* 8-bit buffers. */ - case V_0280A0_COLOR_8: - return(ENDIAN_NONE); - - /* 16-bit buffers. */ - case V_0280A0_COLOR_5_6_5: - case V_0280A0_COLOR_1_5_5_5: - case V_0280A0_COLOR_4_4_4_4: - case V_0280A0_COLOR_16: - case V_0280A0_COLOR_8_8: - return(ENDIAN_8IN16); - - /* 32-bit buffers. */ - case V_0280A0_COLOR_8_8_8_8: - case V_0280A0_COLOR_2_10_10_10: - case V_0280A0_COLOR_8_24: - case V_0280A0_COLOR_24_8: - case V_0280A0_COLOR_32_FLOAT: - case V_0280A0_COLOR_16_16_FLOAT: - case V_0280A0_COLOR_16_16: - return(ENDIAN_8IN32); - - /* 64-bit buffers. */ - case V_0280A0_COLOR_16_16_16_16: - case V_0280A0_COLOR_16_16_16_16_FLOAT: - return(ENDIAN_8IN16); - - case V_0280A0_COLOR_32_32_FLOAT: - case V_0280A0_COLOR_32_32: - return(ENDIAN_8IN32); - - /* 128-bit buffers. */ - case V_0280A0_COLOR_32_32_32_FLOAT: - case V_0280A0_COLOR_32_32_32_32_FLOAT: - case V_0280A0_COLOR_32_32_32_32: - return(ENDIAN_8IN32); - default: - return ENDIAN_NONE; /* Unsupported. */ + if (R600_BIG_ENDIAN) { + switch(colorformat) { + case V_0280A0_COLOR_4_4: + return(ENDIAN_NONE); + + /* 8-bit buffers. */ + case V_0280A0_COLOR_8: + return(ENDIAN_NONE); + + /* 16-bit buffers. */ + case V_0280A0_COLOR_5_6_5: + case V_0280A0_COLOR_1_5_5_5: + case V_0280A0_COLOR_4_4_4_4: + case V_0280A0_COLOR_16: + case V_0280A0_COLOR_8_8: + return(ENDIAN_8IN16); + + /* 32-bit buffers. */ + case V_0280A0_COLOR_8_8_8_8: + case V_0280A0_COLOR_2_10_10_10: + case V_0280A0_COLOR_8_24: + case V_0280A0_COLOR_24_8: + case V_0280A0_COLOR_32_FLOAT: + case V_0280A0_COLOR_16_16_FLOAT: + case V_0280A0_COLOR_16_16: + return(ENDIAN_8IN32); + + /* 64-bit buffers. */ + case V_0280A0_COLOR_16_16_16_16: + case V_0280A0_COLOR_16_16_16_16_FLOAT: + return(ENDIAN_8IN16); + + case V_0280A0_COLOR_32_32_FLOAT: + case V_0280A0_COLOR_32_32: + return(ENDIAN_8IN32); + + /* 128-bit buffers. */ + case V_0280A0_COLOR_32_32_32_FLOAT: + case V_0280A0_COLOR_32_32_32_32_FLOAT: + case V_0280A0_COLOR_32_32_32_32: + return(ENDIAN_8IN32); + default: + return ENDIAN_NONE; /* Unsupported. */ + } + } else { + return ENDIAN_NONE; } -#else - return ENDIAN_NONE; -#endif } static INLINE boolean r600_is_sampler_format_supported(struct pipe_screen *screen, enum pipe_format format) diff --git a/src/gallium/drivers/r600/r600_texture.c b/src/gallium/drivers/r600/r600_texture.c index 690aeafcc52..77cdd8dc33d 100644 --- a/src/gallium/drivers/r600/r600_texture.c +++ b/src/gallium/drivers/r600/r600_texture.c @@ -892,13 +892,17 @@ uint32_t r600_translate_texformat(struct pipe_screen *screen, switch (format) { case PIPE_FORMAT_RGTC1_SNORM: + case PIPE_FORMAT_LATC1_SNORM: word4 |= sign_bit[0]; case PIPE_FORMAT_RGTC1_UNORM: + case PIPE_FORMAT_LATC1_UNORM: result = FMT_BC4; goto out_word4; case PIPE_FORMAT_RGTC2_SNORM: + case PIPE_FORMAT_LATC2_SNORM: word4 |= sign_bit[0] | sign_bit[1]; case PIPE_FORMAT_RGTC2_UNORM: + case PIPE_FORMAT_LATC2_UNORM: result = FMT_BC5; goto out_word4; default: @@ -935,6 +939,14 @@ uint32_t r600_translate_texformat(struct pipe_screen *screen, } } + if (format == PIPE_FORMAT_R9G9B9E5_FLOAT) { + result = FMT_5_9_9_9_SHAREDEXP; + goto out_word4; + } else if (format == PIPE_FORMAT_R11G11B10_FLOAT) { + result = FMT_10_11_11_FLOAT; + goto out_word4; + } + for (i = 0; i < desc->nr_channels; i++) { if (desc->channel[i].type == UTIL_FORMAT_TYPE_SIGNED) { @@ -1088,6 +1100,6 @@ out_word4: *yuv_format_p = yuv_format; return result; out_unknown: -// R600_ERR("Unable to handle texformat %d %s\n", format, util_format_name(format)); + /* R600_ERR("Unable to handle texformat %d %s\n", format, util_format_name(format)); */ return ~0; } diff --git a/src/gallium/drivers/r600/r600d.h b/src/gallium/drivers/r600/r600d.h index 2bff52bec8c..8296b52eb94 100644 --- a/src/gallium/drivers/r600/r600d.h +++ b/src/gallium/drivers/r600/r600d.h @@ -3461,9 +3461,4 @@ #define SQ_TEX_INST_SAMPLE_L 0x11 #define SQ_TEX_INST_SAMPLE_C 0x18 -#define ENDIAN_NONE 0 -#define ENDIAN_8IN16 1 -#define ENDIAN_8IN32 2 -#define ENDIAN_8IN64 3 - #endif diff --git a/src/gallium/drivers/svga/svga_pipe_clear.c b/src/gallium/drivers/svga/svga_pipe_clear.c index b288c3eb2a6..2bba77769ad 100644 --- a/src/gallium/drivers/svga/svga_pipe_clear.c +++ b/src/gallium/drivers/svga/svga_pipe_clear.c @@ -46,7 +46,7 @@ try_clear(struct svga_context *svga, boolean restore_viewport = FALSE; SVGA3dClearFlag flags = 0; struct pipe_framebuffer_state *fb = &svga->curr.framebuffer; - union util_color uc; + union util_color uc = {0}; ret = svga_update_state(svga, SVGA_STATE_HW_CLEAR); if (ret) diff --git a/src/gallium/drivers/svga/svga_state_framebuffer.c b/src/gallium/drivers/svga/svga_state_framebuffer.c index cc4819431ad..502f21fc42c 100644 --- a/src/gallium/drivers/svga/svga_state_framebuffer.c +++ b/src/gallium/drivers/svga/svga_state_framebuffer.c @@ -474,9 +474,26 @@ static int emit_clip_planes( struct svga_context *svga, /* TODO: just emit directly from svga_set_clip_state()? */ for (i = 0; i < svga->curr.clip.nr; i++) { - ret = SVGA3D_SetClipPlane( svga->swc, - i, - svga->curr.clip.ucp[i] ); + /* need to express the plane in D3D-style coordinate space. + * GL coords get converted to D3D coords with the matrix: + * [ 1 0 0 0 ] + * [ 0 -1 0 0 ] + * [ 0 0 2 0 ] + * [ 0 0 -1 1 ] + * Apply that matrix to our plane equation, and invert Y. + */ + float a = svga->curr.clip.ucp[i][0]; + float b = svga->curr.clip.ucp[i][1]; + float c = svga->curr.clip.ucp[i][2]; + float d = svga->curr.clip.ucp[i][3]; + float plane[4]; + + plane[0] = a; + plane[1] = b; + plane[2] = 2.0f * c; + plane[3] = d - c; + + ret = SVGA3D_SetClipPlane(svga->swc, i, plane); if(ret != PIPE_OK) return ret; } diff --git a/src/gallium/drivers/svga/svga_state_need_swtnl.c b/src/gallium/drivers/svga/svga_state_need_swtnl.c index 68c02578789..5a37f9fc287 100644 --- a/src/gallium/drivers/svga/svga_state_need_swtnl.c +++ b/src/gallium/drivers/svga/svga_state_need_swtnl.c @@ -139,13 +139,6 @@ static int update_need_pipeline( struct svga_context *svga, need_pipeline = TRUE; } - /* SVGA_NEW_CLIP - */ - if (svga->curr.clip.nr) { - SVGA_DBG(DEBUG_SWTNL, "%s: userclip\n", __FUNCTION__); - need_pipeline = TRUE; - } - if (need_pipeline != svga->state.sw.need_pipeline) { svga->state.sw.need_pipeline = need_pipeline; svga->dirty |= SVGA_NEW_NEED_PIPELINE; @@ -163,7 +156,6 @@ struct svga_tracked_state svga_update_need_pipeline = { "need pipeline", (SVGA_NEW_RAST | - SVGA_NEW_CLIP | SVGA_NEW_VS | SVGA_NEW_REDUCED_PRIMITIVE), update_need_pipeline diff --git a/src/gallium/drivers/svga/svga_state_rss.c b/src/gallium/drivers/svga/svga_state_rss.c index ab13f3fdf19..28f32793742 100644 --- a/src/gallium/drivers/svga/svga_state_rss.c +++ b/src/gallium/drivers/svga/svga_state_rss.c @@ -240,6 +240,11 @@ static int emit_rss( struct svga_context *svga, EMIT_RS_FLOAT( svga, bias, DEPTHBIAS, fail ); } + if (dirty & SVGA_NEW_CLIP) { + /* the number of clip planes is how many planes to enable */ + unsigned enabled = (1 << svga->curr.clip.nr) - 1; + EMIT_RS( svga, enabled, CLIPPLANEENABLE, fail ); + } if (queue.rs_count) { SVGA3dRenderState *rs; @@ -276,6 +281,7 @@ struct svga_tracked_state svga_hw_rss = (SVGA_NEW_BLEND | SVGA_NEW_BLEND_COLOR | + SVGA_NEW_CLIP | SVGA_NEW_DEPTH_STENCIL | SVGA_NEW_STENCIL_REF | SVGA_NEW_RAST | diff --git a/src/gallium/include/pipe/p_defines.h b/src/gallium/include/pipe/p_defines.h index 75df89f2acb..6c6641588d3 100644 --- a/src/gallium/include/pipe/p_defines.h +++ b/src/gallium/include/pipe/p_defines.h @@ -300,7 +300,8 @@ enum pipe_transfer_usage { #define PIPE_BIND_TRANSFER_WRITE (1 << 9) /* get_transfer */ #define PIPE_BIND_TRANSFER_READ (1 << 10) /* get_transfer */ #define PIPE_BIND_STREAM_OUTPUT (1 << 11) /* set_stream_output_buffers */ -#define PIPE_BIND_CUSTOM (1 << 16) /* state-tracker/winsys usages */ +#define PIPE_BIND_CURSOR (1 << 16) /* mouse cursor */ +#define PIPE_BIND_CUSTOM (1 << 17) /* state-tracker/winsys usages */ /* The first two flags above were previously part of the amorphous * TEXTURE_USAGE, most of which are now descriptions of the ways a @@ -465,6 +466,8 @@ enum pipe_cap { PIPE_CAP_VERTEX_ELEMENT_INSTANCE_DIVISOR = 44, PIPE_CAP_FRAGMENT_COLOR_CLAMP_CONTROL = 45, PIPE_CAP_MIXED_COLORBUFFER_FORMATS = 46, + PIPE_CAP_SEAMLESS_CUBE_MAP = 47, + PIPE_CAP_SEAMLESS_CUBE_MAP_PER_TEXTURE = 48, }; /* Shader caps not specific to any single stage */ diff --git a/src/gallium/include/pipe/p_state.h b/src/gallium/include/pipe/p_state.h index f6ad4560f16..86ef255cd2e 100644 --- a/src/gallium/include/pipe/p_state.h +++ b/src/gallium/include/pipe/p_state.h @@ -94,24 +94,21 @@ struct pipe_rasterizer_state unsigned poly_smooth:1; unsigned poly_stipple_enable:1; unsigned point_smooth:1; - unsigned sprite_coord_enable:PIPE_MAX_SHADER_OUTPUTS; unsigned sprite_coord_mode:1; /**< PIPE_SPRITE_COORD_ */ unsigned point_quad_rasterization:1; /** points rasterized as quads or points */ unsigned point_size_per_vertex:1; /**< size computed in vertex shader */ unsigned multisample:1; /* XXX maybe more ms state in future */ unsigned line_smooth:1; unsigned line_stipple_enable:1; - unsigned line_stipple_factor:8; /**< [1..256] actually */ - unsigned line_stipple_pattern:16; unsigned line_last_pixel:1; - /** + /** * Use the first vertex of a primitive as the provoking vertex for * flat shading. */ - unsigned flatshade_first:1; + unsigned flatshade_first:1; - /** + /** * When true, triangle rasterization uses (0.5, 0.5) pixel centers * for determining pixel ownership. * @@ -124,6 +121,11 @@ struct pipe_rasterizer_state */ unsigned gl_rasterization_rules:1; + unsigned line_stipple_factor:8; /**< [1..256] actually */ + unsigned line_stipple_pattern:16; + + unsigned sprite_coord_enable:PIPE_MAX_SHADER_OUTPUTS; + float line_width; float point_size; /**< used when no per-vertex size */ float offset_units; @@ -267,6 +269,7 @@ struct pipe_sampler_state unsigned compare_func:3; /**< PIPE_FUNC_x */ unsigned normalized_coords:1; /**< Are coords normalized to [0,1]? */ unsigned max_anisotropy:6; + unsigned seamless_cube_map:1; float lod_bias; /**< LOD/lambda bias */ float min_lod, max_lod; /**< LOD clamp range, after bias */ float border_color[4]; diff --git a/src/gallium/state_trackers/egl/wayland/native_drm.c b/src/gallium/state_trackers/egl/wayland/native_drm.c new file mode 100644 index 00000000000..604720f6e5f --- /dev/null +++ b/src/gallium/state_trackers/egl/wayland/native_drm.c @@ -0,0 +1,303 @@ +/* + * Mesa 3-D graphics library + * Version: 7.11 + * + * Copyright (C) 2011 Benjamin Franzke <[email protected]> + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + */ + +#include "util/u_memory.h" +#include "util/u_inlines.h" + +#include "pipe/p_compiler.h" +#include "pipe/p_screen.h" +#include "pipe/p_context.h" +#include "pipe/p_state.h" +#include "state_tracker/drm_driver.h" + +#include "egllog.h" +#include <errno.h> + +#include "native_wayland.h" + +/* see get_drm_screen_name */ +#include <radeon_drm.h> +#include "radeon/drm/radeon_drm_public.h" + +#include <wayland-client.h> +#include "wayland-drm-client-protocol.h" +#include "wayland-egl-priv.h" + +#include <xf86drm.h> +#include <sys/types.h> +#include <sys/stat.h> +#include <fcntl.h> + +struct wayland_drm_display { + struct wayland_display base; + + struct native_event_handler *event_handler; + + struct wl_drm *wl_drm; + int fd; + char *device_name; + boolean authenticated; +}; + +static INLINE struct wayland_drm_display * +wayland_drm_display(const struct native_display *ndpy) +{ + return (struct wayland_drm_display *) ndpy; +} + +static void +sync_callback(void *data) +{ + int *done = data; + + *done = 1; +} + +static void +force_roundtrip(struct wl_display *display) +{ + int done = 0; + + wl_display_sync_callback(display, sync_callback, &done); + wl_display_iterate(display, WL_DISPLAY_WRITABLE); + while (!done) + wl_display_iterate(display, WL_DISPLAY_READABLE); +} + +static void +wayland_drm_display_destroy(struct native_display *ndpy) +{ + struct wayland_drm_display *drmdpy = wayland_drm_display(ndpy); + + if (drmdpy->fd) + close(drmdpy->fd); + if (drmdpy->wl_drm) + wl_drm_destroy(drmdpy->wl_drm); + if (drmdpy->device_name) + FREE(drmdpy->device_name); + if (drmdpy->base.config) + FREE(drmdpy->base.config); + + ndpy_uninit(ndpy); + + FREE(drmdpy); +} + +static struct wl_buffer * +wayland_create_drm_buffer(struct wayland_display *display, + struct wayland_surface *surface, + enum native_attachment attachment) +{ + struct wayland_drm_display *drmdpy = (struct wayland_drm_display *) display; + struct pipe_screen *screen = drmdpy->base.base.screen; + struct pipe_resource *resource; + struct winsys_handle wsh; + uint width, height; + struct wl_visual *visual; + + resource = resource_surface_get_single_resource(surface->rsurf, attachment); + resource_surface_get_size(surface->rsurf, &width, &height); + + wsh.type = DRM_API_HANDLE_TYPE_SHARED; + screen->resource_get_handle(screen, resource, &wsh); + + pipe_resource_reference(&resource, NULL); + + switch (surface->type) { + case WL_WINDOW_SURFACE: + visual = surface->win->visual; + break; + case WL_PIXMAP_SURFACE: + visual = surface->pix->visual; + break; + default: + return NULL; + } + + return wl_drm_create_buffer(drmdpy->wl_drm, wsh.handle, + width, height, wsh.stride, visual); +} + +static const char * +get_drm_screen_name(int fd, drmVersionPtr version) +{ + const char *name = version->name; + + if (name && !strcmp(name, "radeon")) { + int chip_id; + struct drm_radeon_info info; + + memset(&info, 0, sizeof(info)); + info.request = RADEON_INFO_DEVICE_ID; + info.value = pointer_to_intptr(&chip_id); + if (drmCommandWriteRead(fd, DRM_RADEON_INFO, &info, sizeof(info)) != 0) + return NULL; + + name = is_r3xx(chip_id) ? "r300" : "r600"; + } + + return name; +} + +static void +drm_handle_device(void *data, struct wl_drm *drm, const char *device) +{ + struct wayland_drm_display *drmdpy = data; + drm_magic_t magic; + + drmdpy->device_name = strdup(device); + if (!drmdpy->device_name) + return; + + drmdpy->fd = open(drmdpy->device_name, O_RDWR); + if (drmdpy->fd == -1) { + _eglLog(_EGL_WARNING, "wayland-egl: could not open %s (%s)", + drmdpy->device_name, strerror(errno)); + return; + } + + drmGetMagic(drmdpy->fd, &magic); + wl_drm_authenticate(drmdpy->wl_drm, magic); +} + +static void +drm_handle_authenticated(void *data, struct wl_drm *drm) +{ + struct wayland_drm_display *drmdpy = data; + + drmdpy->authenticated = true; +} + +static const struct wl_drm_listener drm_listener = { + drm_handle_device, + drm_handle_authenticated +}; + +static boolean +wayland_drm_display_init_screen(struct native_display *ndpy) +{ + struct wayland_drm_display *drmdpy = wayland_drm_display(ndpy); + drmVersionPtr version; + const char *driver_name; + uint32_t id; + + id = wl_display_get_global(drmdpy->base.dpy, "wl_drm", 1); + if (id == 0) + force_roundtrip(drmdpy->base.dpy); + id = wl_display_get_global(drmdpy->base.dpy, "wl_drm", 1); + if (id == 0) + return FALSE; + + drmdpy->wl_drm = wl_drm_create(drmdpy->base.dpy, id, 1); + if (!drmdpy->wl_drm) + return FALSE; + + wl_drm_add_listener(drmdpy->wl_drm, &drm_listener, drmdpy); + force_roundtrip(drmdpy->base.dpy); + if (drmdpy->fd == -1) + return FALSE; + + force_roundtrip(drmdpy->base.dpy); + if (!drmdpy->authenticated) + return FALSE; + + version = drmGetVersion(drmdpy->fd); + if (!version) { + _eglLog(_EGL_WARNING, "invalid fd %d", drmdpy->fd); + return FALSE; + } + + /* FIXME: share this with native_drm or egl_dri2 */ + driver_name = get_drm_screen_name(drmdpy->fd, version); + + drmdpy->base.base.screen = + drmdpy->event_handler->new_drm_screen(&drmdpy->base.base, + driver_name, drmdpy->fd); + drmFreeVersion(version); + + if (!drmdpy->base.base.screen) { + _eglLog(_EGL_WARNING, "failed to create DRM screen"); + return FALSE; + } + + return TRUE; +} + +static struct pipe_resource * +wayland_drm_display_import_buffer(struct native_display *ndpy, + const struct pipe_resource *templ, + void *buf) +{ + return ndpy->screen->resource_from_handle(ndpy->screen, + templ, (struct winsys_handle *) buf); +} + +static boolean +wayland_drm_display_export_buffer(struct native_display *ndpy, + struct pipe_resource *res, + void *buf) +{ + return ndpy->screen->resource_get_handle(ndpy->screen, + res, (struct winsys_handle *) buf); +} + +static struct native_display_buffer wayland_drm_display_buffer = { + wayland_drm_display_import_buffer, + wayland_drm_display_export_buffer +}; + +struct wayland_display * +wayland_create_drm_display(struct wl_display *dpy, + struct native_event_handler *event_handler, + void *user_data) +{ + struct wayland_drm_display *drmdpy; + + drmdpy = CALLOC_STRUCT(wayland_drm_display); + if (!drmdpy) + return NULL; + + drmdpy->event_handler = event_handler; + drmdpy->base.base.user_data = user_data; + + drmdpy->base.dpy = dpy; + if (!drmdpy->base.dpy) { + wayland_drm_display_destroy(&drmdpy->base.base); + return NULL; + } + + if (!wayland_drm_display_init_screen(&drmdpy->base.base)) { + wayland_drm_display_destroy(&drmdpy->base.base); + return NULL; + } + drmdpy->base.base.destroy = wayland_drm_display_destroy; + drmdpy->base.base.buffer = &wayland_drm_display_buffer; + + drmdpy->base.create_buffer = wayland_create_drm_buffer; + + return &drmdpy->base; +} + +/* vim: set sw=3 ts=8 sts=3 expandtab: */ diff --git a/src/gallium/state_trackers/egl/wayland/native_shm.c b/src/gallium/state_trackers/egl/wayland/native_shm.c new file mode 100644 index 00000000000..609fc0cd04a --- /dev/null +++ b/src/gallium/state_trackers/egl/wayland/native_shm.c @@ -0,0 +1,174 @@ +/* + * Mesa 3-D graphics library + * Version: 7.11 + * + * Copyright (C) 2011 Benjamin Franzke <[email protected]> + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + */ + +#include "util/u_memory.h" +#include "util/u_inlines.h" + +#include "pipe/p_compiler.h" +#include "pipe/p_screen.h" +#include "pipe/p_context.h" +#include "pipe/p_state.h" + +#include "sw/wayland/wayland_sw_winsys.h" + +#include "egllog.h" + +#include "native_wayland.h" + +#include <wayland-client.h> +#include "wayland-egl-priv.h" + +#include <sys/types.h> +#include <sys/stat.h> +#include <fcntl.h> + +struct wayland_shm_display { + struct wayland_display base; + + struct native_event_handler *event_handler; + struct wl_shm *wl_shm; +}; + +static INLINE struct wayland_shm_display * +wayland_shm_display(const struct native_display *ndpy) +{ + return (struct wayland_shm_display *) ndpy; +} + + +static void +wayland_shm_display_destroy(struct native_display *ndpy) +{ + struct wayland_shm_display *shmdpy = wayland_shm_display(ndpy); + + if (shmdpy->base.config) + FREE(shmdpy->base.config); + + ndpy_uninit(ndpy); + + FREE(shmdpy); +} + + +static struct wl_buffer * +wayland_create_shm_buffer(struct wayland_display *display, + struct wayland_surface *surface, + enum native_attachment attachment) +{ + struct wayland_shm_display *shmdpy = (struct wayland_shm_display *) display; + struct pipe_screen *screen = shmdpy->base.base.screen; + struct pipe_resource *resource; + struct winsys_handle wsh; + uint width, height; + struct wl_visual *visual; + + resource = resource_surface_get_single_resource(surface->rsurf, attachment); + resource_surface_get_size(surface->rsurf, &width, &height); + + screen->resource_get_handle(screen, resource, &wsh); + + pipe_resource_reference(&resource, NULL); + + switch (surface->type) { + case WL_WINDOW_SURFACE: + visual = surface->win->visual; + break; + case WL_PIXMAP_SURFACE: + visual = surface->pix->visual; + break; + default: + return NULL; + } + + return wl_shm_create_buffer(shmdpy->wl_shm, wsh.fd, + width, height, + wsh.stride, visual); +} + +static boolean +wayland_shm_display_init_screen(struct native_display *ndpy) +{ + struct wayland_shm_display *shmdpy = wayland_shm_display(ndpy); + struct sw_winsys *winsys = NULL; + uint32_t id; + + id = wl_display_get_global(shmdpy->base.dpy, "wl_shm", 1); + if (id == 0) + wl_display_iterate(shmdpy->base.dpy, WL_DISPLAY_READABLE); + id = wl_display_get_global(shmdpy->base.dpy, "wl_shm", 1); + if (id == 0) + return FALSE; + + shmdpy->wl_shm = wl_shm_create(shmdpy->base.dpy, id, 1); + if (!shmdpy->wl_shm) + return FALSE; + + winsys = wayland_create_sw_winsys(shmdpy->base.dpy); + if (!winsys) + return FALSE; + + shmdpy->base.base.screen = + shmdpy->event_handler->new_sw_screen(&shmdpy->base.base, winsys); + + if (!shmdpy->base.base.screen) { + _eglLog(_EGL_WARNING, "failed to create shm screen"); + return FALSE; + } + + return TRUE; +} + +struct wayland_display * +wayland_create_shm_display(struct wl_display *dpy, + struct native_event_handler *event_handler, + void *user_data) +{ + struct wayland_shm_display *shmdpy; + + shmdpy = CALLOC_STRUCT(wayland_shm_display); + if (!shmdpy) + return NULL; + + shmdpy->event_handler = event_handler; + shmdpy->base.base.user_data = user_data; + + shmdpy->base.dpy = dpy; + if (!shmdpy->base.dpy) { + wayland_shm_display_destroy(&shmdpy->base.base); + return NULL; + } + + if (!wayland_shm_display_init_screen(&shmdpy->base.base)) { + wayland_shm_display_destroy(&shmdpy->base.base); + return NULL; + } + + shmdpy->base.base.destroy = wayland_shm_display_destroy; + shmdpy->base.create_buffer = wayland_create_shm_buffer; + + return &shmdpy->base; +} + +/* vim: set sw=3 ts=8 sts=3 expandtab: */ diff --git a/src/gallium/state_trackers/egl/wayland/native_wayland.c b/src/gallium/state_trackers/egl/wayland/native_wayland.c index b9cf8c48f1e..e7ed9d64b7e 100644 --- a/src/gallium/state_trackers/egl/wayland/native_wayland.c +++ b/src/gallium/state_trackers/egl/wayland/native_wayland.c @@ -31,25 +31,10 @@ #include "pipe/p_context.h" #include "pipe/p_state.h" #include "state_tracker/drm_driver.h" - #include "egllog.h" -#include <errno.h> #include "native_wayland.h" -/* see get_drm_screen_name */ -#include <radeon_drm.h> -#include "radeon/drm/radeon_drm_public.h" - -#include <wayland-client.h> -#include "wayland-drm-client-protocol.h" -#include "wayland-egl-priv.h" - -#include <xf86drm.h> -#include <sys/types.h> -#include <sys/stat.h> -#include <fcntl.h> - static struct native_event_handler *wayland_event_handler; static void @@ -113,12 +98,12 @@ wayland_display_get_param(struct native_display *ndpy, int val; switch (param) { - case NATIVE_PARAM_USE_NATIVE_BUFFER: - case NATIVE_PARAM_PRESERVE_BUFFER: - case NATIVE_PARAM_MAX_SWAP_INTERVAL: - default: - val = 0; - break; + case NATIVE_PARAM_USE_NATIVE_BUFFER: + case NATIVE_PARAM_PRESERVE_BUFFER: + case NATIVE_PARAM_MAX_SWAP_INTERVAL: + default: + val = 0; + break; } return val; @@ -134,48 +119,6 @@ wayland_display_is_pixmap_supported(struct native_display *ndpy, return TRUE; } -static void -wayland_display_destroy(struct native_display *ndpy) -{ - struct wayland_display *display = wayland_display(ndpy); - - if (display->fd) - close(display->fd); - if (display->wl_drm) - wl_drm_destroy(display->wl_drm); - if (display->device_name) - FREE(display->device_name); - if (display->config) - FREE(display->config); - - ndpy_uninit(ndpy); - - FREE(display); -} - - -static struct wl_buffer * -wayland_create_buffer(struct wayland_surface *surface, - enum native_attachment attachment) -{ - struct wayland_display *display = surface->display; - struct pipe_resource *resource; - struct winsys_handle wsh; - uint width, height; - - resource = resource_surface_get_single_resource(surface->rsurf, attachment); - resource_surface_get_size(surface->rsurf, &width, &height); - - wsh.type = DRM_API_HANDLE_TYPE_SHARED; - display->base.screen->resource_get_handle(display->base.screen, resource, &wsh); - - pipe_resource_reference(&resource, NULL); - - return wl_drm_create_buffer(display->wl_drm, wsh.handle, - width, height, - wsh.stride, surface->win->visual); -} - static void wayland_pixmap_destroy(struct wl_egl_pixmap *egl_pixmap) { @@ -188,7 +131,7 @@ wayland_pixmap_destroy(struct wl_egl_pixmap *egl_pixmap) wl_buffer_destroy(egl_pixmap->buffer); egl_pixmap->buffer = NULL; } - + egl_pixmap->driver_private = NULL; egl_pixmap->destroy = NULL; } @@ -196,26 +139,16 @@ wayland_pixmap_destroy(struct wl_egl_pixmap *egl_pixmap) static void wayland_pixmap_surface_initialize(struct wayland_surface *surface) { - struct native_display *ndpy = &surface->display->base; - struct pipe_resource *resource; - struct winsys_handle wsh; + struct wayland_display *display = wayland_display(&surface->display->base); const enum native_attachment front_natt = NATIVE_ATTACHMENT_FRONT_LEFT; if (surface->pix->buffer != NULL) return; - resource = resource_surface_get_single_resource(surface->rsurf, front_natt); - - wsh.type = DRM_API_HANDLE_TYPE_SHARED; - ndpy->screen->resource_get_handle(ndpy->screen, resource, &wsh); - - surface->pix->buffer = - wl_drm_create_buffer(surface->display->wl_drm, wsh.handle, - surface->pix->width, surface->pix->height, - wsh.stride, surface->pix->visual); - - surface->pix->destroy = wayland_pixmap_destroy; - surface->pix->driver_private = resource; + surface->pix->buffer = display->create_buffer(display, surface, front_natt); + surface->pix->destroy = wayland_pixmap_destroy; + surface->pix->driver_private = + resource_surface_get_single_resource(surface->rsurf, front_natt); } static void @@ -237,11 +170,11 @@ wayland_window_surface_handle_resize(struct wayland_surface *surface) struct pipe_resource *front_resource; const enum native_attachment front_natt = NATIVE_ATTACHMENT_FRONT_LEFT; int i; - + front_resource = resource_surface_get_single_resource(surface->rsurf, front_natt); if (resource_surface_set_size(surface->rsurf, - surface->win->width, surface->win->height)) { + surface->win->width, surface->win->height)) { if (surface->pending_resource) force_roundtrip(display->dpy); @@ -328,17 +261,19 @@ wayland_surface_swap_buffers(struct native_surface *nsurf) if (surface->type == WL_WINDOW_SURFACE) { resource_surface_swap_buffers(surface->rsurf, - NATIVE_ATTACHMENT_FRONT_LEFT, NATIVE_ATTACHMENT_BACK_LEFT, FALSE); + NATIVE_ATTACHMENT_FRONT_LEFT, + NATIVE_ATTACHMENT_BACK_LEFT, FALSE); wayland_buffers_swap(surface->buffer, WL_BUFFER_FRONT, WL_BUFFER_BACK); if (surface->buffer[WL_BUFFER_FRONT] == NULL) surface->buffer[WL_BUFFER_FRONT] = - wayland_create_buffer(surface, NATIVE_ATTACHMENT_FRONT_LEFT); + display->create_buffer(display, surface, + NATIVE_ATTACHMENT_FRONT_LEFT); wl_surface_attach(surface->win->surface, surface->buffer[WL_BUFFER_FRONT], surface->dx, surface->dy); - + resource_surface_get_size(surface->rsurf, (uint *) &surface->win->attached_width, (uint *) &surface->win->attached_height); @@ -348,7 +283,8 @@ wayland_surface_swap_buffers(struct native_surface *nsurf) surface->sequence_number++; wayland_event_handler->invalid_surface(&display->base, - &surface->base, surface->sequence_number); + &surface->base, + surface->sequence_number); return TRUE; } @@ -408,6 +344,8 @@ wayland_surface_destroy(struct native_surface *nsurf) FREE(surface); } + + static struct native_surface * wayland_create_pixmap_surface(struct native_display *ndpy, EGLNativePixmapType pix, @@ -417,6 +355,8 @@ wayland_create_pixmap_surface(struct native_display *ndpy, struct wayland_surface *surface; struct wl_egl_pixmap *egl_pixmap = (struct wl_egl_pixmap *) pix; enum native_attachment natt = NATIVE_ATTACHMENT_FRONT_LEFT; + uint bind = PIPE_BIND_RENDER_TARGET | PIPE_BIND_SAMPLER_VIEW | + PIPE_BIND_DISPLAY_TARGET | PIPE_BIND_SCANOUT; surface = CALLOC_STRUCT(wayland_surface); if (!surface) @@ -434,15 +374,13 @@ wayland_create_pixmap_surface(struct native_display *ndpy, surface->color_format = PIPE_FORMAT_B8G8R8A8_UNORM; surface->attachment_mask = (1 << NATIVE_ATTACHMENT_FRONT_LEFT); - + surface->rsurf = resource_surface_create(display->base.screen, - surface->color_format, - PIPE_BIND_RENDER_TARGET | PIPE_BIND_SAMPLER_VIEW | - PIPE_BIND_DISPLAY_TARGET | PIPE_BIND_SCANOUT); + surface->color_format, bind); if (!surface->rsurf) { - FREE(surface); - return NULL; + FREE(surface); + return NULL; } resource_surface_set_size(surface->rsurf, @@ -461,6 +399,7 @@ wayland_create_pixmap_surface(struct native_display *ndpy, return &surface->base; } + static struct native_surface * wayland_create_window_surface(struct native_display *ndpy, EGLNativeWindowType win, @@ -469,6 +408,8 @@ wayland_create_window_surface(struct native_display *ndpy, struct wayland_display *display = wayland_display(ndpy); struct wayland_config *config = wayland_config(nconf); struct wayland_surface *surface; + uint bind = PIPE_BIND_RENDER_TARGET | PIPE_BIND_SAMPLER_VIEW | + PIPE_BIND_DISPLAY_TARGET | PIPE_BIND_SCANOUT; surface = CALLOC_STRUCT(wayland_surface); if (!surface) @@ -486,16 +427,14 @@ wayland_create_window_surface(struct native_display *ndpy, surface->buffer[WL_BUFFER_FRONT] = NULL; surface->buffer[WL_BUFFER_BACK] = NULL; surface->attachment_mask = (1 << NATIVE_ATTACHMENT_FRONT_LEFT) | - (1 << NATIVE_ATTACHMENT_BACK_LEFT); + (1 << NATIVE_ATTACHMENT_BACK_LEFT); surface->rsurf = resource_surface_create(display->base.screen, - surface->color_format, - PIPE_BIND_RENDER_TARGET | PIPE_BIND_SAMPLER_VIEW | - PIPE_BIND_DISPLAY_TARGET | PIPE_BIND_SCANOUT); + surface->color_format, bind); if (!surface->rsurf) { - FREE(surface); - return NULL; + FREE(surface); + return NULL; } surface->base.destroy = wayland_surface_destroy; @@ -506,178 +445,46 @@ wayland_create_window_surface(struct native_display *ndpy, return &surface->base; } -static const char * -get_drm_screen_name(int fd, drmVersionPtr version) -{ - const char *name = version->name; - - if (name && !strcmp(name, "radeon")) { - int chip_id; - struct drm_radeon_info info; - - memset(&info, 0, sizeof(info)); - info.request = RADEON_INFO_DEVICE_ID; - info.value = pointer_to_intptr(&chip_id); - if (drmCommandWriteRead(fd, DRM_RADEON_INFO, &info, sizeof(info)) != 0) - return NULL; - - name = is_r3xx(chip_id) ? "r300" : "r600"; - } - - return name; -} - -static void -drm_handle_device(void *data, struct wl_drm *drm, const char *device) -{ - struct wayland_display *display = data; - drm_magic_t magic; - - display->device_name = strdup(device); - if (!display->device_name) - return; - - display->fd = open(display->device_name, O_RDWR); - if (display->fd == -1) { - _eglLog(_EGL_WARNING, "wayland-egl: could not open %s (%s)", - display->device_name, strerror(errno)); - return; - } - - drmGetMagic(display->fd, &magic); - wl_drm_authenticate(display->wl_drm, magic); -} - -static void -drm_handle_authenticated(void *data, struct wl_drm *drm) -{ - struct wayland_display *display = data; - - display->authenticated = true; -} - -static const struct wl_drm_listener drm_listener = { - drm_handle_device, - drm_handle_authenticated -}; - -static boolean -wayland_display_init_screen(struct native_display *ndpy) -{ - struct wayland_display *display = wayland_display(ndpy); - drmVersionPtr version; - const char *driver_name; - uint32_t id; - - id = wl_display_get_global(display->dpy, "wl_drm", 1); - if (id == 0) - wl_display_iterate(display->dpy, WL_DISPLAY_READABLE); - id = wl_display_get_global(display->dpy, "wl_drm", 1); - if (id == 0) - return FALSE; - - display->wl_drm = wl_drm_create(display->dpy, id, 1); - if (!display->wl_drm) - return FALSE; - - wl_drm_add_listener(display->wl_drm, &drm_listener, display); - force_roundtrip(display->dpy); - if (display->fd == -1) - return FALSE; - - force_roundtrip(display->dpy); - if (!display->authenticated) - return FALSE; - - version = drmGetVersion(display->fd); - if (!version) { - _eglLog(_EGL_WARNING, "invalid fd %d", display->fd); - return FALSE; - } - - /* FIXME: share this with native_drm or egl_dri2 */ - driver_name = get_drm_screen_name(display->fd, version); - - display->base.screen = - wayland_event_handler->new_drm_screen(&display->base, - driver_name, display->fd); - drmFreeVersion(version); - - if (!display->base.screen) { - _eglLog(_EGL_WARNING, "failed to create DRM screen"); - return FALSE; - } - - return TRUE; -} - - static void -wayland_set_event_handler(struct native_event_handler *event_handler) +native_set_event_handler(struct native_event_handler *event_handler) { wayland_event_handler = event_handler; } -static struct pipe_resource * -wayland_display_import_buffer(struct native_display *ndpy, - const struct pipe_resource *templ, - void *buf) -{ - return ndpy->screen->resource_from_handle(ndpy->screen, - templ, (struct winsys_handle *) buf); -} - -static boolean -wayland_display_export_buffer(struct native_display *ndpy, - struct pipe_resource *res, - void *buf) -{ - return ndpy->screen->resource_get_handle(ndpy->screen, - res, (struct winsys_handle *) buf); -} - -static struct native_display_buffer wayland_display_buffer = { - wayland_display_import_buffer, - wayland_display_export_buffer -}; - static struct native_display * -wayland_display_create(void *dpy, boolean use_sw, void *user_data) +native_create_display(void *dpy, boolean use_sw, void *user_data) { - struct wayland_display *display; - - display = CALLOC_STRUCT(wayland_display); - if (!display) - return NULL; - - display->base.user_data = user_data; - - display->dpy = dpy; - if (!display->dpy) { - wayland_display_destroy(&display->base); - return NULL; + struct wayland_display *display = NULL; + + use_sw = use_sw || debug_get_bool_option("EGL_SOFTWARE", FALSE); + + if (use_sw) { + _eglLog(_EGL_INFO, "use software fallback"); + display = wayland_create_shm_display((struct wl_display *) dpy, + wayland_event_handler, + user_data); + } else { + display = wayland_create_drm_display((struct wl_display *) dpy, + wayland_event_handler, + user_data); } - if (!wayland_display_init_screen(&display->base)) { - wayland_display_destroy(&display->base); + if (!display) return NULL; - } - display->base.destroy = wayland_display_destroy; display->base.get_param = wayland_display_get_param; display->base.get_configs = wayland_display_get_configs; display->base.is_pixmap_supported = wayland_display_is_pixmap_supported; display->base.create_window_surface = wayland_create_window_surface; display->base.create_pixmap_surface = wayland_create_pixmap_surface; - display->base.buffer = &wayland_display_buffer; return &display->base; } static const struct native_platform wayland_platform = { "wayland", /* name */ - wayland_set_event_handler, - wayland_display_create + native_set_event_handler, + native_create_display }; const struct native_platform * @@ -685,3 +492,5 @@ native_get_wayland_platform(void) { return &wayland_platform; } + +/* vim: set sw=3 ts=8 sts=3 expandtab: */ diff --git a/src/gallium/state_trackers/egl/wayland/native_wayland.h b/src/gallium/state_trackers/egl/wayland/native_wayland.h index 14fc9b0fbb2..e69a8f00f82 100644 --- a/src/gallium/state_trackers/egl/wayland/native_wayland.h +++ b/src/gallium/state_trackers/egl/wayland/native_wayland.h @@ -33,17 +33,18 @@ #include "common/native_helper.h" #include "wayland-egl-priv.h" -#include "wayland-drm-client-protocol.h" + +struct wayland_surface; struct wayland_display { struct native_display base; struct wayland_config *config; struct wl_display *dpy; - struct wl_drm *wl_drm; - int fd; - char *device_name; - boolean authenticated; + + struct wl_buffer *(*create_buffer)(struct wayland_display *display, + struct wayland_surface *surface, + enum native_attachment attachment); }; enum wayland_buffer_type { @@ -78,7 +79,7 @@ struct wayland_surface { }; struct wayland_config { - struct native_config base; + struct native_config base; }; static INLINE struct wayland_display * @@ -99,4 +100,13 @@ wayland_config(const struct native_config *nconf) return (struct wayland_config *) nconf; } +struct wayland_display * +wayland_create_shm_display(struct wl_display *display, + struct native_event_handler *event_handler, + void *user_data); +struct wayland_display * +wayland_create_drm_display(struct wl_display *display, + struct native_event_handler *event_handler, + void *user_data); + #endif /* _NATIVE_WAYLAND_H_ */ diff --git a/src/gallium/state_trackers/wgl/stw_ext_pbuffer.c b/src/gallium/state_trackers/wgl/stw_ext_pbuffer.c index fb5d5e8b929..424d8daccb3 100644 --- a/src/gallium/state_trackers/wgl/stw_ext_pbuffer.c +++ b/src/gallium/state_trackers/wgl/stw_ext_pbuffer.c @@ -40,6 +40,30 @@ #include "stw_framebuffer.h" +#define LARGE_WINDOW_SIZE 60000 + + +static LRESULT CALLBACK +WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) +{ + MINMAXINFO *pMMI; + switch (uMsg) { + case WM_GETMINMAXINFO: + // Allow to create a window bigger than the desktop + pMMI = (MINMAXINFO *)lParam; + pMMI->ptMaxSize.x = LARGE_WINDOW_SIZE; + pMMI->ptMaxSize.y = LARGE_WINDOW_SIZE; + pMMI->ptMaxTrackSize.x = LARGE_WINDOW_SIZE; + pMMI->ptMaxTrackSize.y = LARGE_WINDOW_SIZE; + break; + default: + break; + } + + return DefWindowProc(hWnd, uMsg, wParam, lParam); +} + + HPBUFFERARB WINAPI wglCreatePbufferARB(HDC _hDC, int iPixelFormat, @@ -109,7 +133,7 @@ wglCreatePbufferARB(HDC _hDC, wc.hbrBackground = (HBRUSH) (COLOR_BTNFACE + 1); wc.hCursor = LoadCursor(NULL, IDC_ARROW); wc.hIcon = LoadIcon(NULL, IDI_APPLICATION); - wc.lpfnWndProc = DefWindowProc; + wc.lpfnWndProc = WndProc; wc.lpszClassName = "wglpbuffer"; wc.style = CS_OWNDC | CS_HREDRAW | CS_VREDRAW; RegisterClass(&wc); diff --git a/src/gallium/state_trackers/wgl/stw_framebuffer.c b/src/gallium/state_trackers/wgl/stw_framebuffer.c index d8b1440a688..4033365bfbe 100644 --- a/src/gallium/state_trackers/wgl/stw_framebuffer.c +++ b/src/gallium/state_trackers/wgl/stw_framebuffer.c @@ -117,13 +117,26 @@ stw_framebuffer_get_size( struct stw_framebuffer *fb ) RECT window_rect; POINT client_pos; + /* + * Sanity checking. + */ + assert(fb->hWnd); - - /* Get the client area size. */ - GetClientRect( fb->hWnd, &client_rect ); + assert(fb->width && fb->height); + assert(fb->client_rect.right == fb->client_rect.left + fb->width); + assert(fb->client_rect.bottom == fb->client_rect.top + fb->height); + + /* + * Get the client area size. + */ + + if (!GetClientRect(fb->hWnd, &client_rect)) { + return; + } + assert(client_rect.left == 0); assert(client_rect.top == 0); - width = client_rect.right - client_rect.left; + width = client_rect.right - client_rect.left; height = client_rect.bottom - client_rect.top; if (width <= 0 || height <= 0) { @@ -138,7 +151,7 @@ stw_framebuffer_get_size( struct stw_framebuffer *fb ) return; } - if(width != fb->width || height != fb->height) { + if (width != fb->width || height != fb->height) { fb->must_resize = TRUE; fb->width = width; fb->height = height; @@ -146,14 +159,14 @@ stw_framebuffer_get_size( struct stw_framebuffer *fb ) client_pos.x = 0; client_pos.y = 0; - ClientToScreen(fb->hWnd, &client_pos); - - GetWindowRect(fb->hWnd, &window_rect); + if (ClientToScreen(fb->hWnd, &client_pos) && + GetWindowRect(fb->hWnd, &window_rect)) { + fb->client_rect.left = client_pos.x - window_rect.left; + fb->client_rect.top = client_pos.y - window_rect.top; + } - fb->client_rect.left = client_pos.x - window_rect.left; - fb->client_rect.top = client_pos.y - window_rect.top; - fb->client_rect.right = fb->client_rect.left + fb->width; - fb->client_rect.bottom = fb->client_rect.top + fb->height; + fb->client_rect.right = fb->client_rect.left + fb->width; + fb->client_rect.bottom = fb->client_rect.top + fb->height; #if 0 debug_printf("\n"); @@ -253,6 +266,19 @@ stw_framebuffer_create( fb->refcnt = 1; + /* + * Windows can be sometimes have zero width and or height, but we ensure + * a non-zero framebuffer size at all times. + */ + + fb->must_resize = TRUE; + fb->width = 1; + fb->height = 1; + fb->client_rect.left = 0; + fb->client_rect.top = 0; + fb->client_rect.right = fb->client_rect.left + fb->width; + fb->client_rect.bottom = fb->client_rect.top + fb->height; + stw_framebuffer_get_size(fb); pipe_mutex_init( fb->mutex ); diff --git a/src/gallium/state_trackers/xorg/xorg_crtc.c b/src/gallium/state_trackers/xorg/xorg_crtc.c index d751ac18704..0499ed1ea0b 100644 --- a/src/gallium/state_trackers/xorg/xorg_crtc.c +++ b/src/gallium/state_trackers/xorg/xorg_crtc.c @@ -210,6 +210,9 @@ crtc_load_cursor_argb_ga3d(xf86CrtcPtr crtc, CARD32 * image) modesettingPtr ms = modesettingPTR(crtc->scrn); struct crtc_private *crtcp = crtc->driver_private; struct pipe_transfer *transfer; + struct pipe_fence_handle *fence = NULL; + struct pipe_context *ctx = ms->ctx; + struct pipe_screen *screen = ms->screen; if (!crtcp->cursor_tex) { struct pipe_resource templat; @@ -218,6 +221,7 @@ crtc_load_cursor_argb_ga3d(xf86CrtcPtr crtc, CARD32 * image) memset(&templat, 0, sizeof(templat)); templat.bind |= PIPE_BIND_RENDER_TARGET; templat.bind |= PIPE_BIND_SCANOUT; + templat.bind |= PIPE_BIND_CURSOR; templat.target = PIPE_TEXTURE_2D; templat.last_level = 0; templat.depth0 = 1; @@ -229,23 +233,28 @@ crtc_load_cursor_argb_ga3d(xf86CrtcPtr crtc, CARD32 * image) memset(&whandle, 0, sizeof(whandle)); whandle.type = DRM_API_HANDLE_TYPE_KMS; - crtcp->cursor_tex = ms->screen->resource_create(ms->screen, - &templat); - ms->screen->resource_get_handle(ms->screen, crtcp->cursor_tex, &whandle); + crtcp->cursor_tex = screen->resource_create(screen, &templat); + screen->resource_get_handle(screen, crtcp->cursor_tex, &whandle); crtcp->cursor_handle = whandle.handle; } - transfer = pipe_get_transfer(ms->ctx, crtcp->cursor_tex, + transfer = pipe_get_transfer(ctx, crtcp->cursor_tex, 0, 0, PIPE_TRANSFER_WRITE, 0, 0, 64, 64); - ptr = ms->ctx->transfer_map(ms->ctx, transfer); + ptr = ctx->transfer_map(ctx, transfer); util_copy_rect(ptr, crtcp->cursor_tex->format, transfer->stride, 0, 0, 64, 64, (void*)image, 64 * 4, 0, 0); - ms->ctx->transfer_unmap(ms->ctx, transfer); - ms->ctx->transfer_destroy(ms->ctx, transfer); + ctx->transfer_unmap(ctx, transfer); + ctx->transfer_destroy(ctx, transfer); + ctx->flush(ctx, &fence); + + if (fence) { + screen->fence_finish(screen, fence, PIPE_TIMEOUT_INFINITE); + screen->fence_reference(screen, &fence, NULL); + } if (crtc->cursor_shown) drmModeSetCursor(ms->fd, crtcp->drm_crtc->crtc_id, diff --git a/src/gallium/state_trackers/xorg/xorg_driver.c b/src/gallium/state_trackers/xorg/xorg_driver.c index 19e9bf84656..063ae92f6be 100644 --- a/src/gallium/state_trackers/xorg/xorg_driver.c +++ b/src/gallium/state_trackers/xorg/xorg_driver.c @@ -831,9 +831,9 @@ drv_screen_init(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) #endif } - xf86DrvMsg(pScrn->scrnIndex, X_INFO, "##################################\n"); - xf86DrvMsg(pScrn->scrnIndex, X_INFO, "# Usefull debugging info follows #\n"); - xf86DrvMsg(pScrn->scrnIndex, X_INFO, "##################################\n"); + xf86DrvMsg(pScrn->scrnIndex, X_INFO, "#################################\n"); + xf86DrvMsg(pScrn->scrnIndex, X_INFO, "# Useful debugging info follows #\n"); + xf86DrvMsg(pScrn->scrnIndex, X_INFO, "#################################\n"); xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Using %s backend\n", ms->screen ? "Gallium3D" : "libkms"); xf86DrvMsg(pScrn->scrnIndex, X_INFO, "2D Acceleration is %s\n", diff --git a/src/gallium/state_trackers/xorg/xorg_exa.c b/src/gallium/state_trackers/xorg/xorg_exa.c index e7d6a93e5ca..91c206f1872 100644 --- a/src/gallium/state_trackers/xorg/xorg_exa.c +++ b/src/gallium/state_trackers/xorg/xorg_exa.c @@ -336,7 +336,7 @@ ExaPrepareSolid(PixmapPtr pPixmap, int alu, Pixel planeMask, Pixel fg) return FALSE; if (!exa->pipe) - XORG_FALLBACK("accle not enabled"); + XORG_FALLBACK("accel not enabled"); if (!priv || !priv->tex) XORG_FALLBACK("%s", !priv ? "!priv" : "!priv->tex"); @@ -414,7 +414,7 @@ ExaPrepareCopy(PixmapPtr pSrcPixmap, PixmapPtr pDstPixmap, int xdir, return FALSE; if (!exa->pipe) - XORG_FALLBACK("accle not enabled"); + XORG_FALLBACK("accel not enabled"); if (!priv || !priv->tex) XORG_FALLBACK("pDst %s", !priv ? "!priv" : "!priv->tex"); @@ -622,7 +622,7 @@ ExaPrepareComposite(int op, PicturePtr pSrcPicture, pDstPicture ? render_format_name(pDstPicture->format) : "none"); #endif if (!exa->pipe) - XORG_FALLBACK("accle not enabled"); + XORG_FALLBACK("accel not enabled"); priv = exaGetPixmapDriverPrivate(pDst); if (!priv || !priv->tex) diff --git a/src/gallium/targets/egl/Makefile b/src/gallium/targets/egl/Makefile index de01939e5f1..9d76a706122 100644 --- a/src/gallium/targets/egl/Makefile +++ b/src/gallium/targets/egl/Makefile @@ -48,6 +48,7 @@ egl_LIBS += $(TOP)/src/gallium/winsys/sw/xlib/libws_xlib.a endif ifneq ($(findstring wayland, $(EGL_PLATFORMS)),) egl_SYS += $(WAYLAND_LIBS) $(LIBDRM_LIB) +egl_LIBS += $(TOP)/src/gallium/winsys/sw/wayland/libws_wayland.a endif ifneq ($(findstring drm, $(EGL_PLATFORMS)),) egl_SYS += $(LIBDRM_LIB) diff --git a/src/gallium/targets/xorg-nouveau/Makefile b/src/gallium/targets/xorg-nouveau/Makefile index 2fcd9ffb7d6..5a2cdb1b0ef 100644 --- a/src/gallium/targets/xorg-nouveau/Makefile +++ b/src/gallium/targets/xorg-nouveau/Makefile @@ -15,6 +15,7 @@ DRIVER_PIPES = \ $(TOP)/src/gallium/winsys/nouveau/drm/libnouveaudrm.a \ $(TOP)/src/gallium/drivers/nvfx/libnvfx.a \ $(TOP)/src/gallium/drivers/nv50/libnv50.a \ + $(TOP)/src/gallium/drivers/nvc0/libnvc0.a \ $(TOP)/src/gallium/drivers/nouveau/libnouveau.a \ $(TOP)/src/gallium/drivers/trace/libtrace.a \ $(TOP)/src/gallium/drivers/rbug/librbug.a diff --git a/src/gallium/targets/xorg-nouveau/nouveau_xorg.c b/src/gallium/targets/xorg-nouveau/nouveau_xorg.c index 699af09029f..f0d64925c73 100644 --- a/src/gallium/targets/xorg-nouveau/nouveau_xorg.c +++ b/src/gallium/targets/xorg-nouveau/nouveau_xorg.c @@ -136,7 +136,7 @@ nouveau_xorg_pci_probe(DriverPtr driver, NULL, NULL, NULL, NULL, NULL); if (scrn != NULL) { scrn->driverVersion = 1; - scrn->driverName = "i915"; + scrn->driverName = "nouveau"; scrn->name = "modesetting"; scrn->Probe = NULL; diff --git a/src/gallium/winsys/i915/drm/i915_drm_winsys.h b/src/gallium/winsys/i915/drm/i915_drm_winsys.h index dae53c3e801..7f0d718bdb7 100644 --- a/src/gallium/winsys/i915/drm/i915_drm_winsys.h +++ b/src/gallium/winsys/i915/drm/i915_drm_winsys.h @@ -18,7 +18,7 @@ struct i915_drm_winsys struct i915_winsys base; boolean dump_cmd; - char *dump_raw_file; + const char *dump_raw_file; boolean send_cmd; int fd; /**< Drm file discriptor */ diff --git a/src/gallium/winsys/r600/drm/r600_bo.c b/src/gallium/winsys/r600/drm/r600_bo.c index 40d6ec4c625..100ee7cdb37 100644 --- a/src/gallium/winsys/r600/drm/r600_bo.c +++ b/src/gallium/winsys/r600/drm/r600_bo.c @@ -191,7 +191,7 @@ boolean r600_bo_get_winsys_handle(struct radeon *radeon, struct r600_bo *bo, whandle->stride = stride; switch(whandle->type) { case DRM_API_HANDLE_TYPE_KMS: - whandle->handle = r600_bo_get_handle(bo); + whandle->handle = bo->bo->handle; break; case DRM_API_HANDLE_TYPE_SHARED: if (radeon_bo_get_name(radeon, bo->bo, &whandle->handle)) diff --git a/src/gallium/winsys/r600/drm/r600_drm.c b/src/gallium/winsys/r600/drm/r600_drm.c index ddd8ee3d6dd..311324f4f71 100644 --- a/src/gallium/winsys/r600/drm/r600_drm.c +++ b/src/gallium/winsys/r600/drm/r600_drm.c @@ -199,7 +199,6 @@ static int radeon_get_clock_crystal_freq(struct radeon *radeon) uint32_t clock_crystal_freq; int r; - radeon->device = 0; info.request = RADEON_INFO_CLOCK_CRYSTAL_FREQ; info.value = (uintptr_t)&clock_crystal_freq; r = drmCommandWriteRead(radeon->fd, DRM_RADEON_INFO, &info, @@ -218,7 +217,6 @@ static int radeon_get_num_backends(struct radeon *radeon) uint32_t num_backends; int r; - radeon->device = 0; info.request = RADEON_INFO_NUM_BACKENDS; info.value = (uintptr_t)&num_backends; r = drmCommandWriteRead(radeon->fd, DRM_RADEON_INFO, &info, diff --git a/src/gallium/winsys/r600/drm/r600_hw_context.c b/src/gallium/winsys/r600/drm/r600_hw_context.c index 935ac07802e..34ea2a6bacb 100644 --- a/src/gallium/winsys/r600/drm/r600_hw_context.c +++ b/src/gallium/winsys/r600/drm/r600_hw_context.c @@ -127,10 +127,20 @@ int r600_context_add_block(struct r600_context *ctx, const struct r600_reg *reg, block->pm4_bo_index[j] = block->nbo; block->pm4[block->pm4_ndwords++] = PKT3(PKT3_NOP, 0, 0); block->pm4[block->pm4_ndwords++] = 0x00000000; - block->reloc[block->nbo].flush_flags = reg[i+j].flush_flags; - block->reloc[block->nbo].flush_mask = reg[i+j].flush_mask; + if (reg[i+j].flags & REG_FLAG_RV6XX_SBU) { + block->reloc[block->nbo].flush_flags = 0; + block->reloc[block->nbo].flush_mask = 0; + } else { + block->reloc[block->nbo].flush_flags = reg[i+j].flush_flags; + block->reloc[block->nbo].flush_mask = reg[i+j].flush_mask; + } block->reloc[block->nbo].bo_pm4_index = block->pm4_ndwords - 1; } + if ((ctx->radeon->family > CHIP_R600) && + (ctx->radeon->family < CHIP_RV770) && reg[i+j].flags & REG_FLAG_RV6XX_SBU) { + block->pm4[block->pm4_ndwords++] = PKT3(PKT3_SURFACE_BASE_UPDATE, 0, 0); + block->pm4[block->pm4_ndwords++] = reg[i+j].flush_flags; + } } for (j = 0; j < n; j++) { if (reg[i+j].flush_flags) { @@ -197,7 +207,7 @@ static const struct r600_reg r600_context_reg_list[] = { {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028028_DB_STENCIL_CLEAR, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02802C_DB_DEPTH_CLEAR, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028040_CB_COLOR0_BASE, REG_FLAG_NEED_BO, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028040_CB_COLOR0_BASE, REG_FLAG_NEED_BO|REG_FLAG_RV6XX_SBU, SURFACE_BASE_UPDATE_COLOR(0), 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280A0_CB_COLOR0_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028060_CB_COLOR0_SIZE, 0, 0, 0}, @@ -208,7 +218,7 @@ static const struct r600_reg r600_context_reg_list[] = { {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280C0_CB_COLOR0_TILE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028100_CB_COLOR0_MASK, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028044_CB_COLOR1_BASE, REG_FLAG_NEED_BO, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028044_CB_COLOR1_BASE, REG_FLAG_NEED_BO|REG_FLAG_RV6XX_SBU, SURFACE_BASE_UPDATE_COLOR(1), 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280A4_CB_COLOR1_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028064_CB_COLOR1_SIZE, 0, 0, 0}, @@ -219,7 +229,7 @@ static const struct r600_reg r600_context_reg_list[] = { {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280C4_CB_COLOR1_TILE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028104_CB_COLOR1_MASK, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028048_CB_COLOR2_BASE, REG_FLAG_NEED_BO, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028048_CB_COLOR2_BASE, REG_FLAG_NEED_BO|REG_FLAG_RV6XX_SBU, SURFACE_BASE_UPDATE_COLOR(2), 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280A8_CB_COLOR2_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028068_CB_COLOR2_SIZE, 0, 0, 0}, @@ -230,7 +240,7 @@ static const struct r600_reg r600_context_reg_list[] = { {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280C8_CB_COLOR2_TILE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028108_CB_COLOR2_MASK, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02804C_CB_COLOR3_BASE, REG_FLAG_NEED_BO, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02804C_CB_COLOR3_BASE, REG_FLAG_NEED_BO|REG_FLAG_RV6XX_SBU, SURFACE_BASE_UPDATE_COLOR(3), 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280AC_CB_COLOR3_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02806C_CB_COLOR3_SIZE, 0, 0, 0}, @@ -241,7 +251,7 @@ static const struct r600_reg r600_context_reg_list[] = { {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280CC_CB_COLOR3_TILE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02810C_CB_COLOR3_MASK, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028050_CB_COLOR4_BASE, REG_FLAG_NEED_BO, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028050_CB_COLOR4_BASE, REG_FLAG_NEED_BO|REG_FLAG_RV6XX_SBU, SURFACE_BASE_UPDATE_COLOR(4), 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280B0_CB_COLOR4_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028070_CB_COLOR4_SIZE, 0, 0, 0}, @@ -252,7 +262,7 @@ static const struct r600_reg r600_context_reg_list[] = { {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280D0_CB_COLOR4_TILE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028110_CB_COLOR4_MASK, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028054_CB_COLOR5_BASE, REG_FLAG_NEED_BO, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028054_CB_COLOR5_BASE, REG_FLAG_NEED_BO|REG_FLAG_RV6XX_SBU, SURFACE_BASE_UPDATE_COLOR(5), 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280B4_CB_COLOR5_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028074_CB_COLOR5_SIZE, 0, 0, 0}, @@ -262,7 +272,7 @@ static const struct r600_reg r600_context_reg_list[] = { {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280D4_CB_COLOR5_TILE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028114_CB_COLOR5_MASK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028058_CB_COLOR6_BASE, REG_FLAG_NEED_BO, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028058_CB_COLOR6_BASE, REG_FLAG_NEED_BO|REG_FLAG_RV6XX_SBU, SURFACE_BASE_UPDATE_COLOR(6), 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280B8_CB_COLOR6_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028078_CB_COLOR6_SIZE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028098_CB_COLOR6_VIEW, 0, 0, 0}, @@ -272,7 +282,7 @@ static const struct r600_reg r600_context_reg_list[] = { {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280D8_CB_COLOR6_TILE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028118_CB_COLOR6_MASK, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02805C_CB_COLOR7_BASE, REG_FLAG_NEED_BO, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02805C_CB_COLOR7_BASE, REG_FLAG_NEED_BO|REG_FLAG_RV6XX_SBU, SURFACE_BASE_UPDATE_COLOR(7), 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280BC_CB_COLOR7_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02807C_CB_COLOR7_SIZE, 0, 0, 0}, @@ -327,7 +337,7 @@ static const struct r600_reg r600_context_reg_list[] = { {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028C48_PA_SC_AA_MASK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028D2C_DB_SRESULTS_COMPARE_STATE1, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028D44_DB_ALPHA_TO_MASK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02800C_DB_DEPTH_BASE, REG_FLAG_NEED_BO, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02800C_DB_DEPTH_BASE, REG_FLAG_NEED_BO|REG_FLAG_RV6XX_SBU, SURFACE_BASE_UPDATE_DEPTH, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028000_DB_DEPTH_SIZE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028004_DB_DEPTH_VIEW, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, @@ -766,17 +776,6 @@ out_err: return r; } -static void rv6xx_context_surface_base_update(struct r600_context *ctx, - unsigned base_update_flags) -{ - /* need to emit surface base update on rv6xx */ - if ((ctx->radeon->family > CHIP_R600) && - (ctx->radeon->family < CHIP_RV770)) { - ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_SURFACE_BASE_UPDATE, 0, 0); - ctx->pm4[ctx->pm4_cdwords++] = base_update_flags; - } -} - /* Flushes all surfaces */ void r600_context_flush_all(struct r600_context *ctx, unsigned flush_flags) { @@ -798,19 +797,40 @@ void r600_context_bo_flush(struct r600_context *ctx, unsigned flush_flags, unsigned flush_mask, struct r600_bo *rbo) { struct radeon_bo *bo; - bo = r600_bo_get_bo(rbo); + + bo = rbo->bo; /* if bo has already been flushed */ if (!(~bo->last_flush & flush_flags)) { bo->last_flush &= flush_mask; return; } - ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_SURFACE_SYNC, 3, ctx->predicate_drawing); - ctx->pm4[ctx->pm4_cdwords++] = flush_flags; - ctx->pm4[ctx->pm4_cdwords++] = (bo->size + 255) >> 8; - ctx->pm4[ctx->pm4_cdwords++] = 0x00000000; - ctx->pm4[ctx->pm4_cdwords++] = 0x0000000A; - ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_NOP, 0, ctx->predicate_drawing); - ctx->pm4[ctx->pm4_cdwords++] = bo->reloc_id; + + if ((ctx->radeon->family < CHIP_RV770) && + (G_0085F0_CB_ACTION_ENA(flush_flags) || + G_0085F0_DB_ACTION_ENA(flush_flags))) { + if (ctx->flags & R600_CONTEXT_CHECK_EVENT_FLUSH) { + /* the rv670 seems to fail fbo-generatemipmap unless we flush the CB1 dest base ena */ + if (ctx->radeon->family == CHIP_RV670) { + ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_SURFACE_SYNC, 3, ctx->predicate_drawing); + ctx->pm4[ctx->pm4_cdwords++] = S_0085F0_CB1_DEST_BASE_ENA(1); /* CP_COHER_CNTL */ + ctx->pm4[ctx->pm4_cdwords++] = 0xffffffff; /* CP_COHER_SIZE */ + ctx->pm4[ctx->pm4_cdwords++] = 0; /* CP_COHER_BASE */ + ctx->pm4[ctx->pm4_cdwords++] = 0x0000000A; /* POLL_INTERVAL */ + } + + ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_EVENT_WRITE, 0, ctx->predicate_drawing); + ctx->pm4[ctx->pm4_cdwords++] = EVENT_TYPE(EVENT_TYPE_CACHE_FLUSH_AND_INV_EVENT) | EVENT_INDEX(0); + ctx->flags &= ~R600_CONTEXT_CHECK_EVENT_FLUSH; + } + } else { + ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_SURFACE_SYNC, 3, ctx->predicate_drawing); + ctx->pm4[ctx->pm4_cdwords++] = flush_flags; + ctx->pm4[ctx->pm4_cdwords++] = (bo->size + 255) >> 8; + ctx->pm4[ctx->pm4_cdwords++] = 0x00000000; + ctx->pm4[ctx->pm4_cdwords++] = 0x0000000A; + ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_NOP, 0, ctx->predicate_drawing); + ctx->pm4[ctx->pm4_cdwords++] = bo->reloc_id; + } bo->last_flush = (bo->last_flush | flush_flags) & flush_mask; } @@ -818,7 +838,7 @@ void r600_context_bo_reloc(struct r600_context *ctx, u32 *pm4, struct r600_bo *r { struct radeon_bo *bo; - bo = r600_bo_get_bo(rbo); + bo = rbo->bo; assert(bo != NULL); if (bo->reloc) { *pm4 = bo->reloc_id; @@ -1120,6 +1140,7 @@ void r600_context_block_emit_dirty(struct r600_context *ctx, struct r600_block * goto out; } + ctx->flags |= R600_CONTEXT_CHECK_EVENT_FLUSH; for (int j = 0; j < block->nreg; j++) { if (block->pm4_bo_index[j]) { /* find relocation */ @@ -1135,6 +1156,7 @@ void r600_context_block_emit_dirty(struct r600_context *ctx, struct r600_block * } } } + ctx->flags &= ~R600_CONTEXT_CHECK_EVENT_FLUSH; memcpy(&ctx->pm4[ctx->pm4_cdwords], block->pm4, block->pm4_ndwords * 4); ctx->pm4_cdwords += block->pm4_ndwords; @@ -1158,6 +1180,7 @@ void r600_context_flush_dest_caches(struct r600_context *ctx) { struct r600_bo *cb[8]; struct r600_bo *db; + int i; if (!(ctx->flags & R600_CONTEXT_DST_CACHES_DIRTY)) return; @@ -1172,8 +1195,9 @@ void r600_context_flush_dest_caches(struct r600_context *ctx) cb[6] = r600_context_reg_bo(ctx, R_028058_CB_COLOR6_BASE); cb[7] = r600_context_reg_bo(ctx, R_02805C_CB_COLOR7_BASE); + ctx->flags |= R600_CONTEXT_CHECK_EVENT_FLUSH; /* flush the color buffers */ - for (int i = 0; i < 8; i++) { + for (i = 0; i < 8; i++) { if (!cb[i]) continue; @@ -1185,7 +1209,7 @@ void r600_context_flush_dest_caches(struct r600_context *ctx) if (db) { r600_context_bo_flush(ctx, S_0085F0_DB_ACTION_ENA(1), 0, db); } - + ctx->flags &= ~R600_CONTEXT_CHECK_EVENT_FLUSH; ctx->flags &= ~R600_CONTEXT_DST_CACHES_DIRTY; } @@ -1194,7 +1218,6 @@ void r600_context_draw(struct r600_context *ctx, const struct r600_draw *draw) unsigned ndwords = 7; struct r600_block *dirty_block = NULL; struct r600_block *next_block; - unsigned rv6xx_surface_base_update = 0; if (draw->indices) { ndwords = 11; @@ -1204,33 +1227,6 @@ void r600_context_draw(struct r600_context *ctx, const struct r600_draw *draw) } } - /* rv6xx surface base update */ - if ((ctx->radeon->family > CHIP_R600) && - (ctx->radeon->family < CHIP_RV770)) { - struct r600_bo *cb[8]; - struct r600_bo *db; - - db = r600_context_reg_bo(ctx, R_02800C_DB_DEPTH_BASE); - cb[0] = r600_context_reg_bo(ctx, R_028040_CB_COLOR0_BASE); - cb[1] = r600_context_reg_bo(ctx, R_028044_CB_COLOR1_BASE); - cb[2] = r600_context_reg_bo(ctx, R_028048_CB_COLOR2_BASE); - cb[3] = r600_context_reg_bo(ctx, R_02804C_CB_COLOR3_BASE); - cb[4] = r600_context_reg_bo(ctx, R_028050_CB_COLOR4_BASE); - cb[5] = r600_context_reg_bo(ctx, R_028054_CB_COLOR5_BASE); - cb[6] = r600_context_reg_bo(ctx, R_028058_CB_COLOR6_BASE); - cb[7] = r600_context_reg_bo(ctx, R_02805C_CB_COLOR7_BASE); - for (int i = 0; i < 8; i++) { - if (cb[i]) { - rv6xx_surface_base_update |= SURFACE_BASE_UPDATE_COLOR(i); - } - } - if (db) { - rv6xx_surface_base_update |= SURFACE_BASE_UPDATE_DEPTH; - } - } - - /* XXX also need to update SURFACE_BASE_UPDATE_STRMOUT when we support it */ - /* queries need some special values */ if (ctx->num_query_running) { if (ctx->radeon->family >= CHIP_RV770) { @@ -1263,10 +1259,6 @@ void r600_context_draw(struct r600_context *ctx, const struct r600_draw *draw) r600_context_block_emit_dirty(ctx, dirty_block); } - /* rv6xx surface base udpate */ - if (rv6xx_surface_base_update) - rv6xx_context_surface_base_update(ctx, rv6xx_surface_base_update); - /* draw packet */ ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_INDEX_TYPE, 0, ctx->predicate_drawing); ctx->pm4[ctx->pm4_cdwords++] = draw->vgt_index_type; diff --git a/src/gallium/winsys/r600/drm/r600_priv.h b/src/gallium/winsys/r600/drm/r600_priv.h index ed0f3e584d3..f8363f9272b 100644 --- a/src/gallium/winsys/r600/drm/r600_priv.h +++ b/src/gallium/winsys/r600/drm/r600_priv.h @@ -64,6 +64,7 @@ struct radeon { #define REG_FLAG_NEED_BO 1 #define REG_FLAG_DIRTY_ALWAYS 2 +#define REG_FLAG_RV6XX_SBU 4 struct r600_reg { unsigned opcode; @@ -202,24 +203,6 @@ static inline void radeon_bo_unmap(struct radeon *radeon, struct radeon_bo *bo) } /* - * r600_bo - */ -static inline struct radeon_bo *r600_bo_get_bo(struct r600_bo *bo) -{ - return bo->bo; -} - -static unsigned inline r600_bo_get_handle(struct r600_bo *bo) -{ - return bo->bo->handle; -} - -static unsigned inline r600_bo_get_size(struct r600_bo *bo) -{ - return bo->size; -} - -/* * fence */ static inline bool fence_is_after(unsigned fence, unsigned ofence) diff --git a/src/gallium/winsys/r600/drm/radeon_pciid.c b/src/gallium/winsys/r600/drm/radeon_pciid.c index 146d6bd3100..35db37aa1fd 100644 --- a/src/gallium/winsys/r600/drm/radeon_pciid.c +++ b/src/gallium/winsys/r600/drm/radeon_pciid.c @@ -177,6 +177,7 @@ static const struct pci_id radeon_pci_id[] = { {0x1002, 0x688A, CHIP_CYPRESS}, {0x1002, 0x6898, CHIP_CYPRESS}, {0x1002, 0x6899, CHIP_CYPRESS}, + {0x1002, 0x689b, CHIP_CYPRESS}, {0x1002, 0x689c, CHIP_HEMLOCK}, {0x1002, 0x689d, CHIP_HEMLOCK}, {0x1002, 0x689e, CHIP_CYPRESS}, @@ -187,7 +188,9 @@ static const struct pci_id radeon_pci_id[] = { {0x1002, 0x68b0, CHIP_JUNIPER}, {0x1002, 0x68b8, CHIP_JUNIPER}, {0x1002, 0x68b9, CHIP_JUNIPER}, + {0x1002, 0x68ba, CHIP_JUNIPER}, {0x1002, 0x68be, CHIP_JUNIPER}, + {0x1002, 0x68bf, CHIP_JUNIPER}, {0x1002, 0x68c0, CHIP_REDWOOD}, {0x1002, 0x68c1, CHIP_REDWOOD}, {0x1002, 0x68c8, CHIP_REDWOOD}, @@ -203,6 +206,7 @@ static const struct pci_id radeon_pci_id[] = { {0x1002, 0x68e8, CHIP_CEDAR}, {0x1002, 0x68e9, CHIP_CEDAR}, {0x1002, 0x68f1, CHIP_CEDAR}, + {0x1002, 0x68f2, CHIP_CEDAR}, {0x1002, 0x68f8, CHIP_CEDAR}, {0x1002, 0x68f9, CHIP_CEDAR}, {0x1002, 0x68fe, CHIP_CEDAR}, @@ -459,6 +463,7 @@ static const struct pci_id radeon_pci_id[] = { {0x1002, 0x6729, CHIP_BARTS}, {0x1002, 0x6738, CHIP_BARTS}, {0x1002, 0x6739, CHIP_BARTS}, + {0x1002, 0x673e, CHIP_BARTS}, {0x1002, 0x6740, CHIP_TURKS}, {0x1002, 0x6741, CHIP_TURKS}, {0x1002, 0x6742, CHIP_TURKS}, diff --git a/src/gallium/winsys/sw/Makefile b/src/gallium/winsys/sw/Makefile index 094e811d57d..2fad717eb16 100644 --- a/src/gallium/winsys/sw/Makefile +++ b/src/gallium/winsys/sw/Makefile @@ -14,6 +14,10 @@ ifneq ($(findstring fbdev, $(EGL_PLATFORMS)),) SUBDIRS += fbdev endif +ifneq ($(findstring wayland, $(EGL_PLATFORMS)),) +SUBDIRS += wayland +endif + default install clean: @for dir in $(SUBDIRS) ; do \ if [ -d $$dir ] ; then \ diff --git a/src/gallium/winsys/sw/wayland/Makefile b/src/gallium/winsys/sw/wayland/Makefile new file mode 100644 index 00000000000..b3f2081686e --- /dev/null +++ b/src/gallium/winsys/sw/wayland/Makefile @@ -0,0 +1,13 @@ +TOP = ../../../../.. +include $(TOP)/configs/current + +LIBNAME = ws_wayland + +LIBRARY_INCLUDES = $(WAYLAND_CFLAGS) + +LIBRARY_DEFINES = + +C_SOURCES = \ + wayland_sw_winsys.c + +include ../../../Makefile.template diff --git a/src/gallium/winsys/sw/wayland/wayland_sw_winsys.c b/src/gallium/winsys/sw/wayland/wayland_sw_winsys.c new file mode 100644 index 00000000000..1a31ada0296 --- /dev/null +++ b/src/gallium/winsys/sw/wayland/wayland_sw_winsys.c @@ -0,0 +1,285 @@ +/* + * Mesa 3-D graphics library + * Version: 7.11 + * + * Copyright (C) 2011 Benjamin Franzke <[email protected]> + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + */ + +#include <stdlib.h> +#include <sys/types.h> +#include <sys/mman.h> +#include <unistd.h> + +#include "pipe/p_compiler.h" +#include "pipe/p_defines.h" +#include "pipe/p_state.h" +#include "util/u_format.h" +#include "util/u_math.h" +#include "util/u_memory.h" +#include "state_tracker/sw_winsys.h" + +#include <wayland-client.h> +#include "wayland_sw_winsys.h" + +struct wayland_sw_displaytarget +{ + int fd; + unsigned size; + + unsigned width; + unsigned height; + unsigned stride; + + enum pipe_format format; + + void *map; + unsigned map_count; +}; + +struct wayland_sw_winsys +{ + struct sw_winsys base; + + struct wl_display *display; +}; + +static INLINE struct wayland_sw_displaytarget * +wayland_sw_displaytarget(struct sw_displaytarget *dt) +{ + return (struct wayland_sw_displaytarget *) dt; +} + +static INLINE struct wayland_sw_winsys * +wayland_sw_winsys(struct sw_winsys *ws) +{ + return (struct wayland_sw_winsys *) ws; +} + +static void +wayland_displaytarget_display(struct sw_winsys *ws, + struct sw_displaytarget *dt, + void *context_private) +{ +} + +static void +wayland_displaytarget_unmap(struct sw_winsys *ws, + struct sw_displaytarget *dt) +{ + struct wayland_sw_displaytarget *wldt = wayland_sw_displaytarget(dt); + + wldt->map_count--; + if (wldt->map_count > 0) + return; + + munmap(wldt->map, wldt->size); + wldt->map = NULL; +} + +static void * +wayland_displaytarget_map(struct sw_winsys *ws, + struct sw_displaytarget *dt, + unsigned flags) +{ + struct wayland_sw_displaytarget *wldt = wayland_sw_displaytarget(dt); + uint mmap_flags = 0; + + if (wldt->map) { + wldt->map_count++; + return wldt->map; + } + + if (flags & PIPE_TRANSFER_READ) + mmap_flags |= PROT_READ; + if (flags & PIPE_TRANSFER_WRITE) + mmap_flags |= PROT_WRITE; + + wldt->map = mmap(NULL, wldt->size, mmap_flags, + MAP_SHARED, wldt->fd, 0); + + if (wldt->map == MAP_FAILED) + return NULL; + + wldt->map_count = 1; + + return wldt->map; +} + +static void +wayland_displaytarget_destroy(struct sw_winsys *ws, + struct sw_displaytarget *dt) +{ + struct wayland_sw_displaytarget *wldt = wayland_sw_displaytarget(dt); + + if (wldt->map) + wayland_displaytarget_unmap(ws, dt); + + FREE(wldt); +} + +static boolean +wayland_is_displaytarget_format_supported(struct sw_winsys *ws, + unsigned tex_usage, + enum pipe_format format) +{ + switch (format) { + case PIPE_FORMAT_B8G8R8X8_UNORM: + case PIPE_FORMAT_B8G8R8A8_UNORM: + return TRUE; + default: + return FALSE; + } +} + +static struct sw_displaytarget * +wayland_displaytarget_create(struct sw_winsys *ws, + unsigned tex_usage, + enum pipe_format format, + unsigned width, unsigned height, + unsigned alignment, + unsigned *stride) +{ + struct wayland_sw_displaytarget *wldt; + unsigned nblocksy, format_stride; + char filename[] = "/tmp/wayland-shm-XXXXXX"; + + if (!wayland_is_displaytarget_format_supported(ws, tex_usage, format)) + return NULL; + + wldt = CALLOC_STRUCT(wayland_sw_displaytarget); + if (!wldt) + return NULL; + + wldt->map = NULL; + + wldt->format = format; + wldt->width = width; + wldt->height = height; + + format_stride = util_format_get_stride(format, width); + wldt->stride = align(format_stride, alignment); + + nblocksy = util_format_get_nblocksy(format, height); + wldt->size = wldt->stride * nblocksy; + + wldt->fd = mkstemp(filename); + if (wldt->fd < 0) { + FREE(wldt); + return NULL; + } + + if (ftruncate(wldt->fd, wldt->size) < 0) { + unlink(filename); + close(wldt->fd); + FREE(wldt); + return NULL; + } + + unlink(filename); + + *stride = wldt->stride; + + return (struct sw_displaytarget *) wldt; +} + +static struct sw_displaytarget * +wayland_displaytarget_from_handle(struct sw_winsys *ws, + const struct pipe_resource *templet, + struct winsys_handle *whandle, + unsigned *stride) +{ + struct wayland_sw_displaytarget *wldt; + unsigned nblocksy; + + if (!wayland_is_displaytarget_format_supported(ws, 0, templet->format)) + return NULL; + + wldt = CALLOC_STRUCT(wayland_sw_displaytarget); + if (!wldt) + return NULL; + + wldt->fd = whandle->fd; + wldt->stride = whandle->stride; + wldt->width = templet->width0; + wldt->height = templet->height0; + wldt->format = templet->format; + + nblocksy = util_format_get_nblocksy(wldt->format, wldt->height); + + wldt->size = wldt->stride * nblocksy; + + wldt->map = NULL; + + *stride = wldt->stride; + + return (struct sw_displaytarget *) wldt; +} + + +static boolean +wayland_displaytarget_get_handle(struct sw_winsys *ws, + struct sw_displaytarget *dt, + struct winsys_handle *whandle) +{ + struct wayland_sw_displaytarget *wldt = wayland_sw_displaytarget(dt); + + whandle->fd = wldt->fd; + whandle->stride = wldt->stride; + + return TRUE; +} + +static void +wayland_destroy(struct sw_winsys *ws) +{ + struct wayland_sw_winsys *wayland = wayland_sw_winsys(ws); + + FREE(wayland); +} + +struct sw_winsys * +wayland_create_sw_winsys(struct wl_display *display) +{ + struct wayland_sw_winsys *wlws; + + wlws = CALLOC_STRUCT(wayland_sw_winsys); + if (!wlws) + return NULL; + + wlws->display = display; + + wlws->base.destroy = wayland_destroy; + wlws->base.is_displaytarget_format_supported = + wayland_is_displaytarget_format_supported; + + wlws->base.displaytarget_create = wayland_displaytarget_create; + wlws->base.displaytarget_from_handle = wayland_displaytarget_from_handle; + wlws->base.displaytarget_get_handle = wayland_displaytarget_get_handle; + wlws->base.displaytarget_destroy = wayland_displaytarget_destroy; + wlws->base.displaytarget_map = wayland_displaytarget_map; + wlws->base.displaytarget_unmap = wayland_displaytarget_unmap; + + wlws->base.displaytarget_display = wayland_displaytarget_display; + + return &wlws->base; +} + +/* vim: set sw=3 ts=8 sts=3 expandtab: */ diff --git a/src/mesa/drivers/dri/i965/brw_state.c b/src/gallium/winsys/sw/wayland/wayland_sw_winsys.h index 13b231d5cf5..5e3cfd0bf23 100644 --- a/src/mesa/drivers/dri/i965/brw_state.c +++ b/src/gallium/winsys/sw/wayland/wayland_sw_winsys.h @@ -1,5 +1,8 @@ /* - * Copyright © 2010 Intel Corporation + * Mesa 3-D graphics library + * Version: 7.11 + * + * Copyright (C) 2011 Benjamin Franzke <[email protected]> * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -8,42 +11,31 @@ * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: * - * The above copyright notice and this permission notice (including the next - * paragraph) shall be included in all copies or substantial portions of the - * Software. + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS - * IN THE SOFTWARE. - * - * Authors: - * Eric Anholt <[email protected]> - * + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. */ -#include "brw_context.h" +#ifndef WAYLAND_SW_WINSYS +#define WAYLAND_SW_WINSYS + +struct sw_winsys; -void -brw_enable(struct gl_context *ctx, GLenum cap, GLboolean state) -{ - struct brw_context *brw = brw_context(ctx); +struct winsys_handle { + int fd; + unsigned stride; +}; - switch (cap) { - case GL_DEPTH_CLAMP: - brw_update_cc_vp(brw); - break; - } -} +struct sw_winsys * +wayland_create_sw_winsys(struct wl_display *display); -void -brw_depth_range(struct gl_context *ctx, GLclampd nearval, GLclampd farval) -{ - struct brw_context *brw = brw_context(ctx); +#endif /* WAYLAND_SW_WINSYS */ - if (ctx->Transform.DepthClamp) - brw_update_cc_vp(brw); -} +/* vim: set sw=3 ts=8 sts=3 expandtab: */ diff --git a/src/glsl/ast_function.cpp b/src/glsl/ast_function.cpp index 67147b6718f..3ba699ad971 100644 --- a/src/glsl/ast_function.cpp +++ b/src/glsl/ast_function.cpp @@ -238,7 +238,7 @@ match_function_by_name(exec_list *instructions, const char *name, ir_function_signature *sig = (ir_function_signature *) node; str = prototype_string(sig->return_type, f->name, &sig->parameters); - _mesa_glsl_error(loc, state, "%s%s\n", prefix, str); + _mesa_glsl_error(loc, state, "%s%s", prefix, str); ralloc_free(str); prefix = " "; diff --git a/src/glsl/glsl_parser_extras.cpp b/src/glsl/glsl_parser_extras.cpp index 5bb3a6f25a3..18bff88deec 100644 --- a/src/glsl/glsl_parser_extras.cpp +++ b/src/glsl/glsl_parser_extras.cpp @@ -255,6 +255,16 @@ _mesa_glsl_process_extension(const char *name, YYLTYPE *name_locp, state->AMD_conservative_depth_enable = (ext_mode != extension_disable); state->AMD_conservative_depth_warn = (ext_mode == extension_warn); unsupported = !state->extensions->AMD_conservative_depth; + } else if (strcmp(name, "GL_AMD_shader_stencil_export") == 0) { + state->AMD_shader_stencil_export_enable = (ext_mode != extension_disable); + state->AMD_shader_stencil_export_warn = (ext_mode == extension_warn); + + /* This extension is only supported in fragment shaders. + * Both the ARB and AMD variants share the same ARB flag + * in gl_extensions. + */ + unsupported = (state->target != fragment_shader) + || !state->extensions->ARB_shader_stencil_export; } else if (strcmp(name, "GL_OES_texture_3D") == 0 && state->es_shader) { state->OES_texture_3D_enable = (ext_mode != extension_disable); state->OES_texture_3D_warn = (ext_mode == extension_warn); diff --git a/src/glsl/glsl_parser_extras.h b/src/glsl/glsl_parser_extras.h index 6df0e160ae3..f9147653f35 100644 --- a/src/glsl/glsl_parser_extras.h +++ b/src/glsl/glsl_parser_extras.h @@ -172,6 +172,8 @@ struct _mesa_glsl_parse_state { unsigned ARB_shader_stencil_export_warn:1; unsigned AMD_conservative_depth_enable:1; unsigned AMD_conservative_depth_warn:1; + unsigned AMD_shader_stencil_export_enable:1; + unsigned AMD_shader_stencil_export_warn:1; unsigned OES_texture_3D_enable:1; unsigned OES_texture_3D_warn:1; /*@}*/ diff --git a/src/glsl/ir_variable.cpp b/src/glsl/ir_variable.cpp index f3577175691..b8487694c51 100644 --- a/src/glsl/ir_variable.cpp +++ b/src/glsl/ir_variable.cpp @@ -767,6 +767,22 @@ generate_ARB_shader_stencil_export_variables(exec_list *instructions, } static void +generate_AMD_shader_stencil_export_variables(exec_list *instructions, + struct _mesa_glsl_parse_state *state, + bool warn) +{ + /* gl_FragStencilRefAMD is only available in the fragment shader. + */ + ir_variable *const fd = + add_variable(instructions, state->symbols, + "gl_FragStencilRefAMD", glsl_type::int_type, + ir_var_out, FRAG_RESULT_STENCIL); + + if (warn) + fd->warn_extension = "GL_AMD_shader_stencil_export"; +} + +static void generate_120_fs_variables(exec_list *instructions, struct _mesa_glsl_parse_state *state) { @@ -818,6 +834,10 @@ initialize_fs_variables(exec_list *instructions, if (state->ARB_shader_stencil_export_enable) generate_ARB_shader_stencil_export_variables(instructions, state, state->ARB_shader_stencil_export_warn); + + if (state->AMD_shader_stencil_export_enable) + generate_AMD_shader_stencil_export_variables(instructions, state, + state->AMD_shader_stencil_export_warn); } void diff --git a/src/glsl/linker.cpp b/src/glsl/linker.cpp index 17492357f2d..255edc6a76f 100644 --- a/src/glsl/linker.cpp +++ b/src/glsl/linker.cpp @@ -510,7 +510,7 @@ cross_validate_outputs_to_inputs(struct gl_shader_program *prog, */ if (input->type != output->type) { /* There is a bit of a special case for gl_TexCoord. This - * built-in is unsized by default. Appliations that variable + * built-in is unsized by default. Applications that variable * access it must redeclare it with a size. There is some * language in the GLSL spec that implies the fragment shader * and vertex shader do not have to agree on this size. Other @@ -997,7 +997,7 @@ update_array_sizes(struct gl_shader_program *prog) /* If this is a built-in uniform (i.e., it's backed by some * fixed-function state), adjust the number of state slots to * match the new array size. The number of slots per array entry - * is not known. It seems saft to assume that the total number of + * is not known. It seems safe to assume that the total number of * slots is an integer multiple of the number of array elements. * Determine the number of slots per array element by dividing by * the old (total) size. @@ -1163,7 +1163,7 @@ assign_uniform_locations(struct gl_shader_program *prog) /** - * Find a contiguous set of available bits in a bitmask + * Find a contiguous set of available bits in a bitmask. * * \param used_mask Bits representing used (1) and unused (0) locations * \param needed_count Number of contiguous bits needed. @@ -1210,7 +1210,7 @@ assign_attribute_locations(gl_shader_program *prog, unsigned max_attribute_index * 1. Invalidate the location assignments for all vertex shader inputs. * * 2. Assign locations for inputs that have user-defined (via - * glBindVertexAttribLocation) locatoins. + * glBindVertexAttribLocation) locations. * * 3. Sort the attributes without assigned locations by number of slots * required in decreasing order. Fragmentation caused by attribute @@ -1349,7 +1349,7 @@ assign_attribute_locations(gl_shader_program *prog, unsigned max_attribute_index qsort(to_assign, num_attr, sizeof(to_assign[0]), temp_attr::compare); - /* VERT_ATTRIB_GENERIC0 is a psdueo-alias for VERT_ATTRIB_POS. It can only + /* VERT_ATTRIB_GENERIC0 is a pseudo-alias for VERT_ATTRIB_POS. It can only * be explicitly assigned by via glBindAttribLocation. Mark it as reserved * to prevent it from being automatically allocated below. */ @@ -1610,7 +1610,7 @@ link_shaders(struct gl_context *ctx, struct gl_shader_program *prog) break; } - /* Validate the inputs of each stage with the output of the preceeding + /* Validate the inputs of each stage with the output of the preceding * stage. */ for (unsigned i = prev + 1; i < MESA_SHADER_TYPES; i++) { diff --git a/src/glu/sgi/SConscript b/src/glu/sgi/SConscript new file mode 100644 index 00000000000..a0c6c65849f --- /dev/null +++ b/src/glu/sgi/SConscript @@ -0,0 +1,138 @@ +Import('*') + +env = env.Clone() + +env.Prepend(CPPPATH = [ + 'include', + 'internals', + 'libnurbs/internals', + 'libnurbs/interface', + 'libnurbs/nurbtess', +]) + +env.Prepend(CPPDEFINES = [ + 'NDEBUG', + 'LIBRARYBUILD', + 'RESOLVE_3D_TEXTURE_SUPPORT', +]) + +sources = [ + 'libutil/error.c', + 'libutil/glue.c', + 'libutil/mipmap.c', + 'libutil/project.c', + 'libutil/quad.c', + 'libutil/registry.c', + 'libtess/dict.c', + 'libtess/geom.c', + 'libtess/memalloc.c', + 'libtess/mesh.c', + 'libtess/normal.c', + 'libtess/priorityq.c', + 'libtess/render.c', + 'libtess/sweep.c', + 'libtess/tess.c', + 'libtess/tessmono.c', + 'libnurbs/interface/bezierEval.cc', + 'libnurbs/interface/bezierPatch.cc', + 'libnurbs/interface/bezierPatchMesh.cc', + 'libnurbs/interface/glcurveval.cc', + 'libnurbs/interface/glinterface.cc', + 'libnurbs/interface/glrenderer.cc', + 'libnurbs/interface/glsurfeval.cc', + 'libnurbs/interface/incurveeval.cc', + 'libnurbs/interface/insurfeval.cc', + 'libnurbs/internals/arc.cc', + 'libnurbs/internals/arcsorter.cc', + 'libnurbs/internals/arctess.cc', + 'libnurbs/internals/backend.cc', + 'libnurbs/internals/basiccrveval.cc', + 'libnurbs/internals/basicsurfeval.cc', + 'libnurbs/internals/bin.cc', + 'libnurbs/internals/bufpool.cc', + 'libnurbs/internals/cachingeval.cc', + 'libnurbs/internals/ccw.cc', + 'libnurbs/internals/coveandtiler.cc', + 'libnurbs/internals/curve.cc', + 'libnurbs/internals/curvelist.cc', + 'libnurbs/internals/curvesub.cc', + 'libnurbs/internals/dataTransform.cc', + 'libnurbs/internals/displaylist.cc', + 'libnurbs/internals/flist.cc', + 'libnurbs/internals/flistsorter.cc', + 'libnurbs/internals/hull.cc', + 'libnurbs/internals/intersect.cc', + 'libnurbs/internals/knotvector.cc', + 'libnurbs/internals/mapdesc.cc', + 'libnurbs/internals/mapdescv.cc', + 'libnurbs/internals/maplist.cc', + 'libnurbs/internals/mesher.cc', + 'libnurbs/internals/monoTriangulationBackend.cc', + 'libnurbs/internals/monotonizer.cc', + 'libnurbs/internals/mycode.cc', + 'libnurbs/internals/nurbsinterfac.cc', + 'libnurbs/internals/nurbstess.cc', + 'libnurbs/internals/patch.cc', + 'libnurbs/internals/patchlist.cc', + 'libnurbs/internals/quilt.cc', + 'libnurbs/internals/reader.cc', + 'libnurbs/internals/renderhints.cc', + 'libnurbs/internals/slicer.cc', + 'libnurbs/internals/sorter.cc', + 'libnurbs/internals/splitarcs.cc', + 'libnurbs/internals/subdivider.cc', + 'libnurbs/internals/tobezier.cc', + 'libnurbs/internals/trimline.cc', + 'libnurbs/internals/trimregion.cc', + 'libnurbs/internals/trimvertpool.cc', + 'libnurbs/internals/uarray.cc', + 'libnurbs/internals/varray.cc', + 'libnurbs/nurbtess/directedLine.cc', + 'libnurbs/nurbtess/gridWrap.cc', + 'libnurbs/nurbtess/monoChain.cc', + 'libnurbs/nurbtess/monoPolyPart.cc', + 'libnurbs/nurbtess/monoTriangulation.cc', + 'libnurbs/nurbtess/partitionX.cc', + 'libnurbs/nurbtess/partitionY.cc', + 'libnurbs/nurbtess/polyDBG.cc', + 'libnurbs/nurbtess/polyUtil.cc', + 'libnurbs/nurbtess/primitiveStream.cc', + 'libnurbs/nurbtess/quicksort.cc', + 'libnurbs/nurbtess/rectBlock.cc', + 'libnurbs/nurbtess/sampleComp.cc', + 'libnurbs/nurbtess/sampleCompBot.cc', + 'libnurbs/nurbtess/sampleCompRight.cc', + 'libnurbs/nurbtess/sampleCompTop.cc', + 'libnurbs/nurbtess/sampleMonoPoly.cc', + 'libnurbs/nurbtess/sampledLine.cc', + 'libnurbs/nurbtess/searchTree.cc', +] + +if env['platform'] == 'windows': + # -D_OPENGL32_ -Iinclude -DBUILD_GL32 + env.PrependUnique(LIBS = [ + 'gdi32', + 'user32', + 'opengl32', + ]) + target = 'glu32' + sources += ['glu.def'] +else: + env.PrependUnique(LIBS = [ + 'GL', + ]) + target = 'glu' + +glu = env.SharedLibrary( + target = target, + source = sources +) + +env.Alias('glu', env.InstallSharedLibrary(glu, version=(1, 3, 0))) + +if env['platform'] == 'windows': + glu = env.FindIxes(glu, 'LIBPREFIX', 'LIBSUFFIX') +else: + glu = env.FindIxes(glu, 'SHLIBPREFIX', 'SHLIBSUFFIX') + +Export('glu') diff --git a/src/glu/sgi/include/gluos.h b/src/glu/sgi/include/gluos.h index 8eaa7a153bd..ac0a7874cec 100644 --- a/src/glu/sgi/include/gluos.h +++ b/src/glu/sgi/include/gluos.h @@ -40,7 +40,9 @@ #define NOIME #define NOMINMAX -#define _WIN32_WINNT 0x0400 +#ifndef _WIN32_WINNT + #define _WIN32_WINNT 0x0400 +#endif #ifndef STRICT #define STRICT 1 #endif @@ -48,14 +50,20 @@ #include <windows.h> /* Disable warnings */ +#if defined(_MSC_VER) #pragma warning(disable : 4101) #pragma warning(disable : 4244) #pragma warning(disable : 4761) +#endif #if defined(_MSC_VER) && _MSC_VER >= 1200 && _MSC_VER < 1300 #pragma comment(linker, "/OPT:NOWIN98") #endif +#ifndef WINGDIAPI +#define WINGDIAPI +#endif + #elif defined(__OS2__) #include <stdlib.h> diff --git a/src/glu/sgi/libutil/mipmap.c b/src/glu/sgi/libutil/mipmap.c index 026ab849c1b..c475c96a208 100644 --- a/src/glu/sgi/libutil/mipmap.c +++ b/src/glu/sgi/libutil/mipmap.c @@ -6648,7 +6648,7 @@ static void gluTexImage3D( GLenum target, GLint level, pTexImage3D = (TexImage3Dproc) wglGetProcAddress("glTexImage3DEXT"); #else void *libHandle = dlopen("libgl.so", RTLD_LAZY); - pTexImage3D = TexImage3Dproc) dlsym(libHandle, "glTexImage3D" ); + pTexImage3D = (TexImage3Dproc) dlsym(libHandle, "glTexImage3D" ); if (!pTexImage3D) pTexImage3D = (TexImage3Dproc) dlsym(libHandle,"glTexImage3DEXT"); dlclose(libHandle); diff --git a/src/glx/dri2_glx.c b/src/glx/dri2_glx.c index fc0237a4f6b..b9f6f7fcf03 100644 --- a/src/glx/dri2_glx.c +++ b/src/glx/dri2_glx.c @@ -679,7 +679,7 @@ dri2InvalidateBuffers(Display *dpy, XID drawable) struct dri2_drawable *pdp = (struct dri2_drawable *) pdraw; #if __DRI2_FLUSH_VERSION >= 3 - if (pdraw && psc->f) + if (pdraw && psc->f && psc->f->base.version >= 3 && psc->f->invalidate) psc->f->invalidate(pdp->driDrawable); #endif } @@ -702,7 +702,8 @@ dri2_bind_tex_image(Display * dpy, psc = (struct dri2_screen *) base->psc; #if __DRI2_FLUSH_VERSION >= 3 - if (!pdp->invalidateAvailable && psc->f) + if (!pdp->invalidateAvailable && psc->f && + psc->f->base.version >= 3 && psc->f->invalidate) psc->f->invalidate(pdraw->driDrawable); #endif diff --git a/src/glx/glx_pbuffer.c b/src/glx/glx_pbuffer.c index 5f91bc623a9..ec54f1e09d6 100644 --- a/src/glx/glx_pbuffer.c +++ b/src/glx/glx_pbuffer.c @@ -137,6 +137,9 @@ ChangeDrawableAttribute(Display * dpy, GLXDrawable drawable, #ifdef GLX_DIRECT_RENDERING pdraw = GetGLXDRIDrawable(dpy, drawable); + if (!pdraw) + return; + for (i = 0; i < num_attribs; i++) { switch(attribs[i * 2]) { case GLX_EVENT_MASK: diff --git a/src/glx/indirect.c b/src/glx/indirect.c index c80a237bedc..a6b0c0d6dac 100644 --- a/src/glx/indirect.c +++ b/src/glx/indirect.c @@ -41,19 +41,19 @@ #define __GLX_PAD(n) (((n) + 3) & ~3) -# if defined(__i386__) && defined(__GNUC__) && !defined(__CYGWIN__) && !defined(__MINGW32__) -# define FASTCALL __attribute__((fastcall)) -# else -# define FASTCALL -# endif -# if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) -# define NOINLINE __attribute__((noinline)) -# else -# define NOINLINE -# endif +#if defined(__i386__) && defined(__GNUC__) && !defined(__CYGWIN__) && !defined(__MINGW32__) +#define FASTCALL __attribute__((fastcall)) +#else +#define FASTCALL +#endif +#if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) +#define NOINLINE __attribute__((noinline)) +#else +#define NOINLINE +#endif #ifndef __GNUC__ -# define __builtin_expect(x, y) x +#define __builtin_expect(x, y) x #endif /* If the size and opcode values are known at compile-time, this will, on @@ -10732,5 +10732,5 @@ __indirect_get_proc_address(const char *name) #endif /* GLX_SHARED_GLAPI */ -# undef FASTCALL -# undef NOINLINE +#undef FASTCALL +#undef NOINLINE diff --git a/src/glx/indirect.h b/src/glx/indirect.h index 22bdb827d96..5c9bd6f9ea2 100644 --- a/src/glx/indirect.h +++ b/src/glx/indirect.h @@ -37,7 +37,7 @@ * \author Ian Romanick <[email protected]> */ -# if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) && defined(__ELF__) +# if (defined(__GNUC__) && !defined(__CYGWIN__) && !defined(__MINGW32__)) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590) && defined(__ELF__)) # define HIDDEN __attribute__((visibility("hidden"))) # else # define HIDDEN diff --git a/src/glx/indirect_size.c b/src/glx/indirect_size.c index 411a0e42c55..90f887d5cbd 100644 --- a/src/glx/indirect_size.c +++ b/src/glx/indirect_size.c @@ -29,35 +29,35 @@ #include <GL/gl.h> #include "indirect_size.h" -# if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) -# define PURE __attribute__((pure)) -# else -# define PURE -# endif +#if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) +#define PURE __attribute__((pure)) +#else +#define PURE +#endif -# if defined(__i386__) && defined(__GNUC__) && !defined(__CYGWIN__) && !defined(__MINGW32__) -# define FASTCALL __attribute__((fastcall)) -# else -# define FASTCALL -# endif +#if defined(__i386__) && defined(__GNUC__) && !defined(__CYGWIN__) && !defined(__MINGW32__) +#define FASTCALL __attribute__((fastcall)) +#else +#define FASTCALL +#endif -# if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) && defined(__ELF__) -# define INTERNAL __attribute__((visibility("internal"))) -# else -# define INTERNAL -# endif +#if (defined(__GNUC__) && !defined(__CYGWIN__) && !defined(__MINGW32__)) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590) && defined(__ELF__)) +#define INTERNAL __attribute__((visibility("internal"))) +#else +#define INTERNAL +#endif #if defined(__CYGWIN__) || defined(__MINGW32__) || defined(GLX_USE_APPLEGL) -# undef HAVE_ALIAS +#undef HAVE_ALIAS #endif #ifdef HAVE_ALIAS -# define ALIAS2(from,to) \ +#define ALIAS2(from,to) \ INTERNAL PURE FASTCALL GLint __gl ## from ## _size( GLenum e ) \ __attribute__ ((alias( # to ))); -# define ALIAS(from,to) ALIAS2( from, __gl ## to ## _size ) +#define ALIAS(from,to) ALIAS2( from, __gl ## to ## _size ) #else -# define ALIAS(from,to) \ +#define ALIAS(from,to) \ INTERNAL PURE FASTCALL GLint __gl ## from ## _size( GLenum e ) \ { return __gl ## to ## _size( e ); } #endif @@ -383,6 +383,6 @@ ALIAS(Fogiv, Fogfv) ALIAS(ColorTableParameteriv, ColorTableParameterfv) ALIAS(ConvolutionParameteriv, ConvolutionParameterfv) ALIAS(PointParameterivNV, PointParameterfvEXT) -# undef PURE -# undef FASTCALL -# undef INTERNAL +#undef PURE +#undef FASTCALL +#undef INTERNAL diff --git a/src/glx/indirect_size.h b/src/glx/indirect_size.h index 79b849b6839..768765fb202 100644 --- a/src/glx/indirect_size.h +++ b/src/glx/indirect_size.h @@ -26,7 +26,7 @@ */ #if !defined( _INDIRECT_SIZE_H_ ) -# define _INDIRECT_SIZE_H_ +#define _INDIRECT_SIZE_H_ /** * \file @@ -36,23 +36,23 @@ * \author Ian Romanick <[email protected]> */ -# if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) -# define PURE __attribute__((pure)) -# else -# define PURE -# endif +#if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) +#define PURE __attribute__((pure)) +#else +#define PURE +#endif -# if defined(__i386__) && defined(__GNUC__) && !defined(__CYGWIN__) && !defined(__MINGW32__) -# define FASTCALL __attribute__((fastcall)) -# else -# define FASTCALL -# endif +#if defined(__i386__) && defined(__GNUC__) && !defined(__CYGWIN__) && !defined(__MINGW32__) +#define FASTCALL __attribute__((fastcall)) +#else +#define FASTCALL +#endif -# if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) && defined(__ELF__) -# define INTERNAL __attribute__((visibility("internal"))) -# else -# define INTERNAL -# endif +#if (defined(__GNUC__) && !defined(__CYGWIN__) && !defined(__MINGW32__)) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590) && defined(__ELF__)) +#define INTERNAL __attribute__((visibility("internal"))) +#else +#define INTERNAL +#endif extern INTERNAL PURE FASTCALL GLint __glCallLists_size(GLenum); extern INTERNAL PURE FASTCALL GLint __glFogfv_size(GLenum); @@ -81,8 +81,8 @@ extern INTERNAL PURE FASTCALL GLint __glConvolutionParameteriv_size(GLenum); extern INTERNAL PURE FASTCALL GLint __glPointParameterfvEXT_size(GLenum); extern INTERNAL PURE FASTCALL GLint __glPointParameterivNV_size(GLenum); -# undef PURE -# undef FASTCALL -# undef INTERNAL +#undef PURE +#undef FASTCALL +#undef INTERNAL #endif /* !defined( _INDIRECT_SIZE_H_ ) */ diff --git a/src/mapi/glapi/gen/AMD_draw_buffers_blend.xml b/src/mapi/glapi/gen/AMD_draw_buffers_blend.xml new file mode 100644 index 00000000000..2ed0e0b189e --- /dev/null +++ b/src/mapi/glapi/gen/AMD_draw_buffers_blend.xml @@ -0,0 +1,38 @@ +<?xml version="1.0"?> +<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd"> + +<!-- Note: no GLX protocol info yet. --> + + +<OpenGLAPI> + +<category name="GL_AMD_draw_buffers_blend" number="366"> + + <function name="BlendEquationIndexedAMD" alias="BlendEquationiARB"> + <param name="buf" type="GLuint"/> + <param name="mode" type="GLenum"/> + </function> + + <function name="BlendEquationSeparateIndexedAMD" alias="BlendEquationSeparateiARB"> + <param name="buf" type="GLuint"/> + <param name="modeRGB" type="GLenum"/> + <param name="modeA" type="GLenum"/> + </function> + + <function name="BlendFuncIndexedAMD" alias="BlendFunciARB"> + <param name="buf" type="GLuint"/> + <param name="src" type="GLenum"/> + <param name="dst" type="GLenum"/> + </function> + + <function name="BlendFuncSeparateIndexedAMD" alias="BlendFuncSeparateiARB"> + <param name="buf" type="GLuint"/> + <param name="srcRGB" type="GLenum"/> + <param name="dstRGB" type="GLenum"/> + <param name="srcA" type="GLenum"/> + <param name="dstA" type="GLenum"/> + </function> + +</category> + +</OpenGLAPI> diff --git a/src/mapi/glapi/gen/ARB_robustness.xml b/src/mapi/glapi/gen/ARB_robustness.xml new file mode 100644 index 00000000000..b347ef35c55 --- /dev/null +++ b/src/mapi/glapi/gen/ARB_robustness.xml @@ -0,0 +1,185 @@ +<?xml version="1.0"?> +<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd"> + +<!-- Note: no GLX protocol info yet. --> + + +<OpenGLAPI> + +<category name="GL_ARB_robustness" number="105"> + + <enum name="GUILTY_CONTEXT_RESET_ARB" value="0x8253"/> + <enum name="INNOCENT_CONTEXT_RESET_ARB" value="0x8254"/> + <enum name="UNKNOWN_CONTEXT_RESET_ARB" value="0x8255"/> + + <enum name="RESET_NOTIFICATION_STRATEGY_ARB" count="1" value="0x8256"> + <size name="Get" mode="get"/> + </enum> + <enum name="LOSE_CONTEXT_ON_RESET_ARB" value="0x8252"/> + <enum name="NO_RESET_NOTIFICATION_ARB" value="0x8261"/> + + <enum name="CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB" value="0x00000004"/> + + <function name="GetGraphicsResetStatusARB" offset="assign"> + <return type="GLenum"/> + </function> + +<!-- OpenGL 1.0 sized buffer queries --> + <function name="GetnMapdvARB" offset="assign"> + <param name="target" type="GLenum"/> + <param name="query" type="GLenum"/> + <param name="bufSize" type="GLsizei"/> + <param name="v" type="GLdouble *" output="true"/> + </function> + + <function name="GetnMapfvARB" offset="assign"> + <param name="target" type="GLenum"/> + <param name="query" type="GLenum"/> + <param name="bufSize" type="GLsizei"/> + <param name="v" type="GLfloat *" output="true"/> + </function> + + <function name="GetnMapivARB" offset="assign"> + <param name="target" type="GLenum"/> + <param name="query" type="GLenum"/> + <param name="bufSize" type="GLsizei"/> + <param name="v" type="GLint *" output="true"/> + </function> + + + + <function name="GetnPixelMapfvARB" offset="assign"> + <param name="map" type="GLenum"/> + <param name="bufSize" type="GLsizei"/> + <param name="values" type="GLfloat *" output="true"/> + </function> + + <function name="GetnPixelMapuivARB" offset="assign"> + <param name="map" type="GLenum"/> + <param name="bufSize" type="GLsizei"/> + <param name="values" type="GLuint *" output="true"/> + </function> + + <function name="GetnPixelMapusvARB" offset="assign"> + <param name="map" type="GLenum"/> + <param name="bufSize" type="GLsizei"/> + <param name="values" type="GLushort *" output="true"/> + </function> + + + + <function name="GetnPolygonStippleARB" offset="assign"> + <param name="bufSize" type="GLsizei"/> + <param name="pattern" type="GLubyte *" output="true"/> + </function> + + <function name="GetnTexImageARB" offset="assign"> + <param name="target" type="GLenum"/> + <param name="level" type="GLint"/> + <param name="format" type="GLenum"/> + <param name="type" type="GLenum"/> + <param name="bufSize" type="GLsizei"/> + <param name="img" type="GLvoid *" output="true"/> + </function> + + <function name="ReadnPixelsARB" offset="assign"> + <param name="x" type="GLint"/> + <param name="y" type="GLint"/> + <param name="width" type="GLsizei"/> + <param name="height" type="GLsizei"/> + <param name="format" type="GLenum"/> + <param name="type" type="GLenum"/> + <param name="bufSize" type="GLsizei"/> + <param name="data" type="GLvoid *" output="true"/> + </function> + + +<!-- ARB_imaging sized buffer queries --> + <function name="GetnColorTableARB" offset="assign"> + <param name="target" type="GLenum"/> + <param name="format" type="GLenum"/> + <param name="type" type="GLenum"/> + <param name="bufSize" type="GLsizei"/> + <param name="table" type="GLvoid *" output="true"/> + </function> + + <function name="GetnConvolutionFilterARB" offset="assign"> + <param name="target" type="GLenum"/> + <param name="format" type="GLenum"/> + <param name="type" type="GLenum"/> + <param name="bufSize" type="GLsizei"/> + <param name="image" type="GLvoid *" output="true"/> + </function> + + <function name="GetnSeparableFilterARB" offset="assign"> + <param name="target" type="GLenum"/> + <param name="format" type="GLenum"/> + <param name="type" type="GLenum"/> + <param name="rowBufSize" type="GLsizei"/> + <param name="row" type="GLvoid *" output="true"/> + <param name="columnBufSize" type="GLsizei"/> + <param name="column" type="GLvoid *" output="true"/> + <param name="span" type="GLvoid *" output="true"/> + </function> + + <function name="GetnHistogramARB" offset="assign"> + <param name="target" type="GLenum"/> + <param name="reset" type="GLboolean"/> + <param name="format" type="GLenum"/> + <param name="type" type="GLenum"/> + <param name="bufSize" type="GLsizei"/> + <param name="values" type="GLvoid *" output="true"/> + </function> + + <function name="GetnMinmaxARB" offset="assign"> + <param name="target" type="GLenum"/> + <param name="reset" type="GLboolean"/> + <param name="format" type="GLenum"/> + <param name="type" type="GLenum"/> + <param name="bufSize" type="GLsizei"/> + <param name="values" type="GLvoid *" output="true"/> + </function> + + +<!-- OpenGL 1.3 sized buffer queries --> + <function name="GetnCompressedTexImageARB" offset="assign"> + <param name="target" type="GLenum"/> + <param name="lod" type="GLint"/> + <param name="bufSize" type="GLsizei"/> + <param name="img" type="GLvoid *" output="true"/> + </function> + + +<!-- OpenGL 2.0 sized buffer queries --> + <function name="GetnUniformfvARB" offset="assign"> + <param name="program" type="GLhandleARB"/> + <param name="location" type="GLint"/> + <param name="bufSize" type="GLsizei"/> + <param name="params" type="GLfloat *" output="true"/> + </function> + + <function name="GetnUniformivARB" offset="assign"> + <param name="program" type="GLhandleARB"/> + <param name="location" type="GLint"/> + <param name="bufSize" type="GLsizei"/> + <param name="params" type="GLint *" output="true"/> + </function> + + <function name="GetnUniformuivARB" offset="assign"> + <param name="program" type="GLhandleARB"/> + <param name="location" type="GLint"/> + <param name="bufSize" type="GLsizei"/> + <param name="params" type="GLuint *" output="true"/> + </function> + + <function name="GetnUniformdvARB" offset="assign"> + <param name="program" type="GLhandleARB"/> + <param name="location" type="GLint"/> + <param name="bufSize" type="GLsizei"/> + <param name="params" type="GLdouble *" output="true"/> + </function> + +</category> + + +</OpenGLAPI> diff --git a/src/mapi/glapi/gen/Makefile b/src/mapi/glapi/gen/Makefile index b56ce863992..87b928ccfbe 100644 --- a/src/mapi/glapi/gen/Makefile +++ b/src/mapi/glapi/gen/Makefile @@ -80,11 +80,13 @@ API_XML = \ ARB_geometry_shader4.xml \ ARB_instanced_arrays.xml \ ARB_map_buffer_range.xml \ + ARB_robustness.xml \ ARB_sampler_objects.xml \ ARB_seamless_cube_map.xml \ ARB_sync.xml \ ARB_texture_buffer_object.xml \ ARB_vertex_array_object.xml \ + AMD_draw_buffers_blend.xml \ APPLE_object_purgeable.xml \ APPLE_vertex_array_object.xml \ EXT_draw_buffers2.xml \ diff --git a/src/mapi/glapi/gen/gl_API.xml b/src/mapi/glapi/gen/gl_API.xml index ef68ad62cf7..7a7b1e903a9 100644 --- a/src/mapi/glapi/gen/gl_API.xml +++ b/src/mapi/glapi/gen/gl_API.xml @@ -7983,6 +7983,8 @@ <xi:include href="ARB_color_buffer_float.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> +<xi:include href="ARB_robustness.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> + <!-- Non-ARB extensions sorted by extension number. --> <category name="GL_EXT_blend_color" number="2"> @@ -12531,6 +12533,7 @@ <xi:include href="ARB_instanced_arrays.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> <xi:include href="ARB_draw_buffers_blend.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> +<xi:include href="AMD_draw_buffers_blend.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> <xi:include href="ARB_texture_buffer_object.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> diff --git a/src/mapi/glapi/glapi_mapi_tmp.h b/src/mapi/glapi/glapi_mapi_tmp.h index 02a541edc44..43da6c48903 100644 --- a/src/mapi/glapi/glapi_mapi_tmp.h +++ b/src/mapi/glapi/glapi_mapi_tmp.h @@ -804,9 +804,13 @@ GLAPI void APIENTRY GLAPI_PREFIX(DrawElementsBaseVertex)(GLenum mode, GLsizei co GLAPI void APIENTRY GLAPI_PREFIX(DrawRangeElementsBaseVertex)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex); GLAPI void APIENTRY GLAPI_PREFIX(MultiDrawElementsBaseVertex)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount, const GLint *basevertex); GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationSeparateiARB)(GLuint buf, GLenum modeRGB, GLenum modeA); +GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationSeparateIndexedAMD)(GLuint buf, GLenum modeRGB, GLenum modeA); GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationiARB)(GLuint buf, GLenum mode); +GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationIndexedAMD)(GLuint buf, GLenum mode); GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparateiARB)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA); +GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparateIndexedAMD)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA); GLAPI void APIENTRY GLAPI_PREFIX(BlendFunciARB)(GLuint buf, GLenum src, GLenum dst); +GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncIndexedAMD)(GLuint buf, GLenum src, GLenum dst); GLAPI void APIENTRY GLAPI_PREFIX(BindSampler)(GLuint unit, GLuint sampler); GLAPI void APIENTRY GLAPI_PREFIX(DeleteSamplers)(GLsizei count, const GLuint *samplers); GLAPI void APIENTRY GLAPI_PREFIX(GenSamplers)(GLsizei count, GLuint *samplers); @@ -836,25 +840,45 @@ GLAPI void APIENTRY GLAPI_PREFIX(ShaderBinary)(GLsizei n, const GLuint *shaders, void APIENTRY GLAPI_PREFIX(_dispatch_stub_626)(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary); void APIENTRY GLAPI_PREFIX(_dispatch_stub_627)(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length); void APIENTRY GLAPI_PREFIX(_dispatch_stub_628)(GLuint program, GLenum pname, GLint value); +GLAPI GLenum APIENTRY GLAPI_PREFIX(GetGraphicsResetStatusARB)(void); +GLAPI void APIENTRY GLAPI_PREFIX(GetnColorTableARB)(GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid *table); +GLAPI void APIENTRY GLAPI_PREFIX(GetnCompressedTexImageARB)(GLenum target, GLint lod, GLsizei bufSize, GLvoid *img); +GLAPI void APIENTRY GLAPI_PREFIX(GetnConvolutionFilterARB)(GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid *image); +GLAPI void APIENTRY GLAPI_PREFIX(GetnHistogramARB)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid *values); +GLAPI void APIENTRY GLAPI_PREFIX(GetnMapdvARB)(GLenum target, GLenum query, GLsizei bufSize, GLdouble *v); +GLAPI void APIENTRY GLAPI_PREFIX(GetnMapfvARB)(GLenum target, GLenum query, GLsizei bufSize, GLfloat *v); +GLAPI void APIENTRY GLAPI_PREFIX(GetnMapivARB)(GLenum target, GLenum query, GLsizei bufSize, GLint *v); +GLAPI void APIENTRY GLAPI_PREFIX(GetnMinmaxARB)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid *values); +GLAPI void APIENTRY GLAPI_PREFIX(GetnPixelMapfvARB)(GLenum map, GLsizei bufSize, GLfloat *values); +GLAPI void APIENTRY GLAPI_PREFIX(GetnPixelMapuivARB)(GLenum map, GLsizei bufSize, GLuint *values); +GLAPI void APIENTRY GLAPI_PREFIX(GetnPixelMapusvARB)(GLenum map, GLsizei bufSize, GLushort *values); +GLAPI void APIENTRY GLAPI_PREFIX(GetnPolygonStippleARB)(GLsizei bufSize, GLubyte *pattern); +GLAPI void APIENTRY GLAPI_PREFIX(GetnSeparableFilterARB)(GLenum target, GLenum format, GLenum type, GLsizei rowBufSize, GLvoid *row, GLsizei columnBufSize, GLvoid *column, GLvoid *span); +GLAPI void APIENTRY GLAPI_PREFIX(GetnTexImageARB)(GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, GLvoid *img); +GLAPI void APIENTRY GLAPI_PREFIX(GetnUniformdvARB)(GLhandleARB program, GLint location, GLsizei bufSize, GLdouble *params); +GLAPI void APIENTRY GLAPI_PREFIX(GetnUniformfvARB)(GLhandleARB program, GLint location, GLsizei bufSize, GLfloat *params); +GLAPI void APIENTRY GLAPI_PREFIX(GetnUniformivARB)(GLhandleARB program, GLint location, GLsizei bufSize, GLint *params); +GLAPI void APIENTRY GLAPI_PREFIX(GetnUniformuivARB)(GLhandleARB program, GLint location, GLsizei bufSize, GLuint *params); +GLAPI void APIENTRY GLAPI_PREFIX(ReadnPixelsARB)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLvoid *data); GLAPI void APIENTRY GLAPI_PREFIX(PolygonOffsetEXT)(GLfloat factor, GLfloat bias); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_630)(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_631)(const GLfloat *coords); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_632)(GLint x, GLint y, GLint z, GLint width, GLint height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_633)(const GLint *coords); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_634)(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_635)(const GLshort *coords); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_636)(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_637)(const GLfixed *coords); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_638)(GLenum type, GLsizei stride, const GLvoid *pointer); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_639)(GLenum pname, GLfloat *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_640)(GLenum pname, GLint *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_641)(GLenum pname, GLfloat param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_642)(GLenum pname, const GLfloat *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_643)(GLenum pname, GLint param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_644)(GLenum pname, const GLint *params); -GLbitfield APIENTRY GLAPI_PREFIX(_dispatch_stub_645)(GLfixed *mantissa, GLint *exponent); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_646)(GLclampf value, GLboolean invert); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_647)(GLenum pattern); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_650)(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_651)(const GLfloat *coords); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_652)(GLint x, GLint y, GLint z, GLint width, GLint height); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_653)(const GLint *coords); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_654)(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_655)(const GLshort *coords); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_656)(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_657)(const GLfixed *coords); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_658)(GLenum type, GLsizei stride, const GLvoid *pointer); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_659)(GLenum pname, GLfloat *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_660)(GLenum pname, GLint *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_661)(GLenum pname, GLfloat param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_662)(GLenum pname, const GLfloat *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_663)(GLenum pname, GLint param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_664)(GLenum pname, const GLint *params); +GLbitfield APIENTRY GLAPI_PREFIX(_dispatch_stub_665)(GLfixed *mantissa, GLint *exponent); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_666)(GLclampf value, GLboolean invert); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_667)(GLenum pattern); GLAPI void APIENTRY GLAPI_PREFIX(ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer); GLAPI void APIENTRY GLAPI_PREFIX(EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean *pointer); GLAPI void APIENTRY GLAPI_PREFIX(IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer); @@ -917,7 +941,7 @@ GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfEXT)(GLfloat coord); GLAPI void APIENTRY GLAPI_PREFIX(FogCoordf)(GLfloat coord); GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfvEXT)(const GLfloat *coord); GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfv)(const GLfloat *coord); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_682)(GLenum mode); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_702)(GLenum mode); GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparate)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); GLAPI void APIENTRY GLAPI_PREFIX(FlushVertexArrayRangeNV)(void); @@ -992,15 +1016,15 @@ GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4iMESA)(GLint x, GLint y, GLint z, GLi GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4ivMESA)(const GLint *v); GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w); GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4svMESA)(const GLshort *v); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_724)(const GLenum *mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_725)(const GLenum *mode, const GLsizei *count, GLenum type, const GLvoid * const *indices, GLsizei primcount, GLint modestride); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_726)(GLsizei n, const GLuint *fences); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_727)(GLuint fence); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_728)(GLsizei n, GLuint *fences); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_729)(GLuint fence, GLenum pname, GLint *params); -GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_730)(GLuint fence); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_731)(GLuint fence, GLenum condition); -GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_732)(GLuint fence); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_744)(const GLenum *mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_745)(const GLenum *mode, const GLsizei *count, GLenum type, const GLvoid * const *indices, GLsizei primcount, GLint modestride); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_746)(GLsizei n, const GLuint *fences); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_747)(GLuint fence); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_748)(GLsizei n, GLuint *fences); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_749)(GLuint fence, GLenum pname, GLint *params); +GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_750)(GLuint fence); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_751)(GLuint fence, GLenum condition); +GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_752)(GLuint fence); GLAPI GLboolean APIENTRY GLAPI_PREFIX(AreProgramsResidentNV)(GLsizei n, const GLuint *ids, GLboolean *residences); GLAPI void APIENTRY GLAPI_PREFIX(BindProgramNV)(GLenum target, GLuint program); GLAPI void APIENTRY GLAPI_PREFIX(BindProgramARB)(GLenum target, GLuint program); @@ -1089,12 +1113,12 @@ GLAPI void APIENTRY GLAPI_PREFIX(PointParameteriNV)(GLenum pname, GLint param); GLAPI void APIENTRY GLAPI_PREFIX(PointParameteri)(GLenum pname, GLint param); GLAPI void APIENTRY GLAPI_PREFIX(PointParameterivNV)(GLenum pname, const GLint *params); GLAPI void APIENTRY GLAPI_PREFIX(PointParameteriv)(GLenum pname, const GLint *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_813)(GLenum face); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_814)(GLuint array); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_815)(GLsizei n, const GLuint *arrays); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_833)(GLenum face); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_834)(GLuint array); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_835)(GLsizei n, const GLuint *arrays); GLAPI void APIENTRY GLAPI_PREFIX(DeleteVertexArrays)(GLsizei n, const GLuint *arrays); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_816)(GLsizei n, GLuint *arrays); -GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_817)(GLuint array); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_836)(GLsizei n, GLuint *arrays); +GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_837)(GLuint array); GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsVertexArray)(GLuint array); GLAPI void APIENTRY GLAPI_PREFIX(GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte *name, GLdouble *params); GLAPI void APIENTRY GLAPI_PREFIX(GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte *name, GLfloat *params); @@ -1105,54 +1129,54 @@ GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4fvNV)(GLuint id, GLsizei GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartIndexNV)(GLuint index); GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartIndex)(GLuint index); GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartNV)(void); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_826)(GLenum func, GLclampx ref); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_827)(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_828)(GLclampx depth); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_829)(GLenum plane, const GLfixed *equation); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_830)(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_831)(GLclampx zNear, GLclampx zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_832)(GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_833)(GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_834)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_835)(GLenum plane, GLfixed *equation); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_836)(GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_837)(GLenum light, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_838)(GLenum face, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_839)(GLenum target, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_840)(GLenum coord, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_841)(GLenum target, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_842)(GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_843)(GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_844)(GLenum light, GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_845)(GLenum light, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_846)(GLfixed width); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_847)(const GLfixed *m); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_848)(GLenum face, GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_849)(GLenum face, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_850)(const GLfixed *m); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_851)(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_852)(GLfixed nx, GLfixed ny, GLfixed nz); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_853)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_854)(GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_855)(GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_856)(GLfixed size); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_857)(GLfixed factor, GLfixed units); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_858)(GLfixed angle, GLfixed x, GLfixed y, GLfixed z); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_859)(GLclampx value, GLboolean invert); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_860)(GLfixed x, GLfixed y, GLfixed z); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_861)(GLenum target, GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_862)(GLenum target, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_863)(GLenum coord, GLenum pname, GLint param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_864)(GLenum coord, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_865)(GLenum target, GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_866)(GLenum target, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_867)(GLfixed x, GLfixed y, GLfixed z); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_868)(GLenum plane, const GLfloat *equation); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_869)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_870)(GLenum plane, GLfloat *equation); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_871)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_872)(GLclampd zmin, GLclampd zmax); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_873)(GLenum modeRGB, GLenum modeA); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_846)(GLenum func, GLclampx ref); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_847)(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_848)(GLclampx depth); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_849)(GLenum plane, const GLfixed *equation); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_850)(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_851)(GLclampx zNear, GLclampx zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_852)(GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_853)(GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_854)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_855)(GLenum plane, GLfixed *equation); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_856)(GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_857)(GLenum light, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_858)(GLenum face, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_859)(GLenum target, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_860)(GLenum coord, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_861)(GLenum target, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_862)(GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_863)(GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_864)(GLenum light, GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_865)(GLenum light, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_866)(GLfixed width); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_867)(const GLfixed *m); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_868)(GLenum face, GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_869)(GLenum face, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_870)(const GLfixed *m); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_871)(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_872)(GLfixed nx, GLfixed ny, GLfixed nz); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_873)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_874)(GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_875)(GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_876)(GLfixed size); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_877)(GLfixed factor, GLfixed units); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_878)(GLfixed angle, GLfixed x, GLfixed y, GLfixed z); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_879)(GLclampx value, GLboolean invert); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_880)(GLfixed x, GLfixed y, GLfixed z); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_881)(GLenum target, GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_882)(GLenum target, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_883)(GLenum coord, GLenum pname, GLint param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_884)(GLenum coord, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_885)(GLenum target, GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_886)(GLenum target, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_887)(GLfixed x, GLfixed y, GLfixed z); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_888)(GLenum plane, const GLfloat *equation); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_889)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_890)(GLenum plane, GLfloat *equation); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_891)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_892)(GLclampd zmin, GLclampd zmax); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_893)(GLenum modeRGB, GLenum modeA); GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationSeparate)(GLenum modeRGB, GLenum modeA); GLAPI void APIENTRY GLAPI_PREFIX(BindFramebufferEXT)(GLenum target, GLuint framebuffer); GLAPI void APIENTRY GLAPI_PREFIX(BindFramebuffer)(GLenum target, GLuint framebuffer); @@ -1188,10 +1212,10 @@ GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsRenderbufferEXT)(GLuint renderbuffer); GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsRenderbuffer)(GLuint renderbuffer); GLAPI void APIENTRY GLAPI_PREFIX(RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); GLAPI void APIENTRY GLAPI_PREFIX(RenderbufferStorage)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_891)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_911)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); GLAPI void APIENTRY GLAPI_PREFIX(BlitFramebuffer)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_892)(GLenum target, GLenum pname, GLint param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_893)(GLenum target, GLintptr offset, GLsizeiptr size); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_912)(GLenum target, GLenum pname, GLint param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_913)(GLenum target, GLintptr offset, GLsizeiptr size); GLAPI void APIENTRY GLAPI_PREFIX(BindFragDataLocationEXT)(GLuint program, GLuint colorNumber, const GLchar *name); GLAPI void APIENTRY GLAPI_PREFIX(BindFragDataLocation)(GLuint program, GLuint colorNumber, const GLchar *name); GLAPI GLint APIENTRY GLAPI_PREFIX(GetFragDataLocationEXT)(GLuint program, const GLchar *name); @@ -1303,8 +1327,8 @@ GLAPI void APIENTRY GLAPI_PREFIX(TransformFeedbackVaryingsEXT)(GLuint program, G GLAPI void APIENTRY GLAPI_PREFIX(TransformFeedbackVaryings)(GLuint program, GLsizei count, const GLchar* *varyings, GLenum bufferMode); GLAPI void APIENTRY GLAPI_PREFIX(ProvokingVertexEXT)(GLenum mode); GLAPI void APIENTRY GLAPI_PREFIX(ProvokingVertex)(GLenum mode); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_951)(GLenum target, GLenum pname, GLvoid **params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_952)(GLenum target, GLsizei length, GLvoid *pointer); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_971)(GLenum target, GLenum pname, GLvoid **params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_972)(GLenum target, GLsizei length, GLvoid *pointer); GLAPI void APIENTRY GLAPI_PREFIX(GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint *value); GLAPI GLenum APIENTRY GLAPI_PREFIX(ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); GLAPI GLenum APIENTRY GLAPI_PREFIX(ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); @@ -1312,11 +1336,11 @@ GLAPI void APIENTRY GLAPI_PREFIX(ActiveProgramEXT)(GLuint program); GLAPI GLuint APIENTRY GLAPI_PREFIX(CreateShaderProgramEXT)(GLenum type, const GLchar *string); GLAPI void APIENTRY GLAPI_PREFIX(UseShaderProgramEXT)(GLenum type, GLuint program); GLAPI void APIENTRY GLAPI_PREFIX(TextureBarrierNV)(void); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_960)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_961)(GLenum target, GLuint index, GLsizei count, const GLfloat *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_962)(GLenum target, GLuint index, GLsizei count, const GLfloat *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_963)(GLuint id, GLenum pname, GLint64EXT *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_964)(GLuint id, GLenum pname, GLuint64EXT *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_980)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_981)(GLenum target, GLuint index, GLsizei count, const GLfloat *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_982)(GLenum target, GLuint index, GLsizei count, const GLfloat *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_983)(GLuint id, GLenum pname, GLint64EXT *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_984)(GLuint id, GLenum pname, GLuint64EXT *params); GLAPI void APIENTRY GLAPI_PREFIX(EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid *writeOffset); GLAPI void APIENTRY GLAPI_PREFIX(EGLImageTargetTexture2DOES)(GLenum target, GLvoid *writeOffset); #undef MAPI_TMP_DEFINES @@ -6741,6 +6765,13 @@ GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationSeparateiARB)(GLuint buf, GLenum m ((void (APIENTRY *)(GLuint buf, GLenum modeRGB, GLenum modeA)) _func)(buf, modeRGB, modeA); } +GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationSeparateIndexedAMD)(GLuint buf, GLenum modeRGB, GLenum modeA) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[596]; + ((void (APIENTRY *)(GLuint buf, GLenum modeRGB, GLenum modeA)) _func)(buf, modeRGB, modeA); +} + GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationiARB)(GLuint buf, GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); @@ -6748,6 +6779,13 @@ GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationiARB)(GLuint buf, GLenum mode) ((void (APIENTRY *)(GLuint buf, GLenum mode)) _func)(buf, mode); } +GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationIndexedAMD)(GLuint buf, GLenum mode) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[597]; + ((void (APIENTRY *)(GLuint buf, GLenum mode)) _func)(buf, mode); +} + GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparateiARB)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA) { const struct mapi_table *_tbl = entry_current_get(); @@ -6755,6 +6793,13 @@ GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparateiARB)(GLuint buf, GLenum srcRG ((void (APIENTRY *)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA)) _func)(buf, srcRGB, dstRGB, srcA, dstA); } +GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparateIndexedAMD)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[598]; + ((void (APIENTRY *)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA)) _func)(buf, srcRGB, dstRGB, srcA, dstA); +} + GLAPI void APIENTRY GLAPI_PREFIX(BlendFunciARB)(GLuint buf, GLenum src, GLenum dst) { const struct mapi_table *_tbl = entry_current_get(); @@ -6762,6 +6807,13 @@ GLAPI void APIENTRY GLAPI_PREFIX(BlendFunciARB)(GLuint buf, GLenum src, GLenum d ((void (APIENTRY *)(GLuint buf, GLenum src, GLenum dst)) _func)(buf, src, dst); } +GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncIndexedAMD)(GLuint buf, GLenum src, GLenum dst) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[599]; + ((void (APIENTRY *)(GLuint buf, GLenum src, GLenum dst)) _func)(buf, src, dst); +} + GLAPI void APIENTRY GLAPI_PREFIX(BindSampler)(GLuint unit, GLuint sampler) { const struct mapi_table *_tbl = entry_current_get(); @@ -6944,2747 +6996,2887 @@ GLAPI void APIENTRY GLAPI_PREFIX(ShaderBinary)(GLsizei n, const GLuint *shaders, ((void (APIENTRY *)(GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length)) _func)(n, shaders, binaryformat, binary, length); } -GLAPI void APIENTRY GLAPI_PREFIX(PolygonOffsetEXT)(GLfloat factor, GLfloat bias) +GLAPI GLenum APIENTRY GLAPI_PREFIX(GetGraphicsResetStatusARB)(void) { const struct mapi_table *_tbl = entry_current_get(); mapi_func _func = ((const mapi_func *) _tbl)[629]; + return ((GLenum (APIENTRY *)(void)) _func)(); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetnColorTableARB)(GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid *table) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[630]; + ((void (APIENTRY *)(GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid *table)) _func)(target, format, type, bufSize, table); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetnCompressedTexImageARB)(GLenum target, GLint lod, GLsizei bufSize, GLvoid *img) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[631]; + ((void (APIENTRY *)(GLenum target, GLint lod, GLsizei bufSize, GLvoid *img)) _func)(target, lod, bufSize, img); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetnConvolutionFilterARB)(GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid *image) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[632]; + ((void (APIENTRY *)(GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid *image)) _func)(target, format, type, bufSize, image); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetnHistogramARB)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid *values) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[633]; + ((void (APIENTRY *)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid *values)) _func)(target, reset, format, type, bufSize, values); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetnMapdvARB)(GLenum target, GLenum query, GLsizei bufSize, GLdouble *v) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[634]; + ((void (APIENTRY *)(GLenum target, GLenum query, GLsizei bufSize, GLdouble *v)) _func)(target, query, bufSize, v); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetnMapfvARB)(GLenum target, GLenum query, GLsizei bufSize, GLfloat *v) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[635]; + ((void (APIENTRY *)(GLenum target, GLenum query, GLsizei bufSize, GLfloat *v)) _func)(target, query, bufSize, v); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetnMapivARB)(GLenum target, GLenum query, GLsizei bufSize, GLint *v) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[636]; + ((void (APIENTRY *)(GLenum target, GLenum query, GLsizei bufSize, GLint *v)) _func)(target, query, bufSize, v); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetnMinmaxARB)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid *values) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[637]; + ((void (APIENTRY *)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid *values)) _func)(target, reset, format, type, bufSize, values); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetnPixelMapfvARB)(GLenum map, GLsizei bufSize, GLfloat *values) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[638]; + ((void (APIENTRY *)(GLenum map, GLsizei bufSize, GLfloat *values)) _func)(map, bufSize, values); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetnPixelMapuivARB)(GLenum map, GLsizei bufSize, GLuint *values) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[639]; + ((void (APIENTRY *)(GLenum map, GLsizei bufSize, GLuint *values)) _func)(map, bufSize, values); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetnPixelMapusvARB)(GLenum map, GLsizei bufSize, GLushort *values) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[640]; + ((void (APIENTRY *)(GLenum map, GLsizei bufSize, GLushort *values)) _func)(map, bufSize, values); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetnPolygonStippleARB)(GLsizei bufSize, GLubyte *pattern) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[641]; + ((void (APIENTRY *)(GLsizei bufSize, GLubyte *pattern)) _func)(bufSize, pattern); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetnSeparableFilterARB)(GLenum target, GLenum format, GLenum type, GLsizei rowBufSize, GLvoid *row, GLsizei columnBufSize, GLvoid *column, GLvoid *span) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[642]; + ((void (APIENTRY *)(GLenum target, GLenum format, GLenum type, GLsizei rowBufSize, GLvoid *row, GLsizei columnBufSize, GLvoid *column, GLvoid *span)) _func)(target, format, type, rowBufSize, row, columnBufSize, column, span); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetnTexImageARB)(GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, GLvoid *img) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[643]; + ((void (APIENTRY *)(GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, GLvoid *img)) _func)(target, level, format, type, bufSize, img); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetnUniformdvARB)(GLhandleARB program, GLint location, GLsizei bufSize, GLdouble *params) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[644]; + ((void (APIENTRY *)(GLhandleARB program, GLint location, GLsizei bufSize, GLdouble *params)) _func)(program, location, bufSize, params); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetnUniformfvARB)(GLhandleARB program, GLint location, GLsizei bufSize, GLfloat *params) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[645]; + ((void (APIENTRY *)(GLhandleARB program, GLint location, GLsizei bufSize, GLfloat *params)) _func)(program, location, bufSize, params); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetnUniformivARB)(GLhandleARB program, GLint location, GLsizei bufSize, GLint *params) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[646]; + ((void (APIENTRY *)(GLhandleARB program, GLint location, GLsizei bufSize, GLint *params)) _func)(program, location, bufSize, params); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetnUniformuivARB)(GLhandleARB program, GLint location, GLsizei bufSize, GLuint *params) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[647]; + ((void (APIENTRY *)(GLhandleARB program, GLint location, GLsizei bufSize, GLuint *params)) _func)(program, location, bufSize, params); +} + +GLAPI void APIENTRY GLAPI_PREFIX(ReadnPixelsARB)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLvoid *data) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[648]; + ((void (APIENTRY *)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLvoid *data)) _func)(x, y, width, height, format, type, bufSize, data); +} + +GLAPI void APIENTRY GLAPI_PREFIX(PolygonOffsetEXT)(GLfloat factor, GLfloat bias) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[649]; ((void (APIENTRY *)(GLfloat factor, GLfloat bias)) _func)(factor, bias); } GLAPI void APIENTRY GLAPI_PREFIX(ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[648]; + mapi_func _func = ((const mapi_func *) _tbl)[668]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(size, type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[649]; + mapi_func _func = ((const mapi_func *) _tbl)[669]; ((void (APIENTRY *)(GLsizei stride, GLsizei count, const GLboolean *pointer)) _func)(stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[650]; + mapi_func _func = ((const mapi_func *) _tbl)[670]; ((void (APIENTRY *)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(NormalPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[651]; + mapi_func _func = ((const mapi_func *) _tbl)[671]; ((void (APIENTRY *)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(TexCoordPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[652]; + mapi_func _func = ((const mapi_func *) _tbl)[672]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(size, type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(VertexPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[653]; + mapi_func _func = ((const mapi_func *) _tbl)[673]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(size, type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfEXT)(GLenum pname, GLfloat param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[654]; + mapi_func _func = ((const mapi_func *) _tbl)[674]; ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterf)(GLenum pname, GLfloat param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[654]; + mapi_func _func = ((const mapi_func *) _tbl)[674]; ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfARB)(GLenum pname, GLfloat param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[654]; + mapi_func _func = ((const mapi_func *) _tbl)[674]; ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfvEXT)(GLenum pname, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[655]; + mapi_func _func = ((const mapi_func *) _tbl)[675]; ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfv)(GLenum pname, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[655]; + mapi_func _func = ((const mapi_func *) _tbl)[675]; ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfvARB)(GLenum pname, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[655]; + mapi_func _func = ((const mapi_func *) _tbl)[675]; ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(LockArraysEXT)(GLint first, GLsizei count) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[656]; + mapi_func _func = ((const mapi_func *) _tbl)[676]; ((void (APIENTRY *)(GLint first, GLsizei count)) _func)(first, count); } GLAPI void APIENTRY GLAPI_PREFIX(UnlockArraysEXT)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[657]; + mapi_func _func = ((const mapi_func *) _tbl)[677]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3bEXT)(GLbyte red, GLbyte green, GLbyte blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[658]; + mapi_func _func = ((const mapi_func *) _tbl)[678]; ((void (APIENTRY *)(GLbyte red, GLbyte green, GLbyte blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3b)(GLbyte red, GLbyte green, GLbyte blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[658]; + mapi_func _func = ((const mapi_func *) _tbl)[678]; ((void (APIENTRY *)(GLbyte red, GLbyte green, GLbyte blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3bvEXT)(const GLbyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[659]; + mapi_func _func = ((const mapi_func *) _tbl)[679]; ((void (APIENTRY *)(const GLbyte *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3bv)(const GLbyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[659]; + mapi_func _func = ((const mapi_func *) _tbl)[679]; ((void (APIENTRY *)(const GLbyte *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3dEXT)(GLdouble red, GLdouble green, GLdouble blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[660]; + mapi_func _func = ((const mapi_func *) _tbl)[680]; ((void (APIENTRY *)(GLdouble red, GLdouble green, GLdouble blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3d)(GLdouble red, GLdouble green, GLdouble blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[660]; + mapi_func _func = ((const mapi_func *) _tbl)[680]; ((void (APIENTRY *)(GLdouble red, GLdouble green, GLdouble blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3dvEXT)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[661]; + mapi_func _func = ((const mapi_func *) _tbl)[681]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3dv)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[661]; + mapi_func _func = ((const mapi_func *) _tbl)[681]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3fEXT)(GLfloat red, GLfloat green, GLfloat blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[662]; + mapi_func _func = ((const mapi_func *) _tbl)[682]; ((void (APIENTRY *)(GLfloat red, GLfloat green, GLfloat blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3f)(GLfloat red, GLfloat green, GLfloat blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[662]; + mapi_func _func = ((const mapi_func *) _tbl)[682]; ((void (APIENTRY *)(GLfloat red, GLfloat green, GLfloat blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3fvEXT)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[663]; + mapi_func _func = ((const mapi_func *) _tbl)[683]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3fv)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[663]; + mapi_func _func = ((const mapi_func *) _tbl)[683]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3iEXT)(GLint red, GLint green, GLint blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[664]; + mapi_func _func = ((const mapi_func *) _tbl)[684]; ((void (APIENTRY *)(GLint red, GLint green, GLint blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3i)(GLint red, GLint green, GLint blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[664]; + mapi_func _func = ((const mapi_func *) _tbl)[684]; ((void (APIENTRY *)(GLint red, GLint green, GLint blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ivEXT)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[665]; + mapi_func _func = ((const mapi_func *) _tbl)[685]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3iv)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[665]; + mapi_func _func = ((const mapi_func *) _tbl)[685]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3sEXT)(GLshort red, GLshort green, GLshort blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[666]; + mapi_func _func = ((const mapi_func *) _tbl)[686]; ((void (APIENTRY *)(GLshort red, GLshort green, GLshort blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3s)(GLshort red, GLshort green, GLshort blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[666]; + mapi_func _func = ((const mapi_func *) _tbl)[686]; ((void (APIENTRY *)(GLshort red, GLshort green, GLshort blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3svEXT)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[667]; + mapi_func _func = ((const mapi_func *) _tbl)[687]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3sv)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[667]; + mapi_func _func = ((const mapi_func *) _tbl)[687]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ubEXT)(GLubyte red, GLubyte green, GLubyte blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[668]; + mapi_func _func = ((const mapi_func *) _tbl)[688]; ((void (APIENTRY *)(GLubyte red, GLubyte green, GLubyte blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ub)(GLubyte red, GLubyte green, GLubyte blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[668]; + mapi_func _func = ((const mapi_func *) _tbl)[688]; ((void (APIENTRY *)(GLubyte red, GLubyte green, GLubyte blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ubvEXT)(const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[669]; + mapi_func _func = ((const mapi_func *) _tbl)[689]; ((void (APIENTRY *)(const GLubyte *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ubv)(const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[669]; + mapi_func _func = ((const mapi_func *) _tbl)[689]; ((void (APIENTRY *)(const GLubyte *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3uiEXT)(GLuint red, GLuint green, GLuint blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[670]; + mapi_func _func = ((const mapi_func *) _tbl)[690]; ((void (APIENTRY *)(GLuint red, GLuint green, GLuint blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ui)(GLuint red, GLuint green, GLuint blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[670]; + mapi_func _func = ((const mapi_func *) _tbl)[690]; ((void (APIENTRY *)(GLuint red, GLuint green, GLuint blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3uivEXT)(const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[671]; + mapi_func _func = ((const mapi_func *) _tbl)[691]; ((void (APIENTRY *)(const GLuint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3uiv)(const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[671]; + mapi_func _func = ((const mapi_func *) _tbl)[691]; ((void (APIENTRY *)(const GLuint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3usEXT)(GLushort red, GLushort green, GLushort blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[672]; + mapi_func _func = ((const mapi_func *) _tbl)[692]; ((void (APIENTRY *)(GLushort red, GLushort green, GLushort blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3us)(GLushort red, GLushort green, GLushort blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[672]; + mapi_func _func = ((const mapi_func *) _tbl)[692]; ((void (APIENTRY *)(GLushort red, GLushort green, GLushort blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3usvEXT)(const GLushort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[673]; + mapi_func _func = ((const mapi_func *) _tbl)[693]; ((void (APIENTRY *)(const GLushort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3usv)(const GLushort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[673]; + mapi_func _func = ((const mapi_func *) _tbl)[693]; ((void (APIENTRY *)(const GLushort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColorPointerEXT)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[674]; + mapi_func _func = ((const mapi_func *) _tbl)[694]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColorPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[674]; + mapi_func _func = ((const mapi_func *) _tbl)[694]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(MultiDrawArraysEXT)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[675]; + mapi_func _func = ((const mapi_func *) _tbl)[695]; ((void (APIENTRY *)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount)) _func)(mode, first, count, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(MultiDrawArrays)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[675]; + mapi_func _func = ((const mapi_func *) _tbl)[695]; ((void (APIENTRY *)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount)) _func)(mode, first, count, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(MultiDrawElementsEXT)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[676]; + mapi_func _func = ((const mapi_func *) _tbl)[696]; ((void (APIENTRY *)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)) _func)(mode, count, type, indices, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(MultiDrawElements)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[676]; + mapi_func _func = ((const mapi_func *) _tbl)[696]; ((void (APIENTRY *)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)) _func)(mode, count, type, indices, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordPointerEXT)(GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[677]; + mapi_func _func = ((const mapi_func *) _tbl)[697]; ((void (APIENTRY *)(GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordPointer)(GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[677]; + mapi_func _func = ((const mapi_func *) _tbl)[697]; ((void (APIENTRY *)(GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoorddEXT)(GLdouble coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[678]; + mapi_func _func = ((const mapi_func *) _tbl)[698]; ((void (APIENTRY *)(GLdouble coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordd)(GLdouble coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[678]; + mapi_func _func = ((const mapi_func *) _tbl)[698]; ((void (APIENTRY *)(GLdouble coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoorddvEXT)(const GLdouble *coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[679]; + mapi_func _func = ((const mapi_func *) _tbl)[699]; ((void (APIENTRY *)(const GLdouble *coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoorddv)(const GLdouble *coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[679]; + mapi_func _func = ((const mapi_func *) _tbl)[699]; ((void (APIENTRY *)(const GLdouble *coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfEXT)(GLfloat coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[680]; + mapi_func _func = ((const mapi_func *) _tbl)[700]; ((void (APIENTRY *)(GLfloat coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordf)(GLfloat coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[680]; + mapi_func _func = ((const mapi_func *) _tbl)[700]; ((void (APIENTRY *)(GLfloat coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfvEXT)(const GLfloat *coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[681]; + mapi_func _func = ((const mapi_func *) _tbl)[701]; ((void (APIENTRY *)(const GLfloat *coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfv)(const GLfloat *coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[681]; + mapi_func _func = ((const mapi_func *) _tbl)[701]; ((void (APIENTRY *)(const GLfloat *coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[683]; + mapi_func _func = ((const mapi_func *) _tbl)[703]; ((void (APIENTRY *)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)) _func)(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha); } GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparate)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[683]; + mapi_func _func = ((const mapi_func *) _tbl)[703]; ((void (APIENTRY *)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)) _func)(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha); } GLAPI void APIENTRY GLAPI_PREFIX(FlushVertexArrayRangeNV)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[684]; + mapi_func _func = ((const mapi_func *) _tbl)[704]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(VertexArrayRangeNV)(GLsizei length, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[685]; + mapi_func _func = ((const mapi_func *) _tbl)[705]; ((void (APIENTRY *)(GLsizei length, const GLvoid *pointer)) _func)(length, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerInputNV)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[686]; + mapi_func _func = ((const mapi_func *) _tbl)[706]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)) _func)(stage, portion, variable, input, mapping, componentUsage); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerOutputNV)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[687]; + mapi_func _func = ((const mapi_func *) _tbl)[707]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum)) _func)(stage, portion, abOutput, cdOutput, sumOutput, scale, bias, abDotProduct, cdDotProduct, muxSum); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerParameterfNV)(GLenum pname, GLfloat param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[688]; + mapi_func _func = ((const mapi_func *) _tbl)[708]; ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerParameterfvNV)(GLenum pname, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[689]; + mapi_func _func = ((const mapi_func *) _tbl)[709]; ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerParameteriNV)(GLenum pname, GLint param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[690]; + mapi_func _func = ((const mapi_func *) _tbl)[710]; ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerParameterivNV)(GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[691]; + mapi_func _func = ((const mapi_func *) _tbl)[711]; ((void (APIENTRY *)(GLenum pname, const GLint *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(FinalCombinerInputNV)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[692]; + mapi_func _func = ((const mapi_func *) _tbl)[712]; ((void (APIENTRY *)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)) _func)(variable, input, mapping, componentUsage); } GLAPI void APIENTRY GLAPI_PREFIX(GetCombinerInputParameterfvNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[693]; + mapi_func _func = ((const mapi_func *) _tbl)[713]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params)) _func)(stage, portion, variable, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetCombinerInputParameterivNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[694]; + mapi_func _func = ((const mapi_func *) _tbl)[714]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params)) _func)(stage, portion, variable, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetCombinerOutputParameterfvNV)(GLenum stage, GLenum portion, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[695]; + mapi_func _func = ((const mapi_func *) _tbl)[715]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum pname, GLfloat *params)) _func)(stage, portion, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetCombinerOutputParameterivNV)(GLenum stage, GLenum portion, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[696]; + mapi_func _func = ((const mapi_func *) _tbl)[716]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum pname, GLint *params)) _func)(stage, portion, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetFinalCombinerInputParameterfvNV)(GLenum variable, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[697]; + mapi_func _func = ((const mapi_func *) _tbl)[717]; ((void (APIENTRY *)(GLenum variable, GLenum pname, GLfloat *params)) _func)(variable, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetFinalCombinerInputParameterivNV)(GLenum variable, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[698]; + mapi_func _func = ((const mapi_func *) _tbl)[718]; ((void (APIENTRY *)(GLenum variable, GLenum pname, GLint *params)) _func)(variable, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(ResizeBuffersMESA)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[699]; + mapi_func _func = ((const mapi_func *) _tbl)[719]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dMESA)(GLdouble x, GLdouble y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[700]; + mapi_func _func = ((const mapi_func *) _tbl)[720]; ((void (APIENTRY *)(GLdouble x, GLdouble y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2d)(GLdouble x, GLdouble y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[700]; + mapi_func _func = ((const mapi_func *) _tbl)[720]; ((void (APIENTRY *)(GLdouble x, GLdouble y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dARB)(GLdouble x, GLdouble y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[700]; + mapi_func _func = ((const mapi_func *) _tbl)[720]; ((void (APIENTRY *)(GLdouble x, GLdouble y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dvMESA)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[701]; + mapi_func _func = ((const mapi_func *) _tbl)[721]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dv)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[701]; + mapi_func _func = ((const mapi_func *) _tbl)[721]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dvARB)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[701]; + mapi_func _func = ((const mapi_func *) _tbl)[721]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fMESA)(GLfloat x, GLfloat y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[702]; + mapi_func _func = ((const mapi_func *) _tbl)[722]; ((void (APIENTRY *)(GLfloat x, GLfloat y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2f)(GLfloat x, GLfloat y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[702]; + mapi_func _func = ((const mapi_func *) _tbl)[722]; ((void (APIENTRY *)(GLfloat x, GLfloat y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fARB)(GLfloat x, GLfloat y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[702]; + mapi_func _func = ((const mapi_func *) _tbl)[722]; ((void (APIENTRY *)(GLfloat x, GLfloat y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fvMESA)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[703]; + mapi_func _func = ((const mapi_func *) _tbl)[723]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fv)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[703]; + mapi_func _func = ((const mapi_func *) _tbl)[723]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fvARB)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[703]; + mapi_func _func = ((const mapi_func *) _tbl)[723]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2iMESA)(GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[704]; + mapi_func _func = ((const mapi_func *) _tbl)[724]; ((void (APIENTRY *)(GLint x, GLint y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2i)(GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[704]; + mapi_func _func = ((const mapi_func *) _tbl)[724]; ((void (APIENTRY *)(GLint x, GLint y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2iARB)(GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[704]; + mapi_func _func = ((const mapi_func *) _tbl)[724]; ((void (APIENTRY *)(GLint x, GLint y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2ivMESA)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[705]; + mapi_func _func = ((const mapi_func *) _tbl)[725]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2iv)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[705]; + mapi_func _func = ((const mapi_func *) _tbl)[725]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2ivARB)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[705]; + mapi_func _func = ((const mapi_func *) _tbl)[725]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2sMESA)(GLshort x, GLshort y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[706]; + mapi_func _func = ((const mapi_func *) _tbl)[726]; ((void (APIENTRY *)(GLshort x, GLshort y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2s)(GLshort x, GLshort y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[706]; + mapi_func _func = ((const mapi_func *) _tbl)[726]; ((void (APIENTRY *)(GLshort x, GLshort y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2sARB)(GLshort x, GLshort y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[706]; + mapi_func _func = ((const mapi_func *) _tbl)[726]; ((void (APIENTRY *)(GLshort x, GLshort y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2svMESA)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[707]; + mapi_func _func = ((const mapi_func *) _tbl)[727]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2sv)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[707]; + mapi_func _func = ((const mapi_func *) _tbl)[727]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2svARB)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[707]; + mapi_func _func = ((const mapi_func *) _tbl)[727]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dMESA)(GLdouble x, GLdouble y, GLdouble z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[708]; + mapi_func _func = ((const mapi_func *) _tbl)[728]; ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3d)(GLdouble x, GLdouble y, GLdouble z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[708]; + mapi_func _func = ((const mapi_func *) _tbl)[728]; ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dARB)(GLdouble x, GLdouble y, GLdouble z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[708]; + mapi_func _func = ((const mapi_func *) _tbl)[728]; ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dvMESA)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[709]; + mapi_func _func = ((const mapi_func *) _tbl)[729]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dv)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[709]; + mapi_func _func = ((const mapi_func *) _tbl)[729]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dvARB)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[709]; + mapi_func _func = ((const mapi_func *) _tbl)[729]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fMESA)(GLfloat x, GLfloat y, GLfloat z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[710]; + mapi_func _func = ((const mapi_func *) _tbl)[730]; ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3f)(GLfloat x, GLfloat y, GLfloat z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[710]; + mapi_func _func = ((const mapi_func *) _tbl)[730]; ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fARB)(GLfloat x, GLfloat y, GLfloat z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[710]; + mapi_func _func = ((const mapi_func *) _tbl)[730]; ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fvMESA)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[711]; + mapi_func _func = ((const mapi_func *) _tbl)[731]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fv)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[711]; + mapi_func _func = ((const mapi_func *) _tbl)[731]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fvARB)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[711]; + mapi_func _func = ((const mapi_func *) _tbl)[731]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3iMESA)(GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[712]; + mapi_func _func = ((const mapi_func *) _tbl)[732]; ((void (APIENTRY *)(GLint x, GLint y, GLint z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3i)(GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[712]; + mapi_func _func = ((const mapi_func *) _tbl)[732]; ((void (APIENTRY *)(GLint x, GLint y, GLint z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3iARB)(GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[712]; + mapi_func _func = ((const mapi_func *) _tbl)[732]; ((void (APIENTRY *)(GLint x, GLint y, GLint z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3ivMESA)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[713]; + mapi_func _func = ((const mapi_func *) _tbl)[733]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3iv)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[713]; + mapi_func _func = ((const mapi_func *) _tbl)[733]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3ivARB)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[713]; + mapi_func _func = ((const mapi_func *) _tbl)[733]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3sMESA)(GLshort x, GLshort y, GLshort z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[714]; + mapi_func _func = ((const mapi_func *) _tbl)[734]; ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3s)(GLshort x, GLshort y, GLshort z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[714]; + mapi_func _func = ((const mapi_func *) _tbl)[734]; ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3sARB)(GLshort x, GLshort y, GLshort z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[714]; + mapi_func _func = ((const mapi_func *) _tbl)[734]; ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3svMESA)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[715]; + mapi_func _func = ((const mapi_func *) _tbl)[735]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3sv)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[715]; + mapi_func _func = ((const mapi_func *) _tbl)[735]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3svARB)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[715]; + mapi_func _func = ((const mapi_func *) _tbl)[735]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4dMESA)(GLdouble x, GLdouble y, GLdouble z, GLdouble w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[716]; + mapi_func _func = ((const mapi_func *) _tbl)[736]; ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4dvMESA)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[717]; + mapi_func _func = ((const mapi_func *) _tbl)[737]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4fMESA)(GLfloat x, GLfloat y, GLfloat z, GLfloat w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[718]; + mapi_func _func = ((const mapi_func *) _tbl)[738]; ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4fvMESA)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[719]; + mapi_func _func = ((const mapi_func *) _tbl)[739]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4iMESA)(GLint x, GLint y, GLint z, GLint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[720]; + mapi_func _func = ((const mapi_func *) _tbl)[740]; ((void (APIENTRY *)(GLint x, GLint y, GLint z, GLint w)) _func)(x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4ivMESA)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[721]; + mapi_func _func = ((const mapi_func *) _tbl)[741]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[722]; + mapi_func _func = ((const mapi_func *) _tbl)[742]; ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z, GLshort w)) _func)(x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4svMESA)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[723]; + mapi_func _func = ((const mapi_func *) _tbl)[743]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(AreProgramsResidentNV)(GLsizei n, const GLuint *ids, GLboolean *residences) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[733]; + mapi_func _func = ((const mapi_func *) _tbl)[753]; return ((GLboolean (APIENTRY *)(GLsizei n, const GLuint *ids, GLboolean *residences)) _func)(n, ids, residences); } GLAPI void APIENTRY GLAPI_PREFIX(BindProgramNV)(GLenum target, GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[734]; + mapi_func _func = ((const mapi_func *) _tbl)[754]; ((void (APIENTRY *)(GLenum target, GLuint program)) _func)(target, program); } GLAPI void APIENTRY GLAPI_PREFIX(BindProgramARB)(GLenum target, GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[734]; + mapi_func _func = ((const mapi_func *) _tbl)[754]; ((void (APIENTRY *)(GLenum target, GLuint program)) _func)(target, program); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteProgramsNV)(GLsizei n, const GLuint *programs) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[735]; + mapi_func _func = ((const mapi_func *) _tbl)[755]; ((void (APIENTRY *)(GLsizei n, const GLuint *programs)) _func)(n, programs); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteProgramsARB)(GLsizei n, const GLuint *programs) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[735]; + mapi_func _func = ((const mapi_func *) _tbl)[755]; ((void (APIENTRY *)(GLsizei n, const GLuint *programs)) _func)(n, programs); } GLAPI void APIENTRY GLAPI_PREFIX(ExecuteProgramNV)(GLenum target, GLuint id, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[736]; + mapi_func _func = ((const mapi_func *) _tbl)[756]; ((void (APIENTRY *)(GLenum target, GLuint id, const GLfloat *params)) _func)(target, id, params); } GLAPI void APIENTRY GLAPI_PREFIX(GenProgramsNV)(GLsizei n, GLuint *programs) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[737]; + mapi_func _func = ((const mapi_func *) _tbl)[757]; ((void (APIENTRY *)(GLsizei n, GLuint *programs)) _func)(n, programs); } GLAPI void APIENTRY GLAPI_PREFIX(GenProgramsARB)(GLsizei n, GLuint *programs) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[737]; + mapi_func _func = ((const mapi_func *) _tbl)[757]; ((void (APIENTRY *)(GLsizei n, GLuint *programs)) _func)(n, programs); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramParameterdvNV)(GLenum target, GLuint index, GLenum pname, GLdouble *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[738]; + mapi_func _func = ((const mapi_func *) _tbl)[758]; ((void (APIENTRY *)(GLenum target, GLuint index, GLenum pname, GLdouble *params)) _func)(target, index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramParameterfvNV)(GLenum target, GLuint index, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[739]; + mapi_func _func = ((const mapi_func *) _tbl)[759]; ((void (APIENTRY *)(GLenum target, GLuint index, GLenum pname, GLfloat *params)) _func)(target, index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramStringNV)(GLuint id, GLenum pname, GLubyte *program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[740]; + mapi_func _func = ((const mapi_func *) _tbl)[760]; ((void (APIENTRY *)(GLuint id, GLenum pname, GLubyte *program)) _func)(id, pname, program); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramivNV)(GLuint id, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[741]; + mapi_func _func = ((const mapi_func *) _tbl)[761]; ((void (APIENTRY *)(GLuint id, GLenum pname, GLint *params)) _func)(id, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetTrackMatrixivNV)(GLenum target, GLuint address, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[742]; + mapi_func _func = ((const mapi_func *) _tbl)[762]; ((void (APIENTRY *)(GLenum target, GLuint address, GLenum pname, GLint *params)) _func)(target, address, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribPointervNV)(GLuint index, GLenum pname, GLvoid **pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[743]; + mapi_func _func = ((const mapi_func *) _tbl)[763]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLvoid **pointer)) _func)(index, pname, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribPointerv)(GLuint index, GLenum pname, GLvoid **pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[743]; + mapi_func _func = ((const mapi_func *) _tbl)[763]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLvoid **pointer)) _func)(index, pname, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribPointervARB)(GLuint index, GLenum pname, GLvoid **pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[743]; + mapi_func _func = ((const mapi_func *) _tbl)[763]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLvoid **pointer)) _func)(index, pname, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribdvNV)(GLuint index, GLenum pname, GLdouble *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[744]; + mapi_func _func = ((const mapi_func *) _tbl)[764]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLdouble *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribfvNV)(GLuint index, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[745]; + mapi_func _func = ((const mapi_func *) _tbl)[765]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLfloat *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribivNV)(GLuint index, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[746]; + mapi_func _func = ((const mapi_func *) _tbl)[766]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLint *params)) _func)(index, pname, params); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsProgramNV)(GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[747]; + mapi_func _func = ((const mapi_func *) _tbl)[767]; return ((GLboolean (APIENTRY *)(GLuint program)) _func)(program); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsProgramARB)(GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[747]; + mapi_func _func = ((const mapi_func *) _tbl)[767]; return ((GLboolean (APIENTRY *)(GLuint program)) _func)(program); } GLAPI void APIENTRY GLAPI_PREFIX(LoadProgramNV)(GLenum target, GLuint id, GLsizei len, const GLubyte *program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[748]; + mapi_func _func = ((const mapi_func *) _tbl)[768]; ((void (APIENTRY *)(GLenum target, GLuint id, GLsizei len, const GLubyte *program)) _func)(target, id, len, program); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramParameters4dvNV)(GLenum target, GLuint index, GLsizei num, const GLdouble *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[749]; + mapi_func _func = ((const mapi_func *) _tbl)[769]; ((void (APIENTRY *)(GLenum target, GLuint index, GLsizei num, const GLdouble *params)) _func)(target, index, num, params); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramParameters4fvNV)(GLenum target, GLuint index, GLsizei num, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[750]; + mapi_func _func = ((const mapi_func *) _tbl)[770]; ((void (APIENTRY *)(GLenum target, GLuint index, GLsizei num, const GLfloat *params)) _func)(target, index, num, params); } GLAPI void APIENTRY GLAPI_PREFIX(RequestResidentProgramsNV)(GLsizei n, const GLuint *ids) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[751]; + mapi_func _func = ((const mapi_func *) _tbl)[771]; ((void (APIENTRY *)(GLsizei n, const GLuint *ids)) _func)(n, ids); } GLAPI void APIENTRY GLAPI_PREFIX(TrackMatrixNV)(GLenum target, GLuint address, GLenum matrix, GLenum transform) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[752]; + mapi_func _func = ((const mapi_func *) _tbl)[772]; ((void (APIENTRY *)(GLenum target, GLuint address, GLenum matrix, GLenum transform)) _func)(target, address, matrix, transform); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1dNV)(GLuint index, GLdouble x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[753]; + mapi_func _func = ((const mapi_func *) _tbl)[773]; ((void (APIENTRY *)(GLuint index, GLdouble x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1dvNV)(GLuint index, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[754]; + mapi_func _func = ((const mapi_func *) _tbl)[774]; ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1fNV)(GLuint index, GLfloat x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[755]; + mapi_func _func = ((const mapi_func *) _tbl)[775]; ((void (APIENTRY *)(GLuint index, GLfloat x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1fvNV)(GLuint index, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[756]; + mapi_func _func = ((const mapi_func *) _tbl)[776]; ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1sNV)(GLuint index, GLshort x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[757]; + mapi_func _func = ((const mapi_func *) _tbl)[777]; ((void (APIENTRY *)(GLuint index, GLshort x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1svNV)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[758]; + mapi_func _func = ((const mapi_func *) _tbl)[778]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2dNV)(GLuint index, GLdouble x, GLdouble y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[759]; + mapi_func _func = ((const mapi_func *) _tbl)[779]; ((void (APIENTRY *)(GLuint index, GLdouble x, GLdouble y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2dvNV)(GLuint index, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[760]; + mapi_func _func = ((const mapi_func *) _tbl)[780]; ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2fNV)(GLuint index, GLfloat x, GLfloat y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[761]; + mapi_func _func = ((const mapi_func *) _tbl)[781]; ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2fvNV)(GLuint index, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[762]; + mapi_func _func = ((const mapi_func *) _tbl)[782]; ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2sNV)(GLuint index, GLshort x, GLshort y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[763]; + mapi_func _func = ((const mapi_func *) _tbl)[783]; ((void (APIENTRY *)(GLuint index, GLshort x, GLshort y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2svNV)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[764]; + mapi_func _func = ((const mapi_func *) _tbl)[784]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[765]; + mapi_func _func = ((const mapi_func *) _tbl)[785]; ((void (APIENTRY *)(GLuint index, GLdouble x, GLdouble y, GLdouble z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3dvNV)(GLuint index, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[766]; + mapi_func _func = ((const mapi_func *) _tbl)[786]; ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[767]; + mapi_func _func = ((const mapi_func *) _tbl)[787]; ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y, GLfloat z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3fvNV)(GLuint index, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[768]; + mapi_func _func = ((const mapi_func *) _tbl)[788]; ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3sNV)(GLuint index, GLshort x, GLshort y, GLshort z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[769]; + mapi_func _func = ((const mapi_func *) _tbl)[789]; ((void (APIENTRY *)(GLuint index, GLshort x, GLshort y, GLshort z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3svNV)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[770]; + mapi_func _func = ((const mapi_func *) _tbl)[790]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[771]; + mapi_func _func = ((const mapi_func *) _tbl)[791]; ((void (APIENTRY *)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4dvNV)(GLuint index, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[772]; + mapi_func _func = ((const mapi_func *) _tbl)[792]; ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[773]; + mapi_func _func = ((const mapi_func *) _tbl)[793]; ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4fvNV)(GLuint index, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[774]; + mapi_func _func = ((const mapi_func *) _tbl)[794]; ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4sNV)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[775]; + mapi_func _func = ((const mapi_func *) _tbl)[795]; ((void (APIENTRY *)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4svNV)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[776]; + mapi_func _func = ((const mapi_func *) _tbl)[796]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4ubNV)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[777]; + mapi_func _func = ((const mapi_func *) _tbl)[797]; ((void (APIENTRY *)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4ubvNV)(GLuint index, const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[778]; + mapi_func _func = ((const mapi_func *) _tbl)[798]; ((void (APIENTRY *)(GLuint index, const GLubyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribPointerNV)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[779]; + mapi_func _func = ((const mapi_func *) _tbl)[799]; ((void (APIENTRY *)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(index, size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs1dvNV)(GLuint index, GLsizei n, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[780]; + mapi_func _func = ((const mapi_func *) _tbl)[800]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs1fvNV)(GLuint index, GLsizei n, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[781]; + mapi_func _func = ((const mapi_func *) _tbl)[801]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs1svNV)(GLuint index, GLsizei n, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[782]; + mapi_func _func = ((const mapi_func *) _tbl)[802]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs2dvNV)(GLuint index, GLsizei n, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[783]; + mapi_func _func = ((const mapi_func *) _tbl)[803]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs2fvNV)(GLuint index, GLsizei n, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[784]; + mapi_func _func = ((const mapi_func *) _tbl)[804]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs2svNV)(GLuint index, GLsizei n, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[785]; + mapi_func _func = ((const mapi_func *) _tbl)[805]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs3dvNV)(GLuint index, GLsizei n, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[786]; + mapi_func _func = ((const mapi_func *) _tbl)[806]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs3fvNV)(GLuint index, GLsizei n, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[787]; + mapi_func _func = ((const mapi_func *) _tbl)[807]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs3svNV)(GLuint index, GLsizei n, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[788]; + mapi_func _func = ((const mapi_func *) _tbl)[808]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs4dvNV)(GLuint index, GLsizei n, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[789]; + mapi_func _func = ((const mapi_func *) _tbl)[809]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs4fvNV)(GLuint index, GLsizei n, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[790]; + mapi_func _func = ((const mapi_func *) _tbl)[810]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs4svNV)(GLuint index, GLsizei n, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[791]; + mapi_func _func = ((const mapi_func *) _tbl)[811]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs4ubvNV)(GLuint index, GLsizei n, const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[792]; + mapi_func _func = ((const mapi_func *) _tbl)[812]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLubyte *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexBumpParameterfvATI)(GLenum pname, GLfloat *param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[793]; + mapi_func _func = ((const mapi_func *) _tbl)[813]; ((void (APIENTRY *)(GLenum pname, GLfloat *param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexBumpParameterivATI)(GLenum pname, GLint *param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[794]; + mapi_func _func = ((const mapi_func *) _tbl)[814]; ((void (APIENTRY *)(GLenum pname, GLint *param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(TexBumpParameterfvATI)(GLenum pname, const GLfloat *param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[795]; + mapi_func _func = ((const mapi_func *) _tbl)[815]; ((void (APIENTRY *)(GLenum pname, const GLfloat *param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(TexBumpParameterivATI)(GLenum pname, const GLint *param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[796]; + mapi_func _func = ((const mapi_func *) _tbl)[816]; ((void (APIENTRY *)(GLenum pname, const GLint *param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(AlphaFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[797]; + mapi_func _func = ((const mapi_func *) _tbl)[817]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)) _func)(op, dst, dstMod, arg1, arg1Rep, arg1Mod); } GLAPI void APIENTRY GLAPI_PREFIX(AlphaFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[798]; + mapi_func _func = ((const mapi_func *) _tbl)[818]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)) _func)(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod); } GLAPI void APIENTRY GLAPI_PREFIX(AlphaFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[799]; + mapi_func _func = ((const mapi_func *) _tbl)[819]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod)) _func)(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod); } GLAPI void APIENTRY GLAPI_PREFIX(BeginFragmentShaderATI)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[800]; + mapi_func _func = ((const mapi_func *) _tbl)[820]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(BindFragmentShaderATI)(GLuint id) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[801]; + mapi_func _func = ((const mapi_func *) _tbl)[821]; ((void (APIENTRY *)(GLuint id)) _func)(id); } GLAPI void APIENTRY GLAPI_PREFIX(ColorFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[802]; + mapi_func _func = ((const mapi_func *) _tbl)[822]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)) _func)(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod); } GLAPI void APIENTRY GLAPI_PREFIX(ColorFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[803]; + mapi_func _func = ((const mapi_func *) _tbl)[823]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)) _func)(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod); } GLAPI void APIENTRY GLAPI_PREFIX(ColorFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[804]; + mapi_func _func = ((const mapi_func *) _tbl)[824]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod)) _func)(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteFragmentShaderATI)(GLuint id) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[805]; + mapi_func _func = ((const mapi_func *) _tbl)[825]; ((void (APIENTRY *)(GLuint id)) _func)(id); } GLAPI void APIENTRY GLAPI_PREFIX(EndFragmentShaderATI)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[806]; + mapi_func _func = ((const mapi_func *) _tbl)[826]; ((void (APIENTRY *)(void)) _func)(); } GLAPI GLuint APIENTRY GLAPI_PREFIX(GenFragmentShadersATI)(GLuint range) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[807]; + mapi_func _func = ((const mapi_func *) _tbl)[827]; return ((GLuint (APIENTRY *)(GLuint range)) _func)(range); } GLAPI void APIENTRY GLAPI_PREFIX(PassTexCoordATI)(GLuint dst, GLuint coord, GLenum swizzle) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[808]; + mapi_func _func = ((const mapi_func *) _tbl)[828]; ((void (APIENTRY *)(GLuint dst, GLuint coord, GLenum swizzle)) _func)(dst, coord, swizzle); } GLAPI void APIENTRY GLAPI_PREFIX(SampleMapATI)(GLuint dst, GLuint interp, GLenum swizzle) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[809]; + mapi_func _func = ((const mapi_func *) _tbl)[829]; ((void (APIENTRY *)(GLuint dst, GLuint interp, GLenum swizzle)) _func)(dst, interp, swizzle); } GLAPI void APIENTRY GLAPI_PREFIX(SetFragmentShaderConstantATI)(GLuint dst, const GLfloat *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[810]; + mapi_func _func = ((const mapi_func *) _tbl)[830]; ((void (APIENTRY *)(GLuint dst, const GLfloat *value)) _func)(dst, value); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameteriNV)(GLenum pname, GLint param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[811]; + mapi_func _func = ((const mapi_func *) _tbl)[831]; ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameteri)(GLenum pname, GLint param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[811]; + mapi_func _func = ((const mapi_func *) _tbl)[831]; ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterivNV)(GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[812]; + mapi_func _func = ((const mapi_func *) _tbl)[832]; ((void (APIENTRY *)(GLenum pname, const GLint *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameteriv)(GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[812]; + mapi_func _func = ((const mapi_func *) _tbl)[832]; ((void (APIENTRY *)(GLenum pname, const GLint *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteVertexArrays)(GLsizei n, const GLuint *arrays) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[815]; + mapi_func _func = ((const mapi_func *) _tbl)[835]; ((void (APIENTRY *)(GLsizei n, const GLuint *arrays)) _func)(n, arrays); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsVertexArray)(GLuint array) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[817]; + mapi_func _func = ((const mapi_func *) _tbl)[837]; return ((GLboolean (APIENTRY *)(GLuint array)) _func)(array); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte *name, GLdouble *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[818]; + mapi_func _func = ((const mapi_func *) _tbl)[838]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLdouble *params)) _func)(id, len, name, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte *name, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[819]; + mapi_func _func = ((const mapi_func *) _tbl)[839]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLfloat *params)) _func)(id, len, name, params); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4dNV)(GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[820]; + mapi_func _func = ((const mapi_func *) _tbl)[840]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(id, len, name, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4dvNV)(GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[821]; + mapi_func _func = ((const mapi_func *) _tbl)[841]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v)) _func)(id, len, name, v); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4fNV)(GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[822]; + mapi_func _func = ((const mapi_func *) _tbl)[842]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(id, len, name, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4fvNV)(GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[823]; + mapi_func _func = ((const mapi_func *) _tbl)[843]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v)) _func)(id, len, name, v); } GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartIndexNV)(GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[824]; + mapi_func _func = ((const mapi_func *) _tbl)[844]; ((void (APIENTRY *)(GLuint index)) _func)(index); } GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartIndex)(GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[824]; + mapi_func _func = ((const mapi_func *) _tbl)[844]; ((void (APIENTRY *)(GLuint index)) _func)(index); } GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartNV)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[825]; + mapi_func _func = ((const mapi_func *) _tbl)[845]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationSeparate)(GLenum modeRGB, GLenum modeA) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[873]; + mapi_func _func = ((const mapi_func *) _tbl)[893]; ((void (APIENTRY *)(GLenum modeRGB, GLenum modeA)) _func)(modeRGB, modeA); } GLAPI void APIENTRY GLAPI_PREFIX(BindFramebufferEXT)(GLenum target, GLuint framebuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[874]; + mapi_func _func = ((const mapi_func *) _tbl)[894]; ((void (APIENTRY *)(GLenum target, GLuint framebuffer)) _func)(target, framebuffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindFramebuffer)(GLenum target, GLuint framebuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[874]; + mapi_func _func = ((const mapi_func *) _tbl)[894]; ((void (APIENTRY *)(GLenum target, GLuint framebuffer)) _func)(target, framebuffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindRenderbufferEXT)(GLenum target, GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[875]; + mapi_func _func = ((const mapi_func *) _tbl)[895]; ((void (APIENTRY *)(GLenum target, GLuint renderbuffer)) _func)(target, renderbuffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindRenderbuffer)(GLenum target, GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[875]; + mapi_func _func = ((const mapi_func *) _tbl)[895]; ((void (APIENTRY *)(GLenum target, GLuint renderbuffer)) _func)(target, renderbuffer); } GLAPI GLenum APIENTRY GLAPI_PREFIX(CheckFramebufferStatusEXT)(GLenum target) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[876]; + mapi_func _func = ((const mapi_func *) _tbl)[896]; return ((GLenum (APIENTRY *)(GLenum target)) _func)(target); } GLAPI GLenum APIENTRY GLAPI_PREFIX(CheckFramebufferStatus)(GLenum target) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[876]; + mapi_func _func = ((const mapi_func *) _tbl)[896]; return ((GLenum (APIENTRY *)(GLenum target)) _func)(target); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteFramebuffersEXT)(GLsizei n, const GLuint *framebuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[877]; + mapi_func _func = ((const mapi_func *) _tbl)[897]; ((void (APIENTRY *)(GLsizei n, const GLuint *framebuffers)) _func)(n, framebuffers); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteFramebuffers)(GLsizei n, const GLuint *framebuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[877]; + mapi_func _func = ((const mapi_func *) _tbl)[897]; ((void (APIENTRY *)(GLsizei n, const GLuint *framebuffers)) _func)(n, framebuffers); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteRenderbuffersEXT)(GLsizei n, const GLuint *renderbuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[878]; + mapi_func _func = ((const mapi_func *) _tbl)[898]; ((void (APIENTRY *)(GLsizei n, const GLuint *renderbuffers)) _func)(n, renderbuffers); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteRenderbuffers)(GLsizei n, const GLuint *renderbuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[878]; + mapi_func _func = ((const mapi_func *) _tbl)[898]; ((void (APIENTRY *)(GLsizei n, const GLuint *renderbuffers)) _func)(n, renderbuffers); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferRenderbufferEXT)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[879]; + mapi_func _func = ((const mapi_func *) _tbl)[899]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)) _func)(target, attachment, renderbuffertarget, renderbuffer); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferRenderbuffer)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[879]; + mapi_func _func = ((const mapi_func *) _tbl)[899]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)) _func)(target, attachment, renderbuffertarget, renderbuffer); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture1DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[880]; + mapi_func _func = ((const mapi_func *) _tbl)[900]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture1D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[880]; + mapi_func _func = ((const mapi_func *) _tbl)[900]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture2DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[881]; + mapi_func _func = ((const mapi_func *) _tbl)[901]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture2D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[881]; + mapi_func _func = ((const mapi_func *) _tbl)[901]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture3DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[882]; + mapi_func _func = ((const mapi_func *) _tbl)[902]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)) _func)(target, attachment, textarget, texture, level, zoffset); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture3D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[882]; + mapi_func _func = ((const mapi_func *) _tbl)[902]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)) _func)(target, attachment, textarget, texture, level, zoffset); } GLAPI void APIENTRY GLAPI_PREFIX(GenFramebuffersEXT)(GLsizei n, GLuint *framebuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[883]; + mapi_func _func = ((const mapi_func *) _tbl)[903]; ((void (APIENTRY *)(GLsizei n, GLuint *framebuffers)) _func)(n, framebuffers); } GLAPI void APIENTRY GLAPI_PREFIX(GenFramebuffers)(GLsizei n, GLuint *framebuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[883]; + mapi_func _func = ((const mapi_func *) _tbl)[903]; ((void (APIENTRY *)(GLsizei n, GLuint *framebuffers)) _func)(n, framebuffers); } GLAPI void APIENTRY GLAPI_PREFIX(GenRenderbuffersEXT)(GLsizei n, GLuint *renderbuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[884]; + mapi_func _func = ((const mapi_func *) _tbl)[904]; ((void (APIENTRY *)(GLsizei n, GLuint *renderbuffers)) _func)(n, renderbuffers); } GLAPI void APIENTRY GLAPI_PREFIX(GenRenderbuffers)(GLsizei n, GLuint *renderbuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[884]; + mapi_func _func = ((const mapi_func *) _tbl)[904]; ((void (APIENTRY *)(GLsizei n, GLuint *renderbuffers)) _func)(n, renderbuffers); } GLAPI void APIENTRY GLAPI_PREFIX(GenerateMipmapEXT)(GLenum target) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[885]; + mapi_func _func = ((const mapi_func *) _tbl)[905]; ((void (APIENTRY *)(GLenum target)) _func)(target); } GLAPI void APIENTRY GLAPI_PREFIX(GenerateMipmap)(GLenum target) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[885]; + mapi_func _func = ((const mapi_func *) _tbl)[905]; ((void (APIENTRY *)(GLenum target)) _func)(target); } GLAPI void APIENTRY GLAPI_PREFIX(GetFramebufferAttachmentParameterivEXT)(GLenum target, GLenum attachment, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[886]; + mapi_func _func = ((const mapi_func *) _tbl)[906]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum pname, GLint *params)) _func)(target, attachment, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetFramebufferAttachmentParameteriv)(GLenum target, GLenum attachment, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[886]; + mapi_func _func = ((const mapi_func *) _tbl)[906]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum pname, GLint *params)) _func)(target, attachment, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetRenderbufferParameterivEXT)(GLenum target, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[887]; + mapi_func _func = ((const mapi_func *) _tbl)[907]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetRenderbufferParameteriv)(GLenum target, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[887]; + mapi_func _func = ((const mapi_func *) _tbl)[907]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsFramebufferEXT)(GLuint framebuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[888]; + mapi_func _func = ((const mapi_func *) _tbl)[908]; return ((GLboolean (APIENTRY *)(GLuint framebuffer)) _func)(framebuffer); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsFramebuffer)(GLuint framebuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[888]; + mapi_func _func = ((const mapi_func *) _tbl)[908]; return ((GLboolean (APIENTRY *)(GLuint framebuffer)) _func)(framebuffer); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsRenderbufferEXT)(GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[889]; + mapi_func _func = ((const mapi_func *) _tbl)[909]; return ((GLboolean (APIENTRY *)(GLuint renderbuffer)) _func)(renderbuffer); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsRenderbuffer)(GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[889]; + mapi_func _func = ((const mapi_func *) _tbl)[909]; return ((GLboolean (APIENTRY *)(GLuint renderbuffer)) _func)(renderbuffer); } GLAPI void APIENTRY GLAPI_PREFIX(RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[890]; + mapi_func _func = ((const mapi_func *) _tbl)[910]; ((void (APIENTRY *)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)) _func)(target, internalformat, width, height); } GLAPI void APIENTRY GLAPI_PREFIX(RenderbufferStorage)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[890]; + mapi_func _func = ((const mapi_func *) _tbl)[910]; ((void (APIENTRY *)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)) _func)(target, internalformat, width, height); } GLAPI void APIENTRY GLAPI_PREFIX(BlitFramebuffer)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[891]; + mapi_func _func = ((const mapi_func *) _tbl)[911]; ((void (APIENTRY *)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)) _func)(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); } GLAPI void APIENTRY GLAPI_PREFIX(BindFragDataLocationEXT)(GLuint program, GLuint colorNumber, const GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[894]; + mapi_func _func = ((const mapi_func *) _tbl)[914]; ((void (APIENTRY *)(GLuint program, GLuint colorNumber, const GLchar *name)) _func)(program, colorNumber, name); } GLAPI void APIENTRY GLAPI_PREFIX(BindFragDataLocation)(GLuint program, GLuint colorNumber, const GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[894]; + mapi_func _func = ((const mapi_func *) _tbl)[914]; ((void (APIENTRY *)(GLuint program, GLuint colorNumber, const GLchar *name)) _func)(program, colorNumber, name); } GLAPI GLint APIENTRY GLAPI_PREFIX(GetFragDataLocationEXT)(GLuint program, const GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[895]; + mapi_func _func = ((const mapi_func *) _tbl)[915]; return ((GLint (APIENTRY *)(GLuint program, const GLchar *name)) _func)(program, name); } GLAPI GLint APIENTRY GLAPI_PREFIX(GetFragDataLocation)(GLuint program, const GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[895]; + mapi_func _func = ((const mapi_func *) _tbl)[915]; return ((GLint (APIENTRY *)(GLuint program, const GLchar *name)) _func)(program, name); } GLAPI void APIENTRY GLAPI_PREFIX(GetUniformuivEXT)(GLuint program, GLint location, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[896]; + mapi_func _func = ((const mapi_func *) _tbl)[916]; ((void (APIENTRY *)(GLuint program, GLint location, GLuint *params)) _func)(program, location, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetUniformuiv)(GLuint program, GLint location, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[896]; + mapi_func _func = ((const mapi_func *) _tbl)[916]; ((void (APIENTRY *)(GLuint program, GLint location, GLuint *params)) _func)(program, location, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribIivEXT)(GLuint index, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[897]; + mapi_func _func = ((const mapi_func *) _tbl)[917]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLint *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribIiv)(GLuint index, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[897]; + mapi_func _func = ((const mapi_func *) _tbl)[917]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLint *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribIuivEXT)(GLuint index, GLenum pname, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[898]; + mapi_func _func = ((const mapi_func *) _tbl)[918]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLuint *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribIuiv)(GLuint index, GLenum pname, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[898]; + mapi_func _func = ((const mapi_func *) _tbl)[918]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLuint *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform1uiEXT)(GLint location, GLuint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[899]; + mapi_func _func = ((const mapi_func *) _tbl)[919]; ((void (APIENTRY *)(GLint location, GLuint x)) _func)(location, x); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform1ui)(GLint location, GLuint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[899]; + mapi_func _func = ((const mapi_func *) _tbl)[919]; ((void (APIENTRY *)(GLint location, GLuint x)) _func)(location, x); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform1uivEXT)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[900]; + mapi_func _func = ((const mapi_func *) _tbl)[920]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform1uiv)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[900]; + mapi_func _func = ((const mapi_func *) _tbl)[920]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform2uiEXT)(GLint location, GLuint x, GLuint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[901]; + mapi_func _func = ((const mapi_func *) _tbl)[921]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y)) _func)(location, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform2ui)(GLint location, GLuint x, GLuint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[901]; + mapi_func _func = ((const mapi_func *) _tbl)[921]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y)) _func)(location, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform2uivEXT)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[902]; + mapi_func _func = ((const mapi_func *) _tbl)[922]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform2uiv)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[902]; + mapi_func _func = ((const mapi_func *) _tbl)[922]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform3uiEXT)(GLint location, GLuint x, GLuint y, GLuint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[903]; + mapi_func _func = ((const mapi_func *) _tbl)[923]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y, GLuint z)) _func)(location, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform3ui)(GLint location, GLuint x, GLuint y, GLuint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[903]; + mapi_func _func = ((const mapi_func *) _tbl)[923]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y, GLuint z)) _func)(location, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform3uivEXT)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[904]; + mapi_func _func = ((const mapi_func *) _tbl)[924]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform3uiv)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[904]; + mapi_func _func = ((const mapi_func *) _tbl)[924]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform4uiEXT)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[905]; + mapi_func _func = ((const mapi_func *) _tbl)[925]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w)) _func)(location, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform4ui)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[905]; + mapi_func _func = ((const mapi_func *) _tbl)[925]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w)) _func)(location, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform4uivEXT)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[906]; + mapi_func _func = ((const mapi_func *) _tbl)[926]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform4uiv)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[906]; + mapi_func _func = ((const mapi_func *) _tbl)[926]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1iEXT)(GLuint index, GLint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[907]; + mapi_func _func = ((const mapi_func *) _tbl)[927]; ((void (APIENTRY *)(GLuint index, GLint x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1i)(GLuint index, GLint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[907]; + mapi_func _func = ((const mapi_func *) _tbl)[927]; ((void (APIENTRY *)(GLuint index, GLint x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1ivEXT)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[908]; + mapi_func _func = ((const mapi_func *) _tbl)[928]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1iv)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[908]; + mapi_func _func = ((const mapi_func *) _tbl)[928]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1uiEXT)(GLuint index, GLuint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[909]; + mapi_func _func = ((const mapi_func *) _tbl)[929]; ((void (APIENTRY *)(GLuint index, GLuint x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1ui)(GLuint index, GLuint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[909]; + mapi_func _func = ((const mapi_func *) _tbl)[929]; ((void (APIENTRY *)(GLuint index, GLuint x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1uivEXT)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[910]; + mapi_func _func = ((const mapi_func *) _tbl)[930]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1uiv)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[910]; + mapi_func _func = ((const mapi_func *) _tbl)[930]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2iEXT)(GLuint index, GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[911]; + mapi_func _func = ((const mapi_func *) _tbl)[931]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2i)(GLuint index, GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[911]; + mapi_func _func = ((const mapi_func *) _tbl)[931]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2ivEXT)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[912]; + mapi_func _func = ((const mapi_func *) _tbl)[932]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2iv)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[912]; + mapi_func _func = ((const mapi_func *) _tbl)[932]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2uiEXT)(GLuint index, GLuint x, GLuint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[913]; + mapi_func _func = ((const mapi_func *) _tbl)[933]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2ui)(GLuint index, GLuint x, GLuint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[913]; + mapi_func _func = ((const mapi_func *) _tbl)[933]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2uivEXT)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[914]; + mapi_func _func = ((const mapi_func *) _tbl)[934]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2uiv)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[914]; + mapi_func _func = ((const mapi_func *) _tbl)[934]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3iEXT)(GLuint index, GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[915]; + mapi_func _func = ((const mapi_func *) _tbl)[935]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y, GLint z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3i)(GLuint index, GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[915]; + mapi_func _func = ((const mapi_func *) _tbl)[935]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y, GLint z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3ivEXT)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[916]; + mapi_func _func = ((const mapi_func *) _tbl)[936]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3iv)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[916]; + mapi_func _func = ((const mapi_func *) _tbl)[936]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[917]; + mapi_func _func = ((const mapi_func *) _tbl)[937]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y, GLuint z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3ui)(GLuint index, GLuint x, GLuint y, GLuint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[917]; + mapi_func _func = ((const mapi_func *) _tbl)[937]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y, GLuint z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3uivEXT)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[918]; + mapi_func _func = ((const mapi_func *) _tbl)[938]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3uiv)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[918]; + mapi_func _func = ((const mapi_func *) _tbl)[938]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4bvEXT)(GLuint index, const GLbyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[919]; + mapi_func _func = ((const mapi_func *) _tbl)[939]; ((void (APIENTRY *)(GLuint index, const GLbyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4bv)(GLuint index, const GLbyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[919]; + mapi_func _func = ((const mapi_func *) _tbl)[939]; ((void (APIENTRY *)(GLuint index, const GLbyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4iEXT)(GLuint index, GLint x, GLint y, GLint z, GLint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[920]; + mapi_func _func = ((const mapi_func *) _tbl)[940]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y, GLint z, GLint w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4i)(GLuint index, GLint x, GLint y, GLint z, GLint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[920]; + mapi_func _func = ((const mapi_func *) _tbl)[940]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y, GLint z, GLint w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4ivEXT)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[921]; + mapi_func _func = ((const mapi_func *) _tbl)[941]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4iv)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[921]; + mapi_func _func = ((const mapi_func *) _tbl)[941]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4svEXT)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[922]; + mapi_func _func = ((const mapi_func *) _tbl)[942]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4sv)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[922]; + mapi_func _func = ((const mapi_func *) _tbl)[942]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4ubvEXT)(GLuint index, const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[923]; + mapi_func _func = ((const mapi_func *) _tbl)[943]; ((void (APIENTRY *)(GLuint index, const GLubyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4ubv)(GLuint index, const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[923]; + mapi_func _func = ((const mapi_func *) _tbl)[943]; ((void (APIENTRY *)(GLuint index, const GLubyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[924]; + mapi_func _func = ((const mapi_func *) _tbl)[944]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4ui)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[924]; + mapi_func _func = ((const mapi_func *) _tbl)[944]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4uivEXT)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[925]; + mapi_func _func = ((const mapi_func *) _tbl)[945]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4uiv)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[925]; + mapi_func _func = ((const mapi_func *) _tbl)[945]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4usvEXT)(GLuint index, const GLushort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[926]; + mapi_func _func = ((const mapi_func *) _tbl)[946]; ((void (APIENTRY *)(GLuint index, const GLushort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4usv)(GLuint index, const GLushort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[926]; + mapi_func _func = ((const mapi_func *) _tbl)[946]; ((void (APIENTRY *)(GLuint index, const GLushort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribIPointerEXT)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[927]; + mapi_func _func = ((const mapi_func *) _tbl)[947]; ((void (APIENTRY *)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(index, size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribIPointer)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[927]; + mapi_func _func = ((const mapi_func *) _tbl)[947]; ((void (APIENTRY *)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(index, size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTextureLayerEXT)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[928]; + mapi_func _func = ((const mapi_func *) _tbl)[948]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)) _func)(target, attachment, texture, level, layer); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTextureLayer)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[928]; + mapi_func _func = ((const mapi_func *) _tbl)[948]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)) _func)(target, attachment, texture, level, layer); } GLAPI void APIENTRY GLAPI_PREFIX(ColorMaskIndexedEXT)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[929]; + mapi_func _func = ((const mapi_func *) _tbl)[949]; ((void (APIENTRY *)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a)) _func)(buf, r, g, b, a); } GLAPI void APIENTRY GLAPI_PREFIX(ColorMaski)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[929]; + mapi_func _func = ((const mapi_func *) _tbl)[949]; ((void (APIENTRY *)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a)) _func)(buf, r, g, b, a); } GLAPI void APIENTRY GLAPI_PREFIX(DisableIndexedEXT)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[930]; + mapi_func _func = ((const mapi_func *) _tbl)[950]; ((void (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(Disablei)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[930]; + mapi_func _func = ((const mapi_func *) _tbl)[950]; ((void (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(EnableIndexedEXT)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[931]; + mapi_func _func = ((const mapi_func *) _tbl)[951]; ((void (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(Enablei)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[931]; + mapi_func _func = ((const mapi_func *) _tbl)[951]; ((void (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(GetBooleanIndexedvEXT)(GLenum value, GLuint index, GLboolean *data) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[932]; + mapi_func _func = ((const mapi_func *) _tbl)[952]; ((void (APIENTRY *)(GLenum value, GLuint index, GLboolean *data)) _func)(value, index, data); } GLAPI void APIENTRY GLAPI_PREFIX(GetBooleani_v)(GLenum value, GLuint index, GLboolean *data) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[932]; + mapi_func _func = ((const mapi_func *) _tbl)[952]; ((void (APIENTRY *)(GLenum value, GLuint index, GLboolean *data)) _func)(value, index, data); } GLAPI void APIENTRY GLAPI_PREFIX(GetIntegerIndexedvEXT)(GLenum value, GLuint index, GLint *data) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[933]; + mapi_func _func = ((const mapi_func *) _tbl)[953]; ((void (APIENTRY *)(GLenum value, GLuint index, GLint *data)) _func)(value, index, data); } GLAPI void APIENTRY GLAPI_PREFIX(GetIntegeri_v)(GLenum value, GLuint index, GLint *data) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[933]; + mapi_func _func = ((const mapi_func *) _tbl)[953]; ((void (APIENTRY *)(GLenum value, GLuint index, GLint *data)) _func)(value, index, data); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsEnabledIndexedEXT)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[934]; + mapi_func _func = ((const mapi_func *) _tbl)[954]; return ((GLboolean (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsEnabledi)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[934]; + mapi_func _func = ((const mapi_func *) _tbl)[954]; return ((GLboolean (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(ClearColorIiEXT)(GLint r, GLint g, GLint b, GLint a) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[935]; + mapi_func _func = ((const mapi_func *) _tbl)[955]; ((void (APIENTRY *)(GLint r, GLint g, GLint b, GLint a)) _func)(r, g, b, a); } GLAPI void APIENTRY GLAPI_PREFIX(ClearColorIuiEXT)(GLuint r, GLuint g, GLuint b, GLuint a) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[936]; + mapi_func _func = ((const mapi_func *) _tbl)[956]; ((void (APIENTRY *)(GLuint r, GLuint g, GLuint b, GLuint a)) _func)(r, g, b, a); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexParameterIivEXT)(GLenum target, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[937]; + mapi_func _func = ((const mapi_func *) _tbl)[957]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexParameterIiv)(GLenum target, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[937]; + mapi_func _func = ((const mapi_func *) _tbl)[957]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexParameterIuivEXT)(GLenum target, GLenum pname, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[938]; + mapi_func _func = ((const mapi_func *) _tbl)[958]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLuint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexParameterIuiv)(GLenum target, GLenum pname, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[938]; + mapi_func _func = ((const mapi_func *) _tbl)[958]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLuint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(TexParameterIivEXT)(GLenum target, GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[939]; + mapi_func _func = ((const mapi_func *) _tbl)[959]; ((void (APIENTRY *)(GLenum target, GLenum pname, const GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(TexParameterIiv)(GLenum target, GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[939]; + mapi_func _func = ((const mapi_func *) _tbl)[959]; ((void (APIENTRY *)(GLenum target, GLenum pname, const GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(TexParameterIuivEXT)(GLenum target, GLenum pname, const GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[940]; + mapi_func _func = ((const mapi_func *) _tbl)[960]; ((void (APIENTRY *)(GLenum target, GLenum pname, const GLuint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(TexParameterIuiv)(GLenum target, GLenum pname, const GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[940]; + mapi_func _func = ((const mapi_func *) _tbl)[960]; ((void (APIENTRY *)(GLenum target, GLenum pname, const GLuint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(BeginConditionalRenderNV)(GLuint query, GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[941]; + mapi_func _func = ((const mapi_func *) _tbl)[961]; ((void (APIENTRY *)(GLuint query, GLenum mode)) _func)(query, mode); } GLAPI void APIENTRY GLAPI_PREFIX(BeginConditionalRender)(GLuint query, GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[941]; + mapi_func _func = ((const mapi_func *) _tbl)[961]; ((void (APIENTRY *)(GLuint query, GLenum mode)) _func)(query, mode); } GLAPI void APIENTRY GLAPI_PREFIX(EndConditionalRenderNV)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[942]; + mapi_func _func = ((const mapi_func *) _tbl)[962]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(EndConditionalRender)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[942]; + mapi_func _func = ((const mapi_func *) _tbl)[962]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(BeginTransformFeedbackEXT)(GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[943]; + mapi_func _func = ((const mapi_func *) _tbl)[963]; ((void (APIENTRY *)(GLenum mode)) _func)(mode); } GLAPI void APIENTRY GLAPI_PREFIX(BeginTransformFeedback)(GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[943]; + mapi_func _func = ((const mapi_func *) _tbl)[963]; ((void (APIENTRY *)(GLenum mode)) _func)(mode); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferBaseEXT)(GLenum target, GLuint index, GLuint buffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[944]; + mapi_func _func = ((const mapi_func *) _tbl)[964]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer)) _func)(target, index, buffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferBase)(GLenum target, GLuint index, GLuint buffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[944]; + mapi_func _func = ((const mapi_func *) _tbl)[964]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer)) _func)(target, index, buffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferOffsetEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[945]; + mapi_func _func = ((const mapi_func *) _tbl)[965]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer, GLintptr offset)) _func)(target, index, buffer, offset); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferRangeEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[946]; + mapi_func _func = ((const mapi_func *) _tbl)[966]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)) _func)(target, index, buffer, offset, size); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferRange)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[946]; + mapi_func _func = ((const mapi_func *) _tbl)[966]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)) _func)(target, index, buffer, offset, size); } GLAPI void APIENTRY GLAPI_PREFIX(EndTransformFeedbackEXT)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[947]; + mapi_func _func = ((const mapi_func *) _tbl)[967]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(EndTransformFeedback)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[947]; + mapi_func _func = ((const mapi_func *) _tbl)[967]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(GetTransformFeedbackVaryingEXT)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[948]; + mapi_func _func = ((const mapi_func *) _tbl)[968]; ((void (APIENTRY *)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)) _func)(program, index, bufSize, length, size, type, name); } GLAPI void APIENTRY GLAPI_PREFIX(GetTransformFeedbackVarying)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[948]; + mapi_func _func = ((const mapi_func *) _tbl)[968]; ((void (APIENTRY *)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)) _func)(program, index, bufSize, length, size, type, name); } GLAPI void APIENTRY GLAPI_PREFIX(TransformFeedbackVaryingsEXT)(GLuint program, GLsizei count, const char **varyings, GLenum bufferMode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[949]; + mapi_func _func = ((const mapi_func *) _tbl)[969]; ((void (APIENTRY *)(GLuint program, GLsizei count, const char **varyings, GLenum bufferMode)) _func)(program, count, varyings, bufferMode); } GLAPI void APIENTRY GLAPI_PREFIX(TransformFeedbackVaryings)(GLuint program, GLsizei count, const GLchar* *varyings, GLenum bufferMode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[949]; + mapi_func _func = ((const mapi_func *) _tbl)[969]; ((void (APIENTRY *)(GLuint program, GLsizei count, const GLchar* *varyings, GLenum bufferMode)) _func)(program, count, varyings, bufferMode); } GLAPI void APIENTRY GLAPI_PREFIX(ProvokingVertexEXT)(GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[950]; + mapi_func _func = ((const mapi_func *) _tbl)[970]; ((void (APIENTRY *)(GLenum mode)) _func)(mode); } GLAPI void APIENTRY GLAPI_PREFIX(ProvokingVertex)(GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[950]; + mapi_func _func = ((const mapi_func *) _tbl)[970]; ((void (APIENTRY *)(GLenum mode)) _func)(mode); } GLAPI void APIENTRY GLAPI_PREFIX(GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[953]; + mapi_func _func = ((const mapi_func *) _tbl)[973]; ((void (APIENTRY *)(GLenum objectType, GLuint name, GLenum pname, GLint *value)) _func)(objectType, name, pname, value); } GLAPI GLenum APIENTRY GLAPI_PREFIX(ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[954]; + mapi_func _func = ((const mapi_func *) _tbl)[974]; return ((GLenum (APIENTRY *)(GLenum objectType, GLuint name, GLenum option)) _func)(objectType, name, option); } GLAPI GLenum APIENTRY GLAPI_PREFIX(ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[955]; + mapi_func _func = ((const mapi_func *) _tbl)[975]; return ((GLenum (APIENTRY *)(GLenum objectType, GLuint name, GLenum option)) _func)(objectType, name, option); } GLAPI void APIENTRY GLAPI_PREFIX(ActiveProgramEXT)(GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[956]; + mapi_func _func = ((const mapi_func *) _tbl)[976]; ((void (APIENTRY *)(GLuint program)) _func)(program); } GLAPI GLuint APIENTRY GLAPI_PREFIX(CreateShaderProgramEXT)(GLenum type, const GLchar *string) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[957]; + mapi_func _func = ((const mapi_func *) _tbl)[977]; return ((GLuint (APIENTRY *)(GLenum type, const GLchar *string)) _func)(type, string); } GLAPI void APIENTRY GLAPI_PREFIX(UseShaderProgramEXT)(GLenum type, GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[958]; + mapi_func _func = ((const mapi_func *) _tbl)[978]; ((void (APIENTRY *)(GLenum type, GLuint program)) _func)(type, program); } GLAPI void APIENTRY GLAPI_PREFIX(TextureBarrierNV)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[959]; + mapi_func _func = ((const mapi_func *) _tbl)[979]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid *writeOffset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[965]; + mapi_func _func = ((const mapi_func *) _tbl)[985]; ((void (APIENTRY *)(GLenum target, GLvoid *writeOffset)) _func)(target, writeOffset); } GLAPI void APIENTRY GLAPI_PREFIX(EGLImageTargetTexture2DOES)(GLenum target, GLvoid *writeOffset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[966]; + mapi_func _func = ((const mapi_func *) _tbl)[986]; ((void (APIENTRY *)(GLenum target, GLvoid *writeOffset)) _func)(target, writeOffset); } @@ -12024,15 +12216,27 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(MultiDrawElementsBaseVertex))"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendEquationSeparateiARB))"\n" "\t"STUB_ASM_CODE("596")"\n" +".globl "GLAPI_PREFIX_STR(BlendEquationSeparateIndexedAMD)"\n" +".set "GLAPI_PREFIX_STR(BlendEquationSeparateIndexedAMD)", "GLAPI_PREFIX_STR(BlendEquationSeparateiARB)"\n" + STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendEquationiARB))"\n" "\t"STUB_ASM_CODE("597")"\n" +".globl "GLAPI_PREFIX_STR(BlendEquationIndexedAMD)"\n" +".set "GLAPI_PREFIX_STR(BlendEquationIndexedAMD)", "GLAPI_PREFIX_STR(BlendEquationiARB)"\n" + STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendFuncSeparateiARB))"\n" "\t"STUB_ASM_CODE("598")"\n" +".globl "GLAPI_PREFIX_STR(BlendFuncSeparateIndexedAMD)"\n" +".set "GLAPI_PREFIX_STR(BlendFuncSeparateIndexedAMD)", "GLAPI_PREFIX_STR(BlendFuncSeparateiARB)"\n" + STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendFunciARB))"\n" "\t"STUB_ASM_CODE("599")"\n" +".globl "GLAPI_PREFIX_STR(BlendFuncIndexedAMD)"\n" +".set "GLAPI_PREFIX_STR(BlendFuncIndexedAMD)", "GLAPI_PREFIX_STR(BlendFunciARB)"\n" + STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindSampler))"\n" "\t"STUB_ASM_CODE("600")"\n" @@ -12111,29 +12315,89 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ReleaseShaderCompiler))"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ShaderBinary))"\n" "\t"STUB_ASM_CODE("625")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PolygonOffsetEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetGraphicsResetStatusARB))"\n" "\t"STUB_ASM_CODE("629")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorPointerEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetnColorTableARB))"\n" +"\t"STUB_ASM_CODE("630")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetnCompressedTexImageARB))"\n" +"\t"STUB_ASM_CODE("631")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetnConvolutionFilterARB))"\n" +"\t"STUB_ASM_CODE("632")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetnHistogramARB))"\n" +"\t"STUB_ASM_CODE("633")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetnMapdvARB))"\n" +"\t"STUB_ASM_CODE("634")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetnMapfvARB))"\n" +"\t"STUB_ASM_CODE("635")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetnMapivARB))"\n" +"\t"STUB_ASM_CODE("636")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetnMinmaxARB))"\n" +"\t"STUB_ASM_CODE("637")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetnPixelMapfvARB))"\n" +"\t"STUB_ASM_CODE("638")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetnPixelMapuivARB))"\n" +"\t"STUB_ASM_CODE("639")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetnPixelMapusvARB))"\n" +"\t"STUB_ASM_CODE("640")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetnPolygonStippleARB))"\n" +"\t"STUB_ASM_CODE("641")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetnSeparableFilterARB))"\n" +"\t"STUB_ASM_CODE("642")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetnTexImageARB))"\n" +"\t"STUB_ASM_CODE("643")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetnUniformdvARB))"\n" +"\t"STUB_ASM_CODE("644")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetnUniformfvARB))"\n" +"\t"STUB_ASM_CODE("645")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetnUniformivARB))"\n" +"\t"STUB_ASM_CODE("646")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetnUniformuivARB))"\n" +"\t"STUB_ASM_CODE("647")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ReadnPixelsARB))"\n" "\t"STUB_ASM_CODE("648")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EdgeFlagPointerEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PolygonOffsetEXT))"\n" "\t"STUB_ASM_CODE("649")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorPointerEXT))"\n" +"\t"STUB_ASM_CODE("668")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EdgeFlagPointerEXT))"\n" +"\t"STUB_ASM_CODE("669")"\n" + STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IndexPointerEXT))"\n" -"\t"STUB_ASM_CODE("650")"\n" +"\t"STUB_ASM_CODE("670")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(NormalPointerEXT))"\n" -"\t"STUB_ASM_CODE("651")"\n" +"\t"STUB_ASM_CODE("671")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexCoordPointerEXT))"\n" -"\t"STUB_ASM_CODE("652")"\n" +"\t"STUB_ASM_CODE("672")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexPointerEXT))"\n" -"\t"STUB_ASM_CODE("653")"\n" +"\t"STUB_ASM_CODE("673")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterfEXT))"\n" -"\t"STUB_ASM_CODE("654")"\n" +"\t"STUB_ASM_CODE("674")"\n" ".globl "GLAPI_PREFIX_STR(PointParameterf)"\n" ".set "GLAPI_PREFIX_STR(PointParameterf)", "GLAPI_PREFIX_STR(PointParameterfEXT)"\n" @@ -12142,7 +12406,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterfEXT))"\n" ".set "GLAPI_PREFIX_STR(PointParameterfARB)", "GLAPI_PREFIX_STR(PointParameterfEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterfvEXT))"\n" -"\t"STUB_ASM_CODE("655")"\n" +"\t"STUB_ASM_CODE("675")"\n" ".globl "GLAPI_PREFIX_STR(PointParameterfv)"\n" ".set "GLAPI_PREFIX_STR(PointParameterfv)", "GLAPI_PREFIX_STR(PointParameterfvEXT)"\n" @@ -12151,211 +12415,211 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterfvEXT))"\n" ".set "GLAPI_PREFIX_STR(PointParameterfvARB)", "GLAPI_PREFIX_STR(PointParameterfvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(LockArraysEXT))"\n" -"\t"STUB_ASM_CODE("656")"\n" +"\t"STUB_ASM_CODE("676")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(UnlockArraysEXT))"\n" -"\t"STUB_ASM_CODE("657")"\n" +"\t"STUB_ASM_CODE("677")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3bEXT))"\n" -"\t"STUB_ASM_CODE("658")"\n" +"\t"STUB_ASM_CODE("678")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3b)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3b)", "GLAPI_PREFIX_STR(SecondaryColor3bEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3bvEXT))"\n" -"\t"STUB_ASM_CODE("659")"\n" +"\t"STUB_ASM_CODE("679")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3bv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3bv)", "GLAPI_PREFIX_STR(SecondaryColor3bvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3dEXT))"\n" -"\t"STUB_ASM_CODE("660")"\n" +"\t"STUB_ASM_CODE("680")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3d)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3d)", "GLAPI_PREFIX_STR(SecondaryColor3dEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3dvEXT))"\n" -"\t"STUB_ASM_CODE("661")"\n" +"\t"STUB_ASM_CODE("681")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3dv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3dv)", "GLAPI_PREFIX_STR(SecondaryColor3dvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3fEXT))"\n" -"\t"STUB_ASM_CODE("662")"\n" +"\t"STUB_ASM_CODE("682")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3f)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3f)", "GLAPI_PREFIX_STR(SecondaryColor3fEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3fvEXT))"\n" -"\t"STUB_ASM_CODE("663")"\n" +"\t"STUB_ASM_CODE("683")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3fv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3fv)", "GLAPI_PREFIX_STR(SecondaryColor3fvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3iEXT))"\n" -"\t"STUB_ASM_CODE("664")"\n" +"\t"STUB_ASM_CODE("684")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3i)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3i)", "GLAPI_PREFIX_STR(SecondaryColor3iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3ivEXT))"\n" -"\t"STUB_ASM_CODE("665")"\n" +"\t"STUB_ASM_CODE("685")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3iv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3iv)", "GLAPI_PREFIX_STR(SecondaryColor3ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3sEXT))"\n" -"\t"STUB_ASM_CODE("666")"\n" +"\t"STUB_ASM_CODE("686")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3s)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3s)", "GLAPI_PREFIX_STR(SecondaryColor3sEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3svEXT))"\n" -"\t"STUB_ASM_CODE("667")"\n" +"\t"STUB_ASM_CODE("687")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3sv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3sv)", "GLAPI_PREFIX_STR(SecondaryColor3svEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3ubEXT))"\n" -"\t"STUB_ASM_CODE("668")"\n" +"\t"STUB_ASM_CODE("688")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3ub)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3ub)", "GLAPI_PREFIX_STR(SecondaryColor3ubEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3ubvEXT))"\n" -"\t"STUB_ASM_CODE("669")"\n" +"\t"STUB_ASM_CODE("689")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3ubv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3ubv)", "GLAPI_PREFIX_STR(SecondaryColor3ubvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3uiEXT))"\n" -"\t"STUB_ASM_CODE("670")"\n" +"\t"STUB_ASM_CODE("690")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3ui)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3ui)", "GLAPI_PREFIX_STR(SecondaryColor3uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3uivEXT))"\n" -"\t"STUB_ASM_CODE("671")"\n" +"\t"STUB_ASM_CODE("691")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3uiv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3uiv)", "GLAPI_PREFIX_STR(SecondaryColor3uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3usEXT))"\n" -"\t"STUB_ASM_CODE("672")"\n" +"\t"STUB_ASM_CODE("692")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3us)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3us)", "GLAPI_PREFIX_STR(SecondaryColor3usEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3usvEXT))"\n" -"\t"STUB_ASM_CODE("673")"\n" +"\t"STUB_ASM_CODE("693")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3usv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3usv)", "GLAPI_PREFIX_STR(SecondaryColor3usvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColorPointerEXT))"\n" -"\t"STUB_ASM_CODE("674")"\n" +"\t"STUB_ASM_CODE("694")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColorPointer)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColorPointer)", "GLAPI_PREFIX_STR(SecondaryColorPointerEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(MultiDrawArraysEXT))"\n" -"\t"STUB_ASM_CODE("675")"\n" +"\t"STUB_ASM_CODE("695")"\n" ".globl "GLAPI_PREFIX_STR(MultiDrawArrays)"\n" ".set "GLAPI_PREFIX_STR(MultiDrawArrays)", "GLAPI_PREFIX_STR(MultiDrawArraysEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(MultiDrawElementsEXT))"\n" -"\t"STUB_ASM_CODE("676")"\n" +"\t"STUB_ASM_CODE("696")"\n" ".globl "GLAPI_PREFIX_STR(MultiDrawElements)"\n" ".set "GLAPI_PREFIX_STR(MultiDrawElements)", "GLAPI_PREFIX_STR(MultiDrawElementsEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoordPointerEXT))"\n" -"\t"STUB_ASM_CODE("677")"\n" +"\t"STUB_ASM_CODE("697")"\n" ".globl "GLAPI_PREFIX_STR(FogCoordPointer)"\n" ".set "GLAPI_PREFIX_STR(FogCoordPointer)", "GLAPI_PREFIX_STR(FogCoordPointerEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoorddEXT))"\n" -"\t"STUB_ASM_CODE("678")"\n" +"\t"STUB_ASM_CODE("698")"\n" ".globl "GLAPI_PREFIX_STR(FogCoordd)"\n" ".set "GLAPI_PREFIX_STR(FogCoordd)", "GLAPI_PREFIX_STR(FogCoorddEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoorddvEXT))"\n" -"\t"STUB_ASM_CODE("679")"\n" +"\t"STUB_ASM_CODE("699")"\n" ".globl "GLAPI_PREFIX_STR(FogCoorddv)"\n" ".set "GLAPI_PREFIX_STR(FogCoorddv)", "GLAPI_PREFIX_STR(FogCoorddvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoordfEXT))"\n" -"\t"STUB_ASM_CODE("680")"\n" +"\t"STUB_ASM_CODE("700")"\n" ".globl "GLAPI_PREFIX_STR(FogCoordf)"\n" ".set "GLAPI_PREFIX_STR(FogCoordf)", "GLAPI_PREFIX_STR(FogCoordfEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoordfvEXT))"\n" -"\t"STUB_ASM_CODE("681")"\n" +"\t"STUB_ASM_CODE("701")"\n" ".globl "GLAPI_PREFIX_STR(FogCoordfv)"\n" ".set "GLAPI_PREFIX_STR(FogCoordfv)", "GLAPI_PREFIX_STR(FogCoordfvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendFuncSeparateEXT))"\n" -"\t"STUB_ASM_CODE("683")"\n" +"\t"STUB_ASM_CODE("703")"\n" ".globl "GLAPI_PREFIX_STR(BlendFuncSeparate)"\n" ".set "GLAPI_PREFIX_STR(BlendFuncSeparate)", "GLAPI_PREFIX_STR(BlendFuncSeparateEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FlushVertexArrayRangeNV))"\n" -"\t"STUB_ASM_CODE("684")"\n" +"\t"STUB_ASM_CODE("704")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexArrayRangeNV))"\n" -"\t"STUB_ASM_CODE("685")"\n" +"\t"STUB_ASM_CODE("705")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerInputNV))"\n" -"\t"STUB_ASM_CODE("686")"\n" +"\t"STUB_ASM_CODE("706")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerOutputNV))"\n" -"\t"STUB_ASM_CODE("687")"\n" +"\t"STUB_ASM_CODE("707")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterfNV))"\n" -"\t"STUB_ASM_CODE("688")"\n" +"\t"STUB_ASM_CODE("708")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterfvNV))"\n" -"\t"STUB_ASM_CODE("689")"\n" +"\t"STUB_ASM_CODE("709")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameteriNV))"\n" -"\t"STUB_ASM_CODE("690")"\n" +"\t"STUB_ASM_CODE("710")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterivNV))"\n" -"\t"STUB_ASM_CODE("691")"\n" +"\t"STUB_ASM_CODE("711")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FinalCombinerInputNV))"\n" -"\t"STUB_ASM_CODE("692")"\n" +"\t"STUB_ASM_CODE("712")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerInputParameterfvNV))"\n" -"\t"STUB_ASM_CODE("693")"\n" +"\t"STUB_ASM_CODE("713")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerInputParameterivNV))"\n" -"\t"STUB_ASM_CODE("694")"\n" +"\t"STUB_ASM_CODE("714")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerOutputParameterfvNV))"\n" -"\t"STUB_ASM_CODE("695")"\n" +"\t"STUB_ASM_CODE("715")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerOutputParameterivNV))"\n" -"\t"STUB_ASM_CODE("696")"\n" +"\t"STUB_ASM_CODE("716")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFinalCombinerInputParameterfvNV))"\n" -"\t"STUB_ASM_CODE("697")"\n" +"\t"STUB_ASM_CODE("717")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFinalCombinerInputParameterivNV))"\n" -"\t"STUB_ASM_CODE("698")"\n" +"\t"STUB_ASM_CODE("718")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ResizeBuffersMESA))"\n" -"\t"STUB_ASM_CODE("699")"\n" +"\t"STUB_ASM_CODE("719")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2dMESA))"\n" -"\t"STUB_ASM_CODE("700")"\n" +"\t"STUB_ASM_CODE("720")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2d)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2d)", "GLAPI_PREFIX_STR(WindowPos2dMESA)"\n" @@ -12364,7 +12628,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2dMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2dARB)", "GLAPI_PREFIX_STR(WindowPos2dMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2dvMESA))"\n" -"\t"STUB_ASM_CODE("701")"\n" +"\t"STUB_ASM_CODE("721")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2dv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2dv)", "GLAPI_PREFIX_STR(WindowPos2dvMESA)"\n" @@ -12373,7 +12637,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2dvMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2dvARB)", "GLAPI_PREFIX_STR(WindowPos2dvMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2fMESA))"\n" -"\t"STUB_ASM_CODE("702")"\n" +"\t"STUB_ASM_CODE("722")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2f)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2f)", "GLAPI_PREFIX_STR(WindowPos2fMESA)"\n" @@ -12382,7 +12646,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2fMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2fARB)", "GLAPI_PREFIX_STR(WindowPos2fMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2fvMESA))"\n" -"\t"STUB_ASM_CODE("703")"\n" +"\t"STUB_ASM_CODE("723")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2fv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2fv)", "GLAPI_PREFIX_STR(WindowPos2fvMESA)"\n" @@ -12391,7 +12655,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2fvMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2fvARB)", "GLAPI_PREFIX_STR(WindowPos2fvMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2iMESA))"\n" -"\t"STUB_ASM_CODE("704")"\n" +"\t"STUB_ASM_CODE("724")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2i)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2i)", "GLAPI_PREFIX_STR(WindowPos2iMESA)"\n" @@ -12400,7 +12664,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2iMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2iARB)", "GLAPI_PREFIX_STR(WindowPos2iMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2ivMESA))"\n" -"\t"STUB_ASM_CODE("705")"\n" +"\t"STUB_ASM_CODE("725")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2iv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2iv)", "GLAPI_PREFIX_STR(WindowPos2ivMESA)"\n" @@ -12409,7 +12673,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2ivMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2ivARB)", "GLAPI_PREFIX_STR(WindowPos2ivMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2sMESA))"\n" -"\t"STUB_ASM_CODE("706")"\n" +"\t"STUB_ASM_CODE("726")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2s)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2s)", "GLAPI_PREFIX_STR(WindowPos2sMESA)"\n" @@ -12418,7 +12682,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2sMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2sARB)", "GLAPI_PREFIX_STR(WindowPos2sMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2svMESA))"\n" -"\t"STUB_ASM_CODE("707")"\n" +"\t"STUB_ASM_CODE("727")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2sv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2sv)", "GLAPI_PREFIX_STR(WindowPos2svMESA)"\n" @@ -12427,7 +12691,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2svMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2svARB)", "GLAPI_PREFIX_STR(WindowPos2svMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3dMESA))"\n" -"\t"STUB_ASM_CODE("708")"\n" +"\t"STUB_ASM_CODE("728")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3d)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3d)", "GLAPI_PREFIX_STR(WindowPos3dMESA)"\n" @@ -12436,7 +12700,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3dMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3dARB)", "GLAPI_PREFIX_STR(WindowPos3dMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3dvMESA))"\n" -"\t"STUB_ASM_CODE("709")"\n" +"\t"STUB_ASM_CODE("729")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3dv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3dv)", "GLAPI_PREFIX_STR(WindowPos3dvMESA)"\n" @@ -12445,7 +12709,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3dvMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3dvARB)", "GLAPI_PREFIX_STR(WindowPos3dvMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3fMESA))"\n" -"\t"STUB_ASM_CODE("710")"\n" +"\t"STUB_ASM_CODE("730")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3f)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3f)", "GLAPI_PREFIX_STR(WindowPos3fMESA)"\n" @@ -12454,7 +12718,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3fMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3fARB)", "GLAPI_PREFIX_STR(WindowPos3fMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3fvMESA))"\n" -"\t"STUB_ASM_CODE("711")"\n" +"\t"STUB_ASM_CODE("731")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3fv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3fv)", "GLAPI_PREFIX_STR(WindowPos3fvMESA)"\n" @@ -12463,7 +12727,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3fvMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3fvARB)", "GLAPI_PREFIX_STR(WindowPos3fvMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3iMESA))"\n" -"\t"STUB_ASM_CODE("712")"\n" +"\t"STUB_ASM_CODE("732")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3i)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3i)", "GLAPI_PREFIX_STR(WindowPos3iMESA)"\n" @@ -12472,7 +12736,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3iMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3iARB)", "GLAPI_PREFIX_STR(WindowPos3iMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3ivMESA))"\n" -"\t"STUB_ASM_CODE("713")"\n" +"\t"STUB_ASM_CODE("733")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3iv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3iv)", "GLAPI_PREFIX_STR(WindowPos3ivMESA)"\n" @@ -12481,7 +12745,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3ivMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3ivARB)", "GLAPI_PREFIX_STR(WindowPos3ivMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3sMESA))"\n" -"\t"STUB_ASM_CODE("714")"\n" +"\t"STUB_ASM_CODE("734")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3s)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3s)", "GLAPI_PREFIX_STR(WindowPos3sMESA)"\n" @@ -12490,7 +12754,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3sMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3sARB)", "GLAPI_PREFIX_STR(WindowPos3sMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3svMESA))"\n" -"\t"STUB_ASM_CODE("715")"\n" +"\t"STUB_ASM_CODE("735")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3sv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3sv)", "GLAPI_PREFIX_STR(WindowPos3svMESA)"\n" @@ -12499,70 +12763,70 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3svMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3svARB)", "GLAPI_PREFIX_STR(WindowPos3svMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4dMESA))"\n" -"\t"STUB_ASM_CODE("716")"\n" +"\t"STUB_ASM_CODE("736")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4dvMESA))"\n" -"\t"STUB_ASM_CODE("717")"\n" +"\t"STUB_ASM_CODE("737")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4fMESA))"\n" -"\t"STUB_ASM_CODE("718")"\n" +"\t"STUB_ASM_CODE("738")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4fvMESA))"\n" -"\t"STUB_ASM_CODE("719")"\n" +"\t"STUB_ASM_CODE("739")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4iMESA))"\n" -"\t"STUB_ASM_CODE("720")"\n" +"\t"STUB_ASM_CODE("740")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4ivMESA))"\n" -"\t"STUB_ASM_CODE("721")"\n" +"\t"STUB_ASM_CODE("741")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4sMESA))"\n" -"\t"STUB_ASM_CODE("722")"\n" +"\t"STUB_ASM_CODE("742")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4svMESA))"\n" -"\t"STUB_ASM_CODE("723")"\n" +"\t"STUB_ASM_CODE("743")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AreProgramsResidentNV))"\n" -"\t"STUB_ASM_CODE("733")"\n" +"\t"STUB_ASM_CODE("753")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindProgramNV))"\n" -"\t"STUB_ASM_CODE("734")"\n" +"\t"STUB_ASM_CODE("754")"\n" ".globl "GLAPI_PREFIX_STR(BindProgramARB)"\n" ".set "GLAPI_PREFIX_STR(BindProgramARB)", "GLAPI_PREFIX_STR(BindProgramNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteProgramsNV))"\n" -"\t"STUB_ASM_CODE("735")"\n" +"\t"STUB_ASM_CODE("755")"\n" ".globl "GLAPI_PREFIX_STR(DeleteProgramsARB)"\n" ".set "GLAPI_PREFIX_STR(DeleteProgramsARB)", "GLAPI_PREFIX_STR(DeleteProgramsNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ExecuteProgramNV))"\n" -"\t"STUB_ASM_CODE("736")"\n" +"\t"STUB_ASM_CODE("756")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenProgramsNV))"\n" -"\t"STUB_ASM_CODE("737")"\n" +"\t"STUB_ASM_CODE("757")"\n" ".globl "GLAPI_PREFIX_STR(GenProgramsARB)"\n" ".set "GLAPI_PREFIX_STR(GenProgramsARB)", "GLAPI_PREFIX_STR(GenProgramsNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramParameterdvNV))"\n" -"\t"STUB_ASM_CODE("738")"\n" +"\t"STUB_ASM_CODE("758")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramParameterfvNV))"\n" -"\t"STUB_ASM_CODE("739")"\n" +"\t"STUB_ASM_CODE("759")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramStringNV))"\n" -"\t"STUB_ASM_CODE("740")"\n" +"\t"STUB_ASM_CODE("760")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramivNV))"\n" -"\t"STUB_ASM_CODE("741")"\n" +"\t"STUB_ASM_CODE("761")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTrackMatrixivNV))"\n" -"\t"STUB_ASM_CODE("742")"\n" +"\t"STUB_ASM_CODE("762")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribPointervNV))"\n" -"\t"STUB_ASM_CODE("743")"\n" +"\t"STUB_ASM_CODE("763")"\n" ".globl "GLAPI_PREFIX_STR(GetVertexAttribPointerv)"\n" ".set "GLAPI_PREFIX_STR(GetVertexAttribPointerv)", "GLAPI_PREFIX_STR(GetVertexAttribPointervNV)"\n" @@ -12571,721 +12835,721 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribPointervNV))"\n" ".set "GLAPI_PREFIX_STR(GetVertexAttribPointervARB)", "GLAPI_PREFIX_STR(GetVertexAttribPointervNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribdvNV))"\n" -"\t"STUB_ASM_CODE("744")"\n" +"\t"STUB_ASM_CODE("764")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribfvNV))"\n" -"\t"STUB_ASM_CODE("745")"\n" +"\t"STUB_ASM_CODE("765")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribivNV))"\n" -"\t"STUB_ASM_CODE("746")"\n" +"\t"STUB_ASM_CODE("766")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsProgramNV))"\n" -"\t"STUB_ASM_CODE("747")"\n" +"\t"STUB_ASM_CODE("767")"\n" ".globl "GLAPI_PREFIX_STR(IsProgramARB)"\n" ".set "GLAPI_PREFIX_STR(IsProgramARB)", "GLAPI_PREFIX_STR(IsProgramNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(LoadProgramNV))"\n" -"\t"STUB_ASM_CODE("748")"\n" +"\t"STUB_ASM_CODE("768")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramParameters4dvNV))"\n" -"\t"STUB_ASM_CODE("749")"\n" +"\t"STUB_ASM_CODE("769")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramParameters4fvNV))"\n" -"\t"STUB_ASM_CODE("750")"\n" +"\t"STUB_ASM_CODE("770")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(RequestResidentProgramsNV))"\n" -"\t"STUB_ASM_CODE("751")"\n" +"\t"STUB_ASM_CODE("771")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TrackMatrixNV))"\n" -"\t"STUB_ASM_CODE("752")"\n" +"\t"STUB_ASM_CODE("772")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1dNV))"\n" -"\t"STUB_ASM_CODE("753")"\n" +"\t"STUB_ASM_CODE("773")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1dvNV))"\n" -"\t"STUB_ASM_CODE("754")"\n" +"\t"STUB_ASM_CODE("774")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1fNV))"\n" -"\t"STUB_ASM_CODE("755")"\n" +"\t"STUB_ASM_CODE("775")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1fvNV))"\n" -"\t"STUB_ASM_CODE("756")"\n" +"\t"STUB_ASM_CODE("776")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1sNV))"\n" -"\t"STUB_ASM_CODE("757")"\n" +"\t"STUB_ASM_CODE("777")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1svNV))"\n" -"\t"STUB_ASM_CODE("758")"\n" +"\t"STUB_ASM_CODE("778")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2dNV))"\n" -"\t"STUB_ASM_CODE("759")"\n" +"\t"STUB_ASM_CODE("779")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2dvNV))"\n" -"\t"STUB_ASM_CODE("760")"\n" +"\t"STUB_ASM_CODE("780")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2fNV))"\n" -"\t"STUB_ASM_CODE("761")"\n" +"\t"STUB_ASM_CODE("781")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2fvNV))"\n" -"\t"STUB_ASM_CODE("762")"\n" +"\t"STUB_ASM_CODE("782")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2sNV))"\n" -"\t"STUB_ASM_CODE("763")"\n" +"\t"STUB_ASM_CODE("783")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2svNV))"\n" -"\t"STUB_ASM_CODE("764")"\n" +"\t"STUB_ASM_CODE("784")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3dNV))"\n" -"\t"STUB_ASM_CODE("765")"\n" +"\t"STUB_ASM_CODE("785")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3dvNV))"\n" -"\t"STUB_ASM_CODE("766")"\n" +"\t"STUB_ASM_CODE("786")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3fNV))"\n" -"\t"STUB_ASM_CODE("767")"\n" +"\t"STUB_ASM_CODE("787")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3fvNV))"\n" -"\t"STUB_ASM_CODE("768")"\n" +"\t"STUB_ASM_CODE("788")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3sNV))"\n" -"\t"STUB_ASM_CODE("769")"\n" +"\t"STUB_ASM_CODE("789")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3svNV))"\n" -"\t"STUB_ASM_CODE("770")"\n" +"\t"STUB_ASM_CODE("790")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4dNV))"\n" -"\t"STUB_ASM_CODE("771")"\n" +"\t"STUB_ASM_CODE("791")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4dvNV))"\n" -"\t"STUB_ASM_CODE("772")"\n" +"\t"STUB_ASM_CODE("792")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4fNV))"\n" -"\t"STUB_ASM_CODE("773")"\n" +"\t"STUB_ASM_CODE("793")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4fvNV))"\n" -"\t"STUB_ASM_CODE("774")"\n" +"\t"STUB_ASM_CODE("794")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4sNV))"\n" -"\t"STUB_ASM_CODE("775")"\n" +"\t"STUB_ASM_CODE("795")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4svNV))"\n" -"\t"STUB_ASM_CODE("776")"\n" +"\t"STUB_ASM_CODE("796")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4ubNV))"\n" -"\t"STUB_ASM_CODE("777")"\n" +"\t"STUB_ASM_CODE("797")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4ubvNV))"\n" -"\t"STUB_ASM_CODE("778")"\n" +"\t"STUB_ASM_CODE("798")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribPointerNV))"\n" -"\t"STUB_ASM_CODE("779")"\n" +"\t"STUB_ASM_CODE("799")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1dvNV))"\n" -"\t"STUB_ASM_CODE("780")"\n" +"\t"STUB_ASM_CODE("800")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1fvNV))"\n" -"\t"STUB_ASM_CODE("781")"\n" +"\t"STUB_ASM_CODE("801")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1svNV))"\n" -"\t"STUB_ASM_CODE("782")"\n" +"\t"STUB_ASM_CODE("802")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2dvNV))"\n" -"\t"STUB_ASM_CODE("783")"\n" +"\t"STUB_ASM_CODE("803")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2fvNV))"\n" -"\t"STUB_ASM_CODE("784")"\n" +"\t"STUB_ASM_CODE("804")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2svNV))"\n" -"\t"STUB_ASM_CODE("785")"\n" +"\t"STUB_ASM_CODE("805")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3dvNV))"\n" -"\t"STUB_ASM_CODE("786")"\n" +"\t"STUB_ASM_CODE("806")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3fvNV))"\n" -"\t"STUB_ASM_CODE("787")"\n" +"\t"STUB_ASM_CODE("807")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3svNV))"\n" -"\t"STUB_ASM_CODE("788")"\n" +"\t"STUB_ASM_CODE("808")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4dvNV))"\n" -"\t"STUB_ASM_CODE("789")"\n" +"\t"STUB_ASM_CODE("809")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4fvNV))"\n" -"\t"STUB_ASM_CODE("790")"\n" +"\t"STUB_ASM_CODE("810")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4svNV))"\n" -"\t"STUB_ASM_CODE("791")"\n" +"\t"STUB_ASM_CODE("811")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4ubvNV))"\n" -"\t"STUB_ASM_CODE("792")"\n" +"\t"STUB_ASM_CODE("812")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexBumpParameterfvATI))"\n" -"\t"STUB_ASM_CODE("793")"\n" +"\t"STUB_ASM_CODE("813")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexBumpParameterivATI))"\n" -"\t"STUB_ASM_CODE("794")"\n" +"\t"STUB_ASM_CODE("814")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexBumpParameterfvATI))"\n" -"\t"STUB_ASM_CODE("795")"\n" +"\t"STUB_ASM_CODE("815")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexBumpParameterivATI))"\n" -"\t"STUB_ASM_CODE("796")"\n" +"\t"STUB_ASM_CODE("816")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp1ATI))"\n" -"\t"STUB_ASM_CODE("797")"\n" +"\t"STUB_ASM_CODE("817")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp2ATI))"\n" -"\t"STUB_ASM_CODE("798")"\n" +"\t"STUB_ASM_CODE("818")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp3ATI))"\n" -"\t"STUB_ASM_CODE("799")"\n" +"\t"STUB_ASM_CODE("819")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BeginFragmentShaderATI))"\n" -"\t"STUB_ASM_CODE("800")"\n" +"\t"STUB_ASM_CODE("820")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindFragmentShaderATI))"\n" -"\t"STUB_ASM_CODE("801")"\n" +"\t"STUB_ASM_CODE("821")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp1ATI))"\n" -"\t"STUB_ASM_CODE("802")"\n" +"\t"STUB_ASM_CODE("822")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp2ATI))"\n" -"\t"STUB_ASM_CODE("803")"\n" +"\t"STUB_ASM_CODE("823")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp3ATI))"\n" -"\t"STUB_ASM_CODE("804")"\n" +"\t"STUB_ASM_CODE("824")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteFragmentShaderATI))"\n" -"\t"STUB_ASM_CODE("805")"\n" +"\t"STUB_ASM_CODE("825")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EndFragmentShaderATI))"\n" -"\t"STUB_ASM_CODE("806")"\n" +"\t"STUB_ASM_CODE("826")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenFragmentShadersATI))"\n" -"\t"STUB_ASM_CODE("807")"\n" +"\t"STUB_ASM_CODE("827")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PassTexCoordATI))"\n" -"\t"STUB_ASM_CODE("808")"\n" +"\t"STUB_ASM_CODE("828")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SampleMapATI))"\n" -"\t"STUB_ASM_CODE("809")"\n" +"\t"STUB_ASM_CODE("829")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SetFragmentShaderConstantATI))"\n" -"\t"STUB_ASM_CODE("810")"\n" +"\t"STUB_ASM_CODE("830")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameteriNV))"\n" -"\t"STUB_ASM_CODE("811")"\n" +"\t"STUB_ASM_CODE("831")"\n" ".globl "GLAPI_PREFIX_STR(PointParameteri)"\n" ".set "GLAPI_PREFIX_STR(PointParameteri)", "GLAPI_PREFIX_STR(PointParameteriNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterivNV))"\n" -"\t"STUB_ASM_CODE("812")"\n" +"\t"STUB_ASM_CODE("832")"\n" ".globl "GLAPI_PREFIX_STR(PointParameteriv)"\n" ".set "GLAPI_PREFIX_STR(PointParameteriv)", "GLAPI_PREFIX_STR(PointParameterivNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteVertexArrays))"\n" -"\t"STUB_ASM_CODE("815")"\n" +"\t"STUB_ASM_CODE("835")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsVertexArray))"\n" -"\t"STUB_ASM_CODE("817")"\n" +"\t"STUB_ASM_CODE("837")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramNamedParameterdvNV))"\n" -"\t"STUB_ASM_CODE("818")"\n" +"\t"STUB_ASM_CODE("838")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramNamedParameterfvNV))"\n" -"\t"STUB_ASM_CODE("819")"\n" +"\t"STUB_ASM_CODE("839")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4dNV))"\n" -"\t"STUB_ASM_CODE("820")"\n" +"\t"STUB_ASM_CODE("840")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4dvNV))"\n" -"\t"STUB_ASM_CODE("821")"\n" +"\t"STUB_ASM_CODE("841")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4fNV))"\n" -"\t"STUB_ASM_CODE("822")"\n" +"\t"STUB_ASM_CODE("842")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4fvNV))"\n" -"\t"STUB_ASM_CODE("823")"\n" +"\t"STUB_ASM_CODE("843")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PrimitiveRestartIndexNV))"\n" -"\t"STUB_ASM_CODE("824")"\n" +"\t"STUB_ASM_CODE("844")"\n" ".globl "GLAPI_PREFIX_STR(PrimitiveRestartIndex)"\n" ".set "GLAPI_PREFIX_STR(PrimitiveRestartIndex)", "GLAPI_PREFIX_STR(PrimitiveRestartIndexNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PrimitiveRestartNV))"\n" -"\t"STUB_ASM_CODE("825")"\n" +"\t"STUB_ASM_CODE("845")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendEquationSeparate))"\n" -"\t"STUB_ASM_CODE("873")"\n" +"\t"STUB_ASM_CODE("893")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindFramebufferEXT))"\n" -"\t"STUB_ASM_CODE("874")"\n" +"\t"STUB_ASM_CODE("894")"\n" ".globl "GLAPI_PREFIX_STR(BindFramebuffer)"\n" ".set "GLAPI_PREFIX_STR(BindFramebuffer)", "GLAPI_PREFIX_STR(BindFramebufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindRenderbufferEXT))"\n" -"\t"STUB_ASM_CODE("875")"\n" +"\t"STUB_ASM_CODE("895")"\n" ".globl "GLAPI_PREFIX_STR(BindRenderbuffer)"\n" ".set "GLAPI_PREFIX_STR(BindRenderbuffer)", "GLAPI_PREFIX_STR(BindRenderbufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CheckFramebufferStatusEXT))"\n" -"\t"STUB_ASM_CODE("876")"\n" +"\t"STUB_ASM_CODE("896")"\n" ".globl "GLAPI_PREFIX_STR(CheckFramebufferStatus)"\n" ".set "GLAPI_PREFIX_STR(CheckFramebufferStatus)", "GLAPI_PREFIX_STR(CheckFramebufferStatusEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteFramebuffersEXT))"\n" -"\t"STUB_ASM_CODE("877")"\n" +"\t"STUB_ASM_CODE("897")"\n" ".globl "GLAPI_PREFIX_STR(DeleteFramebuffers)"\n" ".set "GLAPI_PREFIX_STR(DeleteFramebuffers)", "GLAPI_PREFIX_STR(DeleteFramebuffersEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteRenderbuffersEXT))"\n" -"\t"STUB_ASM_CODE("878")"\n" +"\t"STUB_ASM_CODE("898")"\n" ".globl "GLAPI_PREFIX_STR(DeleteRenderbuffers)"\n" ".set "GLAPI_PREFIX_STR(DeleteRenderbuffers)", "GLAPI_PREFIX_STR(DeleteRenderbuffersEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferRenderbufferEXT))"\n" -"\t"STUB_ASM_CODE("879")"\n" +"\t"STUB_ASM_CODE("899")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferRenderbuffer)"\n" ".set "GLAPI_PREFIX_STR(FramebufferRenderbuffer)", "GLAPI_PREFIX_STR(FramebufferRenderbufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferTexture1DEXT))"\n" -"\t"STUB_ASM_CODE("880")"\n" +"\t"STUB_ASM_CODE("900")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferTexture1D)"\n" ".set "GLAPI_PREFIX_STR(FramebufferTexture1D)", "GLAPI_PREFIX_STR(FramebufferTexture1DEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferTexture2DEXT))"\n" -"\t"STUB_ASM_CODE("881")"\n" +"\t"STUB_ASM_CODE("901")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferTexture2D)"\n" ".set "GLAPI_PREFIX_STR(FramebufferTexture2D)", "GLAPI_PREFIX_STR(FramebufferTexture2DEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferTexture3DEXT))"\n" -"\t"STUB_ASM_CODE("882")"\n" +"\t"STUB_ASM_CODE("902")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferTexture3D)"\n" ".set "GLAPI_PREFIX_STR(FramebufferTexture3D)", "GLAPI_PREFIX_STR(FramebufferTexture3DEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenFramebuffersEXT))"\n" -"\t"STUB_ASM_CODE("883")"\n" +"\t"STUB_ASM_CODE("903")"\n" ".globl "GLAPI_PREFIX_STR(GenFramebuffers)"\n" ".set "GLAPI_PREFIX_STR(GenFramebuffers)", "GLAPI_PREFIX_STR(GenFramebuffersEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenRenderbuffersEXT))"\n" -"\t"STUB_ASM_CODE("884")"\n" +"\t"STUB_ASM_CODE("904")"\n" ".globl "GLAPI_PREFIX_STR(GenRenderbuffers)"\n" ".set "GLAPI_PREFIX_STR(GenRenderbuffers)", "GLAPI_PREFIX_STR(GenRenderbuffersEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenerateMipmapEXT))"\n" -"\t"STUB_ASM_CODE("885")"\n" +"\t"STUB_ASM_CODE("905")"\n" ".globl "GLAPI_PREFIX_STR(GenerateMipmap)"\n" ".set "GLAPI_PREFIX_STR(GenerateMipmap)", "GLAPI_PREFIX_STR(GenerateMipmapEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFramebufferAttachmentParameterivEXT))"\n" -"\t"STUB_ASM_CODE("886")"\n" +"\t"STUB_ASM_CODE("906")"\n" ".globl "GLAPI_PREFIX_STR(GetFramebufferAttachmentParameteriv)"\n" ".set "GLAPI_PREFIX_STR(GetFramebufferAttachmentParameteriv)", "GLAPI_PREFIX_STR(GetFramebufferAttachmentParameterivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetRenderbufferParameterivEXT))"\n" -"\t"STUB_ASM_CODE("887")"\n" +"\t"STUB_ASM_CODE("907")"\n" ".globl "GLAPI_PREFIX_STR(GetRenderbufferParameteriv)"\n" ".set "GLAPI_PREFIX_STR(GetRenderbufferParameteriv)", "GLAPI_PREFIX_STR(GetRenderbufferParameterivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsFramebufferEXT))"\n" -"\t"STUB_ASM_CODE("888")"\n" +"\t"STUB_ASM_CODE("908")"\n" ".globl "GLAPI_PREFIX_STR(IsFramebuffer)"\n" ".set "GLAPI_PREFIX_STR(IsFramebuffer)", "GLAPI_PREFIX_STR(IsFramebufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsRenderbufferEXT))"\n" -"\t"STUB_ASM_CODE("889")"\n" +"\t"STUB_ASM_CODE("909")"\n" ".globl "GLAPI_PREFIX_STR(IsRenderbuffer)"\n" ".set "GLAPI_PREFIX_STR(IsRenderbuffer)", "GLAPI_PREFIX_STR(IsRenderbufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(RenderbufferStorageEXT))"\n" -"\t"STUB_ASM_CODE("890")"\n" +"\t"STUB_ASM_CODE("910")"\n" ".globl "GLAPI_PREFIX_STR(RenderbufferStorage)"\n" ".set "GLAPI_PREFIX_STR(RenderbufferStorage)", "GLAPI_PREFIX_STR(RenderbufferStorageEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlitFramebuffer))"\n" -"\t"STUB_ASM_CODE("891")"\n" +"\t"STUB_ASM_CODE("911")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindFragDataLocationEXT))"\n" -"\t"STUB_ASM_CODE("894")"\n" +"\t"STUB_ASM_CODE("914")"\n" ".globl "GLAPI_PREFIX_STR(BindFragDataLocation)"\n" ".set "GLAPI_PREFIX_STR(BindFragDataLocation)", "GLAPI_PREFIX_STR(BindFragDataLocationEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFragDataLocationEXT))"\n" -"\t"STUB_ASM_CODE("895")"\n" +"\t"STUB_ASM_CODE("915")"\n" ".globl "GLAPI_PREFIX_STR(GetFragDataLocation)"\n" ".set "GLAPI_PREFIX_STR(GetFragDataLocation)", "GLAPI_PREFIX_STR(GetFragDataLocationEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetUniformuivEXT))"\n" -"\t"STUB_ASM_CODE("896")"\n" +"\t"STUB_ASM_CODE("916")"\n" ".globl "GLAPI_PREFIX_STR(GetUniformuiv)"\n" ".set "GLAPI_PREFIX_STR(GetUniformuiv)", "GLAPI_PREFIX_STR(GetUniformuivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribIivEXT))"\n" -"\t"STUB_ASM_CODE("897")"\n" +"\t"STUB_ASM_CODE("917")"\n" ".globl "GLAPI_PREFIX_STR(GetVertexAttribIiv)"\n" ".set "GLAPI_PREFIX_STR(GetVertexAttribIiv)", "GLAPI_PREFIX_STR(GetVertexAttribIivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribIuivEXT))"\n" -"\t"STUB_ASM_CODE("898")"\n" +"\t"STUB_ASM_CODE("918")"\n" ".globl "GLAPI_PREFIX_STR(GetVertexAttribIuiv)"\n" ".set "GLAPI_PREFIX_STR(GetVertexAttribIuiv)", "GLAPI_PREFIX_STR(GetVertexAttribIuivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform1uiEXT))"\n" -"\t"STUB_ASM_CODE("899")"\n" +"\t"STUB_ASM_CODE("919")"\n" ".globl "GLAPI_PREFIX_STR(Uniform1ui)"\n" ".set "GLAPI_PREFIX_STR(Uniform1ui)", "GLAPI_PREFIX_STR(Uniform1uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform1uivEXT))"\n" -"\t"STUB_ASM_CODE("900")"\n" +"\t"STUB_ASM_CODE("920")"\n" ".globl "GLAPI_PREFIX_STR(Uniform1uiv)"\n" ".set "GLAPI_PREFIX_STR(Uniform1uiv)", "GLAPI_PREFIX_STR(Uniform1uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform2uiEXT))"\n" -"\t"STUB_ASM_CODE("901")"\n" +"\t"STUB_ASM_CODE("921")"\n" ".globl "GLAPI_PREFIX_STR(Uniform2ui)"\n" ".set "GLAPI_PREFIX_STR(Uniform2ui)", "GLAPI_PREFIX_STR(Uniform2uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform2uivEXT))"\n" -"\t"STUB_ASM_CODE("902")"\n" +"\t"STUB_ASM_CODE("922")"\n" ".globl "GLAPI_PREFIX_STR(Uniform2uiv)"\n" ".set "GLAPI_PREFIX_STR(Uniform2uiv)", "GLAPI_PREFIX_STR(Uniform2uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform3uiEXT))"\n" -"\t"STUB_ASM_CODE("903")"\n" +"\t"STUB_ASM_CODE("923")"\n" ".globl "GLAPI_PREFIX_STR(Uniform3ui)"\n" ".set "GLAPI_PREFIX_STR(Uniform3ui)", "GLAPI_PREFIX_STR(Uniform3uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform3uivEXT))"\n" -"\t"STUB_ASM_CODE("904")"\n" +"\t"STUB_ASM_CODE("924")"\n" ".globl "GLAPI_PREFIX_STR(Uniform3uiv)"\n" ".set "GLAPI_PREFIX_STR(Uniform3uiv)", "GLAPI_PREFIX_STR(Uniform3uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform4uiEXT))"\n" -"\t"STUB_ASM_CODE("905")"\n" +"\t"STUB_ASM_CODE("925")"\n" ".globl "GLAPI_PREFIX_STR(Uniform4ui)"\n" ".set "GLAPI_PREFIX_STR(Uniform4ui)", "GLAPI_PREFIX_STR(Uniform4uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform4uivEXT))"\n" -"\t"STUB_ASM_CODE("906")"\n" +"\t"STUB_ASM_CODE("926")"\n" ".globl "GLAPI_PREFIX_STR(Uniform4uiv)"\n" ".set "GLAPI_PREFIX_STR(Uniform4uiv)", "GLAPI_PREFIX_STR(Uniform4uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI1iEXT))"\n" -"\t"STUB_ASM_CODE("907")"\n" +"\t"STUB_ASM_CODE("927")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI1i)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI1i)", "GLAPI_PREFIX_STR(VertexAttribI1iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI1ivEXT))"\n" -"\t"STUB_ASM_CODE("908")"\n" +"\t"STUB_ASM_CODE("928")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI1iv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI1iv)", "GLAPI_PREFIX_STR(VertexAttribI1ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI1uiEXT))"\n" -"\t"STUB_ASM_CODE("909")"\n" +"\t"STUB_ASM_CODE("929")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI1ui)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI1ui)", "GLAPI_PREFIX_STR(VertexAttribI1uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI1uivEXT))"\n" -"\t"STUB_ASM_CODE("910")"\n" +"\t"STUB_ASM_CODE("930")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI1uiv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI1uiv)", "GLAPI_PREFIX_STR(VertexAttribI1uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI2iEXT))"\n" -"\t"STUB_ASM_CODE("911")"\n" +"\t"STUB_ASM_CODE("931")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI2i)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI2i)", "GLAPI_PREFIX_STR(VertexAttribI2iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI2ivEXT))"\n" -"\t"STUB_ASM_CODE("912")"\n" +"\t"STUB_ASM_CODE("932")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI2iv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI2iv)", "GLAPI_PREFIX_STR(VertexAttribI2ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI2uiEXT))"\n" -"\t"STUB_ASM_CODE("913")"\n" +"\t"STUB_ASM_CODE("933")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI2ui)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI2ui)", "GLAPI_PREFIX_STR(VertexAttribI2uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI2uivEXT))"\n" -"\t"STUB_ASM_CODE("914")"\n" +"\t"STUB_ASM_CODE("934")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI2uiv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI2uiv)", "GLAPI_PREFIX_STR(VertexAttribI2uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI3iEXT))"\n" -"\t"STUB_ASM_CODE("915")"\n" +"\t"STUB_ASM_CODE("935")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI3i)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI3i)", "GLAPI_PREFIX_STR(VertexAttribI3iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI3ivEXT))"\n" -"\t"STUB_ASM_CODE("916")"\n" +"\t"STUB_ASM_CODE("936")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI3iv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI3iv)", "GLAPI_PREFIX_STR(VertexAttribI3ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI3uiEXT))"\n" -"\t"STUB_ASM_CODE("917")"\n" +"\t"STUB_ASM_CODE("937")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI3ui)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI3ui)", "GLAPI_PREFIX_STR(VertexAttribI3uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI3uivEXT))"\n" -"\t"STUB_ASM_CODE("918")"\n" +"\t"STUB_ASM_CODE("938")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI3uiv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI3uiv)", "GLAPI_PREFIX_STR(VertexAttribI3uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4bvEXT))"\n" -"\t"STUB_ASM_CODE("919")"\n" +"\t"STUB_ASM_CODE("939")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4bv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4bv)", "GLAPI_PREFIX_STR(VertexAttribI4bvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4iEXT))"\n" -"\t"STUB_ASM_CODE("920")"\n" +"\t"STUB_ASM_CODE("940")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4i)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4i)", "GLAPI_PREFIX_STR(VertexAttribI4iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4ivEXT))"\n" -"\t"STUB_ASM_CODE("921")"\n" +"\t"STUB_ASM_CODE("941")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4iv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4iv)", "GLAPI_PREFIX_STR(VertexAttribI4ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4svEXT))"\n" -"\t"STUB_ASM_CODE("922")"\n" +"\t"STUB_ASM_CODE("942")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4sv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4sv)", "GLAPI_PREFIX_STR(VertexAttribI4svEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4ubvEXT))"\n" -"\t"STUB_ASM_CODE("923")"\n" +"\t"STUB_ASM_CODE("943")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4ubv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4ubv)", "GLAPI_PREFIX_STR(VertexAttribI4ubvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4uiEXT))"\n" -"\t"STUB_ASM_CODE("924")"\n" +"\t"STUB_ASM_CODE("944")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4ui)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4ui)", "GLAPI_PREFIX_STR(VertexAttribI4uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4uivEXT))"\n" -"\t"STUB_ASM_CODE("925")"\n" +"\t"STUB_ASM_CODE("945")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4uiv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4uiv)", "GLAPI_PREFIX_STR(VertexAttribI4uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4usvEXT))"\n" -"\t"STUB_ASM_CODE("926")"\n" +"\t"STUB_ASM_CODE("946")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4usv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4usv)", "GLAPI_PREFIX_STR(VertexAttribI4usvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribIPointerEXT))"\n" -"\t"STUB_ASM_CODE("927")"\n" +"\t"STUB_ASM_CODE("947")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribIPointer)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribIPointer)", "GLAPI_PREFIX_STR(VertexAttribIPointerEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferTextureLayerEXT))"\n" -"\t"STUB_ASM_CODE("928")"\n" +"\t"STUB_ASM_CODE("948")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferTextureLayer)"\n" ".set "GLAPI_PREFIX_STR(FramebufferTextureLayer)", "GLAPI_PREFIX_STR(FramebufferTextureLayerEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorMaskIndexedEXT))"\n" -"\t"STUB_ASM_CODE("929")"\n" +"\t"STUB_ASM_CODE("949")"\n" ".globl "GLAPI_PREFIX_STR(ColorMaski)"\n" ".set "GLAPI_PREFIX_STR(ColorMaski)", "GLAPI_PREFIX_STR(ColorMaskIndexedEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DisableIndexedEXT))"\n" -"\t"STUB_ASM_CODE("930")"\n" +"\t"STUB_ASM_CODE("950")"\n" ".globl "GLAPI_PREFIX_STR(Disablei)"\n" ".set "GLAPI_PREFIX_STR(Disablei)", "GLAPI_PREFIX_STR(DisableIndexedEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EnableIndexedEXT))"\n" -"\t"STUB_ASM_CODE("931")"\n" +"\t"STUB_ASM_CODE("951")"\n" ".globl "GLAPI_PREFIX_STR(Enablei)"\n" ".set "GLAPI_PREFIX_STR(Enablei)", "GLAPI_PREFIX_STR(EnableIndexedEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetBooleanIndexedvEXT))"\n" -"\t"STUB_ASM_CODE("932")"\n" +"\t"STUB_ASM_CODE("952")"\n" ".globl "GLAPI_PREFIX_STR(GetBooleani_v)"\n" ".set "GLAPI_PREFIX_STR(GetBooleani_v)", "GLAPI_PREFIX_STR(GetBooleanIndexedvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetIntegerIndexedvEXT))"\n" -"\t"STUB_ASM_CODE("933")"\n" +"\t"STUB_ASM_CODE("953")"\n" ".globl "GLAPI_PREFIX_STR(GetIntegeri_v)"\n" ".set "GLAPI_PREFIX_STR(GetIntegeri_v)", "GLAPI_PREFIX_STR(GetIntegerIndexedvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsEnabledIndexedEXT))"\n" -"\t"STUB_ASM_CODE("934")"\n" +"\t"STUB_ASM_CODE("954")"\n" ".globl "GLAPI_PREFIX_STR(IsEnabledi)"\n" ".set "GLAPI_PREFIX_STR(IsEnabledi)", "GLAPI_PREFIX_STR(IsEnabledIndexedEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClearColorIiEXT))"\n" -"\t"STUB_ASM_CODE("935")"\n" +"\t"STUB_ASM_CODE("955")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClearColorIuiEXT))"\n" -"\t"STUB_ASM_CODE("936")"\n" +"\t"STUB_ASM_CODE("956")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexParameterIivEXT))"\n" -"\t"STUB_ASM_CODE("937")"\n" +"\t"STUB_ASM_CODE("957")"\n" ".globl "GLAPI_PREFIX_STR(GetTexParameterIiv)"\n" ".set "GLAPI_PREFIX_STR(GetTexParameterIiv)", "GLAPI_PREFIX_STR(GetTexParameterIivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexParameterIuivEXT))"\n" -"\t"STUB_ASM_CODE("938")"\n" +"\t"STUB_ASM_CODE("958")"\n" ".globl "GLAPI_PREFIX_STR(GetTexParameterIuiv)"\n" ".set "GLAPI_PREFIX_STR(GetTexParameterIuiv)", "GLAPI_PREFIX_STR(GetTexParameterIuivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexParameterIivEXT))"\n" -"\t"STUB_ASM_CODE("939")"\n" +"\t"STUB_ASM_CODE("959")"\n" ".globl "GLAPI_PREFIX_STR(TexParameterIiv)"\n" ".set "GLAPI_PREFIX_STR(TexParameterIiv)", "GLAPI_PREFIX_STR(TexParameterIivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexParameterIuivEXT))"\n" -"\t"STUB_ASM_CODE("940")"\n" +"\t"STUB_ASM_CODE("960")"\n" ".globl "GLAPI_PREFIX_STR(TexParameterIuiv)"\n" ".set "GLAPI_PREFIX_STR(TexParameterIuiv)", "GLAPI_PREFIX_STR(TexParameterIuivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BeginConditionalRenderNV))"\n" -"\t"STUB_ASM_CODE("941")"\n" +"\t"STUB_ASM_CODE("961")"\n" ".globl "GLAPI_PREFIX_STR(BeginConditionalRender)"\n" ".set "GLAPI_PREFIX_STR(BeginConditionalRender)", "GLAPI_PREFIX_STR(BeginConditionalRenderNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EndConditionalRenderNV))"\n" -"\t"STUB_ASM_CODE("942")"\n" +"\t"STUB_ASM_CODE("962")"\n" ".globl "GLAPI_PREFIX_STR(EndConditionalRender)"\n" ".set "GLAPI_PREFIX_STR(EndConditionalRender)", "GLAPI_PREFIX_STR(EndConditionalRenderNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BeginTransformFeedbackEXT))"\n" -"\t"STUB_ASM_CODE("943")"\n" +"\t"STUB_ASM_CODE("963")"\n" ".globl "GLAPI_PREFIX_STR(BeginTransformFeedback)"\n" ".set "GLAPI_PREFIX_STR(BeginTransformFeedback)", "GLAPI_PREFIX_STR(BeginTransformFeedbackEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindBufferBaseEXT))"\n" -"\t"STUB_ASM_CODE("944")"\n" +"\t"STUB_ASM_CODE("964")"\n" ".globl "GLAPI_PREFIX_STR(BindBufferBase)"\n" ".set "GLAPI_PREFIX_STR(BindBufferBase)", "GLAPI_PREFIX_STR(BindBufferBaseEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindBufferOffsetEXT))"\n" -"\t"STUB_ASM_CODE("945")"\n" +"\t"STUB_ASM_CODE("965")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindBufferRangeEXT))"\n" -"\t"STUB_ASM_CODE("946")"\n" +"\t"STUB_ASM_CODE("966")"\n" ".globl "GLAPI_PREFIX_STR(BindBufferRange)"\n" ".set "GLAPI_PREFIX_STR(BindBufferRange)", "GLAPI_PREFIX_STR(BindBufferRangeEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EndTransformFeedbackEXT))"\n" -"\t"STUB_ASM_CODE("947")"\n" +"\t"STUB_ASM_CODE("967")"\n" ".globl "GLAPI_PREFIX_STR(EndTransformFeedback)"\n" ".set "GLAPI_PREFIX_STR(EndTransformFeedback)", "GLAPI_PREFIX_STR(EndTransformFeedbackEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTransformFeedbackVaryingEXT))"\n" -"\t"STUB_ASM_CODE("948")"\n" +"\t"STUB_ASM_CODE("968")"\n" ".globl "GLAPI_PREFIX_STR(GetTransformFeedbackVarying)"\n" ".set "GLAPI_PREFIX_STR(GetTransformFeedbackVarying)", "GLAPI_PREFIX_STR(GetTransformFeedbackVaryingEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TransformFeedbackVaryingsEXT))"\n" -"\t"STUB_ASM_CODE("949")"\n" +"\t"STUB_ASM_CODE("969")"\n" ".globl "GLAPI_PREFIX_STR(TransformFeedbackVaryings)"\n" ".set "GLAPI_PREFIX_STR(TransformFeedbackVaryings)", "GLAPI_PREFIX_STR(TransformFeedbackVaryingsEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProvokingVertexEXT))"\n" -"\t"STUB_ASM_CODE("950")"\n" +"\t"STUB_ASM_CODE("970")"\n" ".globl "GLAPI_PREFIX_STR(ProvokingVertex)"\n" ".set "GLAPI_PREFIX_STR(ProvokingVertex)", "GLAPI_PREFIX_STR(ProvokingVertexEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetObjectParameterivAPPLE))"\n" -"\t"STUB_ASM_CODE("953")"\n" +"\t"STUB_ASM_CODE("973")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ObjectPurgeableAPPLE))"\n" -"\t"STUB_ASM_CODE("954")"\n" +"\t"STUB_ASM_CODE("974")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ObjectUnpurgeableAPPLE))"\n" -"\t"STUB_ASM_CODE("955")"\n" +"\t"STUB_ASM_CODE("975")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ActiveProgramEXT))"\n" -"\t"STUB_ASM_CODE("956")"\n" +"\t"STUB_ASM_CODE("976")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CreateShaderProgramEXT))"\n" -"\t"STUB_ASM_CODE("957")"\n" +"\t"STUB_ASM_CODE("977")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(UseShaderProgramEXT))"\n" -"\t"STUB_ASM_CODE("958")"\n" +"\t"STUB_ASM_CODE("978")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TextureBarrierNV))"\n" -"\t"STUB_ASM_CODE("959")"\n" +"\t"STUB_ASM_CODE("979")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EGLImageTargetRenderbufferStorageOES))"\n" -"\t"STUB_ASM_CODE("965")"\n" +"\t"STUB_ASM_CODE("985")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EGLImageTargetTexture2DOES))"\n" -"\t"STUB_ASM_CODE("966")"\n" +"\t"STUB_ASM_CODE("986")"\n" ); #undef MAPI_TMP_STUB_ASM_GCC_NO_HIDDEN diff --git a/src/mapi/glapi/glapi_sparc.S b/src/mapi/glapi/glapi_sparc.S index f62e1258b4e..cb11a8b2381 100644 --- a/src/mapi/glapi/glapi_sparc.S +++ b/src/mapi/glapi/glapi_sparc.S @@ -821,323 +821,343 @@ gl_dispatch_functions_start: GL_STUB(glGetShaderPrecisionFormat, 623) GL_STUB(glReleaseShaderCompiler, 624) GL_STUB(glShaderBinary, 625) - GL_STUB(glPolygonOffsetEXT, 626) - GL_STUB(gl_dispatch_stub_627, 627) - HIDDEN(gl_dispatch_stub_627) - GL_STUB(gl_dispatch_stub_628, 628) - HIDDEN(gl_dispatch_stub_628) - GL_STUB(gl_dispatch_stub_629, 629) - HIDDEN(gl_dispatch_stub_629) - GL_STUB(gl_dispatch_stub_630, 630) - HIDDEN(gl_dispatch_stub_630) - GL_STUB(gl_dispatch_stub_631, 631) - HIDDEN(gl_dispatch_stub_631) - GL_STUB(gl_dispatch_stub_632, 632) - HIDDEN(gl_dispatch_stub_632) - GL_STUB(gl_dispatch_stub_633, 633) - HIDDEN(gl_dispatch_stub_633) - GL_STUB(gl_dispatch_stub_634, 634) - HIDDEN(gl_dispatch_stub_634) - GL_STUB(glColorPointerEXT, 635) - GL_STUB(glEdgeFlagPointerEXT, 636) - GL_STUB(glIndexPointerEXT, 637) - GL_STUB(glNormalPointerEXT, 638) - GL_STUB(glTexCoordPointerEXT, 639) - GL_STUB(glVertexPointerEXT, 640) - GL_STUB(glPointParameterfEXT, 641) - GL_STUB(glPointParameterfvEXT, 642) - GL_STUB(glLockArraysEXT, 643) - GL_STUB(glUnlockArraysEXT, 644) - GL_STUB(glSecondaryColor3bEXT, 645) - GL_STUB(glSecondaryColor3bvEXT, 646) - GL_STUB(glSecondaryColor3dEXT, 647) - GL_STUB(glSecondaryColor3dvEXT, 648) - GL_STUB(glSecondaryColor3fEXT, 649) - GL_STUB(glSecondaryColor3fvEXT, 650) - GL_STUB(glSecondaryColor3iEXT, 651) - GL_STUB(glSecondaryColor3ivEXT, 652) - GL_STUB(glSecondaryColor3sEXT, 653) - GL_STUB(glSecondaryColor3svEXT, 654) - GL_STUB(glSecondaryColor3ubEXT, 655) - GL_STUB(glSecondaryColor3ubvEXT, 656) - GL_STUB(glSecondaryColor3uiEXT, 657) - GL_STUB(glSecondaryColor3uivEXT, 658) - GL_STUB(glSecondaryColor3usEXT, 659) - GL_STUB(glSecondaryColor3usvEXT, 660) - GL_STUB(glSecondaryColorPointerEXT, 661) - GL_STUB(glMultiDrawArraysEXT, 662) - GL_STUB(glMultiDrawElementsEXT, 663) - GL_STUB(glFogCoordPointerEXT, 664) - GL_STUB(glFogCoorddEXT, 665) - GL_STUB(glFogCoorddvEXT, 666) - GL_STUB(glFogCoordfEXT, 667) - GL_STUB(glFogCoordfvEXT, 668) - GL_STUB(gl_dispatch_stub_669, 669) - HIDDEN(gl_dispatch_stub_669) - GL_STUB(glBlendFuncSeparateEXT, 670) - GL_STUB(glFlushVertexArrayRangeNV, 671) - GL_STUB(glVertexArrayRangeNV, 672) - GL_STUB(glCombinerInputNV, 673) - GL_STUB(glCombinerOutputNV, 674) - GL_STUB(glCombinerParameterfNV, 675) - GL_STUB(glCombinerParameterfvNV, 676) - GL_STUB(glCombinerParameteriNV, 677) - GL_STUB(glCombinerParameterivNV, 678) - GL_STUB(glFinalCombinerInputNV, 679) - GL_STUB(glGetCombinerInputParameterfvNV, 680) - GL_STUB(glGetCombinerInputParameterivNV, 681) - GL_STUB(glGetCombinerOutputParameterfvNV, 682) - GL_STUB(glGetCombinerOutputParameterivNV, 683) - GL_STUB(glGetFinalCombinerInputParameterfvNV, 684) - GL_STUB(glGetFinalCombinerInputParameterivNV, 685) - GL_STUB(glResizeBuffersMESA, 686) - GL_STUB(glWindowPos2dMESA, 687) - GL_STUB(glWindowPos2dvMESA, 688) - GL_STUB(glWindowPos2fMESA, 689) - GL_STUB(glWindowPos2fvMESA, 690) - GL_STUB(glWindowPos2iMESA, 691) - GL_STUB(glWindowPos2ivMESA, 692) - GL_STUB(glWindowPos2sMESA, 693) - GL_STUB(glWindowPos2svMESA, 694) - GL_STUB(glWindowPos3dMESA, 695) - GL_STUB(glWindowPos3dvMESA, 696) - GL_STUB(glWindowPos3fMESA, 697) - GL_STUB(glWindowPos3fvMESA, 698) - GL_STUB(glWindowPos3iMESA, 699) - GL_STUB(glWindowPos3ivMESA, 700) - GL_STUB(glWindowPos3sMESA, 701) - GL_STUB(glWindowPos3svMESA, 702) - GL_STUB(glWindowPos4dMESA, 703) - GL_STUB(glWindowPos4dvMESA, 704) - GL_STUB(glWindowPos4fMESA, 705) - GL_STUB(glWindowPos4fvMESA, 706) - GL_STUB(glWindowPos4iMESA, 707) - GL_STUB(glWindowPos4ivMESA, 708) - GL_STUB(glWindowPos4sMESA, 709) - GL_STUB(glWindowPos4svMESA, 710) - GL_STUB(gl_dispatch_stub_711, 711) - HIDDEN(gl_dispatch_stub_711) - GL_STUB(gl_dispatch_stub_712, 712) - HIDDEN(gl_dispatch_stub_712) - GL_STUB(gl_dispatch_stub_713, 713) - HIDDEN(gl_dispatch_stub_713) - GL_STUB(gl_dispatch_stub_714, 714) - HIDDEN(gl_dispatch_stub_714) - GL_STUB(gl_dispatch_stub_715, 715) - HIDDEN(gl_dispatch_stub_715) - GL_STUB(gl_dispatch_stub_716, 716) - HIDDEN(gl_dispatch_stub_716) - GL_STUB(gl_dispatch_stub_717, 717) - HIDDEN(gl_dispatch_stub_717) - GL_STUB(gl_dispatch_stub_718, 718) - HIDDEN(gl_dispatch_stub_718) - GL_STUB(gl_dispatch_stub_719, 719) - HIDDEN(gl_dispatch_stub_719) - GL_STUB(glAreProgramsResidentNV, 720) - GL_STUB(glBindProgramNV, 721) - GL_STUB(glDeleteProgramsNV, 722) - GL_STUB(glExecuteProgramNV, 723) - GL_STUB(glGenProgramsNV, 724) - GL_STUB(glGetProgramParameterdvNV, 725) - GL_STUB(glGetProgramParameterfvNV, 726) - GL_STUB(glGetProgramStringNV, 727) - GL_STUB(glGetProgramivNV, 728) - GL_STUB(glGetTrackMatrixivNV, 729) - GL_STUB(glGetVertexAttribPointervNV, 730) - GL_STUB(glGetVertexAttribdvNV, 731) - GL_STUB(glGetVertexAttribfvNV, 732) - GL_STUB(glGetVertexAttribivNV, 733) - GL_STUB(glIsProgramNV, 734) - GL_STUB(glLoadProgramNV, 735) - GL_STUB(glProgramParameters4dvNV, 736) - GL_STUB(glProgramParameters4fvNV, 737) - GL_STUB(glRequestResidentProgramsNV, 738) - GL_STUB(glTrackMatrixNV, 739) - GL_STUB(glVertexAttrib1dNV, 740) - GL_STUB(glVertexAttrib1dvNV, 741) - GL_STUB(glVertexAttrib1fNV, 742) - GL_STUB(glVertexAttrib1fvNV, 743) - GL_STUB(glVertexAttrib1sNV, 744) - GL_STUB(glVertexAttrib1svNV, 745) - GL_STUB(glVertexAttrib2dNV, 746) - GL_STUB(glVertexAttrib2dvNV, 747) - GL_STUB(glVertexAttrib2fNV, 748) - GL_STUB(glVertexAttrib2fvNV, 749) - GL_STUB(glVertexAttrib2sNV, 750) - GL_STUB(glVertexAttrib2svNV, 751) - GL_STUB(glVertexAttrib3dNV, 752) - GL_STUB(glVertexAttrib3dvNV, 753) - GL_STUB(glVertexAttrib3fNV, 754) - GL_STUB(glVertexAttrib3fvNV, 755) - GL_STUB(glVertexAttrib3sNV, 756) - GL_STUB(glVertexAttrib3svNV, 757) - GL_STUB(glVertexAttrib4dNV, 758) - GL_STUB(glVertexAttrib4dvNV, 759) - GL_STUB(glVertexAttrib4fNV, 760) - GL_STUB(glVertexAttrib4fvNV, 761) - GL_STUB(glVertexAttrib4sNV, 762) - GL_STUB(glVertexAttrib4svNV, 763) - GL_STUB(glVertexAttrib4ubNV, 764) - GL_STUB(glVertexAttrib4ubvNV, 765) - GL_STUB(glVertexAttribPointerNV, 766) - GL_STUB(glVertexAttribs1dvNV, 767) - GL_STUB(glVertexAttribs1fvNV, 768) - GL_STUB(glVertexAttribs1svNV, 769) - GL_STUB(glVertexAttribs2dvNV, 770) - GL_STUB(glVertexAttribs2fvNV, 771) - GL_STUB(glVertexAttribs2svNV, 772) - GL_STUB(glVertexAttribs3dvNV, 773) - GL_STUB(glVertexAttribs3fvNV, 774) - GL_STUB(glVertexAttribs3svNV, 775) - GL_STUB(glVertexAttribs4dvNV, 776) - GL_STUB(glVertexAttribs4fvNV, 777) - GL_STUB(glVertexAttribs4svNV, 778) - GL_STUB(glVertexAttribs4ubvNV, 779) - GL_STUB(glGetTexBumpParameterfvATI, 780) - GL_STUB(glGetTexBumpParameterivATI, 781) - GL_STUB(glTexBumpParameterfvATI, 782) - GL_STUB(glTexBumpParameterivATI, 783) - GL_STUB(glAlphaFragmentOp1ATI, 784) - GL_STUB(glAlphaFragmentOp2ATI, 785) - GL_STUB(glAlphaFragmentOp3ATI, 786) - GL_STUB(glBeginFragmentShaderATI, 787) - GL_STUB(glBindFragmentShaderATI, 788) - GL_STUB(glColorFragmentOp1ATI, 789) - GL_STUB(glColorFragmentOp2ATI, 790) - GL_STUB(glColorFragmentOp3ATI, 791) - GL_STUB(glDeleteFragmentShaderATI, 792) - GL_STUB(glEndFragmentShaderATI, 793) - GL_STUB(glGenFragmentShadersATI, 794) - GL_STUB(glPassTexCoordATI, 795) - GL_STUB(glSampleMapATI, 796) - GL_STUB(glSetFragmentShaderConstantATI, 797) - GL_STUB(glPointParameteriNV, 798) - GL_STUB(glPointParameterivNV, 799) - GL_STUB(gl_dispatch_stub_800, 800) - HIDDEN(gl_dispatch_stub_800) - GL_STUB(gl_dispatch_stub_801, 801) - HIDDEN(gl_dispatch_stub_801) - GL_STUB(gl_dispatch_stub_802, 802) - HIDDEN(gl_dispatch_stub_802) - GL_STUB(gl_dispatch_stub_803, 803) - HIDDEN(gl_dispatch_stub_803) - GL_STUB(gl_dispatch_stub_804, 804) - HIDDEN(gl_dispatch_stub_804) - GL_STUB(glGetProgramNamedParameterdvNV, 805) - GL_STUB(glGetProgramNamedParameterfvNV, 806) - GL_STUB(glProgramNamedParameter4dNV, 807) - GL_STUB(glProgramNamedParameter4dvNV, 808) - GL_STUB(glProgramNamedParameter4fNV, 809) - GL_STUB(glProgramNamedParameter4fvNV, 810) - GL_STUB(glPrimitiveRestartIndexNV, 811) - GL_STUB(glPrimitiveRestartNV, 812) - GL_STUB(gl_dispatch_stub_813, 813) - HIDDEN(gl_dispatch_stub_813) - GL_STUB(gl_dispatch_stub_814, 814) - HIDDEN(gl_dispatch_stub_814) - GL_STUB(glBindFramebufferEXT, 815) - GL_STUB(glBindRenderbufferEXT, 816) - GL_STUB(glCheckFramebufferStatusEXT, 817) - GL_STUB(glDeleteFramebuffersEXT, 818) - GL_STUB(glDeleteRenderbuffersEXT, 819) - GL_STUB(glFramebufferRenderbufferEXT, 820) - GL_STUB(glFramebufferTexture1DEXT, 821) - GL_STUB(glFramebufferTexture2DEXT, 822) - GL_STUB(glFramebufferTexture3DEXT, 823) - GL_STUB(glGenFramebuffersEXT, 824) - GL_STUB(glGenRenderbuffersEXT, 825) - GL_STUB(glGenerateMipmapEXT, 826) - GL_STUB(glGetFramebufferAttachmentParameterivEXT, 827) - GL_STUB(glGetRenderbufferParameterivEXT, 828) - GL_STUB(glIsFramebufferEXT, 829) - GL_STUB(glIsRenderbufferEXT, 830) - GL_STUB(glRenderbufferStorageEXT, 831) - GL_STUB(gl_dispatch_stub_832, 832) - HIDDEN(gl_dispatch_stub_832) + GL_STUB(glGetGraphicsResetStatusARB, 626) + GL_STUB(glGetnColorTableARB, 627) + GL_STUB(glGetnCompressedTexImageARB, 628) + GL_STUB(glGetnConvolutionFilterARB, 629) + GL_STUB(glGetnHistogramARB, 630) + GL_STUB(glGetnMapdvARB, 631) + GL_STUB(glGetnMapfvARB, 632) + GL_STUB(glGetnMapivARB, 633) + GL_STUB(glGetnMinmaxARB, 634) + GL_STUB(glGetnPixelMapfvARB, 635) + GL_STUB(glGetnPixelMapuivARB, 636) + GL_STUB(glGetnPixelMapusvARB, 637) + GL_STUB(glGetnPolygonStippleARB, 638) + GL_STUB(glGetnSeparableFilterARB, 639) + GL_STUB(glGetnTexImageARB, 640) + GL_STUB(glGetnUniformdvARB, 641) + GL_STUB(glGetnUniformfvARB, 642) + GL_STUB(glGetnUniformivARB, 643) + GL_STUB(glGetnUniformuivARB, 644) + GL_STUB(glReadnPixelsARB, 645) + GL_STUB(glPolygonOffsetEXT, 646) + GL_STUB(gl_dispatch_stub_647, 647) + HIDDEN(gl_dispatch_stub_647) + GL_STUB(gl_dispatch_stub_648, 648) + HIDDEN(gl_dispatch_stub_648) + GL_STUB(gl_dispatch_stub_649, 649) + HIDDEN(gl_dispatch_stub_649) + GL_STUB(gl_dispatch_stub_650, 650) + HIDDEN(gl_dispatch_stub_650) + GL_STUB(gl_dispatch_stub_651, 651) + HIDDEN(gl_dispatch_stub_651) + GL_STUB(gl_dispatch_stub_652, 652) + HIDDEN(gl_dispatch_stub_652) + GL_STUB(gl_dispatch_stub_653, 653) + HIDDEN(gl_dispatch_stub_653) + GL_STUB(gl_dispatch_stub_654, 654) + HIDDEN(gl_dispatch_stub_654) + GL_STUB(glColorPointerEXT, 655) + GL_STUB(glEdgeFlagPointerEXT, 656) + GL_STUB(glIndexPointerEXT, 657) + GL_STUB(glNormalPointerEXT, 658) + GL_STUB(glTexCoordPointerEXT, 659) + GL_STUB(glVertexPointerEXT, 660) + GL_STUB(glPointParameterfEXT, 661) + GL_STUB(glPointParameterfvEXT, 662) + GL_STUB(glLockArraysEXT, 663) + GL_STUB(glUnlockArraysEXT, 664) + GL_STUB(glSecondaryColor3bEXT, 665) + GL_STUB(glSecondaryColor3bvEXT, 666) + GL_STUB(glSecondaryColor3dEXT, 667) + GL_STUB(glSecondaryColor3dvEXT, 668) + GL_STUB(glSecondaryColor3fEXT, 669) + GL_STUB(glSecondaryColor3fvEXT, 670) + GL_STUB(glSecondaryColor3iEXT, 671) + GL_STUB(glSecondaryColor3ivEXT, 672) + GL_STUB(glSecondaryColor3sEXT, 673) + GL_STUB(glSecondaryColor3svEXT, 674) + GL_STUB(glSecondaryColor3ubEXT, 675) + GL_STUB(glSecondaryColor3ubvEXT, 676) + GL_STUB(glSecondaryColor3uiEXT, 677) + GL_STUB(glSecondaryColor3uivEXT, 678) + GL_STUB(glSecondaryColor3usEXT, 679) + GL_STUB(glSecondaryColor3usvEXT, 680) + GL_STUB(glSecondaryColorPointerEXT, 681) + GL_STUB(glMultiDrawArraysEXT, 682) + GL_STUB(glMultiDrawElementsEXT, 683) + GL_STUB(glFogCoordPointerEXT, 684) + GL_STUB(glFogCoorddEXT, 685) + GL_STUB(glFogCoorddvEXT, 686) + GL_STUB(glFogCoordfEXT, 687) + GL_STUB(glFogCoordfvEXT, 688) + GL_STUB(gl_dispatch_stub_689, 689) + HIDDEN(gl_dispatch_stub_689) + GL_STUB(glBlendFuncSeparateEXT, 690) + GL_STUB(glFlushVertexArrayRangeNV, 691) + GL_STUB(glVertexArrayRangeNV, 692) + GL_STUB(glCombinerInputNV, 693) + GL_STUB(glCombinerOutputNV, 694) + GL_STUB(glCombinerParameterfNV, 695) + GL_STUB(glCombinerParameterfvNV, 696) + GL_STUB(glCombinerParameteriNV, 697) + GL_STUB(glCombinerParameterivNV, 698) + GL_STUB(glFinalCombinerInputNV, 699) + GL_STUB(glGetCombinerInputParameterfvNV, 700) + GL_STUB(glGetCombinerInputParameterivNV, 701) + GL_STUB(glGetCombinerOutputParameterfvNV, 702) + GL_STUB(glGetCombinerOutputParameterivNV, 703) + GL_STUB(glGetFinalCombinerInputParameterfvNV, 704) + GL_STUB(glGetFinalCombinerInputParameterivNV, 705) + GL_STUB(glResizeBuffersMESA, 706) + GL_STUB(glWindowPos2dMESA, 707) + GL_STUB(glWindowPos2dvMESA, 708) + GL_STUB(glWindowPos2fMESA, 709) + GL_STUB(glWindowPos2fvMESA, 710) + GL_STUB(glWindowPos2iMESA, 711) + GL_STUB(glWindowPos2ivMESA, 712) + GL_STUB(glWindowPos2sMESA, 713) + GL_STUB(glWindowPos2svMESA, 714) + GL_STUB(glWindowPos3dMESA, 715) + GL_STUB(glWindowPos3dvMESA, 716) + GL_STUB(glWindowPos3fMESA, 717) + GL_STUB(glWindowPos3fvMESA, 718) + GL_STUB(glWindowPos3iMESA, 719) + GL_STUB(glWindowPos3ivMESA, 720) + GL_STUB(glWindowPos3sMESA, 721) + GL_STUB(glWindowPos3svMESA, 722) + GL_STUB(glWindowPos4dMESA, 723) + GL_STUB(glWindowPos4dvMESA, 724) + GL_STUB(glWindowPos4fMESA, 725) + GL_STUB(glWindowPos4fvMESA, 726) + GL_STUB(glWindowPos4iMESA, 727) + GL_STUB(glWindowPos4ivMESA, 728) + GL_STUB(glWindowPos4sMESA, 729) + GL_STUB(glWindowPos4svMESA, 730) + GL_STUB(gl_dispatch_stub_731, 731) + HIDDEN(gl_dispatch_stub_731) + GL_STUB(gl_dispatch_stub_732, 732) + HIDDEN(gl_dispatch_stub_732) + GL_STUB(gl_dispatch_stub_733, 733) + HIDDEN(gl_dispatch_stub_733) + GL_STUB(gl_dispatch_stub_734, 734) + HIDDEN(gl_dispatch_stub_734) + GL_STUB(gl_dispatch_stub_735, 735) + HIDDEN(gl_dispatch_stub_735) + GL_STUB(gl_dispatch_stub_736, 736) + HIDDEN(gl_dispatch_stub_736) + GL_STUB(gl_dispatch_stub_737, 737) + HIDDEN(gl_dispatch_stub_737) + GL_STUB(gl_dispatch_stub_738, 738) + HIDDEN(gl_dispatch_stub_738) + GL_STUB(gl_dispatch_stub_739, 739) + HIDDEN(gl_dispatch_stub_739) + GL_STUB(glAreProgramsResidentNV, 740) + GL_STUB(glBindProgramNV, 741) + GL_STUB(glDeleteProgramsNV, 742) + GL_STUB(glExecuteProgramNV, 743) + GL_STUB(glGenProgramsNV, 744) + GL_STUB(glGetProgramParameterdvNV, 745) + GL_STUB(glGetProgramParameterfvNV, 746) + GL_STUB(glGetProgramStringNV, 747) + GL_STUB(glGetProgramivNV, 748) + GL_STUB(glGetTrackMatrixivNV, 749) + GL_STUB(glGetVertexAttribPointervNV, 750) + GL_STUB(glGetVertexAttribdvNV, 751) + GL_STUB(glGetVertexAttribfvNV, 752) + GL_STUB(glGetVertexAttribivNV, 753) + GL_STUB(glIsProgramNV, 754) + GL_STUB(glLoadProgramNV, 755) + GL_STUB(glProgramParameters4dvNV, 756) + GL_STUB(glProgramParameters4fvNV, 757) + GL_STUB(glRequestResidentProgramsNV, 758) + GL_STUB(glTrackMatrixNV, 759) + GL_STUB(glVertexAttrib1dNV, 760) + GL_STUB(glVertexAttrib1dvNV, 761) + GL_STUB(glVertexAttrib1fNV, 762) + GL_STUB(glVertexAttrib1fvNV, 763) + GL_STUB(glVertexAttrib1sNV, 764) + GL_STUB(glVertexAttrib1svNV, 765) + GL_STUB(glVertexAttrib2dNV, 766) + GL_STUB(glVertexAttrib2dvNV, 767) + GL_STUB(glVertexAttrib2fNV, 768) + GL_STUB(glVertexAttrib2fvNV, 769) + GL_STUB(glVertexAttrib2sNV, 770) + GL_STUB(glVertexAttrib2svNV, 771) + GL_STUB(glVertexAttrib3dNV, 772) + GL_STUB(glVertexAttrib3dvNV, 773) + GL_STUB(glVertexAttrib3fNV, 774) + GL_STUB(glVertexAttrib3fvNV, 775) + GL_STUB(glVertexAttrib3sNV, 776) + GL_STUB(glVertexAttrib3svNV, 777) + GL_STUB(glVertexAttrib4dNV, 778) + GL_STUB(glVertexAttrib4dvNV, 779) + GL_STUB(glVertexAttrib4fNV, 780) + GL_STUB(glVertexAttrib4fvNV, 781) + GL_STUB(glVertexAttrib4sNV, 782) + GL_STUB(glVertexAttrib4svNV, 783) + GL_STUB(glVertexAttrib4ubNV, 784) + GL_STUB(glVertexAttrib4ubvNV, 785) + GL_STUB(glVertexAttribPointerNV, 786) + GL_STUB(glVertexAttribs1dvNV, 787) + GL_STUB(glVertexAttribs1fvNV, 788) + GL_STUB(glVertexAttribs1svNV, 789) + GL_STUB(glVertexAttribs2dvNV, 790) + GL_STUB(glVertexAttribs2fvNV, 791) + GL_STUB(glVertexAttribs2svNV, 792) + GL_STUB(glVertexAttribs3dvNV, 793) + GL_STUB(glVertexAttribs3fvNV, 794) + GL_STUB(glVertexAttribs3svNV, 795) + GL_STUB(glVertexAttribs4dvNV, 796) + GL_STUB(glVertexAttribs4fvNV, 797) + GL_STUB(glVertexAttribs4svNV, 798) + GL_STUB(glVertexAttribs4ubvNV, 799) + GL_STUB(glGetTexBumpParameterfvATI, 800) + GL_STUB(glGetTexBumpParameterivATI, 801) + GL_STUB(glTexBumpParameterfvATI, 802) + GL_STUB(glTexBumpParameterivATI, 803) + GL_STUB(glAlphaFragmentOp1ATI, 804) + GL_STUB(glAlphaFragmentOp2ATI, 805) + GL_STUB(glAlphaFragmentOp3ATI, 806) + GL_STUB(glBeginFragmentShaderATI, 807) + GL_STUB(glBindFragmentShaderATI, 808) + GL_STUB(glColorFragmentOp1ATI, 809) + GL_STUB(glColorFragmentOp2ATI, 810) + GL_STUB(glColorFragmentOp3ATI, 811) + GL_STUB(glDeleteFragmentShaderATI, 812) + GL_STUB(glEndFragmentShaderATI, 813) + GL_STUB(glGenFragmentShadersATI, 814) + GL_STUB(glPassTexCoordATI, 815) + GL_STUB(glSampleMapATI, 816) + GL_STUB(glSetFragmentShaderConstantATI, 817) + GL_STUB(glPointParameteriNV, 818) + GL_STUB(glPointParameterivNV, 819) + GL_STUB(gl_dispatch_stub_820, 820) + HIDDEN(gl_dispatch_stub_820) + GL_STUB(gl_dispatch_stub_821, 821) + HIDDEN(gl_dispatch_stub_821) + GL_STUB(gl_dispatch_stub_822, 822) + HIDDEN(gl_dispatch_stub_822) + GL_STUB(gl_dispatch_stub_823, 823) + HIDDEN(gl_dispatch_stub_823) + GL_STUB(gl_dispatch_stub_824, 824) + HIDDEN(gl_dispatch_stub_824) + GL_STUB(glGetProgramNamedParameterdvNV, 825) + GL_STUB(glGetProgramNamedParameterfvNV, 826) + GL_STUB(glProgramNamedParameter4dNV, 827) + GL_STUB(glProgramNamedParameter4dvNV, 828) + GL_STUB(glProgramNamedParameter4fNV, 829) + GL_STUB(glProgramNamedParameter4fvNV, 830) + GL_STUB(glPrimitiveRestartIndexNV, 831) + GL_STUB(glPrimitiveRestartNV, 832) GL_STUB(gl_dispatch_stub_833, 833) HIDDEN(gl_dispatch_stub_833) GL_STUB(gl_dispatch_stub_834, 834) HIDDEN(gl_dispatch_stub_834) - GL_STUB(glBindFragDataLocationEXT, 835) - GL_STUB(glGetFragDataLocationEXT, 836) - GL_STUB(glGetUniformuivEXT, 837) - GL_STUB(glGetVertexAttribIivEXT, 838) - GL_STUB(glGetVertexAttribIuivEXT, 839) - GL_STUB(glUniform1uiEXT, 840) - GL_STUB(glUniform1uivEXT, 841) - GL_STUB(glUniform2uiEXT, 842) - GL_STUB(glUniform2uivEXT, 843) - GL_STUB(glUniform3uiEXT, 844) - GL_STUB(glUniform3uivEXT, 845) - GL_STUB(glUniform4uiEXT, 846) - GL_STUB(glUniform4uivEXT, 847) - GL_STUB(glVertexAttribI1iEXT, 848) - GL_STUB(glVertexAttribI1ivEXT, 849) - GL_STUB(glVertexAttribI1uiEXT, 850) - GL_STUB(glVertexAttribI1uivEXT, 851) - GL_STUB(glVertexAttribI2iEXT, 852) - GL_STUB(glVertexAttribI2ivEXT, 853) - GL_STUB(glVertexAttribI2uiEXT, 854) - GL_STUB(glVertexAttribI2uivEXT, 855) - GL_STUB(glVertexAttribI3iEXT, 856) - GL_STUB(glVertexAttribI3ivEXT, 857) - GL_STUB(glVertexAttribI3uiEXT, 858) - GL_STUB(glVertexAttribI3uivEXT, 859) - GL_STUB(glVertexAttribI4bvEXT, 860) - GL_STUB(glVertexAttribI4iEXT, 861) - GL_STUB(glVertexAttribI4ivEXT, 862) - GL_STUB(glVertexAttribI4svEXT, 863) - GL_STUB(glVertexAttribI4ubvEXT, 864) - GL_STUB(glVertexAttribI4uiEXT, 865) - GL_STUB(glVertexAttribI4uivEXT, 866) - GL_STUB(glVertexAttribI4usvEXT, 867) - GL_STUB(glVertexAttribIPointerEXT, 868) - GL_STUB(glFramebufferTextureLayerEXT, 869) - GL_STUB(glColorMaskIndexedEXT, 870) - GL_STUB(glDisableIndexedEXT, 871) - GL_STUB(glEnableIndexedEXT, 872) - GL_STUB(glGetBooleanIndexedvEXT, 873) - GL_STUB(glGetIntegerIndexedvEXT, 874) - GL_STUB(glIsEnabledIndexedEXT, 875) - GL_STUB(glClearColorIiEXT, 876) - GL_STUB(glClearColorIuiEXT, 877) - GL_STUB(glGetTexParameterIivEXT, 878) - GL_STUB(glGetTexParameterIuivEXT, 879) - GL_STUB(glTexParameterIivEXT, 880) - GL_STUB(glTexParameterIuivEXT, 881) - GL_STUB(glBeginConditionalRenderNV, 882) - GL_STUB(glEndConditionalRenderNV, 883) - GL_STUB(glBeginTransformFeedbackEXT, 884) - GL_STUB(glBindBufferBaseEXT, 885) - GL_STUB(glBindBufferOffsetEXT, 886) - GL_STUB(glBindBufferRangeEXT, 887) - GL_STUB(glEndTransformFeedbackEXT, 888) - GL_STUB(glGetTransformFeedbackVaryingEXT, 889) - GL_STUB(glTransformFeedbackVaryingsEXT, 890) - GL_STUB(glProvokingVertexEXT, 891) - GL_STUB(gl_dispatch_stub_892, 892) - HIDDEN(gl_dispatch_stub_892) - GL_STUB(gl_dispatch_stub_893, 893) - HIDDEN(gl_dispatch_stub_893) - GL_STUB(glGetObjectParameterivAPPLE, 894) - GL_STUB(glObjectPurgeableAPPLE, 895) - GL_STUB(glObjectUnpurgeableAPPLE, 896) - GL_STUB(glActiveProgramEXT, 897) - GL_STUB(glCreateShaderProgramEXT, 898) - GL_STUB(glUseShaderProgramEXT, 899) - GL_STUB(glTextureBarrierNV, 900) - GL_STUB(gl_dispatch_stub_901, 901) - HIDDEN(gl_dispatch_stub_901) - GL_STUB(gl_dispatch_stub_902, 902) - HIDDEN(gl_dispatch_stub_902) - GL_STUB(gl_dispatch_stub_903, 903) - HIDDEN(gl_dispatch_stub_903) - GL_STUB(gl_dispatch_stub_904, 904) - HIDDEN(gl_dispatch_stub_904) - GL_STUB(gl_dispatch_stub_905, 905) - HIDDEN(gl_dispatch_stub_905) - GL_STUB(glEGLImageTargetRenderbufferStorageOES, 906) - GL_STUB(glEGLImageTargetTexture2DOES, 907) + GL_STUB(glBindFramebufferEXT, 835) + GL_STUB(glBindRenderbufferEXT, 836) + GL_STUB(glCheckFramebufferStatusEXT, 837) + GL_STUB(glDeleteFramebuffersEXT, 838) + GL_STUB(glDeleteRenderbuffersEXT, 839) + GL_STUB(glFramebufferRenderbufferEXT, 840) + GL_STUB(glFramebufferTexture1DEXT, 841) + GL_STUB(glFramebufferTexture2DEXT, 842) + GL_STUB(glFramebufferTexture3DEXT, 843) + GL_STUB(glGenFramebuffersEXT, 844) + GL_STUB(glGenRenderbuffersEXT, 845) + GL_STUB(glGenerateMipmapEXT, 846) + GL_STUB(glGetFramebufferAttachmentParameterivEXT, 847) + GL_STUB(glGetRenderbufferParameterivEXT, 848) + GL_STUB(glIsFramebufferEXT, 849) + GL_STUB(glIsRenderbufferEXT, 850) + GL_STUB(glRenderbufferStorageEXT, 851) + GL_STUB(gl_dispatch_stub_852, 852) + HIDDEN(gl_dispatch_stub_852) + GL_STUB(gl_dispatch_stub_853, 853) + HIDDEN(gl_dispatch_stub_853) + GL_STUB(gl_dispatch_stub_854, 854) + HIDDEN(gl_dispatch_stub_854) + GL_STUB(glBindFragDataLocationEXT, 855) + GL_STUB(glGetFragDataLocationEXT, 856) + GL_STUB(glGetUniformuivEXT, 857) + GL_STUB(glGetVertexAttribIivEXT, 858) + GL_STUB(glGetVertexAttribIuivEXT, 859) + GL_STUB(glUniform1uiEXT, 860) + GL_STUB(glUniform1uivEXT, 861) + GL_STUB(glUniform2uiEXT, 862) + GL_STUB(glUniform2uivEXT, 863) + GL_STUB(glUniform3uiEXT, 864) + GL_STUB(glUniform3uivEXT, 865) + GL_STUB(glUniform4uiEXT, 866) + GL_STUB(glUniform4uivEXT, 867) + GL_STUB(glVertexAttribI1iEXT, 868) + GL_STUB(glVertexAttribI1ivEXT, 869) + GL_STUB(glVertexAttribI1uiEXT, 870) + GL_STUB(glVertexAttribI1uivEXT, 871) + GL_STUB(glVertexAttribI2iEXT, 872) + GL_STUB(glVertexAttribI2ivEXT, 873) + GL_STUB(glVertexAttribI2uiEXT, 874) + GL_STUB(glVertexAttribI2uivEXT, 875) + GL_STUB(glVertexAttribI3iEXT, 876) + GL_STUB(glVertexAttribI3ivEXT, 877) + GL_STUB(glVertexAttribI3uiEXT, 878) + GL_STUB(glVertexAttribI3uivEXT, 879) + GL_STUB(glVertexAttribI4bvEXT, 880) + GL_STUB(glVertexAttribI4iEXT, 881) + GL_STUB(glVertexAttribI4ivEXT, 882) + GL_STUB(glVertexAttribI4svEXT, 883) + GL_STUB(glVertexAttribI4ubvEXT, 884) + GL_STUB(glVertexAttribI4uiEXT, 885) + GL_STUB(glVertexAttribI4uivEXT, 886) + GL_STUB(glVertexAttribI4usvEXT, 887) + GL_STUB(glVertexAttribIPointerEXT, 888) + GL_STUB(glFramebufferTextureLayerEXT, 889) + GL_STUB(glColorMaskIndexedEXT, 890) + GL_STUB(glDisableIndexedEXT, 891) + GL_STUB(glEnableIndexedEXT, 892) + GL_STUB(glGetBooleanIndexedvEXT, 893) + GL_STUB(glGetIntegerIndexedvEXT, 894) + GL_STUB(glIsEnabledIndexedEXT, 895) + GL_STUB(glClearColorIiEXT, 896) + GL_STUB(glClearColorIuiEXT, 897) + GL_STUB(glGetTexParameterIivEXT, 898) + GL_STUB(glGetTexParameterIuivEXT, 899) + GL_STUB(glTexParameterIivEXT, 900) + GL_STUB(glTexParameterIuivEXT, 901) + GL_STUB(glBeginConditionalRenderNV, 902) + GL_STUB(glEndConditionalRenderNV, 903) + GL_STUB(glBeginTransformFeedbackEXT, 904) + GL_STUB(glBindBufferBaseEXT, 905) + GL_STUB(glBindBufferOffsetEXT, 906) + GL_STUB(glBindBufferRangeEXT, 907) + GL_STUB(glEndTransformFeedbackEXT, 908) + GL_STUB(glGetTransformFeedbackVaryingEXT, 909) + GL_STUB(glTransformFeedbackVaryingsEXT, 910) + GL_STUB(glProvokingVertexEXT, 911) + GL_STUB(gl_dispatch_stub_912, 912) + HIDDEN(gl_dispatch_stub_912) + GL_STUB(gl_dispatch_stub_913, 913) + HIDDEN(gl_dispatch_stub_913) + GL_STUB(glGetObjectParameterivAPPLE, 914) + GL_STUB(glObjectPurgeableAPPLE, 915) + GL_STUB(glObjectUnpurgeableAPPLE, 916) + GL_STUB(glActiveProgramEXT, 917) + GL_STUB(glCreateShaderProgramEXT, 918) + GL_STUB(glUseShaderProgramEXT, 919) + GL_STUB(glTextureBarrierNV, 920) + GL_STUB(gl_dispatch_stub_921, 921) + HIDDEN(gl_dispatch_stub_921) + GL_STUB(gl_dispatch_stub_922, 922) + HIDDEN(gl_dispatch_stub_922) + GL_STUB(gl_dispatch_stub_923, 923) + HIDDEN(gl_dispatch_stub_923) + GL_STUB(gl_dispatch_stub_924, 924) + HIDDEN(gl_dispatch_stub_924) + GL_STUB(gl_dispatch_stub_925, 925) + HIDDEN(gl_dispatch_stub_925) + GL_STUB(glEGLImageTargetRenderbufferStorageOES, 926) + GL_STUB(glEGLImageTargetTexture2DOES, 927) GL_STUB_ALIAS(glArrayElementEXT, glArrayElement) GL_STUB_ALIAS(glBindTextureEXT, glBindTexture) GL_STUB_ALIAS(glDrawArraysEXT, glDrawArrays) @@ -1386,6 +1406,10 @@ gl_dispatch_functions_start: GL_STUB_ALIAS(glDrawElementsInstancedEXT, glDrawElementsInstancedARB) GL_STUB_ALIAS(glDrawElementsInstanced, glDrawElementsInstancedARB) GL_STUB_ALIAS(glRenderbufferStorageMultisampleEXT, glRenderbufferStorageMultisample) + GL_STUB_ALIAS(glBlendEquationSeparateIndexedAMD, glBlendEquationSeparateiARB) + GL_STUB_ALIAS(glBlendEquationIndexedAMD, glBlendEquationiARB) + GL_STUB_ALIAS(glBlendFuncSeparateIndexedAMD, glBlendFuncSeparateiARB) + GL_STUB_ALIAS(glBlendFuncIndexedAMD, glBlendFunciARB) GL_STUB_ALIAS(glPointParameterf, glPointParameterfEXT) GL_STUB_ALIAS(glPointParameterfARB, glPointParameterfEXT) GL_STUB_ALIAS(glPointParameterfSGIS, glPointParameterfEXT) diff --git a/src/mapi/glapi/glapi_x86-64.S b/src/mapi/glapi/glapi_x86-64.S index 9b81f52d763..ec7a2c5cca6 100644 --- a/src/mapi/glapi/glapi_x86-64.S +++ b/src/mapi/glapi/glapi_x86-64.S @@ -23594,21 +23594,17 @@ GL_PREFIX(ShaderBinary): .size GL_PREFIX(ShaderBinary), .-GL_PREFIX(ShaderBinary) .p2align 4,,15 - .globl GL_PREFIX(PolygonOffsetEXT) - .type GL_PREFIX(PolygonOffsetEXT), @function -GL_PREFIX(PolygonOffsetEXT): + .globl GL_PREFIX(GetGraphicsResetStatusARB) + .type GL_PREFIX(GetGraphicsResetStatusARB), @function +GL_PREFIX(GetGraphicsResetStatusARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 5008(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) - subq $24, %rsp - movq %xmm0, (%rsp) - movq %xmm1, 8(%rsp) + pushq %rbp call _x86_64_get_dispatch@PLT - movq 8(%rsp), %xmm1 - movq (%rsp), %xmm0 - addq $24, %rsp + popq %rbp movq 5008(%rax), %r11 jmp *%r11 #else @@ -23618,23 +23614,18 @@ GL_PREFIX(PolygonOffsetEXT): movq 5008(%rax), %r11 jmp *%r11 1: - subq $24, %rsp - movq %xmm0, (%rsp) - movq %xmm1, 8(%rsp) + pushq %rbp call _glapi_get_dispatch - movq 8(%rsp), %xmm1 - movq (%rsp), %xmm0 - addq $24, %rsp + popq %rbp movq 5008(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(PolygonOffsetEXT), .-GL_PREFIX(PolygonOffsetEXT) + .size GL_PREFIX(GetGraphicsResetStatusARB), .-GL_PREFIX(GetGraphicsResetStatusARB) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_627) - .type GL_PREFIX(_dispatch_stub_627), @function - HIDDEN(GL_PREFIX(_dispatch_stub_627)) -GL_PREFIX(_dispatch_stub_627): + .globl GL_PREFIX(GetnColorTableARB) + .type GL_PREFIX(GetnColorTableARB), @function +GL_PREFIX(GetnColorTableARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 5016(%rax), %r11 @@ -23642,9 +23633,13 @@ GL_PREFIX(_dispatch_stub_627): #elif defined(PTHREADS) pushq %rdi pushq %rsi - pushq %rbp + pushq %rdx + pushq %rcx + pushq %r8 call _x86_64_get_dispatch@PLT - popq %rbp + popq %r8 + popq %rcx + popq %rdx popq %rsi popq %rdi movq 5016(%rax), %r11 @@ -23658,21 +23653,24 @@ GL_PREFIX(_dispatch_stub_627): 1: pushq %rdi pushq %rsi - pushq %rbp + pushq %rdx + pushq %rcx + pushq %r8 call _glapi_get_dispatch - popq %rbp + popq %r8 + popq %rcx + popq %rdx popq %rsi popq %rdi movq 5016(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_627), .-GL_PREFIX(_dispatch_stub_627) + .size GL_PREFIX(GetnColorTableARB), .-GL_PREFIX(GetnColorTableARB) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_628) - .type GL_PREFIX(_dispatch_stub_628), @function - HIDDEN(GL_PREFIX(_dispatch_stub_628)) -GL_PREFIX(_dispatch_stub_628): + .globl GL_PREFIX(GetnCompressedTexImageARB) + .type GL_PREFIX(GetnCompressedTexImageARB), @function +GL_PREFIX(GetnCompressedTexImageARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 5024(%rax), %r11 @@ -23680,9 +23678,13 @@ GL_PREFIX(_dispatch_stub_628): #elif defined(PTHREADS) pushq %rdi pushq %rsi + pushq %rdx + pushq %rcx pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp + popq %rcx + popq %rdx popq %rsi popq %rdi movq 5024(%rax), %r11 @@ -23696,33 +23698,40 @@ GL_PREFIX(_dispatch_stub_628): 1: pushq %rdi pushq %rsi + pushq %rdx + pushq %rcx pushq %rbp call _glapi_get_dispatch popq %rbp + popq %rcx + popq %rdx popq %rsi popq %rdi movq 5024(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_628), .-GL_PREFIX(_dispatch_stub_628) + .size GL_PREFIX(GetnCompressedTexImageARB), .-GL_PREFIX(GetnCompressedTexImageARB) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_629) - .type GL_PREFIX(_dispatch_stub_629), @function - HIDDEN(GL_PREFIX(_dispatch_stub_629)) -GL_PREFIX(_dispatch_stub_629): + .globl GL_PREFIX(GetnConvolutionFilterARB) + .type GL_PREFIX(GetnConvolutionFilterARB), @function +GL_PREFIX(GetnConvolutionFilterARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 5032(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) - subq $24, %rsp - movq %rdi, (%rsp) - movq %xmm0, 8(%rsp) + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %r8 call _x86_64_get_dispatch@PLT - movq 8(%rsp), %xmm0 - movq (%rsp), %rdi - addq $24, %rsp + popq %r8 + popq %rcx + popq %rdx + popq %rsi + popq %rdi movq 5032(%rax), %r11 jmp *%r11 #else @@ -23732,23 +23741,26 @@ GL_PREFIX(_dispatch_stub_629): movq 5032(%rax), %r11 jmp *%r11 1: - subq $24, %rsp - movq %rdi, (%rsp) - movq %xmm0, 8(%rsp) + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %r8 call _glapi_get_dispatch - movq 8(%rsp), %xmm0 - movq (%rsp), %rdi - addq $24, %rsp + popq %r8 + popq %rcx + popq %rdx + popq %rsi + popq %rdi movq 5032(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_629), .-GL_PREFIX(_dispatch_stub_629) + .size GL_PREFIX(GetnConvolutionFilterARB), .-GL_PREFIX(GetnConvolutionFilterARB) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_630) - .type GL_PREFIX(_dispatch_stub_630), @function - HIDDEN(GL_PREFIX(_dispatch_stub_630)) -GL_PREFIX(_dispatch_stub_630): + .globl GL_PREFIX(GetnHistogramARB) + .type GL_PREFIX(GetnHistogramARB), @function +GL_PREFIX(GetnHistogramARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 5040(%rax), %r11 @@ -23756,9 +23768,17 @@ GL_PREFIX(_dispatch_stub_630): #elif defined(PTHREADS) pushq %rdi pushq %rsi + pushq %rdx + pushq %rcx + pushq %r8 + pushq %r9 pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp + popq %r9 + popq %r8 + popq %rcx + popq %rdx popq %rsi popq %rdi movq 5040(%rax), %r11 @@ -23772,21 +23792,28 @@ GL_PREFIX(_dispatch_stub_630): 1: pushq %rdi pushq %rsi + pushq %rdx + pushq %rcx + pushq %r8 + pushq %r9 pushq %rbp call _glapi_get_dispatch popq %rbp + popq %r9 + popq %r8 + popq %rcx + popq %rdx popq %rsi popq %rdi movq 5040(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_630), .-GL_PREFIX(_dispatch_stub_630) + .size GL_PREFIX(GetnHistogramARB), .-GL_PREFIX(GetnHistogramARB) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_631) - .type GL_PREFIX(_dispatch_stub_631), @function - HIDDEN(GL_PREFIX(_dispatch_stub_631)) -GL_PREFIX(_dispatch_stub_631): + .globl GL_PREFIX(GetnMapdvARB) + .type GL_PREFIX(GetnMapdvARB), @function +GL_PREFIX(GetnMapdvARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 5048(%rax), %r11 @@ -23794,9 +23821,13 @@ GL_PREFIX(_dispatch_stub_631): #elif defined(PTHREADS) pushq %rdi pushq %rsi + pushq %rdx + pushq %rcx pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp + popq %rcx + popq %rdx popq %rsi popq %rdi movq 5048(%rax), %r11 @@ -23810,21 +23841,24 @@ GL_PREFIX(_dispatch_stub_631): 1: pushq %rdi pushq %rsi + pushq %rdx + pushq %rcx pushq %rbp call _glapi_get_dispatch popq %rbp + popq %rcx + popq %rdx popq %rsi popq %rdi movq 5048(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_631), .-GL_PREFIX(_dispatch_stub_631) + .size GL_PREFIX(GetnMapdvARB), .-GL_PREFIX(GetnMapdvARB) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_632) - .type GL_PREFIX(_dispatch_stub_632), @function - HIDDEN(GL_PREFIX(_dispatch_stub_632)) -GL_PREFIX(_dispatch_stub_632): + .globl GL_PREFIX(GetnMapfvARB) + .type GL_PREFIX(GetnMapfvARB), @function +GL_PREFIX(GetnMapfvARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 5056(%rax), %r11 @@ -23832,9 +23866,13 @@ GL_PREFIX(_dispatch_stub_632): #elif defined(PTHREADS) pushq %rdi pushq %rsi + pushq %rdx + pushq %rcx pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp + popq %rcx + popq %rdx popq %rsi popq %rdi movq 5056(%rax), %r11 @@ -23848,21 +23886,24 @@ GL_PREFIX(_dispatch_stub_632): 1: pushq %rdi pushq %rsi + pushq %rdx + pushq %rcx pushq %rbp call _glapi_get_dispatch popq %rbp + popq %rcx + popq %rdx popq %rsi popq %rdi movq 5056(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_632), .-GL_PREFIX(_dispatch_stub_632) + .size GL_PREFIX(GetnMapfvARB), .-GL_PREFIX(GetnMapfvARB) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_633) - .type GL_PREFIX(_dispatch_stub_633), @function - HIDDEN(GL_PREFIX(_dispatch_stub_633)) -GL_PREFIX(_dispatch_stub_633): + .globl GL_PREFIX(GetnMapivARB) + .type GL_PREFIX(GetnMapivARB), @function +GL_PREFIX(GetnMapivARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 5064(%rax), %r11 @@ -23870,9 +23911,13 @@ GL_PREFIX(_dispatch_stub_633): #elif defined(PTHREADS) pushq %rdi pushq %rsi + pushq %rdx + pushq %rcx pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp + popq %rcx + popq %rdx popq %rsi popq %rdi movq 5064(%rax), %r11 @@ -23886,28 +23931,43 @@ GL_PREFIX(_dispatch_stub_633): 1: pushq %rdi pushq %rsi + pushq %rdx + pushq %rcx pushq %rbp call _glapi_get_dispatch popq %rbp + popq %rcx + popq %rdx popq %rsi popq %rdi movq 5064(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_633), .-GL_PREFIX(_dispatch_stub_633) + .size GL_PREFIX(GetnMapivARB), .-GL_PREFIX(GetnMapivARB) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_634) - .type GL_PREFIX(_dispatch_stub_634), @function - HIDDEN(GL_PREFIX(_dispatch_stub_634)) -GL_PREFIX(_dispatch_stub_634): + .globl GL_PREFIX(GetnMinmaxARB) + .type GL_PREFIX(GetnMinmaxARB), @function +GL_PREFIX(GetnMinmaxARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 5072(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %r8 + pushq %r9 + pushq %rbp call _x86_64_get_dispatch@PLT + popq %rbp + popq %r9 + popq %r8 + popq %rcx + popq %rdx + popq %rsi popq %rdi movq 5072(%rax), %r11 jmp *%r11 @@ -23919,12 +23979,844 @@ GL_PREFIX(_dispatch_stub_634): jmp *%r11 1: pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %r8 + pushq %r9 + pushq %rbp call _glapi_get_dispatch + popq %rbp + popq %r9 + popq %r8 + popq %rcx + popq %rdx + popq %rsi popq %rdi movq 5072(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_634), .-GL_PREFIX(_dispatch_stub_634) + .size GL_PREFIX(GetnMinmaxARB), .-GL_PREFIX(GetnMinmaxARB) + + .p2align 4,,15 + .globl GL_PREFIX(GetnPixelMapfvARB) + .type GL_PREFIX(GetnPixelMapfvARB), @function +GL_PREFIX(GetnPixelMapfvARB): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5080(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + call _x86_64_get_dispatch@PLT + popq %rdx + popq %rsi + popq %rdi + movq 5080(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5080(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + call _glapi_get_dispatch + popq %rdx + popq %rsi + popq %rdi + movq 5080(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(GetnPixelMapfvARB), .-GL_PREFIX(GetnPixelMapfvARB) + + .p2align 4,,15 + .globl GL_PREFIX(GetnPixelMapuivARB) + .type GL_PREFIX(GetnPixelMapuivARB), @function +GL_PREFIX(GetnPixelMapuivARB): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5088(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + call _x86_64_get_dispatch@PLT + popq %rdx + popq %rsi + popq %rdi + movq 5088(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5088(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + call _glapi_get_dispatch + popq %rdx + popq %rsi + popq %rdi + movq 5088(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(GetnPixelMapuivARB), .-GL_PREFIX(GetnPixelMapuivARB) + + .p2align 4,,15 + .globl GL_PREFIX(GetnPixelMapusvARB) + .type GL_PREFIX(GetnPixelMapusvARB), @function +GL_PREFIX(GetnPixelMapusvARB): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5096(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + call _x86_64_get_dispatch@PLT + popq %rdx + popq %rsi + popq %rdi + movq 5096(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5096(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + call _glapi_get_dispatch + popq %rdx + popq %rsi + popq %rdi + movq 5096(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(GetnPixelMapusvARB), .-GL_PREFIX(GetnPixelMapusvARB) + + .p2align 4,,15 + .globl GL_PREFIX(GetnPolygonStippleARB) + .type GL_PREFIX(GetnPolygonStippleARB), @function +GL_PREFIX(GetnPolygonStippleARB): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5104(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi + popq %rdi + movq 5104(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5104(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rsi + popq %rdi + movq 5104(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(GetnPolygonStippleARB), .-GL_PREFIX(GetnPolygonStippleARB) + + .p2align 4,,15 + .globl GL_PREFIX(GetnSeparableFilterARB) + .type GL_PREFIX(GetnSeparableFilterARB), @function +GL_PREFIX(GetnSeparableFilterARB): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5112(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %r8 + pushq %r9 + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %r9 + popq %r8 + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 5112(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5112(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %r8 + pushq %r9 + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %r9 + popq %r8 + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 5112(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(GetnSeparableFilterARB), .-GL_PREFIX(GetnSeparableFilterARB) + + .p2align 4,,15 + .globl GL_PREFIX(GetnTexImageARB) + .type GL_PREFIX(GetnTexImageARB), @function +GL_PREFIX(GetnTexImageARB): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5120(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %r8 + pushq %r9 + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %r9 + popq %r8 + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 5120(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5120(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %r8 + pushq %r9 + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %r9 + popq %r8 + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 5120(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(GetnTexImageARB), .-GL_PREFIX(GetnTexImageARB) + + .p2align 4,,15 + .globl GL_PREFIX(GetnUniformdvARB) + .type GL_PREFIX(GetnUniformdvARB), @function +GL_PREFIX(GetnUniformdvARB): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5128(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 5128(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5128(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 5128(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(GetnUniformdvARB), .-GL_PREFIX(GetnUniformdvARB) + + .p2align 4,,15 + .globl GL_PREFIX(GetnUniformfvARB) + .type GL_PREFIX(GetnUniformfvARB), @function +GL_PREFIX(GetnUniformfvARB): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5136(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 5136(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5136(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 5136(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(GetnUniformfvARB), .-GL_PREFIX(GetnUniformfvARB) + + .p2align 4,,15 + .globl GL_PREFIX(GetnUniformivARB) + .type GL_PREFIX(GetnUniformivARB), @function +GL_PREFIX(GetnUniformivARB): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5144(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 5144(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5144(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 5144(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(GetnUniformivARB), .-GL_PREFIX(GetnUniformivARB) + + .p2align 4,,15 + .globl GL_PREFIX(GetnUniformuivARB) + .type GL_PREFIX(GetnUniformuivARB), @function +GL_PREFIX(GetnUniformuivARB): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5152(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 5152(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5152(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 5152(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(GetnUniformuivARB), .-GL_PREFIX(GetnUniformuivARB) + + .p2align 4,,15 + .globl GL_PREFIX(ReadnPixelsARB) + .type GL_PREFIX(ReadnPixelsARB), @function +GL_PREFIX(ReadnPixelsARB): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5160(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %r8 + pushq %r9 + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %r9 + popq %r8 + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 5160(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5160(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %r8 + pushq %r9 + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %r9 + popq %r8 + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 5160(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(ReadnPixelsARB), .-GL_PREFIX(ReadnPixelsARB) + + .p2align 4,,15 + .globl GL_PREFIX(PolygonOffsetEXT) + .type GL_PREFIX(PolygonOffsetEXT), @function +GL_PREFIX(PolygonOffsetEXT): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5168(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + subq $24, %rsp + movq %xmm0, (%rsp) + movq %xmm1, 8(%rsp) + call _x86_64_get_dispatch@PLT + movq 8(%rsp), %xmm1 + movq (%rsp), %xmm0 + addq $24, %rsp + movq 5168(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5168(%rax), %r11 + jmp *%r11 +1: + subq $24, %rsp + movq %xmm0, (%rsp) + movq %xmm1, 8(%rsp) + call _glapi_get_dispatch + movq 8(%rsp), %xmm1 + movq (%rsp), %xmm0 + addq $24, %rsp + movq 5168(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(PolygonOffsetEXT), .-GL_PREFIX(PolygonOffsetEXT) + + .p2align 4,,15 + .globl GL_PREFIX(_dispatch_stub_647) + .type GL_PREFIX(_dispatch_stub_647), @function + HIDDEN(GL_PREFIX(_dispatch_stub_647)) +GL_PREFIX(_dispatch_stub_647): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5176(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi + popq %rdi + movq 5176(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5176(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rsi + popq %rdi + movq 5176(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_647), .-GL_PREFIX(_dispatch_stub_647) + + .p2align 4,,15 + .globl GL_PREFIX(_dispatch_stub_648) + .type GL_PREFIX(_dispatch_stub_648), @function + HIDDEN(GL_PREFIX(_dispatch_stub_648)) +GL_PREFIX(_dispatch_stub_648): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5184(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi + popq %rdi + movq 5184(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5184(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rsi + popq %rdi + movq 5184(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_648), .-GL_PREFIX(_dispatch_stub_648) + + .p2align 4,,15 + .globl GL_PREFIX(_dispatch_stub_649) + .type GL_PREFIX(_dispatch_stub_649), @function + HIDDEN(GL_PREFIX(_dispatch_stub_649)) +GL_PREFIX(_dispatch_stub_649): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5192(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + subq $24, %rsp + movq %rdi, (%rsp) + movq %xmm0, 8(%rsp) + call _x86_64_get_dispatch@PLT + movq 8(%rsp), %xmm0 + movq (%rsp), %rdi + addq $24, %rsp + movq 5192(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5192(%rax), %r11 + jmp *%r11 +1: + subq $24, %rsp + movq %rdi, (%rsp) + movq %xmm0, 8(%rsp) + call _glapi_get_dispatch + movq 8(%rsp), %xmm0 + movq (%rsp), %rdi + addq $24, %rsp + movq 5192(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_649), .-GL_PREFIX(_dispatch_stub_649) + + .p2align 4,,15 + .globl GL_PREFIX(_dispatch_stub_650) + .type GL_PREFIX(_dispatch_stub_650), @function + HIDDEN(GL_PREFIX(_dispatch_stub_650)) +GL_PREFIX(_dispatch_stub_650): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5200(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi + popq %rdi + movq 5200(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5200(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rsi + popq %rdi + movq 5200(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_650), .-GL_PREFIX(_dispatch_stub_650) + + .p2align 4,,15 + .globl GL_PREFIX(_dispatch_stub_651) + .type GL_PREFIX(_dispatch_stub_651), @function + HIDDEN(GL_PREFIX(_dispatch_stub_651)) +GL_PREFIX(_dispatch_stub_651): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5208(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi + popq %rdi + movq 5208(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5208(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rsi + popq %rdi + movq 5208(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_651), .-GL_PREFIX(_dispatch_stub_651) + + .p2align 4,,15 + .globl GL_PREFIX(_dispatch_stub_652) + .type GL_PREFIX(_dispatch_stub_652), @function + HIDDEN(GL_PREFIX(_dispatch_stub_652)) +GL_PREFIX(_dispatch_stub_652): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5216(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi + popq %rdi + movq 5216(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5216(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rsi + popq %rdi + movq 5216(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_652), .-GL_PREFIX(_dispatch_stub_652) + + .p2align 4,,15 + .globl GL_PREFIX(_dispatch_stub_653) + .type GL_PREFIX(_dispatch_stub_653), @function + HIDDEN(GL_PREFIX(_dispatch_stub_653)) +GL_PREFIX(_dispatch_stub_653): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5224(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi + popq %rdi + movq 5224(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5224(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rsi + popq %rdi + movq 5224(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_653), .-GL_PREFIX(_dispatch_stub_653) + + .p2align 4,,15 + .globl GL_PREFIX(_dispatch_stub_654) + .type GL_PREFIX(_dispatch_stub_654), @function + HIDDEN(GL_PREFIX(_dispatch_stub_654)) +GL_PREFIX(_dispatch_stub_654): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5232(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + call _x86_64_get_dispatch@PLT + popq %rdi + movq 5232(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5232(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + call _glapi_get_dispatch + popq %rdi + movq 5232(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_654), .-GL_PREFIX(_dispatch_stub_654) .p2align 4,,15 .globl GL_PREFIX(ColorPointerEXT) @@ -23932,7 +24824,7 @@ GL_PREFIX(_dispatch_stub_634): GL_PREFIX(ColorPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5080(%rax), %r11 + movq 5240(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23946,13 +24838,13 @@ GL_PREFIX(ColorPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5080(%rax), %r11 + movq 5240(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5080(%rax), %r11 + movq 5240(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23966,7 +24858,7 @@ GL_PREFIX(ColorPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5080(%rax), %r11 + movq 5240(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorPointerEXT), .-GL_PREFIX(ColorPointerEXT) @@ -23977,7 +24869,7 @@ GL_PREFIX(ColorPointerEXT): GL_PREFIX(EdgeFlagPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5088(%rax), %r11 + movq 5248(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23987,13 +24879,13 @@ GL_PREFIX(EdgeFlagPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5088(%rax), %r11 + movq 5248(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5088(%rax), %r11 + movq 5248(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24003,7 +24895,7 @@ GL_PREFIX(EdgeFlagPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5088(%rax), %r11 + movq 5248(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EdgeFlagPointerEXT), .-GL_PREFIX(EdgeFlagPointerEXT) @@ -24014,7 +24906,7 @@ GL_PREFIX(EdgeFlagPointerEXT): GL_PREFIX(IndexPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5096(%rax), %r11 + movq 5256(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24028,13 +24920,13 @@ GL_PREFIX(IndexPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5096(%rax), %r11 + movq 5256(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5096(%rax), %r11 + movq 5256(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24048,7 +24940,7 @@ GL_PREFIX(IndexPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5096(%rax), %r11 + movq 5256(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IndexPointerEXT), .-GL_PREFIX(IndexPointerEXT) @@ -24059,7 +24951,7 @@ GL_PREFIX(IndexPointerEXT): GL_PREFIX(NormalPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5104(%rax), %r11 + movq 5264(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24073,13 +24965,13 @@ GL_PREFIX(NormalPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5104(%rax), %r11 + movq 5264(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5104(%rax), %r11 + movq 5264(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24093,7 +24985,7 @@ GL_PREFIX(NormalPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5104(%rax), %r11 + movq 5264(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(NormalPointerEXT), .-GL_PREFIX(NormalPointerEXT) @@ -24104,7 +24996,7 @@ GL_PREFIX(NormalPointerEXT): GL_PREFIX(TexCoordPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5112(%rax), %r11 + movq 5272(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24118,13 +25010,13 @@ GL_PREFIX(TexCoordPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5112(%rax), %r11 + movq 5272(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5112(%rax), %r11 + movq 5272(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24138,7 +25030,7 @@ GL_PREFIX(TexCoordPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5112(%rax), %r11 + movq 5272(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexCoordPointerEXT), .-GL_PREFIX(TexCoordPointerEXT) @@ -24149,7 +25041,7 @@ GL_PREFIX(TexCoordPointerEXT): GL_PREFIX(VertexPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5120(%rax), %r11 + movq 5280(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24163,13 +25055,13 @@ GL_PREFIX(VertexPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5120(%rax), %r11 + movq 5280(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5120(%rax), %r11 + movq 5280(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24183,7 +25075,7 @@ GL_PREFIX(VertexPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5120(%rax), %r11 + movq 5280(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexPointerEXT), .-GL_PREFIX(VertexPointerEXT) @@ -24194,7 +25086,7 @@ GL_PREFIX(VertexPointerEXT): GL_PREFIX(PointParameterfEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5128(%rax), %r11 + movq 5288(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -24204,13 +25096,13 @@ GL_PREFIX(PointParameterfEXT): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5128(%rax), %r11 + movq 5288(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5128(%rax), %r11 + movq 5288(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -24220,7 +25112,7 @@ GL_PREFIX(PointParameterfEXT): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5128(%rax), %r11 + movq 5288(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PointParameterfEXT), .-GL_PREFIX(PointParameterfEXT) @@ -24231,7 +25123,7 @@ GL_PREFIX(PointParameterfEXT): GL_PREFIX(PointParameterfvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5136(%rax), %r11 + movq 5296(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24241,13 +25133,13 @@ GL_PREFIX(PointParameterfvEXT): popq %rbp popq %rsi popq %rdi - movq 5136(%rax), %r11 + movq 5296(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5136(%rax), %r11 + movq 5296(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24257,7 +25149,7 @@ GL_PREFIX(PointParameterfvEXT): popq %rbp popq %rsi popq %rdi - movq 5136(%rax), %r11 + movq 5296(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PointParameterfvEXT), .-GL_PREFIX(PointParameterfvEXT) @@ -24268,7 +25160,7 @@ GL_PREFIX(PointParameterfvEXT): GL_PREFIX(LockArraysEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5144(%rax), %r11 + movq 5304(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24278,13 +25170,13 @@ GL_PREFIX(LockArraysEXT): popq %rbp popq %rsi popq %rdi - movq 5144(%rax), %r11 + movq 5304(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5144(%rax), %r11 + movq 5304(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24294,7 +25186,7 @@ GL_PREFIX(LockArraysEXT): popq %rbp popq %rsi popq %rdi - movq 5144(%rax), %r11 + movq 5304(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(LockArraysEXT), .-GL_PREFIX(LockArraysEXT) @@ -24305,25 +25197,25 @@ GL_PREFIX(LockArraysEXT): GL_PREFIX(UnlockArraysEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5152(%rax), %r11 + movq 5312(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 5152(%rax), %r11 + movq 5312(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5152(%rax), %r11 + movq 5312(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 5152(%rax), %r11 + movq 5312(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(UnlockArraysEXT), .-GL_PREFIX(UnlockArraysEXT) @@ -24334,7 +25226,7 @@ GL_PREFIX(UnlockArraysEXT): GL_PREFIX(SecondaryColor3bEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5160(%rax), %r11 + movq 5320(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24344,13 +25236,13 @@ GL_PREFIX(SecondaryColor3bEXT): popq %rdx popq %rsi popq %rdi - movq 5160(%rax), %r11 + movq 5320(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5160(%rax), %r11 + movq 5320(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24360,7 +25252,7 @@ GL_PREFIX(SecondaryColor3bEXT): popq %rdx popq %rsi popq %rdi - movq 5160(%rax), %r11 + movq 5320(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3bEXT), .-GL_PREFIX(SecondaryColor3bEXT) @@ -24371,25 +25263,25 @@ GL_PREFIX(SecondaryColor3bEXT): GL_PREFIX(SecondaryColor3bvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5168(%rax), %r11 + movq 5328(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5168(%rax), %r11 + movq 5328(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5168(%rax), %r11 + movq 5328(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5168(%rax), %r11 + movq 5328(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3bvEXT), .-GL_PREFIX(SecondaryColor3bvEXT) @@ -24400,7 +25292,7 @@ GL_PREFIX(SecondaryColor3bvEXT): GL_PREFIX(SecondaryColor3dEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5176(%rax), %r11 + movq 5336(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -24412,13 +25304,13 @@ GL_PREFIX(SecondaryColor3dEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5176(%rax), %r11 + movq 5336(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5176(%rax), %r11 + movq 5336(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -24430,7 +25322,7 @@ GL_PREFIX(SecondaryColor3dEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5176(%rax), %r11 + movq 5336(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3dEXT), .-GL_PREFIX(SecondaryColor3dEXT) @@ -24441,25 +25333,25 @@ GL_PREFIX(SecondaryColor3dEXT): GL_PREFIX(SecondaryColor3dvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5184(%rax), %r11 + movq 5344(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5184(%rax), %r11 + movq 5344(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5184(%rax), %r11 + movq 5344(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5184(%rax), %r11 + movq 5344(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3dvEXT), .-GL_PREFIX(SecondaryColor3dvEXT) @@ -24470,7 +25362,7 @@ GL_PREFIX(SecondaryColor3dvEXT): GL_PREFIX(SecondaryColor3fEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5192(%rax), %r11 + movq 5352(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -24482,13 +25374,13 @@ GL_PREFIX(SecondaryColor3fEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5192(%rax), %r11 + movq 5352(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5192(%rax), %r11 + movq 5352(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -24500,7 +25392,7 @@ GL_PREFIX(SecondaryColor3fEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5192(%rax), %r11 + movq 5352(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3fEXT), .-GL_PREFIX(SecondaryColor3fEXT) @@ -24511,25 +25403,25 @@ GL_PREFIX(SecondaryColor3fEXT): GL_PREFIX(SecondaryColor3fvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5200(%rax), %r11 + movq 5360(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5200(%rax), %r11 + movq 5360(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5200(%rax), %r11 + movq 5360(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5200(%rax), %r11 + movq 5360(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3fvEXT), .-GL_PREFIX(SecondaryColor3fvEXT) @@ -24540,7 +25432,7 @@ GL_PREFIX(SecondaryColor3fvEXT): GL_PREFIX(SecondaryColor3iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5208(%rax), %r11 + movq 5368(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24550,13 +25442,13 @@ GL_PREFIX(SecondaryColor3iEXT): popq %rdx popq %rsi popq %rdi - movq 5208(%rax), %r11 + movq 5368(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5208(%rax), %r11 + movq 5368(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24566,7 +25458,7 @@ GL_PREFIX(SecondaryColor3iEXT): popq %rdx popq %rsi popq %rdi - movq 5208(%rax), %r11 + movq 5368(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3iEXT), .-GL_PREFIX(SecondaryColor3iEXT) @@ -24577,25 +25469,25 @@ GL_PREFIX(SecondaryColor3iEXT): GL_PREFIX(SecondaryColor3ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5216(%rax), %r11 + movq 5376(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5216(%rax), %r11 + movq 5376(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5216(%rax), %r11 + movq 5376(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5216(%rax), %r11 + movq 5376(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3ivEXT), .-GL_PREFIX(SecondaryColor3ivEXT) @@ -24606,7 +25498,7 @@ GL_PREFIX(SecondaryColor3ivEXT): GL_PREFIX(SecondaryColor3sEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5224(%rax), %r11 + movq 5384(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24616,13 +25508,13 @@ GL_PREFIX(SecondaryColor3sEXT): popq %rdx popq %rsi popq %rdi - movq 5224(%rax), %r11 + movq 5384(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5224(%rax), %r11 + movq 5384(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24632,7 +25524,7 @@ GL_PREFIX(SecondaryColor3sEXT): popq %rdx popq %rsi popq %rdi - movq 5224(%rax), %r11 + movq 5384(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3sEXT), .-GL_PREFIX(SecondaryColor3sEXT) @@ -24643,25 +25535,25 @@ GL_PREFIX(SecondaryColor3sEXT): GL_PREFIX(SecondaryColor3svEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5232(%rax), %r11 + movq 5392(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5232(%rax), %r11 + movq 5392(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5232(%rax), %r11 + movq 5392(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5232(%rax), %r11 + movq 5392(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3svEXT), .-GL_PREFIX(SecondaryColor3svEXT) @@ -24672,7 +25564,7 @@ GL_PREFIX(SecondaryColor3svEXT): GL_PREFIX(SecondaryColor3ubEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5240(%rax), %r11 + movq 5400(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24682,13 +25574,13 @@ GL_PREFIX(SecondaryColor3ubEXT): popq %rdx popq %rsi popq %rdi - movq 5240(%rax), %r11 + movq 5400(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5240(%rax), %r11 + movq 5400(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24698,7 +25590,7 @@ GL_PREFIX(SecondaryColor3ubEXT): popq %rdx popq %rsi popq %rdi - movq 5240(%rax), %r11 + movq 5400(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3ubEXT), .-GL_PREFIX(SecondaryColor3ubEXT) @@ -24709,25 +25601,25 @@ GL_PREFIX(SecondaryColor3ubEXT): GL_PREFIX(SecondaryColor3ubvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5248(%rax), %r11 + movq 5408(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5248(%rax), %r11 + movq 5408(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5248(%rax), %r11 + movq 5408(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5248(%rax), %r11 + movq 5408(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3ubvEXT), .-GL_PREFIX(SecondaryColor3ubvEXT) @@ -24738,7 +25630,7 @@ GL_PREFIX(SecondaryColor3ubvEXT): GL_PREFIX(SecondaryColor3uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5256(%rax), %r11 + movq 5416(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24748,13 +25640,13 @@ GL_PREFIX(SecondaryColor3uiEXT): popq %rdx popq %rsi popq %rdi - movq 5256(%rax), %r11 + movq 5416(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5256(%rax), %r11 + movq 5416(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24764,7 +25656,7 @@ GL_PREFIX(SecondaryColor3uiEXT): popq %rdx popq %rsi popq %rdi - movq 5256(%rax), %r11 + movq 5416(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3uiEXT), .-GL_PREFIX(SecondaryColor3uiEXT) @@ -24775,25 +25667,25 @@ GL_PREFIX(SecondaryColor3uiEXT): GL_PREFIX(SecondaryColor3uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5264(%rax), %r11 + movq 5424(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5264(%rax), %r11 + movq 5424(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5264(%rax), %r11 + movq 5424(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5264(%rax), %r11 + movq 5424(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3uivEXT), .-GL_PREFIX(SecondaryColor3uivEXT) @@ -24804,7 +25696,7 @@ GL_PREFIX(SecondaryColor3uivEXT): GL_PREFIX(SecondaryColor3usEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5272(%rax), %r11 + movq 5432(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24814,13 +25706,13 @@ GL_PREFIX(SecondaryColor3usEXT): popq %rdx popq %rsi popq %rdi - movq 5272(%rax), %r11 + movq 5432(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5272(%rax), %r11 + movq 5432(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24830,7 +25722,7 @@ GL_PREFIX(SecondaryColor3usEXT): popq %rdx popq %rsi popq %rdi - movq 5272(%rax), %r11 + movq 5432(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3usEXT), .-GL_PREFIX(SecondaryColor3usEXT) @@ -24841,25 +25733,25 @@ GL_PREFIX(SecondaryColor3usEXT): GL_PREFIX(SecondaryColor3usvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5280(%rax), %r11 + movq 5440(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5280(%rax), %r11 + movq 5440(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5280(%rax), %r11 + movq 5440(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5280(%rax), %r11 + movq 5440(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3usvEXT), .-GL_PREFIX(SecondaryColor3usvEXT) @@ -24870,7 +25762,7 @@ GL_PREFIX(SecondaryColor3usvEXT): GL_PREFIX(SecondaryColorPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5288(%rax), %r11 + movq 5448(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24884,13 +25776,13 @@ GL_PREFIX(SecondaryColorPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5288(%rax), %r11 + movq 5448(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5288(%rax), %r11 + movq 5448(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24904,7 +25796,7 @@ GL_PREFIX(SecondaryColorPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5288(%rax), %r11 + movq 5448(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColorPointerEXT), .-GL_PREFIX(SecondaryColorPointerEXT) @@ -24915,7 +25807,7 @@ GL_PREFIX(SecondaryColorPointerEXT): GL_PREFIX(MultiDrawArraysEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5296(%rax), %r11 + movq 5456(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24929,13 +25821,13 @@ GL_PREFIX(MultiDrawArraysEXT): popq %rdx popq %rsi popq %rdi - movq 5296(%rax), %r11 + movq 5456(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5296(%rax), %r11 + movq 5456(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24949,7 +25841,7 @@ GL_PREFIX(MultiDrawArraysEXT): popq %rdx popq %rsi popq %rdi - movq 5296(%rax), %r11 + movq 5456(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(MultiDrawArraysEXT), .-GL_PREFIX(MultiDrawArraysEXT) @@ -24960,7 +25852,7 @@ GL_PREFIX(MultiDrawArraysEXT): GL_PREFIX(MultiDrawElementsEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5304(%rax), %r11 + movq 5464(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24974,13 +25866,13 @@ GL_PREFIX(MultiDrawElementsEXT): popq %rdx popq %rsi popq %rdi - movq 5304(%rax), %r11 + movq 5464(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5304(%rax), %r11 + movq 5464(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24994,7 +25886,7 @@ GL_PREFIX(MultiDrawElementsEXT): popq %rdx popq %rsi popq %rdi - movq 5304(%rax), %r11 + movq 5464(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(MultiDrawElementsEXT), .-GL_PREFIX(MultiDrawElementsEXT) @@ -25005,7 +25897,7 @@ GL_PREFIX(MultiDrawElementsEXT): GL_PREFIX(FogCoordPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5312(%rax), %r11 + movq 5472(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25015,13 +25907,13 @@ GL_PREFIX(FogCoordPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5312(%rax), %r11 + movq 5472(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5312(%rax), %r11 + movq 5472(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25031,7 +25923,7 @@ GL_PREFIX(FogCoordPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5312(%rax), %r11 + movq 5472(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoordPointerEXT), .-GL_PREFIX(FogCoordPointerEXT) @@ -25042,7 +25934,7 @@ GL_PREFIX(FogCoordPointerEXT): GL_PREFIX(FogCoorddEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5320(%rax), %r11 + movq 5480(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $8, %rsp @@ -25050,13 +25942,13 @@ GL_PREFIX(FogCoorddEXT): call _x86_64_get_dispatch@PLT movq (%rsp), %xmm0 addq $8, %rsp - movq 5320(%rax), %r11 + movq 5480(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5320(%rax), %r11 + movq 5480(%rax), %r11 jmp *%r11 1: subq $8, %rsp @@ -25064,7 +25956,7 @@ GL_PREFIX(FogCoorddEXT): call _glapi_get_dispatch movq (%rsp), %xmm0 addq $8, %rsp - movq 5320(%rax), %r11 + movq 5480(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoorddEXT), .-GL_PREFIX(FogCoorddEXT) @@ -25075,25 +25967,25 @@ GL_PREFIX(FogCoorddEXT): GL_PREFIX(FogCoorddvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5328(%rax), %r11 + movq 5488(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5328(%rax), %r11 + movq 5488(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5328(%rax), %r11 + movq 5488(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5328(%rax), %r11 + movq 5488(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoorddvEXT), .-GL_PREFIX(FogCoorddvEXT) @@ -25104,7 +25996,7 @@ GL_PREFIX(FogCoorddvEXT): GL_PREFIX(FogCoordfEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5336(%rax), %r11 + movq 5496(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $8, %rsp @@ -25112,13 +26004,13 @@ GL_PREFIX(FogCoordfEXT): call _x86_64_get_dispatch@PLT movq (%rsp), %xmm0 addq $8, %rsp - movq 5336(%rax), %r11 + movq 5496(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5336(%rax), %r11 + movq 5496(%rax), %r11 jmp *%r11 1: subq $8, %rsp @@ -25126,7 +26018,7 @@ GL_PREFIX(FogCoordfEXT): call _glapi_get_dispatch movq (%rsp), %xmm0 addq $8, %rsp - movq 5336(%rax), %r11 + movq 5496(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoordfEXT), .-GL_PREFIX(FogCoordfEXT) @@ -25137,58 +26029,58 @@ GL_PREFIX(FogCoordfEXT): GL_PREFIX(FogCoordfvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5344(%rax), %r11 + movq 5504(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5344(%rax), %r11 + movq 5504(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5344(%rax), %r11 + movq 5504(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5344(%rax), %r11 + movq 5504(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoordfvEXT), .-GL_PREFIX(FogCoordfvEXT) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_669) - .type GL_PREFIX(_dispatch_stub_669), @function - HIDDEN(GL_PREFIX(_dispatch_stub_669)) -GL_PREFIX(_dispatch_stub_669): + .globl GL_PREFIX(_dispatch_stub_689) + .type GL_PREFIX(_dispatch_stub_689), @function + HIDDEN(GL_PREFIX(_dispatch_stub_689)) +GL_PREFIX(_dispatch_stub_689): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5352(%rax), %r11 + movq 5512(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5352(%rax), %r11 + movq 5512(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5352(%rax), %r11 + movq 5512(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5352(%rax), %r11 + movq 5512(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_669), .-GL_PREFIX(_dispatch_stub_669) + .size GL_PREFIX(_dispatch_stub_689), .-GL_PREFIX(_dispatch_stub_689) .p2align 4,,15 .globl GL_PREFIX(BlendFuncSeparateEXT) @@ -25196,7 +26088,7 @@ GL_PREFIX(_dispatch_stub_669): GL_PREFIX(BlendFuncSeparateEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5360(%rax), %r11 + movq 5520(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25210,13 +26102,13 @@ GL_PREFIX(BlendFuncSeparateEXT): popq %rdx popq %rsi popq %rdi - movq 5360(%rax), %r11 + movq 5520(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5360(%rax), %r11 + movq 5520(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25230,7 +26122,7 @@ GL_PREFIX(BlendFuncSeparateEXT): popq %rdx popq %rsi popq %rdi - movq 5360(%rax), %r11 + movq 5520(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BlendFuncSeparateEXT), .-GL_PREFIX(BlendFuncSeparateEXT) @@ -25241,25 +26133,25 @@ GL_PREFIX(BlendFuncSeparateEXT): GL_PREFIX(FlushVertexArrayRangeNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5368(%rax), %r11 + movq 5528(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 5368(%rax), %r11 + movq 5528(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5368(%rax), %r11 + movq 5528(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 5368(%rax), %r11 + movq 5528(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FlushVertexArrayRangeNV), .-GL_PREFIX(FlushVertexArrayRangeNV) @@ -25270,7 +26162,7 @@ GL_PREFIX(FlushVertexArrayRangeNV): GL_PREFIX(VertexArrayRangeNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5376(%rax), %r11 + movq 5536(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25280,13 +26172,13 @@ GL_PREFIX(VertexArrayRangeNV): popq %rbp popq %rsi popq %rdi - movq 5376(%rax), %r11 + movq 5536(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5376(%rax), %r11 + movq 5536(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25296,7 +26188,7 @@ GL_PREFIX(VertexArrayRangeNV): popq %rbp popq %rsi popq %rdi - movq 5376(%rax), %r11 + movq 5536(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexArrayRangeNV), .-GL_PREFIX(VertexArrayRangeNV) @@ -25307,7 +26199,7 @@ GL_PREFIX(VertexArrayRangeNV): GL_PREFIX(CombinerInputNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5384(%rax), %r11 + movq 5544(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25325,13 +26217,13 @@ GL_PREFIX(CombinerInputNV): popq %rdx popq %rsi popq %rdi - movq 5384(%rax), %r11 + movq 5544(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5384(%rax), %r11 + movq 5544(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25349,7 +26241,7 @@ GL_PREFIX(CombinerInputNV): popq %rdx popq %rsi popq %rdi - movq 5384(%rax), %r11 + movq 5544(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerInputNV), .-GL_PREFIX(CombinerInputNV) @@ -25360,7 +26252,7 @@ GL_PREFIX(CombinerInputNV): GL_PREFIX(CombinerOutputNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5392(%rax), %r11 + movq 5552(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25378,13 +26270,13 @@ GL_PREFIX(CombinerOutputNV): popq %rdx popq %rsi popq %rdi - movq 5392(%rax), %r11 + movq 5552(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5392(%rax), %r11 + movq 5552(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25402,7 +26294,7 @@ GL_PREFIX(CombinerOutputNV): popq %rdx popq %rsi popq %rdi - movq 5392(%rax), %r11 + movq 5552(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerOutputNV), .-GL_PREFIX(CombinerOutputNV) @@ -25413,7 +26305,7 @@ GL_PREFIX(CombinerOutputNV): GL_PREFIX(CombinerParameterfNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5400(%rax), %r11 + movq 5560(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -25423,13 +26315,13 @@ GL_PREFIX(CombinerParameterfNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5400(%rax), %r11 + movq 5560(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5400(%rax), %r11 + movq 5560(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -25439,7 +26331,7 @@ GL_PREFIX(CombinerParameterfNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5400(%rax), %r11 + movq 5560(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerParameterfNV), .-GL_PREFIX(CombinerParameterfNV) @@ -25450,7 +26342,7 @@ GL_PREFIX(CombinerParameterfNV): GL_PREFIX(CombinerParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5408(%rax), %r11 + movq 5568(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25460,13 +26352,13 @@ GL_PREFIX(CombinerParameterfvNV): popq %rbp popq %rsi popq %rdi - movq 5408(%rax), %r11 + movq 5568(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5408(%rax), %r11 + movq 5568(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25476,7 +26368,7 @@ GL_PREFIX(CombinerParameterfvNV): popq %rbp popq %rsi popq %rdi - movq 5408(%rax), %r11 + movq 5568(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerParameterfvNV), .-GL_PREFIX(CombinerParameterfvNV) @@ -25487,7 +26379,7 @@ GL_PREFIX(CombinerParameterfvNV): GL_PREFIX(CombinerParameteriNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5416(%rax), %r11 + movq 5576(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25497,13 +26389,13 @@ GL_PREFIX(CombinerParameteriNV): popq %rbp popq %rsi popq %rdi - movq 5416(%rax), %r11 + movq 5576(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5416(%rax), %r11 + movq 5576(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25513,7 +26405,7 @@ GL_PREFIX(CombinerParameteriNV): popq %rbp popq %rsi popq %rdi - movq 5416(%rax), %r11 + movq 5576(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerParameteriNV), .-GL_PREFIX(CombinerParameteriNV) @@ -25524,7 +26416,7 @@ GL_PREFIX(CombinerParameteriNV): GL_PREFIX(CombinerParameterivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5424(%rax), %r11 + movq 5584(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25534,13 +26426,13 @@ GL_PREFIX(CombinerParameterivNV): popq %rbp popq %rsi popq %rdi - movq 5424(%rax), %r11 + movq 5584(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5424(%rax), %r11 + movq 5584(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25550,7 +26442,7 @@ GL_PREFIX(CombinerParameterivNV): popq %rbp popq %rsi popq %rdi - movq 5424(%rax), %r11 + movq 5584(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerParameterivNV), .-GL_PREFIX(CombinerParameterivNV) @@ -25561,7 +26453,7 @@ GL_PREFIX(CombinerParameterivNV): GL_PREFIX(FinalCombinerInputNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5432(%rax), %r11 + movq 5592(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25575,13 +26467,13 @@ GL_PREFIX(FinalCombinerInputNV): popq %rdx popq %rsi popq %rdi - movq 5432(%rax), %r11 + movq 5592(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5432(%rax), %r11 + movq 5592(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25595,7 +26487,7 @@ GL_PREFIX(FinalCombinerInputNV): popq %rdx popq %rsi popq %rdi - movq 5432(%rax), %r11 + movq 5592(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FinalCombinerInputNV), .-GL_PREFIX(FinalCombinerInputNV) @@ -25606,7 +26498,7 @@ GL_PREFIX(FinalCombinerInputNV): GL_PREFIX(GetCombinerInputParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5440(%rax), %r11 + movq 5600(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25620,13 +26512,13 @@ GL_PREFIX(GetCombinerInputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5440(%rax), %r11 + movq 5600(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5440(%rax), %r11 + movq 5600(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25640,7 +26532,7 @@ GL_PREFIX(GetCombinerInputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5440(%rax), %r11 + movq 5600(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetCombinerInputParameterfvNV), .-GL_PREFIX(GetCombinerInputParameterfvNV) @@ -25651,7 +26543,7 @@ GL_PREFIX(GetCombinerInputParameterfvNV): GL_PREFIX(GetCombinerInputParameterivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5448(%rax), %r11 + movq 5608(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25665,13 +26557,13 @@ GL_PREFIX(GetCombinerInputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5448(%rax), %r11 + movq 5608(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5448(%rax), %r11 + movq 5608(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25685,7 +26577,7 @@ GL_PREFIX(GetCombinerInputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5448(%rax), %r11 + movq 5608(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetCombinerInputParameterivNV), .-GL_PREFIX(GetCombinerInputParameterivNV) @@ -25696,7 +26588,7 @@ GL_PREFIX(GetCombinerInputParameterivNV): GL_PREFIX(GetCombinerOutputParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5456(%rax), %r11 + movq 5616(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25710,13 +26602,13 @@ GL_PREFIX(GetCombinerOutputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5456(%rax), %r11 + movq 5616(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5456(%rax), %r11 + movq 5616(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25730,7 +26622,7 @@ GL_PREFIX(GetCombinerOutputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5456(%rax), %r11 + movq 5616(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetCombinerOutputParameterfvNV), .-GL_PREFIX(GetCombinerOutputParameterfvNV) @@ -25741,7 +26633,7 @@ GL_PREFIX(GetCombinerOutputParameterfvNV): GL_PREFIX(GetCombinerOutputParameterivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5464(%rax), %r11 + movq 5624(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25755,13 +26647,13 @@ GL_PREFIX(GetCombinerOutputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5464(%rax), %r11 + movq 5624(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5464(%rax), %r11 + movq 5624(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25775,7 +26667,7 @@ GL_PREFIX(GetCombinerOutputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5464(%rax), %r11 + movq 5624(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetCombinerOutputParameterivNV), .-GL_PREFIX(GetCombinerOutputParameterivNV) @@ -25786,7 +26678,7 @@ GL_PREFIX(GetCombinerOutputParameterivNV): GL_PREFIX(GetFinalCombinerInputParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5472(%rax), %r11 + movq 5632(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25796,13 +26688,13 @@ GL_PREFIX(GetFinalCombinerInputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5472(%rax), %r11 + movq 5632(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5472(%rax), %r11 + movq 5632(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25812,7 +26704,7 @@ GL_PREFIX(GetFinalCombinerInputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5472(%rax), %r11 + movq 5632(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetFinalCombinerInputParameterfvNV), .-GL_PREFIX(GetFinalCombinerInputParameterfvNV) @@ -25823,7 +26715,7 @@ GL_PREFIX(GetFinalCombinerInputParameterfvNV): GL_PREFIX(GetFinalCombinerInputParameterivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5480(%rax), %r11 + movq 5640(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25833,13 +26725,13 @@ GL_PREFIX(GetFinalCombinerInputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5480(%rax), %r11 + movq 5640(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5480(%rax), %r11 + movq 5640(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25849,7 +26741,7 @@ GL_PREFIX(GetFinalCombinerInputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5480(%rax), %r11 + movq 5640(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetFinalCombinerInputParameterivNV), .-GL_PREFIX(GetFinalCombinerInputParameterivNV) @@ -25860,25 +26752,25 @@ GL_PREFIX(GetFinalCombinerInputParameterivNV): GL_PREFIX(ResizeBuffersMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5488(%rax), %r11 + movq 5648(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 5488(%rax), %r11 + movq 5648(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5488(%rax), %r11 + movq 5648(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 5488(%rax), %r11 + movq 5648(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ResizeBuffersMESA), .-GL_PREFIX(ResizeBuffersMESA) @@ -25889,7 +26781,7 @@ GL_PREFIX(ResizeBuffersMESA): GL_PREFIX(WindowPos2dMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5496(%rax), %r11 + movq 5656(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -25899,13 +26791,13 @@ GL_PREFIX(WindowPos2dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5496(%rax), %r11 + movq 5656(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5496(%rax), %r11 + movq 5656(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -25915,7 +26807,7 @@ GL_PREFIX(WindowPos2dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5496(%rax), %r11 + movq 5656(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2dMESA), .-GL_PREFIX(WindowPos2dMESA) @@ -25926,25 +26818,25 @@ GL_PREFIX(WindowPos2dMESA): GL_PREFIX(WindowPos2dvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5504(%rax), %r11 + movq 5664(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5504(%rax), %r11 + movq 5664(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5504(%rax), %r11 + movq 5664(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5504(%rax), %r11 + movq 5664(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2dvMESA), .-GL_PREFIX(WindowPos2dvMESA) @@ -25955,7 +26847,7 @@ GL_PREFIX(WindowPos2dvMESA): GL_PREFIX(WindowPos2fMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5512(%rax), %r11 + movq 5672(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -25965,13 +26857,13 @@ GL_PREFIX(WindowPos2fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5512(%rax), %r11 + movq 5672(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5512(%rax), %r11 + movq 5672(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -25981,7 +26873,7 @@ GL_PREFIX(WindowPos2fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5512(%rax), %r11 + movq 5672(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2fMESA), .-GL_PREFIX(WindowPos2fMESA) @@ -25992,25 +26884,25 @@ GL_PREFIX(WindowPos2fMESA): GL_PREFIX(WindowPos2fvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5520(%rax), %r11 + movq 5680(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5520(%rax), %r11 + movq 5680(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5520(%rax), %r11 + movq 5680(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5520(%rax), %r11 + movq 5680(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2fvMESA), .-GL_PREFIX(WindowPos2fvMESA) @@ -26021,7 +26913,7 @@ GL_PREFIX(WindowPos2fvMESA): GL_PREFIX(WindowPos2iMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5528(%rax), %r11 + movq 5688(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26031,13 +26923,13 @@ GL_PREFIX(WindowPos2iMESA): popq %rbp popq %rsi popq %rdi - movq 5528(%rax), %r11 + movq 5688(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5528(%rax), %r11 + movq 5688(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26047,7 +26939,7 @@ GL_PREFIX(WindowPos2iMESA): popq %rbp popq %rsi popq %rdi - movq 5528(%rax), %r11 + movq 5688(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2iMESA), .-GL_PREFIX(WindowPos2iMESA) @@ -26058,25 +26950,25 @@ GL_PREFIX(WindowPos2iMESA): GL_PREFIX(WindowPos2ivMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5536(%rax), %r11 + movq 5696(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5536(%rax), %r11 + movq 5696(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5536(%rax), %r11 + movq 5696(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5536(%rax), %r11 + movq 5696(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2ivMESA), .-GL_PREFIX(WindowPos2ivMESA) @@ -26087,7 +26979,7 @@ GL_PREFIX(WindowPos2ivMESA): GL_PREFIX(WindowPos2sMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5544(%rax), %r11 + movq 5704(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26097,13 +26989,13 @@ GL_PREFIX(WindowPos2sMESA): popq %rbp popq %rsi popq %rdi - movq 5544(%rax), %r11 + movq 5704(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5544(%rax), %r11 + movq 5704(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26113,7 +27005,7 @@ GL_PREFIX(WindowPos2sMESA): popq %rbp popq %rsi popq %rdi - movq 5544(%rax), %r11 + movq 5704(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2sMESA), .-GL_PREFIX(WindowPos2sMESA) @@ -26124,25 +27016,25 @@ GL_PREFIX(WindowPos2sMESA): GL_PREFIX(WindowPos2svMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5552(%rax), %r11 + movq 5712(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5552(%rax), %r11 + movq 5712(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5552(%rax), %r11 + movq 5712(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5552(%rax), %r11 + movq 5712(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2svMESA), .-GL_PREFIX(WindowPos2svMESA) @@ -26153,7 +27045,7 @@ GL_PREFIX(WindowPos2svMESA): GL_PREFIX(WindowPos3dMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5560(%rax), %r11 + movq 5720(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -26165,13 +27057,13 @@ GL_PREFIX(WindowPos3dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5560(%rax), %r11 + movq 5720(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5560(%rax), %r11 + movq 5720(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -26183,7 +27075,7 @@ GL_PREFIX(WindowPos3dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5560(%rax), %r11 + movq 5720(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3dMESA), .-GL_PREFIX(WindowPos3dMESA) @@ -26194,25 +27086,25 @@ GL_PREFIX(WindowPos3dMESA): GL_PREFIX(WindowPos3dvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5568(%rax), %r11 + movq 5728(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5568(%rax), %r11 + movq 5728(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5568(%rax), %r11 + movq 5728(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5568(%rax), %r11 + movq 5728(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3dvMESA), .-GL_PREFIX(WindowPos3dvMESA) @@ -26223,7 +27115,7 @@ GL_PREFIX(WindowPos3dvMESA): GL_PREFIX(WindowPos3fMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5576(%rax), %r11 + movq 5736(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -26235,13 +27127,13 @@ GL_PREFIX(WindowPos3fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5576(%rax), %r11 + movq 5736(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5576(%rax), %r11 + movq 5736(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -26253,7 +27145,7 @@ GL_PREFIX(WindowPos3fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5576(%rax), %r11 + movq 5736(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3fMESA), .-GL_PREFIX(WindowPos3fMESA) @@ -26264,25 +27156,25 @@ GL_PREFIX(WindowPos3fMESA): GL_PREFIX(WindowPos3fvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5584(%rax), %r11 + movq 5744(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5584(%rax), %r11 + movq 5744(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5584(%rax), %r11 + movq 5744(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5584(%rax), %r11 + movq 5744(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3fvMESA), .-GL_PREFIX(WindowPos3fvMESA) @@ -26293,7 +27185,7 @@ GL_PREFIX(WindowPos3fvMESA): GL_PREFIX(WindowPos3iMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5592(%rax), %r11 + movq 5752(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26303,13 +27195,13 @@ GL_PREFIX(WindowPos3iMESA): popq %rdx popq %rsi popq %rdi - movq 5592(%rax), %r11 + movq 5752(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5592(%rax), %r11 + movq 5752(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26319,7 +27211,7 @@ GL_PREFIX(WindowPos3iMESA): popq %rdx popq %rsi popq %rdi - movq 5592(%rax), %r11 + movq 5752(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3iMESA), .-GL_PREFIX(WindowPos3iMESA) @@ -26330,25 +27222,25 @@ GL_PREFIX(WindowPos3iMESA): GL_PREFIX(WindowPos3ivMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5600(%rax), %r11 + movq 5760(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5600(%rax), %r11 + movq 5760(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5600(%rax), %r11 + movq 5760(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5600(%rax), %r11 + movq 5760(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3ivMESA), .-GL_PREFIX(WindowPos3ivMESA) @@ -26359,7 +27251,7 @@ GL_PREFIX(WindowPos3ivMESA): GL_PREFIX(WindowPos3sMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5608(%rax), %r11 + movq 5768(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26369,13 +27261,13 @@ GL_PREFIX(WindowPos3sMESA): popq %rdx popq %rsi popq %rdi - movq 5608(%rax), %r11 + movq 5768(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5608(%rax), %r11 + movq 5768(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26385,7 +27277,7 @@ GL_PREFIX(WindowPos3sMESA): popq %rdx popq %rsi popq %rdi - movq 5608(%rax), %r11 + movq 5768(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3sMESA), .-GL_PREFIX(WindowPos3sMESA) @@ -26396,25 +27288,25 @@ GL_PREFIX(WindowPos3sMESA): GL_PREFIX(WindowPos3svMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5616(%rax), %r11 + movq 5776(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5616(%rax), %r11 + movq 5776(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5616(%rax), %r11 + movq 5776(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5616(%rax), %r11 + movq 5776(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3svMESA), .-GL_PREFIX(WindowPos3svMESA) @@ -26425,7 +27317,7 @@ GL_PREFIX(WindowPos3svMESA): GL_PREFIX(WindowPos4dMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5624(%rax), %r11 + movq 5784(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -26439,13 +27331,13 @@ GL_PREFIX(WindowPos4dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $40, %rsp - movq 5624(%rax), %r11 + movq 5784(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5624(%rax), %r11 + movq 5784(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -26459,7 +27351,7 @@ GL_PREFIX(WindowPos4dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $40, %rsp - movq 5624(%rax), %r11 + movq 5784(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4dMESA), .-GL_PREFIX(WindowPos4dMESA) @@ -26470,25 +27362,25 @@ GL_PREFIX(WindowPos4dMESA): GL_PREFIX(WindowPos4dvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5632(%rax), %r11 + movq 5792(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5632(%rax), %r11 + movq 5792(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5632(%rax), %r11 + movq 5792(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5632(%rax), %r11 + movq 5792(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4dvMESA), .-GL_PREFIX(WindowPos4dvMESA) @@ -26499,7 +27391,7 @@ GL_PREFIX(WindowPos4dvMESA): GL_PREFIX(WindowPos4fMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5640(%rax), %r11 + movq 5800(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -26513,13 +27405,13 @@ GL_PREFIX(WindowPos4fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $40, %rsp - movq 5640(%rax), %r11 + movq 5800(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5640(%rax), %r11 + movq 5800(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -26533,7 +27425,7 @@ GL_PREFIX(WindowPos4fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $40, %rsp - movq 5640(%rax), %r11 + movq 5800(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4fMESA), .-GL_PREFIX(WindowPos4fMESA) @@ -26544,25 +27436,25 @@ GL_PREFIX(WindowPos4fMESA): GL_PREFIX(WindowPos4fvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5648(%rax), %r11 + movq 5808(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5648(%rax), %r11 + movq 5808(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5648(%rax), %r11 + movq 5808(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5648(%rax), %r11 + movq 5808(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4fvMESA), .-GL_PREFIX(WindowPos4fvMESA) @@ -26573,7 +27465,7 @@ GL_PREFIX(WindowPos4fvMESA): GL_PREFIX(WindowPos4iMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5656(%rax), %r11 + movq 5816(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26587,13 +27479,13 @@ GL_PREFIX(WindowPos4iMESA): popq %rdx popq %rsi popq %rdi - movq 5656(%rax), %r11 + movq 5816(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5656(%rax), %r11 + movq 5816(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26607,7 +27499,7 @@ GL_PREFIX(WindowPos4iMESA): popq %rdx popq %rsi popq %rdi - movq 5656(%rax), %r11 + movq 5816(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4iMESA), .-GL_PREFIX(WindowPos4iMESA) @@ -26618,25 +27510,25 @@ GL_PREFIX(WindowPos4iMESA): GL_PREFIX(WindowPos4ivMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5664(%rax), %r11 + movq 5824(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5664(%rax), %r11 + movq 5824(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5664(%rax), %r11 + movq 5824(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5664(%rax), %r11 + movq 5824(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4ivMESA), .-GL_PREFIX(WindowPos4ivMESA) @@ -26647,7 +27539,7 @@ GL_PREFIX(WindowPos4ivMESA): GL_PREFIX(WindowPos4sMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5672(%rax), %r11 + movq 5832(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26661,13 +27553,13 @@ GL_PREFIX(WindowPos4sMESA): popq %rdx popq %rsi popq %rdi - movq 5672(%rax), %r11 + movq 5832(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5672(%rax), %r11 + movq 5832(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26681,7 +27573,7 @@ GL_PREFIX(WindowPos4sMESA): popq %rdx popq %rsi popq %rdi - movq 5672(%rax), %r11 + movq 5832(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4sMESA), .-GL_PREFIX(WindowPos4sMESA) @@ -26692,37 +27584,37 @@ GL_PREFIX(WindowPos4sMESA): GL_PREFIX(WindowPos4svMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5680(%rax), %r11 + movq 5840(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5680(%rax), %r11 + movq 5840(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5680(%rax), %r11 + movq 5840(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5680(%rax), %r11 + movq 5840(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4svMESA), .-GL_PREFIX(WindowPos4svMESA) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_711) - .type GL_PREFIX(_dispatch_stub_711), @function - HIDDEN(GL_PREFIX(_dispatch_stub_711)) -GL_PREFIX(_dispatch_stub_711): + .globl GL_PREFIX(_dispatch_stub_731) + .type GL_PREFIX(_dispatch_stub_731), @function + HIDDEN(GL_PREFIX(_dispatch_stub_731)) +GL_PREFIX(_dispatch_stub_731): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5688(%rax), %r11 + movq 5848(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26736,13 +27628,13 @@ GL_PREFIX(_dispatch_stub_711): popq %rdx popq %rsi popq %rdi - movq 5688(%rax), %r11 + movq 5848(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5688(%rax), %r11 + movq 5848(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26756,19 +27648,19 @@ GL_PREFIX(_dispatch_stub_711): popq %rdx popq %rsi popq %rdi - movq 5688(%rax), %r11 + movq 5848(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_711), .-GL_PREFIX(_dispatch_stub_711) + .size GL_PREFIX(_dispatch_stub_731), .-GL_PREFIX(_dispatch_stub_731) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_712) - .type GL_PREFIX(_dispatch_stub_712), @function - HIDDEN(GL_PREFIX(_dispatch_stub_712)) -GL_PREFIX(_dispatch_stub_712): + .globl GL_PREFIX(_dispatch_stub_732) + .type GL_PREFIX(_dispatch_stub_732), @function + HIDDEN(GL_PREFIX(_dispatch_stub_732)) +GL_PREFIX(_dispatch_stub_732): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5696(%rax), %r11 + movq 5856(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26786,13 +27678,13 @@ GL_PREFIX(_dispatch_stub_712): popq %rdx popq %rsi popq %rdi - movq 5696(%rax), %r11 + movq 5856(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5696(%rax), %r11 + movq 5856(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26810,19 +27702,19 @@ GL_PREFIX(_dispatch_stub_712): popq %rdx popq %rsi popq %rdi - movq 5696(%rax), %r11 + movq 5856(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_712), .-GL_PREFIX(_dispatch_stub_712) + .size GL_PREFIX(_dispatch_stub_732), .-GL_PREFIX(_dispatch_stub_732) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_713) - .type GL_PREFIX(_dispatch_stub_713), @function - HIDDEN(GL_PREFIX(_dispatch_stub_713)) -GL_PREFIX(_dispatch_stub_713): + .globl GL_PREFIX(_dispatch_stub_733) + .type GL_PREFIX(_dispatch_stub_733), @function + HIDDEN(GL_PREFIX(_dispatch_stub_733)) +GL_PREFIX(_dispatch_stub_733): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5704(%rax), %r11 + movq 5864(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26832,13 +27724,13 @@ GL_PREFIX(_dispatch_stub_713): popq %rbp popq %rsi popq %rdi - movq 5704(%rax), %r11 + movq 5864(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5704(%rax), %r11 + movq 5864(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26848,49 +27740,49 @@ GL_PREFIX(_dispatch_stub_713): popq %rbp popq %rsi popq %rdi - movq 5704(%rax), %r11 + movq 5864(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_713), .-GL_PREFIX(_dispatch_stub_713) + .size GL_PREFIX(_dispatch_stub_733), .-GL_PREFIX(_dispatch_stub_733) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_714) - .type GL_PREFIX(_dispatch_stub_714), @function - HIDDEN(GL_PREFIX(_dispatch_stub_714)) -GL_PREFIX(_dispatch_stub_714): + .globl GL_PREFIX(_dispatch_stub_734) + .type GL_PREFIX(_dispatch_stub_734), @function + HIDDEN(GL_PREFIX(_dispatch_stub_734)) +GL_PREFIX(_dispatch_stub_734): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5712(%rax), %r11 + movq 5872(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5712(%rax), %r11 + movq 5872(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5712(%rax), %r11 + movq 5872(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5712(%rax), %r11 + movq 5872(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_714), .-GL_PREFIX(_dispatch_stub_714) + .size GL_PREFIX(_dispatch_stub_734), .-GL_PREFIX(_dispatch_stub_734) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_715) - .type GL_PREFIX(_dispatch_stub_715), @function - HIDDEN(GL_PREFIX(_dispatch_stub_715)) -GL_PREFIX(_dispatch_stub_715): + .globl GL_PREFIX(_dispatch_stub_735) + .type GL_PREFIX(_dispatch_stub_735), @function + HIDDEN(GL_PREFIX(_dispatch_stub_735)) +GL_PREFIX(_dispatch_stub_735): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5720(%rax), %r11 + movq 5880(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26900,13 +27792,13 @@ GL_PREFIX(_dispatch_stub_715): popq %rbp popq %rsi popq %rdi - movq 5720(%rax), %r11 + movq 5880(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5720(%rax), %r11 + movq 5880(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26916,19 +27808,19 @@ GL_PREFIX(_dispatch_stub_715): popq %rbp popq %rsi popq %rdi - movq 5720(%rax), %r11 + movq 5880(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_715), .-GL_PREFIX(_dispatch_stub_715) + .size GL_PREFIX(_dispatch_stub_735), .-GL_PREFIX(_dispatch_stub_735) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_716) - .type GL_PREFIX(_dispatch_stub_716), @function - HIDDEN(GL_PREFIX(_dispatch_stub_716)) -GL_PREFIX(_dispatch_stub_716): + .globl GL_PREFIX(_dispatch_stub_736) + .type GL_PREFIX(_dispatch_stub_736), @function + HIDDEN(GL_PREFIX(_dispatch_stub_736)) +GL_PREFIX(_dispatch_stub_736): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5728(%rax), %r11 + movq 5888(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26938,13 +27830,13 @@ GL_PREFIX(_dispatch_stub_716): popq %rdx popq %rsi popq %rdi - movq 5728(%rax), %r11 + movq 5888(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5728(%rax), %r11 + movq 5888(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26954,49 +27846,49 @@ GL_PREFIX(_dispatch_stub_716): popq %rdx popq %rsi popq %rdi - movq 5728(%rax), %r11 + movq 5888(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_716), .-GL_PREFIX(_dispatch_stub_716) + .size GL_PREFIX(_dispatch_stub_736), .-GL_PREFIX(_dispatch_stub_736) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_717) - .type GL_PREFIX(_dispatch_stub_717), @function - HIDDEN(GL_PREFIX(_dispatch_stub_717)) -GL_PREFIX(_dispatch_stub_717): + .globl GL_PREFIX(_dispatch_stub_737) + .type GL_PREFIX(_dispatch_stub_737), @function + HIDDEN(GL_PREFIX(_dispatch_stub_737)) +GL_PREFIX(_dispatch_stub_737): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5736(%rax), %r11 + movq 5896(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5736(%rax), %r11 + movq 5896(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5736(%rax), %r11 + movq 5896(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5736(%rax), %r11 + movq 5896(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_717), .-GL_PREFIX(_dispatch_stub_717) + .size GL_PREFIX(_dispatch_stub_737), .-GL_PREFIX(_dispatch_stub_737) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_718) - .type GL_PREFIX(_dispatch_stub_718), @function - HIDDEN(GL_PREFIX(_dispatch_stub_718)) -GL_PREFIX(_dispatch_stub_718): + .globl GL_PREFIX(_dispatch_stub_738) + .type GL_PREFIX(_dispatch_stub_738), @function + HIDDEN(GL_PREFIX(_dispatch_stub_738)) +GL_PREFIX(_dispatch_stub_738): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5744(%rax), %r11 + movq 5904(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27006,13 +27898,13 @@ GL_PREFIX(_dispatch_stub_718): popq %rbp popq %rsi popq %rdi - movq 5744(%rax), %r11 + movq 5904(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5744(%rax), %r11 + movq 5904(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27022,40 +27914,40 @@ GL_PREFIX(_dispatch_stub_718): popq %rbp popq %rsi popq %rdi - movq 5744(%rax), %r11 + movq 5904(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_718), .-GL_PREFIX(_dispatch_stub_718) + .size GL_PREFIX(_dispatch_stub_738), .-GL_PREFIX(_dispatch_stub_738) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_719) - .type GL_PREFIX(_dispatch_stub_719), @function - HIDDEN(GL_PREFIX(_dispatch_stub_719)) -GL_PREFIX(_dispatch_stub_719): + .globl GL_PREFIX(_dispatch_stub_739) + .type GL_PREFIX(_dispatch_stub_739), @function + HIDDEN(GL_PREFIX(_dispatch_stub_739)) +GL_PREFIX(_dispatch_stub_739): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5752(%rax), %r11 + movq 5912(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5752(%rax), %r11 + movq 5912(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5752(%rax), %r11 + movq 5912(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5752(%rax), %r11 + movq 5912(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_719), .-GL_PREFIX(_dispatch_stub_719) + .size GL_PREFIX(_dispatch_stub_739), .-GL_PREFIX(_dispatch_stub_739) .p2align 4,,15 .globl GL_PREFIX(AreProgramsResidentNV) @@ -27063,7 +27955,7 @@ GL_PREFIX(_dispatch_stub_719): GL_PREFIX(AreProgramsResidentNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5760(%rax), %r11 + movq 5920(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27073,13 +27965,13 @@ GL_PREFIX(AreProgramsResidentNV): popq %rdx popq %rsi popq %rdi - movq 5760(%rax), %r11 + movq 5920(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5760(%rax), %r11 + movq 5920(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27089,7 +27981,7 @@ GL_PREFIX(AreProgramsResidentNV): popq %rdx popq %rsi popq %rdi - movq 5760(%rax), %r11 + movq 5920(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(AreProgramsResidentNV), .-GL_PREFIX(AreProgramsResidentNV) @@ -27100,7 +27992,7 @@ GL_PREFIX(AreProgramsResidentNV): GL_PREFIX(BindProgramNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5768(%rax), %r11 + movq 5928(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27110,13 +28002,13 @@ GL_PREFIX(BindProgramNV): popq %rbp popq %rsi popq %rdi - movq 5768(%rax), %r11 + movq 5928(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5768(%rax), %r11 + movq 5928(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27126,7 +28018,7 @@ GL_PREFIX(BindProgramNV): popq %rbp popq %rsi popq %rdi - movq 5768(%rax), %r11 + movq 5928(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindProgramNV), .-GL_PREFIX(BindProgramNV) @@ -27137,7 +28029,7 @@ GL_PREFIX(BindProgramNV): GL_PREFIX(DeleteProgramsNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5776(%rax), %r11 + movq 5936(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27147,13 +28039,13 @@ GL_PREFIX(DeleteProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5776(%rax), %r11 + movq 5936(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5776(%rax), %r11 + movq 5936(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27163,7 +28055,7 @@ GL_PREFIX(DeleteProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5776(%rax), %r11 + movq 5936(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteProgramsNV), .-GL_PREFIX(DeleteProgramsNV) @@ -27174,7 +28066,7 @@ GL_PREFIX(DeleteProgramsNV): GL_PREFIX(ExecuteProgramNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5784(%rax), %r11 + movq 5944(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27184,13 +28076,13 @@ GL_PREFIX(ExecuteProgramNV): popq %rdx popq %rsi popq %rdi - movq 5784(%rax), %r11 + movq 5944(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5784(%rax), %r11 + movq 5944(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27200,7 +28092,7 @@ GL_PREFIX(ExecuteProgramNV): popq %rdx popq %rsi popq %rdi - movq 5784(%rax), %r11 + movq 5944(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ExecuteProgramNV), .-GL_PREFIX(ExecuteProgramNV) @@ -27211,7 +28103,7 @@ GL_PREFIX(ExecuteProgramNV): GL_PREFIX(GenProgramsNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5792(%rax), %r11 + movq 5952(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27221,13 +28113,13 @@ GL_PREFIX(GenProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5792(%rax), %r11 + movq 5952(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5792(%rax), %r11 + movq 5952(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27237,7 +28129,7 @@ GL_PREFIX(GenProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5792(%rax), %r11 + movq 5952(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenProgramsNV), .-GL_PREFIX(GenProgramsNV) @@ -27248,7 +28140,7 @@ GL_PREFIX(GenProgramsNV): GL_PREFIX(GetProgramParameterdvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5800(%rax), %r11 + movq 5960(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27262,13 +28154,13 @@ GL_PREFIX(GetProgramParameterdvNV): popq %rdx popq %rsi popq %rdi - movq 5800(%rax), %r11 + movq 5960(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5800(%rax), %r11 + movq 5960(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27282,7 +28174,7 @@ GL_PREFIX(GetProgramParameterdvNV): popq %rdx popq %rsi popq %rdi - movq 5800(%rax), %r11 + movq 5960(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramParameterdvNV), .-GL_PREFIX(GetProgramParameterdvNV) @@ -27293,7 +28185,7 @@ GL_PREFIX(GetProgramParameterdvNV): GL_PREFIX(GetProgramParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5808(%rax), %r11 + movq 5968(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27307,13 +28199,13 @@ GL_PREFIX(GetProgramParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5808(%rax), %r11 + movq 5968(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5808(%rax), %r11 + movq 5968(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27327,7 +28219,7 @@ GL_PREFIX(GetProgramParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5808(%rax), %r11 + movq 5968(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramParameterfvNV), .-GL_PREFIX(GetProgramParameterfvNV) @@ -27338,7 +28230,7 @@ GL_PREFIX(GetProgramParameterfvNV): GL_PREFIX(GetProgramStringNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5816(%rax), %r11 + movq 5976(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27348,13 +28240,13 @@ GL_PREFIX(GetProgramStringNV): popq %rdx popq %rsi popq %rdi - movq 5816(%rax), %r11 + movq 5976(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5816(%rax), %r11 + movq 5976(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27364,7 +28256,7 @@ GL_PREFIX(GetProgramStringNV): popq %rdx popq %rsi popq %rdi - movq 5816(%rax), %r11 + movq 5976(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramStringNV), .-GL_PREFIX(GetProgramStringNV) @@ -27375,7 +28267,7 @@ GL_PREFIX(GetProgramStringNV): GL_PREFIX(GetProgramivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5824(%rax), %r11 + movq 5984(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27385,13 +28277,13 @@ GL_PREFIX(GetProgramivNV): popq %rdx popq %rsi popq %rdi - movq 5824(%rax), %r11 + movq 5984(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5824(%rax), %r11 + movq 5984(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27401,7 +28293,7 @@ GL_PREFIX(GetProgramivNV): popq %rdx popq %rsi popq %rdi - movq 5824(%rax), %r11 + movq 5984(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramivNV), .-GL_PREFIX(GetProgramivNV) @@ -27412,7 +28304,7 @@ GL_PREFIX(GetProgramivNV): GL_PREFIX(GetTrackMatrixivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5832(%rax), %r11 + movq 5992(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27426,13 +28318,13 @@ GL_PREFIX(GetTrackMatrixivNV): popq %rdx popq %rsi popq %rdi - movq 5832(%rax), %r11 + movq 5992(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5832(%rax), %r11 + movq 5992(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27446,7 +28338,7 @@ GL_PREFIX(GetTrackMatrixivNV): popq %rdx popq %rsi popq %rdi - movq 5832(%rax), %r11 + movq 5992(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTrackMatrixivNV), .-GL_PREFIX(GetTrackMatrixivNV) @@ -27457,7 +28349,7 @@ GL_PREFIX(GetTrackMatrixivNV): GL_PREFIX(GetVertexAttribPointervNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5840(%rax), %r11 + movq 6000(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27467,13 +28359,13 @@ GL_PREFIX(GetVertexAttribPointervNV): popq %rdx popq %rsi popq %rdi - movq 5840(%rax), %r11 + movq 6000(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5840(%rax), %r11 + movq 6000(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27483,7 +28375,7 @@ GL_PREFIX(GetVertexAttribPointervNV): popq %rdx popq %rsi popq %rdi - movq 5840(%rax), %r11 + movq 6000(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribPointervNV), .-GL_PREFIX(GetVertexAttribPointervNV) @@ -27494,7 +28386,7 @@ GL_PREFIX(GetVertexAttribPointervNV): GL_PREFIX(GetVertexAttribdvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5848(%rax), %r11 + movq 6008(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27504,13 +28396,13 @@ GL_PREFIX(GetVertexAttribdvNV): popq %rdx popq %rsi popq %rdi - movq 5848(%rax), %r11 + movq 6008(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5848(%rax), %r11 + movq 6008(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27520,7 +28412,7 @@ GL_PREFIX(GetVertexAttribdvNV): popq %rdx popq %rsi popq %rdi - movq 5848(%rax), %r11 + movq 6008(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribdvNV), .-GL_PREFIX(GetVertexAttribdvNV) @@ -27531,7 +28423,7 @@ GL_PREFIX(GetVertexAttribdvNV): GL_PREFIX(GetVertexAttribfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5856(%rax), %r11 + movq 6016(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27541,13 +28433,13 @@ GL_PREFIX(GetVertexAttribfvNV): popq %rdx popq %rsi popq %rdi - movq 5856(%rax), %r11 + movq 6016(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5856(%rax), %r11 + movq 6016(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27557,7 +28449,7 @@ GL_PREFIX(GetVertexAttribfvNV): popq %rdx popq %rsi popq %rdi - movq 5856(%rax), %r11 + movq 6016(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribfvNV), .-GL_PREFIX(GetVertexAttribfvNV) @@ -27568,7 +28460,7 @@ GL_PREFIX(GetVertexAttribfvNV): GL_PREFIX(GetVertexAttribivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5864(%rax), %r11 + movq 6024(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27578,13 +28470,13 @@ GL_PREFIX(GetVertexAttribivNV): popq %rdx popq %rsi popq %rdi - movq 5864(%rax), %r11 + movq 6024(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5864(%rax), %r11 + movq 6024(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27594,7 +28486,7 @@ GL_PREFIX(GetVertexAttribivNV): popq %rdx popq %rsi popq %rdi - movq 5864(%rax), %r11 + movq 6024(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribivNV), .-GL_PREFIX(GetVertexAttribivNV) @@ -27605,25 +28497,25 @@ GL_PREFIX(GetVertexAttribivNV): GL_PREFIX(IsProgramNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5872(%rax), %r11 + movq 6032(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5872(%rax), %r11 + movq 6032(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5872(%rax), %r11 + movq 6032(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5872(%rax), %r11 + movq 6032(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsProgramNV), .-GL_PREFIX(IsProgramNV) @@ -27634,7 +28526,7 @@ GL_PREFIX(IsProgramNV): GL_PREFIX(LoadProgramNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5880(%rax), %r11 + movq 6040(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27648,13 +28540,13 @@ GL_PREFIX(LoadProgramNV): popq %rdx popq %rsi popq %rdi - movq 5880(%rax), %r11 + movq 6040(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5880(%rax), %r11 + movq 6040(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27668,7 +28560,7 @@ GL_PREFIX(LoadProgramNV): popq %rdx popq %rsi popq %rdi - movq 5880(%rax), %r11 + movq 6040(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(LoadProgramNV), .-GL_PREFIX(LoadProgramNV) @@ -27679,7 +28571,7 @@ GL_PREFIX(LoadProgramNV): GL_PREFIX(ProgramParameters4dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5888(%rax), %r11 + movq 6048(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27693,13 +28585,13 @@ GL_PREFIX(ProgramParameters4dvNV): popq %rdx popq %rsi popq %rdi - movq 5888(%rax), %r11 + movq 6048(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5888(%rax), %r11 + movq 6048(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27713,7 +28605,7 @@ GL_PREFIX(ProgramParameters4dvNV): popq %rdx popq %rsi popq %rdi - movq 5888(%rax), %r11 + movq 6048(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramParameters4dvNV), .-GL_PREFIX(ProgramParameters4dvNV) @@ -27724,7 +28616,7 @@ GL_PREFIX(ProgramParameters4dvNV): GL_PREFIX(ProgramParameters4fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5896(%rax), %r11 + movq 6056(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27738,13 +28630,13 @@ GL_PREFIX(ProgramParameters4fvNV): popq %rdx popq %rsi popq %rdi - movq 5896(%rax), %r11 + movq 6056(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5896(%rax), %r11 + movq 6056(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27758,7 +28650,7 @@ GL_PREFIX(ProgramParameters4fvNV): popq %rdx popq %rsi popq %rdi - movq 5896(%rax), %r11 + movq 6056(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramParameters4fvNV), .-GL_PREFIX(ProgramParameters4fvNV) @@ -27769,7 +28661,7 @@ GL_PREFIX(ProgramParameters4fvNV): GL_PREFIX(RequestResidentProgramsNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5904(%rax), %r11 + movq 6064(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27779,13 +28671,13 @@ GL_PREFIX(RequestResidentProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5904(%rax), %r11 + movq 6064(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5904(%rax), %r11 + movq 6064(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27795,7 +28687,7 @@ GL_PREFIX(RequestResidentProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5904(%rax), %r11 + movq 6064(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(RequestResidentProgramsNV), .-GL_PREFIX(RequestResidentProgramsNV) @@ -27806,7 +28698,7 @@ GL_PREFIX(RequestResidentProgramsNV): GL_PREFIX(TrackMatrixNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5912(%rax), %r11 + movq 6072(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27820,13 +28712,13 @@ GL_PREFIX(TrackMatrixNV): popq %rdx popq %rsi popq %rdi - movq 5912(%rax), %r11 + movq 6072(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5912(%rax), %r11 + movq 6072(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27840,7 +28732,7 @@ GL_PREFIX(TrackMatrixNV): popq %rdx popq %rsi popq %rdi - movq 5912(%rax), %r11 + movq 6072(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TrackMatrixNV), .-GL_PREFIX(TrackMatrixNV) @@ -27851,7 +28743,7 @@ GL_PREFIX(TrackMatrixNV): GL_PREFIX(VertexAttrib1dNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5920(%rax), %r11 + movq 6080(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -27861,13 +28753,13 @@ GL_PREFIX(VertexAttrib1dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5920(%rax), %r11 + movq 6080(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5920(%rax), %r11 + movq 6080(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -27877,7 +28769,7 @@ GL_PREFIX(VertexAttrib1dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5920(%rax), %r11 + movq 6080(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1dNV), .-GL_PREFIX(VertexAttrib1dNV) @@ -27888,7 +28780,7 @@ GL_PREFIX(VertexAttrib1dNV): GL_PREFIX(VertexAttrib1dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5928(%rax), %r11 + movq 6088(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27898,13 +28790,13 @@ GL_PREFIX(VertexAttrib1dvNV): popq %rbp popq %rsi popq %rdi - movq 5928(%rax), %r11 + movq 6088(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5928(%rax), %r11 + movq 6088(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27914,7 +28806,7 @@ GL_PREFIX(VertexAttrib1dvNV): popq %rbp popq %rsi popq %rdi - movq 5928(%rax), %r11 + movq 6088(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1dvNV), .-GL_PREFIX(VertexAttrib1dvNV) @@ -27925,7 +28817,7 @@ GL_PREFIX(VertexAttrib1dvNV): GL_PREFIX(VertexAttrib1fNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5936(%rax), %r11 + movq 6096(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -27935,13 +28827,13 @@ GL_PREFIX(VertexAttrib1fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5936(%rax), %r11 + movq 6096(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5936(%rax), %r11 + movq 6096(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -27951,7 +28843,7 @@ GL_PREFIX(VertexAttrib1fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5936(%rax), %r11 + movq 6096(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1fNV), .-GL_PREFIX(VertexAttrib1fNV) @@ -27962,7 +28854,7 @@ GL_PREFIX(VertexAttrib1fNV): GL_PREFIX(VertexAttrib1fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5944(%rax), %r11 + movq 6104(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27972,13 +28864,13 @@ GL_PREFIX(VertexAttrib1fvNV): popq %rbp popq %rsi popq %rdi - movq 5944(%rax), %r11 + movq 6104(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5944(%rax), %r11 + movq 6104(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27988,7 +28880,7 @@ GL_PREFIX(VertexAttrib1fvNV): popq %rbp popq %rsi popq %rdi - movq 5944(%rax), %r11 + movq 6104(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1fvNV), .-GL_PREFIX(VertexAttrib1fvNV) @@ -27999,7 +28891,7 @@ GL_PREFIX(VertexAttrib1fvNV): GL_PREFIX(VertexAttrib1sNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5952(%rax), %r11 + movq 6112(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28009,13 +28901,13 @@ GL_PREFIX(VertexAttrib1sNV): popq %rbp popq %rsi popq %rdi - movq 5952(%rax), %r11 + movq 6112(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5952(%rax), %r11 + movq 6112(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28025,7 +28917,7 @@ GL_PREFIX(VertexAttrib1sNV): popq %rbp popq %rsi popq %rdi - movq 5952(%rax), %r11 + movq 6112(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1sNV), .-GL_PREFIX(VertexAttrib1sNV) @@ -28036,7 +28928,7 @@ GL_PREFIX(VertexAttrib1sNV): GL_PREFIX(VertexAttrib1svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5960(%rax), %r11 + movq 6120(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28046,13 +28938,13 @@ GL_PREFIX(VertexAttrib1svNV): popq %rbp popq %rsi popq %rdi - movq 5960(%rax), %r11 + movq 6120(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5960(%rax), %r11 + movq 6120(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28062,7 +28954,7 @@ GL_PREFIX(VertexAttrib1svNV): popq %rbp popq %rsi popq %rdi - movq 5960(%rax), %r11 + movq 6120(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1svNV), .-GL_PREFIX(VertexAttrib1svNV) @@ -28073,7 +28965,7 @@ GL_PREFIX(VertexAttrib1svNV): GL_PREFIX(VertexAttrib2dNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5968(%rax), %r11 + movq 6128(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -28085,13 +28977,13 @@ GL_PREFIX(VertexAttrib2dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5968(%rax), %r11 + movq 6128(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5968(%rax), %r11 + movq 6128(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -28103,7 +28995,7 @@ GL_PREFIX(VertexAttrib2dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5968(%rax), %r11 + movq 6128(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2dNV), .-GL_PREFIX(VertexAttrib2dNV) @@ -28114,7 +29006,7 @@ GL_PREFIX(VertexAttrib2dNV): GL_PREFIX(VertexAttrib2dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5976(%rax), %r11 + movq 6136(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28124,13 +29016,13 @@ GL_PREFIX(VertexAttrib2dvNV): popq %rbp popq %rsi popq %rdi - movq 5976(%rax), %r11 + movq 6136(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5976(%rax), %r11 + movq 6136(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28140,7 +29032,7 @@ GL_PREFIX(VertexAttrib2dvNV): popq %rbp popq %rsi popq %rdi - movq 5976(%rax), %r11 + movq 6136(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2dvNV), .-GL_PREFIX(VertexAttrib2dvNV) @@ -28151,7 +29043,7 @@ GL_PREFIX(VertexAttrib2dvNV): GL_PREFIX(VertexAttrib2fNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5984(%rax), %r11 + movq 6144(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -28163,13 +29055,13 @@ GL_PREFIX(VertexAttrib2fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5984(%rax), %r11 + movq 6144(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5984(%rax), %r11 + movq 6144(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -28181,7 +29073,7 @@ GL_PREFIX(VertexAttrib2fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5984(%rax), %r11 + movq 6144(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2fNV), .-GL_PREFIX(VertexAttrib2fNV) @@ -28192,7 +29084,7 @@ GL_PREFIX(VertexAttrib2fNV): GL_PREFIX(VertexAttrib2fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5992(%rax), %r11 + movq 6152(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28202,13 +29094,13 @@ GL_PREFIX(VertexAttrib2fvNV): popq %rbp popq %rsi popq %rdi - movq 5992(%rax), %r11 + movq 6152(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5992(%rax), %r11 + movq 6152(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28218,7 +29110,7 @@ GL_PREFIX(VertexAttrib2fvNV): popq %rbp popq %rsi popq %rdi - movq 5992(%rax), %r11 + movq 6152(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2fvNV), .-GL_PREFIX(VertexAttrib2fvNV) @@ -28229,7 +29121,7 @@ GL_PREFIX(VertexAttrib2fvNV): GL_PREFIX(VertexAttrib2sNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6000(%rax), %r11 + movq 6160(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28239,13 +29131,13 @@ GL_PREFIX(VertexAttrib2sNV): popq %rdx popq %rsi popq %rdi - movq 6000(%rax), %r11 + movq 6160(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6000(%rax), %r11 + movq 6160(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28255,7 +29147,7 @@ GL_PREFIX(VertexAttrib2sNV): popq %rdx popq %rsi popq %rdi - movq 6000(%rax), %r11 + movq 6160(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2sNV), .-GL_PREFIX(VertexAttrib2sNV) @@ -28266,7 +29158,7 @@ GL_PREFIX(VertexAttrib2sNV): GL_PREFIX(VertexAttrib2svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6008(%rax), %r11 + movq 6168(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28276,13 +29168,13 @@ GL_PREFIX(VertexAttrib2svNV): popq %rbp popq %rsi popq %rdi - movq 6008(%rax), %r11 + movq 6168(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6008(%rax), %r11 + movq 6168(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28292,7 +29184,7 @@ GL_PREFIX(VertexAttrib2svNV): popq %rbp popq %rsi popq %rdi - movq 6008(%rax), %r11 + movq 6168(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2svNV), .-GL_PREFIX(VertexAttrib2svNV) @@ -28303,7 +29195,7 @@ GL_PREFIX(VertexAttrib2svNV): GL_PREFIX(VertexAttrib3dNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6016(%rax), %r11 + movq 6176(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -28317,13 +29209,13 @@ GL_PREFIX(VertexAttrib3dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 6016(%rax), %r11 + movq 6176(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6016(%rax), %r11 + movq 6176(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -28337,7 +29229,7 @@ GL_PREFIX(VertexAttrib3dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 6016(%rax), %r11 + movq 6176(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3dNV), .-GL_PREFIX(VertexAttrib3dNV) @@ -28348,7 +29240,7 @@ GL_PREFIX(VertexAttrib3dNV): GL_PREFIX(VertexAttrib3dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6024(%rax), %r11 + movq 6184(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28358,13 +29250,13 @@ GL_PREFIX(VertexAttrib3dvNV): popq %rbp popq %rsi popq %rdi - movq 6024(%rax), %r11 + movq 6184(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6024(%rax), %r11 + movq 6184(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28374,7 +29266,7 @@ GL_PREFIX(VertexAttrib3dvNV): popq %rbp popq %rsi popq %rdi - movq 6024(%rax), %r11 + movq 6184(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3dvNV), .-GL_PREFIX(VertexAttrib3dvNV) @@ -28385,7 +29277,7 @@ GL_PREFIX(VertexAttrib3dvNV): GL_PREFIX(VertexAttrib3fNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6032(%rax), %r11 + movq 6192(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -28399,13 +29291,13 @@ GL_PREFIX(VertexAttrib3fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 6032(%rax), %r11 + movq 6192(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6032(%rax), %r11 + movq 6192(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -28419,7 +29311,7 @@ GL_PREFIX(VertexAttrib3fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 6032(%rax), %r11 + movq 6192(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3fNV), .-GL_PREFIX(VertexAttrib3fNV) @@ -28430,7 +29322,7 @@ GL_PREFIX(VertexAttrib3fNV): GL_PREFIX(VertexAttrib3fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6040(%rax), %r11 + movq 6200(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28440,13 +29332,13 @@ GL_PREFIX(VertexAttrib3fvNV): popq %rbp popq %rsi popq %rdi - movq 6040(%rax), %r11 + movq 6200(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6040(%rax), %r11 + movq 6200(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28456,7 +29348,7 @@ GL_PREFIX(VertexAttrib3fvNV): popq %rbp popq %rsi popq %rdi - movq 6040(%rax), %r11 + movq 6200(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3fvNV), .-GL_PREFIX(VertexAttrib3fvNV) @@ -28467,7 +29359,7 @@ GL_PREFIX(VertexAttrib3fvNV): GL_PREFIX(VertexAttrib3sNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6048(%rax), %r11 + movq 6208(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28481,13 +29373,13 @@ GL_PREFIX(VertexAttrib3sNV): popq %rdx popq %rsi popq %rdi - movq 6048(%rax), %r11 + movq 6208(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6048(%rax), %r11 + movq 6208(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28501,7 +29393,7 @@ GL_PREFIX(VertexAttrib3sNV): popq %rdx popq %rsi popq %rdi - movq 6048(%rax), %r11 + movq 6208(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3sNV), .-GL_PREFIX(VertexAttrib3sNV) @@ -28512,7 +29404,7 @@ GL_PREFIX(VertexAttrib3sNV): GL_PREFIX(VertexAttrib3svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6056(%rax), %r11 + movq 6216(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28522,13 +29414,13 @@ GL_PREFIX(VertexAttrib3svNV): popq %rbp popq %rsi popq %rdi - movq 6056(%rax), %r11 + movq 6216(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6056(%rax), %r11 + movq 6216(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28538,7 +29430,7 @@ GL_PREFIX(VertexAttrib3svNV): popq %rbp popq %rsi popq %rdi - movq 6056(%rax), %r11 + movq 6216(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3svNV), .-GL_PREFIX(VertexAttrib3svNV) @@ -28549,7 +29441,7 @@ GL_PREFIX(VertexAttrib3svNV): GL_PREFIX(VertexAttrib4dNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6064(%rax), %r11 + movq 6224(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -28565,13 +29457,13 @@ GL_PREFIX(VertexAttrib4dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 6064(%rax), %r11 + movq 6224(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6064(%rax), %r11 + movq 6224(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -28587,7 +29479,7 @@ GL_PREFIX(VertexAttrib4dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 6064(%rax), %r11 + movq 6224(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4dNV), .-GL_PREFIX(VertexAttrib4dNV) @@ -28598,7 +29490,7 @@ GL_PREFIX(VertexAttrib4dNV): GL_PREFIX(VertexAttrib4dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6072(%rax), %r11 + movq 6232(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28608,13 +29500,13 @@ GL_PREFIX(VertexAttrib4dvNV): popq %rbp popq %rsi popq %rdi - movq 6072(%rax), %r11 + movq 6232(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6072(%rax), %r11 + movq 6232(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28624,7 +29516,7 @@ GL_PREFIX(VertexAttrib4dvNV): popq %rbp popq %rsi popq %rdi - movq 6072(%rax), %r11 + movq 6232(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4dvNV), .-GL_PREFIX(VertexAttrib4dvNV) @@ -28635,7 +29527,7 @@ GL_PREFIX(VertexAttrib4dvNV): GL_PREFIX(VertexAttrib4fNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6080(%rax), %r11 + movq 6240(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -28651,13 +29543,13 @@ GL_PREFIX(VertexAttrib4fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 6080(%rax), %r11 + movq 6240(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6080(%rax), %r11 + movq 6240(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -28673,7 +29565,7 @@ GL_PREFIX(VertexAttrib4fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 6080(%rax), %r11 + movq 6240(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4fNV), .-GL_PREFIX(VertexAttrib4fNV) @@ -28684,7 +29576,7 @@ GL_PREFIX(VertexAttrib4fNV): GL_PREFIX(VertexAttrib4fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6088(%rax), %r11 + movq 6248(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28694,13 +29586,13 @@ GL_PREFIX(VertexAttrib4fvNV): popq %rbp popq %rsi popq %rdi - movq 6088(%rax), %r11 + movq 6248(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6088(%rax), %r11 + movq 6248(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28710,7 +29602,7 @@ GL_PREFIX(VertexAttrib4fvNV): popq %rbp popq %rsi popq %rdi - movq 6088(%rax), %r11 + movq 6248(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4fvNV), .-GL_PREFIX(VertexAttrib4fvNV) @@ -28721,7 +29613,7 @@ GL_PREFIX(VertexAttrib4fvNV): GL_PREFIX(VertexAttrib4sNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6096(%rax), %r11 + movq 6256(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28735,13 +29627,13 @@ GL_PREFIX(VertexAttrib4sNV): popq %rdx popq %rsi popq %rdi - movq 6096(%rax), %r11 + movq 6256(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6096(%rax), %r11 + movq 6256(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28755,7 +29647,7 @@ GL_PREFIX(VertexAttrib4sNV): popq %rdx popq %rsi popq %rdi - movq 6096(%rax), %r11 + movq 6256(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4sNV), .-GL_PREFIX(VertexAttrib4sNV) @@ -28766,7 +29658,7 @@ GL_PREFIX(VertexAttrib4sNV): GL_PREFIX(VertexAttrib4svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6104(%rax), %r11 + movq 6264(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28776,13 +29668,13 @@ GL_PREFIX(VertexAttrib4svNV): popq %rbp popq %rsi popq %rdi - movq 6104(%rax), %r11 + movq 6264(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6104(%rax), %r11 + movq 6264(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28792,7 +29684,7 @@ GL_PREFIX(VertexAttrib4svNV): popq %rbp popq %rsi popq %rdi - movq 6104(%rax), %r11 + movq 6264(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4svNV), .-GL_PREFIX(VertexAttrib4svNV) @@ -28803,7 +29695,7 @@ GL_PREFIX(VertexAttrib4svNV): GL_PREFIX(VertexAttrib4ubNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6112(%rax), %r11 + movq 6272(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28817,13 +29709,13 @@ GL_PREFIX(VertexAttrib4ubNV): popq %rdx popq %rsi popq %rdi - movq 6112(%rax), %r11 + movq 6272(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6112(%rax), %r11 + movq 6272(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28837,7 +29729,7 @@ GL_PREFIX(VertexAttrib4ubNV): popq %rdx popq %rsi popq %rdi - movq 6112(%rax), %r11 + movq 6272(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4ubNV), .-GL_PREFIX(VertexAttrib4ubNV) @@ -28848,7 +29740,7 @@ GL_PREFIX(VertexAttrib4ubNV): GL_PREFIX(VertexAttrib4ubvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6120(%rax), %r11 + movq 6280(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28858,13 +29750,13 @@ GL_PREFIX(VertexAttrib4ubvNV): popq %rbp popq %rsi popq %rdi - movq 6120(%rax), %r11 + movq 6280(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6120(%rax), %r11 + movq 6280(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28874,7 +29766,7 @@ GL_PREFIX(VertexAttrib4ubvNV): popq %rbp popq %rsi popq %rdi - movq 6120(%rax), %r11 + movq 6280(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4ubvNV), .-GL_PREFIX(VertexAttrib4ubvNV) @@ -28885,7 +29777,7 @@ GL_PREFIX(VertexAttrib4ubvNV): GL_PREFIX(VertexAttribPointerNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6128(%rax), %r11 + movq 6288(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28899,13 +29791,13 @@ GL_PREFIX(VertexAttribPointerNV): popq %rdx popq %rsi popq %rdi - movq 6128(%rax), %r11 + movq 6288(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6128(%rax), %r11 + movq 6288(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28919,7 +29811,7 @@ GL_PREFIX(VertexAttribPointerNV): popq %rdx popq %rsi popq %rdi - movq 6128(%rax), %r11 + movq 6288(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribPointerNV), .-GL_PREFIX(VertexAttribPointerNV) @@ -28930,7 +29822,7 @@ GL_PREFIX(VertexAttribPointerNV): GL_PREFIX(VertexAttribs1dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6136(%rax), %r11 + movq 6296(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28940,13 +29832,13 @@ GL_PREFIX(VertexAttribs1dvNV): popq %rdx popq %rsi popq %rdi - movq 6136(%rax), %r11 + movq 6296(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6136(%rax), %r11 + movq 6296(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28956,7 +29848,7 @@ GL_PREFIX(VertexAttribs1dvNV): popq %rdx popq %rsi popq %rdi - movq 6136(%rax), %r11 + movq 6296(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs1dvNV), .-GL_PREFIX(VertexAttribs1dvNV) @@ -28967,7 +29859,7 @@ GL_PREFIX(VertexAttribs1dvNV): GL_PREFIX(VertexAttribs1fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6144(%rax), %r11 + movq 6304(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28977,13 +29869,13 @@ GL_PREFIX(VertexAttribs1fvNV): popq %rdx popq %rsi popq %rdi - movq 6144(%rax), %r11 + movq 6304(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6144(%rax), %r11 + movq 6304(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28993,7 +29885,7 @@ GL_PREFIX(VertexAttribs1fvNV): popq %rdx popq %rsi popq %rdi - movq 6144(%rax), %r11 + movq 6304(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs1fvNV), .-GL_PREFIX(VertexAttribs1fvNV) @@ -29004,7 +29896,7 @@ GL_PREFIX(VertexAttribs1fvNV): GL_PREFIX(VertexAttribs1svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6152(%rax), %r11 + movq 6312(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29014,13 +29906,13 @@ GL_PREFIX(VertexAttribs1svNV): popq %rdx popq %rsi popq %rdi - movq 6152(%rax), %r11 + movq 6312(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6152(%rax), %r11 + movq 6312(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29030,7 +29922,7 @@ GL_PREFIX(VertexAttribs1svNV): popq %rdx popq %rsi popq %rdi - movq 6152(%rax), %r11 + movq 6312(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs1svNV), .-GL_PREFIX(VertexAttribs1svNV) @@ -29041,7 +29933,7 @@ GL_PREFIX(VertexAttribs1svNV): GL_PREFIX(VertexAttribs2dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6160(%rax), %r11 + movq 6320(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29051,13 +29943,13 @@ GL_PREFIX(VertexAttribs2dvNV): popq %rdx popq %rsi popq %rdi - movq 6160(%rax), %r11 + movq 6320(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6160(%rax), %r11 + movq 6320(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29067,7 +29959,7 @@ GL_PREFIX(VertexAttribs2dvNV): popq %rdx popq %rsi popq %rdi - movq 6160(%rax), %r11 + movq 6320(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs2dvNV), .-GL_PREFIX(VertexAttribs2dvNV) @@ -29078,7 +29970,7 @@ GL_PREFIX(VertexAttribs2dvNV): GL_PREFIX(VertexAttribs2fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6168(%rax), %r11 + movq 6328(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29088,13 +29980,13 @@ GL_PREFIX(VertexAttribs2fvNV): popq %rdx popq %rsi popq %rdi - movq 6168(%rax), %r11 + movq 6328(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6168(%rax), %r11 + movq 6328(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29104,7 +29996,7 @@ GL_PREFIX(VertexAttribs2fvNV): popq %rdx popq %rsi popq %rdi - movq 6168(%rax), %r11 + movq 6328(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs2fvNV), .-GL_PREFIX(VertexAttribs2fvNV) @@ -29115,7 +30007,7 @@ GL_PREFIX(VertexAttribs2fvNV): GL_PREFIX(VertexAttribs2svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6176(%rax), %r11 + movq 6336(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29125,13 +30017,13 @@ GL_PREFIX(VertexAttribs2svNV): popq %rdx popq %rsi popq %rdi - movq 6176(%rax), %r11 + movq 6336(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6176(%rax), %r11 + movq 6336(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29141,7 +30033,7 @@ GL_PREFIX(VertexAttribs2svNV): popq %rdx popq %rsi popq %rdi - movq 6176(%rax), %r11 + movq 6336(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs2svNV), .-GL_PREFIX(VertexAttribs2svNV) @@ -29152,7 +30044,7 @@ GL_PREFIX(VertexAttribs2svNV): GL_PREFIX(VertexAttribs3dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6184(%rax), %r11 + movq 6344(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29162,13 +30054,13 @@ GL_PREFIX(VertexAttribs3dvNV): popq %rdx popq %rsi popq %rdi - movq 6184(%rax), %r11 + movq 6344(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6184(%rax), %r11 + movq 6344(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29178,7 +30070,7 @@ GL_PREFIX(VertexAttribs3dvNV): popq %rdx popq %rsi popq %rdi - movq 6184(%rax), %r11 + movq 6344(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs3dvNV), .-GL_PREFIX(VertexAttribs3dvNV) @@ -29189,7 +30081,7 @@ GL_PREFIX(VertexAttribs3dvNV): GL_PREFIX(VertexAttribs3fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6192(%rax), %r11 + movq 6352(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29199,13 +30091,13 @@ GL_PREFIX(VertexAttribs3fvNV): popq %rdx popq %rsi popq %rdi - movq 6192(%rax), %r11 + movq 6352(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6192(%rax), %r11 + movq 6352(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29215,7 +30107,7 @@ GL_PREFIX(VertexAttribs3fvNV): popq %rdx popq %rsi popq %rdi - movq 6192(%rax), %r11 + movq 6352(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs3fvNV), .-GL_PREFIX(VertexAttribs3fvNV) @@ -29226,7 +30118,7 @@ GL_PREFIX(VertexAttribs3fvNV): GL_PREFIX(VertexAttribs3svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6200(%rax), %r11 + movq 6360(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29236,13 +30128,13 @@ GL_PREFIX(VertexAttribs3svNV): popq %rdx popq %rsi popq %rdi - movq 6200(%rax), %r11 + movq 6360(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6200(%rax), %r11 + movq 6360(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29252,7 +30144,7 @@ GL_PREFIX(VertexAttribs3svNV): popq %rdx popq %rsi popq %rdi - movq 6200(%rax), %r11 + movq 6360(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs3svNV), .-GL_PREFIX(VertexAttribs3svNV) @@ -29263,7 +30155,7 @@ GL_PREFIX(VertexAttribs3svNV): GL_PREFIX(VertexAttribs4dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6208(%rax), %r11 + movq 6368(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29273,13 +30165,13 @@ GL_PREFIX(VertexAttribs4dvNV): popq %rdx popq %rsi popq %rdi - movq 6208(%rax), %r11 + movq 6368(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6208(%rax), %r11 + movq 6368(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29289,7 +30181,7 @@ GL_PREFIX(VertexAttribs4dvNV): popq %rdx popq %rsi popq %rdi - movq 6208(%rax), %r11 + movq 6368(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs4dvNV), .-GL_PREFIX(VertexAttribs4dvNV) @@ -29300,7 +30192,7 @@ GL_PREFIX(VertexAttribs4dvNV): GL_PREFIX(VertexAttribs4fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6216(%rax), %r11 + movq 6376(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29310,13 +30202,13 @@ GL_PREFIX(VertexAttribs4fvNV): popq %rdx popq %rsi popq %rdi - movq 6216(%rax), %r11 + movq 6376(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6216(%rax), %r11 + movq 6376(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29326,7 +30218,7 @@ GL_PREFIX(VertexAttribs4fvNV): popq %rdx popq %rsi popq %rdi - movq 6216(%rax), %r11 + movq 6376(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs4fvNV), .-GL_PREFIX(VertexAttribs4fvNV) @@ -29337,7 +30229,7 @@ GL_PREFIX(VertexAttribs4fvNV): GL_PREFIX(VertexAttribs4svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6224(%rax), %r11 + movq 6384(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29347,13 +30239,13 @@ GL_PREFIX(VertexAttribs4svNV): popq %rdx popq %rsi popq %rdi - movq 6224(%rax), %r11 + movq 6384(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6224(%rax), %r11 + movq 6384(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29363,7 +30255,7 @@ GL_PREFIX(VertexAttribs4svNV): popq %rdx popq %rsi popq %rdi - movq 6224(%rax), %r11 + movq 6384(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs4svNV), .-GL_PREFIX(VertexAttribs4svNV) @@ -29374,7 +30266,7 @@ GL_PREFIX(VertexAttribs4svNV): GL_PREFIX(VertexAttribs4ubvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6232(%rax), %r11 + movq 6392(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29384,13 +30276,13 @@ GL_PREFIX(VertexAttribs4ubvNV): popq %rdx popq %rsi popq %rdi - movq 6232(%rax), %r11 + movq 6392(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6232(%rax), %r11 + movq 6392(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29400,7 +30292,7 @@ GL_PREFIX(VertexAttribs4ubvNV): popq %rdx popq %rsi popq %rdi - movq 6232(%rax), %r11 + movq 6392(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs4ubvNV), .-GL_PREFIX(VertexAttribs4ubvNV) @@ -29411,7 +30303,7 @@ GL_PREFIX(VertexAttribs4ubvNV): GL_PREFIX(GetTexBumpParameterfvATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6240(%rax), %r11 + movq 6400(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29421,13 +30313,13 @@ GL_PREFIX(GetTexBumpParameterfvATI): popq %rbp popq %rsi popq %rdi - movq 6240(%rax), %r11 + movq 6400(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6240(%rax), %r11 + movq 6400(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29437,7 +30329,7 @@ GL_PREFIX(GetTexBumpParameterfvATI): popq %rbp popq %rsi popq %rdi - movq 6240(%rax), %r11 + movq 6400(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTexBumpParameterfvATI), .-GL_PREFIX(GetTexBumpParameterfvATI) @@ -29448,7 +30340,7 @@ GL_PREFIX(GetTexBumpParameterfvATI): GL_PREFIX(GetTexBumpParameterivATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6248(%rax), %r11 + movq 6408(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29458,13 +30350,13 @@ GL_PREFIX(GetTexBumpParameterivATI): popq %rbp popq %rsi popq %rdi - movq 6248(%rax), %r11 + movq 6408(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6248(%rax), %r11 + movq 6408(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29474,7 +30366,7 @@ GL_PREFIX(GetTexBumpParameterivATI): popq %rbp popq %rsi popq %rdi - movq 6248(%rax), %r11 + movq 6408(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTexBumpParameterivATI), .-GL_PREFIX(GetTexBumpParameterivATI) @@ -29485,7 +30377,7 @@ GL_PREFIX(GetTexBumpParameterivATI): GL_PREFIX(TexBumpParameterfvATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6256(%rax), %r11 + movq 6416(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29495,13 +30387,13 @@ GL_PREFIX(TexBumpParameterfvATI): popq %rbp popq %rsi popq %rdi - movq 6256(%rax), %r11 + movq 6416(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6256(%rax), %r11 + movq 6416(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29511,7 +30403,7 @@ GL_PREFIX(TexBumpParameterfvATI): popq %rbp popq %rsi popq %rdi - movq 6256(%rax), %r11 + movq 6416(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexBumpParameterfvATI), .-GL_PREFIX(TexBumpParameterfvATI) @@ -29522,7 +30414,7 @@ GL_PREFIX(TexBumpParameterfvATI): GL_PREFIX(TexBumpParameterivATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6264(%rax), %r11 + movq 6424(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29532,13 +30424,13 @@ GL_PREFIX(TexBumpParameterivATI): popq %rbp popq %rsi popq %rdi - movq 6264(%rax), %r11 + movq 6424(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6264(%rax), %r11 + movq 6424(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29548,7 +30440,7 @@ GL_PREFIX(TexBumpParameterivATI): popq %rbp popq %rsi popq %rdi - movq 6264(%rax), %r11 + movq 6424(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexBumpParameterivATI), .-GL_PREFIX(TexBumpParameterivATI) @@ -29559,7 +30451,7 @@ GL_PREFIX(TexBumpParameterivATI): GL_PREFIX(AlphaFragmentOp1ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6272(%rax), %r11 + movq 6432(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29577,13 +30469,13 @@ GL_PREFIX(AlphaFragmentOp1ATI): popq %rdx popq %rsi popq %rdi - movq 6272(%rax), %r11 + movq 6432(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6272(%rax), %r11 + movq 6432(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29601,7 +30493,7 @@ GL_PREFIX(AlphaFragmentOp1ATI): popq %rdx popq %rsi popq %rdi - movq 6272(%rax), %r11 + movq 6432(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(AlphaFragmentOp1ATI), .-GL_PREFIX(AlphaFragmentOp1ATI) @@ -29612,7 +30504,7 @@ GL_PREFIX(AlphaFragmentOp1ATI): GL_PREFIX(AlphaFragmentOp2ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6280(%rax), %r11 + movq 6440(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29630,13 +30522,13 @@ GL_PREFIX(AlphaFragmentOp2ATI): popq %rdx popq %rsi popq %rdi - movq 6280(%rax), %r11 + movq 6440(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6280(%rax), %r11 + movq 6440(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29654,7 +30546,7 @@ GL_PREFIX(AlphaFragmentOp2ATI): popq %rdx popq %rsi popq %rdi - movq 6280(%rax), %r11 + movq 6440(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(AlphaFragmentOp2ATI), .-GL_PREFIX(AlphaFragmentOp2ATI) @@ -29665,7 +30557,7 @@ GL_PREFIX(AlphaFragmentOp2ATI): GL_PREFIX(AlphaFragmentOp3ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6288(%rax), %r11 + movq 6448(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29683,13 +30575,13 @@ GL_PREFIX(AlphaFragmentOp3ATI): popq %rdx popq %rsi popq %rdi - movq 6288(%rax), %r11 + movq 6448(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6288(%rax), %r11 + movq 6448(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29707,7 +30599,7 @@ GL_PREFIX(AlphaFragmentOp3ATI): popq %rdx popq %rsi popq %rdi - movq 6288(%rax), %r11 + movq 6448(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(AlphaFragmentOp3ATI), .-GL_PREFIX(AlphaFragmentOp3ATI) @@ -29718,25 +30610,25 @@ GL_PREFIX(AlphaFragmentOp3ATI): GL_PREFIX(BeginFragmentShaderATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6296(%rax), %r11 + movq 6456(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 6296(%rax), %r11 + movq 6456(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6296(%rax), %r11 + movq 6456(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 6296(%rax), %r11 + movq 6456(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BeginFragmentShaderATI), .-GL_PREFIX(BeginFragmentShaderATI) @@ -29747,25 +30639,25 @@ GL_PREFIX(BeginFragmentShaderATI): GL_PREFIX(BindFragmentShaderATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6304(%rax), %r11 + movq 6464(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6304(%rax), %r11 + movq 6464(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6304(%rax), %r11 + movq 6464(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6304(%rax), %r11 + movq 6464(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindFragmentShaderATI), .-GL_PREFIX(BindFragmentShaderATI) @@ -29776,7 +30668,7 @@ GL_PREFIX(BindFragmentShaderATI): GL_PREFIX(ColorFragmentOp1ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6312(%rax), %r11 + movq 6472(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29794,13 +30686,13 @@ GL_PREFIX(ColorFragmentOp1ATI): popq %rdx popq %rsi popq %rdi - movq 6312(%rax), %r11 + movq 6472(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6312(%rax), %r11 + movq 6472(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29818,7 +30710,7 @@ GL_PREFIX(ColorFragmentOp1ATI): popq %rdx popq %rsi popq %rdi - movq 6312(%rax), %r11 + movq 6472(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorFragmentOp1ATI), .-GL_PREFIX(ColorFragmentOp1ATI) @@ -29829,7 +30721,7 @@ GL_PREFIX(ColorFragmentOp1ATI): GL_PREFIX(ColorFragmentOp2ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6320(%rax), %r11 + movq 6480(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29847,13 +30739,13 @@ GL_PREFIX(ColorFragmentOp2ATI): popq %rdx popq %rsi popq %rdi - movq 6320(%rax), %r11 + movq 6480(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6320(%rax), %r11 + movq 6480(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29871,7 +30763,7 @@ GL_PREFIX(ColorFragmentOp2ATI): popq %rdx popq %rsi popq %rdi - movq 6320(%rax), %r11 + movq 6480(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorFragmentOp2ATI), .-GL_PREFIX(ColorFragmentOp2ATI) @@ -29882,7 +30774,7 @@ GL_PREFIX(ColorFragmentOp2ATI): GL_PREFIX(ColorFragmentOp3ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6328(%rax), %r11 + movq 6488(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29900,13 +30792,13 @@ GL_PREFIX(ColorFragmentOp3ATI): popq %rdx popq %rsi popq %rdi - movq 6328(%rax), %r11 + movq 6488(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6328(%rax), %r11 + movq 6488(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29924,7 +30816,7 @@ GL_PREFIX(ColorFragmentOp3ATI): popq %rdx popq %rsi popq %rdi - movq 6328(%rax), %r11 + movq 6488(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorFragmentOp3ATI), .-GL_PREFIX(ColorFragmentOp3ATI) @@ -29935,25 +30827,25 @@ GL_PREFIX(ColorFragmentOp3ATI): GL_PREFIX(DeleteFragmentShaderATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6336(%rax), %r11 + movq 6496(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6336(%rax), %r11 + movq 6496(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6336(%rax), %r11 + movq 6496(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6336(%rax), %r11 + movq 6496(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteFragmentShaderATI), .-GL_PREFIX(DeleteFragmentShaderATI) @@ -29964,25 +30856,25 @@ GL_PREFIX(DeleteFragmentShaderATI): GL_PREFIX(EndFragmentShaderATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6344(%rax), %r11 + movq 6504(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 6344(%rax), %r11 + movq 6504(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6344(%rax), %r11 + movq 6504(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 6344(%rax), %r11 + movq 6504(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EndFragmentShaderATI), .-GL_PREFIX(EndFragmentShaderATI) @@ -29993,25 +30885,25 @@ GL_PREFIX(EndFragmentShaderATI): GL_PREFIX(GenFragmentShadersATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6352(%rax), %r11 + movq 6512(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6352(%rax), %r11 + movq 6512(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6352(%rax), %r11 + movq 6512(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6352(%rax), %r11 + movq 6512(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenFragmentShadersATI), .-GL_PREFIX(GenFragmentShadersATI) @@ -30022,7 +30914,7 @@ GL_PREFIX(GenFragmentShadersATI): GL_PREFIX(PassTexCoordATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6360(%rax), %r11 + movq 6520(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30032,13 +30924,13 @@ GL_PREFIX(PassTexCoordATI): popq %rdx popq %rsi popq %rdi - movq 6360(%rax), %r11 + movq 6520(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6360(%rax), %r11 + movq 6520(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30048,7 +30940,7 @@ GL_PREFIX(PassTexCoordATI): popq %rdx popq %rsi popq %rdi - movq 6360(%rax), %r11 + movq 6520(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PassTexCoordATI), .-GL_PREFIX(PassTexCoordATI) @@ -30059,7 +30951,7 @@ GL_PREFIX(PassTexCoordATI): GL_PREFIX(SampleMapATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6368(%rax), %r11 + movq 6528(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30069,13 +30961,13 @@ GL_PREFIX(SampleMapATI): popq %rdx popq %rsi popq %rdi - movq 6368(%rax), %r11 + movq 6528(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6368(%rax), %r11 + movq 6528(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30085,7 +30977,7 @@ GL_PREFIX(SampleMapATI): popq %rdx popq %rsi popq %rdi - movq 6368(%rax), %r11 + movq 6528(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SampleMapATI), .-GL_PREFIX(SampleMapATI) @@ -30096,7 +30988,7 @@ GL_PREFIX(SampleMapATI): GL_PREFIX(SetFragmentShaderConstantATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6376(%rax), %r11 + movq 6536(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30106,13 +30998,13 @@ GL_PREFIX(SetFragmentShaderConstantATI): popq %rbp popq %rsi popq %rdi - movq 6376(%rax), %r11 + movq 6536(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6376(%rax), %r11 + movq 6536(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30122,7 +31014,7 @@ GL_PREFIX(SetFragmentShaderConstantATI): popq %rbp popq %rsi popq %rdi - movq 6376(%rax), %r11 + movq 6536(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SetFragmentShaderConstantATI), .-GL_PREFIX(SetFragmentShaderConstantATI) @@ -30133,7 +31025,7 @@ GL_PREFIX(SetFragmentShaderConstantATI): GL_PREFIX(PointParameteriNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6384(%rax), %r11 + movq 6544(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30143,13 +31035,13 @@ GL_PREFIX(PointParameteriNV): popq %rbp popq %rsi popq %rdi - movq 6384(%rax), %r11 + movq 6544(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6384(%rax), %r11 + movq 6544(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30159,7 +31051,7 @@ GL_PREFIX(PointParameteriNV): popq %rbp popq %rsi popq %rdi - movq 6384(%rax), %r11 + movq 6544(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PointParameteriNV), .-GL_PREFIX(PointParameteriNV) @@ -30170,7 +31062,7 @@ GL_PREFIX(PointParameteriNV): GL_PREFIX(PointParameterivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6392(%rax), %r11 + movq 6552(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30180,13 +31072,13 @@ GL_PREFIX(PointParameterivNV): popq %rbp popq %rsi popq %rdi - movq 6392(%rax), %r11 + movq 6552(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6392(%rax), %r11 + movq 6552(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30196,79 +31088,79 @@ GL_PREFIX(PointParameterivNV): popq %rbp popq %rsi popq %rdi - movq 6392(%rax), %r11 + movq 6552(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PointParameterivNV), .-GL_PREFIX(PointParameterivNV) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_800) - .type GL_PREFIX(_dispatch_stub_800), @function - HIDDEN(GL_PREFIX(_dispatch_stub_800)) -GL_PREFIX(_dispatch_stub_800): + .globl GL_PREFIX(_dispatch_stub_820) + .type GL_PREFIX(_dispatch_stub_820), @function + HIDDEN(GL_PREFIX(_dispatch_stub_820)) +GL_PREFIX(_dispatch_stub_820): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6400(%rax), %r11 + movq 6560(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6400(%rax), %r11 + movq 6560(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6400(%rax), %r11 + movq 6560(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6400(%rax), %r11 + movq 6560(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_800), .-GL_PREFIX(_dispatch_stub_800) + .size GL_PREFIX(_dispatch_stub_820), .-GL_PREFIX(_dispatch_stub_820) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_801) - .type GL_PREFIX(_dispatch_stub_801), @function - HIDDEN(GL_PREFIX(_dispatch_stub_801)) -GL_PREFIX(_dispatch_stub_801): + .globl GL_PREFIX(_dispatch_stub_821) + .type GL_PREFIX(_dispatch_stub_821), @function + HIDDEN(GL_PREFIX(_dispatch_stub_821)) +GL_PREFIX(_dispatch_stub_821): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6408(%rax), %r11 + movq 6568(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6408(%rax), %r11 + movq 6568(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6408(%rax), %r11 + movq 6568(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6408(%rax), %r11 + movq 6568(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_801), .-GL_PREFIX(_dispatch_stub_801) + .size GL_PREFIX(_dispatch_stub_821), .-GL_PREFIX(_dispatch_stub_821) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_802) - .type GL_PREFIX(_dispatch_stub_802), @function - HIDDEN(GL_PREFIX(_dispatch_stub_802)) -GL_PREFIX(_dispatch_stub_802): + .globl GL_PREFIX(_dispatch_stub_822) + .type GL_PREFIX(_dispatch_stub_822), @function + HIDDEN(GL_PREFIX(_dispatch_stub_822)) +GL_PREFIX(_dispatch_stub_822): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6416(%rax), %r11 + movq 6576(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30278,13 +31170,13 @@ GL_PREFIX(_dispatch_stub_802): popq %rbp popq %rsi popq %rdi - movq 6416(%rax), %r11 + movq 6576(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6416(%rax), %r11 + movq 6576(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30294,19 +31186,19 @@ GL_PREFIX(_dispatch_stub_802): popq %rbp popq %rsi popq %rdi - movq 6416(%rax), %r11 + movq 6576(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_802), .-GL_PREFIX(_dispatch_stub_802) + .size GL_PREFIX(_dispatch_stub_822), .-GL_PREFIX(_dispatch_stub_822) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_803) - .type GL_PREFIX(_dispatch_stub_803), @function - HIDDEN(GL_PREFIX(_dispatch_stub_803)) -GL_PREFIX(_dispatch_stub_803): + .globl GL_PREFIX(_dispatch_stub_823) + .type GL_PREFIX(_dispatch_stub_823), @function + HIDDEN(GL_PREFIX(_dispatch_stub_823)) +GL_PREFIX(_dispatch_stub_823): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6424(%rax), %r11 + movq 6584(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30316,13 +31208,13 @@ GL_PREFIX(_dispatch_stub_803): popq %rbp popq %rsi popq %rdi - movq 6424(%rax), %r11 + movq 6584(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6424(%rax), %r11 + movq 6584(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30332,40 +31224,40 @@ GL_PREFIX(_dispatch_stub_803): popq %rbp popq %rsi popq %rdi - movq 6424(%rax), %r11 + movq 6584(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_803), .-GL_PREFIX(_dispatch_stub_803) + .size GL_PREFIX(_dispatch_stub_823), .-GL_PREFIX(_dispatch_stub_823) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_804) - .type GL_PREFIX(_dispatch_stub_804), @function - HIDDEN(GL_PREFIX(_dispatch_stub_804)) -GL_PREFIX(_dispatch_stub_804): + .globl GL_PREFIX(_dispatch_stub_824) + .type GL_PREFIX(_dispatch_stub_824), @function + HIDDEN(GL_PREFIX(_dispatch_stub_824)) +GL_PREFIX(_dispatch_stub_824): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6432(%rax), %r11 + movq 6592(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6432(%rax), %r11 + movq 6592(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6432(%rax), %r11 + movq 6592(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6432(%rax), %r11 + movq 6592(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_804), .-GL_PREFIX(_dispatch_stub_804) + .size GL_PREFIX(_dispatch_stub_824), .-GL_PREFIX(_dispatch_stub_824) .p2align 4,,15 .globl GL_PREFIX(GetProgramNamedParameterdvNV) @@ -30373,7 +31265,7 @@ GL_PREFIX(_dispatch_stub_804): GL_PREFIX(GetProgramNamedParameterdvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6440(%rax), %r11 + movq 6600(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30387,13 +31279,13 @@ GL_PREFIX(GetProgramNamedParameterdvNV): popq %rdx popq %rsi popq %rdi - movq 6440(%rax), %r11 + movq 6600(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6440(%rax), %r11 + movq 6600(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30407,7 +31299,7 @@ GL_PREFIX(GetProgramNamedParameterdvNV): popq %rdx popq %rsi popq %rdi - movq 6440(%rax), %r11 + movq 6600(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramNamedParameterdvNV), .-GL_PREFIX(GetProgramNamedParameterdvNV) @@ -30418,7 +31310,7 @@ GL_PREFIX(GetProgramNamedParameterdvNV): GL_PREFIX(GetProgramNamedParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6448(%rax), %r11 + movq 6608(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30432,13 +31324,13 @@ GL_PREFIX(GetProgramNamedParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 6448(%rax), %r11 + movq 6608(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6448(%rax), %r11 + movq 6608(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30452,7 +31344,7 @@ GL_PREFIX(GetProgramNamedParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 6448(%rax), %r11 + movq 6608(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramNamedParameterfvNV), .-GL_PREFIX(GetProgramNamedParameterfvNV) @@ -30463,7 +31355,7 @@ GL_PREFIX(GetProgramNamedParameterfvNV): GL_PREFIX(ProgramNamedParameter4dNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6456(%rax), %r11 + movq 6616(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $56, %rsp @@ -30483,13 +31375,13 @@ GL_PREFIX(ProgramNamedParameter4dNV): movq 8(%rsp), %rsi movq (%rsp), %rdi addq $56, %rsp - movq 6456(%rax), %r11 + movq 6616(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6456(%rax), %r11 + movq 6616(%rax), %r11 jmp *%r11 1: subq $56, %rsp @@ -30509,7 +31401,7 @@ GL_PREFIX(ProgramNamedParameter4dNV): movq 8(%rsp), %rsi movq (%rsp), %rdi addq $56, %rsp - movq 6456(%rax), %r11 + movq 6616(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramNamedParameter4dNV), .-GL_PREFIX(ProgramNamedParameter4dNV) @@ -30520,7 +31412,7 @@ GL_PREFIX(ProgramNamedParameter4dNV): GL_PREFIX(ProgramNamedParameter4dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6464(%rax), %r11 + movq 6624(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30534,13 +31426,13 @@ GL_PREFIX(ProgramNamedParameter4dvNV): popq %rdx popq %rsi popq %rdi - movq 6464(%rax), %r11 + movq 6624(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6464(%rax), %r11 + movq 6624(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30554,7 +31446,7 @@ GL_PREFIX(ProgramNamedParameter4dvNV): popq %rdx popq %rsi popq %rdi - movq 6464(%rax), %r11 + movq 6624(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramNamedParameter4dvNV), .-GL_PREFIX(ProgramNamedParameter4dvNV) @@ -30565,7 +31457,7 @@ GL_PREFIX(ProgramNamedParameter4dvNV): GL_PREFIX(ProgramNamedParameter4fNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6472(%rax), %r11 + movq 6632(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $56, %rsp @@ -30585,13 +31477,13 @@ GL_PREFIX(ProgramNamedParameter4fNV): movq 8(%rsp), %rsi movq (%rsp), %rdi addq $56, %rsp - movq 6472(%rax), %r11 + movq 6632(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6472(%rax), %r11 + movq 6632(%rax), %r11 jmp *%r11 1: subq $56, %rsp @@ -30611,7 +31503,7 @@ GL_PREFIX(ProgramNamedParameter4fNV): movq 8(%rsp), %rsi movq (%rsp), %rdi addq $56, %rsp - movq 6472(%rax), %r11 + movq 6632(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramNamedParameter4fNV), .-GL_PREFIX(ProgramNamedParameter4fNV) @@ -30622,7 +31514,7 @@ GL_PREFIX(ProgramNamedParameter4fNV): GL_PREFIX(ProgramNamedParameter4fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6480(%rax), %r11 + movq 6640(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30636,13 +31528,13 @@ GL_PREFIX(ProgramNamedParameter4fvNV): popq %rdx popq %rsi popq %rdi - movq 6480(%rax), %r11 + movq 6640(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6480(%rax), %r11 + movq 6640(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30656,7 +31548,7 @@ GL_PREFIX(ProgramNamedParameter4fvNV): popq %rdx popq %rsi popq %rdi - movq 6480(%rax), %r11 + movq 6640(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramNamedParameter4fvNV), .-GL_PREFIX(ProgramNamedParameter4fvNV) @@ -30667,25 +31559,25 @@ GL_PREFIX(ProgramNamedParameter4fvNV): GL_PREFIX(PrimitiveRestartIndexNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6488(%rax), %r11 + movq 6648(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6488(%rax), %r11 + movq 6648(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6488(%rax), %r11 + movq 6648(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6488(%rax), %r11 + movq 6648(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PrimitiveRestartIndexNV), .-GL_PREFIX(PrimitiveRestartIndexNV) @@ -30696,37 +31588,37 @@ GL_PREFIX(PrimitiveRestartIndexNV): GL_PREFIX(PrimitiveRestartNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6496(%rax), %r11 + movq 6656(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 6496(%rax), %r11 + movq 6656(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6496(%rax), %r11 + movq 6656(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 6496(%rax), %r11 + movq 6656(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PrimitiveRestartNV), .-GL_PREFIX(PrimitiveRestartNV) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_813) - .type GL_PREFIX(_dispatch_stub_813), @function - HIDDEN(GL_PREFIX(_dispatch_stub_813)) -GL_PREFIX(_dispatch_stub_813): + .globl GL_PREFIX(_dispatch_stub_833) + .type GL_PREFIX(_dispatch_stub_833), @function + HIDDEN(GL_PREFIX(_dispatch_stub_833)) +GL_PREFIX(_dispatch_stub_833): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6504(%rax), %r11 + movq 6664(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30736,13 +31628,13 @@ GL_PREFIX(_dispatch_stub_813): popq %rbp popq %rsi popq %rdi - movq 6504(%rax), %r11 + movq 6664(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6504(%rax), %r11 + movq 6664(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30752,19 +31644,19 @@ GL_PREFIX(_dispatch_stub_813): popq %rbp popq %rsi popq %rdi - movq 6504(%rax), %r11 + movq 6664(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_813), .-GL_PREFIX(_dispatch_stub_813) + .size GL_PREFIX(_dispatch_stub_833), .-GL_PREFIX(_dispatch_stub_833) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_814) - .type GL_PREFIX(_dispatch_stub_814), @function - HIDDEN(GL_PREFIX(_dispatch_stub_814)) -GL_PREFIX(_dispatch_stub_814): + .globl GL_PREFIX(_dispatch_stub_834) + .type GL_PREFIX(_dispatch_stub_834), @function + HIDDEN(GL_PREFIX(_dispatch_stub_834)) +GL_PREFIX(_dispatch_stub_834): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6512(%rax), %r11 + movq 6672(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30774,13 +31666,13 @@ GL_PREFIX(_dispatch_stub_814): popq %rbp popq %rsi popq %rdi - movq 6512(%rax), %r11 + movq 6672(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6512(%rax), %r11 + movq 6672(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30790,10 +31682,10 @@ GL_PREFIX(_dispatch_stub_814): popq %rbp popq %rsi popq %rdi - movq 6512(%rax), %r11 + movq 6672(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_814), .-GL_PREFIX(_dispatch_stub_814) + .size GL_PREFIX(_dispatch_stub_834), .-GL_PREFIX(_dispatch_stub_834) .p2align 4,,15 .globl GL_PREFIX(BindFramebufferEXT) @@ -30801,7 +31693,7 @@ GL_PREFIX(_dispatch_stub_814): GL_PREFIX(BindFramebufferEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6520(%rax), %r11 + movq 6680(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30811,13 +31703,13 @@ GL_PREFIX(BindFramebufferEXT): popq %rbp popq %rsi popq %rdi - movq 6520(%rax), %r11 + movq 6680(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6520(%rax), %r11 + movq 6680(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30827,7 +31719,7 @@ GL_PREFIX(BindFramebufferEXT): popq %rbp popq %rsi popq %rdi - movq 6520(%rax), %r11 + movq 6680(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindFramebufferEXT), .-GL_PREFIX(BindFramebufferEXT) @@ -30838,7 +31730,7 @@ GL_PREFIX(BindFramebufferEXT): GL_PREFIX(BindRenderbufferEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6528(%rax), %r11 + movq 6688(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30848,13 +31740,13 @@ GL_PREFIX(BindRenderbufferEXT): popq %rbp popq %rsi popq %rdi - movq 6528(%rax), %r11 + movq 6688(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6528(%rax), %r11 + movq 6688(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30864,7 +31756,7 @@ GL_PREFIX(BindRenderbufferEXT): popq %rbp popq %rsi popq %rdi - movq 6528(%rax), %r11 + movq 6688(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindRenderbufferEXT), .-GL_PREFIX(BindRenderbufferEXT) @@ -30875,25 +31767,25 @@ GL_PREFIX(BindRenderbufferEXT): GL_PREFIX(CheckFramebufferStatusEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6536(%rax), %r11 + movq 6696(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6536(%rax), %r11 + movq 6696(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6536(%rax), %r11 + movq 6696(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6536(%rax), %r11 + movq 6696(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CheckFramebufferStatusEXT), .-GL_PREFIX(CheckFramebufferStatusEXT) @@ -30904,7 +31796,7 @@ GL_PREFIX(CheckFramebufferStatusEXT): GL_PREFIX(DeleteFramebuffersEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6544(%rax), %r11 + movq 6704(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30914,13 +31806,13 @@ GL_PREFIX(DeleteFramebuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6544(%rax), %r11 + movq 6704(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6544(%rax), %r11 + movq 6704(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30930,7 +31822,7 @@ GL_PREFIX(DeleteFramebuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6544(%rax), %r11 + movq 6704(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteFramebuffersEXT), .-GL_PREFIX(DeleteFramebuffersEXT) @@ -30941,7 +31833,7 @@ GL_PREFIX(DeleteFramebuffersEXT): GL_PREFIX(DeleteRenderbuffersEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6552(%rax), %r11 + movq 6712(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30951,13 +31843,13 @@ GL_PREFIX(DeleteRenderbuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6552(%rax), %r11 + movq 6712(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6552(%rax), %r11 + movq 6712(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30967,7 +31859,7 @@ GL_PREFIX(DeleteRenderbuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6552(%rax), %r11 + movq 6712(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteRenderbuffersEXT), .-GL_PREFIX(DeleteRenderbuffersEXT) @@ -30978,7 +31870,7 @@ GL_PREFIX(DeleteRenderbuffersEXT): GL_PREFIX(FramebufferRenderbufferEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6560(%rax), %r11 + movq 6720(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30992,13 +31884,13 @@ GL_PREFIX(FramebufferRenderbufferEXT): popq %rdx popq %rsi popq %rdi - movq 6560(%rax), %r11 + movq 6720(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6560(%rax), %r11 + movq 6720(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31012,7 +31904,7 @@ GL_PREFIX(FramebufferRenderbufferEXT): popq %rdx popq %rsi popq %rdi - movq 6560(%rax), %r11 + movq 6720(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferRenderbufferEXT), .-GL_PREFIX(FramebufferRenderbufferEXT) @@ -31023,7 +31915,7 @@ GL_PREFIX(FramebufferRenderbufferEXT): GL_PREFIX(FramebufferTexture1DEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6568(%rax), %r11 + movq 6728(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31037,13 +31929,13 @@ GL_PREFIX(FramebufferTexture1DEXT): popq %rdx popq %rsi popq %rdi - movq 6568(%rax), %r11 + movq 6728(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6568(%rax), %r11 + movq 6728(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31057,7 +31949,7 @@ GL_PREFIX(FramebufferTexture1DEXT): popq %rdx popq %rsi popq %rdi - movq 6568(%rax), %r11 + movq 6728(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferTexture1DEXT), .-GL_PREFIX(FramebufferTexture1DEXT) @@ -31068,7 +31960,7 @@ GL_PREFIX(FramebufferTexture1DEXT): GL_PREFIX(FramebufferTexture2DEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6576(%rax), %r11 + movq 6736(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31082,13 +31974,13 @@ GL_PREFIX(FramebufferTexture2DEXT): popq %rdx popq %rsi popq %rdi - movq 6576(%rax), %r11 + movq 6736(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6576(%rax), %r11 + movq 6736(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31102,7 +31994,7 @@ GL_PREFIX(FramebufferTexture2DEXT): popq %rdx popq %rsi popq %rdi - movq 6576(%rax), %r11 + movq 6736(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferTexture2DEXT), .-GL_PREFIX(FramebufferTexture2DEXT) @@ -31113,7 +32005,7 @@ GL_PREFIX(FramebufferTexture2DEXT): GL_PREFIX(FramebufferTexture3DEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6584(%rax), %r11 + movq 6744(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31131,13 +32023,13 @@ GL_PREFIX(FramebufferTexture3DEXT): popq %rdx popq %rsi popq %rdi - movq 6584(%rax), %r11 + movq 6744(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6584(%rax), %r11 + movq 6744(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31155,7 +32047,7 @@ GL_PREFIX(FramebufferTexture3DEXT): popq %rdx popq %rsi popq %rdi - movq 6584(%rax), %r11 + movq 6744(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferTexture3DEXT), .-GL_PREFIX(FramebufferTexture3DEXT) @@ -31166,7 +32058,7 @@ GL_PREFIX(FramebufferTexture3DEXT): GL_PREFIX(GenFramebuffersEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6592(%rax), %r11 + movq 6752(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31176,13 +32068,13 @@ GL_PREFIX(GenFramebuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6592(%rax), %r11 + movq 6752(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6592(%rax), %r11 + movq 6752(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31192,7 +32084,7 @@ GL_PREFIX(GenFramebuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6592(%rax), %r11 + movq 6752(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenFramebuffersEXT), .-GL_PREFIX(GenFramebuffersEXT) @@ -31203,7 +32095,7 @@ GL_PREFIX(GenFramebuffersEXT): GL_PREFIX(GenRenderbuffersEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6600(%rax), %r11 + movq 6760(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31213,13 +32105,13 @@ GL_PREFIX(GenRenderbuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6600(%rax), %r11 + movq 6760(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6600(%rax), %r11 + movq 6760(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31229,7 +32121,7 @@ GL_PREFIX(GenRenderbuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6600(%rax), %r11 + movq 6760(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenRenderbuffersEXT), .-GL_PREFIX(GenRenderbuffersEXT) @@ -31240,25 +32132,25 @@ GL_PREFIX(GenRenderbuffersEXT): GL_PREFIX(GenerateMipmapEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6608(%rax), %r11 + movq 6768(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6608(%rax), %r11 + movq 6768(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6608(%rax), %r11 + movq 6768(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6608(%rax), %r11 + movq 6768(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenerateMipmapEXT), .-GL_PREFIX(GenerateMipmapEXT) @@ -31269,7 +32161,7 @@ GL_PREFIX(GenerateMipmapEXT): GL_PREFIX(GetFramebufferAttachmentParameterivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6616(%rax), %r11 + movq 6776(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31283,13 +32175,13 @@ GL_PREFIX(GetFramebufferAttachmentParameterivEXT): popq %rdx popq %rsi popq %rdi - movq 6616(%rax), %r11 + movq 6776(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6616(%rax), %r11 + movq 6776(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31303,7 +32195,7 @@ GL_PREFIX(GetFramebufferAttachmentParameterivEXT): popq %rdx popq %rsi popq %rdi - movq 6616(%rax), %r11 + movq 6776(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetFramebufferAttachmentParameterivEXT), .-GL_PREFIX(GetFramebufferAttachmentParameterivEXT) @@ -31314,7 +32206,7 @@ GL_PREFIX(GetFramebufferAttachmentParameterivEXT): GL_PREFIX(GetRenderbufferParameterivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6624(%rax), %r11 + movq 6784(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31324,13 +32216,13 @@ GL_PREFIX(GetRenderbufferParameterivEXT): popq %rdx popq %rsi popq %rdi - movq 6624(%rax), %r11 + movq 6784(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6624(%rax), %r11 + movq 6784(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31340,7 +32232,7 @@ GL_PREFIX(GetRenderbufferParameterivEXT): popq %rdx popq %rsi popq %rdi - movq 6624(%rax), %r11 + movq 6784(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetRenderbufferParameterivEXT), .-GL_PREFIX(GetRenderbufferParameterivEXT) @@ -31351,25 +32243,25 @@ GL_PREFIX(GetRenderbufferParameterivEXT): GL_PREFIX(IsFramebufferEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6632(%rax), %r11 + movq 6792(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6632(%rax), %r11 + movq 6792(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6632(%rax), %r11 + movq 6792(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6632(%rax), %r11 + movq 6792(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsFramebufferEXT), .-GL_PREFIX(IsFramebufferEXT) @@ -31380,25 +32272,25 @@ GL_PREFIX(IsFramebufferEXT): GL_PREFIX(IsRenderbufferEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6640(%rax), %r11 + movq 6800(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6640(%rax), %r11 + movq 6800(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6640(%rax), %r11 + movq 6800(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6640(%rax), %r11 + movq 6800(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsRenderbufferEXT), .-GL_PREFIX(IsRenderbufferEXT) @@ -31409,7 +32301,7 @@ GL_PREFIX(IsRenderbufferEXT): GL_PREFIX(RenderbufferStorageEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6648(%rax), %r11 + movq 6808(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31423,13 +32315,13 @@ GL_PREFIX(RenderbufferStorageEXT): popq %rdx popq %rsi popq %rdi - movq 6648(%rax), %r11 + movq 6808(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6648(%rax), %r11 + movq 6808(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31443,19 +32335,19 @@ GL_PREFIX(RenderbufferStorageEXT): popq %rdx popq %rsi popq %rdi - movq 6648(%rax), %r11 + movq 6808(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(RenderbufferStorageEXT), .-GL_PREFIX(RenderbufferStorageEXT) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_832) - .type GL_PREFIX(_dispatch_stub_832), @function - HIDDEN(GL_PREFIX(_dispatch_stub_832)) -GL_PREFIX(_dispatch_stub_832): + .globl GL_PREFIX(_dispatch_stub_852) + .type GL_PREFIX(_dispatch_stub_852), @function + HIDDEN(GL_PREFIX(_dispatch_stub_852)) +GL_PREFIX(_dispatch_stub_852): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6656(%rax), %r11 + movq 6816(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31473,13 +32365,13 @@ GL_PREFIX(_dispatch_stub_832): popq %rdx popq %rsi popq %rdi - movq 6656(%rax), %r11 + movq 6816(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6656(%rax), %r11 + movq 6816(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31497,19 +32389,19 @@ GL_PREFIX(_dispatch_stub_832): popq %rdx popq %rsi popq %rdi - movq 6656(%rax), %r11 + movq 6816(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_832), .-GL_PREFIX(_dispatch_stub_832) + .size GL_PREFIX(_dispatch_stub_852), .-GL_PREFIX(_dispatch_stub_852) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_833) - .type GL_PREFIX(_dispatch_stub_833), @function - HIDDEN(GL_PREFIX(_dispatch_stub_833)) -GL_PREFIX(_dispatch_stub_833): + .globl GL_PREFIX(_dispatch_stub_853) + .type GL_PREFIX(_dispatch_stub_853), @function + HIDDEN(GL_PREFIX(_dispatch_stub_853)) +GL_PREFIX(_dispatch_stub_853): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6664(%rax), %r11 + movq 6824(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31519,13 +32411,13 @@ GL_PREFIX(_dispatch_stub_833): popq %rdx popq %rsi popq %rdi - movq 6664(%rax), %r11 + movq 6824(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6664(%rax), %r11 + movq 6824(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31535,19 +32427,19 @@ GL_PREFIX(_dispatch_stub_833): popq %rdx popq %rsi popq %rdi - movq 6664(%rax), %r11 + movq 6824(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_833), .-GL_PREFIX(_dispatch_stub_833) + .size GL_PREFIX(_dispatch_stub_853), .-GL_PREFIX(_dispatch_stub_853) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_834) - .type GL_PREFIX(_dispatch_stub_834), @function - HIDDEN(GL_PREFIX(_dispatch_stub_834)) -GL_PREFIX(_dispatch_stub_834): + .globl GL_PREFIX(_dispatch_stub_854) + .type GL_PREFIX(_dispatch_stub_854), @function + HIDDEN(GL_PREFIX(_dispatch_stub_854)) +GL_PREFIX(_dispatch_stub_854): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6672(%rax), %r11 + movq 6832(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31557,13 +32449,13 @@ GL_PREFIX(_dispatch_stub_834): popq %rdx popq %rsi popq %rdi - movq 6672(%rax), %r11 + movq 6832(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6672(%rax), %r11 + movq 6832(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31573,10 +32465,10 @@ GL_PREFIX(_dispatch_stub_834): popq %rdx popq %rsi popq %rdi - movq 6672(%rax), %r11 + movq 6832(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_834), .-GL_PREFIX(_dispatch_stub_834) + .size GL_PREFIX(_dispatch_stub_854), .-GL_PREFIX(_dispatch_stub_854) .p2align 4,,15 .globl GL_PREFIX(BindFragDataLocationEXT) @@ -31584,7 +32476,7 @@ GL_PREFIX(_dispatch_stub_834): GL_PREFIX(BindFragDataLocationEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6680(%rax), %r11 + movq 6840(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31594,13 +32486,13 @@ GL_PREFIX(BindFragDataLocationEXT): popq %rdx popq %rsi popq %rdi - movq 6680(%rax), %r11 + movq 6840(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6680(%rax), %r11 + movq 6840(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31610,7 +32502,7 @@ GL_PREFIX(BindFragDataLocationEXT): popq %rdx popq %rsi popq %rdi - movq 6680(%rax), %r11 + movq 6840(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindFragDataLocationEXT), .-GL_PREFIX(BindFragDataLocationEXT) @@ -31621,7 +32513,7 @@ GL_PREFIX(BindFragDataLocationEXT): GL_PREFIX(GetFragDataLocationEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6688(%rax), %r11 + movq 6848(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31631,13 +32523,13 @@ GL_PREFIX(GetFragDataLocationEXT): popq %rbp popq %rsi popq %rdi - movq 6688(%rax), %r11 + movq 6848(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6688(%rax), %r11 + movq 6848(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31647,7 +32539,7 @@ GL_PREFIX(GetFragDataLocationEXT): popq %rbp popq %rsi popq %rdi - movq 6688(%rax), %r11 + movq 6848(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetFragDataLocationEXT), .-GL_PREFIX(GetFragDataLocationEXT) @@ -31658,7 +32550,7 @@ GL_PREFIX(GetFragDataLocationEXT): GL_PREFIX(GetUniformuivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6696(%rax), %r11 + movq 6856(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31668,13 +32560,13 @@ GL_PREFIX(GetUniformuivEXT): popq %rdx popq %rsi popq %rdi - movq 6696(%rax), %r11 + movq 6856(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6696(%rax), %r11 + movq 6856(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31684,7 +32576,7 @@ GL_PREFIX(GetUniformuivEXT): popq %rdx popq %rsi popq %rdi - movq 6696(%rax), %r11 + movq 6856(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetUniformuivEXT), .-GL_PREFIX(GetUniformuivEXT) @@ -31695,7 +32587,7 @@ GL_PREFIX(GetUniformuivEXT): GL_PREFIX(GetVertexAttribIivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6704(%rax), %r11 + movq 6864(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31705,13 +32597,13 @@ GL_PREFIX(GetVertexAttribIivEXT): popq %rdx popq %rsi popq %rdi - movq 6704(%rax), %r11 + movq 6864(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6704(%rax), %r11 + movq 6864(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31721,7 +32613,7 @@ GL_PREFIX(GetVertexAttribIivEXT): popq %rdx popq %rsi popq %rdi - movq 6704(%rax), %r11 + movq 6864(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribIivEXT), .-GL_PREFIX(GetVertexAttribIivEXT) @@ -31732,7 +32624,7 @@ GL_PREFIX(GetVertexAttribIivEXT): GL_PREFIX(GetVertexAttribIuivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6712(%rax), %r11 + movq 6872(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31742,13 +32634,13 @@ GL_PREFIX(GetVertexAttribIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6712(%rax), %r11 + movq 6872(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6712(%rax), %r11 + movq 6872(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31758,7 +32650,7 @@ GL_PREFIX(GetVertexAttribIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6712(%rax), %r11 + movq 6872(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribIuivEXT), .-GL_PREFIX(GetVertexAttribIuivEXT) @@ -31769,7 +32661,7 @@ GL_PREFIX(GetVertexAttribIuivEXT): GL_PREFIX(Uniform1uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6720(%rax), %r11 + movq 6880(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31779,13 +32671,13 @@ GL_PREFIX(Uniform1uiEXT): popq %rbp popq %rsi popq %rdi - movq 6720(%rax), %r11 + movq 6880(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6720(%rax), %r11 + movq 6880(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31795,7 +32687,7 @@ GL_PREFIX(Uniform1uiEXT): popq %rbp popq %rsi popq %rdi - movq 6720(%rax), %r11 + movq 6880(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform1uiEXT), .-GL_PREFIX(Uniform1uiEXT) @@ -31806,7 +32698,7 @@ GL_PREFIX(Uniform1uiEXT): GL_PREFIX(Uniform1uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6728(%rax), %r11 + movq 6888(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31816,13 +32708,13 @@ GL_PREFIX(Uniform1uivEXT): popq %rdx popq %rsi popq %rdi - movq 6728(%rax), %r11 + movq 6888(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6728(%rax), %r11 + movq 6888(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31832,7 +32724,7 @@ GL_PREFIX(Uniform1uivEXT): popq %rdx popq %rsi popq %rdi - movq 6728(%rax), %r11 + movq 6888(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform1uivEXT), .-GL_PREFIX(Uniform1uivEXT) @@ -31843,7 +32735,7 @@ GL_PREFIX(Uniform1uivEXT): GL_PREFIX(Uniform2uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6736(%rax), %r11 + movq 6896(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31853,13 +32745,13 @@ GL_PREFIX(Uniform2uiEXT): popq %rdx popq %rsi popq %rdi - movq 6736(%rax), %r11 + movq 6896(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6736(%rax), %r11 + movq 6896(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31869,7 +32761,7 @@ GL_PREFIX(Uniform2uiEXT): popq %rdx popq %rsi popq %rdi - movq 6736(%rax), %r11 + movq 6896(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform2uiEXT), .-GL_PREFIX(Uniform2uiEXT) @@ -31880,7 +32772,7 @@ GL_PREFIX(Uniform2uiEXT): GL_PREFIX(Uniform2uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6744(%rax), %r11 + movq 6904(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31890,13 +32782,13 @@ GL_PREFIX(Uniform2uivEXT): popq %rdx popq %rsi popq %rdi - movq 6744(%rax), %r11 + movq 6904(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6744(%rax), %r11 + movq 6904(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31906,7 +32798,7 @@ GL_PREFIX(Uniform2uivEXT): popq %rdx popq %rsi popq %rdi - movq 6744(%rax), %r11 + movq 6904(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform2uivEXT), .-GL_PREFIX(Uniform2uivEXT) @@ -31917,7 +32809,7 @@ GL_PREFIX(Uniform2uivEXT): GL_PREFIX(Uniform3uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6752(%rax), %r11 + movq 6912(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31931,13 +32823,13 @@ GL_PREFIX(Uniform3uiEXT): popq %rdx popq %rsi popq %rdi - movq 6752(%rax), %r11 + movq 6912(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6752(%rax), %r11 + movq 6912(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31951,7 +32843,7 @@ GL_PREFIX(Uniform3uiEXT): popq %rdx popq %rsi popq %rdi - movq 6752(%rax), %r11 + movq 6912(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform3uiEXT), .-GL_PREFIX(Uniform3uiEXT) @@ -31962,7 +32854,7 @@ GL_PREFIX(Uniform3uiEXT): GL_PREFIX(Uniform3uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6760(%rax), %r11 + movq 6920(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31972,13 +32864,13 @@ GL_PREFIX(Uniform3uivEXT): popq %rdx popq %rsi popq %rdi - movq 6760(%rax), %r11 + movq 6920(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6760(%rax), %r11 + movq 6920(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31988,7 +32880,7 @@ GL_PREFIX(Uniform3uivEXT): popq %rdx popq %rsi popq %rdi - movq 6760(%rax), %r11 + movq 6920(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform3uivEXT), .-GL_PREFIX(Uniform3uivEXT) @@ -31999,7 +32891,7 @@ GL_PREFIX(Uniform3uivEXT): GL_PREFIX(Uniform4uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6768(%rax), %r11 + movq 6928(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32013,13 +32905,13 @@ GL_PREFIX(Uniform4uiEXT): popq %rdx popq %rsi popq %rdi - movq 6768(%rax), %r11 + movq 6928(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6768(%rax), %r11 + movq 6928(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32033,7 +32925,7 @@ GL_PREFIX(Uniform4uiEXT): popq %rdx popq %rsi popq %rdi - movq 6768(%rax), %r11 + movq 6928(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform4uiEXT), .-GL_PREFIX(Uniform4uiEXT) @@ -32044,7 +32936,7 @@ GL_PREFIX(Uniform4uiEXT): GL_PREFIX(Uniform4uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6776(%rax), %r11 + movq 6936(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32054,13 +32946,13 @@ GL_PREFIX(Uniform4uivEXT): popq %rdx popq %rsi popq %rdi - movq 6776(%rax), %r11 + movq 6936(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6776(%rax), %r11 + movq 6936(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32070,7 +32962,7 @@ GL_PREFIX(Uniform4uivEXT): popq %rdx popq %rsi popq %rdi - movq 6776(%rax), %r11 + movq 6936(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform4uivEXT), .-GL_PREFIX(Uniform4uivEXT) @@ -32081,7 +32973,7 @@ GL_PREFIX(Uniform4uivEXT): GL_PREFIX(VertexAttribI1iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6784(%rax), %r11 + movq 6944(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32091,13 +32983,13 @@ GL_PREFIX(VertexAttribI1iEXT): popq %rbp popq %rsi popq %rdi - movq 6784(%rax), %r11 + movq 6944(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6784(%rax), %r11 + movq 6944(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32107,7 +32999,7 @@ GL_PREFIX(VertexAttribI1iEXT): popq %rbp popq %rsi popq %rdi - movq 6784(%rax), %r11 + movq 6944(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI1iEXT), .-GL_PREFIX(VertexAttribI1iEXT) @@ -32118,7 +33010,7 @@ GL_PREFIX(VertexAttribI1iEXT): GL_PREFIX(VertexAttribI1ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6792(%rax), %r11 + movq 6952(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32128,13 +33020,13 @@ GL_PREFIX(VertexAttribI1ivEXT): popq %rbp popq %rsi popq %rdi - movq 6792(%rax), %r11 + movq 6952(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6792(%rax), %r11 + movq 6952(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32144,7 +33036,7 @@ GL_PREFIX(VertexAttribI1ivEXT): popq %rbp popq %rsi popq %rdi - movq 6792(%rax), %r11 + movq 6952(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI1ivEXT), .-GL_PREFIX(VertexAttribI1ivEXT) @@ -32155,7 +33047,7 @@ GL_PREFIX(VertexAttribI1ivEXT): GL_PREFIX(VertexAttribI1uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6800(%rax), %r11 + movq 6960(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32165,13 +33057,13 @@ GL_PREFIX(VertexAttribI1uiEXT): popq %rbp popq %rsi popq %rdi - movq 6800(%rax), %r11 + movq 6960(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6800(%rax), %r11 + movq 6960(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32181,7 +33073,7 @@ GL_PREFIX(VertexAttribI1uiEXT): popq %rbp popq %rsi popq %rdi - movq 6800(%rax), %r11 + movq 6960(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI1uiEXT), .-GL_PREFIX(VertexAttribI1uiEXT) @@ -32192,7 +33084,7 @@ GL_PREFIX(VertexAttribI1uiEXT): GL_PREFIX(VertexAttribI1uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6808(%rax), %r11 + movq 6968(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32202,13 +33094,13 @@ GL_PREFIX(VertexAttribI1uivEXT): popq %rbp popq %rsi popq %rdi - movq 6808(%rax), %r11 + movq 6968(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6808(%rax), %r11 + movq 6968(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32218,7 +33110,7 @@ GL_PREFIX(VertexAttribI1uivEXT): popq %rbp popq %rsi popq %rdi - movq 6808(%rax), %r11 + movq 6968(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI1uivEXT), .-GL_PREFIX(VertexAttribI1uivEXT) @@ -32229,7 +33121,7 @@ GL_PREFIX(VertexAttribI1uivEXT): GL_PREFIX(VertexAttribI2iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6816(%rax), %r11 + movq 6976(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32239,13 +33131,13 @@ GL_PREFIX(VertexAttribI2iEXT): popq %rdx popq %rsi popq %rdi - movq 6816(%rax), %r11 + movq 6976(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6816(%rax), %r11 + movq 6976(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32255,7 +33147,7 @@ GL_PREFIX(VertexAttribI2iEXT): popq %rdx popq %rsi popq %rdi - movq 6816(%rax), %r11 + movq 6976(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI2iEXT), .-GL_PREFIX(VertexAttribI2iEXT) @@ -32266,7 +33158,7 @@ GL_PREFIX(VertexAttribI2iEXT): GL_PREFIX(VertexAttribI2ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6824(%rax), %r11 + movq 6984(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32276,13 +33168,13 @@ GL_PREFIX(VertexAttribI2ivEXT): popq %rbp popq %rsi popq %rdi - movq 6824(%rax), %r11 + movq 6984(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6824(%rax), %r11 + movq 6984(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32292,7 +33184,7 @@ GL_PREFIX(VertexAttribI2ivEXT): popq %rbp popq %rsi popq %rdi - movq 6824(%rax), %r11 + movq 6984(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI2ivEXT), .-GL_PREFIX(VertexAttribI2ivEXT) @@ -32303,7 +33195,7 @@ GL_PREFIX(VertexAttribI2ivEXT): GL_PREFIX(VertexAttribI2uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6832(%rax), %r11 + movq 6992(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32313,13 +33205,13 @@ GL_PREFIX(VertexAttribI2uiEXT): popq %rdx popq %rsi popq %rdi - movq 6832(%rax), %r11 + movq 6992(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6832(%rax), %r11 + movq 6992(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32329,7 +33221,7 @@ GL_PREFIX(VertexAttribI2uiEXT): popq %rdx popq %rsi popq %rdi - movq 6832(%rax), %r11 + movq 6992(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI2uiEXT), .-GL_PREFIX(VertexAttribI2uiEXT) @@ -32340,7 +33232,7 @@ GL_PREFIX(VertexAttribI2uiEXT): GL_PREFIX(VertexAttribI2uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6840(%rax), %r11 + movq 7000(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32350,13 +33242,13 @@ GL_PREFIX(VertexAttribI2uivEXT): popq %rbp popq %rsi popq %rdi - movq 6840(%rax), %r11 + movq 7000(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6840(%rax), %r11 + movq 7000(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32366,7 +33258,7 @@ GL_PREFIX(VertexAttribI2uivEXT): popq %rbp popq %rsi popq %rdi - movq 6840(%rax), %r11 + movq 7000(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI2uivEXT), .-GL_PREFIX(VertexAttribI2uivEXT) @@ -32377,7 +33269,7 @@ GL_PREFIX(VertexAttribI2uivEXT): GL_PREFIX(VertexAttribI3iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6848(%rax), %r11 + movq 7008(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32391,13 +33283,13 @@ GL_PREFIX(VertexAttribI3iEXT): popq %rdx popq %rsi popq %rdi - movq 6848(%rax), %r11 + movq 7008(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6848(%rax), %r11 + movq 7008(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32411,7 +33303,7 @@ GL_PREFIX(VertexAttribI3iEXT): popq %rdx popq %rsi popq %rdi - movq 6848(%rax), %r11 + movq 7008(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI3iEXT), .-GL_PREFIX(VertexAttribI3iEXT) @@ -32422,7 +33314,7 @@ GL_PREFIX(VertexAttribI3iEXT): GL_PREFIX(VertexAttribI3ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6856(%rax), %r11 + movq 7016(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32432,13 +33324,13 @@ GL_PREFIX(VertexAttribI3ivEXT): popq %rbp popq %rsi popq %rdi - movq 6856(%rax), %r11 + movq 7016(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6856(%rax), %r11 + movq 7016(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32448,7 +33340,7 @@ GL_PREFIX(VertexAttribI3ivEXT): popq %rbp popq %rsi popq %rdi - movq 6856(%rax), %r11 + movq 7016(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI3ivEXT), .-GL_PREFIX(VertexAttribI3ivEXT) @@ -32459,7 +33351,7 @@ GL_PREFIX(VertexAttribI3ivEXT): GL_PREFIX(VertexAttribI3uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6864(%rax), %r11 + movq 7024(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32473,13 +33365,13 @@ GL_PREFIX(VertexAttribI3uiEXT): popq %rdx popq %rsi popq %rdi - movq 6864(%rax), %r11 + movq 7024(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6864(%rax), %r11 + movq 7024(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32493,7 +33385,7 @@ GL_PREFIX(VertexAttribI3uiEXT): popq %rdx popq %rsi popq %rdi - movq 6864(%rax), %r11 + movq 7024(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI3uiEXT), .-GL_PREFIX(VertexAttribI3uiEXT) @@ -32504,7 +33396,7 @@ GL_PREFIX(VertexAttribI3uiEXT): GL_PREFIX(VertexAttribI3uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6872(%rax), %r11 + movq 7032(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32514,13 +33406,13 @@ GL_PREFIX(VertexAttribI3uivEXT): popq %rbp popq %rsi popq %rdi - movq 6872(%rax), %r11 + movq 7032(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6872(%rax), %r11 + movq 7032(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32530,7 +33422,7 @@ GL_PREFIX(VertexAttribI3uivEXT): popq %rbp popq %rsi popq %rdi - movq 6872(%rax), %r11 + movq 7032(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI3uivEXT), .-GL_PREFIX(VertexAttribI3uivEXT) @@ -32541,7 +33433,7 @@ GL_PREFIX(VertexAttribI3uivEXT): GL_PREFIX(VertexAttribI4bvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6880(%rax), %r11 + movq 7040(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32551,13 +33443,13 @@ GL_PREFIX(VertexAttribI4bvEXT): popq %rbp popq %rsi popq %rdi - movq 6880(%rax), %r11 + movq 7040(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6880(%rax), %r11 + movq 7040(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32567,7 +33459,7 @@ GL_PREFIX(VertexAttribI4bvEXT): popq %rbp popq %rsi popq %rdi - movq 6880(%rax), %r11 + movq 7040(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4bvEXT), .-GL_PREFIX(VertexAttribI4bvEXT) @@ -32578,7 +33470,7 @@ GL_PREFIX(VertexAttribI4bvEXT): GL_PREFIX(VertexAttribI4iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6888(%rax), %r11 + movq 7048(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32592,13 +33484,13 @@ GL_PREFIX(VertexAttribI4iEXT): popq %rdx popq %rsi popq %rdi - movq 6888(%rax), %r11 + movq 7048(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6888(%rax), %r11 + movq 7048(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32612,7 +33504,7 @@ GL_PREFIX(VertexAttribI4iEXT): popq %rdx popq %rsi popq %rdi - movq 6888(%rax), %r11 + movq 7048(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4iEXT), .-GL_PREFIX(VertexAttribI4iEXT) @@ -32623,7 +33515,7 @@ GL_PREFIX(VertexAttribI4iEXT): GL_PREFIX(VertexAttribI4ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6896(%rax), %r11 + movq 7056(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32633,13 +33525,13 @@ GL_PREFIX(VertexAttribI4ivEXT): popq %rbp popq %rsi popq %rdi - movq 6896(%rax), %r11 + movq 7056(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6896(%rax), %r11 + movq 7056(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32649,7 +33541,7 @@ GL_PREFIX(VertexAttribI4ivEXT): popq %rbp popq %rsi popq %rdi - movq 6896(%rax), %r11 + movq 7056(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4ivEXT), .-GL_PREFIX(VertexAttribI4ivEXT) @@ -32660,7 +33552,7 @@ GL_PREFIX(VertexAttribI4ivEXT): GL_PREFIX(VertexAttribI4svEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6904(%rax), %r11 + movq 7064(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32670,13 +33562,13 @@ GL_PREFIX(VertexAttribI4svEXT): popq %rbp popq %rsi popq %rdi - movq 6904(%rax), %r11 + movq 7064(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6904(%rax), %r11 + movq 7064(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32686,7 +33578,7 @@ GL_PREFIX(VertexAttribI4svEXT): popq %rbp popq %rsi popq %rdi - movq 6904(%rax), %r11 + movq 7064(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4svEXT), .-GL_PREFIX(VertexAttribI4svEXT) @@ -32697,7 +33589,7 @@ GL_PREFIX(VertexAttribI4svEXT): GL_PREFIX(VertexAttribI4ubvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6912(%rax), %r11 + movq 7072(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32707,13 +33599,13 @@ GL_PREFIX(VertexAttribI4ubvEXT): popq %rbp popq %rsi popq %rdi - movq 6912(%rax), %r11 + movq 7072(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6912(%rax), %r11 + movq 7072(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32723,7 +33615,7 @@ GL_PREFIX(VertexAttribI4ubvEXT): popq %rbp popq %rsi popq %rdi - movq 6912(%rax), %r11 + movq 7072(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4ubvEXT), .-GL_PREFIX(VertexAttribI4ubvEXT) @@ -32734,7 +33626,7 @@ GL_PREFIX(VertexAttribI4ubvEXT): GL_PREFIX(VertexAttribI4uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6920(%rax), %r11 + movq 7080(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32748,13 +33640,13 @@ GL_PREFIX(VertexAttribI4uiEXT): popq %rdx popq %rsi popq %rdi - movq 6920(%rax), %r11 + movq 7080(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6920(%rax), %r11 + movq 7080(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32768,7 +33660,7 @@ GL_PREFIX(VertexAttribI4uiEXT): popq %rdx popq %rsi popq %rdi - movq 6920(%rax), %r11 + movq 7080(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4uiEXT), .-GL_PREFIX(VertexAttribI4uiEXT) @@ -32779,7 +33671,7 @@ GL_PREFIX(VertexAttribI4uiEXT): GL_PREFIX(VertexAttribI4uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6928(%rax), %r11 + movq 7088(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32789,13 +33681,13 @@ GL_PREFIX(VertexAttribI4uivEXT): popq %rbp popq %rsi popq %rdi - movq 6928(%rax), %r11 + movq 7088(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6928(%rax), %r11 + movq 7088(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32805,7 +33697,7 @@ GL_PREFIX(VertexAttribI4uivEXT): popq %rbp popq %rsi popq %rdi - movq 6928(%rax), %r11 + movq 7088(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4uivEXT), .-GL_PREFIX(VertexAttribI4uivEXT) @@ -32816,7 +33708,7 @@ GL_PREFIX(VertexAttribI4uivEXT): GL_PREFIX(VertexAttribI4usvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6936(%rax), %r11 + movq 7096(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32826,13 +33718,13 @@ GL_PREFIX(VertexAttribI4usvEXT): popq %rbp popq %rsi popq %rdi - movq 6936(%rax), %r11 + movq 7096(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6936(%rax), %r11 + movq 7096(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32842,7 +33734,7 @@ GL_PREFIX(VertexAttribI4usvEXT): popq %rbp popq %rsi popq %rdi - movq 6936(%rax), %r11 + movq 7096(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4usvEXT), .-GL_PREFIX(VertexAttribI4usvEXT) @@ -32853,7 +33745,7 @@ GL_PREFIX(VertexAttribI4usvEXT): GL_PREFIX(VertexAttribIPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6944(%rax), %r11 + movq 7104(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32867,13 +33759,13 @@ GL_PREFIX(VertexAttribIPointerEXT): popq %rdx popq %rsi popq %rdi - movq 6944(%rax), %r11 + movq 7104(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6944(%rax), %r11 + movq 7104(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32887,7 +33779,7 @@ GL_PREFIX(VertexAttribIPointerEXT): popq %rdx popq %rsi popq %rdi - movq 6944(%rax), %r11 + movq 7104(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribIPointerEXT), .-GL_PREFIX(VertexAttribIPointerEXT) @@ -32898,7 +33790,7 @@ GL_PREFIX(VertexAttribIPointerEXT): GL_PREFIX(FramebufferTextureLayerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6952(%rax), %r11 + movq 7112(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32912,13 +33804,13 @@ GL_PREFIX(FramebufferTextureLayerEXT): popq %rdx popq %rsi popq %rdi - movq 6952(%rax), %r11 + movq 7112(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6952(%rax), %r11 + movq 7112(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32932,7 +33824,7 @@ GL_PREFIX(FramebufferTextureLayerEXT): popq %rdx popq %rsi popq %rdi - movq 6952(%rax), %r11 + movq 7112(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferTextureLayerEXT), .-GL_PREFIX(FramebufferTextureLayerEXT) @@ -32943,7 +33835,7 @@ GL_PREFIX(FramebufferTextureLayerEXT): GL_PREFIX(ColorMaskIndexedEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6960(%rax), %r11 + movq 7120(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32957,13 +33849,13 @@ GL_PREFIX(ColorMaskIndexedEXT): popq %rdx popq %rsi popq %rdi - movq 6960(%rax), %r11 + movq 7120(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6960(%rax), %r11 + movq 7120(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32977,7 +33869,7 @@ GL_PREFIX(ColorMaskIndexedEXT): popq %rdx popq %rsi popq %rdi - movq 6960(%rax), %r11 + movq 7120(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorMaskIndexedEXT), .-GL_PREFIX(ColorMaskIndexedEXT) @@ -32988,7 +33880,7 @@ GL_PREFIX(ColorMaskIndexedEXT): GL_PREFIX(DisableIndexedEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6968(%rax), %r11 + movq 7128(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32998,13 +33890,13 @@ GL_PREFIX(DisableIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6968(%rax), %r11 + movq 7128(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6968(%rax), %r11 + movq 7128(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33014,7 +33906,7 @@ GL_PREFIX(DisableIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6968(%rax), %r11 + movq 7128(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DisableIndexedEXT), .-GL_PREFIX(DisableIndexedEXT) @@ -33025,7 +33917,7 @@ GL_PREFIX(DisableIndexedEXT): GL_PREFIX(EnableIndexedEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6976(%rax), %r11 + movq 7136(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33035,13 +33927,13 @@ GL_PREFIX(EnableIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6976(%rax), %r11 + movq 7136(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6976(%rax), %r11 + movq 7136(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33051,7 +33943,7 @@ GL_PREFIX(EnableIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6976(%rax), %r11 + movq 7136(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EnableIndexedEXT), .-GL_PREFIX(EnableIndexedEXT) @@ -33062,7 +33954,7 @@ GL_PREFIX(EnableIndexedEXT): GL_PREFIX(GetBooleanIndexedvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6984(%rax), %r11 + movq 7144(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33072,13 +33964,13 @@ GL_PREFIX(GetBooleanIndexedvEXT): popq %rdx popq %rsi popq %rdi - movq 6984(%rax), %r11 + movq 7144(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6984(%rax), %r11 + movq 7144(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33088,7 +33980,7 @@ GL_PREFIX(GetBooleanIndexedvEXT): popq %rdx popq %rsi popq %rdi - movq 6984(%rax), %r11 + movq 7144(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetBooleanIndexedvEXT), .-GL_PREFIX(GetBooleanIndexedvEXT) @@ -33099,7 +33991,7 @@ GL_PREFIX(GetBooleanIndexedvEXT): GL_PREFIX(GetIntegerIndexedvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6992(%rax), %r11 + movq 7152(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33109,13 +34001,13 @@ GL_PREFIX(GetIntegerIndexedvEXT): popq %rdx popq %rsi popq %rdi - movq 6992(%rax), %r11 + movq 7152(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6992(%rax), %r11 + movq 7152(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33125,7 +34017,7 @@ GL_PREFIX(GetIntegerIndexedvEXT): popq %rdx popq %rsi popq %rdi - movq 6992(%rax), %r11 + movq 7152(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetIntegerIndexedvEXT), .-GL_PREFIX(GetIntegerIndexedvEXT) @@ -33136,7 +34028,7 @@ GL_PREFIX(GetIntegerIndexedvEXT): GL_PREFIX(IsEnabledIndexedEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7000(%rax), %r11 + movq 7160(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33146,13 +34038,13 @@ GL_PREFIX(IsEnabledIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 7000(%rax), %r11 + movq 7160(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7000(%rax), %r11 + movq 7160(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33162,7 +34054,7 @@ GL_PREFIX(IsEnabledIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 7000(%rax), %r11 + movq 7160(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsEnabledIndexedEXT), .-GL_PREFIX(IsEnabledIndexedEXT) @@ -33173,7 +34065,7 @@ GL_PREFIX(IsEnabledIndexedEXT): GL_PREFIX(ClearColorIiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7008(%rax), %r11 + movq 7168(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33187,13 +34079,13 @@ GL_PREFIX(ClearColorIiEXT): popq %rdx popq %rsi popq %rdi - movq 7008(%rax), %r11 + movq 7168(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7008(%rax), %r11 + movq 7168(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33207,7 +34099,7 @@ GL_PREFIX(ClearColorIiEXT): popq %rdx popq %rsi popq %rdi - movq 7008(%rax), %r11 + movq 7168(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ClearColorIiEXT), .-GL_PREFIX(ClearColorIiEXT) @@ -33218,7 +34110,7 @@ GL_PREFIX(ClearColorIiEXT): GL_PREFIX(ClearColorIuiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7016(%rax), %r11 + movq 7176(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33232,13 +34124,13 @@ GL_PREFIX(ClearColorIuiEXT): popq %rdx popq %rsi popq %rdi - movq 7016(%rax), %r11 + movq 7176(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7016(%rax), %r11 + movq 7176(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33252,7 +34144,7 @@ GL_PREFIX(ClearColorIuiEXT): popq %rdx popq %rsi popq %rdi - movq 7016(%rax), %r11 + movq 7176(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ClearColorIuiEXT), .-GL_PREFIX(ClearColorIuiEXT) @@ -33263,7 +34155,7 @@ GL_PREFIX(ClearColorIuiEXT): GL_PREFIX(GetTexParameterIivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7024(%rax), %r11 + movq 7184(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33273,13 +34165,13 @@ GL_PREFIX(GetTexParameterIivEXT): popq %rdx popq %rsi popq %rdi - movq 7024(%rax), %r11 + movq 7184(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7024(%rax), %r11 + movq 7184(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33289,7 +34181,7 @@ GL_PREFIX(GetTexParameterIivEXT): popq %rdx popq %rsi popq %rdi - movq 7024(%rax), %r11 + movq 7184(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTexParameterIivEXT), .-GL_PREFIX(GetTexParameterIivEXT) @@ -33300,7 +34192,7 @@ GL_PREFIX(GetTexParameterIivEXT): GL_PREFIX(GetTexParameterIuivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7032(%rax), %r11 + movq 7192(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33310,13 +34202,13 @@ GL_PREFIX(GetTexParameterIuivEXT): popq %rdx popq %rsi popq %rdi - movq 7032(%rax), %r11 + movq 7192(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7032(%rax), %r11 + movq 7192(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33326,7 +34218,7 @@ GL_PREFIX(GetTexParameterIuivEXT): popq %rdx popq %rsi popq %rdi - movq 7032(%rax), %r11 + movq 7192(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTexParameterIuivEXT), .-GL_PREFIX(GetTexParameterIuivEXT) @@ -33337,7 +34229,7 @@ GL_PREFIX(GetTexParameterIuivEXT): GL_PREFIX(TexParameterIivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7040(%rax), %r11 + movq 7200(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33347,13 +34239,13 @@ GL_PREFIX(TexParameterIivEXT): popq %rdx popq %rsi popq %rdi - movq 7040(%rax), %r11 + movq 7200(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7040(%rax), %r11 + movq 7200(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33363,7 +34255,7 @@ GL_PREFIX(TexParameterIivEXT): popq %rdx popq %rsi popq %rdi - movq 7040(%rax), %r11 + movq 7200(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexParameterIivEXT), .-GL_PREFIX(TexParameterIivEXT) @@ -33374,7 +34266,7 @@ GL_PREFIX(TexParameterIivEXT): GL_PREFIX(TexParameterIuivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7048(%rax), %r11 + movq 7208(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33384,13 +34276,13 @@ GL_PREFIX(TexParameterIuivEXT): popq %rdx popq %rsi popq %rdi - movq 7048(%rax), %r11 + movq 7208(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7048(%rax), %r11 + movq 7208(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33400,7 +34292,7 @@ GL_PREFIX(TexParameterIuivEXT): popq %rdx popq %rsi popq %rdi - movq 7048(%rax), %r11 + movq 7208(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexParameterIuivEXT), .-GL_PREFIX(TexParameterIuivEXT) @@ -33411,7 +34303,7 @@ GL_PREFIX(TexParameterIuivEXT): GL_PREFIX(BeginConditionalRenderNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7056(%rax), %r11 + movq 7216(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33421,13 +34313,13 @@ GL_PREFIX(BeginConditionalRenderNV): popq %rbp popq %rsi popq %rdi - movq 7056(%rax), %r11 + movq 7216(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7056(%rax), %r11 + movq 7216(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33437,7 +34329,7 @@ GL_PREFIX(BeginConditionalRenderNV): popq %rbp popq %rsi popq %rdi - movq 7056(%rax), %r11 + movq 7216(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BeginConditionalRenderNV), .-GL_PREFIX(BeginConditionalRenderNV) @@ -33448,25 +34340,25 @@ GL_PREFIX(BeginConditionalRenderNV): GL_PREFIX(EndConditionalRenderNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7064(%rax), %r11 + movq 7224(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 7064(%rax), %r11 + movq 7224(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7064(%rax), %r11 + movq 7224(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 7064(%rax), %r11 + movq 7224(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EndConditionalRenderNV), .-GL_PREFIX(EndConditionalRenderNV) @@ -33477,25 +34369,25 @@ GL_PREFIX(EndConditionalRenderNV): GL_PREFIX(BeginTransformFeedbackEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7072(%rax), %r11 + movq 7232(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 7072(%rax), %r11 + movq 7232(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7072(%rax), %r11 + movq 7232(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 7072(%rax), %r11 + movq 7232(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BeginTransformFeedbackEXT), .-GL_PREFIX(BeginTransformFeedbackEXT) @@ -33506,7 +34398,7 @@ GL_PREFIX(BeginTransformFeedbackEXT): GL_PREFIX(BindBufferBaseEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7080(%rax), %r11 + movq 7240(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33516,13 +34408,13 @@ GL_PREFIX(BindBufferBaseEXT): popq %rdx popq %rsi popq %rdi - movq 7080(%rax), %r11 + movq 7240(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7080(%rax), %r11 + movq 7240(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33532,7 +34424,7 @@ GL_PREFIX(BindBufferBaseEXT): popq %rdx popq %rsi popq %rdi - movq 7080(%rax), %r11 + movq 7240(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindBufferBaseEXT), .-GL_PREFIX(BindBufferBaseEXT) @@ -33543,7 +34435,7 @@ GL_PREFIX(BindBufferBaseEXT): GL_PREFIX(BindBufferOffsetEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7088(%rax), %r11 + movq 7248(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33557,13 +34449,13 @@ GL_PREFIX(BindBufferOffsetEXT): popq %rdx popq %rsi popq %rdi - movq 7088(%rax), %r11 + movq 7248(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7088(%rax), %r11 + movq 7248(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33577,7 +34469,7 @@ GL_PREFIX(BindBufferOffsetEXT): popq %rdx popq %rsi popq %rdi - movq 7088(%rax), %r11 + movq 7248(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindBufferOffsetEXT), .-GL_PREFIX(BindBufferOffsetEXT) @@ -33588,7 +34480,7 @@ GL_PREFIX(BindBufferOffsetEXT): GL_PREFIX(BindBufferRangeEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7096(%rax), %r11 + movq 7256(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33602,13 +34494,13 @@ GL_PREFIX(BindBufferRangeEXT): popq %rdx popq %rsi popq %rdi - movq 7096(%rax), %r11 + movq 7256(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7096(%rax), %r11 + movq 7256(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33622,7 +34514,7 @@ GL_PREFIX(BindBufferRangeEXT): popq %rdx popq %rsi popq %rdi - movq 7096(%rax), %r11 + movq 7256(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindBufferRangeEXT), .-GL_PREFIX(BindBufferRangeEXT) @@ -33633,25 +34525,25 @@ GL_PREFIX(BindBufferRangeEXT): GL_PREFIX(EndTransformFeedbackEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7104(%rax), %r11 + movq 7264(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 7104(%rax), %r11 + movq 7264(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7104(%rax), %r11 + movq 7264(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 7104(%rax), %r11 + movq 7264(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EndTransformFeedbackEXT), .-GL_PREFIX(EndTransformFeedbackEXT) @@ -33662,7 +34554,7 @@ GL_PREFIX(EndTransformFeedbackEXT): GL_PREFIX(GetTransformFeedbackVaryingEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7112(%rax), %r11 + movq 7272(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33680,13 +34572,13 @@ GL_PREFIX(GetTransformFeedbackVaryingEXT): popq %rdx popq %rsi popq %rdi - movq 7112(%rax), %r11 + movq 7272(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7112(%rax), %r11 + movq 7272(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33704,7 +34596,7 @@ GL_PREFIX(GetTransformFeedbackVaryingEXT): popq %rdx popq %rsi popq %rdi - movq 7112(%rax), %r11 + movq 7272(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTransformFeedbackVaryingEXT), .-GL_PREFIX(GetTransformFeedbackVaryingEXT) @@ -33715,7 +34607,7 @@ GL_PREFIX(GetTransformFeedbackVaryingEXT): GL_PREFIX(TransformFeedbackVaryingsEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7120(%rax), %r11 + movq 7280(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33729,13 +34621,13 @@ GL_PREFIX(TransformFeedbackVaryingsEXT): popq %rdx popq %rsi popq %rdi - movq 7120(%rax), %r11 + movq 7280(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7120(%rax), %r11 + movq 7280(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33749,7 +34641,7 @@ GL_PREFIX(TransformFeedbackVaryingsEXT): popq %rdx popq %rsi popq %rdi - movq 7120(%rax), %r11 + movq 7280(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TransformFeedbackVaryingsEXT), .-GL_PREFIX(TransformFeedbackVaryingsEXT) @@ -33760,37 +34652,37 @@ GL_PREFIX(TransformFeedbackVaryingsEXT): GL_PREFIX(ProvokingVertexEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7128(%rax), %r11 + movq 7288(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 7128(%rax), %r11 + movq 7288(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7128(%rax), %r11 + movq 7288(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 7128(%rax), %r11 + movq 7288(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProvokingVertexEXT), .-GL_PREFIX(ProvokingVertexEXT) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_892) - .type GL_PREFIX(_dispatch_stub_892), @function - HIDDEN(GL_PREFIX(_dispatch_stub_892)) -GL_PREFIX(_dispatch_stub_892): + .globl GL_PREFIX(_dispatch_stub_912) + .type GL_PREFIX(_dispatch_stub_912), @function + HIDDEN(GL_PREFIX(_dispatch_stub_912)) +GL_PREFIX(_dispatch_stub_912): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7136(%rax), %r11 + movq 7296(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33800,13 +34692,13 @@ GL_PREFIX(_dispatch_stub_892): popq %rdx popq %rsi popq %rdi - movq 7136(%rax), %r11 + movq 7296(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7136(%rax), %r11 + movq 7296(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33816,19 +34708,19 @@ GL_PREFIX(_dispatch_stub_892): popq %rdx popq %rsi popq %rdi - movq 7136(%rax), %r11 + movq 7296(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_892), .-GL_PREFIX(_dispatch_stub_892) + .size GL_PREFIX(_dispatch_stub_912), .-GL_PREFIX(_dispatch_stub_912) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_893) - .type GL_PREFIX(_dispatch_stub_893), @function - HIDDEN(GL_PREFIX(_dispatch_stub_893)) -GL_PREFIX(_dispatch_stub_893): + .globl GL_PREFIX(_dispatch_stub_913) + .type GL_PREFIX(_dispatch_stub_913), @function + HIDDEN(GL_PREFIX(_dispatch_stub_913)) +GL_PREFIX(_dispatch_stub_913): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7144(%rax), %r11 + movq 7304(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33838,13 +34730,13 @@ GL_PREFIX(_dispatch_stub_893): popq %rdx popq %rsi popq %rdi - movq 7144(%rax), %r11 + movq 7304(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7144(%rax), %r11 + movq 7304(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33854,10 +34746,10 @@ GL_PREFIX(_dispatch_stub_893): popq %rdx popq %rsi popq %rdi - movq 7144(%rax), %r11 + movq 7304(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_893), .-GL_PREFIX(_dispatch_stub_893) + .size GL_PREFIX(_dispatch_stub_913), .-GL_PREFIX(_dispatch_stub_913) .p2align 4,,15 .globl GL_PREFIX(GetObjectParameterivAPPLE) @@ -33865,7 +34757,7 @@ GL_PREFIX(_dispatch_stub_893): GL_PREFIX(GetObjectParameterivAPPLE): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7152(%rax), %r11 + movq 7312(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33879,13 +34771,13 @@ GL_PREFIX(GetObjectParameterivAPPLE): popq %rdx popq %rsi popq %rdi - movq 7152(%rax), %r11 + movq 7312(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7152(%rax), %r11 + movq 7312(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33899,7 +34791,7 @@ GL_PREFIX(GetObjectParameterivAPPLE): popq %rdx popq %rsi popq %rdi - movq 7152(%rax), %r11 + movq 7312(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetObjectParameterivAPPLE), .-GL_PREFIX(GetObjectParameterivAPPLE) @@ -33910,7 +34802,7 @@ GL_PREFIX(GetObjectParameterivAPPLE): GL_PREFIX(ObjectPurgeableAPPLE): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7160(%rax), %r11 + movq 7320(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33920,13 +34812,13 @@ GL_PREFIX(ObjectPurgeableAPPLE): popq %rdx popq %rsi popq %rdi - movq 7160(%rax), %r11 + movq 7320(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7160(%rax), %r11 + movq 7320(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33936,7 +34828,7 @@ GL_PREFIX(ObjectPurgeableAPPLE): popq %rdx popq %rsi popq %rdi - movq 7160(%rax), %r11 + movq 7320(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ObjectPurgeableAPPLE), .-GL_PREFIX(ObjectPurgeableAPPLE) @@ -33947,7 +34839,7 @@ GL_PREFIX(ObjectPurgeableAPPLE): GL_PREFIX(ObjectUnpurgeableAPPLE): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7168(%rax), %r11 + movq 7328(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33957,13 +34849,13 @@ GL_PREFIX(ObjectUnpurgeableAPPLE): popq %rdx popq %rsi popq %rdi - movq 7168(%rax), %r11 + movq 7328(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7168(%rax), %r11 + movq 7328(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33973,7 +34865,7 @@ GL_PREFIX(ObjectUnpurgeableAPPLE): popq %rdx popq %rsi popq %rdi - movq 7168(%rax), %r11 + movq 7328(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ObjectUnpurgeableAPPLE), .-GL_PREFIX(ObjectUnpurgeableAPPLE) @@ -33984,25 +34876,25 @@ GL_PREFIX(ObjectUnpurgeableAPPLE): GL_PREFIX(ActiveProgramEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7176(%rax), %r11 + movq 7336(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 7176(%rax), %r11 + movq 7336(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7176(%rax), %r11 + movq 7336(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 7176(%rax), %r11 + movq 7336(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ActiveProgramEXT), .-GL_PREFIX(ActiveProgramEXT) @@ -34013,7 +34905,7 @@ GL_PREFIX(ActiveProgramEXT): GL_PREFIX(CreateShaderProgramEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7184(%rax), %r11 + movq 7344(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -34023,13 +34915,13 @@ GL_PREFIX(CreateShaderProgramEXT): popq %rbp popq %rsi popq %rdi - movq 7184(%rax), %r11 + movq 7344(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7184(%rax), %r11 + movq 7344(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -34039,7 +34931,7 @@ GL_PREFIX(CreateShaderProgramEXT): popq %rbp popq %rsi popq %rdi - movq 7184(%rax), %r11 + movq 7344(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CreateShaderProgramEXT), .-GL_PREFIX(CreateShaderProgramEXT) @@ -34050,7 +34942,7 @@ GL_PREFIX(CreateShaderProgramEXT): GL_PREFIX(UseShaderProgramEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7192(%rax), %r11 + movq 7352(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -34060,13 +34952,13 @@ GL_PREFIX(UseShaderProgramEXT): popq %rbp popq %rsi popq %rdi - movq 7192(%rax), %r11 + movq 7352(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7192(%rax), %r11 + movq 7352(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -34076,7 +34968,7 @@ GL_PREFIX(UseShaderProgramEXT): popq %rbp popq %rsi popq %rdi - movq 7192(%rax), %r11 + movq 7352(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(UseShaderProgramEXT), .-GL_PREFIX(UseShaderProgramEXT) @@ -34087,37 +34979,37 @@ GL_PREFIX(UseShaderProgramEXT): GL_PREFIX(TextureBarrierNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7200(%rax), %r11 + movq 7360(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 7200(%rax), %r11 + movq 7360(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7200(%rax), %r11 + movq 7360(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 7200(%rax), %r11 + movq 7360(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TextureBarrierNV), .-GL_PREFIX(TextureBarrierNV) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_901) - .type GL_PREFIX(_dispatch_stub_901), @function - HIDDEN(GL_PREFIX(_dispatch_stub_901)) -GL_PREFIX(_dispatch_stub_901): + .globl GL_PREFIX(_dispatch_stub_921) + .type GL_PREFIX(_dispatch_stub_921), @function + HIDDEN(GL_PREFIX(_dispatch_stub_921)) +GL_PREFIX(_dispatch_stub_921): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7208(%rax), %r11 + movq 7368(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -34131,13 +35023,13 @@ GL_PREFIX(_dispatch_stub_901): popq %rdx popq %rsi popq %rdi - movq 7208(%rax), %r11 + movq 7368(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7208(%rax), %r11 + movq 7368(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -34151,19 +35043,19 @@ GL_PREFIX(_dispatch_stub_901): popq %rdx popq %rsi popq %rdi - movq 7208(%rax), %r11 + movq 7368(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_901), .-GL_PREFIX(_dispatch_stub_901) + .size GL_PREFIX(_dispatch_stub_921), .-GL_PREFIX(_dispatch_stub_921) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_902) - .type GL_PREFIX(_dispatch_stub_902), @function - HIDDEN(GL_PREFIX(_dispatch_stub_902)) -GL_PREFIX(_dispatch_stub_902): + .globl GL_PREFIX(_dispatch_stub_922) + .type GL_PREFIX(_dispatch_stub_922), @function + HIDDEN(GL_PREFIX(_dispatch_stub_922)) +GL_PREFIX(_dispatch_stub_922): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7216(%rax), %r11 + movq 7376(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -34177,13 +35069,13 @@ GL_PREFIX(_dispatch_stub_902): popq %rdx popq %rsi popq %rdi - movq 7216(%rax), %r11 + movq 7376(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7216(%rax), %r11 + movq 7376(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -34197,19 +35089,19 @@ GL_PREFIX(_dispatch_stub_902): popq %rdx popq %rsi popq %rdi - movq 7216(%rax), %r11 + movq 7376(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_902), .-GL_PREFIX(_dispatch_stub_902) + .size GL_PREFIX(_dispatch_stub_922), .-GL_PREFIX(_dispatch_stub_922) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_903) - .type GL_PREFIX(_dispatch_stub_903), @function - HIDDEN(GL_PREFIX(_dispatch_stub_903)) -GL_PREFIX(_dispatch_stub_903): + .globl GL_PREFIX(_dispatch_stub_923) + .type GL_PREFIX(_dispatch_stub_923), @function + HIDDEN(GL_PREFIX(_dispatch_stub_923)) +GL_PREFIX(_dispatch_stub_923): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7224(%rax), %r11 + movq 7384(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -34223,13 +35115,13 @@ GL_PREFIX(_dispatch_stub_903): popq %rdx popq %rsi popq %rdi - movq 7224(%rax), %r11 + movq 7384(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7224(%rax), %r11 + movq 7384(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -34243,19 +35135,19 @@ GL_PREFIX(_dispatch_stub_903): popq %rdx popq %rsi popq %rdi - movq 7224(%rax), %r11 + movq 7384(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_903), .-GL_PREFIX(_dispatch_stub_903) + .size GL_PREFIX(_dispatch_stub_923), .-GL_PREFIX(_dispatch_stub_923) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_904) - .type GL_PREFIX(_dispatch_stub_904), @function - HIDDEN(GL_PREFIX(_dispatch_stub_904)) -GL_PREFIX(_dispatch_stub_904): + .globl GL_PREFIX(_dispatch_stub_924) + .type GL_PREFIX(_dispatch_stub_924), @function + HIDDEN(GL_PREFIX(_dispatch_stub_924)) +GL_PREFIX(_dispatch_stub_924): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7232(%rax), %r11 + movq 7392(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -34265,13 +35157,13 @@ GL_PREFIX(_dispatch_stub_904): popq %rdx popq %rsi popq %rdi - movq 7232(%rax), %r11 + movq 7392(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7232(%rax), %r11 + movq 7392(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -34281,19 +35173,19 @@ GL_PREFIX(_dispatch_stub_904): popq %rdx popq %rsi popq %rdi - movq 7232(%rax), %r11 + movq 7392(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_904), .-GL_PREFIX(_dispatch_stub_904) + .size GL_PREFIX(_dispatch_stub_924), .-GL_PREFIX(_dispatch_stub_924) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_905) - .type GL_PREFIX(_dispatch_stub_905), @function - HIDDEN(GL_PREFIX(_dispatch_stub_905)) -GL_PREFIX(_dispatch_stub_905): + .globl GL_PREFIX(_dispatch_stub_925) + .type GL_PREFIX(_dispatch_stub_925), @function + HIDDEN(GL_PREFIX(_dispatch_stub_925)) +GL_PREFIX(_dispatch_stub_925): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7240(%rax), %r11 + movq 7400(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -34303,13 +35195,13 @@ GL_PREFIX(_dispatch_stub_905): popq %rdx popq %rsi popq %rdi - movq 7240(%rax), %r11 + movq 7400(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7240(%rax), %r11 + movq 7400(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -34319,10 +35211,10 @@ GL_PREFIX(_dispatch_stub_905): popq %rdx popq %rsi popq %rdi - movq 7240(%rax), %r11 + movq 7400(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_905), .-GL_PREFIX(_dispatch_stub_905) + .size GL_PREFIX(_dispatch_stub_925), .-GL_PREFIX(_dispatch_stub_925) .p2align 4,,15 .globl GL_PREFIX(EGLImageTargetRenderbufferStorageOES) @@ -34330,7 +35222,7 @@ GL_PREFIX(_dispatch_stub_905): GL_PREFIX(EGLImageTargetRenderbufferStorageOES): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7248(%rax), %r11 + movq 7408(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -34340,13 +35232,13 @@ GL_PREFIX(EGLImageTargetRenderbufferStorageOES): popq %rbp popq %rsi popq %rdi - movq 7248(%rax), %r11 + movq 7408(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7248(%rax), %r11 + movq 7408(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -34356,7 +35248,7 @@ GL_PREFIX(EGLImageTargetRenderbufferStorageOES): popq %rbp popq %rsi popq %rdi - movq 7248(%rax), %r11 + movq 7408(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EGLImageTargetRenderbufferStorageOES), .-GL_PREFIX(EGLImageTargetRenderbufferStorageOES) @@ -34367,7 +35259,7 @@ GL_PREFIX(EGLImageTargetRenderbufferStorageOES): GL_PREFIX(EGLImageTargetTexture2DOES): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7256(%rax), %r11 + movq 7416(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -34377,13 +35269,13 @@ GL_PREFIX(EGLImageTargetTexture2DOES): popq %rbp popq %rsi popq %rdi - movq 7256(%rax), %r11 + movq 7416(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7256(%rax), %r11 + movq 7416(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -34393,7 +35285,7 @@ GL_PREFIX(EGLImageTargetTexture2DOES): popq %rbp popq %rsi popq %rdi - movq 7256(%rax), %r11 + movq 7416(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EGLImageTargetTexture2DOES), .-GL_PREFIX(EGLImageTargetTexture2DOES) @@ -34587,6 +35479,10 @@ GL_PREFIX(EGLImageTargetTexture2DOES): .globl GL_PREFIX(DrawElementsInstancedEXT) ; .set GL_PREFIX(DrawElementsInstancedEXT), GL_PREFIX(DrawElementsInstancedARB) .globl GL_PREFIX(DrawElementsInstanced) ; .set GL_PREFIX(DrawElementsInstanced), GL_PREFIX(DrawElementsInstancedARB) .globl GL_PREFIX(RenderbufferStorageMultisampleEXT) ; .set GL_PREFIX(RenderbufferStorageMultisampleEXT), GL_PREFIX(RenderbufferStorageMultisample) + .globl GL_PREFIX(BlendEquationSeparateIndexedAMD) ; .set GL_PREFIX(BlendEquationSeparateIndexedAMD), GL_PREFIX(BlendEquationSeparateiARB) + .globl GL_PREFIX(BlendEquationIndexedAMD) ; .set GL_PREFIX(BlendEquationIndexedAMD), GL_PREFIX(BlendEquationiARB) + .globl GL_PREFIX(BlendFuncSeparateIndexedAMD) ; .set GL_PREFIX(BlendFuncSeparateIndexedAMD), GL_PREFIX(BlendFuncSeparateiARB) + .globl GL_PREFIX(BlendFuncIndexedAMD) ; .set GL_PREFIX(BlendFuncIndexedAMD), GL_PREFIX(BlendFunciARB) .globl GL_PREFIX(PointParameterf) ; .set GL_PREFIX(PointParameterf), GL_PREFIX(PointParameterfEXT) .globl GL_PREFIX(PointParameterfARB) ; .set GL_PREFIX(PointParameterfARB), GL_PREFIX(PointParameterfEXT) .globl GL_PREFIX(PointParameterfv) ; .set GL_PREFIX(PointParameterfv), GL_PREFIX(PointParameterfvEXT) @@ -34656,10 +35552,10 @@ GL_PREFIX(EGLImageTargetTexture2DOES): .globl GL_PREFIX(IsProgramARB) ; .set GL_PREFIX(IsProgramARB), GL_PREFIX(IsProgramNV) .globl GL_PREFIX(PointParameteri) ; .set GL_PREFIX(PointParameteri), GL_PREFIX(PointParameteriNV) .globl GL_PREFIX(PointParameteriv) ; .set GL_PREFIX(PointParameteriv), GL_PREFIX(PointParameterivNV) - .globl GL_PREFIX(DeleteVertexArrays) ; .set GL_PREFIX(DeleteVertexArrays), GL_PREFIX(_dispatch_stub_802) - .globl GL_PREFIX(IsVertexArray) ; .set GL_PREFIX(IsVertexArray), GL_PREFIX(_dispatch_stub_804) + .globl GL_PREFIX(DeleteVertexArrays) ; .set GL_PREFIX(DeleteVertexArrays), GL_PREFIX(_dispatch_stub_822) + .globl GL_PREFIX(IsVertexArray) ; .set GL_PREFIX(IsVertexArray), GL_PREFIX(_dispatch_stub_824) .globl GL_PREFIX(PrimitiveRestartIndex) ; .set GL_PREFIX(PrimitiveRestartIndex), GL_PREFIX(PrimitiveRestartIndexNV) - .globl GL_PREFIX(BlendEquationSeparate) ; .set GL_PREFIX(BlendEquationSeparate), GL_PREFIX(_dispatch_stub_814) + .globl GL_PREFIX(BlendEquationSeparate) ; .set GL_PREFIX(BlendEquationSeparate), GL_PREFIX(_dispatch_stub_834) .globl GL_PREFIX(BindFramebuffer) ; .set GL_PREFIX(BindFramebuffer), GL_PREFIX(BindFramebufferEXT) .globl GL_PREFIX(BindRenderbuffer) ; .set GL_PREFIX(BindRenderbuffer), GL_PREFIX(BindRenderbufferEXT) .globl GL_PREFIX(CheckFramebufferStatus) ; .set GL_PREFIX(CheckFramebufferStatus), GL_PREFIX(CheckFramebufferStatusEXT) @@ -34677,7 +35573,7 @@ GL_PREFIX(EGLImageTargetTexture2DOES): .globl GL_PREFIX(IsFramebuffer) ; .set GL_PREFIX(IsFramebuffer), GL_PREFIX(IsFramebufferEXT) .globl GL_PREFIX(IsRenderbuffer) ; .set GL_PREFIX(IsRenderbuffer), GL_PREFIX(IsRenderbufferEXT) .globl GL_PREFIX(RenderbufferStorage) ; .set GL_PREFIX(RenderbufferStorage), GL_PREFIX(RenderbufferStorageEXT) - .globl GL_PREFIX(BlitFramebuffer) ; .set GL_PREFIX(BlitFramebuffer), GL_PREFIX(_dispatch_stub_832) + .globl GL_PREFIX(BlitFramebuffer) ; .set GL_PREFIX(BlitFramebuffer), GL_PREFIX(_dispatch_stub_852) .globl GL_PREFIX(BindFragDataLocation) ; .set GL_PREFIX(BindFragDataLocation), GL_PREFIX(BindFragDataLocationEXT) .globl GL_PREFIX(GetFragDataLocation) ; .set GL_PREFIX(GetFragDataLocation), GL_PREFIX(GetFragDataLocationEXT) .globl GL_PREFIX(GetUniformuiv) ; .set GL_PREFIX(GetUniformuiv), GL_PREFIX(GetUniformuivEXT) diff --git a/src/mapi/glapi/glapi_x86.S b/src/mapi/glapi/glapi_x86.S index f56dc748dee..61d7ff80299 100644 --- a/src/mapi/glapi/glapi_x86.S +++ b/src/mapi/glapi/glapi_x86.S @@ -776,323 +776,343 @@ GLNAME(gl_dispatch_functions_start): GL_STUB(GetShaderPrecisionFormat, 623, GetShaderPrecisionFormat@16) GL_STUB(ReleaseShaderCompiler, 624, ReleaseShaderCompiler@0) GL_STUB(ShaderBinary, 625, ShaderBinary@20) - GL_STUB(PolygonOffsetEXT, 626, PolygonOffsetEXT@8) - GL_STUB(_dispatch_stub_627, 627, _dispatch_stub_627@8) - HIDDEN(GL_PREFIX(_dispatch_stub_627, _dispatch_stub_627@8)) - GL_STUB(_dispatch_stub_628, 628, _dispatch_stub_628@8) - HIDDEN(GL_PREFIX(_dispatch_stub_628, _dispatch_stub_628@8)) - GL_STUB(_dispatch_stub_629, 629, _dispatch_stub_629@8) - HIDDEN(GL_PREFIX(_dispatch_stub_629, _dispatch_stub_629@8)) - GL_STUB(_dispatch_stub_630, 630, _dispatch_stub_630@8) - HIDDEN(GL_PREFIX(_dispatch_stub_630, _dispatch_stub_630@8)) - GL_STUB(_dispatch_stub_631, 631, _dispatch_stub_631@8) - HIDDEN(GL_PREFIX(_dispatch_stub_631, _dispatch_stub_631@8)) - GL_STUB(_dispatch_stub_632, 632, _dispatch_stub_632@8) - HIDDEN(GL_PREFIX(_dispatch_stub_632, _dispatch_stub_632@8)) - GL_STUB(_dispatch_stub_633, 633, _dispatch_stub_633@8) - HIDDEN(GL_PREFIX(_dispatch_stub_633, _dispatch_stub_633@8)) - GL_STUB(_dispatch_stub_634, 634, _dispatch_stub_634@4) - HIDDEN(GL_PREFIX(_dispatch_stub_634, _dispatch_stub_634@4)) - GL_STUB(ColorPointerEXT, 635, ColorPointerEXT@20) - GL_STUB(EdgeFlagPointerEXT, 636, EdgeFlagPointerEXT@12) - GL_STUB(IndexPointerEXT, 637, IndexPointerEXT@16) - GL_STUB(NormalPointerEXT, 638, NormalPointerEXT@16) - GL_STUB(TexCoordPointerEXT, 639, TexCoordPointerEXT@20) - GL_STUB(VertexPointerEXT, 640, VertexPointerEXT@20) - GL_STUB(PointParameterfEXT, 641, PointParameterfEXT@8) - GL_STUB(PointParameterfvEXT, 642, PointParameterfvEXT@8) - GL_STUB(LockArraysEXT, 643, LockArraysEXT@8) - GL_STUB(UnlockArraysEXT, 644, UnlockArraysEXT@0) - GL_STUB(SecondaryColor3bEXT, 645, SecondaryColor3bEXT@12) - GL_STUB(SecondaryColor3bvEXT, 646, SecondaryColor3bvEXT@4) - GL_STUB(SecondaryColor3dEXT, 647, SecondaryColor3dEXT@24) - GL_STUB(SecondaryColor3dvEXT, 648, SecondaryColor3dvEXT@4) - GL_STUB(SecondaryColor3fEXT, 649, SecondaryColor3fEXT@12) - GL_STUB(SecondaryColor3fvEXT, 650, SecondaryColor3fvEXT@4) - GL_STUB(SecondaryColor3iEXT, 651, SecondaryColor3iEXT@12) - GL_STUB(SecondaryColor3ivEXT, 652, SecondaryColor3ivEXT@4) - GL_STUB(SecondaryColor3sEXT, 653, SecondaryColor3sEXT@12) - GL_STUB(SecondaryColor3svEXT, 654, SecondaryColor3svEXT@4) - GL_STUB(SecondaryColor3ubEXT, 655, SecondaryColor3ubEXT@12) - GL_STUB(SecondaryColor3ubvEXT, 656, SecondaryColor3ubvEXT@4) - GL_STUB(SecondaryColor3uiEXT, 657, SecondaryColor3uiEXT@12) - GL_STUB(SecondaryColor3uivEXT, 658, SecondaryColor3uivEXT@4) - GL_STUB(SecondaryColor3usEXT, 659, SecondaryColor3usEXT@12) - GL_STUB(SecondaryColor3usvEXT, 660, SecondaryColor3usvEXT@4) - GL_STUB(SecondaryColorPointerEXT, 661, SecondaryColorPointerEXT@16) - GL_STUB(MultiDrawArraysEXT, 662, MultiDrawArraysEXT@16) - GL_STUB(MultiDrawElementsEXT, 663, MultiDrawElementsEXT@20) - GL_STUB(FogCoordPointerEXT, 664, FogCoordPointerEXT@12) - GL_STUB(FogCoorddEXT, 665, FogCoorddEXT@8) - GL_STUB(FogCoorddvEXT, 666, FogCoorddvEXT@4) - GL_STUB(FogCoordfEXT, 667, FogCoordfEXT@4) - GL_STUB(FogCoordfvEXT, 668, FogCoordfvEXT@4) - GL_STUB(_dispatch_stub_669, 669, _dispatch_stub_669@4) - HIDDEN(GL_PREFIX(_dispatch_stub_669, _dispatch_stub_669@4)) - GL_STUB(BlendFuncSeparateEXT, 670, BlendFuncSeparateEXT@16) - GL_STUB(FlushVertexArrayRangeNV, 671, FlushVertexArrayRangeNV@0) - GL_STUB(VertexArrayRangeNV, 672, VertexArrayRangeNV@8) - GL_STUB(CombinerInputNV, 673, CombinerInputNV@24) - GL_STUB(CombinerOutputNV, 674, CombinerOutputNV@40) - GL_STUB(CombinerParameterfNV, 675, CombinerParameterfNV@8) - GL_STUB(CombinerParameterfvNV, 676, CombinerParameterfvNV@8) - GL_STUB(CombinerParameteriNV, 677, CombinerParameteriNV@8) - GL_STUB(CombinerParameterivNV, 678, CombinerParameterivNV@8) - GL_STUB(FinalCombinerInputNV, 679, FinalCombinerInputNV@16) - GL_STUB(GetCombinerInputParameterfvNV, 680, GetCombinerInputParameterfvNV@20) - GL_STUB(GetCombinerInputParameterivNV, 681, GetCombinerInputParameterivNV@20) - GL_STUB(GetCombinerOutputParameterfvNV, 682, GetCombinerOutputParameterfvNV@16) - GL_STUB(GetCombinerOutputParameterivNV, 683, GetCombinerOutputParameterivNV@16) - GL_STUB(GetFinalCombinerInputParameterfvNV, 684, GetFinalCombinerInputParameterfvNV@12) - GL_STUB(GetFinalCombinerInputParameterivNV, 685, GetFinalCombinerInputParameterivNV@12) - GL_STUB(ResizeBuffersMESA, 686, ResizeBuffersMESA@0) - GL_STUB(WindowPos2dMESA, 687, WindowPos2dMESA@16) - GL_STUB(WindowPos2dvMESA, 688, WindowPos2dvMESA@4) - GL_STUB(WindowPos2fMESA, 689, WindowPos2fMESA@8) - GL_STUB(WindowPos2fvMESA, 690, WindowPos2fvMESA@4) - GL_STUB(WindowPos2iMESA, 691, WindowPos2iMESA@8) - GL_STUB(WindowPos2ivMESA, 692, WindowPos2ivMESA@4) - GL_STUB(WindowPos2sMESA, 693, WindowPos2sMESA@8) - GL_STUB(WindowPos2svMESA, 694, WindowPos2svMESA@4) - GL_STUB(WindowPos3dMESA, 695, WindowPos3dMESA@24) - GL_STUB(WindowPos3dvMESA, 696, WindowPos3dvMESA@4) - GL_STUB(WindowPos3fMESA, 697, WindowPos3fMESA@12) - GL_STUB(WindowPos3fvMESA, 698, WindowPos3fvMESA@4) - GL_STUB(WindowPos3iMESA, 699, WindowPos3iMESA@12) - GL_STUB(WindowPos3ivMESA, 700, WindowPos3ivMESA@4) - GL_STUB(WindowPos3sMESA, 701, WindowPos3sMESA@12) - GL_STUB(WindowPos3svMESA, 702, WindowPos3svMESA@4) - GL_STUB(WindowPos4dMESA, 703, WindowPos4dMESA@32) - GL_STUB(WindowPos4dvMESA, 704, WindowPos4dvMESA@4) - GL_STUB(WindowPos4fMESA, 705, WindowPos4fMESA@16) - GL_STUB(WindowPos4fvMESA, 706, WindowPos4fvMESA@4) - GL_STUB(WindowPos4iMESA, 707, WindowPos4iMESA@16) - GL_STUB(WindowPos4ivMESA, 708, WindowPos4ivMESA@4) - GL_STUB(WindowPos4sMESA, 709, WindowPos4sMESA@16) - GL_STUB(WindowPos4svMESA, 710, WindowPos4svMESA@4) - GL_STUB(_dispatch_stub_711, 711, _dispatch_stub_711@20) - HIDDEN(GL_PREFIX(_dispatch_stub_711, _dispatch_stub_711@20)) - GL_STUB(_dispatch_stub_712, 712, _dispatch_stub_712@24) - HIDDEN(GL_PREFIX(_dispatch_stub_712, _dispatch_stub_712@24)) - GL_STUB(_dispatch_stub_713, 713, _dispatch_stub_713@8) - HIDDEN(GL_PREFIX(_dispatch_stub_713, _dispatch_stub_713@8)) - GL_STUB(_dispatch_stub_714, 714, _dispatch_stub_714@4) - HIDDEN(GL_PREFIX(_dispatch_stub_714, _dispatch_stub_714@4)) - GL_STUB(_dispatch_stub_715, 715, _dispatch_stub_715@8) - HIDDEN(GL_PREFIX(_dispatch_stub_715, _dispatch_stub_715@8)) - GL_STUB(_dispatch_stub_716, 716, _dispatch_stub_716@12) - HIDDEN(GL_PREFIX(_dispatch_stub_716, _dispatch_stub_716@12)) - GL_STUB(_dispatch_stub_717, 717, _dispatch_stub_717@4) - HIDDEN(GL_PREFIX(_dispatch_stub_717, _dispatch_stub_717@4)) - GL_STUB(_dispatch_stub_718, 718, _dispatch_stub_718@8) - HIDDEN(GL_PREFIX(_dispatch_stub_718, _dispatch_stub_718@8)) - GL_STUB(_dispatch_stub_719, 719, _dispatch_stub_719@4) - HIDDEN(GL_PREFIX(_dispatch_stub_719, _dispatch_stub_719@4)) - GL_STUB(AreProgramsResidentNV, 720, AreProgramsResidentNV@12) - GL_STUB(BindProgramNV, 721, BindProgramNV@8) - GL_STUB(DeleteProgramsNV, 722, DeleteProgramsNV@8) - GL_STUB(ExecuteProgramNV, 723, ExecuteProgramNV@12) - GL_STUB(GenProgramsNV, 724, GenProgramsNV@8) - GL_STUB(GetProgramParameterdvNV, 725, GetProgramParameterdvNV@16) - GL_STUB(GetProgramParameterfvNV, 726, GetProgramParameterfvNV@16) - GL_STUB(GetProgramStringNV, 727, GetProgramStringNV@12) - GL_STUB(GetProgramivNV, 728, GetProgramivNV@12) - GL_STUB(GetTrackMatrixivNV, 729, GetTrackMatrixivNV@16) - GL_STUB(GetVertexAttribPointervNV, 730, GetVertexAttribPointervNV@12) - GL_STUB(GetVertexAttribdvNV, 731, GetVertexAttribdvNV@12) - GL_STUB(GetVertexAttribfvNV, 732, GetVertexAttribfvNV@12) - GL_STUB(GetVertexAttribivNV, 733, GetVertexAttribivNV@12) - GL_STUB(IsProgramNV, 734, IsProgramNV@4) - GL_STUB(LoadProgramNV, 735, LoadProgramNV@16) - GL_STUB(ProgramParameters4dvNV, 736, ProgramParameters4dvNV@16) - GL_STUB(ProgramParameters4fvNV, 737, ProgramParameters4fvNV@16) - GL_STUB(RequestResidentProgramsNV, 738, RequestResidentProgramsNV@8) - GL_STUB(TrackMatrixNV, 739, TrackMatrixNV@16) - GL_STUB(VertexAttrib1dNV, 740, VertexAttrib1dNV@12) - GL_STUB(VertexAttrib1dvNV, 741, VertexAttrib1dvNV@8) - GL_STUB(VertexAttrib1fNV, 742, VertexAttrib1fNV@8) - GL_STUB(VertexAttrib1fvNV, 743, VertexAttrib1fvNV@8) - GL_STUB(VertexAttrib1sNV, 744, VertexAttrib1sNV@8) - GL_STUB(VertexAttrib1svNV, 745, VertexAttrib1svNV@8) - GL_STUB(VertexAttrib2dNV, 746, VertexAttrib2dNV@20) - GL_STUB(VertexAttrib2dvNV, 747, VertexAttrib2dvNV@8) - GL_STUB(VertexAttrib2fNV, 748, VertexAttrib2fNV@12) - GL_STUB(VertexAttrib2fvNV, 749, VertexAttrib2fvNV@8) - GL_STUB(VertexAttrib2sNV, 750, VertexAttrib2sNV@12) - GL_STUB(VertexAttrib2svNV, 751, VertexAttrib2svNV@8) - GL_STUB(VertexAttrib3dNV, 752, VertexAttrib3dNV@28) - GL_STUB(VertexAttrib3dvNV, 753, VertexAttrib3dvNV@8) - GL_STUB(VertexAttrib3fNV, 754, VertexAttrib3fNV@16) - GL_STUB(VertexAttrib3fvNV, 755, VertexAttrib3fvNV@8) - GL_STUB(VertexAttrib3sNV, 756, VertexAttrib3sNV@16) - GL_STUB(VertexAttrib3svNV, 757, VertexAttrib3svNV@8) - GL_STUB(VertexAttrib4dNV, 758, VertexAttrib4dNV@36) - GL_STUB(VertexAttrib4dvNV, 759, VertexAttrib4dvNV@8) - GL_STUB(VertexAttrib4fNV, 760, VertexAttrib4fNV@20) - GL_STUB(VertexAttrib4fvNV, 761, VertexAttrib4fvNV@8) - GL_STUB(VertexAttrib4sNV, 762, VertexAttrib4sNV@20) - GL_STUB(VertexAttrib4svNV, 763, VertexAttrib4svNV@8) - GL_STUB(VertexAttrib4ubNV, 764, VertexAttrib4ubNV@20) - GL_STUB(VertexAttrib4ubvNV, 765, VertexAttrib4ubvNV@8) - GL_STUB(VertexAttribPointerNV, 766, VertexAttribPointerNV@20) - GL_STUB(VertexAttribs1dvNV, 767, VertexAttribs1dvNV@12) - GL_STUB(VertexAttribs1fvNV, 768, VertexAttribs1fvNV@12) - GL_STUB(VertexAttribs1svNV, 769, VertexAttribs1svNV@12) - GL_STUB(VertexAttribs2dvNV, 770, VertexAttribs2dvNV@12) - GL_STUB(VertexAttribs2fvNV, 771, VertexAttribs2fvNV@12) - GL_STUB(VertexAttribs2svNV, 772, VertexAttribs2svNV@12) - GL_STUB(VertexAttribs3dvNV, 773, VertexAttribs3dvNV@12) - GL_STUB(VertexAttribs3fvNV, 774, VertexAttribs3fvNV@12) - GL_STUB(VertexAttribs3svNV, 775, VertexAttribs3svNV@12) - GL_STUB(VertexAttribs4dvNV, 776, VertexAttribs4dvNV@12) - GL_STUB(VertexAttribs4fvNV, 777, VertexAttribs4fvNV@12) - GL_STUB(VertexAttribs4svNV, 778, VertexAttribs4svNV@12) - GL_STUB(VertexAttribs4ubvNV, 779, VertexAttribs4ubvNV@12) - GL_STUB(GetTexBumpParameterfvATI, 780, GetTexBumpParameterfvATI@8) - GL_STUB(GetTexBumpParameterivATI, 781, GetTexBumpParameterivATI@8) - GL_STUB(TexBumpParameterfvATI, 782, TexBumpParameterfvATI@8) - GL_STUB(TexBumpParameterivATI, 783, TexBumpParameterivATI@8) - GL_STUB(AlphaFragmentOp1ATI, 784, AlphaFragmentOp1ATI@24) - GL_STUB(AlphaFragmentOp2ATI, 785, AlphaFragmentOp2ATI@36) - GL_STUB(AlphaFragmentOp3ATI, 786, AlphaFragmentOp3ATI@48) - GL_STUB(BeginFragmentShaderATI, 787, BeginFragmentShaderATI@0) - GL_STUB(BindFragmentShaderATI, 788, BindFragmentShaderATI@4) - GL_STUB(ColorFragmentOp1ATI, 789, ColorFragmentOp1ATI@28) - GL_STUB(ColorFragmentOp2ATI, 790, ColorFragmentOp2ATI@40) - GL_STUB(ColorFragmentOp3ATI, 791, ColorFragmentOp3ATI@52) - GL_STUB(DeleteFragmentShaderATI, 792, DeleteFragmentShaderATI@4) - GL_STUB(EndFragmentShaderATI, 793, EndFragmentShaderATI@0) - GL_STUB(GenFragmentShadersATI, 794, GenFragmentShadersATI@4) - GL_STUB(PassTexCoordATI, 795, PassTexCoordATI@12) - GL_STUB(SampleMapATI, 796, SampleMapATI@12) - GL_STUB(SetFragmentShaderConstantATI, 797, SetFragmentShaderConstantATI@8) - GL_STUB(PointParameteriNV, 798, PointParameteriNV@8) - GL_STUB(PointParameterivNV, 799, PointParameterivNV@8) - GL_STUB(_dispatch_stub_800, 800, _dispatch_stub_800@4) - HIDDEN(GL_PREFIX(_dispatch_stub_800, _dispatch_stub_800@4)) - GL_STUB(_dispatch_stub_801, 801, _dispatch_stub_801@4) - HIDDEN(GL_PREFIX(_dispatch_stub_801, _dispatch_stub_801@4)) - GL_STUB(_dispatch_stub_802, 802, _dispatch_stub_802@8) - HIDDEN(GL_PREFIX(_dispatch_stub_802, _dispatch_stub_802@8)) - GL_STUB(_dispatch_stub_803, 803, _dispatch_stub_803@8) - HIDDEN(GL_PREFIX(_dispatch_stub_803, _dispatch_stub_803@8)) - GL_STUB(_dispatch_stub_804, 804, _dispatch_stub_804@4) - HIDDEN(GL_PREFIX(_dispatch_stub_804, _dispatch_stub_804@4)) - GL_STUB(GetProgramNamedParameterdvNV, 805, GetProgramNamedParameterdvNV@16) - GL_STUB(GetProgramNamedParameterfvNV, 806, GetProgramNamedParameterfvNV@16) - GL_STUB(ProgramNamedParameter4dNV, 807, ProgramNamedParameter4dNV@44) - GL_STUB(ProgramNamedParameter4dvNV, 808, ProgramNamedParameter4dvNV@16) - GL_STUB(ProgramNamedParameter4fNV, 809, ProgramNamedParameter4fNV@28) - GL_STUB(ProgramNamedParameter4fvNV, 810, ProgramNamedParameter4fvNV@16) - GL_STUB(PrimitiveRestartIndexNV, 811, PrimitiveRestartIndexNV@4) - GL_STUB(PrimitiveRestartNV, 812, PrimitiveRestartNV@0) - GL_STUB(_dispatch_stub_813, 813, _dispatch_stub_813@16) - HIDDEN(GL_PREFIX(_dispatch_stub_813, _dispatch_stub_813@16)) - GL_STUB(_dispatch_stub_814, 814, _dispatch_stub_814@8) - HIDDEN(GL_PREFIX(_dispatch_stub_814, _dispatch_stub_814@8)) - GL_STUB(BindFramebufferEXT, 815, BindFramebufferEXT@8) - GL_STUB(BindRenderbufferEXT, 816, BindRenderbufferEXT@8) - GL_STUB(CheckFramebufferStatusEXT, 817, CheckFramebufferStatusEXT@4) - GL_STUB(DeleteFramebuffersEXT, 818, DeleteFramebuffersEXT@8) - GL_STUB(DeleteRenderbuffersEXT, 819, DeleteRenderbuffersEXT@8) - GL_STUB(FramebufferRenderbufferEXT, 820, FramebufferRenderbufferEXT@16) - GL_STUB(FramebufferTexture1DEXT, 821, FramebufferTexture1DEXT@20) - GL_STUB(FramebufferTexture2DEXT, 822, FramebufferTexture2DEXT@20) - GL_STUB(FramebufferTexture3DEXT, 823, FramebufferTexture3DEXT@24) - GL_STUB(GenFramebuffersEXT, 824, GenFramebuffersEXT@8) - GL_STUB(GenRenderbuffersEXT, 825, GenRenderbuffersEXT@8) - GL_STUB(GenerateMipmapEXT, 826, GenerateMipmapEXT@4) - GL_STUB(GetFramebufferAttachmentParameterivEXT, 827, GetFramebufferAttachmentParameterivEXT@16) - GL_STUB(GetRenderbufferParameterivEXT, 828, GetRenderbufferParameterivEXT@12) - GL_STUB(IsFramebufferEXT, 829, IsFramebufferEXT@4) - GL_STUB(IsRenderbufferEXT, 830, IsRenderbufferEXT@4) - GL_STUB(RenderbufferStorageEXT, 831, RenderbufferStorageEXT@16) - GL_STUB(_dispatch_stub_832, 832, _dispatch_stub_832@40) - HIDDEN(GL_PREFIX(_dispatch_stub_832, _dispatch_stub_832@40)) - GL_STUB(_dispatch_stub_833, 833, _dispatch_stub_833@12) - HIDDEN(GL_PREFIX(_dispatch_stub_833, _dispatch_stub_833@12)) - GL_STUB(_dispatch_stub_834, 834, _dispatch_stub_834@12) - HIDDEN(GL_PREFIX(_dispatch_stub_834, _dispatch_stub_834@12)) - GL_STUB(BindFragDataLocationEXT, 835, BindFragDataLocationEXT@12) - GL_STUB(GetFragDataLocationEXT, 836, GetFragDataLocationEXT@8) - GL_STUB(GetUniformuivEXT, 837, GetUniformuivEXT@12) - GL_STUB(GetVertexAttribIivEXT, 838, GetVertexAttribIivEXT@12) - GL_STUB(GetVertexAttribIuivEXT, 839, GetVertexAttribIuivEXT@12) - GL_STUB(Uniform1uiEXT, 840, Uniform1uiEXT@8) - GL_STUB(Uniform1uivEXT, 841, Uniform1uivEXT@12) - GL_STUB(Uniform2uiEXT, 842, Uniform2uiEXT@12) - GL_STUB(Uniform2uivEXT, 843, Uniform2uivEXT@12) - GL_STUB(Uniform3uiEXT, 844, Uniform3uiEXT@16) - GL_STUB(Uniform3uivEXT, 845, Uniform3uivEXT@12) - GL_STUB(Uniform4uiEXT, 846, Uniform4uiEXT@20) - GL_STUB(Uniform4uivEXT, 847, Uniform4uivEXT@12) - GL_STUB(VertexAttribI1iEXT, 848, VertexAttribI1iEXT@8) - GL_STUB(VertexAttribI1ivEXT, 849, VertexAttribI1ivEXT@8) - GL_STUB(VertexAttribI1uiEXT, 850, VertexAttribI1uiEXT@8) - GL_STUB(VertexAttribI1uivEXT, 851, VertexAttribI1uivEXT@8) - GL_STUB(VertexAttribI2iEXT, 852, VertexAttribI2iEXT@12) - GL_STUB(VertexAttribI2ivEXT, 853, VertexAttribI2ivEXT@8) - GL_STUB(VertexAttribI2uiEXT, 854, VertexAttribI2uiEXT@12) - GL_STUB(VertexAttribI2uivEXT, 855, VertexAttribI2uivEXT@8) - GL_STUB(VertexAttribI3iEXT, 856, VertexAttribI3iEXT@16) - GL_STUB(VertexAttribI3ivEXT, 857, VertexAttribI3ivEXT@8) - GL_STUB(VertexAttribI3uiEXT, 858, VertexAttribI3uiEXT@16) - GL_STUB(VertexAttribI3uivEXT, 859, VertexAttribI3uivEXT@8) - GL_STUB(VertexAttribI4bvEXT, 860, VertexAttribI4bvEXT@8) - GL_STUB(VertexAttribI4iEXT, 861, VertexAttribI4iEXT@20) - GL_STUB(VertexAttribI4ivEXT, 862, VertexAttribI4ivEXT@8) - GL_STUB(VertexAttribI4svEXT, 863, VertexAttribI4svEXT@8) - GL_STUB(VertexAttribI4ubvEXT, 864, VertexAttribI4ubvEXT@8) - GL_STUB(VertexAttribI4uiEXT, 865, VertexAttribI4uiEXT@20) - GL_STUB(VertexAttribI4uivEXT, 866, VertexAttribI4uivEXT@8) - GL_STUB(VertexAttribI4usvEXT, 867, VertexAttribI4usvEXT@8) - GL_STUB(VertexAttribIPointerEXT, 868, VertexAttribIPointerEXT@20) - GL_STUB(FramebufferTextureLayerEXT, 869, FramebufferTextureLayerEXT@20) - GL_STUB(ColorMaskIndexedEXT, 870, ColorMaskIndexedEXT@20) - GL_STUB(DisableIndexedEXT, 871, DisableIndexedEXT@8) - GL_STUB(EnableIndexedEXT, 872, EnableIndexedEXT@8) - GL_STUB(GetBooleanIndexedvEXT, 873, GetBooleanIndexedvEXT@12) - GL_STUB(GetIntegerIndexedvEXT, 874, GetIntegerIndexedvEXT@12) - GL_STUB(IsEnabledIndexedEXT, 875, IsEnabledIndexedEXT@8) - GL_STUB(ClearColorIiEXT, 876, ClearColorIiEXT@16) - GL_STUB(ClearColorIuiEXT, 877, ClearColorIuiEXT@16) - GL_STUB(GetTexParameterIivEXT, 878, GetTexParameterIivEXT@12) - GL_STUB(GetTexParameterIuivEXT, 879, GetTexParameterIuivEXT@12) - GL_STUB(TexParameterIivEXT, 880, TexParameterIivEXT@12) - GL_STUB(TexParameterIuivEXT, 881, TexParameterIuivEXT@12) - GL_STUB(BeginConditionalRenderNV, 882, BeginConditionalRenderNV@8) - GL_STUB(EndConditionalRenderNV, 883, EndConditionalRenderNV@0) - GL_STUB(BeginTransformFeedbackEXT, 884, BeginTransformFeedbackEXT@4) - GL_STUB(BindBufferBaseEXT, 885, BindBufferBaseEXT@12) - GL_STUB(BindBufferOffsetEXT, 886, BindBufferOffsetEXT@16) - GL_STUB(BindBufferRangeEXT, 887, BindBufferRangeEXT@20) - GL_STUB(EndTransformFeedbackEXT, 888, EndTransformFeedbackEXT@0) - GL_STUB(GetTransformFeedbackVaryingEXT, 889, GetTransformFeedbackVaryingEXT@28) - GL_STUB(TransformFeedbackVaryingsEXT, 890, TransformFeedbackVaryingsEXT@16) - GL_STUB(ProvokingVertexEXT, 891, ProvokingVertexEXT@4) - GL_STUB(_dispatch_stub_892, 892, _dispatch_stub_892@12) - HIDDEN(GL_PREFIX(_dispatch_stub_892, _dispatch_stub_892@12)) - GL_STUB(_dispatch_stub_893, 893, _dispatch_stub_893@12) - HIDDEN(GL_PREFIX(_dispatch_stub_893, _dispatch_stub_893@12)) - GL_STUB(GetObjectParameterivAPPLE, 894, GetObjectParameterivAPPLE@16) - GL_STUB(ObjectPurgeableAPPLE, 895, ObjectPurgeableAPPLE@12) - GL_STUB(ObjectUnpurgeableAPPLE, 896, ObjectUnpurgeableAPPLE@12) - GL_STUB(ActiveProgramEXT, 897, ActiveProgramEXT@4) - GL_STUB(CreateShaderProgramEXT, 898, CreateShaderProgramEXT@8) - GL_STUB(UseShaderProgramEXT, 899, UseShaderProgramEXT@8) - GL_STUB(TextureBarrierNV, 900, TextureBarrierNV@0) - GL_STUB(_dispatch_stub_901, 901, _dispatch_stub_901@16) - HIDDEN(GL_PREFIX(_dispatch_stub_901, _dispatch_stub_901@16)) - GL_STUB(_dispatch_stub_902, 902, _dispatch_stub_902@16) - HIDDEN(GL_PREFIX(_dispatch_stub_902, _dispatch_stub_902@16)) - GL_STUB(_dispatch_stub_903, 903, _dispatch_stub_903@16) - HIDDEN(GL_PREFIX(_dispatch_stub_903, _dispatch_stub_903@16)) - GL_STUB(_dispatch_stub_904, 904, _dispatch_stub_904@12) - HIDDEN(GL_PREFIX(_dispatch_stub_904, _dispatch_stub_904@12)) - GL_STUB(_dispatch_stub_905, 905, _dispatch_stub_905@12) - HIDDEN(GL_PREFIX(_dispatch_stub_905, _dispatch_stub_905@12)) - GL_STUB(EGLImageTargetRenderbufferStorageOES, 906, EGLImageTargetRenderbufferStorageOES@8) - GL_STUB(EGLImageTargetTexture2DOES, 907, EGLImageTargetTexture2DOES@8) + GL_STUB(GetGraphicsResetStatusARB, 626, GetGraphicsResetStatusARB@0) + GL_STUB(GetnColorTableARB, 627, GetnColorTableARB@20) + GL_STUB(GetnCompressedTexImageARB, 628, GetnCompressedTexImageARB@16) + GL_STUB(GetnConvolutionFilterARB, 629, GetnConvolutionFilterARB@20) + GL_STUB(GetnHistogramARB, 630, GetnHistogramARB@24) + GL_STUB(GetnMapdvARB, 631, GetnMapdvARB@16) + GL_STUB(GetnMapfvARB, 632, GetnMapfvARB@16) + GL_STUB(GetnMapivARB, 633, GetnMapivARB@16) + GL_STUB(GetnMinmaxARB, 634, GetnMinmaxARB@24) + GL_STUB(GetnPixelMapfvARB, 635, GetnPixelMapfvARB@12) + GL_STUB(GetnPixelMapuivARB, 636, GetnPixelMapuivARB@12) + GL_STUB(GetnPixelMapusvARB, 637, GetnPixelMapusvARB@12) + GL_STUB(GetnPolygonStippleARB, 638, GetnPolygonStippleARB@8) + GL_STUB(GetnSeparableFilterARB, 639, GetnSeparableFilterARB@32) + GL_STUB(GetnTexImageARB, 640, GetnTexImageARB@24) + GL_STUB(GetnUniformdvARB, 641, GetnUniformdvARB@16) + GL_STUB(GetnUniformfvARB, 642, GetnUniformfvARB@16) + GL_STUB(GetnUniformivARB, 643, GetnUniformivARB@16) + GL_STUB(GetnUniformuivARB, 644, GetnUniformuivARB@16) + GL_STUB(ReadnPixelsARB, 645, ReadnPixelsARB@32) + GL_STUB(PolygonOffsetEXT, 646, PolygonOffsetEXT@8) + GL_STUB(_dispatch_stub_647, 647, _dispatch_stub_647@8) + HIDDEN(GL_PREFIX(_dispatch_stub_647, _dispatch_stub_647@8)) + GL_STUB(_dispatch_stub_648, 648, _dispatch_stub_648@8) + HIDDEN(GL_PREFIX(_dispatch_stub_648, _dispatch_stub_648@8)) + GL_STUB(_dispatch_stub_649, 649, _dispatch_stub_649@8) + HIDDEN(GL_PREFIX(_dispatch_stub_649, _dispatch_stub_649@8)) + GL_STUB(_dispatch_stub_650, 650, _dispatch_stub_650@8) + HIDDEN(GL_PREFIX(_dispatch_stub_650, _dispatch_stub_650@8)) + GL_STUB(_dispatch_stub_651, 651, _dispatch_stub_651@8) + HIDDEN(GL_PREFIX(_dispatch_stub_651, _dispatch_stub_651@8)) + GL_STUB(_dispatch_stub_652, 652, _dispatch_stub_652@8) + HIDDEN(GL_PREFIX(_dispatch_stub_652, _dispatch_stub_652@8)) + GL_STUB(_dispatch_stub_653, 653, _dispatch_stub_653@8) + HIDDEN(GL_PREFIX(_dispatch_stub_653, _dispatch_stub_653@8)) + GL_STUB(_dispatch_stub_654, 654, _dispatch_stub_654@4) + HIDDEN(GL_PREFIX(_dispatch_stub_654, _dispatch_stub_654@4)) + GL_STUB(ColorPointerEXT, 655, ColorPointerEXT@20) + GL_STUB(EdgeFlagPointerEXT, 656, EdgeFlagPointerEXT@12) + GL_STUB(IndexPointerEXT, 657, IndexPointerEXT@16) + GL_STUB(NormalPointerEXT, 658, NormalPointerEXT@16) + GL_STUB(TexCoordPointerEXT, 659, TexCoordPointerEXT@20) + GL_STUB(VertexPointerEXT, 660, VertexPointerEXT@20) + GL_STUB(PointParameterfEXT, 661, PointParameterfEXT@8) + GL_STUB(PointParameterfvEXT, 662, PointParameterfvEXT@8) + GL_STUB(LockArraysEXT, 663, LockArraysEXT@8) + GL_STUB(UnlockArraysEXT, 664, UnlockArraysEXT@0) + GL_STUB(SecondaryColor3bEXT, 665, SecondaryColor3bEXT@12) + GL_STUB(SecondaryColor3bvEXT, 666, SecondaryColor3bvEXT@4) + GL_STUB(SecondaryColor3dEXT, 667, SecondaryColor3dEXT@24) + GL_STUB(SecondaryColor3dvEXT, 668, SecondaryColor3dvEXT@4) + GL_STUB(SecondaryColor3fEXT, 669, SecondaryColor3fEXT@12) + GL_STUB(SecondaryColor3fvEXT, 670, SecondaryColor3fvEXT@4) + GL_STUB(SecondaryColor3iEXT, 671, SecondaryColor3iEXT@12) + GL_STUB(SecondaryColor3ivEXT, 672, SecondaryColor3ivEXT@4) + GL_STUB(SecondaryColor3sEXT, 673, SecondaryColor3sEXT@12) + GL_STUB(SecondaryColor3svEXT, 674, SecondaryColor3svEXT@4) + GL_STUB(SecondaryColor3ubEXT, 675, SecondaryColor3ubEXT@12) + GL_STUB(SecondaryColor3ubvEXT, 676, SecondaryColor3ubvEXT@4) + GL_STUB(SecondaryColor3uiEXT, 677, SecondaryColor3uiEXT@12) + GL_STUB(SecondaryColor3uivEXT, 678, SecondaryColor3uivEXT@4) + GL_STUB(SecondaryColor3usEXT, 679, SecondaryColor3usEXT@12) + GL_STUB(SecondaryColor3usvEXT, 680, SecondaryColor3usvEXT@4) + GL_STUB(SecondaryColorPointerEXT, 681, SecondaryColorPointerEXT@16) + GL_STUB(MultiDrawArraysEXT, 682, MultiDrawArraysEXT@16) + GL_STUB(MultiDrawElementsEXT, 683, MultiDrawElementsEXT@20) + GL_STUB(FogCoordPointerEXT, 684, FogCoordPointerEXT@12) + GL_STUB(FogCoorddEXT, 685, FogCoorddEXT@8) + GL_STUB(FogCoorddvEXT, 686, FogCoorddvEXT@4) + GL_STUB(FogCoordfEXT, 687, FogCoordfEXT@4) + GL_STUB(FogCoordfvEXT, 688, FogCoordfvEXT@4) + GL_STUB(_dispatch_stub_689, 689, _dispatch_stub_689@4) + HIDDEN(GL_PREFIX(_dispatch_stub_689, _dispatch_stub_689@4)) + GL_STUB(BlendFuncSeparateEXT, 690, BlendFuncSeparateEXT@16) + GL_STUB(FlushVertexArrayRangeNV, 691, FlushVertexArrayRangeNV@0) + GL_STUB(VertexArrayRangeNV, 692, VertexArrayRangeNV@8) + GL_STUB(CombinerInputNV, 693, CombinerInputNV@24) + GL_STUB(CombinerOutputNV, 694, CombinerOutputNV@40) + GL_STUB(CombinerParameterfNV, 695, CombinerParameterfNV@8) + GL_STUB(CombinerParameterfvNV, 696, CombinerParameterfvNV@8) + GL_STUB(CombinerParameteriNV, 697, CombinerParameteriNV@8) + GL_STUB(CombinerParameterivNV, 698, CombinerParameterivNV@8) + GL_STUB(FinalCombinerInputNV, 699, FinalCombinerInputNV@16) + GL_STUB(GetCombinerInputParameterfvNV, 700, GetCombinerInputParameterfvNV@20) + GL_STUB(GetCombinerInputParameterivNV, 701, GetCombinerInputParameterivNV@20) + GL_STUB(GetCombinerOutputParameterfvNV, 702, GetCombinerOutputParameterfvNV@16) + GL_STUB(GetCombinerOutputParameterivNV, 703, GetCombinerOutputParameterivNV@16) + GL_STUB(GetFinalCombinerInputParameterfvNV, 704, GetFinalCombinerInputParameterfvNV@12) + GL_STUB(GetFinalCombinerInputParameterivNV, 705, GetFinalCombinerInputParameterivNV@12) + GL_STUB(ResizeBuffersMESA, 706, ResizeBuffersMESA@0) + GL_STUB(WindowPos2dMESA, 707, WindowPos2dMESA@16) + GL_STUB(WindowPos2dvMESA, 708, WindowPos2dvMESA@4) + GL_STUB(WindowPos2fMESA, 709, WindowPos2fMESA@8) + GL_STUB(WindowPos2fvMESA, 710, WindowPos2fvMESA@4) + GL_STUB(WindowPos2iMESA, 711, WindowPos2iMESA@8) + GL_STUB(WindowPos2ivMESA, 712, WindowPos2ivMESA@4) + GL_STUB(WindowPos2sMESA, 713, WindowPos2sMESA@8) + GL_STUB(WindowPos2svMESA, 714, WindowPos2svMESA@4) + GL_STUB(WindowPos3dMESA, 715, WindowPos3dMESA@24) + GL_STUB(WindowPos3dvMESA, 716, WindowPos3dvMESA@4) + GL_STUB(WindowPos3fMESA, 717, WindowPos3fMESA@12) + GL_STUB(WindowPos3fvMESA, 718, WindowPos3fvMESA@4) + GL_STUB(WindowPos3iMESA, 719, WindowPos3iMESA@12) + GL_STUB(WindowPos3ivMESA, 720, WindowPos3ivMESA@4) + GL_STUB(WindowPos3sMESA, 721, WindowPos3sMESA@12) + GL_STUB(WindowPos3svMESA, 722, WindowPos3svMESA@4) + GL_STUB(WindowPos4dMESA, 723, WindowPos4dMESA@32) + GL_STUB(WindowPos4dvMESA, 724, WindowPos4dvMESA@4) + GL_STUB(WindowPos4fMESA, 725, WindowPos4fMESA@16) + GL_STUB(WindowPos4fvMESA, 726, WindowPos4fvMESA@4) + GL_STUB(WindowPos4iMESA, 727, WindowPos4iMESA@16) + GL_STUB(WindowPos4ivMESA, 728, WindowPos4ivMESA@4) + GL_STUB(WindowPos4sMESA, 729, WindowPos4sMESA@16) + GL_STUB(WindowPos4svMESA, 730, WindowPos4svMESA@4) + GL_STUB(_dispatch_stub_731, 731, _dispatch_stub_731@20) + HIDDEN(GL_PREFIX(_dispatch_stub_731, _dispatch_stub_731@20)) + GL_STUB(_dispatch_stub_732, 732, _dispatch_stub_732@24) + HIDDEN(GL_PREFIX(_dispatch_stub_732, _dispatch_stub_732@24)) + GL_STUB(_dispatch_stub_733, 733, _dispatch_stub_733@8) + HIDDEN(GL_PREFIX(_dispatch_stub_733, _dispatch_stub_733@8)) + GL_STUB(_dispatch_stub_734, 734, _dispatch_stub_734@4) + HIDDEN(GL_PREFIX(_dispatch_stub_734, _dispatch_stub_734@4)) + GL_STUB(_dispatch_stub_735, 735, _dispatch_stub_735@8) + HIDDEN(GL_PREFIX(_dispatch_stub_735, _dispatch_stub_735@8)) + GL_STUB(_dispatch_stub_736, 736, _dispatch_stub_736@12) + HIDDEN(GL_PREFIX(_dispatch_stub_736, _dispatch_stub_736@12)) + GL_STUB(_dispatch_stub_737, 737, _dispatch_stub_737@4) + HIDDEN(GL_PREFIX(_dispatch_stub_737, _dispatch_stub_737@4)) + GL_STUB(_dispatch_stub_738, 738, _dispatch_stub_738@8) + HIDDEN(GL_PREFIX(_dispatch_stub_738, _dispatch_stub_738@8)) + GL_STUB(_dispatch_stub_739, 739, _dispatch_stub_739@4) + HIDDEN(GL_PREFIX(_dispatch_stub_739, _dispatch_stub_739@4)) + GL_STUB(AreProgramsResidentNV, 740, AreProgramsResidentNV@12) + GL_STUB(BindProgramNV, 741, BindProgramNV@8) + GL_STUB(DeleteProgramsNV, 742, DeleteProgramsNV@8) + GL_STUB(ExecuteProgramNV, 743, ExecuteProgramNV@12) + GL_STUB(GenProgramsNV, 744, GenProgramsNV@8) + GL_STUB(GetProgramParameterdvNV, 745, GetProgramParameterdvNV@16) + GL_STUB(GetProgramParameterfvNV, 746, GetProgramParameterfvNV@16) + GL_STUB(GetProgramStringNV, 747, GetProgramStringNV@12) + GL_STUB(GetProgramivNV, 748, GetProgramivNV@12) + GL_STUB(GetTrackMatrixivNV, 749, GetTrackMatrixivNV@16) + GL_STUB(GetVertexAttribPointervNV, 750, GetVertexAttribPointervNV@12) + GL_STUB(GetVertexAttribdvNV, 751, GetVertexAttribdvNV@12) + GL_STUB(GetVertexAttribfvNV, 752, GetVertexAttribfvNV@12) + GL_STUB(GetVertexAttribivNV, 753, GetVertexAttribivNV@12) + GL_STUB(IsProgramNV, 754, IsProgramNV@4) + GL_STUB(LoadProgramNV, 755, LoadProgramNV@16) + GL_STUB(ProgramParameters4dvNV, 756, ProgramParameters4dvNV@16) + GL_STUB(ProgramParameters4fvNV, 757, ProgramParameters4fvNV@16) + GL_STUB(RequestResidentProgramsNV, 758, RequestResidentProgramsNV@8) + GL_STUB(TrackMatrixNV, 759, TrackMatrixNV@16) + GL_STUB(VertexAttrib1dNV, 760, VertexAttrib1dNV@12) + GL_STUB(VertexAttrib1dvNV, 761, VertexAttrib1dvNV@8) + GL_STUB(VertexAttrib1fNV, 762, VertexAttrib1fNV@8) + GL_STUB(VertexAttrib1fvNV, 763, VertexAttrib1fvNV@8) + GL_STUB(VertexAttrib1sNV, 764, VertexAttrib1sNV@8) + GL_STUB(VertexAttrib1svNV, 765, VertexAttrib1svNV@8) + GL_STUB(VertexAttrib2dNV, 766, VertexAttrib2dNV@20) + GL_STUB(VertexAttrib2dvNV, 767, VertexAttrib2dvNV@8) + GL_STUB(VertexAttrib2fNV, 768, VertexAttrib2fNV@12) + GL_STUB(VertexAttrib2fvNV, 769, VertexAttrib2fvNV@8) + GL_STUB(VertexAttrib2sNV, 770, VertexAttrib2sNV@12) + GL_STUB(VertexAttrib2svNV, 771, VertexAttrib2svNV@8) + GL_STUB(VertexAttrib3dNV, 772, VertexAttrib3dNV@28) + GL_STUB(VertexAttrib3dvNV, 773, VertexAttrib3dvNV@8) + GL_STUB(VertexAttrib3fNV, 774, VertexAttrib3fNV@16) + GL_STUB(VertexAttrib3fvNV, 775, VertexAttrib3fvNV@8) + GL_STUB(VertexAttrib3sNV, 776, VertexAttrib3sNV@16) + GL_STUB(VertexAttrib3svNV, 777, VertexAttrib3svNV@8) + GL_STUB(VertexAttrib4dNV, 778, VertexAttrib4dNV@36) + GL_STUB(VertexAttrib4dvNV, 779, VertexAttrib4dvNV@8) + GL_STUB(VertexAttrib4fNV, 780, VertexAttrib4fNV@20) + GL_STUB(VertexAttrib4fvNV, 781, VertexAttrib4fvNV@8) + GL_STUB(VertexAttrib4sNV, 782, VertexAttrib4sNV@20) + GL_STUB(VertexAttrib4svNV, 783, VertexAttrib4svNV@8) + GL_STUB(VertexAttrib4ubNV, 784, VertexAttrib4ubNV@20) + GL_STUB(VertexAttrib4ubvNV, 785, VertexAttrib4ubvNV@8) + GL_STUB(VertexAttribPointerNV, 786, VertexAttribPointerNV@20) + GL_STUB(VertexAttribs1dvNV, 787, VertexAttribs1dvNV@12) + GL_STUB(VertexAttribs1fvNV, 788, VertexAttribs1fvNV@12) + GL_STUB(VertexAttribs1svNV, 789, VertexAttribs1svNV@12) + GL_STUB(VertexAttribs2dvNV, 790, VertexAttribs2dvNV@12) + GL_STUB(VertexAttribs2fvNV, 791, VertexAttribs2fvNV@12) + GL_STUB(VertexAttribs2svNV, 792, VertexAttribs2svNV@12) + GL_STUB(VertexAttribs3dvNV, 793, VertexAttribs3dvNV@12) + GL_STUB(VertexAttribs3fvNV, 794, VertexAttribs3fvNV@12) + GL_STUB(VertexAttribs3svNV, 795, VertexAttribs3svNV@12) + GL_STUB(VertexAttribs4dvNV, 796, VertexAttribs4dvNV@12) + GL_STUB(VertexAttribs4fvNV, 797, VertexAttribs4fvNV@12) + GL_STUB(VertexAttribs4svNV, 798, VertexAttribs4svNV@12) + GL_STUB(VertexAttribs4ubvNV, 799, VertexAttribs4ubvNV@12) + GL_STUB(GetTexBumpParameterfvATI, 800, GetTexBumpParameterfvATI@8) + GL_STUB(GetTexBumpParameterivATI, 801, GetTexBumpParameterivATI@8) + GL_STUB(TexBumpParameterfvATI, 802, TexBumpParameterfvATI@8) + GL_STUB(TexBumpParameterivATI, 803, TexBumpParameterivATI@8) + GL_STUB(AlphaFragmentOp1ATI, 804, AlphaFragmentOp1ATI@24) + GL_STUB(AlphaFragmentOp2ATI, 805, AlphaFragmentOp2ATI@36) + GL_STUB(AlphaFragmentOp3ATI, 806, AlphaFragmentOp3ATI@48) + GL_STUB(BeginFragmentShaderATI, 807, BeginFragmentShaderATI@0) + GL_STUB(BindFragmentShaderATI, 808, BindFragmentShaderATI@4) + GL_STUB(ColorFragmentOp1ATI, 809, ColorFragmentOp1ATI@28) + GL_STUB(ColorFragmentOp2ATI, 810, ColorFragmentOp2ATI@40) + GL_STUB(ColorFragmentOp3ATI, 811, ColorFragmentOp3ATI@52) + GL_STUB(DeleteFragmentShaderATI, 812, DeleteFragmentShaderATI@4) + GL_STUB(EndFragmentShaderATI, 813, EndFragmentShaderATI@0) + GL_STUB(GenFragmentShadersATI, 814, GenFragmentShadersATI@4) + GL_STUB(PassTexCoordATI, 815, PassTexCoordATI@12) + GL_STUB(SampleMapATI, 816, SampleMapATI@12) + GL_STUB(SetFragmentShaderConstantATI, 817, SetFragmentShaderConstantATI@8) + GL_STUB(PointParameteriNV, 818, PointParameteriNV@8) + GL_STUB(PointParameterivNV, 819, PointParameterivNV@8) + GL_STUB(_dispatch_stub_820, 820, _dispatch_stub_820@4) + HIDDEN(GL_PREFIX(_dispatch_stub_820, _dispatch_stub_820@4)) + GL_STUB(_dispatch_stub_821, 821, _dispatch_stub_821@4) + HIDDEN(GL_PREFIX(_dispatch_stub_821, _dispatch_stub_821@4)) + GL_STUB(_dispatch_stub_822, 822, _dispatch_stub_822@8) + HIDDEN(GL_PREFIX(_dispatch_stub_822, _dispatch_stub_822@8)) + GL_STUB(_dispatch_stub_823, 823, _dispatch_stub_823@8) + HIDDEN(GL_PREFIX(_dispatch_stub_823, _dispatch_stub_823@8)) + GL_STUB(_dispatch_stub_824, 824, _dispatch_stub_824@4) + HIDDEN(GL_PREFIX(_dispatch_stub_824, _dispatch_stub_824@4)) + GL_STUB(GetProgramNamedParameterdvNV, 825, GetProgramNamedParameterdvNV@16) + GL_STUB(GetProgramNamedParameterfvNV, 826, GetProgramNamedParameterfvNV@16) + GL_STUB(ProgramNamedParameter4dNV, 827, ProgramNamedParameter4dNV@44) + GL_STUB(ProgramNamedParameter4dvNV, 828, ProgramNamedParameter4dvNV@16) + GL_STUB(ProgramNamedParameter4fNV, 829, ProgramNamedParameter4fNV@28) + GL_STUB(ProgramNamedParameter4fvNV, 830, ProgramNamedParameter4fvNV@16) + GL_STUB(PrimitiveRestartIndexNV, 831, PrimitiveRestartIndexNV@4) + GL_STUB(PrimitiveRestartNV, 832, PrimitiveRestartNV@0) + GL_STUB(_dispatch_stub_833, 833, _dispatch_stub_833@16) + HIDDEN(GL_PREFIX(_dispatch_stub_833, _dispatch_stub_833@16)) + GL_STUB(_dispatch_stub_834, 834, _dispatch_stub_834@8) + HIDDEN(GL_PREFIX(_dispatch_stub_834, _dispatch_stub_834@8)) + GL_STUB(BindFramebufferEXT, 835, BindFramebufferEXT@8) + GL_STUB(BindRenderbufferEXT, 836, BindRenderbufferEXT@8) + GL_STUB(CheckFramebufferStatusEXT, 837, CheckFramebufferStatusEXT@4) + GL_STUB(DeleteFramebuffersEXT, 838, DeleteFramebuffersEXT@8) + GL_STUB(DeleteRenderbuffersEXT, 839, DeleteRenderbuffersEXT@8) + GL_STUB(FramebufferRenderbufferEXT, 840, FramebufferRenderbufferEXT@16) + GL_STUB(FramebufferTexture1DEXT, 841, FramebufferTexture1DEXT@20) + GL_STUB(FramebufferTexture2DEXT, 842, FramebufferTexture2DEXT@20) + GL_STUB(FramebufferTexture3DEXT, 843, FramebufferTexture3DEXT@24) + GL_STUB(GenFramebuffersEXT, 844, GenFramebuffersEXT@8) + GL_STUB(GenRenderbuffersEXT, 845, GenRenderbuffersEXT@8) + GL_STUB(GenerateMipmapEXT, 846, GenerateMipmapEXT@4) + GL_STUB(GetFramebufferAttachmentParameterivEXT, 847, GetFramebufferAttachmentParameterivEXT@16) + GL_STUB(GetRenderbufferParameterivEXT, 848, GetRenderbufferParameterivEXT@12) + GL_STUB(IsFramebufferEXT, 849, IsFramebufferEXT@4) + GL_STUB(IsRenderbufferEXT, 850, IsRenderbufferEXT@4) + GL_STUB(RenderbufferStorageEXT, 851, RenderbufferStorageEXT@16) + GL_STUB(_dispatch_stub_852, 852, _dispatch_stub_852@40) + HIDDEN(GL_PREFIX(_dispatch_stub_852, _dispatch_stub_852@40)) + GL_STUB(_dispatch_stub_853, 853, _dispatch_stub_853@12) + HIDDEN(GL_PREFIX(_dispatch_stub_853, _dispatch_stub_853@12)) + GL_STUB(_dispatch_stub_854, 854, _dispatch_stub_854@12) + HIDDEN(GL_PREFIX(_dispatch_stub_854, _dispatch_stub_854@12)) + GL_STUB(BindFragDataLocationEXT, 855, BindFragDataLocationEXT@12) + GL_STUB(GetFragDataLocationEXT, 856, GetFragDataLocationEXT@8) + GL_STUB(GetUniformuivEXT, 857, GetUniformuivEXT@12) + GL_STUB(GetVertexAttribIivEXT, 858, GetVertexAttribIivEXT@12) + GL_STUB(GetVertexAttribIuivEXT, 859, GetVertexAttribIuivEXT@12) + GL_STUB(Uniform1uiEXT, 860, Uniform1uiEXT@8) + GL_STUB(Uniform1uivEXT, 861, Uniform1uivEXT@12) + GL_STUB(Uniform2uiEXT, 862, Uniform2uiEXT@12) + GL_STUB(Uniform2uivEXT, 863, Uniform2uivEXT@12) + GL_STUB(Uniform3uiEXT, 864, Uniform3uiEXT@16) + GL_STUB(Uniform3uivEXT, 865, Uniform3uivEXT@12) + GL_STUB(Uniform4uiEXT, 866, Uniform4uiEXT@20) + GL_STUB(Uniform4uivEXT, 867, Uniform4uivEXT@12) + GL_STUB(VertexAttribI1iEXT, 868, VertexAttribI1iEXT@8) + GL_STUB(VertexAttribI1ivEXT, 869, VertexAttribI1ivEXT@8) + GL_STUB(VertexAttribI1uiEXT, 870, VertexAttribI1uiEXT@8) + GL_STUB(VertexAttribI1uivEXT, 871, VertexAttribI1uivEXT@8) + GL_STUB(VertexAttribI2iEXT, 872, VertexAttribI2iEXT@12) + GL_STUB(VertexAttribI2ivEXT, 873, VertexAttribI2ivEXT@8) + GL_STUB(VertexAttribI2uiEXT, 874, VertexAttribI2uiEXT@12) + GL_STUB(VertexAttribI2uivEXT, 875, VertexAttribI2uivEXT@8) + GL_STUB(VertexAttribI3iEXT, 876, VertexAttribI3iEXT@16) + GL_STUB(VertexAttribI3ivEXT, 877, VertexAttribI3ivEXT@8) + GL_STUB(VertexAttribI3uiEXT, 878, VertexAttribI3uiEXT@16) + GL_STUB(VertexAttribI3uivEXT, 879, VertexAttribI3uivEXT@8) + GL_STUB(VertexAttribI4bvEXT, 880, VertexAttribI4bvEXT@8) + GL_STUB(VertexAttribI4iEXT, 881, VertexAttribI4iEXT@20) + GL_STUB(VertexAttribI4ivEXT, 882, VertexAttribI4ivEXT@8) + GL_STUB(VertexAttribI4svEXT, 883, VertexAttribI4svEXT@8) + GL_STUB(VertexAttribI4ubvEXT, 884, VertexAttribI4ubvEXT@8) + GL_STUB(VertexAttribI4uiEXT, 885, VertexAttribI4uiEXT@20) + GL_STUB(VertexAttribI4uivEXT, 886, VertexAttribI4uivEXT@8) + GL_STUB(VertexAttribI4usvEXT, 887, VertexAttribI4usvEXT@8) + GL_STUB(VertexAttribIPointerEXT, 888, VertexAttribIPointerEXT@20) + GL_STUB(FramebufferTextureLayerEXT, 889, FramebufferTextureLayerEXT@20) + GL_STUB(ColorMaskIndexedEXT, 890, ColorMaskIndexedEXT@20) + GL_STUB(DisableIndexedEXT, 891, DisableIndexedEXT@8) + GL_STUB(EnableIndexedEXT, 892, EnableIndexedEXT@8) + GL_STUB(GetBooleanIndexedvEXT, 893, GetBooleanIndexedvEXT@12) + GL_STUB(GetIntegerIndexedvEXT, 894, GetIntegerIndexedvEXT@12) + GL_STUB(IsEnabledIndexedEXT, 895, IsEnabledIndexedEXT@8) + GL_STUB(ClearColorIiEXT, 896, ClearColorIiEXT@16) + GL_STUB(ClearColorIuiEXT, 897, ClearColorIuiEXT@16) + GL_STUB(GetTexParameterIivEXT, 898, GetTexParameterIivEXT@12) + GL_STUB(GetTexParameterIuivEXT, 899, GetTexParameterIuivEXT@12) + GL_STUB(TexParameterIivEXT, 900, TexParameterIivEXT@12) + GL_STUB(TexParameterIuivEXT, 901, TexParameterIuivEXT@12) + GL_STUB(BeginConditionalRenderNV, 902, BeginConditionalRenderNV@8) + GL_STUB(EndConditionalRenderNV, 903, EndConditionalRenderNV@0) + GL_STUB(BeginTransformFeedbackEXT, 904, BeginTransformFeedbackEXT@4) + GL_STUB(BindBufferBaseEXT, 905, BindBufferBaseEXT@12) + GL_STUB(BindBufferOffsetEXT, 906, BindBufferOffsetEXT@16) + GL_STUB(BindBufferRangeEXT, 907, BindBufferRangeEXT@20) + GL_STUB(EndTransformFeedbackEXT, 908, EndTransformFeedbackEXT@0) + GL_STUB(GetTransformFeedbackVaryingEXT, 909, GetTransformFeedbackVaryingEXT@28) + GL_STUB(TransformFeedbackVaryingsEXT, 910, TransformFeedbackVaryingsEXT@16) + GL_STUB(ProvokingVertexEXT, 911, ProvokingVertexEXT@4) + GL_STUB(_dispatch_stub_912, 912, _dispatch_stub_912@12) + HIDDEN(GL_PREFIX(_dispatch_stub_912, _dispatch_stub_912@12)) + GL_STUB(_dispatch_stub_913, 913, _dispatch_stub_913@12) + HIDDEN(GL_PREFIX(_dispatch_stub_913, _dispatch_stub_913@12)) + GL_STUB(GetObjectParameterivAPPLE, 914, GetObjectParameterivAPPLE@16) + GL_STUB(ObjectPurgeableAPPLE, 915, ObjectPurgeableAPPLE@12) + GL_STUB(ObjectUnpurgeableAPPLE, 916, ObjectUnpurgeableAPPLE@12) + GL_STUB(ActiveProgramEXT, 917, ActiveProgramEXT@4) + GL_STUB(CreateShaderProgramEXT, 918, CreateShaderProgramEXT@8) + GL_STUB(UseShaderProgramEXT, 919, UseShaderProgramEXT@8) + GL_STUB(TextureBarrierNV, 920, TextureBarrierNV@0) + GL_STUB(_dispatch_stub_921, 921, _dispatch_stub_921@16) + HIDDEN(GL_PREFIX(_dispatch_stub_921, _dispatch_stub_921@16)) + GL_STUB(_dispatch_stub_922, 922, _dispatch_stub_922@16) + HIDDEN(GL_PREFIX(_dispatch_stub_922, _dispatch_stub_922@16)) + GL_STUB(_dispatch_stub_923, 923, _dispatch_stub_923@16) + HIDDEN(GL_PREFIX(_dispatch_stub_923, _dispatch_stub_923@16)) + GL_STUB(_dispatch_stub_924, 924, _dispatch_stub_924@12) + HIDDEN(GL_PREFIX(_dispatch_stub_924, _dispatch_stub_924@12)) + GL_STUB(_dispatch_stub_925, 925, _dispatch_stub_925@12) + HIDDEN(GL_PREFIX(_dispatch_stub_925, _dispatch_stub_925@12)) + GL_STUB(EGLImageTargetRenderbufferStorageOES, 926, EGLImageTargetRenderbufferStorageOES@8) + GL_STUB(EGLImageTargetTexture2DOES, 927, EGLImageTargetTexture2DOES@8) GL_STUB_ALIAS(ArrayElementEXT, 306, ArrayElementEXT@4, ArrayElement, ArrayElement@4) GL_STUB_ALIAS(BindTextureEXT, 307, BindTextureEXT@8, BindTexture, BindTexture@8) GL_STUB_ALIAS(DrawArraysEXT, 310, DrawArraysEXT@12, DrawArrays, DrawArrays@12) @@ -1282,151 +1302,155 @@ GLNAME(gl_dispatch_functions_start): GL_STUB_ALIAS(DrawElementsInstancedEXT, 574, DrawElementsInstancedEXT@20, DrawElementsInstancedARB, DrawElementsInstancedARB@20) GL_STUB_ALIAS(DrawElementsInstanced, 574, DrawElementsInstanced@20, DrawElementsInstancedARB, DrawElementsInstancedARB@20) GL_STUB_ALIAS(RenderbufferStorageMultisampleEXT, 575, RenderbufferStorageMultisampleEXT@20, RenderbufferStorageMultisample, RenderbufferStorageMultisample@20) - GL_STUB_ALIAS(PointParameterf, 641, PointParameterf@8, PointParameterfEXT, PointParameterfEXT@8) - GL_STUB_ALIAS(PointParameterfARB, 641, PointParameterfARB@8, PointParameterfEXT, PointParameterfEXT@8) - GL_STUB_ALIAS(PointParameterfv, 642, PointParameterfv@8, PointParameterfvEXT, PointParameterfvEXT@8) - GL_STUB_ALIAS(PointParameterfvARB, 642, PointParameterfvARB@8, PointParameterfvEXT, PointParameterfvEXT@8) - GL_STUB_ALIAS(SecondaryColor3b, 645, SecondaryColor3b@12, SecondaryColor3bEXT, SecondaryColor3bEXT@12) - GL_STUB_ALIAS(SecondaryColor3bv, 646, SecondaryColor3bv@4, SecondaryColor3bvEXT, SecondaryColor3bvEXT@4) - GL_STUB_ALIAS(SecondaryColor3d, 647, SecondaryColor3d@24, SecondaryColor3dEXT, SecondaryColor3dEXT@24) - GL_STUB_ALIAS(SecondaryColor3dv, 648, SecondaryColor3dv@4, SecondaryColor3dvEXT, SecondaryColor3dvEXT@4) - GL_STUB_ALIAS(SecondaryColor3f, 649, SecondaryColor3f@12, SecondaryColor3fEXT, SecondaryColor3fEXT@12) - GL_STUB_ALIAS(SecondaryColor3fv, 650, SecondaryColor3fv@4, SecondaryColor3fvEXT, SecondaryColor3fvEXT@4) - GL_STUB_ALIAS(SecondaryColor3i, 651, SecondaryColor3i@12, SecondaryColor3iEXT, SecondaryColor3iEXT@12) - GL_STUB_ALIAS(SecondaryColor3iv, 652, SecondaryColor3iv@4, SecondaryColor3ivEXT, SecondaryColor3ivEXT@4) - GL_STUB_ALIAS(SecondaryColor3s, 653, SecondaryColor3s@12, SecondaryColor3sEXT, SecondaryColor3sEXT@12) - GL_STUB_ALIAS(SecondaryColor3sv, 654, SecondaryColor3sv@4, SecondaryColor3svEXT, SecondaryColor3svEXT@4) - GL_STUB_ALIAS(SecondaryColor3ub, 655, SecondaryColor3ub@12, SecondaryColor3ubEXT, SecondaryColor3ubEXT@12) - GL_STUB_ALIAS(SecondaryColor3ubv, 656, SecondaryColor3ubv@4, SecondaryColor3ubvEXT, SecondaryColor3ubvEXT@4) - GL_STUB_ALIAS(SecondaryColor3ui, 657, SecondaryColor3ui@12, SecondaryColor3uiEXT, SecondaryColor3uiEXT@12) - GL_STUB_ALIAS(SecondaryColor3uiv, 658, SecondaryColor3uiv@4, SecondaryColor3uivEXT, SecondaryColor3uivEXT@4) - GL_STUB_ALIAS(SecondaryColor3us, 659, SecondaryColor3us@12, SecondaryColor3usEXT, SecondaryColor3usEXT@12) - GL_STUB_ALIAS(SecondaryColor3usv, 660, SecondaryColor3usv@4, SecondaryColor3usvEXT, SecondaryColor3usvEXT@4) - GL_STUB_ALIAS(SecondaryColorPointer, 661, SecondaryColorPointer@16, SecondaryColorPointerEXT, SecondaryColorPointerEXT@16) - GL_STUB_ALIAS(MultiDrawArrays, 662, MultiDrawArrays@16, MultiDrawArraysEXT, MultiDrawArraysEXT@16) - GL_STUB_ALIAS(MultiDrawElements, 663, MultiDrawElements@20, MultiDrawElementsEXT, MultiDrawElementsEXT@20) - GL_STUB_ALIAS(FogCoordPointer, 664, FogCoordPointer@12, FogCoordPointerEXT, FogCoordPointerEXT@12) - GL_STUB_ALIAS(FogCoordd, 665, FogCoordd@8, FogCoorddEXT, FogCoorddEXT@8) - GL_STUB_ALIAS(FogCoorddv, 666, FogCoorddv@4, FogCoorddvEXT, FogCoorddvEXT@4) - GL_STUB_ALIAS(FogCoordf, 667, FogCoordf@4, FogCoordfEXT, FogCoordfEXT@4) - GL_STUB_ALIAS(FogCoordfv, 668, FogCoordfv@4, FogCoordfvEXT, FogCoordfvEXT@4) - GL_STUB_ALIAS(BlendFuncSeparate, 670, BlendFuncSeparate@16, BlendFuncSeparateEXT, BlendFuncSeparateEXT@16) - GL_STUB_ALIAS(WindowPos2d, 687, WindowPos2d@16, WindowPos2dMESA, WindowPos2dMESA@16) - GL_STUB_ALIAS(WindowPos2dARB, 687, WindowPos2dARB@16, WindowPos2dMESA, WindowPos2dMESA@16) - GL_STUB_ALIAS(WindowPos2dv, 688, WindowPos2dv@4, WindowPos2dvMESA, WindowPos2dvMESA@4) - GL_STUB_ALIAS(WindowPos2dvARB, 688, WindowPos2dvARB@4, WindowPos2dvMESA, WindowPos2dvMESA@4) - GL_STUB_ALIAS(WindowPos2f, 689, WindowPos2f@8, WindowPos2fMESA, WindowPos2fMESA@8) - GL_STUB_ALIAS(WindowPos2fARB, 689, WindowPos2fARB@8, WindowPos2fMESA, WindowPos2fMESA@8) - GL_STUB_ALIAS(WindowPos2fv, 690, WindowPos2fv@4, WindowPos2fvMESA, WindowPos2fvMESA@4) - GL_STUB_ALIAS(WindowPos2fvARB, 690, WindowPos2fvARB@4, WindowPos2fvMESA, WindowPos2fvMESA@4) - GL_STUB_ALIAS(WindowPos2i, 691, WindowPos2i@8, WindowPos2iMESA, WindowPos2iMESA@8) - GL_STUB_ALIAS(WindowPos2iARB, 691, WindowPos2iARB@8, WindowPos2iMESA, WindowPos2iMESA@8) - GL_STUB_ALIAS(WindowPos2iv, 692, WindowPos2iv@4, WindowPos2ivMESA, WindowPos2ivMESA@4) - GL_STUB_ALIAS(WindowPos2ivARB, 692, WindowPos2ivARB@4, WindowPos2ivMESA, WindowPos2ivMESA@4) - GL_STUB_ALIAS(WindowPos2s, 693, WindowPos2s@8, WindowPos2sMESA, WindowPos2sMESA@8) - GL_STUB_ALIAS(WindowPos2sARB, 693, WindowPos2sARB@8, WindowPos2sMESA, WindowPos2sMESA@8) - GL_STUB_ALIAS(WindowPos2sv, 694, WindowPos2sv@4, WindowPos2svMESA, WindowPos2svMESA@4) - GL_STUB_ALIAS(WindowPos2svARB, 694, WindowPos2svARB@4, WindowPos2svMESA, WindowPos2svMESA@4) - GL_STUB_ALIAS(WindowPos3d, 695, WindowPos3d@24, WindowPos3dMESA, WindowPos3dMESA@24) - GL_STUB_ALIAS(WindowPos3dARB, 695, WindowPos3dARB@24, WindowPos3dMESA, WindowPos3dMESA@24) - GL_STUB_ALIAS(WindowPos3dv, 696, WindowPos3dv@4, WindowPos3dvMESA, WindowPos3dvMESA@4) - GL_STUB_ALIAS(WindowPos3dvARB, 696, WindowPos3dvARB@4, WindowPos3dvMESA, WindowPos3dvMESA@4) - GL_STUB_ALIAS(WindowPos3f, 697, WindowPos3f@12, WindowPos3fMESA, WindowPos3fMESA@12) - GL_STUB_ALIAS(WindowPos3fARB, 697, WindowPos3fARB@12, WindowPos3fMESA, WindowPos3fMESA@12) - GL_STUB_ALIAS(WindowPos3fv, 698, WindowPos3fv@4, WindowPos3fvMESA, WindowPos3fvMESA@4) - GL_STUB_ALIAS(WindowPos3fvARB, 698, WindowPos3fvARB@4, WindowPos3fvMESA, WindowPos3fvMESA@4) - GL_STUB_ALIAS(WindowPos3i, 699, WindowPos3i@12, WindowPos3iMESA, WindowPos3iMESA@12) - GL_STUB_ALIAS(WindowPos3iARB, 699, WindowPos3iARB@12, WindowPos3iMESA, WindowPos3iMESA@12) - GL_STUB_ALIAS(WindowPos3iv, 700, WindowPos3iv@4, WindowPos3ivMESA, WindowPos3ivMESA@4) - GL_STUB_ALIAS(WindowPos3ivARB, 700, WindowPos3ivARB@4, WindowPos3ivMESA, WindowPos3ivMESA@4) - GL_STUB_ALIAS(WindowPos3s, 701, WindowPos3s@12, WindowPos3sMESA, WindowPos3sMESA@12) - GL_STUB_ALIAS(WindowPos3sARB, 701, WindowPos3sARB@12, WindowPos3sMESA, WindowPos3sMESA@12) - GL_STUB_ALIAS(WindowPos3sv, 702, WindowPos3sv@4, WindowPos3svMESA, WindowPos3svMESA@4) - GL_STUB_ALIAS(WindowPos3svARB, 702, WindowPos3svARB@4, WindowPos3svMESA, WindowPos3svMESA@4) - GL_STUB_ALIAS(BindProgramARB, 721, BindProgramARB@8, BindProgramNV, BindProgramNV@8) - GL_STUB_ALIAS(DeleteProgramsARB, 722, DeleteProgramsARB@8, DeleteProgramsNV, DeleteProgramsNV@8) - GL_STUB_ALIAS(GenProgramsARB, 724, GenProgramsARB@8, GenProgramsNV, GenProgramsNV@8) - GL_STUB_ALIAS(GetVertexAttribPointerv, 730, GetVertexAttribPointerv@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12) - GL_STUB_ALIAS(GetVertexAttribPointervARB, 730, GetVertexAttribPointervARB@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12) - GL_STUB_ALIAS(IsProgramARB, 734, IsProgramARB@4, IsProgramNV, IsProgramNV@4) - GL_STUB_ALIAS(PointParameteri, 798, PointParameteri@8, PointParameteriNV, PointParameteriNV@8) - GL_STUB_ALIAS(PointParameteriv, 799, PointParameteriv@8, PointParameterivNV, PointParameterivNV@8) - GL_STUB_ALIAS(DeleteVertexArrays, 802, DeleteVertexArrays@8, _dispatch_stub_802, _dispatch_stub_802@8) - GL_STUB_ALIAS(IsVertexArray, 804, IsVertexArray@4, _dispatch_stub_804, _dispatch_stub_804@4) - GL_STUB_ALIAS(PrimitiveRestartIndex, 811, PrimitiveRestartIndex@4, PrimitiveRestartIndexNV, PrimitiveRestartIndexNV@4) - GL_STUB_ALIAS(BlendEquationSeparate, 814, BlendEquationSeparate@8, _dispatch_stub_814, _dispatch_stub_814@8) - GL_STUB_ALIAS(BindFramebuffer, 815, BindFramebuffer@8, BindFramebufferEXT, BindFramebufferEXT@8) - GL_STUB_ALIAS(BindRenderbuffer, 816, BindRenderbuffer@8, BindRenderbufferEXT, BindRenderbufferEXT@8) - GL_STUB_ALIAS(CheckFramebufferStatus, 817, CheckFramebufferStatus@4, CheckFramebufferStatusEXT, CheckFramebufferStatusEXT@4) - GL_STUB_ALIAS(DeleteFramebuffers, 818, DeleteFramebuffers@8, DeleteFramebuffersEXT, DeleteFramebuffersEXT@8) - GL_STUB_ALIAS(DeleteRenderbuffers, 819, DeleteRenderbuffers@8, DeleteRenderbuffersEXT, DeleteRenderbuffersEXT@8) - GL_STUB_ALIAS(FramebufferRenderbuffer, 820, FramebufferRenderbuffer@16, FramebufferRenderbufferEXT, FramebufferRenderbufferEXT@16) - GL_STUB_ALIAS(FramebufferTexture1D, 821, FramebufferTexture1D@20, FramebufferTexture1DEXT, FramebufferTexture1DEXT@20) - GL_STUB_ALIAS(FramebufferTexture2D, 822, FramebufferTexture2D@20, FramebufferTexture2DEXT, FramebufferTexture2DEXT@20) - GL_STUB_ALIAS(FramebufferTexture3D, 823, FramebufferTexture3D@24, FramebufferTexture3DEXT, FramebufferTexture3DEXT@24) - GL_STUB_ALIAS(GenFramebuffers, 824, GenFramebuffers@8, GenFramebuffersEXT, GenFramebuffersEXT@8) - GL_STUB_ALIAS(GenRenderbuffers, 825, GenRenderbuffers@8, GenRenderbuffersEXT, GenRenderbuffersEXT@8) - GL_STUB_ALIAS(GenerateMipmap, 826, GenerateMipmap@4, GenerateMipmapEXT, GenerateMipmapEXT@4) - GL_STUB_ALIAS(GetFramebufferAttachmentParameteriv, 827, GetFramebufferAttachmentParameteriv@16, GetFramebufferAttachmentParameterivEXT, GetFramebufferAttachmentParameterivEXT@16) - GL_STUB_ALIAS(GetRenderbufferParameteriv, 828, GetRenderbufferParameteriv@12, GetRenderbufferParameterivEXT, GetRenderbufferParameterivEXT@12) - GL_STUB_ALIAS(IsFramebuffer, 829, IsFramebuffer@4, IsFramebufferEXT, IsFramebufferEXT@4) - GL_STUB_ALIAS(IsRenderbuffer, 830, IsRenderbuffer@4, IsRenderbufferEXT, IsRenderbufferEXT@4) - GL_STUB_ALIAS(RenderbufferStorage, 831, RenderbufferStorage@16, RenderbufferStorageEXT, RenderbufferStorageEXT@16) - GL_STUB_ALIAS(BlitFramebuffer, 832, BlitFramebuffer@40, _dispatch_stub_832, _dispatch_stub_832@40) - GL_STUB_ALIAS(BindFragDataLocation, 835, BindFragDataLocation@12, BindFragDataLocationEXT, BindFragDataLocationEXT@12) - GL_STUB_ALIAS(GetFragDataLocation, 836, GetFragDataLocation@8, GetFragDataLocationEXT, GetFragDataLocationEXT@8) - GL_STUB_ALIAS(GetUniformuiv, 837, GetUniformuiv@12, GetUniformuivEXT, GetUniformuivEXT@12) - GL_STUB_ALIAS(GetVertexAttribIiv, 838, GetVertexAttribIiv@12, GetVertexAttribIivEXT, GetVertexAttribIivEXT@12) - GL_STUB_ALIAS(GetVertexAttribIuiv, 839, GetVertexAttribIuiv@12, GetVertexAttribIuivEXT, GetVertexAttribIuivEXT@12) - GL_STUB_ALIAS(Uniform1ui, 840, Uniform1ui@8, Uniform1uiEXT, Uniform1uiEXT@8) - GL_STUB_ALIAS(Uniform1uiv, 841, Uniform1uiv@12, Uniform1uivEXT, Uniform1uivEXT@12) - GL_STUB_ALIAS(Uniform2ui, 842, Uniform2ui@12, Uniform2uiEXT, Uniform2uiEXT@12) - GL_STUB_ALIAS(Uniform2uiv, 843, Uniform2uiv@12, Uniform2uivEXT, Uniform2uivEXT@12) - GL_STUB_ALIAS(Uniform3ui, 844, Uniform3ui@16, Uniform3uiEXT, Uniform3uiEXT@16) - GL_STUB_ALIAS(Uniform3uiv, 845, Uniform3uiv@12, Uniform3uivEXT, Uniform3uivEXT@12) - GL_STUB_ALIAS(Uniform4ui, 846, Uniform4ui@20, Uniform4uiEXT, Uniform4uiEXT@20) - GL_STUB_ALIAS(Uniform4uiv, 847, Uniform4uiv@12, Uniform4uivEXT, Uniform4uivEXT@12) - GL_STUB_ALIAS(VertexAttribI1i, 848, VertexAttribI1i@8, VertexAttribI1iEXT, VertexAttribI1iEXT@8) - GL_STUB_ALIAS(VertexAttribI1iv, 849, VertexAttribI1iv@8, VertexAttribI1ivEXT, VertexAttribI1ivEXT@8) - GL_STUB_ALIAS(VertexAttribI1ui, 850, VertexAttribI1ui@8, VertexAttribI1uiEXT, VertexAttribI1uiEXT@8) - GL_STUB_ALIAS(VertexAttribI1uiv, 851, VertexAttribI1uiv@8, VertexAttribI1uivEXT, VertexAttribI1uivEXT@8) - GL_STUB_ALIAS(VertexAttribI2i, 852, VertexAttribI2i@12, VertexAttribI2iEXT, VertexAttribI2iEXT@12) - GL_STUB_ALIAS(VertexAttribI2iv, 853, VertexAttribI2iv@8, VertexAttribI2ivEXT, VertexAttribI2ivEXT@8) - GL_STUB_ALIAS(VertexAttribI2ui, 854, VertexAttribI2ui@12, VertexAttribI2uiEXT, VertexAttribI2uiEXT@12) - GL_STUB_ALIAS(VertexAttribI2uiv, 855, VertexAttribI2uiv@8, VertexAttribI2uivEXT, VertexAttribI2uivEXT@8) - GL_STUB_ALIAS(VertexAttribI3i, 856, VertexAttribI3i@16, VertexAttribI3iEXT, VertexAttribI3iEXT@16) - GL_STUB_ALIAS(VertexAttribI3iv, 857, VertexAttribI3iv@8, VertexAttribI3ivEXT, VertexAttribI3ivEXT@8) - GL_STUB_ALIAS(VertexAttribI3ui, 858, VertexAttribI3ui@16, VertexAttribI3uiEXT, VertexAttribI3uiEXT@16) - GL_STUB_ALIAS(VertexAttribI3uiv, 859, VertexAttribI3uiv@8, VertexAttribI3uivEXT, VertexAttribI3uivEXT@8) - GL_STUB_ALIAS(VertexAttribI4bv, 860, VertexAttribI4bv@8, VertexAttribI4bvEXT, VertexAttribI4bvEXT@8) - GL_STUB_ALIAS(VertexAttribI4i, 861, VertexAttribI4i@20, VertexAttribI4iEXT, VertexAttribI4iEXT@20) - GL_STUB_ALIAS(VertexAttribI4iv, 862, VertexAttribI4iv@8, VertexAttribI4ivEXT, VertexAttribI4ivEXT@8) - GL_STUB_ALIAS(VertexAttribI4sv, 863, VertexAttribI4sv@8, VertexAttribI4svEXT, VertexAttribI4svEXT@8) - GL_STUB_ALIAS(VertexAttribI4ubv, 864, VertexAttribI4ubv@8, VertexAttribI4ubvEXT, VertexAttribI4ubvEXT@8) - GL_STUB_ALIAS(VertexAttribI4ui, 865, VertexAttribI4ui@20, VertexAttribI4uiEXT, VertexAttribI4uiEXT@20) - GL_STUB_ALIAS(VertexAttribI4uiv, 866, VertexAttribI4uiv@8, VertexAttribI4uivEXT, VertexAttribI4uivEXT@8) - GL_STUB_ALIAS(VertexAttribI4usv, 867, VertexAttribI4usv@8, VertexAttribI4usvEXT, VertexAttribI4usvEXT@8) - GL_STUB_ALIAS(VertexAttribIPointer, 868, VertexAttribIPointer@20, VertexAttribIPointerEXT, VertexAttribIPointerEXT@20) - GL_STUB_ALIAS(FramebufferTextureLayer, 869, FramebufferTextureLayer@20, FramebufferTextureLayerEXT, FramebufferTextureLayerEXT@20) - GL_STUB_ALIAS(ColorMaski, 870, ColorMaski@20, ColorMaskIndexedEXT, ColorMaskIndexedEXT@20) - GL_STUB_ALIAS(Disablei, 871, Disablei@8, DisableIndexedEXT, DisableIndexedEXT@8) - GL_STUB_ALIAS(Enablei, 872, Enablei@8, EnableIndexedEXT, EnableIndexedEXT@8) - GL_STUB_ALIAS(GetBooleani_v, 873, GetBooleani_v@12, GetBooleanIndexedvEXT, GetBooleanIndexedvEXT@12) - GL_STUB_ALIAS(GetIntegeri_v, 874, GetIntegeri_v@12, GetIntegerIndexedvEXT, GetIntegerIndexedvEXT@12) - GL_STUB_ALIAS(IsEnabledi, 875, IsEnabledi@8, IsEnabledIndexedEXT, IsEnabledIndexedEXT@8) - GL_STUB_ALIAS(GetTexParameterIiv, 878, GetTexParameterIiv@12, GetTexParameterIivEXT, GetTexParameterIivEXT@12) - GL_STUB_ALIAS(GetTexParameterIuiv, 879, GetTexParameterIuiv@12, GetTexParameterIuivEXT, GetTexParameterIuivEXT@12) - GL_STUB_ALIAS(TexParameterIiv, 880, TexParameterIiv@12, TexParameterIivEXT, TexParameterIivEXT@12) - GL_STUB_ALIAS(TexParameterIuiv, 881, TexParameterIuiv@12, TexParameterIuivEXT, TexParameterIuivEXT@12) - GL_STUB_ALIAS(BeginConditionalRender, 882, BeginConditionalRender@8, BeginConditionalRenderNV, BeginConditionalRenderNV@8) - GL_STUB_ALIAS(EndConditionalRender, 883, EndConditionalRender@0, EndConditionalRenderNV, EndConditionalRenderNV@0) - GL_STUB_ALIAS(BeginTransformFeedback, 884, BeginTransformFeedback@4, BeginTransformFeedbackEXT, BeginTransformFeedbackEXT@4) - GL_STUB_ALIAS(BindBufferBase, 885, BindBufferBase@12, BindBufferBaseEXT, BindBufferBaseEXT@12) - GL_STUB_ALIAS(BindBufferRange, 887, BindBufferRange@20, BindBufferRangeEXT, BindBufferRangeEXT@20) - GL_STUB_ALIAS(EndTransformFeedback, 888, EndTransformFeedback@0, EndTransformFeedbackEXT, EndTransformFeedbackEXT@0) - GL_STUB_ALIAS(GetTransformFeedbackVarying, 889, GetTransformFeedbackVarying@28, GetTransformFeedbackVaryingEXT, GetTransformFeedbackVaryingEXT@28) - GL_STUB_ALIAS(TransformFeedbackVaryings, 890, TransformFeedbackVaryings@16, TransformFeedbackVaryingsEXT, TransformFeedbackVaryingsEXT@16) - GL_STUB_ALIAS(ProvokingVertex, 891, ProvokingVertex@4, ProvokingVertexEXT, ProvokingVertexEXT@4) + GL_STUB_ALIAS(BlendEquationSeparateIndexedAMD, 596, BlendEquationSeparateIndexedAMD@12, BlendEquationSeparateiARB, BlendEquationSeparateiARB@12) + GL_STUB_ALIAS(BlendEquationIndexedAMD, 597, BlendEquationIndexedAMD@8, BlendEquationiARB, BlendEquationiARB@8) + GL_STUB_ALIAS(BlendFuncSeparateIndexedAMD, 598, BlendFuncSeparateIndexedAMD@20, BlendFuncSeparateiARB, BlendFuncSeparateiARB@20) + GL_STUB_ALIAS(BlendFuncIndexedAMD, 599, BlendFuncIndexedAMD@12, BlendFunciARB, BlendFunciARB@12) + GL_STUB_ALIAS(PointParameterf, 661, PointParameterf@8, PointParameterfEXT, PointParameterfEXT@8) + GL_STUB_ALIAS(PointParameterfARB, 661, PointParameterfARB@8, PointParameterfEXT, PointParameterfEXT@8) + GL_STUB_ALIAS(PointParameterfv, 662, PointParameterfv@8, PointParameterfvEXT, PointParameterfvEXT@8) + GL_STUB_ALIAS(PointParameterfvARB, 662, PointParameterfvARB@8, PointParameterfvEXT, PointParameterfvEXT@8) + GL_STUB_ALIAS(SecondaryColor3b, 665, SecondaryColor3b@12, SecondaryColor3bEXT, SecondaryColor3bEXT@12) + GL_STUB_ALIAS(SecondaryColor3bv, 666, SecondaryColor3bv@4, SecondaryColor3bvEXT, SecondaryColor3bvEXT@4) + GL_STUB_ALIAS(SecondaryColor3d, 667, SecondaryColor3d@24, SecondaryColor3dEXT, SecondaryColor3dEXT@24) + GL_STUB_ALIAS(SecondaryColor3dv, 668, SecondaryColor3dv@4, SecondaryColor3dvEXT, SecondaryColor3dvEXT@4) + GL_STUB_ALIAS(SecondaryColor3f, 669, SecondaryColor3f@12, SecondaryColor3fEXT, SecondaryColor3fEXT@12) + GL_STUB_ALIAS(SecondaryColor3fv, 670, SecondaryColor3fv@4, SecondaryColor3fvEXT, SecondaryColor3fvEXT@4) + GL_STUB_ALIAS(SecondaryColor3i, 671, SecondaryColor3i@12, SecondaryColor3iEXT, SecondaryColor3iEXT@12) + GL_STUB_ALIAS(SecondaryColor3iv, 672, SecondaryColor3iv@4, SecondaryColor3ivEXT, SecondaryColor3ivEXT@4) + GL_STUB_ALIAS(SecondaryColor3s, 673, SecondaryColor3s@12, SecondaryColor3sEXT, SecondaryColor3sEXT@12) + GL_STUB_ALIAS(SecondaryColor3sv, 674, SecondaryColor3sv@4, SecondaryColor3svEXT, SecondaryColor3svEXT@4) + GL_STUB_ALIAS(SecondaryColor3ub, 675, SecondaryColor3ub@12, SecondaryColor3ubEXT, SecondaryColor3ubEXT@12) + GL_STUB_ALIAS(SecondaryColor3ubv, 676, SecondaryColor3ubv@4, SecondaryColor3ubvEXT, SecondaryColor3ubvEXT@4) + GL_STUB_ALIAS(SecondaryColor3ui, 677, SecondaryColor3ui@12, SecondaryColor3uiEXT, SecondaryColor3uiEXT@12) + GL_STUB_ALIAS(SecondaryColor3uiv, 678, SecondaryColor3uiv@4, SecondaryColor3uivEXT, SecondaryColor3uivEXT@4) + GL_STUB_ALIAS(SecondaryColor3us, 679, SecondaryColor3us@12, SecondaryColor3usEXT, SecondaryColor3usEXT@12) + GL_STUB_ALIAS(SecondaryColor3usv, 680, SecondaryColor3usv@4, SecondaryColor3usvEXT, SecondaryColor3usvEXT@4) + GL_STUB_ALIAS(SecondaryColorPointer, 681, SecondaryColorPointer@16, SecondaryColorPointerEXT, SecondaryColorPointerEXT@16) + GL_STUB_ALIAS(MultiDrawArrays, 682, MultiDrawArrays@16, MultiDrawArraysEXT, MultiDrawArraysEXT@16) + GL_STUB_ALIAS(MultiDrawElements, 683, MultiDrawElements@20, MultiDrawElementsEXT, MultiDrawElementsEXT@20) + GL_STUB_ALIAS(FogCoordPointer, 684, FogCoordPointer@12, FogCoordPointerEXT, FogCoordPointerEXT@12) + GL_STUB_ALIAS(FogCoordd, 685, FogCoordd@8, FogCoorddEXT, FogCoorddEXT@8) + GL_STUB_ALIAS(FogCoorddv, 686, FogCoorddv@4, FogCoorddvEXT, FogCoorddvEXT@4) + GL_STUB_ALIAS(FogCoordf, 687, FogCoordf@4, FogCoordfEXT, FogCoordfEXT@4) + GL_STUB_ALIAS(FogCoordfv, 688, FogCoordfv@4, FogCoordfvEXT, FogCoordfvEXT@4) + GL_STUB_ALIAS(BlendFuncSeparate, 690, BlendFuncSeparate@16, BlendFuncSeparateEXT, BlendFuncSeparateEXT@16) + GL_STUB_ALIAS(WindowPos2d, 707, WindowPos2d@16, WindowPos2dMESA, WindowPos2dMESA@16) + GL_STUB_ALIAS(WindowPos2dARB, 707, WindowPos2dARB@16, WindowPos2dMESA, WindowPos2dMESA@16) + GL_STUB_ALIAS(WindowPos2dv, 708, WindowPos2dv@4, WindowPos2dvMESA, WindowPos2dvMESA@4) + GL_STUB_ALIAS(WindowPos2dvARB, 708, WindowPos2dvARB@4, WindowPos2dvMESA, WindowPos2dvMESA@4) + GL_STUB_ALIAS(WindowPos2f, 709, WindowPos2f@8, WindowPos2fMESA, WindowPos2fMESA@8) + GL_STUB_ALIAS(WindowPos2fARB, 709, WindowPos2fARB@8, WindowPos2fMESA, WindowPos2fMESA@8) + GL_STUB_ALIAS(WindowPos2fv, 710, WindowPos2fv@4, WindowPos2fvMESA, WindowPos2fvMESA@4) + GL_STUB_ALIAS(WindowPos2fvARB, 710, WindowPos2fvARB@4, WindowPos2fvMESA, WindowPos2fvMESA@4) + GL_STUB_ALIAS(WindowPos2i, 711, WindowPos2i@8, WindowPos2iMESA, WindowPos2iMESA@8) + GL_STUB_ALIAS(WindowPos2iARB, 711, WindowPos2iARB@8, WindowPos2iMESA, WindowPos2iMESA@8) + GL_STUB_ALIAS(WindowPos2iv, 712, WindowPos2iv@4, WindowPos2ivMESA, WindowPos2ivMESA@4) + GL_STUB_ALIAS(WindowPos2ivARB, 712, WindowPos2ivARB@4, WindowPos2ivMESA, WindowPos2ivMESA@4) + GL_STUB_ALIAS(WindowPos2s, 713, WindowPos2s@8, WindowPos2sMESA, WindowPos2sMESA@8) + GL_STUB_ALIAS(WindowPos2sARB, 713, WindowPos2sARB@8, WindowPos2sMESA, WindowPos2sMESA@8) + GL_STUB_ALIAS(WindowPos2sv, 714, WindowPos2sv@4, WindowPos2svMESA, WindowPos2svMESA@4) + GL_STUB_ALIAS(WindowPos2svARB, 714, WindowPos2svARB@4, WindowPos2svMESA, WindowPos2svMESA@4) + GL_STUB_ALIAS(WindowPos3d, 715, WindowPos3d@24, WindowPos3dMESA, WindowPos3dMESA@24) + GL_STUB_ALIAS(WindowPos3dARB, 715, WindowPos3dARB@24, WindowPos3dMESA, WindowPos3dMESA@24) + GL_STUB_ALIAS(WindowPos3dv, 716, WindowPos3dv@4, WindowPos3dvMESA, WindowPos3dvMESA@4) + GL_STUB_ALIAS(WindowPos3dvARB, 716, WindowPos3dvARB@4, WindowPos3dvMESA, WindowPos3dvMESA@4) + GL_STUB_ALIAS(WindowPos3f, 717, WindowPos3f@12, WindowPos3fMESA, WindowPos3fMESA@12) + GL_STUB_ALIAS(WindowPos3fARB, 717, WindowPos3fARB@12, WindowPos3fMESA, WindowPos3fMESA@12) + GL_STUB_ALIAS(WindowPos3fv, 718, WindowPos3fv@4, WindowPos3fvMESA, WindowPos3fvMESA@4) + GL_STUB_ALIAS(WindowPos3fvARB, 718, WindowPos3fvARB@4, WindowPos3fvMESA, WindowPos3fvMESA@4) + GL_STUB_ALIAS(WindowPos3i, 719, WindowPos3i@12, WindowPos3iMESA, WindowPos3iMESA@12) + GL_STUB_ALIAS(WindowPos3iARB, 719, WindowPos3iARB@12, WindowPos3iMESA, WindowPos3iMESA@12) + GL_STUB_ALIAS(WindowPos3iv, 720, WindowPos3iv@4, WindowPos3ivMESA, WindowPos3ivMESA@4) + GL_STUB_ALIAS(WindowPos3ivARB, 720, WindowPos3ivARB@4, WindowPos3ivMESA, WindowPos3ivMESA@4) + GL_STUB_ALIAS(WindowPos3s, 721, WindowPos3s@12, WindowPos3sMESA, WindowPos3sMESA@12) + GL_STUB_ALIAS(WindowPos3sARB, 721, WindowPos3sARB@12, WindowPos3sMESA, WindowPos3sMESA@12) + GL_STUB_ALIAS(WindowPos3sv, 722, WindowPos3sv@4, WindowPos3svMESA, WindowPos3svMESA@4) + GL_STUB_ALIAS(WindowPos3svARB, 722, WindowPos3svARB@4, WindowPos3svMESA, WindowPos3svMESA@4) + GL_STUB_ALIAS(BindProgramARB, 741, BindProgramARB@8, BindProgramNV, BindProgramNV@8) + GL_STUB_ALIAS(DeleteProgramsARB, 742, DeleteProgramsARB@8, DeleteProgramsNV, DeleteProgramsNV@8) + GL_STUB_ALIAS(GenProgramsARB, 744, GenProgramsARB@8, GenProgramsNV, GenProgramsNV@8) + GL_STUB_ALIAS(GetVertexAttribPointerv, 750, GetVertexAttribPointerv@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12) + GL_STUB_ALIAS(GetVertexAttribPointervARB, 750, GetVertexAttribPointervARB@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12) + GL_STUB_ALIAS(IsProgramARB, 754, IsProgramARB@4, IsProgramNV, IsProgramNV@4) + GL_STUB_ALIAS(PointParameteri, 818, PointParameteri@8, PointParameteriNV, PointParameteriNV@8) + GL_STUB_ALIAS(PointParameteriv, 819, PointParameteriv@8, PointParameterivNV, PointParameterivNV@8) + GL_STUB_ALIAS(DeleteVertexArrays, 822, DeleteVertexArrays@8, _dispatch_stub_822, _dispatch_stub_822@8) + GL_STUB_ALIAS(IsVertexArray, 824, IsVertexArray@4, _dispatch_stub_824, _dispatch_stub_824@4) + GL_STUB_ALIAS(PrimitiveRestartIndex, 831, PrimitiveRestartIndex@4, PrimitiveRestartIndexNV, PrimitiveRestartIndexNV@4) + GL_STUB_ALIAS(BlendEquationSeparate, 834, BlendEquationSeparate@8, _dispatch_stub_834, _dispatch_stub_834@8) + GL_STUB_ALIAS(BindFramebuffer, 835, BindFramebuffer@8, BindFramebufferEXT, BindFramebufferEXT@8) + GL_STUB_ALIAS(BindRenderbuffer, 836, BindRenderbuffer@8, BindRenderbufferEXT, BindRenderbufferEXT@8) + GL_STUB_ALIAS(CheckFramebufferStatus, 837, CheckFramebufferStatus@4, CheckFramebufferStatusEXT, CheckFramebufferStatusEXT@4) + GL_STUB_ALIAS(DeleteFramebuffers, 838, DeleteFramebuffers@8, DeleteFramebuffersEXT, DeleteFramebuffersEXT@8) + GL_STUB_ALIAS(DeleteRenderbuffers, 839, DeleteRenderbuffers@8, DeleteRenderbuffersEXT, DeleteRenderbuffersEXT@8) + GL_STUB_ALIAS(FramebufferRenderbuffer, 840, FramebufferRenderbuffer@16, FramebufferRenderbufferEXT, FramebufferRenderbufferEXT@16) + GL_STUB_ALIAS(FramebufferTexture1D, 841, FramebufferTexture1D@20, FramebufferTexture1DEXT, FramebufferTexture1DEXT@20) + GL_STUB_ALIAS(FramebufferTexture2D, 842, FramebufferTexture2D@20, FramebufferTexture2DEXT, FramebufferTexture2DEXT@20) + GL_STUB_ALIAS(FramebufferTexture3D, 843, FramebufferTexture3D@24, FramebufferTexture3DEXT, FramebufferTexture3DEXT@24) + GL_STUB_ALIAS(GenFramebuffers, 844, GenFramebuffers@8, GenFramebuffersEXT, GenFramebuffersEXT@8) + GL_STUB_ALIAS(GenRenderbuffers, 845, GenRenderbuffers@8, GenRenderbuffersEXT, GenRenderbuffersEXT@8) + GL_STUB_ALIAS(GenerateMipmap, 846, GenerateMipmap@4, GenerateMipmapEXT, GenerateMipmapEXT@4) + GL_STUB_ALIAS(GetFramebufferAttachmentParameteriv, 847, GetFramebufferAttachmentParameteriv@16, GetFramebufferAttachmentParameterivEXT, GetFramebufferAttachmentParameterivEXT@16) + GL_STUB_ALIAS(GetRenderbufferParameteriv, 848, GetRenderbufferParameteriv@12, GetRenderbufferParameterivEXT, GetRenderbufferParameterivEXT@12) + GL_STUB_ALIAS(IsFramebuffer, 849, IsFramebuffer@4, IsFramebufferEXT, IsFramebufferEXT@4) + GL_STUB_ALIAS(IsRenderbuffer, 850, IsRenderbuffer@4, IsRenderbufferEXT, IsRenderbufferEXT@4) + GL_STUB_ALIAS(RenderbufferStorage, 851, RenderbufferStorage@16, RenderbufferStorageEXT, RenderbufferStorageEXT@16) + GL_STUB_ALIAS(BlitFramebuffer, 852, BlitFramebuffer@40, _dispatch_stub_852, _dispatch_stub_852@40) + GL_STUB_ALIAS(BindFragDataLocation, 855, BindFragDataLocation@12, BindFragDataLocationEXT, BindFragDataLocationEXT@12) + GL_STUB_ALIAS(GetFragDataLocation, 856, GetFragDataLocation@8, GetFragDataLocationEXT, GetFragDataLocationEXT@8) + GL_STUB_ALIAS(GetUniformuiv, 857, GetUniformuiv@12, GetUniformuivEXT, GetUniformuivEXT@12) + GL_STUB_ALIAS(GetVertexAttribIiv, 858, GetVertexAttribIiv@12, GetVertexAttribIivEXT, GetVertexAttribIivEXT@12) + GL_STUB_ALIAS(GetVertexAttribIuiv, 859, GetVertexAttribIuiv@12, GetVertexAttribIuivEXT, GetVertexAttribIuivEXT@12) + GL_STUB_ALIAS(Uniform1ui, 860, Uniform1ui@8, Uniform1uiEXT, Uniform1uiEXT@8) + GL_STUB_ALIAS(Uniform1uiv, 861, Uniform1uiv@12, Uniform1uivEXT, Uniform1uivEXT@12) + GL_STUB_ALIAS(Uniform2ui, 862, Uniform2ui@12, Uniform2uiEXT, Uniform2uiEXT@12) + GL_STUB_ALIAS(Uniform2uiv, 863, Uniform2uiv@12, Uniform2uivEXT, Uniform2uivEXT@12) + GL_STUB_ALIAS(Uniform3ui, 864, Uniform3ui@16, Uniform3uiEXT, Uniform3uiEXT@16) + GL_STUB_ALIAS(Uniform3uiv, 865, Uniform3uiv@12, Uniform3uivEXT, Uniform3uivEXT@12) + GL_STUB_ALIAS(Uniform4ui, 866, Uniform4ui@20, Uniform4uiEXT, Uniform4uiEXT@20) + GL_STUB_ALIAS(Uniform4uiv, 867, Uniform4uiv@12, Uniform4uivEXT, Uniform4uivEXT@12) + GL_STUB_ALIAS(VertexAttribI1i, 868, VertexAttribI1i@8, VertexAttribI1iEXT, VertexAttribI1iEXT@8) + GL_STUB_ALIAS(VertexAttribI1iv, 869, VertexAttribI1iv@8, VertexAttribI1ivEXT, VertexAttribI1ivEXT@8) + GL_STUB_ALIAS(VertexAttribI1ui, 870, VertexAttribI1ui@8, VertexAttribI1uiEXT, VertexAttribI1uiEXT@8) + GL_STUB_ALIAS(VertexAttribI1uiv, 871, VertexAttribI1uiv@8, VertexAttribI1uivEXT, VertexAttribI1uivEXT@8) + GL_STUB_ALIAS(VertexAttribI2i, 872, VertexAttribI2i@12, VertexAttribI2iEXT, VertexAttribI2iEXT@12) + GL_STUB_ALIAS(VertexAttribI2iv, 873, VertexAttribI2iv@8, VertexAttribI2ivEXT, VertexAttribI2ivEXT@8) + GL_STUB_ALIAS(VertexAttribI2ui, 874, VertexAttribI2ui@12, VertexAttribI2uiEXT, VertexAttribI2uiEXT@12) + GL_STUB_ALIAS(VertexAttribI2uiv, 875, VertexAttribI2uiv@8, VertexAttribI2uivEXT, VertexAttribI2uivEXT@8) + GL_STUB_ALIAS(VertexAttribI3i, 876, VertexAttribI3i@16, VertexAttribI3iEXT, VertexAttribI3iEXT@16) + GL_STUB_ALIAS(VertexAttribI3iv, 877, VertexAttribI3iv@8, VertexAttribI3ivEXT, VertexAttribI3ivEXT@8) + GL_STUB_ALIAS(VertexAttribI3ui, 878, VertexAttribI3ui@16, VertexAttribI3uiEXT, VertexAttribI3uiEXT@16) + GL_STUB_ALIAS(VertexAttribI3uiv, 879, VertexAttribI3uiv@8, VertexAttribI3uivEXT, VertexAttribI3uivEXT@8) + GL_STUB_ALIAS(VertexAttribI4bv, 880, VertexAttribI4bv@8, VertexAttribI4bvEXT, VertexAttribI4bvEXT@8) + GL_STUB_ALIAS(VertexAttribI4i, 881, VertexAttribI4i@20, VertexAttribI4iEXT, VertexAttribI4iEXT@20) + GL_STUB_ALIAS(VertexAttribI4iv, 882, VertexAttribI4iv@8, VertexAttribI4ivEXT, VertexAttribI4ivEXT@8) + GL_STUB_ALIAS(VertexAttribI4sv, 883, VertexAttribI4sv@8, VertexAttribI4svEXT, VertexAttribI4svEXT@8) + GL_STUB_ALIAS(VertexAttribI4ubv, 884, VertexAttribI4ubv@8, VertexAttribI4ubvEXT, VertexAttribI4ubvEXT@8) + GL_STUB_ALIAS(VertexAttribI4ui, 885, VertexAttribI4ui@20, VertexAttribI4uiEXT, VertexAttribI4uiEXT@20) + GL_STUB_ALIAS(VertexAttribI4uiv, 886, VertexAttribI4uiv@8, VertexAttribI4uivEXT, VertexAttribI4uivEXT@8) + GL_STUB_ALIAS(VertexAttribI4usv, 887, VertexAttribI4usv@8, VertexAttribI4usvEXT, VertexAttribI4usvEXT@8) + GL_STUB_ALIAS(VertexAttribIPointer, 888, VertexAttribIPointer@20, VertexAttribIPointerEXT, VertexAttribIPointerEXT@20) + GL_STUB_ALIAS(FramebufferTextureLayer, 889, FramebufferTextureLayer@20, FramebufferTextureLayerEXT, FramebufferTextureLayerEXT@20) + GL_STUB_ALIAS(ColorMaski, 890, ColorMaski@20, ColorMaskIndexedEXT, ColorMaskIndexedEXT@20) + GL_STUB_ALIAS(Disablei, 891, Disablei@8, DisableIndexedEXT, DisableIndexedEXT@8) + GL_STUB_ALIAS(Enablei, 892, Enablei@8, EnableIndexedEXT, EnableIndexedEXT@8) + GL_STUB_ALIAS(GetBooleani_v, 893, GetBooleani_v@12, GetBooleanIndexedvEXT, GetBooleanIndexedvEXT@12) + GL_STUB_ALIAS(GetIntegeri_v, 894, GetIntegeri_v@12, GetIntegerIndexedvEXT, GetIntegerIndexedvEXT@12) + GL_STUB_ALIAS(IsEnabledi, 895, IsEnabledi@8, IsEnabledIndexedEXT, IsEnabledIndexedEXT@8) + GL_STUB_ALIAS(GetTexParameterIiv, 898, GetTexParameterIiv@12, GetTexParameterIivEXT, GetTexParameterIivEXT@12) + GL_STUB_ALIAS(GetTexParameterIuiv, 899, GetTexParameterIuiv@12, GetTexParameterIuivEXT, GetTexParameterIuivEXT@12) + GL_STUB_ALIAS(TexParameterIiv, 900, TexParameterIiv@12, TexParameterIivEXT, TexParameterIivEXT@12) + GL_STUB_ALIAS(TexParameterIuiv, 901, TexParameterIuiv@12, TexParameterIuivEXT, TexParameterIuivEXT@12) + GL_STUB_ALIAS(BeginConditionalRender, 902, BeginConditionalRender@8, BeginConditionalRenderNV, BeginConditionalRenderNV@8) + GL_STUB_ALIAS(EndConditionalRender, 903, EndConditionalRender@0, EndConditionalRenderNV, EndConditionalRenderNV@0) + GL_STUB_ALIAS(BeginTransformFeedback, 904, BeginTransformFeedback@4, BeginTransformFeedbackEXT, BeginTransformFeedbackEXT@4) + GL_STUB_ALIAS(BindBufferBase, 905, BindBufferBase@12, BindBufferBaseEXT, BindBufferBaseEXT@12) + GL_STUB_ALIAS(BindBufferRange, 907, BindBufferRange@20, BindBufferRangeEXT, BindBufferRangeEXT@20) + GL_STUB_ALIAS(EndTransformFeedback, 908, EndTransformFeedback@0, EndTransformFeedbackEXT, EndTransformFeedbackEXT@0) + GL_STUB_ALIAS(GetTransformFeedbackVarying, 909, GetTransformFeedbackVarying@28, GetTransformFeedbackVaryingEXT, GetTransformFeedbackVaryingEXT@28) + GL_STUB_ALIAS(TransformFeedbackVaryings, 910, TransformFeedbackVaryings@16, TransformFeedbackVaryingsEXT, TransformFeedbackVaryingsEXT@16) + GL_STUB_ALIAS(ProvokingVertex, 911, ProvokingVertex@4, ProvokingVertexEXT, ProvokingVertexEXT@4) GLOBL GLNAME(gl_dispatch_functions_end) HIDDEN(GLNAME(gl_dispatch_functions_end)) diff --git a/src/mapi/glapi/glapitable.h b/src/mapi/glapi/glapitable.h index 5b7aeee6796..da278c559ec 100644 --- a/src/mapi/glapi/glapitable.h +++ b/src/mapi/glapi/glapitable.h @@ -666,288 +666,308 @@ struct _glapi_table void (GLAPIENTRYP GetShaderPrecisionFormat)(GLenum shadertype, GLenum precisiontype, GLint * range, GLint * precision); /* 623 */ void (GLAPIENTRYP ReleaseShaderCompiler)(void); /* 624 */ void (GLAPIENTRYP ShaderBinary)(GLsizei n, const GLuint * shaders, GLenum binaryformat, const GLvoid * binary, GLsizei length); /* 625 */ - void (GLAPIENTRYP PolygonOffsetEXT)(GLfloat factor, GLfloat bias); /* 626 */ - void (GLAPIENTRYP GetPixelTexGenParameterfvSGIS)(GLenum pname, GLfloat * params); /* 627 */ - void (GLAPIENTRYP GetPixelTexGenParameterivSGIS)(GLenum pname, GLint * params); /* 628 */ - void (GLAPIENTRYP PixelTexGenParameterfSGIS)(GLenum pname, GLfloat param); /* 629 */ - void (GLAPIENTRYP PixelTexGenParameterfvSGIS)(GLenum pname, const GLfloat * params); /* 630 */ - void (GLAPIENTRYP PixelTexGenParameteriSGIS)(GLenum pname, GLint param); /* 631 */ - void (GLAPIENTRYP PixelTexGenParameterivSGIS)(GLenum pname, const GLint * params); /* 632 */ - void (GLAPIENTRYP SampleMaskSGIS)(GLclampf value, GLboolean invert); /* 633 */ - void (GLAPIENTRYP SamplePatternSGIS)(GLenum pattern); /* 634 */ - void (GLAPIENTRYP ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 635 */ - void (GLAPIENTRYP EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean * pointer); /* 636 */ - void (GLAPIENTRYP IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 637 */ - void (GLAPIENTRYP NormalPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 638 */ - void (GLAPIENTRYP TexCoordPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 639 */ - void (GLAPIENTRYP VertexPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 640 */ - void (GLAPIENTRYP PointParameterfEXT)(GLenum pname, GLfloat param); /* 641 */ - void (GLAPIENTRYP PointParameterfvEXT)(GLenum pname, const GLfloat * params); /* 642 */ - void (GLAPIENTRYP LockArraysEXT)(GLint first, GLsizei count); /* 643 */ - void (GLAPIENTRYP UnlockArraysEXT)(void); /* 644 */ - void (GLAPIENTRYP SecondaryColor3bEXT)(GLbyte red, GLbyte green, GLbyte blue); /* 645 */ - void (GLAPIENTRYP SecondaryColor3bvEXT)(const GLbyte * v); /* 646 */ - void (GLAPIENTRYP SecondaryColor3dEXT)(GLdouble red, GLdouble green, GLdouble blue); /* 647 */ - void (GLAPIENTRYP SecondaryColor3dvEXT)(const GLdouble * v); /* 648 */ - void (GLAPIENTRYP SecondaryColor3fEXT)(GLfloat red, GLfloat green, GLfloat blue); /* 649 */ - void (GLAPIENTRYP SecondaryColor3fvEXT)(const GLfloat * v); /* 650 */ - void (GLAPIENTRYP SecondaryColor3iEXT)(GLint red, GLint green, GLint blue); /* 651 */ - void (GLAPIENTRYP SecondaryColor3ivEXT)(const GLint * v); /* 652 */ - void (GLAPIENTRYP SecondaryColor3sEXT)(GLshort red, GLshort green, GLshort blue); /* 653 */ - void (GLAPIENTRYP SecondaryColor3svEXT)(const GLshort * v); /* 654 */ - void (GLAPIENTRYP SecondaryColor3ubEXT)(GLubyte red, GLubyte green, GLubyte blue); /* 655 */ - void (GLAPIENTRYP SecondaryColor3ubvEXT)(const GLubyte * v); /* 656 */ - void (GLAPIENTRYP SecondaryColor3uiEXT)(GLuint red, GLuint green, GLuint blue); /* 657 */ - void (GLAPIENTRYP SecondaryColor3uivEXT)(const GLuint * v); /* 658 */ - void (GLAPIENTRYP SecondaryColor3usEXT)(GLushort red, GLushort green, GLushort blue); /* 659 */ - void (GLAPIENTRYP SecondaryColor3usvEXT)(const GLushort * v); /* 660 */ - void (GLAPIENTRYP SecondaryColorPointerEXT)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 661 */ - void (GLAPIENTRYP MultiDrawArraysEXT)(GLenum mode, const GLint * first, const GLsizei * count, GLsizei primcount); /* 662 */ - void (GLAPIENTRYP MultiDrawElementsEXT)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount); /* 663 */ - void (GLAPIENTRYP FogCoordPointerEXT)(GLenum type, GLsizei stride, const GLvoid * pointer); /* 664 */ - void (GLAPIENTRYP FogCoorddEXT)(GLdouble coord); /* 665 */ - void (GLAPIENTRYP FogCoorddvEXT)(const GLdouble * coord); /* 666 */ - void (GLAPIENTRYP FogCoordfEXT)(GLfloat coord); /* 667 */ - void (GLAPIENTRYP FogCoordfvEXT)(const GLfloat * coord); /* 668 */ - void (GLAPIENTRYP PixelTexGenSGIX)(GLenum mode); /* 669 */ - void (GLAPIENTRYP BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); /* 670 */ - void (GLAPIENTRYP FlushVertexArrayRangeNV)(void); /* 671 */ - void (GLAPIENTRYP VertexArrayRangeNV)(GLsizei length, const GLvoid * pointer); /* 672 */ - void (GLAPIENTRYP CombinerInputNV)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 673 */ - void (GLAPIENTRYP CombinerOutputNV)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum); /* 674 */ - void (GLAPIENTRYP CombinerParameterfNV)(GLenum pname, GLfloat param); /* 675 */ - void (GLAPIENTRYP CombinerParameterfvNV)(GLenum pname, const GLfloat * params); /* 676 */ - void (GLAPIENTRYP CombinerParameteriNV)(GLenum pname, GLint param); /* 677 */ - void (GLAPIENTRYP CombinerParameterivNV)(GLenum pname, const GLint * params); /* 678 */ - void (GLAPIENTRYP FinalCombinerInputNV)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 679 */ - void (GLAPIENTRYP GetCombinerInputParameterfvNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat * params); /* 680 */ - void (GLAPIENTRYP GetCombinerInputParameterivNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint * params); /* 681 */ - void (GLAPIENTRYP GetCombinerOutputParameterfvNV)(GLenum stage, GLenum portion, GLenum pname, GLfloat * params); /* 682 */ - void (GLAPIENTRYP GetCombinerOutputParameterivNV)(GLenum stage, GLenum portion, GLenum pname, GLint * params); /* 683 */ - void (GLAPIENTRYP GetFinalCombinerInputParameterfvNV)(GLenum variable, GLenum pname, GLfloat * params); /* 684 */ - void (GLAPIENTRYP GetFinalCombinerInputParameterivNV)(GLenum variable, GLenum pname, GLint * params); /* 685 */ - void (GLAPIENTRYP ResizeBuffersMESA)(void); /* 686 */ - void (GLAPIENTRYP WindowPos2dMESA)(GLdouble x, GLdouble y); /* 687 */ - void (GLAPIENTRYP WindowPos2dvMESA)(const GLdouble * v); /* 688 */ - void (GLAPIENTRYP WindowPos2fMESA)(GLfloat x, GLfloat y); /* 689 */ - void (GLAPIENTRYP WindowPos2fvMESA)(const GLfloat * v); /* 690 */ - void (GLAPIENTRYP WindowPos2iMESA)(GLint x, GLint y); /* 691 */ - void (GLAPIENTRYP WindowPos2ivMESA)(const GLint * v); /* 692 */ - void (GLAPIENTRYP WindowPos2sMESA)(GLshort x, GLshort y); /* 693 */ - void (GLAPIENTRYP WindowPos2svMESA)(const GLshort * v); /* 694 */ - void (GLAPIENTRYP WindowPos3dMESA)(GLdouble x, GLdouble y, GLdouble z); /* 695 */ - void (GLAPIENTRYP WindowPos3dvMESA)(const GLdouble * v); /* 696 */ - void (GLAPIENTRYP WindowPos3fMESA)(GLfloat x, GLfloat y, GLfloat z); /* 697 */ - void (GLAPIENTRYP WindowPos3fvMESA)(const GLfloat * v); /* 698 */ - void (GLAPIENTRYP WindowPos3iMESA)(GLint x, GLint y, GLint z); /* 699 */ - void (GLAPIENTRYP WindowPos3ivMESA)(const GLint * v); /* 700 */ - void (GLAPIENTRYP WindowPos3sMESA)(GLshort x, GLshort y, GLshort z); /* 701 */ - void (GLAPIENTRYP WindowPos3svMESA)(const GLshort * v); /* 702 */ - void (GLAPIENTRYP WindowPos4dMESA)(GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 703 */ - void (GLAPIENTRYP WindowPos4dvMESA)(const GLdouble * v); /* 704 */ - void (GLAPIENTRYP WindowPos4fMESA)(GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 705 */ - void (GLAPIENTRYP WindowPos4fvMESA)(const GLfloat * v); /* 706 */ - void (GLAPIENTRYP WindowPos4iMESA)(GLint x, GLint y, GLint z, GLint w); /* 707 */ - void (GLAPIENTRYP WindowPos4ivMESA)(const GLint * v); /* 708 */ - void (GLAPIENTRYP WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w); /* 709 */ - void (GLAPIENTRYP WindowPos4svMESA)(const GLshort * v); /* 710 */ - void (GLAPIENTRYP MultiModeDrawArraysIBM)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); /* 711 */ - void (GLAPIENTRYP MultiModeDrawElementsIBM)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); /* 712 */ - void (GLAPIENTRYP DeleteFencesNV)(GLsizei n, const GLuint * fences); /* 713 */ - void (GLAPIENTRYP FinishFenceNV)(GLuint fence); /* 714 */ - void (GLAPIENTRYP GenFencesNV)(GLsizei n, GLuint * fences); /* 715 */ - void (GLAPIENTRYP GetFenceivNV)(GLuint fence, GLenum pname, GLint * params); /* 716 */ - GLboolean (GLAPIENTRYP IsFenceNV)(GLuint fence); /* 717 */ - void (GLAPIENTRYP SetFenceNV)(GLuint fence, GLenum condition); /* 718 */ - GLboolean (GLAPIENTRYP TestFenceNV)(GLuint fence); /* 719 */ - GLboolean (GLAPIENTRYP AreProgramsResidentNV)(GLsizei n, const GLuint * ids, GLboolean * residences); /* 720 */ - void (GLAPIENTRYP BindProgramNV)(GLenum target, GLuint program); /* 721 */ - void (GLAPIENTRYP DeleteProgramsNV)(GLsizei n, const GLuint * programs); /* 722 */ - void (GLAPIENTRYP ExecuteProgramNV)(GLenum target, GLuint id, const GLfloat * params); /* 723 */ - void (GLAPIENTRYP GenProgramsNV)(GLsizei n, GLuint * programs); /* 724 */ - void (GLAPIENTRYP GetProgramParameterdvNV)(GLenum target, GLuint index, GLenum pname, GLdouble * params); /* 725 */ - void (GLAPIENTRYP GetProgramParameterfvNV)(GLenum target, GLuint index, GLenum pname, GLfloat * params); /* 726 */ - void (GLAPIENTRYP GetProgramStringNV)(GLuint id, GLenum pname, GLubyte * program); /* 727 */ - void (GLAPIENTRYP GetProgramivNV)(GLuint id, GLenum pname, GLint * params); /* 728 */ - void (GLAPIENTRYP GetTrackMatrixivNV)(GLenum target, GLuint address, GLenum pname, GLint * params); /* 729 */ - void (GLAPIENTRYP GetVertexAttribPointervNV)(GLuint index, GLenum pname, GLvoid ** pointer); /* 730 */ - void (GLAPIENTRYP GetVertexAttribdvNV)(GLuint index, GLenum pname, GLdouble * params); /* 731 */ - void (GLAPIENTRYP GetVertexAttribfvNV)(GLuint index, GLenum pname, GLfloat * params); /* 732 */ - void (GLAPIENTRYP GetVertexAttribivNV)(GLuint index, GLenum pname, GLint * params); /* 733 */ - GLboolean (GLAPIENTRYP IsProgramNV)(GLuint program); /* 734 */ - void (GLAPIENTRYP LoadProgramNV)(GLenum target, GLuint id, GLsizei len, const GLubyte * program); /* 735 */ - void (GLAPIENTRYP ProgramParameters4dvNV)(GLenum target, GLuint index, GLsizei num, const GLdouble * params); /* 736 */ - void (GLAPIENTRYP ProgramParameters4fvNV)(GLenum target, GLuint index, GLsizei num, const GLfloat * params); /* 737 */ - void (GLAPIENTRYP RequestResidentProgramsNV)(GLsizei n, const GLuint * ids); /* 738 */ - void (GLAPIENTRYP TrackMatrixNV)(GLenum target, GLuint address, GLenum matrix, GLenum transform); /* 739 */ - void (GLAPIENTRYP VertexAttrib1dNV)(GLuint index, GLdouble x); /* 740 */ - void (GLAPIENTRYP VertexAttrib1dvNV)(GLuint index, const GLdouble * v); /* 741 */ - void (GLAPIENTRYP VertexAttrib1fNV)(GLuint index, GLfloat x); /* 742 */ - void (GLAPIENTRYP VertexAttrib1fvNV)(GLuint index, const GLfloat * v); /* 743 */ - void (GLAPIENTRYP VertexAttrib1sNV)(GLuint index, GLshort x); /* 744 */ - void (GLAPIENTRYP VertexAttrib1svNV)(GLuint index, const GLshort * v); /* 745 */ - void (GLAPIENTRYP VertexAttrib2dNV)(GLuint index, GLdouble x, GLdouble y); /* 746 */ - void (GLAPIENTRYP VertexAttrib2dvNV)(GLuint index, const GLdouble * v); /* 747 */ - void (GLAPIENTRYP VertexAttrib2fNV)(GLuint index, GLfloat x, GLfloat y); /* 748 */ - void (GLAPIENTRYP VertexAttrib2fvNV)(GLuint index, const GLfloat * v); /* 749 */ - void (GLAPIENTRYP VertexAttrib2sNV)(GLuint index, GLshort x, GLshort y); /* 750 */ - void (GLAPIENTRYP VertexAttrib2svNV)(GLuint index, const GLshort * v); /* 751 */ - void (GLAPIENTRYP VertexAttrib3dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z); /* 752 */ - void (GLAPIENTRYP VertexAttrib3dvNV)(GLuint index, const GLdouble * v); /* 753 */ - void (GLAPIENTRYP VertexAttrib3fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z); /* 754 */ - void (GLAPIENTRYP VertexAttrib3fvNV)(GLuint index, const GLfloat * v); /* 755 */ - void (GLAPIENTRYP VertexAttrib3sNV)(GLuint index, GLshort x, GLshort y, GLshort z); /* 756 */ - void (GLAPIENTRYP VertexAttrib3svNV)(GLuint index, const GLshort * v); /* 757 */ - void (GLAPIENTRYP VertexAttrib4dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 758 */ - void (GLAPIENTRYP VertexAttrib4dvNV)(GLuint index, const GLdouble * v); /* 759 */ - void (GLAPIENTRYP VertexAttrib4fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 760 */ - void (GLAPIENTRYP VertexAttrib4fvNV)(GLuint index, const GLfloat * v); /* 761 */ - void (GLAPIENTRYP VertexAttrib4sNV)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); /* 762 */ - void (GLAPIENTRYP VertexAttrib4svNV)(GLuint index, const GLshort * v); /* 763 */ - void (GLAPIENTRYP VertexAttrib4ubNV)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); /* 764 */ - void (GLAPIENTRYP VertexAttrib4ubvNV)(GLuint index, const GLubyte * v); /* 765 */ - void (GLAPIENTRYP VertexAttribPointerNV)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 766 */ - void (GLAPIENTRYP VertexAttribs1dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 767 */ - void (GLAPIENTRYP VertexAttribs1fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 768 */ - void (GLAPIENTRYP VertexAttribs1svNV)(GLuint index, GLsizei n, const GLshort * v); /* 769 */ - void (GLAPIENTRYP VertexAttribs2dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 770 */ - void (GLAPIENTRYP VertexAttribs2fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 771 */ - void (GLAPIENTRYP VertexAttribs2svNV)(GLuint index, GLsizei n, const GLshort * v); /* 772 */ - void (GLAPIENTRYP VertexAttribs3dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 773 */ - void (GLAPIENTRYP VertexAttribs3fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 774 */ - void (GLAPIENTRYP VertexAttribs3svNV)(GLuint index, GLsizei n, const GLshort * v); /* 775 */ - void (GLAPIENTRYP VertexAttribs4dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 776 */ - void (GLAPIENTRYP VertexAttribs4fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 777 */ - void (GLAPIENTRYP VertexAttribs4svNV)(GLuint index, GLsizei n, const GLshort * v); /* 778 */ - void (GLAPIENTRYP VertexAttribs4ubvNV)(GLuint index, GLsizei n, const GLubyte * v); /* 779 */ - void (GLAPIENTRYP GetTexBumpParameterfvATI)(GLenum pname, GLfloat * param); /* 780 */ - void (GLAPIENTRYP GetTexBumpParameterivATI)(GLenum pname, GLint * param); /* 781 */ - void (GLAPIENTRYP TexBumpParameterfvATI)(GLenum pname, const GLfloat * param); /* 782 */ - void (GLAPIENTRYP TexBumpParameterivATI)(GLenum pname, const GLint * param); /* 783 */ - void (GLAPIENTRYP AlphaFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 784 */ - void (GLAPIENTRYP AlphaFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 785 */ - void (GLAPIENTRYP AlphaFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); /* 786 */ - void (GLAPIENTRYP BeginFragmentShaderATI)(void); /* 787 */ - void (GLAPIENTRYP BindFragmentShaderATI)(GLuint id); /* 788 */ - void (GLAPIENTRYP ColorFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 789 */ - void (GLAPIENTRYP ColorFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 790 */ - void (GLAPIENTRYP ColorFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); /* 791 */ - void (GLAPIENTRYP DeleteFragmentShaderATI)(GLuint id); /* 792 */ - void (GLAPIENTRYP EndFragmentShaderATI)(void); /* 793 */ - GLuint (GLAPIENTRYP GenFragmentShadersATI)(GLuint range); /* 794 */ - void (GLAPIENTRYP PassTexCoordATI)(GLuint dst, GLuint coord, GLenum swizzle); /* 795 */ - void (GLAPIENTRYP SampleMapATI)(GLuint dst, GLuint interp, GLenum swizzle); /* 796 */ - void (GLAPIENTRYP SetFragmentShaderConstantATI)(GLuint dst, const GLfloat * value); /* 797 */ - void (GLAPIENTRYP PointParameteriNV)(GLenum pname, GLint param); /* 798 */ - void (GLAPIENTRYP PointParameterivNV)(GLenum pname, const GLint * params); /* 799 */ - void (GLAPIENTRYP ActiveStencilFaceEXT)(GLenum face); /* 800 */ - void (GLAPIENTRYP BindVertexArrayAPPLE)(GLuint array); /* 801 */ - void (GLAPIENTRYP DeleteVertexArraysAPPLE)(GLsizei n, const GLuint * arrays); /* 802 */ - void (GLAPIENTRYP GenVertexArraysAPPLE)(GLsizei n, GLuint * arrays); /* 803 */ - GLboolean (GLAPIENTRYP IsVertexArrayAPPLE)(GLuint array); /* 804 */ - void (GLAPIENTRYP GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble * params); /* 805 */ - void (GLAPIENTRYP GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat * params); /* 806 */ - void (GLAPIENTRYP ProgramNamedParameter4dNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 807 */ - void (GLAPIENTRYP ProgramNamedParameter4dvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLdouble * v); /* 808 */ - void (GLAPIENTRYP ProgramNamedParameter4fNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 809 */ - void (GLAPIENTRYP ProgramNamedParameter4fvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLfloat * v); /* 810 */ - void (GLAPIENTRYP PrimitiveRestartIndexNV)(GLuint index); /* 811 */ - void (GLAPIENTRYP PrimitiveRestartNV)(void); /* 812 */ - void (GLAPIENTRYP DepthBoundsEXT)(GLclampd zmin, GLclampd zmax); /* 813 */ - void (GLAPIENTRYP BlendEquationSeparateEXT)(GLenum modeRGB, GLenum modeA); /* 814 */ - void (GLAPIENTRYP BindFramebufferEXT)(GLenum target, GLuint framebuffer); /* 815 */ - void (GLAPIENTRYP BindRenderbufferEXT)(GLenum target, GLuint renderbuffer); /* 816 */ - GLenum (GLAPIENTRYP CheckFramebufferStatusEXT)(GLenum target); /* 817 */ - void (GLAPIENTRYP DeleteFramebuffersEXT)(GLsizei n, const GLuint * framebuffers); /* 818 */ - void (GLAPIENTRYP DeleteRenderbuffersEXT)(GLsizei n, const GLuint * renderbuffers); /* 819 */ - void (GLAPIENTRYP FramebufferRenderbufferEXT)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); /* 820 */ - void (GLAPIENTRYP FramebufferTexture1DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 821 */ - void (GLAPIENTRYP FramebufferTexture2DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 822 */ - void (GLAPIENTRYP FramebufferTexture3DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); /* 823 */ - void (GLAPIENTRYP GenFramebuffersEXT)(GLsizei n, GLuint * framebuffers); /* 824 */ - void (GLAPIENTRYP GenRenderbuffersEXT)(GLsizei n, GLuint * renderbuffers); /* 825 */ - void (GLAPIENTRYP GenerateMipmapEXT)(GLenum target); /* 826 */ - void (GLAPIENTRYP GetFramebufferAttachmentParameterivEXT)(GLenum target, GLenum attachment, GLenum pname, GLint * params); /* 827 */ - void (GLAPIENTRYP GetRenderbufferParameterivEXT)(GLenum target, GLenum pname, GLint * params); /* 828 */ - GLboolean (GLAPIENTRYP IsFramebufferEXT)(GLuint framebuffer); /* 829 */ - GLboolean (GLAPIENTRYP IsRenderbufferEXT)(GLuint renderbuffer); /* 830 */ - void (GLAPIENTRYP RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); /* 831 */ - void (GLAPIENTRYP BlitFramebufferEXT)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); /* 832 */ - void (GLAPIENTRYP BufferParameteriAPPLE)(GLenum target, GLenum pname, GLint param); /* 833 */ - void (GLAPIENTRYP FlushMappedBufferRangeAPPLE)(GLenum target, GLintptr offset, GLsizeiptr size); /* 834 */ - void (GLAPIENTRYP BindFragDataLocationEXT)(GLuint program, GLuint colorNumber, const GLchar * name); /* 835 */ - GLint (GLAPIENTRYP GetFragDataLocationEXT)(GLuint program, const GLchar * name); /* 836 */ - void (GLAPIENTRYP GetUniformuivEXT)(GLuint program, GLint location, GLuint * params); /* 837 */ - void (GLAPIENTRYP GetVertexAttribIivEXT)(GLuint index, GLenum pname, GLint * params); /* 838 */ - void (GLAPIENTRYP GetVertexAttribIuivEXT)(GLuint index, GLenum pname, GLuint * params); /* 839 */ - void (GLAPIENTRYP Uniform1uiEXT)(GLint location, GLuint x); /* 840 */ - void (GLAPIENTRYP Uniform1uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 841 */ - void (GLAPIENTRYP Uniform2uiEXT)(GLint location, GLuint x, GLuint y); /* 842 */ - void (GLAPIENTRYP Uniform2uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 843 */ - void (GLAPIENTRYP Uniform3uiEXT)(GLint location, GLuint x, GLuint y, GLuint z); /* 844 */ - void (GLAPIENTRYP Uniform3uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 845 */ - void (GLAPIENTRYP Uniform4uiEXT)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w); /* 846 */ - void (GLAPIENTRYP Uniform4uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 847 */ - void (GLAPIENTRYP VertexAttribI1iEXT)(GLuint index, GLint x); /* 848 */ - void (GLAPIENTRYP VertexAttribI1ivEXT)(GLuint index, const GLint * v); /* 849 */ - void (GLAPIENTRYP VertexAttribI1uiEXT)(GLuint index, GLuint x); /* 850 */ - void (GLAPIENTRYP VertexAttribI1uivEXT)(GLuint index, const GLuint * v); /* 851 */ - void (GLAPIENTRYP VertexAttribI2iEXT)(GLuint index, GLint x, GLint y); /* 852 */ - void (GLAPIENTRYP VertexAttribI2ivEXT)(GLuint index, const GLint * v); /* 853 */ - void (GLAPIENTRYP VertexAttribI2uiEXT)(GLuint index, GLuint x, GLuint y); /* 854 */ - void (GLAPIENTRYP VertexAttribI2uivEXT)(GLuint index, const GLuint * v); /* 855 */ - void (GLAPIENTRYP VertexAttribI3iEXT)(GLuint index, GLint x, GLint y, GLint z); /* 856 */ - void (GLAPIENTRYP VertexAttribI3ivEXT)(GLuint index, const GLint * v); /* 857 */ - void (GLAPIENTRYP VertexAttribI3uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z); /* 858 */ - void (GLAPIENTRYP VertexAttribI3uivEXT)(GLuint index, const GLuint * v); /* 859 */ - void (GLAPIENTRYP VertexAttribI4bvEXT)(GLuint index, const GLbyte * v); /* 860 */ - void (GLAPIENTRYP VertexAttribI4iEXT)(GLuint index, GLint x, GLint y, GLint z, GLint w); /* 861 */ - void (GLAPIENTRYP VertexAttribI4ivEXT)(GLuint index, const GLint * v); /* 862 */ - void (GLAPIENTRYP VertexAttribI4svEXT)(GLuint index, const GLshort * v); /* 863 */ - void (GLAPIENTRYP VertexAttribI4ubvEXT)(GLuint index, const GLubyte * v); /* 864 */ - void (GLAPIENTRYP VertexAttribI4uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); /* 865 */ - void (GLAPIENTRYP VertexAttribI4uivEXT)(GLuint index, const GLuint * v); /* 866 */ - void (GLAPIENTRYP VertexAttribI4usvEXT)(GLuint index, const GLushort * v); /* 867 */ - void (GLAPIENTRYP VertexAttribIPointerEXT)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 868 */ - void (GLAPIENTRYP FramebufferTextureLayerEXT)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer); /* 869 */ - void (GLAPIENTRYP ColorMaskIndexedEXT)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a); /* 870 */ - void (GLAPIENTRYP DisableIndexedEXT)(GLenum target, GLuint index); /* 871 */ - void (GLAPIENTRYP EnableIndexedEXT)(GLenum target, GLuint index); /* 872 */ - void (GLAPIENTRYP GetBooleanIndexedvEXT)(GLenum value, GLuint index, GLboolean * data); /* 873 */ - void (GLAPIENTRYP GetIntegerIndexedvEXT)(GLenum value, GLuint index, GLint * data); /* 874 */ - GLboolean (GLAPIENTRYP IsEnabledIndexedEXT)(GLenum target, GLuint index); /* 875 */ - void (GLAPIENTRYP ClearColorIiEXT)(GLint r, GLint g, GLint b, GLint a); /* 876 */ - void (GLAPIENTRYP ClearColorIuiEXT)(GLuint r, GLuint g, GLuint b, GLuint a); /* 877 */ - void (GLAPIENTRYP GetTexParameterIivEXT)(GLenum target, GLenum pname, GLint * params); /* 878 */ - void (GLAPIENTRYP GetTexParameterIuivEXT)(GLenum target, GLenum pname, GLuint * params); /* 879 */ - void (GLAPIENTRYP TexParameterIivEXT)(GLenum target, GLenum pname, const GLint * params); /* 880 */ - void (GLAPIENTRYP TexParameterIuivEXT)(GLenum target, GLenum pname, const GLuint * params); /* 881 */ - void (GLAPIENTRYP BeginConditionalRenderNV)(GLuint query, GLenum mode); /* 882 */ - void (GLAPIENTRYP EndConditionalRenderNV)(void); /* 883 */ - void (GLAPIENTRYP BeginTransformFeedbackEXT)(GLenum mode); /* 884 */ - void (GLAPIENTRYP BindBufferBaseEXT)(GLenum target, GLuint index, GLuint buffer); /* 885 */ - void (GLAPIENTRYP BindBufferOffsetEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset); /* 886 */ - void (GLAPIENTRYP BindBufferRangeEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); /* 887 */ - void (GLAPIENTRYP EndTransformFeedbackEXT)(void); /* 888 */ - void (GLAPIENTRYP GetTransformFeedbackVaryingEXT)(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name); /* 889 */ - void (GLAPIENTRYP TransformFeedbackVaryingsEXT)(GLuint program, GLsizei count, const char ** varyings, GLenum bufferMode); /* 890 */ - void (GLAPIENTRYP ProvokingVertexEXT)(GLenum mode); /* 891 */ - void (GLAPIENTRYP GetTexParameterPointervAPPLE)(GLenum target, GLenum pname, GLvoid ** params); /* 892 */ - void (GLAPIENTRYP TextureRangeAPPLE)(GLenum target, GLsizei length, GLvoid * pointer); /* 893 */ - void (GLAPIENTRYP GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint * value); /* 894 */ - GLenum (GLAPIENTRYP ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 895 */ - GLenum (GLAPIENTRYP ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 896 */ - void (GLAPIENTRYP ActiveProgramEXT)(GLuint program); /* 897 */ - GLuint (GLAPIENTRYP CreateShaderProgramEXT)(GLenum type, const GLchar * string); /* 898 */ - void (GLAPIENTRYP UseShaderProgramEXT)(GLenum type, GLuint program); /* 899 */ - void (GLAPIENTRYP TextureBarrierNV)(void); /* 900 */ - void (GLAPIENTRYP StencilFuncSeparateATI)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); /* 901 */ - void (GLAPIENTRYP ProgramEnvParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 902 */ - void (GLAPIENTRYP ProgramLocalParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 903 */ - void (GLAPIENTRYP GetQueryObjecti64vEXT)(GLuint id, GLenum pname, GLint64EXT * params); /* 904 */ - void (GLAPIENTRYP GetQueryObjectui64vEXT)(GLuint id, GLenum pname, GLuint64EXT * params); /* 905 */ - void (GLAPIENTRYP EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid * writeOffset); /* 906 */ - void (GLAPIENTRYP EGLImageTargetTexture2DOES)(GLenum target, GLvoid * writeOffset); /* 907 */ + GLenum (GLAPIENTRYP GetGraphicsResetStatusARB)(void); /* 626 */ + void (GLAPIENTRYP GetnColorTableARB)(GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid * table); /* 627 */ + void (GLAPIENTRYP GetnCompressedTexImageARB)(GLenum target, GLint lod, GLsizei bufSize, GLvoid * img); /* 628 */ + void (GLAPIENTRYP GetnConvolutionFilterARB)(GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid * image); /* 629 */ + void (GLAPIENTRYP GetnHistogramARB)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid * values); /* 630 */ + void (GLAPIENTRYP GetnMapdvARB)(GLenum target, GLenum query, GLsizei bufSize, GLdouble * v); /* 631 */ + void (GLAPIENTRYP GetnMapfvARB)(GLenum target, GLenum query, GLsizei bufSize, GLfloat * v); /* 632 */ + void (GLAPIENTRYP GetnMapivARB)(GLenum target, GLenum query, GLsizei bufSize, GLint * v); /* 633 */ + void (GLAPIENTRYP GetnMinmaxARB)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid * values); /* 634 */ + void (GLAPIENTRYP GetnPixelMapfvARB)(GLenum map, GLsizei bufSize, GLfloat * values); /* 635 */ + void (GLAPIENTRYP GetnPixelMapuivARB)(GLenum map, GLsizei bufSize, GLuint * values); /* 636 */ + void (GLAPIENTRYP GetnPixelMapusvARB)(GLenum map, GLsizei bufSize, GLushort * values); /* 637 */ + void (GLAPIENTRYP GetnPolygonStippleARB)(GLsizei bufSize, GLubyte * pattern); /* 638 */ + void (GLAPIENTRYP GetnSeparableFilterARB)(GLenum target, GLenum format, GLenum type, GLsizei rowBufSize, GLvoid * row, GLsizei columnBufSize, GLvoid * column, GLvoid * span); /* 639 */ + void (GLAPIENTRYP GetnTexImageARB)(GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, GLvoid * img); /* 640 */ + void (GLAPIENTRYP GetnUniformdvARB)(GLhandleARB program, GLint location, GLsizei bufSize, GLdouble * params); /* 641 */ + void (GLAPIENTRYP GetnUniformfvARB)(GLhandleARB program, GLint location, GLsizei bufSize, GLfloat * params); /* 642 */ + void (GLAPIENTRYP GetnUniformivARB)(GLhandleARB program, GLint location, GLsizei bufSize, GLint * params); /* 643 */ + void (GLAPIENTRYP GetnUniformuivARB)(GLhandleARB program, GLint location, GLsizei bufSize, GLuint * params); /* 644 */ + void (GLAPIENTRYP ReadnPixelsARB)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLvoid * data); /* 645 */ + void (GLAPIENTRYP PolygonOffsetEXT)(GLfloat factor, GLfloat bias); /* 646 */ + void (GLAPIENTRYP GetPixelTexGenParameterfvSGIS)(GLenum pname, GLfloat * params); /* 647 */ + void (GLAPIENTRYP GetPixelTexGenParameterivSGIS)(GLenum pname, GLint * params); /* 648 */ + void (GLAPIENTRYP PixelTexGenParameterfSGIS)(GLenum pname, GLfloat param); /* 649 */ + void (GLAPIENTRYP PixelTexGenParameterfvSGIS)(GLenum pname, const GLfloat * params); /* 650 */ + void (GLAPIENTRYP PixelTexGenParameteriSGIS)(GLenum pname, GLint param); /* 651 */ + void (GLAPIENTRYP PixelTexGenParameterivSGIS)(GLenum pname, const GLint * params); /* 652 */ + void (GLAPIENTRYP SampleMaskSGIS)(GLclampf value, GLboolean invert); /* 653 */ + void (GLAPIENTRYP SamplePatternSGIS)(GLenum pattern); /* 654 */ + void (GLAPIENTRYP ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 655 */ + void (GLAPIENTRYP EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean * pointer); /* 656 */ + void (GLAPIENTRYP IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 657 */ + void (GLAPIENTRYP NormalPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 658 */ + void (GLAPIENTRYP TexCoordPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 659 */ + void (GLAPIENTRYP VertexPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 660 */ + void (GLAPIENTRYP PointParameterfEXT)(GLenum pname, GLfloat param); /* 661 */ + void (GLAPIENTRYP PointParameterfvEXT)(GLenum pname, const GLfloat * params); /* 662 */ + void (GLAPIENTRYP LockArraysEXT)(GLint first, GLsizei count); /* 663 */ + void (GLAPIENTRYP UnlockArraysEXT)(void); /* 664 */ + void (GLAPIENTRYP SecondaryColor3bEXT)(GLbyte red, GLbyte green, GLbyte blue); /* 665 */ + void (GLAPIENTRYP SecondaryColor3bvEXT)(const GLbyte * v); /* 666 */ + void (GLAPIENTRYP SecondaryColor3dEXT)(GLdouble red, GLdouble green, GLdouble blue); /* 667 */ + void (GLAPIENTRYP SecondaryColor3dvEXT)(const GLdouble * v); /* 668 */ + void (GLAPIENTRYP SecondaryColor3fEXT)(GLfloat red, GLfloat green, GLfloat blue); /* 669 */ + void (GLAPIENTRYP SecondaryColor3fvEXT)(const GLfloat * v); /* 670 */ + void (GLAPIENTRYP SecondaryColor3iEXT)(GLint red, GLint green, GLint blue); /* 671 */ + void (GLAPIENTRYP SecondaryColor3ivEXT)(const GLint * v); /* 672 */ + void (GLAPIENTRYP SecondaryColor3sEXT)(GLshort red, GLshort green, GLshort blue); /* 673 */ + void (GLAPIENTRYP SecondaryColor3svEXT)(const GLshort * v); /* 674 */ + void (GLAPIENTRYP SecondaryColor3ubEXT)(GLubyte red, GLubyte green, GLubyte blue); /* 675 */ + void (GLAPIENTRYP SecondaryColor3ubvEXT)(const GLubyte * v); /* 676 */ + void (GLAPIENTRYP SecondaryColor3uiEXT)(GLuint red, GLuint green, GLuint blue); /* 677 */ + void (GLAPIENTRYP SecondaryColor3uivEXT)(const GLuint * v); /* 678 */ + void (GLAPIENTRYP SecondaryColor3usEXT)(GLushort red, GLushort green, GLushort blue); /* 679 */ + void (GLAPIENTRYP SecondaryColor3usvEXT)(const GLushort * v); /* 680 */ + void (GLAPIENTRYP SecondaryColorPointerEXT)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 681 */ + void (GLAPIENTRYP MultiDrawArraysEXT)(GLenum mode, const GLint * first, const GLsizei * count, GLsizei primcount); /* 682 */ + void (GLAPIENTRYP MultiDrawElementsEXT)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount); /* 683 */ + void (GLAPIENTRYP FogCoordPointerEXT)(GLenum type, GLsizei stride, const GLvoid * pointer); /* 684 */ + void (GLAPIENTRYP FogCoorddEXT)(GLdouble coord); /* 685 */ + void (GLAPIENTRYP FogCoorddvEXT)(const GLdouble * coord); /* 686 */ + void (GLAPIENTRYP FogCoordfEXT)(GLfloat coord); /* 687 */ + void (GLAPIENTRYP FogCoordfvEXT)(const GLfloat * coord); /* 688 */ + void (GLAPIENTRYP PixelTexGenSGIX)(GLenum mode); /* 689 */ + void (GLAPIENTRYP BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); /* 690 */ + void (GLAPIENTRYP FlushVertexArrayRangeNV)(void); /* 691 */ + void (GLAPIENTRYP VertexArrayRangeNV)(GLsizei length, const GLvoid * pointer); /* 692 */ + void (GLAPIENTRYP CombinerInputNV)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 693 */ + void (GLAPIENTRYP CombinerOutputNV)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum); /* 694 */ + void (GLAPIENTRYP CombinerParameterfNV)(GLenum pname, GLfloat param); /* 695 */ + void (GLAPIENTRYP CombinerParameterfvNV)(GLenum pname, const GLfloat * params); /* 696 */ + void (GLAPIENTRYP CombinerParameteriNV)(GLenum pname, GLint param); /* 697 */ + void (GLAPIENTRYP CombinerParameterivNV)(GLenum pname, const GLint * params); /* 698 */ + void (GLAPIENTRYP FinalCombinerInputNV)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 699 */ + void (GLAPIENTRYP GetCombinerInputParameterfvNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat * params); /* 700 */ + void (GLAPIENTRYP GetCombinerInputParameterivNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint * params); /* 701 */ + void (GLAPIENTRYP GetCombinerOutputParameterfvNV)(GLenum stage, GLenum portion, GLenum pname, GLfloat * params); /* 702 */ + void (GLAPIENTRYP GetCombinerOutputParameterivNV)(GLenum stage, GLenum portion, GLenum pname, GLint * params); /* 703 */ + void (GLAPIENTRYP GetFinalCombinerInputParameterfvNV)(GLenum variable, GLenum pname, GLfloat * params); /* 704 */ + void (GLAPIENTRYP GetFinalCombinerInputParameterivNV)(GLenum variable, GLenum pname, GLint * params); /* 705 */ + void (GLAPIENTRYP ResizeBuffersMESA)(void); /* 706 */ + void (GLAPIENTRYP WindowPos2dMESA)(GLdouble x, GLdouble y); /* 707 */ + void (GLAPIENTRYP WindowPos2dvMESA)(const GLdouble * v); /* 708 */ + void (GLAPIENTRYP WindowPos2fMESA)(GLfloat x, GLfloat y); /* 709 */ + void (GLAPIENTRYP WindowPos2fvMESA)(const GLfloat * v); /* 710 */ + void (GLAPIENTRYP WindowPos2iMESA)(GLint x, GLint y); /* 711 */ + void (GLAPIENTRYP WindowPos2ivMESA)(const GLint * v); /* 712 */ + void (GLAPIENTRYP WindowPos2sMESA)(GLshort x, GLshort y); /* 713 */ + void (GLAPIENTRYP WindowPos2svMESA)(const GLshort * v); /* 714 */ + void (GLAPIENTRYP WindowPos3dMESA)(GLdouble x, GLdouble y, GLdouble z); /* 715 */ + void (GLAPIENTRYP WindowPos3dvMESA)(const GLdouble * v); /* 716 */ + void (GLAPIENTRYP WindowPos3fMESA)(GLfloat x, GLfloat y, GLfloat z); /* 717 */ + void (GLAPIENTRYP WindowPos3fvMESA)(const GLfloat * v); /* 718 */ + void (GLAPIENTRYP WindowPos3iMESA)(GLint x, GLint y, GLint z); /* 719 */ + void (GLAPIENTRYP WindowPos3ivMESA)(const GLint * v); /* 720 */ + void (GLAPIENTRYP WindowPos3sMESA)(GLshort x, GLshort y, GLshort z); /* 721 */ + void (GLAPIENTRYP WindowPos3svMESA)(const GLshort * v); /* 722 */ + void (GLAPIENTRYP WindowPos4dMESA)(GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 723 */ + void (GLAPIENTRYP WindowPos4dvMESA)(const GLdouble * v); /* 724 */ + void (GLAPIENTRYP WindowPos4fMESA)(GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 725 */ + void (GLAPIENTRYP WindowPos4fvMESA)(const GLfloat * v); /* 726 */ + void (GLAPIENTRYP WindowPos4iMESA)(GLint x, GLint y, GLint z, GLint w); /* 727 */ + void (GLAPIENTRYP WindowPos4ivMESA)(const GLint * v); /* 728 */ + void (GLAPIENTRYP WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w); /* 729 */ + void (GLAPIENTRYP WindowPos4svMESA)(const GLshort * v); /* 730 */ + void (GLAPIENTRYP MultiModeDrawArraysIBM)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); /* 731 */ + void (GLAPIENTRYP MultiModeDrawElementsIBM)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); /* 732 */ + void (GLAPIENTRYP DeleteFencesNV)(GLsizei n, const GLuint * fences); /* 733 */ + void (GLAPIENTRYP FinishFenceNV)(GLuint fence); /* 734 */ + void (GLAPIENTRYP GenFencesNV)(GLsizei n, GLuint * fences); /* 735 */ + void (GLAPIENTRYP GetFenceivNV)(GLuint fence, GLenum pname, GLint * params); /* 736 */ + GLboolean (GLAPIENTRYP IsFenceNV)(GLuint fence); /* 737 */ + void (GLAPIENTRYP SetFenceNV)(GLuint fence, GLenum condition); /* 738 */ + GLboolean (GLAPIENTRYP TestFenceNV)(GLuint fence); /* 739 */ + GLboolean (GLAPIENTRYP AreProgramsResidentNV)(GLsizei n, const GLuint * ids, GLboolean * residences); /* 740 */ + void (GLAPIENTRYP BindProgramNV)(GLenum target, GLuint program); /* 741 */ + void (GLAPIENTRYP DeleteProgramsNV)(GLsizei n, const GLuint * programs); /* 742 */ + void (GLAPIENTRYP ExecuteProgramNV)(GLenum target, GLuint id, const GLfloat * params); /* 743 */ + void (GLAPIENTRYP GenProgramsNV)(GLsizei n, GLuint * programs); /* 744 */ + void (GLAPIENTRYP GetProgramParameterdvNV)(GLenum target, GLuint index, GLenum pname, GLdouble * params); /* 745 */ + void (GLAPIENTRYP GetProgramParameterfvNV)(GLenum target, GLuint index, GLenum pname, GLfloat * params); /* 746 */ + void (GLAPIENTRYP GetProgramStringNV)(GLuint id, GLenum pname, GLubyte * program); /* 747 */ + void (GLAPIENTRYP GetProgramivNV)(GLuint id, GLenum pname, GLint * params); /* 748 */ + void (GLAPIENTRYP GetTrackMatrixivNV)(GLenum target, GLuint address, GLenum pname, GLint * params); /* 749 */ + void (GLAPIENTRYP GetVertexAttribPointervNV)(GLuint index, GLenum pname, GLvoid ** pointer); /* 750 */ + void (GLAPIENTRYP GetVertexAttribdvNV)(GLuint index, GLenum pname, GLdouble * params); /* 751 */ + void (GLAPIENTRYP GetVertexAttribfvNV)(GLuint index, GLenum pname, GLfloat * params); /* 752 */ + void (GLAPIENTRYP GetVertexAttribivNV)(GLuint index, GLenum pname, GLint * params); /* 753 */ + GLboolean (GLAPIENTRYP IsProgramNV)(GLuint program); /* 754 */ + void (GLAPIENTRYP LoadProgramNV)(GLenum target, GLuint id, GLsizei len, const GLubyte * program); /* 755 */ + void (GLAPIENTRYP ProgramParameters4dvNV)(GLenum target, GLuint index, GLsizei num, const GLdouble * params); /* 756 */ + void (GLAPIENTRYP ProgramParameters4fvNV)(GLenum target, GLuint index, GLsizei num, const GLfloat * params); /* 757 */ + void (GLAPIENTRYP RequestResidentProgramsNV)(GLsizei n, const GLuint * ids); /* 758 */ + void (GLAPIENTRYP TrackMatrixNV)(GLenum target, GLuint address, GLenum matrix, GLenum transform); /* 759 */ + void (GLAPIENTRYP VertexAttrib1dNV)(GLuint index, GLdouble x); /* 760 */ + void (GLAPIENTRYP VertexAttrib1dvNV)(GLuint index, const GLdouble * v); /* 761 */ + void (GLAPIENTRYP VertexAttrib1fNV)(GLuint index, GLfloat x); /* 762 */ + void (GLAPIENTRYP VertexAttrib1fvNV)(GLuint index, const GLfloat * v); /* 763 */ + void (GLAPIENTRYP VertexAttrib1sNV)(GLuint index, GLshort x); /* 764 */ + void (GLAPIENTRYP VertexAttrib1svNV)(GLuint index, const GLshort * v); /* 765 */ + void (GLAPIENTRYP VertexAttrib2dNV)(GLuint index, GLdouble x, GLdouble y); /* 766 */ + void (GLAPIENTRYP VertexAttrib2dvNV)(GLuint index, const GLdouble * v); /* 767 */ + void (GLAPIENTRYP VertexAttrib2fNV)(GLuint index, GLfloat x, GLfloat y); /* 768 */ + void (GLAPIENTRYP VertexAttrib2fvNV)(GLuint index, const GLfloat * v); /* 769 */ + void (GLAPIENTRYP VertexAttrib2sNV)(GLuint index, GLshort x, GLshort y); /* 770 */ + void (GLAPIENTRYP VertexAttrib2svNV)(GLuint index, const GLshort * v); /* 771 */ + void (GLAPIENTRYP VertexAttrib3dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z); /* 772 */ + void (GLAPIENTRYP VertexAttrib3dvNV)(GLuint index, const GLdouble * v); /* 773 */ + void (GLAPIENTRYP VertexAttrib3fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z); /* 774 */ + void (GLAPIENTRYP VertexAttrib3fvNV)(GLuint index, const GLfloat * v); /* 775 */ + void (GLAPIENTRYP VertexAttrib3sNV)(GLuint index, GLshort x, GLshort y, GLshort z); /* 776 */ + void (GLAPIENTRYP VertexAttrib3svNV)(GLuint index, const GLshort * v); /* 777 */ + void (GLAPIENTRYP VertexAttrib4dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 778 */ + void (GLAPIENTRYP VertexAttrib4dvNV)(GLuint index, const GLdouble * v); /* 779 */ + void (GLAPIENTRYP VertexAttrib4fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 780 */ + void (GLAPIENTRYP VertexAttrib4fvNV)(GLuint index, const GLfloat * v); /* 781 */ + void (GLAPIENTRYP VertexAttrib4sNV)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); /* 782 */ + void (GLAPIENTRYP VertexAttrib4svNV)(GLuint index, const GLshort * v); /* 783 */ + void (GLAPIENTRYP VertexAttrib4ubNV)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); /* 784 */ + void (GLAPIENTRYP VertexAttrib4ubvNV)(GLuint index, const GLubyte * v); /* 785 */ + void (GLAPIENTRYP VertexAttribPointerNV)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 786 */ + void (GLAPIENTRYP VertexAttribs1dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 787 */ + void (GLAPIENTRYP VertexAttribs1fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 788 */ + void (GLAPIENTRYP VertexAttribs1svNV)(GLuint index, GLsizei n, const GLshort * v); /* 789 */ + void (GLAPIENTRYP VertexAttribs2dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 790 */ + void (GLAPIENTRYP VertexAttribs2fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 791 */ + void (GLAPIENTRYP VertexAttribs2svNV)(GLuint index, GLsizei n, const GLshort * v); /* 792 */ + void (GLAPIENTRYP VertexAttribs3dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 793 */ + void (GLAPIENTRYP VertexAttribs3fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 794 */ + void (GLAPIENTRYP VertexAttribs3svNV)(GLuint index, GLsizei n, const GLshort * v); /* 795 */ + void (GLAPIENTRYP VertexAttribs4dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 796 */ + void (GLAPIENTRYP VertexAttribs4fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 797 */ + void (GLAPIENTRYP VertexAttribs4svNV)(GLuint index, GLsizei n, const GLshort * v); /* 798 */ + void (GLAPIENTRYP VertexAttribs4ubvNV)(GLuint index, GLsizei n, const GLubyte * v); /* 799 */ + void (GLAPIENTRYP GetTexBumpParameterfvATI)(GLenum pname, GLfloat * param); /* 800 */ + void (GLAPIENTRYP GetTexBumpParameterivATI)(GLenum pname, GLint * param); /* 801 */ + void (GLAPIENTRYP TexBumpParameterfvATI)(GLenum pname, const GLfloat * param); /* 802 */ + void (GLAPIENTRYP TexBumpParameterivATI)(GLenum pname, const GLint * param); /* 803 */ + void (GLAPIENTRYP AlphaFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 804 */ + void (GLAPIENTRYP AlphaFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 805 */ + void (GLAPIENTRYP AlphaFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); /* 806 */ + void (GLAPIENTRYP BeginFragmentShaderATI)(void); /* 807 */ + void (GLAPIENTRYP BindFragmentShaderATI)(GLuint id); /* 808 */ + void (GLAPIENTRYP ColorFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 809 */ + void (GLAPIENTRYP ColorFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 810 */ + void (GLAPIENTRYP ColorFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); /* 811 */ + void (GLAPIENTRYP DeleteFragmentShaderATI)(GLuint id); /* 812 */ + void (GLAPIENTRYP EndFragmentShaderATI)(void); /* 813 */ + GLuint (GLAPIENTRYP GenFragmentShadersATI)(GLuint range); /* 814 */ + void (GLAPIENTRYP PassTexCoordATI)(GLuint dst, GLuint coord, GLenum swizzle); /* 815 */ + void (GLAPIENTRYP SampleMapATI)(GLuint dst, GLuint interp, GLenum swizzle); /* 816 */ + void (GLAPIENTRYP SetFragmentShaderConstantATI)(GLuint dst, const GLfloat * value); /* 817 */ + void (GLAPIENTRYP PointParameteriNV)(GLenum pname, GLint param); /* 818 */ + void (GLAPIENTRYP PointParameterivNV)(GLenum pname, const GLint * params); /* 819 */ + void (GLAPIENTRYP ActiveStencilFaceEXT)(GLenum face); /* 820 */ + void (GLAPIENTRYP BindVertexArrayAPPLE)(GLuint array); /* 821 */ + void (GLAPIENTRYP DeleteVertexArraysAPPLE)(GLsizei n, const GLuint * arrays); /* 822 */ + void (GLAPIENTRYP GenVertexArraysAPPLE)(GLsizei n, GLuint * arrays); /* 823 */ + GLboolean (GLAPIENTRYP IsVertexArrayAPPLE)(GLuint array); /* 824 */ + void (GLAPIENTRYP GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble * params); /* 825 */ + void (GLAPIENTRYP GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat * params); /* 826 */ + void (GLAPIENTRYP ProgramNamedParameter4dNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 827 */ + void (GLAPIENTRYP ProgramNamedParameter4dvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLdouble * v); /* 828 */ + void (GLAPIENTRYP ProgramNamedParameter4fNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 829 */ + void (GLAPIENTRYP ProgramNamedParameter4fvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLfloat * v); /* 830 */ + void (GLAPIENTRYP PrimitiveRestartIndexNV)(GLuint index); /* 831 */ + void (GLAPIENTRYP PrimitiveRestartNV)(void); /* 832 */ + void (GLAPIENTRYP DepthBoundsEXT)(GLclampd zmin, GLclampd zmax); /* 833 */ + void (GLAPIENTRYP BlendEquationSeparateEXT)(GLenum modeRGB, GLenum modeA); /* 834 */ + void (GLAPIENTRYP BindFramebufferEXT)(GLenum target, GLuint framebuffer); /* 835 */ + void (GLAPIENTRYP BindRenderbufferEXT)(GLenum target, GLuint renderbuffer); /* 836 */ + GLenum (GLAPIENTRYP CheckFramebufferStatusEXT)(GLenum target); /* 837 */ + void (GLAPIENTRYP DeleteFramebuffersEXT)(GLsizei n, const GLuint * framebuffers); /* 838 */ + void (GLAPIENTRYP DeleteRenderbuffersEXT)(GLsizei n, const GLuint * renderbuffers); /* 839 */ + void (GLAPIENTRYP FramebufferRenderbufferEXT)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); /* 840 */ + void (GLAPIENTRYP FramebufferTexture1DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 841 */ + void (GLAPIENTRYP FramebufferTexture2DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 842 */ + void (GLAPIENTRYP FramebufferTexture3DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); /* 843 */ + void (GLAPIENTRYP GenFramebuffersEXT)(GLsizei n, GLuint * framebuffers); /* 844 */ + void (GLAPIENTRYP GenRenderbuffersEXT)(GLsizei n, GLuint * renderbuffers); /* 845 */ + void (GLAPIENTRYP GenerateMipmapEXT)(GLenum target); /* 846 */ + void (GLAPIENTRYP GetFramebufferAttachmentParameterivEXT)(GLenum target, GLenum attachment, GLenum pname, GLint * params); /* 847 */ + void (GLAPIENTRYP GetRenderbufferParameterivEXT)(GLenum target, GLenum pname, GLint * params); /* 848 */ + GLboolean (GLAPIENTRYP IsFramebufferEXT)(GLuint framebuffer); /* 849 */ + GLboolean (GLAPIENTRYP IsRenderbufferEXT)(GLuint renderbuffer); /* 850 */ + void (GLAPIENTRYP RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); /* 851 */ + void (GLAPIENTRYP BlitFramebufferEXT)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); /* 852 */ + void (GLAPIENTRYP BufferParameteriAPPLE)(GLenum target, GLenum pname, GLint param); /* 853 */ + void (GLAPIENTRYP FlushMappedBufferRangeAPPLE)(GLenum target, GLintptr offset, GLsizeiptr size); /* 854 */ + void (GLAPIENTRYP BindFragDataLocationEXT)(GLuint program, GLuint colorNumber, const GLchar * name); /* 855 */ + GLint (GLAPIENTRYP GetFragDataLocationEXT)(GLuint program, const GLchar * name); /* 856 */ + void (GLAPIENTRYP GetUniformuivEXT)(GLuint program, GLint location, GLuint * params); /* 857 */ + void (GLAPIENTRYP GetVertexAttribIivEXT)(GLuint index, GLenum pname, GLint * params); /* 858 */ + void (GLAPIENTRYP GetVertexAttribIuivEXT)(GLuint index, GLenum pname, GLuint * params); /* 859 */ + void (GLAPIENTRYP Uniform1uiEXT)(GLint location, GLuint x); /* 860 */ + void (GLAPIENTRYP Uniform1uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 861 */ + void (GLAPIENTRYP Uniform2uiEXT)(GLint location, GLuint x, GLuint y); /* 862 */ + void (GLAPIENTRYP Uniform2uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 863 */ + void (GLAPIENTRYP Uniform3uiEXT)(GLint location, GLuint x, GLuint y, GLuint z); /* 864 */ + void (GLAPIENTRYP Uniform3uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 865 */ + void (GLAPIENTRYP Uniform4uiEXT)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w); /* 866 */ + void (GLAPIENTRYP Uniform4uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 867 */ + void (GLAPIENTRYP VertexAttribI1iEXT)(GLuint index, GLint x); /* 868 */ + void (GLAPIENTRYP VertexAttribI1ivEXT)(GLuint index, const GLint * v); /* 869 */ + void (GLAPIENTRYP VertexAttribI1uiEXT)(GLuint index, GLuint x); /* 870 */ + void (GLAPIENTRYP VertexAttribI1uivEXT)(GLuint index, const GLuint * v); /* 871 */ + void (GLAPIENTRYP VertexAttribI2iEXT)(GLuint index, GLint x, GLint y); /* 872 */ + void (GLAPIENTRYP VertexAttribI2ivEXT)(GLuint index, const GLint * v); /* 873 */ + void (GLAPIENTRYP VertexAttribI2uiEXT)(GLuint index, GLuint x, GLuint y); /* 874 */ + void (GLAPIENTRYP VertexAttribI2uivEXT)(GLuint index, const GLuint * v); /* 875 */ + void (GLAPIENTRYP VertexAttribI3iEXT)(GLuint index, GLint x, GLint y, GLint z); /* 876 */ + void (GLAPIENTRYP VertexAttribI3ivEXT)(GLuint index, const GLint * v); /* 877 */ + void (GLAPIENTRYP VertexAttribI3uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z); /* 878 */ + void (GLAPIENTRYP VertexAttribI3uivEXT)(GLuint index, const GLuint * v); /* 879 */ + void (GLAPIENTRYP VertexAttribI4bvEXT)(GLuint index, const GLbyte * v); /* 880 */ + void (GLAPIENTRYP VertexAttribI4iEXT)(GLuint index, GLint x, GLint y, GLint z, GLint w); /* 881 */ + void (GLAPIENTRYP VertexAttribI4ivEXT)(GLuint index, const GLint * v); /* 882 */ + void (GLAPIENTRYP VertexAttribI4svEXT)(GLuint index, const GLshort * v); /* 883 */ + void (GLAPIENTRYP VertexAttribI4ubvEXT)(GLuint index, const GLubyte * v); /* 884 */ + void (GLAPIENTRYP VertexAttribI4uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); /* 885 */ + void (GLAPIENTRYP VertexAttribI4uivEXT)(GLuint index, const GLuint * v); /* 886 */ + void (GLAPIENTRYP VertexAttribI4usvEXT)(GLuint index, const GLushort * v); /* 887 */ + void (GLAPIENTRYP VertexAttribIPointerEXT)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 888 */ + void (GLAPIENTRYP FramebufferTextureLayerEXT)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer); /* 889 */ + void (GLAPIENTRYP ColorMaskIndexedEXT)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a); /* 890 */ + void (GLAPIENTRYP DisableIndexedEXT)(GLenum target, GLuint index); /* 891 */ + void (GLAPIENTRYP EnableIndexedEXT)(GLenum target, GLuint index); /* 892 */ + void (GLAPIENTRYP GetBooleanIndexedvEXT)(GLenum value, GLuint index, GLboolean * data); /* 893 */ + void (GLAPIENTRYP GetIntegerIndexedvEXT)(GLenum value, GLuint index, GLint * data); /* 894 */ + GLboolean (GLAPIENTRYP IsEnabledIndexedEXT)(GLenum target, GLuint index); /* 895 */ + void (GLAPIENTRYP ClearColorIiEXT)(GLint r, GLint g, GLint b, GLint a); /* 896 */ + void (GLAPIENTRYP ClearColorIuiEXT)(GLuint r, GLuint g, GLuint b, GLuint a); /* 897 */ + void (GLAPIENTRYP GetTexParameterIivEXT)(GLenum target, GLenum pname, GLint * params); /* 898 */ + void (GLAPIENTRYP GetTexParameterIuivEXT)(GLenum target, GLenum pname, GLuint * params); /* 899 */ + void (GLAPIENTRYP TexParameterIivEXT)(GLenum target, GLenum pname, const GLint * params); /* 900 */ + void (GLAPIENTRYP TexParameterIuivEXT)(GLenum target, GLenum pname, const GLuint * params); /* 901 */ + void (GLAPIENTRYP BeginConditionalRenderNV)(GLuint query, GLenum mode); /* 902 */ + void (GLAPIENTRYP EndConditionalRenderNV)(void); /* 903 */ + void (GLAPIENTRYP BeginTransformFeedbackEXT)(GLenum mode); /* 904 */ + void (GLAPIENTRYP BindBufferBaseEXT)(GLenum target, GLuint index, GLuint buffer); /* 905 */ + void (GLAPIENTRYP BindBufferOffsetEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset); /* 906 */ + void (GLAPIENTRYP BindBufferRangeEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); /* 907 */ + void (GLAPIENTRYP EndTransformFeedbackEXT)(void); /* 908 */ + void (GLAPIENTRYP GetTransformFeedbackVaryingEXT)(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name); /* 909 */ + void (GLAPIENTRYP TransformFeedbackVaryingsEXT)(GLuint program, GLsizei count, const char ** varyings, GLenum bufferMode); /* 910 */ + void (GLAPIENTRYP ProvokingVertexEXT)(GLenum mode); /* 911 */ + void (GLAPIENTRYP GetTexParameterPointervAPPLE)(GLenum target, GLenum pname, GLvoid ** params); /* 912 */ + void (GLAPIENTRYP TextureRangeAPPLE)(GLenum target, GLsizei length, GLvoid * pointer); /* 913 */ + void (GLAPIENTRYP GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint * value); /* 914 */ + GLenum (GLAPIENTRYP ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 915 */ + GLenum (GLAPIENTRYP ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 916 */ + void (GLAPIENTRYP ActiveProgramEXT)(GLuint program); /* 917 */ + GLuint (GLAPIENTRYP CreateShaderProgramEXT)(GLenum type, const GLchar * string); /* 918 */ + void (GLAPIENTRYP UseShaderProgramEXT)(GLenum type, GLuint program); /* 919 */ + void (GLAPIENTRYP TextureBarrierNV)(void); /* 920 */ + void (GLAPIENTRYP StencilFuncSeparateATI)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); /* 921 */ + void (GLAPIENTRYP ProgramEnvParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 922 */ + void (GLAPIENTRYP ProgramLocalParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 923 */ + void (GLAPIENTRYP GetQueryObjecti64vEXT)(GLuint id, GLenum pname, GLint64EXT * params); /* 924 */ + void (GLAPIENTRYP GetQueryObjectui64vEXT)(GLuint id, GLenum pname, GLuint64EXT * params); /* 925 */ + void (GLAPIENTRYP EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid * writeOffset); /* 926 */ + void (GLAPIENTRYP EGLImageTargetTexture2DOES)(GLenum target, GLvoid * writeOffset); /* 927 */ }; #endif /* !defined( _GLAPI_TABLE_H_ ) */ diff --git a/src/mapi/glapi/glapitemp.h b/src/mapi/glapi/glapitemp.h index 0f49b334aa8..c0ed1731c19 100644 --- a/src/mapi/glapi/glapitemp.h +++ b/src/mapi/glapi/glapitemp.h @@ -4047,21 +4047,41 @@ KEYWORD1 void KEYWORD2 NAME(BlendEquationSeparateiARB)(GLuint buf, GLenum modeRG DISPATCH(BlendEquationSeparateiARB, (buf, modeRGB, modeA), (F, "glBlendEquationSeparateiARB(%d, 0x%x, 0x%x);\n", buf, modeRGB, modeA)); } +KEYWORD1 void KEYWORD2 NAME(BlendEquationSeparateIndexedAMD)(GLuint buf, GLenum modeRGB, GLenum modeA) +{ + DISPATCH(BlendEquationSeparateiARB, (buf, modeRGB, modeA), (F, "glBlendEquationSeparateIndexedAMD(%d, 0x%x, 0x%x);\n", buf, modeRGB, modeA)); +} + KEYWORD1 void KEYWORD2 NAME(BlendEquationiARB)(GLuint buf, GLenum mode) { DISPATCH(BlendEquationiARB, (buf, mode), (F, "glBlendEquationiARB(%d, 0x%x);\n", buf, mode)); } +KEYWORD1 void KEYWORD2 NAME(BlendEquationIndexedAMD)(GLuint buf, GLenum mode) +{ + DISPATCH(BlendEquationiARB, (buf, mode), (F, "glBlendEquationIndexedAMD(%d, 0x%x);\n", buf, mode)); +} + KEYWORD1 void KEYWORD2 NAME(BlendFuncSeparateiARB)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA) { DISPATCH(BlendFuncSeparateiARB, (buf, srcRGB, dstRGB, srcA, dstA), (F, "glBlendFuncSeparateiARB(%d, 0x%x, 0x%x, 0x%x, 0x%x);\n", buf, srcRGB, dstRGB, srcA, dstA)); } +KEYWORD1 void KEYWORD2 NAME(BlendFuncSeparateIndexedAMD)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA) +{ + DISPATCH(BlendFuncSeparateiARB, (buf, srcRGB, dstRGB, srcA, dstA), (F, "glBlendFuncSeparateIndexedAMD(%d, 0x%x, 0x%x, 0x%x, 0x%x);\n", buf, srcRGB, dstRGB, srcA, dstA)); +} + KEYWORD1 void KEYWORD2 NAME(BlendFunciARB)(GLuint buf, GLenum src, GLenum dst) { DISPATCH(BlendFunciARB, (buf, src, dst), (F, "glBlendFunciARB(%d, 0x%x, 0x%x);\n", buf, src, dst)); } +KEYWORD1 void KEYWORD2 NAME(BlendFuncIndexedAMD)(GLuint buf, GLenum src, GLenum dst) +{ + DISPATCH(BlendFunciARB, (buf, src, dst), (F, "glBlendFuncIndexedAMD(%d, 0x%x, 0x%x);\n", buf, src, dst)); +} + KEYWORD1 void KEYWORD2 NAME(BindSampler)(GLuint unit, GLuint sampler) { DISPATCH(BindSampler, (unit, sampler), (F, "glBindSampler(%d, %d);\n", unit, sampler)); @@ -4192,63 +4212,163 @@ KEYWORD1 void KEYWORD2 NAME(ShaderBinary)(GLsizei n, const GLuint * shaders, GLe DISPATCH(ShaderBinary, (n, shaders, binaryformat, binary, length), (F, "glShaderBinary(%d, %p, 0x%x, %p, %d);\n", n, (const void *) shaders, binaryformat, (const void *) binary, length)); } +KEYWORD1 GLenum KEYWORD2 NAME(GetGraphicsResetStatusARB)(void) +{ + RETURN_DISPATCH(GetGraphicsResetStatusARB, (), (F, "glGetGraphicsResetStatusARB();\n")); +} + +KEYWORD1 void KEYWORD2 NAME(GetnColorTableARB)(GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid * table) +{ + DISPATCH(GetnColorTableARB, (target, format, type, bufSize, table), (F, "glGetnColorTableARB(0x%x, 0x%x, 0x%x, %d, %p);\n", target, format, type, bufSize, (const void *) table)); +} + +KEYWORD1 void KEYWORD2 NAME(GetnCompressedTexImageARB)(GLenum target, GLint lod, GLsizei bufSize, GLvoid * img) +{ + DISPATCH(GetnCompressedTexImageARB, (target, lod, bufSize, img), (F, "glGetnCompressedTexImageARB(0x%x, %d, %d, %p);\n", target, lod, bufSize, (const void *) img)); +} + +KEYWORD1 void KEYWORD2 NAME(GetnConvolutionFilterARB)(GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid * image) +{ + DISPATCH(GetnConvolutionFilterARB, (target, format, type, bufSize, image), (F, "glGetnConvolutionFilterARB(0x%x, 0x%x, 0x%x, %d, %p);\n", target, format, type, bufSize, (const void *) image)); +} + +KEYWORD1 void KEYWORD2 NAME(GetnHistogramARB)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid * values) +{ + DISPATCH(GetnHistogramARB, (target, reset, format, type, bufSize, values), (F, "glGetnHistogramARB(0x%x, %d, 0x%x, 0x%x, %d, %p);\n", target, reset, format, type, bufSize, (const void *) values)); +} + +KEYWORD1 void KEYWORD2 NAME(GetnMapdvARB)(GLenum target, GLenum query, GLsizei bufSize, GLdouble * v) +{ + DISPATCH(GetnMapdvARB, (target, query, bufSize, v), (F, "glGetnMapdvARB(0x%x, 0x%x, %d, %p);\n", target, query, bufSize, (const void *) v)); +} + +KEYWORD1 void KEYWORD2 NAME(GetnMapfvARB)(GLenum target, GLenum query, GLsizei bufSize, GLfloat * v) +{ + DISPATCH(GetnMapfvARB, (target, query, bufSize, v), (F, "glGetnMapfvARB(0x%x, 0x%x, %d, %p);\n", target, query, bufSize, (const void *) v)); +} + +KEYWORD1 void KEYWORD2 NAME(GetnMapivARB)(GLenum target, GLenum query, GLsizei bufSize, GLint * v) +{ + DISPATCH(GetnMapivARB, (target, query, bufSize, v), (F, "glGetnMapivARB(0x%x, 0x%x, %d, %p);\n", target, query, bufSize, (const void *) v)); +} + +KEYWORD1 void KEYWORD2 NAME(GetnMinmaxARB)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid * values) +{ + DISPATCH(GetnMinmaxARB, (target, reset, format, type, bufSize, values), (F, "glGetnMinmaxARB(0x%x, %d, 0x%x, 0x%x, %d, %p);\n", target, reset, format, type, bufSize, (const void *) values)); +} + +KEYWORD1 void KEYWORD2 NAME(GetnPixelMapfvARB)(GLenum map, GLsizei bufSize, GLfloat * values) +{ + DISPATCH(GetnPixelMapfvARB, (map, bufSize, values), (F, "glGetnPixelMapfvARB(0x%x, %d, %p);\n", map, bufSize, (const void *) values)); +} + +KEYWORD1 void KEYWORD2 NAME(GetnPixelMapuivARB)(GLenum map, GLsizei bufSize, GLuint * values) +{ + DISPATCH(GetnPixelMapuivARB, (map, bufSize, values), (F, "glGetnPixelMapuivARB(0x%x, %d, %p);\n", map, bufSize, (const void *) values)); +} + +KEYWORD1 void KEYWORD2 NAME(GetnPixelMapusvARB)(GLenum map, GLsizei bufSize, GLushort * values) +{ + DISPATCH(GetnPixelMapusvARB, (map, bufSize, values), (F, "glGetnPixelMapusvARB(0x%x, %d, %p);\n", map, bufSize, (const void *) values)); +} + +KEYWORD1 void KEYWORD2 NAME(GetnPolygonStippleARB)(GLsizei bufSize, GLubyte * pattern) +{ + DISPATCH(GetnPolygonStippleARB, (bufSize, pattern), (F, "glGetnPolygonStippleARB(%d, %p);\n", bufSize, (const void *) pattern)); +} + +KEYWORD1 void KEYWORD2 NAME(GetnSeparableFilterARB)(GLenum target, GLenum format, GLenum type, GLsizei rowBufSize, GLvoid * row, GLsizei columnBufSize, GLvoid * column, GLvoid * span) +{ + DISPATCH(GetnSeparableFilterARB, (target, format, type, rowBufSize, row, columnBufSize, column, span), (F, "glGetnSeparableFilterARB(0x%x, 0x%x, 0x%x, %d, %p, %d, %p, %p);\n", target, format, type, rowBufSize, (const void *) row, columnBufSize, (const void *) column, (const void *) span)); +} + +KEYWORD1 void KEYWORD2 NAME(GetnTexImageARB)(GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, GLvoid * img) +{ + DISPATCH(GetnTexImageARB, (target, level, format, type, bufSize, img), (F, "glGetnTexImageARB(0x%x, %d, 0x%x, 0x%x, %d, %p);\n", target, level, format, type, bufSize, (const void *) img)); +} + +KEYWORD1 void KEYWORD2 NAME(GetnUniformdvARB)(GLhandleARB program, GLint location, GLsizei bufSize, GLdouble * params) +{ + DISPATCH(GetnUniformdvARB, (program, location, bufSize, params), (F, "glGetnUniformdvARB(%d, %d, %d, %p);\n", program, location, bufSize, (const void *) params)); +} + +KEYWORD1 void KEYWORD2 NAME(GetnUniformfvARB)(GLhandleARB program, GLint location, GLsizei bufSize, GLfloat * params) +{ + DISPATCH(GetnUniformfvARB, (program, location, bufSize, params), (F, "glGetnUniformfvARB(%d, %d, %d, %p);\n", program, location, bufSize, (const void *) params)); +} + +KEYWORD1 void KEYWORD2 NAME(GetnUniformivARB)(GLhandleARB program, GLint location, GLsizei bufSize, GLint * params) +{ + DISPATCH(GetnUniformivARB, (program, location, bufSize, params), (F, "glGetnUniformivARB(%d, %d, %d, %p);\n", program, location, bufSize, (const void *) params)); +} + +KEYWORD1 void KEYWORD2 NAME(GetnUniformuivARB)(GLhandleARB program, GLint location, GLsizei bufSize, GLuint * params) +{ + DISPATCH(GetnUniformuivARB, (program, location, bufSize, params), (F, "glGetnUniformuivARB(%d, %d, %d, %p);\n", program, location, bufSize, (const void *) params)); +} + +KEYWORD1 void KEYWORD2 NAME(ReadnPixelsARB)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLvoid * data) +{ + DISPATCH(ReadnPixelsARB, (x, y, width, height, format, type, bufSize, data), (F, "glReadnPixelsARB(%d, %d, %d, %d, 0x%x, 0x%x, %d, %p);\n", x, y, width, height, format, type, bufSize, (const void *) data)); +} + KEYWORD1 void KEYWORD2 NAME(PolygonOffsetEXT)(GLfloat factor, GLfloat bias) { DISPATCH(PolygonOffsetEXT, (factor, bias), (F, "glPolygonOffsetEXT(%f, %f);\n", factor, bias)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_627)(GLenum pname, GLfloat * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_647)(GLenum pname, GLfloat * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_627)(GLenum pname, GLfloat * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_647)(GLenum pname, GLfloat * params) { DISPATCH(GetPixelTexGenParameterfvSGIS, (pname, params), (F, "glGetPixelTexGenParameterfvSGIS(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_628)(GLenum pname, GLint * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_648)(GLenum pname, GLint * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_628)(GLenum pname, GLint * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_648)(GLenum pname, GLint * params) { DISPATCH(GetPixelTexGenParameterivSGIS, (pname, params), (F, "glGetPixelTexGenParameterivSGIS(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_629)(GLenum pname, GLfloat param); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_649)(GLenum pname, GLfloat param); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_629)(GLenum pname, GLfloat param) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_649)(GLenum pname, GLfloat param) { DISPATCH(PixelTexGenParameterfSGIS, (pname, param), (F, "glPixelTexGenParameterfSGIS(0x%x, %f);\n", pname, param)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_630)(GLenum pname, const GLfloat * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_650)(GLenum pname, const GLfloat * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_630)(GLenum pname, const GLfloat * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_650)(GLenum pname, const GLfloat * params) { DISPATCH(PixelTexGenParameterfvSGIS, (pname, params), (F, "glPixelTexGenParameterfvSGIS(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_631)(GLenum pname, GLint param); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_651)(GLenum pname, GLint param); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_631)(GLenum pname, GLint param) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_651)(GLenum pname, GLint param) { DISPATCH(PixelTexGenParameteriSGIS, (pname, param), (F, "glPixelTexGenParameteriSGIS(0x%x, %d);\n", pname, param)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_632)(GLenum pname, const GLint * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_652)(GLenum pname, const GLint * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_632)(GLenum pname, const GLint * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_652)(GLenum pname, const GLint * params) { DISPATCH(PixelTexGenParameterivSGIS, (pname, params), (F, "glPixelTexGenParameterivSGIS(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_633)(GLclampf value, GLboolean invert); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_653)(GLclampf value, GLboolean invert); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_633)(GLclampf value, GLboolean invert) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_653)(GLclampf value, GLboolean invert) { DISPATCH(SampleMaskSGIS, (value, invert), (F, "glSampleMaskSGIS(%f, %d);\n", value, invert)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_634)(GLenum pattern); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_654)(GLenum pattern); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_634)(GLenum pattern) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_654)(GLenum pattern) { DISPATCH(SamplePatternSGIS, (pattern), (F, "glSamplePatternSGIS(0x%x);\n", pattern)); } @@ -4298,9 +4418,9 @@ KEYWORD1 void KEYWORD2 NAME(PointParameterfEXT)(GLenum pname, GLfloat param) DISPATCH(PointParameterfEXT, (pname, param), (F, "glPointParameterfEXT(0x%x, %f);\n", pname, param)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_641)(GLenum pname, GLfloat param); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_661)(GLenum pname, GLfloat param); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_641)(GLenum pname, GLfloat param) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_661)(GLenum pname, GLfloat param) { DISPATCH(PointParameterfEXT, (pname, param), (F, "glPointParameterfSGIS(0x%x, %f);\n", pname, param)); } @@ -4320,9 +4440,9 @@ KEYWORD1 void KEYWORD2 NAME(PointParameterfvEXT)(GLenum pname, const GLfloat * p DISPATCH(PointParameterfvEXT, (pname, params), (F, "glPointParameterfvEXT(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_642)(GLenum pname, const GLfloat * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_662)(GLenum pname, const GLfloat * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_642)(GLenum pname, const GLfloat * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_662)(GLenum pname, const GLfloat * params) { DISPATCH(PointParameterfvEXT, (pname, params), (F, "glPointParameterfvSGIS(0x%x, %p);\n", pname, (const void *) params)); } @@ -4577,9 +4697,9 @@ KEYWORD1 void KEYWORD2 NAME(FogCoordfvEXT)(const GLfloat * coord) DISPATCH(FogCoordfvEXT, (coord), (F, "glFogCoordfvEXT(%p);\n", (const void *) coord)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_669)(GLenum mode); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_689)(GLenum mode); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_669)(GLenum mode) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_689)(GLenum mode) { DISPATCH(PixelTexGenSGIX, (mode), (F, "glPixelTexGenSGIX(0x%x);\n", mode)); } @@ -4594,9 +4714,9 @@ KEYWORD1 void KEYWORD2 NAME(BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfac DISPATCH(BlendFuncSeparateEXT, (sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha), (F, "glBlendFuncSeparateEXT(0x%x, 0x%x, 0x%x, 0x%x);\n", sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_670)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_690)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_670)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_690)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) { DISPATCH(BlendFuncSeparateEXT, (sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha), (F, "glBlendFuncSeparateINGR(0x%x, 0x%x, 0x%x, 0x%x);\n", sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha)); } @@ -4961,65 +5081,65 @@ KEYWORD1 void KEYWORD2 NAME(WindowPos4svMESA)(const GLshort * v) DISPATCH(WindowPos4svMESA, (v), (F, "glWindowPos4svMESA(%p);\n", (const void *) v)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_711)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_731)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_711)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_731)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride) { DISPATCH(MultiModeDrawArraysIBM, (mode, first, count, primcount, modestride), (F, "glMultiModeDrawArraysIBM(%p, %p, %p, %d, %d);\n", (const void *) mode, (const void *) first, (const void *) count, primcount, modestride)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_712)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_732)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_712)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_732)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride) { DISPATCH(MultiModeDrawElementsIBM, (mode, count, type, indices, primcount, modestride), (F, "glMultiModeDrawElementsIBM(%p, %p, 0x%x, %p, %d, %d);\n", (const void *) mode, (const void *) count, type, (const void *) indices, primcount, modestride)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_713)(GLsizei n, const GLuint * fences); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_733)(GLsizei n, const GLuint * fences); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_713)(GLsizei n, const GLuint * fences) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_733)(GLsizei n, const GLuint * fences) { DISPATCH(DeleteFencesNV, (n, fences), (F, "glDeleteFencesNV(%d, %p);\n", n, (const void *) fences)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_714)(GLuint fence); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_734)(GLuint fence); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_714)(GLuint fence) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_734)(GLuint fence) { DISPATCH(FinishFenceNV, (fence), (F, "glFinishFenceNV(%d);\n", fence)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_715)(GLsizei n, GLuint * fences); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_735)(GLsizei n, GLuint * fences); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_715)(GLsizei n, GLuint * fences) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_735)(GLsizei n, GLuint * fences) { DISPATCH(GenFencesNV, (n, fences), (F, "glGenFencesNV(%d, %p);\n", n, (const void *) fences)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_716)(GLuint fence, GLenum pname, GLint * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_736)(GLuint fence, GLenum pname, GLint * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_716)(GLuint fence, GLenum pname, GLint * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_736)(GLuint fence, GLenum pname, GLint * params) { DISPATCH(GetFenceivNV, (fence, pname, params), (F, "glGetFenceivNV(%d, 0x%x, %p);\n", fence, pname, (const void *) params)); } -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_717)(GLuint fence); +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_737)(GLuint fence); -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_717)(GLuint fence) +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_737)(GLuint fence) { RETURN_DISPATCH(IsFenceNV, (fence), (F, "glIsFenceNV(%d);\n", fence)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_718)(GLuint fence, GLenum condition); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_738)(GLuint fence, GLenum condition); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_718)(GLuint fence, GLenum condition) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_738)(GLuint fence, GLenum condition) { DISPATCH(SetFenceNV, (fence, condition), (F, "glSetFenceNV(%d, 0x%x);\n", fence, condition)); } -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_719)(GLuint fence); +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_739)(GLuint fence); -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_719)(GLuint fence) +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_739)(GLuint fence) { RETURN_DISPATCH(TestFenceNV, (fence), (F, "glTestFenceNV(%d);\n", fence)); } @@ -5464,16 +5584,16 @@ KEYWORD1 void KEYWORD2 NAME(PointParameterivNV)(GLenum pname, const GLint * para DISPATCH(PointParameterivNV, (pname, params), (F, "glPointParameterivNV(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_800)(GLenum face); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_820)(GLenum face); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_800)(GLenum face) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_820)(GLenum face) { DISPATCH(ActiveStencilFaceEXT, (face), (F, "glActiveStencilFaceEXT(0x%x);\n", face)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_801)(GLuint array); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_821)(GLuint array); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_801)(GLuint array) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_821)(GLuint array) { DISPATCH(BindVertexArrayAPPLE, (array), (F, "glBindVertexArrayAPPLE(%d);\n", array)); } @@ -5483,16 +5603,16 @@ KEYWORD1 void KEYWORD2 NAME(DeleteVertexArrays)(GLsizei n, const GLuint * arrays DISPATCH(DeleteVertexArraysAPPLE, (n, arrays), (F, "glDeleteVertexArrays(%d, %p);\n", n, (const void *) arrays)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_802)(GLsizei n, const GLuint * arrays); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_822)(GLsizei n, const GLuint * arrays); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_802)(GLsizei n, const GLuint * arrays) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_822)(GLsizei n, const GLuint * arrays) { DISPATCH(DeleteVertexArraysAPPLE, (n, arrays), (F, "glDeleteVertexArraysAPPLE(%d, %p);\n", n, (const void *) arrays)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_803)(GLsizei n, GLuint * arrays); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_823)(GLsizei n, GLuint * arrays); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_803)(GLsizei n, GLuint * arrays) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_823)(GLsizei n, GLuint * arrays) { DISPATCH(GenVertexArraysAPPLE, (n, arrays), (F, "glGenVertexArraysAPPLE(%d, %p);\n", n, (const void *) arrays)); } @@ -5502,9 +5622,9 @@ KEYWORD1 GLboolean KEYWORD2 NAME(IsVertexArray)(GLuint array) RETURN_DISPATCH(IsVertexArrayAPPLE, (array), (F, "glIsVertexArray(%d);\n", array)); } -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_804)(GLuint array); +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_824)(GLuint array); -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_804)(GLuint array) +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_824)(GLuint array) { RETURN_DISPATCH(IsVertexArrayAPPLE, (array), (F, "glIsVertexArrayAPPLE(%d);\n", array)); } @@ -5554,9 +5674,9 @@ KEYWORD1 void KEYWORD2 NAME(PrimitiveRestartNV)(void) DISPATCH(PrimitiveRestartNV, (), (F, "glPrimitiveRestartNV();\n")); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_813)(GLclampd zmin, GLclampd zmax); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_833)(GLclampd zmin, GLclampd zmax); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_813)(GLclampd zmin, GLclampd zmax) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_833)(GLclampd zmin, GLclampd zmax) { DISPATCH(DepthBoundsEXT, (zmin, zmax), (F, "glDepthBoundsEXT(%f, %f);\n", zmin, zmax)); } @@ -5566,9 +5686,9 @@ KEYWORD1 void KEYWORD2 NAME(BlendEquationSeparate)(GLenum modeRGB, GLenum modeA) DISPATCH(BlendEquationSeparateEXT, (modeRGB, modeA), (F, "glBlendEquationSeparate(0x%x, 0x%x);\n", modeRGB, modeA)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_814)(GLenum modeRGB, GLenum modeA); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_834)(GLenum modeRGB, GLenum modeA); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_814)(GLenum modeRGB, GLenum modeA) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_834)(GLenum modeRGB, GLenum modeA) { DISPATCH(BlendEquationSeparateEXT, (modeRGB, modeA), (F, "glBlendEquationSeparateEXT(0x%x, 0x%x);\n", modeRGB, modeA)); } @@ -5748,23 +5868,23 @@ KEYWORD1 void KEYWORD2 NAME(BlitFramebuffer)(GLint srcX0, GLint srcY0, GLint src DISPATCH(BlitFramebufferEXT, (srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter), (F, "glBlitFramebuffer(%d, %d, %d, %d, %d, %d, %d, %d, %d, 0x%x);\n", srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_832)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_852)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_832)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_852)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) { DISPATCH(BlitFramebufferEXT, (srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter), (F, "glBlitFramebufferEXT(%d, %d, %d, %d, %d, %d, %d, %d, %d, 0x%x);\n", srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_833)(GLenum target, GLenum pname, GLint param); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_853)(GLenum target, GLenum pname, GLint param); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_833)(GLenum target, GLenum pname, GLint param) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_853)(GLenum target, GLenum pname, GLint param) { DISPATCH(BufferParameteriAPPLE, (target, pname, param), (F, "glBufferParameteriAPPLE(0x%x, 0x%x, %d);\n", target, pname, param)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_834)(GLenum target, GLintptr offset, GLsizeiptr size); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_854)(GLenum target, GLintptr offset, GLsizeiptr size); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_834)(GLenum target, GLintptr offset, GLsizeiptr size) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_854)(GLenum target, GLintptr offset, GLsizeiptr size) { DISPATCH(FlushMappedBufferRangeAPPLE, (target, offset, size), (F, "glFlushMappedBufferRangeAPPLE(0x%x, %d, %d);\n", target, offset, size)); } @@ -6324,16 +6444,16 @@ KEYWORD1 void KEYWORD2 NAME(ProvokingVertex)(GLenum mode) DISPATCH(ProvokingVertexEXT, (mode), (F, "glProvokingVertex(0x%x);\n", mode)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_892)(GLenum target, GLenum pname, GLvoid ** params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_912)(GLenum target, GLenum pname, GLvoid ** params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_892)(GLenum target, GLenum pname, GLvoid ** params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_912)(GLenum target, GLenum pname, GLvoid ** params) { DISPATCH(GetTexParameterPointervAPPLE, (target, pname, params), (F, "glGetTexParameterPointervAPPLE(0x%x, 0x%x, %p);\n", target, pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_893)(GLenum target, GLsizei length, GLvoid * pointer); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_913)(GLenum target, GLsizei length, GLvoid * pointer); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_893)(GLenum target, GLsizei length, GLvoid * pointer) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_913)(GLenum target, GLsizei length, GLvoid * pointer) { DISPATCH(TextureRangeAPPLE, (target, length, pointer), (F, "glTextureRangeAPPLE(0x%x, %d, %p);\n", target, length, (const void *) pointer)); } @@ -6373,37 +6493,37 @@ KEYWORD1 void KEYWORD2 NAME(TextureBarrierNV)(void) DISPATCH(TextureBarrierNV, (), (F, "glTextureBarrierNV();\n")); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_901)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_921)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_901)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_921)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask) { DISPATCH(StencilFuncSeparateATI, (frontfunc, backfunc, ref, mask), (F, "glStencilFuncSeparateATI(0x%x, 0x%x, %d, %d);\n", frontfunc, backfunc, ref, mask)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_902)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_922)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_902)(GLenum target, GLuint index, GLsizei count, const GLfloat * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_922)(GLenum target, GLuint index, GLsizei count, const GLfloat * params) { DISPATCH(ProgramEnvParameters4fvEXT, (target, index, count, params), (F, "glProgramEnvParameters4fvEXT(0x%x, %d, %d, %p);\n", target, index, count, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_903)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_923)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_903)(GLenum target, GLuint index, GLsizei count, const GLfloat * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_923)(GLenum target, GLuint index, GLsizei count, const GLfloat * params) { DISPATCH(ProgramLocalParameters4fvEXT, (target, index, count, params), (F, "glProgramLocalParameters4fvEXT(0x%x, %d, %d, %p);\n", target, index, count, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_904)(GLuint id, GLenum pname, GLint64EXT * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_924)(GLuint id, GLenum pname, GLint64EXT * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_904)(GLuint id, GLenum pname, GLint64EXT * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_924)(GLuint id, GLenum pname, GLint64EXT * params) { DISPATCH(GetQueryObjecti64vEXT, (id, pname, params), (F, "glGetQueryObjecti64vEXT(%d, 0x%x, %p);\n", id, pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_905)(GLuint id, GLenum pname, GLuint64EXT * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_925)(GLuint id, GLenum pname, GLuint64EXT * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_905)(GLuint id, GLenum pname, GLuint64EXT * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_925)(GLuint id, GLenum pname, GLuint64EXT * params) { DISPATCH(GetQueryObjectui64vEXT, (id, pname, params), (F, "glGetQueryObjectui64vEXT(%d, 0x%x, %p);\n", id, pname, (const void *) params)); } @@ -7197,15 +7317,35 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(GetShaderPrecisionFormat), TABLE_ENTRY(ReleaseShaderCompiler), TABLE_ENTRY(ShaderBinary), + TABLE_ENTRY(GetGraphicsResetStatusARB), + TABLE_ENTRY(GetnColorTableARB), + TABLE_ENTRY(GetnCompressedTexImageARB), + TABLE_ENTRY(GetnConvolutionFilterARB), + TABLE_ENTRY(GetnHistogramARB), + TABLE_ENTRY(GetnMapdvARB), + TABLE_ENTRY(GetnMapfvARB), + TABLE_ENTRY(GetnMapivARB), + TABLE_ENTRY(GetnMinmaxARB), + TABLE_ENTRY(GetnPixelMapfvARB), + TABLE_ENTRY(GetnPixelMapuivARB), + TABLE_ENTRY(GetnPixelMapusvARB), + TABLE_ENTRY(GetnPolygonStippleARB), + TABLE_ENTRY(GetnSeparableFilterARB), + TABLE_ENTRY(GetnTexImageARB), + TABLE_ENTRY(GetnUniformdvARB), + TABLE_ENTRY(GetnUniformfvARB), + TABLE_ENTRY(GetnUniformivARB), + TABLE_ENTRY(GetnUniformuivARB), + TABLE_ENTRY(ReadnPixelsARB), TABLE_ENTRY(PolygonOffsetEXT), - TABLE_ENTRY(_dispatch_stub_627), - TABLE_ENTRY(_dispatch_stub_628), - TABLE_ENTRY(_dispatch_stub_629), - TABLE_ENTRY(_dispatch_stub_630), - TABLE_ENTRY(_dispatch_stub_631), - TABLE_ENTRY(_dispatch_stub_632), - TABLE_ENTRY(_dispatch_stub_633), - TABLE_ENTRY(_dispatch_stub_634), + TABLE_ENTRY(_dispatch_stub_647), + TABLE_ENTRY(_dispatch_stub_648), + TABLE_ENTRY(_dispatch_stub_649), + TABLE_ENTRY(_dispatch_stub_650), + TABLE_ENTRY(_dispatch_stub_651), + TABLE_ENTRY(_dispatch_stub_652), + TABLE_ENTRY(_dispatch_stub_653), + TABLE_ENTRY(_dispatch_stub_654), TABLE_ENTRY(ColorPointerEXT), TABLE_ENTRY(EdgeFlagPointerEXT), TABLE_ENTRY(IndexPointerEXT), @@ -7240,7 +7380,7 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(FogCoorddvEXT), TABLE_ENTRY(FogCoordfEXT), TABLE_ENTRY(FogCoordfvEXT), - TABLE_ENTRY(_dispatch_stub_669), + TABLE_ENTRY(_dispatch_stub_689), TABLE_ENTRY(BlendFuncSeparateEXT), TABLE_ENTRY(FlushVertexArrayRangeNV), TABLE_ENTRY(VertexArrayRangeNV), @@ -7282,15 +7422,15 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(WindowPos4ivMESA), TABLE_ENTRY(WindowPos4sMESA), TABLE_ENTRY(WindowPos4svMESA), - TABLE_ENTRY(_dispatch_stub_711), - TABLE_ENTRY(_dispatch_stub_712), - TABLE_ENTRY(_dispatch_stub_713), - TABLE_ENTRY(_dispatch_stub_714), - TABLE_ENTRY(_dispatch_stub_715), - TABLE_ENTRY(_dispatch_stub_716), - TABLE_ENTRY(_dispatch_stub_717), - TABLE_ENTRY(_dispatch_stub_718), - TABLE_ENTRY(_dispatch_stub_719), + TABLE_ENTRY(_dispatch_stub_731), + TABLE_ENTRY(_dispatch_stub_732), + TABLE_ENTRY(_dispatch_stub_733), + TABLE_ENTRY(_dispatch_stub_734), + TABLE_ENTRY(_dispatch_stub_735), + TABLE_ENTRY(_dispatch_stub_736), + TABLE_ENTRY(_dispatch_stub_737), + TABLE_ENTRY(_dispatch_stub_738), + TABLE_ENTRY(_dispatch_stub_739), TABLE_ENTRY(AreProgramsResidentNV), TABLE_ENTRY(BindProgramNV), TABLE_ENTRY(DeleteProgramsNV), @@ -7371,11 +7511,11 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(SetFragmentShaderConstantATI), TABLE_ENTRY(PointParameteriNV), TABLE_ENTRY(PointParameterivNV), - TABLE_ENTRY(_dispatch_stub_800), - TABLE_ENTRY(_dispatch_stub_801), - TABLE_ENTRY(_dispatch_stub_802), - TABLE_ENTRY(_dispatch_stub_803), - TABLE_ENTRY(_dispatch_stub_804), + TABLE_ENTRY(_dispatch_stub_820), + TABLE_ENTRY(_dispatch_stub_821), + TABLE_ENTRY(_dispatch_stub_822), + TABLE_ENTRY(_dispatch_stub_823), + TABLE_ENTRY(_dispatch_stub_824), TABLE_ENTRY(GetProgramNamedParameterdvNV), TABLE_ENTRY(GetProgramNamedParameterfvNV), TABLE_ENTRY(ProgramNamedParameter4dNV), @@ -7384,8 +7524,8 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(ProgramNamedParameter4fvNV), TABLE_ENTRY(PrimitiveRestartIndexNV), TABLE_ENTRY(PrimitiveRestartNV), - TABLE_ENTRY(_dispatch_stub_813), - TABLE_ENTRY(_dispatch_stub_814), + TABLE_ENTRY(_dispatch_stub_833), + TABLE_ENTRY(_dispatch_stub_834), TABLE_ENTRY(BindFramebufferEXT), TABLE_ENTRY(BindRenderbufferEXT), TABLE_ENTRY(CheckFramebufferStatusEXT), @@ -7403,9 +7543,9 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(IsFramebufferEXT), TABLE_ENTRY(IsRenderbufferEXT), TABLE_ENTRY(RenderbufferStorageEXT), - TABLE_ENTRY(_dispatch_stub_832), - TABLE_ENTRY(_dispatch_stub_833), - TABLE_ENTRY(_dispatch_stub_834), + TABLE_ENTRY(_dispatch_stub_852), + TABLE_ENTRY(_dispatch_stub_853), + TABLE_ENTRY(_dispatch_stub_854), TABLE_ENTRY(BindFragDataLocationEXT), TABLE_ENTRY(GetFragDataLocationEXT), TABLE_ENTRY(GetUniformuivEXT), @@ -7463,8 +7603,8 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(GetTransformFeedbackVaryingEXT), TABLE_ENTRY(TransformFeedbackVaryingsEXT), TABLE_ENTRY(ProvokingVertexEXT), - TABLE_ENTRY(_dispatch_stub_892), - TABLE_ENTRY(_dispatch_stub_893), + TABLE_ENTRY(_dispatch_stub_912), + TABLE_ENTRY(_dispatch_stub_913), TABLE_ENTRY(GetObjectParameterivAPPLE), TABLE_ENTRY(ObjectPurgeableAPPLE), TABLE_ENTRY(ObjectUnpurgeableAPPLE), @@ -7472,11 +7612,11 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(CreateShaderProgramEXT), TABLE_ENTRY(UseShaderProgramEXT), TABLE_ENTRY(TextureBarrierNV), - TABLE_ENTRY(_dispatch_stub_901), - TABLE_ENTRY(_dispatch_stub_902), - TABLE_ENTRY(_dispatch_stub_903), - TABLE_ENTRY(_dispatch_stub_904), - TABLE_ENTRY(_dispatch_stub_905), + TABLE_ENTRY(_dispatch_stub_921), + TABLE_ENTRY(_dispatch_stub_922), + TABLE_ENTRY(_dispatch_stub_923), + TABLE_ENTRY(_dispatch_stub_924), + TABLE_ENTRY(_dispatch_stub_925), TABLE_ENTRY(EGLImageTargetRenderbufferStorageOES), TABLE_ENTRY(EGLImageTargetTexture2DOES), /* A whole bunch of no-op functions. These might be called @@ -7781,12 +7921,16 @@ _glapi_proc UNUSED_TABLE_NAME[] = { TABLE_ENTRY(DrawElementsInstancedEXT), TABLE_ENTRY(DrawElementsInstanced), TABLE_ENTRY(RenderbufferStorageMultisampleEXT), + TABLE_ENTRY(BlendEquationSeparateIndexedAMD), + TABLE_ENTRY(BlendEquationIndexedAMD), + TABLE_ENTRY(BlendFuncSeparateIndexedAMD), + TABLE_ENTRY(BlendFuncIndexedAMD), TABLE_ENTRY(PointParameterf), TABLE_ENTRY(PointParameterfARB), - TABLE_ENTRY(_dispatch_stub_641), + TABLE_ENTRY(_dispatch_stub_661), TABLE_ENTRY(PointParameterfv), TABLE_ENTRY(PointParameterfvARB), - TABLE_ENTRY(_dispatch_stub_642), + TABLE_ENTRY(_dispatch_stub_662), TABLE_ENTRY(SecondaryColor3b), TABLE_ENTRY(SecondaryColor3bv), TABLE_ENTRY(SecondaryColor3d), @@ -7812,7 +7956,7 @@ _glapi_proc UNUSED_TABLE_NAME[] = { TABLE_ENTRY(FogCoordf), TABLE_ENTRY(FogCoordfv), TABLE_ENTRY(BlendFuncSeparate), - TABLE_ENTRY(_dispatch_stub_670), + TABLE_ENTRY(_dispatch_stub_690), TABLE_ENTRY(WindowPos2d), TABLE_ENTRY(WindowPos2dARB), TABLE_ENTRY(WindowPos2dv), diff --git a/src/mapi/glapi/glprocs.h b/src/mapi/glapi/glprocs.h index b11bca21cc5..c10c3da40ce 100644 --- a/src/mapi/glapi/glprocs.h +++ b/src/mapi/glapi/glprocs.h @@ -678,6 +678,26 @@ static const char gl_string_table[] = "glGetShaderPrecisionFormat\0" "glReleaseShaderCompiler\0" "glShaderBinary\0" + "glGetGraphicsResetStatusARB\0" + "glGetnColorTableARB\0" + "glGetnCompressedTexImageARB\0" + "glGetnConvolutionFilterARB\0" + "glGetnHistogramARB\0" + "glGetnMapdvARB\0" + "glGetnMapfvARB\0" + "glGetnMapivARB\0" + "glGetnMinmaxARB\0" + "glGetnPixelMapfvARB\0" + "glGetnPixelMapuivARB\0" + "glGetnPixelMapusvARB\0" + "glGetnPolygonStippleARB\0" + "glGetnSeparableFilterARB\0" + "glGetnTexImageARB\0" + "glGetnUniformdvARB\0" + "glGetnUniformfvARB\0" + "glGetnUniformivARB\0" + "glGetnUniformuivARB\0" + "glReadnPixelsARB\0" "glPolygonOffsetEXT\0" "glGetPixelTexGenParameterfvSGIS\0" "glGetPixelTexGenParameterivSGIS\0" @@ -1168,6 +1188,10 @@ static const char gl_string_table[] = "glDrawElementsInstancedEXT\0" "glDrawElementsInstanced\0" "glRenderbufferStorageMultisampleEXT\0" + "glBlendEquationSeparateIndexedAMD\0" + "glBlendEquationIndexedAMD\0" + "glBlendFuncSeparateIndexedAMD\0" + "glBlendFuncIndexedAMD\0" "glSampleMaskEXT\0" "glSamplePatternEXT\0" "glPointParameterf\0" @@ -1336,41 +1360,41 @@ static const char gl_string_table[] = #define gl_dispatch_stub_364 mgl_dispatch_stub_364 #define gl_dispatch_stub_365 mgl_dispatch_stub_365 #define gl_dispatch_stub_366 mgl_dispatch_stub_366 -#define gl_dispatch_stub_627 mgl_dispatch_stub_627 -#define gl_dispatch_stub_628 mgl_dispatch_stub_628 -#define gl_dispatch_stub_629 mgl_dispatch_stub_629 -#define gl_dispatch_stub_630 mgl_dispatch_stub_630 -#define gl_dispatch_stub_631 mgl_dispatch_stub_631 -#define gl_dispatch_stub_632 mgl_dispatch_stub_632 -#define gl_dispatch_stub_633 mgl_dispatch_stub_633 -#define gl_dispatch_stub_634 mgl_dispatch_stub_634 -#define gl_dispatch_stub_669 mgl_dispatch_stub_669 -#define gl_dispatch_stub_711 mgl_dispatch_stub_711 -#define gl_dispatch_stub_712 mgl_dispatch_stub_712 -#define gl_dispatch_stub_713 mgl_dispatch_stub_713 -#define gl_dispatch_stub_714 mgl_dispatch_stub_714 -#define gl_dispatch_stub_715 mgl_dispatch_stub_715 -#define gl_dispatch_stub_716 mgl_dispatch_stub_716 -#define gl_dispatch_stub_717 mgl_dispatch_stub_717 -#define gl_dispatch_stub_718 mgl_dispatch_stub_718 -#define gl_dispatch_stub_719 mgl_dispatch_stub_719 -#define gl_dispatch_stub_800 mgl_dispatch_stub_800 -#define gl_dispatch_stub_801 mgl_dispatch_stub_801 -#define gl_dispatch_stub_802 mgl_dispatch_stub_802 -#define gl_dispatch_stub_803 mgl_dispatch_stub_803 -#define gl_dispatch_stub_804 mgl_dispatch_stub_804 -#define gl_dispatch_stub_813 mgl_dispatch_stub_813 -#define gl_dispatch_stub_814 mgl_dispatch_stub_814 -#define gl_dispatch_stub_832 mgl_dispatch_stub_832 +#define gl_dispatch_stub_647 mgl_dispatch_stub_647 +#define gl_dispatch_stub_648 mgl_dispatch_stub_648 +#define gl_dispatch_stub_649 mgl_dispatch_stub_649 +#define gl_dispatch_stub_650 mgl_dispatch_stub_650 +#define gl_dispatch_stub_651 mgl_dispatch_stub_651 +#define gl_dispatch_stub_652 mgl_dispatch_stub_652 +#define gl_dispatch_stub_653 mgl_dispatch_stub_653 +#define gl_dispatch_stub_654 mgl_dispatch_stub_654 +#define gl_dispatch_stub_689 mgl_dispatch_stub_689 +#define gl_dispatch_stub_731 mgl_dispatch_stub_731 +#define gl_dispatch_stub_732 mgl_dispatch_stub_732 +#define gl_dispatch_stub_733 mgl_dispatch_stub_733 +#define gl_dispatch_stub_734 mgl_dispatch_stub_734 +#define gl_dispatch_stub_735 mgl_dispatch_stub_735 +#define gl_dispatch_stub_736 mgl_dispatch_stub_736 +#define gl_dispatch_stub_737 mgl_dispatch_stub_737 +#define gl_dispatch_stub_738 mgl_dispatch_stub_738 +#define gl_dispatch_stub_739 mgl_dispatch_stub_739 +#define gl_dispatch_stub_820 mgl_dispatch_stub_820 +#define gl_dispatch_stub_821 mgl_dispatch_stub_821 +#define gl_dispatch_stub_822 mgl_dispatch_stub_822 +#define gl_dispatch_stub_823 mgl_dispatch_stub_823 +#define gl_dispatch_stub_824 mgl_dispatch_stub_824 #define gl_dispatch_stub_833 mgl_dispatch_stub_833 #define gl_dispatch_stub_834 mgl_dispatch_stub_834 -#define gl_dispatch_stub_892 mgl_dispatch_stub_892 -#define gl_dispatch_stub_893 mgl_dispatch_stub_893 -#define gl_dispatch_stub_901 mgl_dispatch_stub_901 -#define gl_dispatch_stub_902 mgl_dispatch_stub_902 -#define gl_dispatch_stub_903 mgl_dispatch_stub_903 -#define gl_dispatch_stub_904 mgl_dispatch_stub_904 -#define gl_dispatch_stub_905 mgl_dispatch_stub_905 +#define gl_dispatch_stub_852 mgl_dispatch_stub_852 +#define gl_dispatch_stub_853 mgl_dispatch_stub_853 +#define gl_dispatch_stub_854 mgl_dispatch_stub_854 +#define gl_dispatch_stub_912 mgl_dispatch_stub_912 +#define gl_dispatch_stub_913 mgl_dispatch_stub_913 +#define gl_dispatch_stub_921 mgl_dispatch_stub_921 +#define gl_dispatch_stub_922 mgl_dispatch_stub_922 +#define gl_dispatch_stub_923 mgl_dispatch_stub_923 +#define gl_dispatch_stub_924 mgl_dispatch_stub_924 +#define gl_dispatch_stub_925 mgl_dispatch_stub_925 #endif /* USE_MGL_NAMESPACE */ @@ -1388,41 +1412,41 @@ void GLAPIENTRY gl_dispatch_stub_363(GLenum target, GLenum pname, GLint * params void GLAPIENTRY gl_dispatch_stub_364(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values); void GLAPIENTRY gl_dispatch_stub_365(GLenum target, GLenum pname, GLfloat * params); void GLAPIENTRY gl_dispatch_stub_366(GLenum target, GLenum pname, GLint * params); -void GLAPIENTRY gl_dispatch_stub_627(GLenum pname, GLfloat * params); -void GLAPIENTRY gl_dispatch_stub_628(GLenum pname, GLint * params); -void GLAPIENTRY gl_dispatch_stub_629(GLenum pname, GLfloat param); -void GLAPIENTRY gl_dispatch_stub_630(GLenum pname, const GLfloat * params); -void GLAPIENTRY gl_dispatch_stub_631(GLenum pname, GLint param); -void GLAPIENTRY gl_dispatch_stub_632(GLenum pname, const GLint * params); -void GLAPIENTRY gl_dispatch_stub_633(GLclampf value, GLboolean invert); -void GLAPIENTRY gl_dispatch_stub_634(GLenum pattern); -void GLAPIENTRY gl_dispatch_stub_669(GLenum mode); -void GLAPIENTRY gl_dispatch_stub_711(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); -void GLAPIENTRY gl_dispatch_stub_712(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); -void GLAPIENTRY gl_dispatch_stub_713(GLsizei n, const GLuint * fences); -void GLAPIENTRY gl_dispatch_stub_714(GLuint fence); -void GLAPIENTRY gl_dispatch_stub_715(GLsizei n, GLuint * fences); -void GLAPIENTRY gl_dispatch_stub_716(GLuint fence, GLenum pname, GLint * params); -GLboolean GLAPIENTRY gl_dispatch_stub_717(GLuint fence); -void GLAPIENTRY gl_dispatch_stub_718(GLuint fence, GLenum condition); -GLboolean GLAPIENTRY gl_dispatch_stub_719(GLuint fence); -void GLAPIENTRY gl_dispatch_stub_800(GLenum face); -void GLAPIENTRY gl_dispatch_stub_801(GLuint array); -void GLAPIENTRY gl_dispatch_stub_802(GLsizei n, const GLuint * arrays); -void GLAPIENTRY gl_dispatch_stub_803(GLsizei n, GLuint * arrays); -GLboolean GLAPIENTRY gl_dispatch_stub_804(GLuint array); -void GLAPIENTRY gl_dispatch_stub_813(GLclampd zmin, GLclampd zmax); -void GLAPIENTRY gl_dispatch_stub_814(GLenum modeRGB, GLenum modeA); -void GLAPIENTRY gl_dispatch_stub_832(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); -void GLAPIENTRY gl_dispatch_stub_833(GLenum target, GLenum pname, GLint param); -void GLAPIENTRY gl_dispatch_stub_834(GLenum target, GLintptr offset, GLsizeiptr size); -void GLAPIENTRY gl_dispatch_stub_892(GLenum target, GLenum pname, GLvoid ** params); -void GLAPIENTRY gl_dispatch_stub_893(GLenum target, GLsizei length, GLvoid * pointer); -void GLAPIENTRY gl_dispatch_stub_901(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); -void GLAPIENTRY gl_dispatch_stub_902(GLenum target, GLuint index, GLsizei count, const GLfloat * params); -void GLAPIENTRY gl_dispatch_stub_903(GLenum target, GLuint index, GLsizei count, const GLfloat * params); -void GLAPIENTRY gl_dispatch_stub_904(GLuint id, GLenum pname, GLint64EXT * params); -void GLAPIENTRY gl_dispatch_stub_905(GLuint id, GLenum pname, GLuint64EXT * params); +void GLAPIENTRY gl_dispatch_stub_647(GLenum pname, GLfloat * params); +void GLAPIENTRY gl_dispatch_stub_648(GLenum pname, GLint * params); +void GLAPIENTRY gl_dispatch_stub_649(GLenum pname, GLfloat param); +void GLAPIENTRY gl_dispatch_stub_650(GLenum pname, const GLfloat * params); +void GLAPIENTRY gl_dispatch_stub_651(GLenum pname, GLint param); +void GLAPIENTRY gl_dispatch_stub_652(GLenum pname, const GLint * params); +void GLAPIENTRY gl_dispatch_stub_653(GLclampf value, GLboolean invert); +void GLAPIENTRY gl_dispatch_stub_654(GLenum pattern); +void GLAPIENTRY gl_dispatch_stub_689(GLenum mode); +void GLAPIENTRY gl_dispatch_stub_731(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); +void GLAPIENTRY gl_dispatch_stub_732(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); +void GLAPIENTRY gl_dispatch_stub_733(GLsizei n, const GLuint * fences); +void GLAPIENTRY gl_dispatch_stub_734(GLuint fence); +void GLAPIENTRY gl_dispatch_stub_735(GLsizei n, GLuint * fences); +void GLAPIENTRY gl_dispatch_stub_736(GLuint fence, GLenum pname, GLint * params); +GLboolean GLAPIENTRY gl_dispatch_stub_737(GLuint fence); +void GLAPIENTRY gl_dispatch_stub_738(GLuint fence, GLenum condition); +GLboolean GLAPIENTRY gl_dispatch_stub_739(GLuint fence); +void GLAPIENTRY gl_dispatch_stub_820(GLenum face); +void GLAPIENTRY gl_dispatch_stub_821(GLuint array); +void GLAPIENTRY gl_dispatch_stub_822(GLsizei n, const GLuint * arrays); +void GLAPIENTRY gl_dispatch_stub_823(GLsizei n, GLuint * arrays); +GLboolean GLAPIENTRY gl_dispatch_stub_824(GLuint array); +void GLAPIENTRY gl_dispatch_stub_833(GLclampd zmin, GLclampd zmax); +void GLAPIENTRY gl_dispatch_stub_834(GLenum modeRGB, GLenum modeA); +void GLAPIENTRY gl_dispatch_stub_852(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +void GLAPIENTRY gl_dispatch_stub_853(GLenum target, GLenum pname, GLint param); +void GLAPIENTRY gl_dispatch_stub_854(GLenum target, GLintptr offset, GLsizeiptr size); +void GLAPIENTRY gl_dispatch_stub_912(GLenum target, GLenum pname, GLvoid ** params); +void GLAPIENTRY gl_dispatch_stub_913(GLenum target, GLsizei length, GLvoid * pointer); +void GLAPIENTRY gl_dispatch_stub_921(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); +void GLAPIENTRY gl_dispatch_stub_922(GLenum target, GLuint index, GLsizei count, const GLfloat * params); +void GLAPIENTRY gl_dispatch_stub_923(GLenum target, GLuint index, GLsizei count, const GLfloat * params); +void GLAPIENTRY gl_dispatch_stub_924(GLuint id, GLenum pname, GLint64EXT * params); +void GLAPIENTRY gl_dispatch_stub_925(GLuint id, GLenum pname, GLuint64EXT * params); #endif /* defined(NEED_FUNCTION_POINTER) || defined(GLX_INDIRECT_RENDERING) */ static const glprocs_table_t static_functions[] = { @@ -2052,647 +2076,671 @@ static const glprocs_table_t static_functions[] = { NAME_FUNC_OFFSET(10200, glGetShaderPrecisionFormat, glGetShaderPrecisionFormat, NULL, 623), NAME_FUNC_OFFSET(10227, glReleaseShaderCompiler, glReleaseShaderCompiler, NULL, 624), NAME_FUNC_OFFSET(10251, glShaderBinary, glShaderBinary, NULL, 625), - NAME_FUNC_OFFSET(10266, glPolygonOffsetEXT, glPolygonOffsetEXT, NULL, 626), - NAME_FUNC_OFFSET(10285, gl_dispatch_stub_627, gl_dispatch_stub_627, NULL, 627), - NAME_FUNC_OFFSET(10317, gl_dispatch_stub_628, gl_dispatch_stub_628, NULL, 628), - NAME_FUNC_OFFSET(10349, gl_dispatch_stub_629, gl_dispatch_stub_629, NULL, 629), - NAME_FUNC_OFFSET(10377, gl_dispatch_stub_630, gl_dispatch_stub_630, NULL, 630), - NAME_FUNC_OFFSET(10406, gl_dispatch_stub_631, gl_dispatch_stub_631, NULL, 631), - NAME_FUNC_OFFSET(10434, gl_dispatch_stub_632, gl_dispatch_stub_632, NULL, 632), - NAME_FUNC_OFFSET(10463, gl_dispatch_stub_633, gl_dispatch_stub_633, NULL, 633), - NAME_FUNC_OFFSET(10480, gl_dispatch_stub_634, gl_dispatch_stub_634, NULL, 634), - NAME_FUNC_OFFSET(10500, glColorPointerEXT, glColorPointerEXT, NULL, 635), - NAME_FUNC_OFFSET(10518, glEdgeFlagPointerEXT, glEdgeFlagPointerEXT, NULL, 636), - NAME_FUNC_OFFSET(10539, glIndexPointerEXT, glIndexPointerEXT, NULL, 637), - NAME_FUNC_OFFSET(10557, glNormalPointerEXT, glNormalPointerEXT, NULL, 638), - NAME_FUNC_OFFSET(10576, glTexCoordPointerEXT, glTexCoordPointerEXT, NULL, 639), - NAME_FUNC_OFFSET(10597, glVertexPointerEXT, glVertexPointerEXT, NULL, 640), - NAME_FUNC_OFFSET(10616, glPointParameterfEXT, glPointParameterfEXT, NULL, 641), - NAME_FUNC_OFFSET(10637, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 642), - NAME_FUNC_OFFSET(10659, glLockArraysEXT, glLockArraysEXT, NULL, 643), - NAME_FUNC_OFFSET(10675, glUnlockArraysEXT, glUnlockArraysEXT, NULL, 644), - NAME_FUNC_OFFSET(10693, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, 645), - NAME_FUNC_OFFSET(10715, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, 646), - NAME_FUNC_OFFSET(10738, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, 647), - NAME_FUNC_OFFSET(10760, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, 648), - NAME_FUNC_OFFSET(10783, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, 649), - NAME_FUNC_OFFSET(10805, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, 650), - NAME_FUNC_OFFSET(10828, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, 651), - NAME_FUNC_OFFSET(10850, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, 652), - NAME_FUNC_OFFSET(10873, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, 653), - NAME_FUNC_OFFSET(10895, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, 654), - NAME_FUNC_OFFSET(10918, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, 655), - NAME_FUNC_OFFSET(10941, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, 656), - NAME_FUNC_OFFSET(10965, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, 657), - NAME_FUNC_OFFSET(10988, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, 658), - NAME_FUNC_OFFSET(11012, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, 659), - NAME_FUNC_OFFSET(11035, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, 660), - NAME_FUNC_OFFSET(11059, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, 661), - NAME_FUNC_OFFSET(11086, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, 662), - NAME_FUNC_OFFSET(11107, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, 663), - NAME_FUNC_OFFSET(11130, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, 664), - NAME_FUNC_OFFSET(11151, glFogCoorddEXT, glFogCoorddEXT, NULL, 665), - NAME_FUNC_OFFSET(11166, glFogCoorddvEXT, glFogCoorddvEXT, NULL, 666), - NAME_FUNC_OFFSET(11182, glFogCoordfEXT, glFogCoordfEXT, NULL, 667), - NAME_FUNC_OFFSET(11197, glFogCoordfvEXT, glFogCoordfvEXT, NULL, 668), - NAME_FUNC_OFFSET(11213, gl_dispatch_stub_669, gl_dispatch_stub_669, NULL, 669), - NAME_FUNC_OFFSET(11231, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 670), - NAME_FUNC_OFFSET(11254, glFlushVertexArrayRangeNV, glFlushVertexArrayRangeNV, NULL, 671), - NAME_FUNC_OFFSET(11280, glVertexArrayRangeNV, glVertexArrayRangeNV, NULL, 672), - NAME_FUNC_OFFSET(11301, glCombinerInputNV, glCombinerInputNV, NULL, 673), - NAME_FUNC_OFFSET(11319, glCombinerOutputNV, glCombinerOutputNV, NULL, 674), - NAME_FUNC_OFFSET(11338, glCombinerParameterfNV, glCombinerParameterfNV, NULL, 675), - NAME_FUNC_OFFSET(11361, glCombinerParameterfvNV, glCombinerParameterfvNV, NULL, 676), - NAME_FUNC_OFFSET(11385, glCombinerParameteriNV, glCombinerParameteriNV, NULL, 677), - NAME_FUNC_OFFSET(11408, glCombinerParameterivNV, glCombinerParameterivNV, NULL, 678), - NAME_FUNC_OFFSET(11432, glFinalCombinerInputNV, glFinalCombinerInputNV, NULL, 679), - NAME_FUNC_OFFSET(11455, glGetCombinerInputParameterfvNV, glGetCombinerInputParameterfvNV, NULL, 680), - NAME_FUNC_OFFSET(11487, glGetCombinerInputParameterivNV, glGetCombinerInputParameterivNV, NULL, 681), - NAME_FUNC_OFFSET(11519, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterfvNV, NULL, 682), - NAME_FUNC_OFFSET(11552, glGetCombinerOutputParameterivNV, glGetCombinerOutputParameterivNV, NULL, 683), - NAME_FUNC_OFFSET(11585, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterfvNV, NULL, 684), - NAME_FUNC_OFFSET(11622, glGetFinalCombinerInputParameterivNV, glGetFinalCombinerInputParameterivNV, NULL, 685), - NAME_FUNC_OFFSET(11659, glResizeBuffersMESA, glResizeBuffersMESA, NULL, 686), - NAME_FUNC_OFFSET(11679, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 687), - NAME_FUNC_OFFSET(11697, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 688), - NAME_FUNC_OFFSET(11716, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 689), - NAME_FUNC_OFFSET(11734, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 690), - NAME_FUNC_OFFSET(11753, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 691), - NAME_FUNC_OFFSET(11771, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 692), - NAME_FUNC_OFFSET(11790, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 693), - NAME_FUNC_OFFSET(11808, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 694), - NAME_FUNC_OFFSET(11827, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 695), - NAME_FUNC_OFFSET(11845, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 696), - NAME_FUNC_OFFSET(11864, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 697), - NAME_FUNC_OFFSET(11882, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 698), - NAME_FUNC_OFFSET(11901, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 699), - NAME_FUNC_OFFSET(11919, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 700), - NAME_FUNC_OFFSET(11938, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 701), - NAME_FUNC_OFFSET(11956, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 702), - NAME_FUNC_OFFSET(11975, glWindowPos4dMESA, glWindowPos4dMESA, NULL, 703), - NAME_FUNC_OFFSET(11993, glWindowPos4dvMESA, glWindowPos4dvMESA, NULL, 704), - NAME_FUNC_OFFSET(12012, glWindowPos4fMESA, glWindowPos4fMESA, NULL, 705), - NAME_FUNC_OFFSET(12030, glWindowPos4fvMESA, glWindowPos4fvMESA, NULL, 706), - NAME_FUNC_OFFSET(12049, glWindowPos4iMESA, glWindowPos4iMESA, NULL, 707), - NAME_FUNC_OFFSET(12067, glWindowPos4ivMESA, glWindowPos4ivMESA, NULL, 708), - NAME_FUNC_OFFSET(12086, glWindowPos4sMESA, glWindowPos4sMESA, NULL, 709), - NAME_FUNC_OFFSET(12104, glWindowPos4svMESA, glWindowPos4svMESA, NULL, 710), - NAME_FUNC_OFFSET(12123, gl_dispatch_stub_711, gl_dispatch_stub_711, NULL, 711), - NAME_FUNC_OFFSET(12148, gl_dispatch_stub_712, gl_dispatch_stub_712, NULL, 712), - NAME_FUNC_OFFSET(12175, gl_dispatch_stub_713, gl_dispatch_stub_713, NULL, 713), - NAME_FUNC_OFFSET(12192, gl_dispatch_stub_714, gl_dispatch_stub_714, NULL, 714), - NAME_FUNC_OFFSET(12208, gl_dispatch_stub_715, gl_dispatch_stub_715, NULL, 715), - NAME_FUNC_OFFSET(12222, gl_dispatch_stub_716, gl_dispatch_stub_716, NULL, 716), - NAME_FUNC_OFFSET(12237, gl_dispatch_stub_717, gl_dispatch_stub_717, NULL, 717), - NAME_FUNC_OFFSET(12249, gl_dispatch_stub_718, gl_dispatch_stub_718, NULL, 718), - NAME_FUNC_OFFSET(12262, gl_dispatch_stub_719, gl_dispatch_stub_719, NULL, 719), - NAME_FUNC_OFFSET(12276, glAreProgramsResidentNV, glAreProgramsResidentNV, NULL, 720), - NAME_FUNC_OFFSET(12300, glBindProgramNV, glBindProgramNV, NULL, 721), - NAME_FUNC_OFFSET(12316, glDeleteProgramsNV, glDeleteProgramsNV, NULL, 722), - NAME_FUNC_OFFSET(12335, glExecuteProgramNV, glExecuteProgramNV, NULL, 723), - NAME_FUNC_OFFSET(12354, glGenProgramsNV, glGenProgramsNV, NULL, 724), - NAME_FUNC_OFFSET(12370, glGetProgramParameterdvNV, glGetProgramParameterdvNV, NULL, 725), - NAME_FUNC_OFFSET(12396, glGetProgramParameterfvNV, glGetProgramParameterfvNV, NULL, 726), - NAME_FUNC_OFFSET(12422, glGetProgramStringNV, glGetProgramStringNV, NULL, 727), - NAME_FUNC_OFFSET(12443, glGetProgramivNV, glGetProgramivNV, NULL, 728), - NAME_FUNC_OFFSET(12460, glGetTrackMatrixivNV, glGetTrackMatrixivNV, NULL, 729), - NAME_FUNC_OFFSET(12481, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 730), - NAME_FUNC_OFFSET(12509, glGetVertexAttribdvNV, glGetVertexAttribdvNV, NULL, 731), - NAME_FUNC_OFFSET(12531, glGetVertexAttribfvNV, glGetVertexAttribfvNV, NULL, 732), - NAME_FUNC_OFFSET(12553, glGetVertexAttribivNV, glGetVertexAttribivNV, NULL, 733), - NAME_FUNC_OFFSET(12575, glIsProgramNV, glIsProgramNV, NULL, 734), - NAME_FUNC_OFFSET(12589, glLoadProgramNV, glLoadProgramNV, NULL, 735), - NAME_FUNC_OFFSET(12605, glProgramParameters4dvNV, glProgramParameters4dvNV, NULL, 736), - NAME_FUNC_OFFSET(12630, glProgramParameters4fvNV, glProgramParameters4fvNV, NULL, 737), - NAME_FUNC_OFFSET(12655, glRequestResidentProgramsNV, glRequestResidentProgramsNV, NULL, 738), - NAME_FUNC_OFFSET(12683, glTrackMatrixNV, glTrackMatrixNV, NULL, 739), - NAME_FUNC_OFFSET(12699, glVertexAttrib1dNV, glVertexAttrib1dNV, NULL, 740), - NAME_FUNC_OFFSET(12718, glVertexAttrib1dvNV, glVertexAttrib1dvNV, NULL, 741), - NAME_FUNC_OFFSET(12738, glVertexAttrib1fNV, glVertexAttrib1fNV, NULL, 742), - NAME_FUNC_OFFSET(12757, glVertexAttrib1fvNV, glVertexAttrib1fvNV, NULL, 743), - NAME_FUNC_OFFSET(12777, glVertexAttrib1sNV, glVertexAttrib1sNV, NULL, 744), - NAME_FUNC_OFFSET(12796, glVertexAttrib1svNV, glVertexAttrib1svNV, NULL, 745), - NAME_FUNC_OFFSET(12816, glVertexAttrib2dNV, glVertexAttrib2dNV, NULL, 746), - NAME_FUNC_OFFSET(12835, glVertexAttrib2dvNV, glVertexAttrib2dvNV, NULL, 747), - NAME_FUNC_OFFSET(12855, glVertexAttrib2fNV, glVertexAttrib2fNV, NULL, 748), - NAME_FUNC_OFFSET(12874, glVertexAttrib2fvNV, glVertexAttrib2fvNV, NULL, 749), - NAME_FUNC_OFFSET(12894, glVertexAttrib2sNV, glVertexAttrib2sNV, NULL, 750), - NAME_FUNC_OFFSET(12913, glVertexAttrib2svNV, glVertexAttrib2svNV, NULL, 751), - NAME_FUNC_OFFSET(12933, glVertexAttrib3dNV, glVertexAttrib3dNV, NULL, 752), - NAME_FUNC_OFFSET(12952, glVertexAttrib3dvNV, glVertexAttrib3dvNV, NULL, 753), - NAME_FUNC_OFFSET(12972, glVertexAttrib3fNV, glVertexAttrib3fNV, NULL, 754), - NAME_FUNC_OFFSET(12991, glVertexAttrib3fvNV, glVertexAttrib3fvNV, NULL, 755), - NAME_FUNC_OFFSET(13011, glVertexAttrib3sNV, glVertexAttrib3sNV, NULL, 756), - NAME_FUNC_OFFSET(13030, glVertexAttrib3svNV, glVertexAttrib3svNV, NULL, 757), - NAME_FUNC_OFFSET(13050, glVertexAttrib4dNV, glVertexAttrib4dNV, NULL, 758), - NAME_FUNC_OFFSET(13069, glVertexAttrib4dvNV, glVertexAttrib4dvNV, NULL, 759), - NAME_FUNC_OFFSET(13089, glVertexAttrib4fNV, glVertexAttrib4fNV, NULL, 760), - NAME_FUNC_OFFSET(13108, glVertexAttrib4fvNV, glVertexAttrib4fvNV, NULL, 761), - NAME_FUNC_OFFSET(13128, glVertexAttrib4sNV, glVertexAttrib4sNV, NULL, 762), - NAME_FUNC_OFFSET(13147, glVertexAttrib4svNV, glVertexAttrib4svNV, NULL, 763), - NAME_FUNC_OFFSET(13167, glVertexAttrib4ubNV, glVertexAttrib4ubNV, NULL, 764), - NAME_FUNC_OFFSET(13187, glVertexAttrib4ubvNV, glVertexAttrib4ubvNV, NULL, 765), - NAME_FUNC_OFFSET(13208, glVertexAttribPointerNV, glVertexAttribPointerNV, NULL, 766), - NAME_FUNC_OFFSET(13232, glVertexAttribs1dvNV, glVertexAttribs1dvNV, NULL, 767), - NAME_FUNC_OFFSET(13253, glVertexAttribs1fvNV, glVertexAttribs1fvNV, NULL, 768), - NAME_FUNC_OFFSET(13274, glVertexAttribs1svNV, glVertexAttribs1svNV, NULL, 769), - NAME_FUNC_OFFSET(13295, glVertexAttribs2dvNV, glVertexAttribs2dvNV, NULL, 770), - NAME_FUNC_OFFSET(13316, glVertexAttribs2fvNV, glVertexAttribs2fvNV, NULL, 771), - NAME_FUNC_OFFSET(13337, glVertexAttribs2svNV, glVertexAttribs2svNV, NULL, 772), - NAME_FUNC_OFFSET(13358, glVertexAttribs3dvNV, glVertexAttribs3dvNV, NULL, 773), - NAME_FUNC_OFFSET(13379, glVertexAttribs3fvNV, glVertexAttribs3fvNV, NULL, 774), - NAME_FUNC_OFFSET(13400, glVertexAttribs3svNV, glVertexAttribs3svNV, NULL, 775), - NAME_FUNC_OFFSET(13421, glVertexAttribs4dvNV, glVertexAttribs4dvNV, NULL, 776), - NAME_FUNC_OFFSET(13442, glVertexAttribs4fvNV, glVertexAttribs4fvNV, NULL, 777), - NAME_FUNC_OFFSET(13463, glVertexAttribs4svNV, glVertexAttribs4svNV, NULL, 778), - NAME_FUNC_OFFSET(13484, glVertexAttribs4ubvNV, glVertexAttribs4ubvNV, NULL, 779), - NAME_FUNC_OFFSET(13506, glGetTexBumpParameterfvATI, glGetTexBumpParameterfvATI, NULL, 780), - NAME_FUNC_OFFSET(13533, glGetTexBumpParameterivATI, glGetTexBumpParameterivATI, NULL, 781), - NAME_FUNC_OFFSET(13560, glTexBumpParameterfvATI, glTexBumpParameterfvATI, NULL, 782), - NAME_FUNC_OFFSET(13584, glTexBumpParameterivATI, glTexBumpParameterivATI, NULL, 783), - NAME_FUNC_OFFSET(13608, glAlphaFragmentOp1ATI, glAlphaFragmentOp1ATI, NULL, 784), - NAME_FUNC_OFFSET(13630, glAlphaFragmentOp2ATI, glAlphaFragmentOp2ATI, NULL, 785), - NAME_FUNC_OFFSET(13652, glAlphaFragmentOp3ATI, glAlphaFragmentOp3ATI, NULL, 786), - NAME_FUNC_OFFSET(13674, glBeginFragmentShaderATI, glBeginFragmentShaderATI, NULL, 787), - NAME_FUNC_OFFSET(13699, glBindFragmentShaderATI, glBindFragmentShaderATI, NULL, 788), - NAME_FUNC_OFFSET(13723, glColorFragmentOp1ATI, glColorFragmentOp1ATI, NULL, 789), - NAME_FUNC_OFFSET(13745, glColorFragmentOp2ATI, glColorFragmentOp2ATI, NULL, 790), - NAME_FUNC_OFFSET(13767, glColorFragmentOp3ATI, glColorFragmentOp3ATI, NULL, 791), - NAME_FUNC_OFFSET(13789, glDeleteFragmentShaderATI, glDeleteFragmentShaderATI, NULL, 792), - NAME_FUNC_OFFSET(13815, glEndFragmentShaderATI, glEndFragmentShaderATI, NULL, 793), - NAME_FUNC_OFFSET(13838, glGenFragmentShadersATI, glGenFragmentShadersATI, NULL, 794), - NAME_FUNC_OFFSET(13862, glPassTexCoordATI, glPassTexCoordATI, NULL, 795), - NAME_FUNC_OFFSET(13880, glSampleMapATI, glSampleMapATI, NULL, 796), - NAME_FUNC_OFFSET(13895, glSetFragmentShaderConstantATI, glSetFragmentShaderConstantATI, NULL, 797), - NAME_FUNC_OFFSET(13926, glPointParameteriNV, glPointParameteriNV, NULL, 798), - NAME_FUNC_OFFSET(13946, glPointParameterivNV, glPointParameterivNV, NULL, 799), - NAME_FUNC_OFFSET(13967, gl_dispatch_stub_800, gl_dispatch_stub_800, NULL, 800), - NAME_FUNC_OFFSET(13990, gl_dispatch_stub_801, gl_dispatch_stub_801, NULL, 801), - NAME_FUNC_OFFSET(14013, gl_dispatch_stub_802, gl_dispatch_stub_802, NULL, 802), - NAME_FUNC_OFFSET(14039, gl_dispatch_stub_803, gl_dispatch_stub_803, NULL, 803), - NAME_FUNC_OFFSET(14062, gl_dispatch_stub_804, gl_dispatch_stub_804, NULL, 804), - NAME_FUNC_OFFSET(14083, glGetProgramNamedParameterdvNV, glGetProgramNamedParameterdvNV, NULL, 805), - NAME_FUNC_OFFSET(14114, glGetProgramNamedParameterfvNV, glGetProgramNamedParameterfvNV, NULL, 806), - NAME_FUNC_OFFSET(14145, glProgramNamedParameter4dNV, glProgramNamedParameter4dNV, NULL, 807), - NAME_FUNC_OFFSET(14173, glProgramNamedParameter4dvNV, glProgramNamedParameter4dvNV, NULL, 808), - NAME_FUNC_OFFSET(14202, glProgramNamedParameter4fNV, glProgramNamedParameter4fNV, NULL, 809), - NAME_FUNC_OFFSET(14230, glProgramNamedParameter4fvNV, glProgramNamedParameter4fvNV, NULL, 810), - NAME_FUNC_OFFSET(14259, glPrimitiveRestartIndexNV, glPrimitiveRestartIndexNV, NULL, 811), - NAME_FUNC_OFFSET(14285, glPrimitiveRestartNV, glPrimitiveRestartNV, NULL, 812), - NAME_FUNC_OFFSET(14306, gl_dispatch_stub_813, gl_dispatch_stub_813, NULL, 813), - NAME_FUNC_OFFSET(14323, gl_dispatch_stub_814, gl_dispatch_stub_814, NULL, 814), - NAME_FUNC_OFFSET(14350, glBindFramebufferEXT, glBindFramebufferEXT, NULL, 815), - NAME_FUNC_OFFSET(14371, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, 816), - NAME_FUNC_OFFSET(14393, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, 817), - NAME_FUNC_OFFSET(14421, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, 818), - NAME_FUNC_OFFSET(14445, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, 819), - NAME_FUNC_OFFSET(14470, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, 820), - NAME_FUNC_OFFSET(14499, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, 821), - NAME_FUNC_OFFSET(14525, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, 822), - NAME_FUNC_OFFSET(14551, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, 823), - NAME_FUNC_OFFSET(14577, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, 824), - NAME_FUNC_OFFSET(14598, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, 825), - NAME_FUNC_OFFSET(14620, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, 826), - NAME_FUNC_OFFSET(14640, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, 827), - NAME_FUNC_OFFSET(14681, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, 828), - NAME_FUNC_OFFSET(14713, glIsFramebufferEXT, glIsFramebufferEXT, NULL, 829), - NAME_FUNC_OFFSET(14732, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, 830), - NAME_FUNC_OFFSET(14752, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, 831), - NAME_FUNC_OFFSET(14777, gl_dispatch_stub_832, gl_dispatch_stub_832, NULL, 832), - NAME_FUNC_OFFSET(14798, gl_dispatch_stub_833, gl_dispatch_stub_833, NULL, 833), - NAME_FUNC_OFFSET(14822, gl_dispatch_stub_834, gl_dispatch_stub_834, NULL, 834), - NAME_FUNC_OFFSET(14852, glBindFragDataLocationEXT, glBindFragDataLocationEXT, NULL, 835), - NAME_FUNC_OFFSET(14878, glGetFragDataLocationEXT, glGetFragDataLocationEXT, NULL, 836), - NAME_FUNC_OFFSET(14903, glGetUniformuivEXT, glGetUniformuivEXT, NULL, 837), - NAME_FUNC_OFFSET(14922, glGetVertexAttribIivEXT, glGetVertexAttribIivEXT, NULL, 838), - NAME_FUNC_OFFSET(14946, glGetVertexAttribIuivEXT, glGetVertexAttribIuivEXT, NULL, 839), - NAME_FUNC_OFFSET(14971, glUniform1uiEXT, glUniform1uiEXT, NULL, 840), - NAME_FUNC_OFFSET(14987, glUniform1uivEXT, glUniform1uivEXT, NULL, 841), - NAME_FUNC_OFFSET(15004, glUniform2uiEXT, glUniform2uiEXT, NULL, 842), - NAME_FUNC_OFFSET(15020, glUniform2uivEXT, glUniform2uivEXT, NULL, 843), - NAME_FUNC_OFFSET(15037, glUniform3uiEXT, glUniform3uiEXT, NULL, 844), - NAME_FUNC_OFFSET(15053, glUniform3uivEXT, glUniform3uivEXT, NULL, 845), - NAME_FUNC_OFFSET(15070, glUniform4uiEXT, glUniform4uiEXT, NULL, 846), - NAME_FUNC_OFFSET(15086, glUniform4uivEXT, glUniform4uivEXT, NULL, 847), - NAME_FUNC_OFFSET(15103, glVertexAttribI1iEXT, glVertexAttribI1iEXT, NULL, 848), - NAME_FUNC_OFFSET(15124, glVertexAttribI1ivEXT, glVertexAttribI1ivEXT, NULL, 849), - NAME_FUNC_OFFSET(15146, glVertexAttribI1uiEXT, glVertexAttribI1uiEXT, NULL, 850), - NAME_FUNC_OFFSET(15168, glVertexAttribI1uivEXT, glVertexAttribI1uivEXT, NULL, 851), - NAME_FUNC_OFFSET(15191, glVertexAttribI2iEXT, glVertexAttribI2iEXT, NULL, 852), - NAME_FUNC_OFFSET(15212, glVertexAttribI2ivEXT, glVertexAttribI2ivEXT, NULL, 853), - NAME_FUNC_OFFSET(15234, glVertexAttribI2uiEXT, glVertexAttribI2uiEXT, NULL, 854), - NAME_FUNC_OFFSET(15256, glVertexAttribI2uivEXT, glVertexAttribI2uivEXT, NULL, 855), - NAME_FUNC_OFFSET(15279, glVertexAttribI3iEXT, glVertexAttribI3iEXT, NULL, 856), - NAME_FUNC_OFFSET(15300, glVertexAttribI3ivEXT, glVertexAttribI3ivEXT, NULL, 857), - NAME_FUNC_OFFSET(15322, glVertexAttribI3uiEXT, glVertexAttribI3uiEXT, NULL, 858), - NAME_FUNC_OFFSET(15344, glVertexAttribI3uivEXT, glVertexAttribI3uivEXT, NULL, 859), - NAME_FUNC_OFFSET(15367, glVertexAttribI4bvEXT, glVertexAttribI4bvEXT, NULL, 860), - NAME_FUNC_OFFSET(15389, glVertexAttribI4iEXT, glVertexAttribI4iEXT, NULL, 861), - NAME_FUNC_OFFSET(15410, glVertexAttribI4ivEXT, glVertexAttribI4ivEXT, NULL, 862), - NAME_FUNC_OFFSET(15432, glVertexAttribI4svEXT, glVertexAttribI4svEXT, NULL, 863), - NAME_FUNC_OFFSET(15454, glVertexAttribI4ubvEXT, glVertexAttribI4ubvEXT, NULL, 864), - NAME_FUNC_OFFSET(15477, glVertexAttribI4uiEXT, glVertexAttribI4uiEXT, NULL, 865), - NAME_FUNC_OFFSET(15499, glVertexAttribI4uivEXT, glVertexAttribI4uivEXT, NULL, 866), - NAME_FUNC_OFFSET(15522, glVertexAttribI4usvEXT, glVertexAttribI4usvEXT, NULL, 867), - NAME_FUNC_OFFSET(15545, glVertexAttribIPointerEXT, glVertexAttribIPointerEXT, NULL, 868), - NAME_FUNC_OFFSET(15571, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, 869), - NAME_FUNC_OFFSET(15600, glColorMaskIndexedEXT, glColorMaskIndexedEXT, NULL, 870), - NAME_FUNC_OFFSET(15622, glDisableIndexedEXT, glDisableIndexedEXT, NULL, 871), - NAME_FUNC_OFFSET(15642, glEnableIndexedEXT, glEnableIndexedEXT, NULL, 872), - NAME_FUNC_OFFSET(15661, glGetBooleanIndexedvEXT, glGetBooleanIndexedvEXT, NULL, 873), - NAME_FUNC_OFFSET(15685, glGetIntegerIndexedvEXT, glGetIntegerIndexedvEXT, NULL, 874), - NAME_FUNC_OFFSET(15709, glIsEnabledIndexedEXT, glIsEnabledIndexedEXT, NULL, 875), - NAME_FUNC_OFFSET(15731, glClearColorIiEXT, glClearColorIiEXT, NULL, 876), - NAME_FUNC_OFFSET(15749, glClearColorIuiEXT, glClearColorIuiEXT, NULL, 877), - NAME_FUNC_OFFSET(15768, glGetTexParameterIivEXT, glGetTexParameterIivEXT, NULL, 878), - NAME_FUNC_OFFSET(15792, glGetTexParameterIuivEXT, glGetTexParameterIuivEXT, NULL, 879), - NAME_FUNC_OFFSET(15817, glTexParameterIivEXT, glTexParameterIivEXT, NULL, 880), - NAME_FUNC_OFFSET(15838, glTexParameterIuivEXT, glTexParameterIuivEXT, NULL, 881), - NAME_FUNC_OFFSET(15860, glBeginConditionalRenderNV, glBeginConditionalRenderNV, NULL, 882), - NAME_FUNC_OFFSET(15887, glEndConditionalRenderNV, glEndConditionalRenderNV, NULL, 883), - NAME_FUNC_OFFSET(15912, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, 884), - NAME_FUNC_OFFSET(15940, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, 885), - NAME_FUNC_OFFSET(15960, glBindBufferOffsetEXT, glBindBufferOffsetEXT, NULL, 886), - NAME_FUNC_OFFSET(15982, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, 887), - NAME_FUNC_OFFSET(16003, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, 888), - NAME_FUNC_OFFSET(16029, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, 889), - NAME_FUNC_OFFSET(16062, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, 890), - NAME_FUNC_OFFSET(16093, glProvokingVertexEXT, glProvokingVertexEXT, NULL, 891), - NAME_FUNC_OFFSET(16114, gl_dispatch_stub_892, gl_dispatch_stub_892, NULL, 892), - NAME_FUNC_OFFSET(16145, gl_dispatch_stub_893, gl_dispatch_stub_893, NULL, 893), - NAME_FUNC_OFFSET(16165, glGetObjectParameterivAPPLE, glGetObjectParameterivAPPLE, NULL, 894), - NAME_FUNC_OFFSET(16193, glObjectPurgeableAPPLE, glObjectPurgeableAPPLE, NULL, 895), - NAME_FUNC_OFFSET(16216, glObjectUnpurgeableAPPLE, glObjectUnpurgeableAPPLE, NULL, 896), - NAME_FUNC_OFFSET(16241, glActiveProgramEXT, glActiveProgramEXT, NULL, 897), - NAME_FUNC_OFFSET(16260, glCreateShaderProgramEXT, glCreateShaderProgramEXT, NULL, 898), - NAME_FUNC_OFFSET(16285, glUseShaderProgramEXT, glUseShaderProgramEXT, NULL, 899), - NAME_FUNC_OFFSET(16307, glTextureBarrierNV, glTextureBarrierNV, NULL, 900), - NAME_FUNC_OFFSET(16326, gl_dispatch_stub_901, gl_dispatch_stub_901, NULL, 901), - NAME_FUNC_OFFSET(16351, gl_dispatch_stub_902, gl_dispatch_stub_902, NULL, 902), - NAME_FUNC_OFFSET(16380, gl_dispatch_stub_903, gl_dispatch_stub_903, NULL, 903), - NAME_FUNC_OFFSET(16411, gl_dispatch_stub_904, gl_dispatch_stub_904, NULL, 904), - NAME_FUNC_OFFSET(16435, gl_dispatch_stub_905, gl_dispatch_stub_905, NULL, 905), - NAME_FUNC_OFFSET(16460, glEGLImageTargetRenderbufferStorageOES, glEGLImageTargetRenderbufferStorageOES, NULL, 906), - NAME_FUNC_OFFSET(16499, glEGLImageTargetTexture2DOES, glEGLImageTargetTexture2DOES, NULL, 907), - NAME_FUNC_OFFSET(16528, glArrayElement, glArrayElement, NULL, 306), - NAME_FUNC_OFFSET(16546, glBindTexture, glBindTexture, NULL, 307), - NAME_FUNC_OFFSET(16563, glDrawArrays, glDrawArrays, NULL, 310), - NAME_FUNC_OFFSET(16579, glAreTexturesResident, glAreTexturesResidentEXT, glAreTexturesResidentEXT, 322), - NAME_FUNC_OFFSET(16604, glCopyTexImage1D, glCopyTexImage1D, NULL, 323), - NAME_FUNC_OFFSET(16624, glCopyTexImage2D, glCopyTexImage2D, NULL, 324), - NAME_FUNC_OFFSET(16644, glCopyTexSubImage1D, glCopyTexSubImage1D, NULL, 325), - NAME_FUNC_OFFSET(16667, glCopyTexSubImage2D, glCopyTexSubImage2D, NULL, 326), - NAME_FUNC_OFFSET(16690, glDeleteTextures, glDeleteTexturesEXT, glDeleteTexturesEXT, 327), - NAME_FUNC_OFFSET(16710, glGenTextures, glGenTexturesEXT, glGenTexturesEXT, 328), - NAME_FUNC_OFFSET(16727, glGetPointerv, glGetPointerv, NULL, 329), - NAME_FUNC_OFFSET(16744, glIsTexture, glIsTextureEXT, glIsTextureEXT, 330), - NAME_FUNC_OFFSET(16759, glPrioritizeTextures, glPrioritizeTextures, NULL, 331), - NAME_FUNC_OFFSET(16783, glTexSubImage1D, glTexSubImage1D, NULL, 332), - NAME_FUNC_OFFSET(16802, glTexSubImage2D, glTexSubImage2D, NULL, 333), - NAME_FUNC_OFFSET(16821, glBlendColor, glBlendColor, NULL, 336), - NAME_FUNC_OFFSET(16837, glBlendEquation, glBlendEquation, NULL, 337), - NAME_FUNC_OFFSET(16856, glDrawRangeElements, glDrawRangeElements, NULL, 338), - NAME_FUNC_OFFSET(16879, glColorTable, glColorTable, NULL, 339), - NAME_FUNC_OFFSET(16895, glColorTable, glColorTable, NULL, 339), - NAME_FUNC_OFFSET(16911, glColorTableParameterfv, glColorTableParameterfv, NULL, 340), - NAME_FUNC_OFFSET(16938, glColorTableParameteriv, glColorTableParameteriv, NULL, 341), - NAME_FUNC_OFFSET(16965, glCopyColorTable, glCopyColorTable, NULL, 342), - NAME_FUNC_OFFSET(16985, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, 343), - NAME_FUNC_OFFSET(17004, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, 343), - NAME_FUNC_OFFSET(17023, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, 344), - NAME_FUNC_OFFSET(17053, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, 344), - NAME_FUNC_OFFSET(17083, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, 345), - NAME_FUNC_OFFSET(17113, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, 345), - NAME_FUNC_OFFSET(17143, glColorSubTable, glColorSubTable, NULL, 346), - NAME_FUNC_OFFSET(17162, glCopyColorSubTable, glCopyColorSubTable, NULL, 347), - NAME_FUNC_OFFSET(17185, glConvolutionFilter1D, glConvolutionFilter1D, NULL, 348), - NAME_FUNC_OFFSET(17210, glConvolutionFilter2D, glConvolutionFilter2D, NULL, 349), - NAME_FUNC_OFFSET(17235, glConvolutionParameterf, glConvolutionParameterf, NULL, 350), - NAME_FUNC_OFFSET(17262, glConvolutionParameterfv, glConvolutionParameterfv, NULL, 351), - NAME_FUNC_OFFSET(17290, glConvolutionParameteri, glConvolutionParameteri, NULL, 352), - NAME_FUNC_OFFSET(17317, glConvolutionParameteriv, glConvolutionParameteriv, NULL, 353), - NAME_FUNC_OFFSET(17345, glCopyConvolutionFilter1D, glCopyConvolutionFilter1D, NULL, 354), - NAME_FUNC_OFFSET(17374, glCopyConvolutionFilter2D, glCopyConvolutionFilter2D, NULL, 355), - NAME_FUNC_OFFSET(17403, glGetConvolutionFilter, gl_dispatch_stub_356, gl_dispatch_stub_356, 356), - NAME_FUNC_OFFSET(17429, glGetConvolutionParameterfv, gl_dispatch_stub_357, gl_dispatch_stub_357, 357), - NAME_FUNC_OFFSET(17460, glGetConvolutionParameteriv, gl_dispatch_stub_358, gl_dispatch_stub_358, 358), - NAME_FUNC_OFFSET(17491, glGetSeparableFilter, gl_dispatch_stub_359, gl_dispatch_stub_359, 359), - NAME_FUNC_OFFSET(17515, glSeparableFilter2D, glSeparableFilter2D, NULL, 360), - NAME_FUNC_OFFSET(17538, glGetHistogram, gl_dispatch_stub_361, gl_dispatch_stub_361, 361), - NAME_FUNC_OFFSET(17556, glGetHistogramParameterfv, gl_dispatch_stub_362, gl_dispatch_stub_362, 362), - NAME_FUNC_OFFSET(17585, glGetHistogramParameteriv, gl_dispatch_stub_363, gl_dispatch_stub_363, 363), - NAME_FUNC_OFFSET(17614, glGetMinmax, gl_dispatch_stub_364, gl_dispatch_stub_364, 364), - NAME_FUNC_OFFSET(17629, glGetMinmaxParameterfv, gl_dispatch_stub_365, gl_dispatch_stub_365, 365), - NAME_FUNC_OFFSET(17655, glGetMinmaxParameteriv, gl_dispatch_stub_366, gl_dispatch_stub_366, 366), - NAME_FUNC_OFFSET(17681, glHistogram, glHistogram, NULL, 367), - NAME_FUNC_OFFSET(17696, glMinmax, glMinmax, NULL, 368), - NAME_FUNC_OFFSET(17708, glResetHistogram, glResetHistogram, NULL, 369), - NAME_FUNC_OFFSET(17728, glResetMinmax, glResetMinmax, NULL, 370), - NAME_FUNC_OFFSET(17745, glTexImage3D, glTexImage3D, NULL, 371), - NAME_FUNC_OFFSET(17761, glTexSubImage3D, glTexSubImage3D, NULL, 372), - NAME_FUNC_OFFSET(17780, glCopyTexSubImage3D, glCopyTexSubImage3D, NULL, 373), - NAME_FUNC_OFFSET(17803, glActiveTextureARB, glActiveTextureARB, NULL, 374), - NAME_FUNC_OFFSET(17819, glClientActiveTextureARB, glClientActiveTextureARB, NULL, 375), - NAME_FUNC_OFFSET(17841, glMultiTexCoord1dARB, glMultiTexCoord1dARB, NULL, 376), - NAME_FUNC_OFFSET(17859, glMultiTexCoord1dvARB, glMultiTexCoord1dvARB, NULL, 377), - NAME_FUNC_OFFSET(17878, glMultiTexCoord1fARB, glMultiTexCoord1fARB, NULL, 378), - NAME_FUNC_OFFSET(17896, glMultiTexCoord1fvARB, glMultiTexCoord1fvARB, NULL, 379), - NAME_FUNC_OFFSET(17915, glMultiTexCoord1iARB, glMultiTexCoord1iARB, NULL, 380), - NAME_FUNC_OFFSET(17933, glMultiTexCoord1ivARB, glMultiTexCoord1ivARB, NULL, 381), - NAME_FUNC_OFFSET(17952, glMultiTexCoord1sARB, glMultiTexCoord1sARB, NULL, 382), - NAME_FUNC_OFFSET(17970, glMultiTexCoord1svARB, glMultiTexCoord1svARB, NULL, 383), - NAME_FUNC_OFFSET(17989, glMultiTexCoord2dARB, glMultiTexCoord2dARB, NULL, 384), - NAME_FUNC_OFFSET(18007, glMultiTexCoord2dvARB, glMultiTexCoord2dvARB, NULL, 385), - NAME_FUNC_OFFSET(18026, glMultiTexCoord2fARB, glMultiTexCoord2fARB, NULL, 386), - NAME_FUNC_OFFSET(18044, glMultiTexCoord2fvARB, glMultiTexCoord2fvARB, NULL, 387), - NAME_FUNC_OFFSET(18063, glMultiTexCoord2iARB, glMultiTexCoord2iARB, NULL, 388), - NAME_FUNC_OFFSET(18081, glMultiTexCoord2ivARB, glMultiTexCoord2ivARB, NULL, 389), - NAME_FUNC_OFFSET(18100, glMultiTexCoord2sARB, glMultiTexCoord2sARB, NULL, 390), - NAME_FUNC_OFFSET(18118, glMultiTexCoord2svARB, glMultiTexCoord2svARB, NULL, 391), - NAME_FUNC_OFFSET(18137, glMultiTexCoord3dARB, glMultiTexCoord3dARB, NULL, 392), - NAME_FUNC_OFFSET(18155, glMultiTexCoord3dvARB, glMultiTexCoord3dvARB, NULL, 393), - NAME_FUNC_OFFSET(18174, glMultiTexCoord3fARB, glMultiTexCoord3fARB, NULL, 394), - NAME_FUNC_OFFSET(18192, glMultiTexCoord3fvARB, glMultiTexCoord3fvARB, NULL, 395), - NAME_FUNC_OFFSET(18211, glMultiTexCoord3iARB, glMultiTexCoord3iARB, NULL, 396), - NAME_FUNC_OFFSET(18229, glMultiTexCoord3ivARB, glMultiTexCoord3ivARB, NULL, 397), - NAME_FUNC_OFFSET(18248, glMultiTexCoord3sARB, glMultiTexCoord3sARB, NULL, 398), - NAME_FUNC_OFFSET(18266, glMultiTexCoord3svARB, glMultiTexCoord3svARB, NULL, 399), - NAME_FUNC_OFFSET(18285, glMultiTexCoord4dARB, glMultiTexCoord4dARB, NULL, 400), - NAME_FUNC_OFFSET(18303, glMultiTexCoord4dvARB, glMultiTexCoord4dvARB, NULL, 401), - NAME_FUNC_OFFSET(18322, glMultiTexCoord4fARB, glMultiTexCoord4fARB, NULL, 402), - NAME_FUNC_OFFSET(18340, glMultiTexCoord4fvARB, glMultiTexCoord4fvARB, NULL, 403), - NAME_FUNC_OFFSET(18359, glMultiTexCoord4iARB, glMultiTexCoord4iARB, NULL, 404), - NAME_FUNC_OFFSET(18377, glMultiTexCoord4ivARB, glMultiTexCoord4ivARB, NULL, 405), - NAME_FUNC_OFFSET(18396, glMultiTexCoord4sARB, glMultiTexCoord4sARB, NULL, 406), - NAME_FUNC_OFFSET(18414, glMultiTexCoord4svARB, glMultiTexCoord4svARB, NULL, 407), - NAME_FUNC_OFFSET(18433, glStencilOpSeparate, glStencilOpSeparate, NULL, 423), - NAME_FUNC_OFFSET(18456, glLoadTransposeMatrixdARB, glLoadTransposeMatrixdARB, NULL, 441), - NAME_FUNC_OFFSET(18479, glLoadTransposeMatrixfARB, glLoadTransposeMatrixfARB, NULL, 442), - NAME_FUNC_OFFSET(18502, glMultTransposeMatrixdARB, glMultTransposeMatrixdARB, NULL, 443), - NAME_FUNC_OFFSET(18525, glMultTransposeMatrixfARB, glMultTransposeMatrixfARB, NULL, 444), - NAME_FUNC_OFFSET(18548, glSampleCoverageARB, glSampleCoverageARB, NULL, 445), - NAME_FUNC_OFFSET(18565, glCompressedTexImage1DARB, glCompressedTexImage1DARB, NULL, 446), - NAME_FUNC_OFFSET(18588, glCompressedTexImage2DARB, glCompressedTexImage2DARB, NULL, 447), - NAME_FUNC_OFFSET(18611, glCompressedTexImage3DARB, glCompressedTexImage3DARB, NULL, 448), - NAME_FUNC_OFFSET(18634, glCompressedTexSubImage1DARB, glCompressedTexSubImage1DARB, NULL, 449), - NAME_FUNC_OFFSET(18660, glCompressedTexSubImage2DARB, glCompressedTexSubImage2DARB, NULL, 450), - NAME_FUNC_OFFSET(18686, glCompressedTexSubImage3DARB, glCompressedTexSubImage3DARB, NULL, 451), - NAME_FUNC_OFFSET(18712, glGetCompressedTexImageARB, glGetCompressedTexImageARB, NULL, 452), - NAME_FUNC_OFFSET(18736, glDisableVertexAttribArrayARB, glDisableVertexAttribArrayARB, NULL, 453), - NAME_FUNC_OFFSET(18763, glEnableVertexAttribArrayARB, glEnableVertexAttribArrayARB, NULL, 454), - NAME_FUNC_OFFSET(18789, glGetVertexAttribdvARB, glGetVertexAttribdvARB, NULL, 461), - NAME_FUNC_OFFSET(18809, glGetVertexAttribfvARB, glGetVertexAttribfvARB, NULL, 462), - NAME_FUNC_OFFSET(18829, glGetVertexAttribivARB, glGetVertexAttribivARB, NULL, 463), - NAME_FUNC_OFFSET(18849, glProgramEnvParameter4dARB, glProgramEnvParameter4dARB, NULL, 464), - NAME_FUNC_OFFSET(18872, glProgramEnvParameter4dvARB, glProgramEnvParameter4dvARB, NULL, 465), - NAME_FUNC_OFFSET(18896, glProgramEnvParameter4fARB, glProgramEnvParameter4fARB, NULL, 466), - NAME_FUNC_OFFSET(18919, glProgramEnvParameter4fvARB, glProgramEnvParameter4fvARB, NULL, 467), - NAME_FUNC_OFFSET(18943, glVertexAttrib1dARB, glVertexAttrib1dARB, NULL, 473), - NAME_FUNC_OFFSET(18960, glVertexAttrib1dvARB, glVertexAttrib1dvARB, NULL, 474), - NAME_FUNC_OFFSET(18978, glVertexAttrib1fARB, glVertexAttrib1fARB, NULL, 475), - NAME_FUNC_OFFSET(18995, glVertexAttrib1fvARB, glVertexAttrib1fvARB, NULL, 476), - NAME_FUNC_OFFSET(19013, glVertexAttrib1sARB, glVertexAttrib1sARB, NULL, 477), - NAME_FUNC_OFFSET(19030, glVertexAttrib1svARB, glVertexAttrib1svARB, NULL, 478), - NAME_FUNC_OFFSET(19048, glVertexAttrib2dARB, glVertexAttrib2dARB, NULL, 479), - NAME_FUNC_OFFSET(19065, glVertexAttrib2dvARB, glVertexAttrib2dvARB, NULL, 480), - NAME_FUNC_OFFSET(19083, glVertexAttrib2fARB, glVertexAttrib2fARB, NULL, 481), - NAME_FUNC_OFFSET(19100, glVertexAttrib2fvARB, glVertexAttrib2fvARB, NULL, 482), - NAME_FUNC_OFFSET(19118, glVertexAttrib2sARB, glVertexAttrib2sARB, NULL, 483), - NAME_FUNC_OFFSET(19135, glVertexAttrib2svARB, glVertexAttrib2svARB, NULL, 484), - NAME_FUNC_OFFSET(19153, glVertexAttrib3dARB, glVertexAttrib3dARB, NULL, 485), - NAME_FUNC_OFFSET(19170, glVertexAttrib3dvARB, glVertexAttrib3dvARB, NULL, 486), - NAME_FUNC_OFFSET(19188, glVertexAttrib3fARB, glVertexAttrib3fARB, NULL, 487), - NAME_FUNC_OFFSET(19205, glVertexAttrib3fvARB, glVertexAttrib3fvARB, NULL, 488), - NAME_FUNC_OFFSET(19223, glVertexAttrib3sARB, glVertexAttrib3sARB, NULL, 489), - NAME_FUNC_OFFSET(19240, glVertexAttrib3svARB, glVertexAttrib3svARB, NULL, 490), - NAME_FUNC_OFFSET(19258, glVertexAttrib4NbvARB, glVertexAttrib4NbvARB, NULL, 491), - NAME_FUNC_OFFSET(19277, glVertexAttrib4NivARB, glVertexAttrib4NivARB, NULL, 492), - NAME_FUNC_OFFSET(19296, glVertexAttrib4NsvARB, glVertexAttrib4NsvARB, NULL, 493), - NAME_FUNC_OFFSET(19315, glVertexAttrib4NubARB, glVertexAttrib4NubARB, NULL, 494), - NAME_FUNC_OFFSET(19334, glVertexAttrib4NubvARB, glVertexAttrib4NubvARB, NULL, 495), - NAME_FUNC_OFFSET(19354, glVertexAttrib4NuivARB, glVertexAttrib4NuivARB, NULL, 496), - NAME_FUNC_OFFSET(19374, glVertexAttrib4NusvARB, glVertexAttrib4NusvARB, NULL, 497), - NAME_FUNC_OFFSET(19394, glVertexAttrib4bvARB, glVertexAttrib4bvARB, NULL, 498), - NAME_FUNC_OFFSET(19412, glVertexAttrib4dARB, glVertexAttrib4dARB, NULL, 499), - NAME_FUNC_OFFSET(19429, glVertexAttrib4dvARB, glVertexAttrib4dvARB, NULL, 500), - NAME_FUNC_OFFSET(19447, glVertexAttrib4fARB, glVertexAttrib4fARB, NULL, 501), - NAME_FUNC_OFFSET(19464, glVertexAttrib4fvARB, glVertexAttrib4fvARB, NULL, 502), - NAME_FUNC_OFFSET(19482, glVertexAttrib4ivARB, glVertexAttrib4ivARB, NULL, 503), - NAME_FUNC_OFFSET(19500, glVertexAttrib4sARB, glVertexAttrib4sARB, NULL, 504), - NAME_FUNC_OFFSET(19517, glVertexAttrib4svARB, glVertexAttrib4svARB, NULL, 505), - NAME_FUNC_OFFSET(19535, glVertexAttrib4ubvARB, glVertexAttrib4ubvARB, NULL, 506), - NAME_FUNC_OFFSET(19554, glVertexAttrib4uivARB, glVertexAttrib4uivARB, NULL, 507), - NAME_FUNC_OFFSET(19573, glVertexAttrib4usvARB, glVertexAttrib4usvARB, NULL, 508), - NAME_FUNC_OFFSET(19592, glVertexAttribPointerARB, glVertexAttribPointerARB, NULL, 509), - NAME_FUNC_OFFSET(19614, glBindBufferARB, glBindBufferARB, NULL, 510), - NAME_FUNC_OFFSET(19627, glBufferDataARB, glBufferDataARB, NULL, 511), - NAME_FUNC_OFFSET(19640, glBufferSubDataARB, glBufferSubDataARB, NULL, 512), - NAME_FUNC_OFFSET(19656, glDeleteBuffersARB, glDeleteBuffersARB, NULL, 513), - NAME_FUNC_OFFSET(19672, glGenBuffersARB, glGenBuffersARB, NULL, 514), - NAME_FUNC_OFFSET(19685, glGetBufferParameterivARB, glGetBufferParameterivARB, NULL, 515), - NAME_FUNC_OFFSET(19708, glGetBufferPointervARB, glGetBufferPointervARB, NULL, 516), - NAME_FUNC_OFFSET(19728, glGetBufferSubDataARB, glGetBufferSubDataARB, NULL, 517), - NAME_FUNC_OFFSET(19747, glIsBufferARB, glIsBufferARB, NULL, 518), - NAME_FUNC_OFFSET(19758, glMapBufferARB, glMapBufferARB, NULL, 519), - NAME_FUNC_OFFSET(19770, glUnmapBufferARB, glUnmapBufferARB, NULL, 520), - NAME_FUNC_OFFSET(19784, glBeginQueryARB, glBeginQueryARB, NULL, 521), - NAME_FUNC_OFFSET(19797, glDeleteQueriesARB, glDeleteQueriesARB, NULL, 522), - NAME_FUNC_OFFSET(19813, glEndQueryARB, glEndQueryARB, NULL, 523), - NAME_FUNC_OFFSET(19824, glGenQueriesARB, glGenQueriesARB, NULL, 524), - NAME_FUNC_OFFSET(19837, glGetQueryObjectivARB, glGetQueryObjectivARB, NULL, 525), - NAME_FUNC_OFFSET(19856, glGetQueryObjectuivARB, glGetQueryObjectuivARB, NULL, 526), - NAME_FUNC_OFFSET(19876, glGetQueryivARB, glGetQueryivARB, NULL, 527), - NAME_FUNC_OFFSET(19889, glIsQueryARB, glIsQueryARB, NULL, 528), - NAME_FUNC_OFFSET(19899, glCompileShaderARB, glCompileShaderARB, NULL, 530), - NAME_FUNC_OFFSET(19915, glGetActiveUniformARB, glGetActiveUniformARB, NULL, 535), - NAME_FUNC_OFFSET(19934, glGetShaderSourceARB, glGetShaderSourceARB, NULL, 541), - NAME_FUNC_OFFSET(19952, glGetUniformLocationARB, glGetUniformLocationARB, NULL, 542), - NAME_FUNC_OFFSET(19973, glGetUniformfvARB, glGetUniformfvARB, NULL, 543), - NAME_FUNC_OFFSET(19988, glGetUniformivARB, glGetUniformivARB, NULL, 544), - NAME_FUNC_OFFSET(20003, glLinkProgramARB, glLinkProgramARB, NULL, 545), - NAME_FUNC_OFFSET(20017, glShaderSourceARB, glShaderSourceARB, NULL, 546), - NAME_FUNC_OFFSET(20032, glUniform1fARB, glUniform1fARB, NULL, 547), - NAME_FUNC_OFFSET(20044, glUniform1fvARB, glUniform1fvARB, NULL, 548), - NAME_FUNC_OFFSET(20057, glUniform1iARB, glUniform1iARB, NULL, 549), - NAME_FUNC_OFFSET(20069, glUniform1ivARB, glUniform1ivARB, NULL, 550), - NAME_FUNC_OFFSET(20082, glUniform2fARB, glUniform2fARB, NULL, 551), - NAME_FUNC_OFFSET(20094, glUniform2fvARB, glUniform2fvARB, NULL, 552), - NAME_FUNC_OFFSET(20107, glUniform2iARB, glUniform2iARB, NULL, 553), - NAME_FUNC_OFFSET(20119, glUniform2ivARB, glUniform2ivARB, NULL, 554), - NAME_FUNC_OFFSET(20132, glUniform3fARB, glUniform3fARB, NULL, 555), - NAME_FUNC_OFFSET(20144, glUniform3fvARB, glUniform3fvARB, NULL, 556), - NAME_FUNC_OFFSET(20157, glUniform3iARB, glUniform3iARB, NULL, 557), - NAME_FUNC_OFFSET(20169, glUniform3ivARB, glUniform3ivARB, NULL, 558), - NAME_FUNC_OFFSET(20182, glUniform4fARB, glUniform4fARB, NULL, 559), - NAME_FUNC_OFFSET(20194, glUniform4fvARB, glUniform4fvARB, NULL, 560), - NAME_FUNC_OFFSET(20207, glUniform4iARB, glUniform4iARB, NULL, 561), - NAME_FUNC_OFFSET(20219, glUniform4ivARB, glUniform4ivARB, NULL, 562), - NAME_FUNC_OFFSET(20232, glUniformMatrix2fvARB, glUniformMatrix2fvARB, NULL, 563), - NAME_FUNC_OFFSET(20251, glUniformMatrix3fvARB, glUniformMatrix3fvARB, NULL, 564), - NAME_FUNC_OFFSET(20270, glUniformMatrix4fvARB, glUniformMatrix4fvARB, NULL, 565), - NAME_FUNC_OFFSET(20289, glUseProgramObjectARB, glUseProgramObjectARB, NULL, 566), - NAME_FUNC_OFFSET(20302, glValidateProgramARB, glValidateProgramARB, NULL, 567), - NAME_FUNC_OFFSET(20320, glBindAttribLocationARB, glBindAttribLocationARB, NULL, 568), - NAME_FUNC_OFFSET(20341, glGetActiveAttribARB, glGetActiveAttribARB, NULL, 569), - NAME_FUNC_OFFSET(20359, glGetAttribLocationARB, glGetAttribLocationARB, NULL, 570), - NAME_FUNC_OFFSET(20379, glDrawBuffersARB, glDrawBuffersARB, NULL, 571), - NAME_FUNC_OFFSET(20393, glDrawBuffersARB, glDrawBuffersARB, NULL, 571), - NAME_FUNC_OFFSET(20410, glDrawArraysInstancedARB, glDrawArraysInstancedARB, NULL, 573), - NAME_FUNC_OFFSET(20435, glDrawArraysInstancedARB, glDrawArraysInstancedARB, NULL, 573), - NAME_FUNC_OFFSET(20457, glDrawElementsInstancedARB, glDrawElementsInstancedARB, NULL, 574), - NAME_FUNC_OFFSET(20484, glDrawElementsInstancedARB, glDrawElementsInstancedARB, NULL, 574), - NAME_FUNC_OFFSET(20508, glRenderbufferStorageMultisample, glRenderbufferStorageMultisample, NULL, 575), - NAME_FUNC_OFFSET(20544, gl_dispatch_stub_633, gl_dispatch_stub_633, NULL, 633), - NAME_FUNC_OFFSET(20560, gl_dispatch_stub_634, gl_dispatch_stub_634, NULL, 634), - NAME_FUNC_OFFSET(20579, glPointParameterfEXT, glPointParameterfEXT, NULL, 641), - NAME_FUNC_OFFSET(20597, glPointParameterfEXT, glPointParameterfEXT, NULL, 641), - NAME_FUNC_OFFSET(20618, glPointParameterfEXT, glPointParameterfEXT, NULL, 641), - NAME_FUNC_OFFSET(20640, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 642), - NAME_FUNC_OFFSET(20659, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 642), - NAME_FUNC_OFFSET(20681, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 642), - NAME_FUNC_OFFSET(20704, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, 645), - NAME_FUNC_OFFSET(20723, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, 646), - NAME_FUNC_OFFSET(20743, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, 647), - NAME_FUNC_OFFSET(20762, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, 648), - NAME_FUNC_OFFSET(20782, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, 649), - NAME_FUNC_OFFSET(20801, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, 650), - NAME_FUNC_OFFSET(20821, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, 651), - NAME_FUNC_OFFSET(20840, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, 652), - NAME_FUNC_OFFSET(20860, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, 653), - NAME_FUNC_OFFSET(20879, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, 654), - NAME_FUNC_OFFSET(20899, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, 655), - NAME_FUNC_OFFSET(20919, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, 656), - NAME_FUNC_OFFSET(20940, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, 657), - NAME_FUNC_OFFSET(20960, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, 658), - NAME_FUNC_OFFSET(20981, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, 659), - NAME_FUNC_OFFSET(21001, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, 660), - NAME_FUNC_OFFSET(21022, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, 661), - NAME_FUNC_OFFSET(21046, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, 662), - NAME_FUNC_OFFSET(21064, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, 663), - NAME_FUNC_OFFSET(21084, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, 664), - NAME_FUNC_OFFSET(21102, glFogCoorddEXT, glFogCoorddEXT, NULL, 665), - NAME_FUNC_OFFSET(21114, glFogCoorddvEXT, glFogCoorddvEXT, NULL, 666), - NAME_FUNC_OFFSET(21127, glFogCoordfEXT, glFogCoordfEXT, NULL, 667), - NAME_FUNC_OFFSET(21139, glFogCoordfvEXT, glFogCoordfvEXT, NULL, 668), - NAME_FUNC_OFFSET(21152, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 670), - NAME_FUNC_OFFSET(21172, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 670), - NAME_FUNC_OFFSET(21196, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 687), - NAME_FUNC_OFFSET(21210, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 687), - NAME_FUNC_OFFSET(21227, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 688), - NAME_FUNC_OFFSET(21242, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 688), - NAME_FUNC_OFFSET(21260, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 689), - NAME_FUNC_OFFSET(21274, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 689), - NAME_FUNC_OFFSET(21291, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 690), - NAME_FUNC_OFFSET(21306, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 690), - NAME_FUNC_OFFSET(21324, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 691), - NAME_FUNC_OFFSET(21338, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 691), - NAME_FUNC_OFFSET(21355, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 692), - NAME_FUNC_OFFSET(21370, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 692), - NAME_FUNC_OFFSET(21388, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 693), - NAME_FUNC_OFFSET(21402, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 693), - NAME_FUNC_OFFSET(21419, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 694), - NAME_FUNC_OFFSET(21434, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 694), - NAME_FUNC_OFFSET(21452, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 695), - NAME_FUNC_OFFSET(21466, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 695), - NAME_FUNC_OFFSET(21483, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 696), - NAME_FUNC_OFFSET(21498, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 696), - NAME_FUNC_OFFSET(21516, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 697), - NAME_FUNC_OFFSET(21530, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 697), - NAME_FUNC_OFFSET(21547, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 698), - NAME_FUNC_OFFSET(21562, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 698), - NAME_FUNC_OFFSET(21580, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 699), - NAME_FUNC_OFFSET(21594, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 699), - NAME_FUNC_OFFSET(21611, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 700), - NAME_FUNC_OFFSET(21626, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 700), - NAME_FUNC_OFFSET(21644, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 701), - NAME_FUNC_OFFSET(21658, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 701), - NAME_FUNC_OFFSET(21675, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 702), - NAME_FUNC_OFFSET(21690, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 702), - NAME_FUNC_OFFSET(21708, glBindProgramNV, glBindProgramNV, NULL, 721), - NAME_FUNC_OFFSET(21725, glDeleteProgramsNV, glDeleteProgramsNV, NULL, 722), - NAME_FUNC_OFFSET(21745, glGenProgramsNV, glGenProgramsNV, NULL, 724), - NAME_FUNC_OFFSET(21762, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 730), - NAME_FUNC_OFFSET(21788, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 730), - NAME_FUNC_OFFSET(21817, glIsProgramNV, glIsProgramNV, NULL, 734), - NAME_FUNC_OFFSET(21832, glPointParameteriNV, glPointParameteriNV, NULL, 798), - NAME_FUNC_OFFSET(21850, glPointParameterivNV, glPointParameterivNV, NULL, 799), - NAME_FUNC_OFFSET(21869, gl_dispatch_stub_802, gl_dispatch_stub_802, NULL, 802), - NAME_FUNC_OFFSET(21890, gl_dispatch_stub_804, gl_dispatch_stub_804, NULL, 804), - NAME_FUNC_OFFSET(21906, glPrimitiveRestartIndexNV, glPrimitiveRestartIndexNV, NULL, 811), - NAME_FUNC_OFFSET(21930, gl_dispatch_stub_814, gl_dispatch_stub_814, NULL, 814), - NAME_FUNC_OFFSET(21954, gl_dispatch_stub_814, gl_dispatch_stub_814, NULL, 814), - NAME_FUNC_OFFSET(21981, glBindFramebufferEXT, glBindFramebufferEXT, NULL, 815), - NAME_FUNC_OFFSET(21999, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, 816), - NAME_FUNC_OFFSET(22018, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, 817), - NAME_FUNC_OFFSET(22043, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, 818), - NAME_FUNC_OFFSET(22064, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, 819), - NAME_FUNC_OFFSET(22086, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, 820), - NAME_FUNC_OFFSET(22112, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, 821), - NAME_FUNC_OFFSET(22135, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, 822), - NAME_FUNC_OFFSET(22158, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, 823), - NAME_FUNC_OFFSET(22181, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, 824), - NAME_FUNC_OFFSET(22199, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, 825), - NAME_FUNC_OFFSET(22218, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, 826), - NAME_FUNC_OFFSET(22235, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, 827), - NAME_FUNC_OFFSET(22273, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, 828), - NAME_FUNC_OFFSET(22302, glIsFramebufferEXT, glIsFramebufferEXT, NULL, 829), - NAME_FUNC_OFFSET(22318, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, 830), - NAME_FUNC_OFFSET(22335, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, 831), - NAME_FUNC_OFFSET(22357, gl_dispatch_stub_832, gl_dispatch_stub_832, NULL, 832), - NAME_FUNC_OFFSET(22375, glBindFragDataLocationEXT, glBindFragDataLocationEXT, NULL, 835), - NAME_FUNC_OFFSET(22398, glGetFragDataLocationEXT, glGetFragDataLocationEXT, NULL, 836), - NAME_FUNC_OFFSET(22420, glGetUniformuivEXT, glGetUniformuivEXT, NULL, 837), - NAME_FUNC_OFFSET(22436, glGetVertexAttribIivEXT, glGetVertexAttribIivEXT, NULL, 838), - NAME_FUNC_OFFSET(22457, glGetVertexAttribIuivEXT, glGetVertexAttribIuivEXT, NULL, 839), - NAME_FUNC_OFFSET(22479, glUniform1uiEXT, glUniform1uiEXT, NULL, 840), - NAME_FUNC_OFFSET(22492, glUniform1uivEXT, glUniform1uivEXT, NULL, 841), - NAME_FUNC_OFFSET(22506, glUniform2uiEXT, glUniform2uiEXT, NULL, 842), - NAME_FUNC_OFFSET(22519, glUniform2uivEXT, glUniform2uivEXT, NULL, 843), - NAME_FUNC_OFFSET(22533, glUniform3uiEXT, glUniform3uiEXT, NULL, 844), - NAME_FUNC_OFFSET(22546, glUniform3uivEXT, glUniform3uivEXT, NULL, 845), - NAME_FUNC_OFFSET(22560, glUniform4uiEXT, glUniform4uiEXT, NULL, 846), - NAME_FUNC_OFFSET(22573, glUniform4uivEXT, glUniform4uivEXT, NULL, 847), - NAME_FUNC_OFFSET(22587, glVertexAttribI1iEXT, glVertexAttribI1iEXT, NULL, 848), - NAME_FUNC_OFFSET(22605, glVertexAttribI1ivEXT, glVertexAttribI1ivEXT, NULL, 849), - NAME_FUNC_OFFSET(22624, glVertexAttribI1uiEXT, glVertexAttribI1uiEXT, NULL, 850), - NAME_FUNC_OFFSET(22643, glVertexAttribI1uivEXT, glVertexAttribI1uivEXT, NULL, 851), - NAME_FUNC_OFFSET(22663, glVertexAttribI2iEXT, glVertexAttribI2iEXT, NULL, 852), - NAME_FUNC_OFFSET(22681, glVertexAttribI2ivEXT, glVertexAttribI2ivEXT, NULL, 853), - NAME_FUNC_OFFSET(22700, glVertexAttribI2uiEXT, glVertexAttribI2uiEXT, NULL, 854), - NAME_FUNC_OFFSET(22719, glVertexAttribI2uivEXT, glVertexAttribI2uivEXT, NULL, 855), - NAME_FUNC_OFFSET(22739, glVertexAttribI3iEXT, glVertexAttribI3iEXT, NULL, 856), - NAME_FUNC_OFFSET(22757, glVertexAttribI3ivEXT, glVertexAttribI3ivEXT, NULL, 857), - NAME_FUNC_OFFSET(22776, glVertexAttribI3uiEXT, glVertexAttribI3uiEXT, NULL, 858), - NAME_FUNC_OFFSET(22795, glVertexAttribI3uivEXT, glVertexAttribI3uivEXT, NULL, 859), - NAME_FUNC_OFFSET(22815, glVertexAttribI4bvEXT, glVertexAttribI4bvEXT, NULL, 860), - NAME_FUNC_OFFSET(22834, glVertexAttribI4iEXT, glVertexAttribI4iEXT, NULL, 861), - NAME_FUNC_OFFSET(22852, glVertexAttribI4ivEXT, glVertexAttribI4ivEXT, NULL, 862), - NAME_FUNC_OFFSET(22871, glVertexAttribI4svEXT, glVertexAttribI4svEXT, NULL, 863), - NAME_FUNC_OFFSET(22890, glVertexAttribI4ubvEXT, glVertexAttribI4ubvEXT, NULL, 864), - NAME_FUNC_OFFSET(22910, glVertexAttribI4uiEXT, glVertexAttribI4uiEXT, NULL, 865), - NAME_FUNC_OFFSET(22929, glVertexAttribI4uivEXT, glVertexAttribI4uivEXT, NULL, 866), - NAME_FUNC_OFFSET(22949, glVertexAttribI4usvEXT, glVertexAttribI4usvEXT, NULL, 867), - NAME_FUNC_OFFSET(22969, glVertexAttribIPointerEXT, glVertexAttribIPointerEXT, NULL, 868), - NAME_FUNC_OFFSET(22992, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, 869), - NAME_FUNC_OFFSET(23018, glColorMaskIndexedEXT, glColorMaskIndexedEXT, NULL, 870), - NAME_FUNC_OFFSET(23031, glDisableIndexedEXT, glDisableIndexedEXT, NULL, 871), - NAME_FUNC_OFFSET(23042, glEnableIndexedEXT, glEnableIndexedEXT, NULL, 872), - NAME_FUNC_OFFSET(23052, glGetBooleanIndexedvEXT, glGetBooleanIndexedvEXT, NULL, 873), - NAME_FUNC_OFFSET(23068, glGetIntegerIndexedvEXT, glGetIntegerIndexedvEXT, NULL, 874), - NAME_FUNC_OFFSET(23084, glIsEnabledIndexedEXT, glIsEnabledIndexedEXT, NULL, 875), - NAME_FUNC_OFFSET(23097, glGetTexParameterIivEXT, glGetTexParameterIivEXT, NULL, 878), - NAME_FUNC_OFFSET(23118, glGetTexParameterIuivEXT, glGetTexParameterIuivEXT, NULL, 879), - NAME_FUNC_OFFSET(23140, glTexParameterIivEXT, glTexParameterIivEXT, NULL, 880), - NAME_FUNC_OFFSET(23158, glTexParameterIuivEXT, glTexParameterIuivEXT, NULL, 881), - NAME_FUNC_OFFSET(23177, glBeginConditionalRenderNV, glBeginConditionalRenderNV, NULL, 882), - NAME_FUNC_OFFSET(23202, glEndConditionalRenderNV, glEndConditionalRenderNV, NULL, 883), - NAME_FUNC_OFFSET(23225, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, 884), - NAME_FUNC_OFFSET(23250, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, 885), - NAME_FUNC_OFFSET(23267, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, 887), - NAME_FUNC_OFFSET(23285, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, 888), - NAME_FUNC_OFFSET(23308, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, 889), - NAME_FUNC_OFFSET(23338, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, 890), - NAME_FUNC_OFFSET(23366, glProvokingVertexEXT, glProvokingVertexEXT, NULL, 891), + NAME_FUNC_OFFSET(10266, glGetGraphicsResetStatusARB, glGetGraphicsResetStatusARB, NULL, 626), + NAME_FUNC_OFFSET(10294, glGetnColorTableARB, glGetnColorTableARB, NULL, 627), + NAME_FUNC_OFFSET(10314, glGetnCompressedTexImageARB, glGetnCompressedTexImageARB, NULL, 628), + NAME_FUNC_OFFSET(10342, glGetnConvolutionFilterARB, glGetnConvolutionFilterARB, NULL, 629), + NAME_FUNC_OFFSET(10369, glGetnHistogramARB, glGetnHistogramARB, NULL, 630), + NAME_FUNC_OFFSET(10388, glGetnMapdvARB, glGetnMapdvARB, NULL, 631), + NAME_FUNC_OFFSET(10403, glGetnMapfvARB, glGetnMapfvARB, NULL, 632), + NAME_FUNC_OFFSET(10418, glGetnMapivARB, glGetnMapivARB, NULL, 633), + NAME_FUNC_OFFSET(10433, glGetnMinmaxARB, glGetnMinmaxARB, NULL, 634), + NAME_FUNC_OFFSET(10449, glGetnPixelMapfvARB, glGetnPixelMapfvARB, NULL, 635), + NAME_FUNC_OFFSET(10469, glGetnPixelMapuivARB, glGetnPixelMapuivARB, NULL, 636), + NAME_FUNC_OFFSET(10490, glGetnPixelMapusvARB, glGetnPixelMapusvARB, NULL, 637), + NAME_FUNC_OFFSET(10511, glGetnPolygonStippleARB, glGetnPolygonStippleARB, NULL, 638), + NAME_FUNC_OFFSET(10535, glGetnSeparableFilterARB, glGetnSeparableFilterARB, NULL, 639), + NAME_FUNC_OFFSET(10560, glGetnTexImageARB, glGetnTexImageARB, NULL, 640), + NAME_FUNC_OFFSET(10578, glGetnUniformdvARB, glGetnUniformdvARB, NULL, 641), + NAME_FUNC_OFFSET(10597, glGetnUniformfvARB, glGetnUniformfvARB, NULL, 642), + NAME_FUNC_OFFSET(10616, glGetnUniformivARB, glGetnUniformivARB, NULL, 643), + NAME_FUNC_OFFSET(10635, glGetnUniformuivARB, glGetnUniformuivARB, NULL, 644), + NAME_FUNC_OFFSET(10655, glReadnPixelsARB, glReadnPixelsARB, NULL, 645), + NAME_FUNC_OFFSET(10672, glPolygonOffsetEXT, glPolygonOffsetEXT, NULL, 646), + NAME_FUNC_OFFSET(10691, gl_dispatch_stub_647, gl_dispatch_stub_647, NULL, 647), + NAME_FUNC_OFFSET(10723, gl_dispatch_stub_648, gl_dispatch_stub_648, NULL, 648), + NAME_FUNC_OFFSET(10755, gl_dispatch_stub_649, gl_dispatch_stub_649, NULL, 649), + NAME_FUNC_OFFSET(10783, gl_dispatch_stub_650, gl_dispatch_stub_650, NULL, 650), + NAME_FUNC_OFFSET(10812, gl_dispatch_stub_651, gl_dispatch_stub_651, NULL, 651), + NAME_FUNC_OFFSET(10840, gl_dispatch_stub_652, gl_dispatch_stub_652, NULL, 652), + NAME_FUNC_OFFSET(10869, gl_dispatch_stub_653, gl_dispatch_stub_653, NULL, 653), + NAME_FUNC_OFFSET(10886, gl_dispatch_stub_654, gl_dispatch_stub_654, NULL, 654), + NAME_FUNC_OFFSET(10906, glColorPointerEXT, glColorPointerEXT, NULL, 655), + NAME_FUNC_OFFSET(10924, glEdgeFlagPointerEXT, glEdgeFlagPointerEXT, NULL, 656), + NAME_FUNC_OFFSET(10945, glIndexPointerEXT, glIndexPointerEXT, NULL, 657), + NAME_FUNC_OFFSET(10963, glNormalPointerEXT, glNormalPointerEXT, NULL, 658), + NAME_FUNC_OFFSET(10982, glTexCoordPointerEXT, glTexCoordPointerEXT, NULL, 659), + NAME_FUNC_OFFSET(11003, glVertexPointerEXT, glVertexPointerEXT, NULL, 660), + NAME_FUNC_OFFSET(11022, glPointParameterfEXT, glPointParameterfEXT, NULL, 661), + NAME_FUNC_OFFSET(11043, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 662), + NAME_FUNC_OFFSET(11065, glLockArraysEXT, glLockArraysEXT, NULL, 663), + NAME_FUNC_OFFSET(11081, glUnlockArraysEXT, glUnlockArraysEXT, NULL, 664), + NAME_FUNC_OFFSET(11099, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, 665), + NAME_FUNC_OFFSET(11121, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, 666), + NAME_FUNC_OFFSET(11144, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, 667), + NAME_FUNC_OFFSET(11166, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, 668), + NAME_FUNC_OFFSET(11189, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, 669), + NAME_FUNC_OFFSET(11211, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, 670), + NAME_FUNC_OFFSET(11234, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, 671), + NAME_FUNC_OFFSET(11256, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, 672), + NAME_FUNC_OFFSET(11279, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, 673), + NAME_FUNC_OFFSET(11301, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, 674), + NAME_FUNC_OFFSET(11324, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, 675), + NAME_FUNC_OFFSET(11347, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, 676), + NAME_FUNC_OFFSET(11371, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, 677), + NAME_FUNC_OFFSET(11394, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, 678), + NAME_FUNC_OFFSET(11418, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, 679), + NAME_FUNC_OFFSET(11441, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, 680), + NAME_FUNC_OFFSET(11465, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, 681), + NAME_FUNC_OFFSET(11492, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, 682), + NAME_FUNC_OFFSET(11513, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, 683), + NAME_FUNC_OFFSET(11536, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, 684), + NAME_FUNC_OFFSET(11557, glFogCoorddEXT, glFogCoorddEXT, NULL, 685), + NAME_FUNC_OFFSET(11572, glFogCoorddvEXT, glFogCoorddvEXT, NULL, 686), + NAME_FUNC_OFFSET(11588, glFogCoordfEXT, glFogCoordfEXT, NULL, 687), + NAME_FUNC_OFFSET(11603, glFogCoordfvEXT, glFogCoordfvEXT, NULL, 688), + NAME_FUNC_OFFSET(11619, gl_dispatch_stub_689, gl_dispatch_stub_689, NULL, 689), + NAME_FUNC_OFFSET(11637, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 690), + NAME_FUNC_OFFSET(11660, glFlushVertexArrayRangeNV, glFlushVertexArrayRangeNV, NULL, 691), + NAME_FUNC_OFFSET(11686, glVertexArrayRangeNV, glVertexArrayRangeNV, NULL, 692), + NAME_FUNC_OFFSET(11707, glCombinerInputNV, glCombinerInputNV, NULL, 693), + NAME_FUNC_OFFSET(11725, glCombinerOutputNV, glCombinerOutputNV, NULL, 694), + NAME_FUNC_OFFSET(11744, glCombinerParameterfNV, glCombinerParameterfNV, NULL, 695), + NAME_FUNC_OFFSET(11767, glCombinerParameterfvNV, glCombinerParameterfvNV, NULL, 696), + NAME_FUNC_OFFSET(11791, glCombinerParameteriNV, glCombinerParameteriNV, NULL, 697), + NAME_FUNC_OFFSET(11814, glCombinerParameterivNV, glCombinerParameterivNV, NULL, 698), + NAME_FUNC_OFFSET(11838, glFinalCombinerInputNV, glFinalCombinerInputNV, NULL, 699), + NAME_FUNC_OFFSET(11861, glGetCombinerInputParameterfvNV, glGetCombinerInputParameterfvNV, NULL, 700), + NAME_FUNC_OFFSET(11893, glGetCombinerInputParameterivNV, glGetCombinerInputParameterivNV, NULL, 701), + NAME_FUNC_OFFSET(11925, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterfvNV, NULL, 702), + NAME_FUNC_OFFSET(11958, glGetCombinerOutputParameterivNV, glGetCombinerOutputParameterivNV, NULL, 703), + NAME_FUNC_OFFSET(11991, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterfvNV, NULL, 704), + NAME_FUNC_OFFSET(12028, glGetFinalCombinerInputParameterivNV, glGetFinalCombinerInputParameterivNV, NULL, 705), + NAME_FUNC_OFFSET(12065, glResizeBuffersMESA, glResizeBuffersMESA, NULL, 706), + NAME_FUNC_OFFSET(12085, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 707), + NAME_FUNC_OFFSET(12103, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 708), + NAME_FUNC_OFFSET(12122, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 709), + NAME_FUNC_OFFSET(12140, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 710), + NAME_FUNC_OFFSET(12159, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 711), + NAME_FUNC_OFFSET(12177, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 712), + NAME_FUNC_OFFSET(12196, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 713), + NAME_FUNC_OFFSET(12214, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 714), + NAME_FUNC_OFFSET(12233, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 715), + NAME_FUNC_OFFSET(12251, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 716), + NAME_FUNC_OFFSET(12270, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 717), + NAME_FUNC_OFFSET(12288, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 718), + NAME_FUNC_OFFSET(12307, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 719), + NAME_FUNC_OFFSET(12325, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 720), + NAME_FUNC_OFFSET(12344, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 721), + NAME_FUNC_OFFSET(12362, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 722), + NAME_FUNC_OFFSET(12381, glWindowPos4dMESA, glWindowPos4dMESA, NULL, 723), + NAME_FUNC_OFFSET(12399, glWindowPos4dvMESA, glWindowPos4dvMESA, NULL, 724), + NAME_FUNC_OFFSET(12418, glWindowPos4fMESA, glWindowPos4fMESA, NULL, 725), + NAME_FUNC_OFFSET(12436, glWindowPos4fvMESA, glWindowPos4fvMESA, NULL, 726), + NAME_FUNC_OFFSET(12455, glWindowPos4iMESA, glWindowPos4iMESA, NULL, 727), + NAME_FUNC_OFFSET(12473, glWindowPos4ivMESA, glWindowPos4ivMESA, NULL, 728), + NAME_FUNC_OFFSET(12492, glWindowPos4sMESA, glWindowPos4sMESA, NULL, 729), + NAME_FUNC_OFFSET(12510, glWindowPos4svMESA, glWindowPos4svMESA, NULL, 730), + NAME_FUNC_OFFSET(12529, gl_dispatch_stub_731, gl_dispatch_stub_731, NULL, 731), + NAME_FUNC_OFFSET(12554, gl_dispatch_stub_732, gl_dispatch_stub_732, NULL, 732), + NAME_FUNC_OFFSET(12581, gl_dispatch_stub_733, gl_dispatch_stub_733, NULL, 733), + NAME_FUNC_OFFSET(12598, gl_dispatch_stub_734, gl_dispatch_stub_734, NULL, 734), + NAME_FUNC_OFFSET(12614, gl_dispatch_stub_735, gl_dispatch_stub_735, NULL, 735), + NAME_FUNC_OFFSET(12628, gl_dispatch_stub_736, gl_dispatch_stub_736, NULL, 736), + NAME_FUNC_OFFSET(12643, gl_dispatch_stub_737, gl_dispatch_stub_737, NULL, 737), + NAME_FUNC_OFFSET(12655, gl_dispatch_stub_738, gl_dispatch_stub_738, NULL, 738), + NAME_FUNC_OFFSET(12668, gl_dispatch_stub_739, gl_dispatch_stub_739, NULL, 739), + NAME_FUNC_OFFSET(12682, glAreProgramsResidentNV, glAreProgramsResidentNV, NULL, 740), + NAME_FUNC_OFFSET(12706, glBindProgramNV, glBindProgramNV, NULL, 741), + NAME_FUNC_OFFSET(12722, glDeleteProgramsNV, glDeleteProgramsNV, NULL, 742), + NAME_FUNC_OFFSET(12741, glExecuteProgramNV, glExecuteProgramNV, NULL, 743), + NAME_FUNC_OFFSET(12760, glGenProgramsNV, glGenProgramsNV, NULL, 744), + NAME_FUNC_OFFSET(12776, glGetProgramParameterdvNV, glGetProgramParameterdvNV, NULL, 745), + NAME_FUNC_OFFSET(12802, glGetProgramParameterfvNV, glGetProgramParameterfvNV, NULL, 746), + NAME_FUNC_OFFSET(12828, glGetProgramStringNV, glGetProgramStringNV, NULL, 747), + NAME_FUNC_OFFSET(12849, glGetProgramivNV, glGetProgramivNV, NULL, 748), + NAME_FUNC_OFFSET(12866, glGetTrackMatrixivNV, glGetTrackMatrixivNV, NULL, 749), + NAME_FUNC_OFFSET(12887, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 750), + NAME_FUNC_OFFSET(12915, glGetVertexAttribdvNV, glGetVertexAttribdvNV, NULL, 751), + NAME_FUNC_OFFSET(12937, glGetVertexAttribfvNV, glGetVertexAttribfvNV, NULL, 752), + NAME_FUNC_OFFSET(12959, glGetVertexAttribivNV, glGetVertexAttribivNV, NULL, 753), + NAME_FUNC_OFFSET(12981, glIsProgramNV, glIsProgramNV, NULL, 754), + NAME_FUNC_OFFSET(12995, glLoadProgramNV, glLoadProgramNV, NULL, 755), + NAME_FUNC_OFFSET(13011, glProgramParameters4dvNV, glProgramParameters4dvNV, NULL, 756), + NAME_FUNC_OFFSET(13036, glProgramParameters4fvNV, glProgramParameters4fvNV, NULL, 757), + NAME_FUNC_OFFSET(13061, glRequestResidentProgramsNV, glRequestResidentProgramsNV, NULL, 758), + NAME_FUNC_OFFSET(13089, glTrackMatrixNV, glTrackMatrixNV, NULL, 759), + NAME_FUNC_OFFSET(13105, glVertexAttrib1dNV, glVertexAttrib1dNV, NULL, 760), + NAME_FUNC_OFFSET(13124, glVertexAttrib1dvNV, glVertexAttrib1dvNV, NULL, 761), + NAME_FUNC_OFFSET(13144, glVertexAttrib1fNV, glVertexAttrib1fNV, NULL, 762), + NAME_FUNC_OFFSET(13163, glVertexAttrib1fvNV, glVertexAttrib1fvNV, NULL, 763), + NAME_FUNC_OFFSET(13183, glVertexAttrib1sNV, glVertexAttrib1sNV, NULL, 764), + NAME_FUNC_OFFSET(13202, glVertexAttrib1svNV, glVertexAttrib1svNV, NULL, 765), + NAME_FUNC_OFFSET(13222, glVertexAttrib2dNV, glVertexAttrib2dNV, NULL, 766), + NAME_FUNC_OFFSET(13241, glVertexAttrib2dvNV, glVertexAttrib2dvNV, NULL, 767), + NAME_FUNC_OFFSET(13261, glVertexAttrib2fNV, glVertexAttrib2fNV, NULL, 768), + NAME_FUNC_OFFSET(13280, glVertexAttrib2fvNV, glVertexAttrib2fvNV, NULL, 769), + NAME_FUNC_OFFSET(13300, glVertexAttrib2sNV, glVertexAttrib2sNV, NULL, 770), + NAME_FUNC_OFFSET(13319, glVertexAttrib2svNV, glVertexAttrib2svNV, NULL, 771), + NAME_FUNC_OFFSET(13339, glVertexAttrib3dNV, glVertexAttrib3dNV, NULL, 772), + NAME_FUNC_OFFSET(13358, glVertexAttrib3dvNV, glVertexAttrib3dvNV, NULL, 773), + NAME_FUNC_OFFSET(13378, glVertexAttrib3fNV, glVertexAttrib3fNV, NULL, 774), + NAME_FUNC_OFFSET(13397, glVertexAttrib3fvNV, glVertexAttrib3fvNV, NULL, 775), + NAME_FUNC_OFFSET(13417, glVertexAttrib3sNV, glVertexAttrib3sNV, NULL, 776), + NAME_FUNC_OFFSET(13436, glVertexAttrib3svNV, glVertexAttrib3svNV, NULL, 777), + NAME_FUNC_OFFSET(13456, glVertexAttrib4dNV, glVertexAttrib4dNV, NULL, 778), + NAME_FUNC_OFFSET(13475, glVertexAttrib4dvNV, glVertexAttrib4dvNV, NULL, 779), + NAME_FUNC_OFFSET(13495, glVertexAttrib4fNV, glVertexAttrib4fNV, NULL, 780), + NAME_FUNC_OFFSET(13514, glVertexAttrib4fvNV, glVertexAttrib4fvNV, NULL, 781), + NAME_FUNC_OFFSET(13534, glVertexAttrib4sNV, glVertexAttrib4sNV, NULL, 782), + NAME_FUNC_OFFSET(13553, glVertexAttrib4svNV, glVertexAttrib4svNV, NULL, 783), + NAME_FUNC_OFFSET(13573, glVertexAttrib4ubNV, glVertexAttrib4ubNV, NULL, 784), + NAME_FUNC_OFFSET(13593, glVertexAttrib4ubvNV, glVertexAttrib4ubvNV, NULL, 785), + NAME_FUNC_OFFSET(13614, glVertexAttribPointerNV, glVertexAttribPointerNV, NULL, 786), + NAME_FUNC_OFFSET(13638, glVertexAttribs1dvNV, glVertexAttribs1dvNV, NULL, 787), + NAME_FUNC_OFFSET(13659, glVertexAttribs1fvNV, glVertexAttribs1fvNV, NULL, 788), + NAME_FUNC_OFFSET(13680, glVertexAttribs1svNV, glVertexAttribs1svNV, NULL, 789), + NAME_FUNC_OFFSET(13701, glVertexAttribs2dvNV, glVertexAttribs2dvNV, NULL, 790), + NAME_FUNC_OFFSET(13722, glVertexAttribs2fvNV, glVertexAttribs2fvNV, NULL, 791), + NAME_FUNC_OFFSET(13743, glVertexAttribs2svNV, glVertexAttribs2svNV, NULL, 792), + NAME_FUNC_OFFSET(13764, glVertexAttribs3dvNV, glVertexAttribs3dvNV, NULL, 793), + NAME_FUNC_OFFSET(13785, glVertexAttribs3fvNV, glVertexAttribs3fvNV, NULL, 794), + NAME_FUNC_OFFSET(13806, glVertexAttribs3svNV, glVertexAttribs3svNV, NULL, 795), + NAME_FUNC_OFFSET(13827, glVertexAttribs4dvNV, glVertexAttribs4dvNV, NULL, 796), + NAME_FUNC_OFFSET(13848, glVertexAttribs4fvNV, glVertexAttribs4fvNV, NULL, 797), + NAME_FUNC_OFFSET(13869, glVertexAttribs4svNV, glVertexAttribs4svNV, NULL, 798), + NAME_FUNC_OFFSET(13890, glVertexAttribs4ubvNV, glVertexAttribs4ubvNV, NULL, 799), + NAME_FUNC_OFFSET(13912, glGetTexBumpParameterfvATI, glGetTexBumpParameterfvATI, NULL, 800), + NAME_FUNC_OFFSET(13939, glGetTexBumpParameterivATI, glGetTexBumpParameterivATI, NULL, 801), + NAME_FUNC_OFFSET(13966, glTexBumpParameterfvATI, glTexBumpParameterfvATI, NULL, 802), + NAME_FUNC_OFFSET(13990, glTexBumpParameterivATI, glTexBumpParameterivATI, NULL, 803), + NAME_FUNC_OFFSET(14014, glAlphaFragmentOp1ATI, glAlphaFragmentOp1ATI, NULL, 804), + NAME_FUNC_OFFSET(14036, glAlphaFragmentOp2ATI, glAlphaFragmentOp2ATI, NULL, 805), + NAME_FUNC_OFFSET(14058, glAlphaFragmentOp3ATI, glAlphaFragmentOp3ATI, NULL, 806), + NAME_FUNC_OFFSET(14080, glBeginFragmentShaderATI, glBeginFragmentShaderATI, NULL, 807), + NAME_FUNC_OFFSET(14105, glBindFragmentShaderATI, glBindFragmentShaderATI, NULL, 808), + NAME_FUNC_OFFSET(14129, glColorFragmentOp1ATI, glColorFragmentOp1ATI, NULL, 809), + NAME_FUNC_OFFSET(14151, glColorFragmentOp2ATI, glColorFragmentOp2ATI, NULL, 810), + NAME_FUNC_OFFSET(14173, glColorFragmentOp3ATI, glColorFragmentOp3ATI, NULL, 811), + NAME_FUNC_OFFSET(14195, glDeleteFragmentShaderATI, glDeleteFragmentShaderATI, NULL, 812), + NAME_FUNC_OFFSET(14221, glEndFragmentShaderATI, glEndFragmentShaderATI, NULL, 813), + NAME_FUNC_OFFSET(14244, glGenFragmentShadersATI, glGenFragmentShadersATI, NULL, 814), + NAME_FUNC_OFFSET(14268, glPassTexCoordATI, glPassTexCoordATI, NULL, 815), + NAME_FUNC_OFFSET(14286, glSampleMapATI, glSampleMapATI, NULL, 816), + NAME_FUNC_OFFSET(14301, glSetFragmentShaderConstantATI, glSetFragmentShaderConstantATI, NULL, 817), + NAME_FUNC_OFFSET(14332, glPointParameteriNV, glPointParameteriNV, NULL, 818), + NAME_FUNC_OFFSET(14352, glPointParameterivNV, glPointParameterivNV, NULL, 819), + NAME_FUNC_OFFSET(14373, gl_dispatch_stub_820, gl_dispatch_stub_820, NULL, 820), + NAME_FUNC_OFFSET(14396, gl_dispatch_stub_821, gl_dispatch_stub_821, NULL, 821), + NAME_FUNC_OFFSET(14419, gl_dispatch_stub_822, gl_dispatch_stub_822, NULL, 822), + NAME_FUNC_OFFSET(14445, gl_dispatch_stub_823, gl_dispatch_stub_823, NULL, 823), + NAME_FUNC_OFFSET(14468, gl_dispatch_stub_824, gl_dispatch_stub_824, NULL, 824), + NAME_FUNC_OFFSET(14489, glGetProgramNamedParameterdvNV, glGetProgramNamedParameterdvNV, NULL, 825), + NAME_FUNC_OFFSET(14520, glGetProgramNamedParameterfvNV, glGetProgramNamedParameterfvNV, NULL, 826), + NAME_FUNC_OFFSET(14551, glProgramNamedParameter4dNV, glProgramNamedParameter4dNV, NULL, 827), + NAME_FUNC_OFFSET(14579, glProgramNamedParameter4dvNV, glProgramNamedParameter4dvNV, NULL, 828), + NAME_FUNC_OFFSET(14608, glProgramNamedParameter4fNV, glProgramNamedParameter4fNV, NULL, 829), + NAME_FUNC_OFFSET(14636, glProgramNamedParameter4fvNV, glProgramNamedParameter4fvNV, NULL, 830), + NAME_FUNC_OFFSET(14665, glPrimitiveRestartIndexNV, glPrimitiveRestartIndexNV, NULL, 831), + NAME_FUNC_OFFSET(14691, glPrimitiveRestartNV, glPrimitiveRestartNV, NULL, 832), + NAME_FUNC_OFFSET(14712, gl_dispatch_stub_833, gl_dispatch_stub_833, NULL, 833), + NAME_FUNC_OFFSET(14729, gl_dispatch_stub_834, gl_dispatch_stub_834, NULL, 834), + NAME_FUNC_OFFSET(14756, glBindFramebufferEXT, glBindFramebufferEXT, NULL, 835), + NAME_FUNC_OFFSET(14777, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, 836), + NAME_FUNC_OFFSET(14799, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, 837), + NAME_FUNC_OFFSET(14827, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, 838), + NAME_FUNC_OFFSET(14851, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, 839), + NAME_FUNC_OFFSET(14876, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, 840), + NAME_FUNC_OFFSET(14905, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, 841), + NAME_FUNC_OFFSET(14931, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, 842), + NAME_FUNC_OFFSET(14957, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, 843), + NAME_FUNC_OFFSET(14983, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, 844), + NAME_FUNC_OFFSET(15004, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, 845), + NAME_FUNC_OFFSET(15026, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, 846), + NAME_FUNC_OFFSET(15046, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, 847), + NAME_FUNC_OFFSET(15087, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, 848), + NAME_FUNC_OFFSET(15119, glIsFramebufferEXT, glIsFramebufferEXT, NULL, 849), + NAME_FUNC_OFFSET(15138, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, 850), + NAME_FUNC_OFFSET(15158, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, 851), + NAME_FUNC_OFFSET(15183, gl_dispatch_stub_852, gl_dispatch_stub_852, NULL, 852), + NAME_FUNC_OFFSET(15204, gl_dispatch_stub_853, gl_dispatch_stub_853, NULL, 853), + NAME_FUNC_OFFSET(15228, gl_dispatch_stub_854, gl_dispatch_stub_854, NULL, 854), + NAME_FUNC_OFFSET(15258, glBindFragDataLocationEXT, glBindFragDataLocationEXT, NULL, 855), + NAME_FUNC_OFFSET(15284, glGetFragDataLocationEXT, glGetFragDataLocationEXT, NULL, 856), + NAME_FUNC_OFFSET(15309, glGetUniformuivEXT, glGetUniformuivEXT, NULL, 857), + NAME_FUNC_OFFSET(15328, glGetVertexAttribIivEXT, glGetVertexAttribIivEXT, NULL, 858), + NAME_FUNC_OFFSET(15352, glGetVertexAttribIuivEXT, glGetVertexAttribIuivEXT, NULL, 859), + NAME_FUNC_OFFSET(15377, glUniform1uiEXT, glUniform1uiEXT, NULL, 860), + NAME_FUNC_OFFSET(15393, glUniform1uivEXT, glUniform1uivEXT, NULL, 861), + NAME_FUNC_OFFSET(15410, glUniform2uiEXT, glUniform2uiEXT, NULL, 862), + NAME_FUNC_OFFSET(15426, glUniform2uivEXT, glUniform2uivEXT, NULL, 863), + NAME_FUNC_OFFSET(15443, glUniform3uiEXT, glUniform3uiEXT, NULL, 864), + NAME_FUNC_OFFSET(15459, glUniform3uivEXT, glUniform3uivEXT, NULL, 865), + NAME_FUNC_OFFSET(15476, glUniform4uiEXT, glUniform4uiEXT, NULL, 866), + NAME_FUNC_OFFSET(15492, glUniform4uivEXT, glUniform4uivEXT, NULL, 867), + NAME_FUNC_OFFSET(15509, glVertexAttribI1iEXT, glVertexAttribI1iEXT, NULL, 868), + NAME_FUNC_OFFSET(15530, glVertexAttribI1ivEXT, glVertexAttribI1ivEXT, NULL, 869), + NAME_FUNC_OFFSET(15552, glVertexAttribI1uiEXT, glVertexAttribI1uiEXT, NULL, 870), + NAME_FUNC_OFFSET(15574, glVertexAttribI1uivEXT, glVertexAttribI1uivEXT, NULL, 871), + NAME_FUNC_OFFSET(15597, glVertexAttribI2iEXT, glVertexAttribI2iEXT, NULL, 872), + NAME_FUNC_OFFSET(15618, glVertexAttribI2ivEXT, glVertexAttribI2ivEXT, NULL, 873), + NAME_FUNC_OFFSET(15640, glVertexAttribI2uiEXT, glVertexAttribI2uiEXT, NULL, 874), + NAME_FUNC_OFFSET(15662, glVertexAttribI2uivEXT, glVertexAttribI2uivEXT, NULL, 875), + NAME_FUNC_OFFSET(15685, glVertexAttribI3iEXT, glVertexAttribI3iEXT, NULL, 876), + NAME_FUNC_OFFSET(15706, glVertexAttribI3ivEXT, glVertexAttribI3ivEXT, NULL, 877), + NAME_FUNC_OFFSET(15728, glVertexAttribI3uiEXT, glVertexAttribI3uiEXT, NULL, 878), + NAME_FUNC_OFFSET(15750, glVertexAttribI3uivEXT, glVertexAttribI3uivEXT, NULL, 879), + NAME_FUNC_OFFSET(15773, glVertexAttribI4bvEXT, glVertexAttribI4bvEXT, NULL, 880), + NAME_FUNC_OFFSET(15795, glVertexAttribI4iEXT, glVertexAttribI4iEXT, NULL, 881), + NAME_FUNC_OFFSET(15816, glVertexAttribI4ivEXT, glVertexAttribI4ivEXT, NULL, 882), + NAME_FUNC_OFFSET(15838, glVertexAttribI4svEXT, glVertexAttribI4svEXT, NULL, 883), + NAME_FUNC_OFFSET(15860, glVertexAttribI4ubvEXT, glVertexAttribI4ubvEXT, NULL, 884), + NAME_FUNC_OFFSET(15883, glVertexAttribI4uiEXT, glVertexAttribI4uiEXT, NULL, 885), + NAME_FUNC_OFFSET(15905, glVertexAttribI4uivEXT, glVertexAttribI4uivEXT, NULL, 886), + NAME_FUNC_OFFSET(15928, glVertexAttribI4usvEXT, glVertexAttribI4usvEXT, NULL, 887), + NAME_FUNC_OFFSET(15951, glVertexAttribIPointerEXT, glVertexAttribIPointerEXT, NULL, 888), + NAME_FUNC_OFFSET(15977, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, 889), + NAME_FUNC_OFFSET(16006, glColorMaskIndexedEXT, glColorMaskIndexedEXT, NULL, 890), + NAME_FUNC_OFFSET(16028, glDisableIndexedEXT, glDisableIndexedEXT, NULL, 891), + NAME_FUNC_OFFSET(16048, glEnableIndexedEXT, glEnableIndexedEXT, NULL, 892), + NAME_FUNC_OFFSET(16067, glGetBooleanIndexedvEXT, glGetBooleanIndexedvEXT, NULL, 893), + NAME_FUNC_OFFSET(16091, glGetIntegerIndexedvEXT, glGetIntegerIndexedvEXT, NULL, 894), + NAME_FUNC_OFFSET(16115, glIsEnabledIndexedEXT, glIsEnabledIndexedEXT, NULL, 895), + NAME_FUNC_OFFSET(16137, glClearColorIiEXT, glClearColorIiEXT, NULL, 896), + NAME_FUNC_OFFSET(16155, glClearColorIuiEXT, glClearColorIuiEXT, NULL, 897), + NAME_FUNC_OFFSET(16174, glGetTexParameterIivEXT, glGetTexParameterIivEXT, NULL, 898), + NAME_FUNC_OFFSET(16198, glGetTexParameterIuivEXT, glGetTexParameterIuivEXT, NULL, 899), + NAME_FUNC_OFFSET(16223, glTexParameterIivEXT, glTexParameterIivEXT, NULL, 900), + NAME_FUNC_OFFSET(16244, glTexParameterIuivEXT, glTexParameterIuivEXT, NULL, 901), + NAME_FUNC_OFFSET(16266, glBeginConditionalRenderNV, glBeginConditionalRenderNV, NULL, 902), + NAME_FUNC_OFFSET(16293, glEndConditionalRenderNV, glEndConditionalRenderNV, NULL, 903), + NAME_FUNC_OFFSET(16318, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, 904), + NAME_FUNC_OFFSET(16346, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, 905), + NAME_FUNC_OFFSET(16366, glBindBufferOffsetEXT, glBindBufferOffsetEXT, NULL, 906), + NAME_FUNC_OFFSET(16388, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, 907), + NAME_FUNC_OFFSET(16409, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, 908), + NAME_FUNC_OFFSET(16435, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, 909), + NAME_FUNC_OFFSET(16468, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, 910), + NAME_FUNC_OFFSET(16499, glProvokingVertexEXT, glProvokingVertexEXT, NULL, 911), + NAME_FUNC_OFFSET(16520, gl_dispatch_stub_912, gl_dispatch_stub_912, NULL, 912), + NAME_FUNC_OFFSET(16551, gl_dispatch_stub_913, gl_dispatch_stub_913, NULL, 913), + NAME_FUNC_OFFSET(16571, glGetObjectParameterivAPPLE, glGetObjectParameterivAPPLE, NULL, 914), + NAME_FUNC_OFFSET(16599, glObjectPurgeableAPPLE, glObjectPurgeableAPPLE, NULL, 915), + NAME_FUNC_OFFSET(16622, glObjectUnpurgeableAPPLE, glObjectUnpurgeableAPPLE, NULL, 916), + NAME_FUNC_OFFSET(16647, glActiveProgramEXT, glActiveProgramEXT, NULL, 917), + NAME_FUNC_OFFSET(16666, glCreateShaderProgramEXT, glCreateShaderProgramEXT, NULL, 918), + NAME_FUNC_OFFSET(16691, glUseShaderProgramEXT, glUseShaderProgramEXT, NULL, 919), + NAME_FUNC_OFFSET(16713, glTextureBarrierNV, glTextureBarrierNV, NULL, 920), + NAME_FUNC_OFFSET(16732, gl_dispatch_stub_921, gl_dispatch_stub_921, NULL, 921), + NAME_FUNC_OFFSET(16757, gl_dispatch_stub_922, gl_dispatch_stub_922, NULL, 922), + NAME_FUNC_OFFSET(16786, gl_dispatch_stub_923, gl_dispatch_stub_923, NULL, 923), + NAME_FUNC_OFFSET(16817, gl_dispatch_stub_924, gl_dispatch_stub_924, NULL, 924), + NAME_FUNC_OFFSET(16841, gl_dispatch_stub_925, gl_dispatch_stub_925, NULL, 925), + NAME_FUNC_OFFSET(16866, glEGLImageTargetRenderbufferStorageOES, glEGLImageTargetRenderbufferStorageOES, NULL, 926), + NAME_FUNC_OFFSET(16905, glEGLImageTargetTexture2DOES, glEGLImageTargetTexture2DOES, NULL, 927), + NAME_FUNC_OFFSET(16934, glArrayElement, glArrayElement, NULL, 306), + NAME_FUNC_OFFSET(16952, glBindTexture, glBindTexture, NULL, 307), + NAME_FUNC_OFFSET(16969, glDrawArrays, glDrawArrays, NULL, 310), + NAME_FUNC_OFFSET(16985, glAreTexturesResident, glAreTexturesResidentEXT, glAreTexturesResidentEXT, 322), + NAME_FUNC_OFFSET(17010, glCopyTexImage1D, glCopyTexImage1D, NULL, 323), + NAME_FUNC_OFFSET(17030, glCopyTexImage2D, glCopyTexImage2D, NULL, 324), + NAME_FUNC_OFFSET(17050, glCopyTexSubImage1D, glCopyTexSubImage1D, NULL, 325), + NAME_FUNC_OFFSET(17073, glCopyTexSubImage2D, glCopyTexSubImage2D, NULL, 326), + NAME_FUNC_OFFSET(17096, glDeleteTextures, glDeleteTexturesEXT, glDeleteTexturesEXT, 327), + NAME_FUNC_OFFSET(17116, glGenTextures, glGenTexturesEXT, glGenTexturesEXT, 328), + NAME_FUNC_OFFSET(17133, glGetPointerv, glGetPointerv, NULL, 329), + NAME_FUNC_OFFSET(17150, glIsTexture, glIsTextureEXT, glIsTextureEXT, 330), + NAME_FUNC_OFFSET(17165, glPrioritizeTextures, glPrioritizeTextures, NULL, 331), + NAME_FUNC_OFFSET(17189, glTexSubImage1D, glTexSubImage1D, NULL, 332), + NAME_FUNC_OFFSET(17208, glTexSubImage2D, glTexSubImage2D, NULL, 333), + NAME_FUNC_OFFSET(17227, glBlendColor, glBlendColor, NULL, 336), + NAME_FUNC_OFFSET(17243, glBlendEquation, glBlendEquation, NULL, 337), + NAME_FUNC_OFFSET(17262, glDrawRangeElements, glDrawRangeElements, NULL, 338), + NAME_FUNC_OFFSET(17285, glColorTable, glColorTable, NULL, 339), + NAME_FUNC_OFFSET(17301, glColorTable, glColorTable, NULL, 339), + NAME_FUNC_OFFSET(17317, glColorTableParameterfv, glColorTableParameterfv, NULL, 340), + NAME_FUNC_OFFSET(17344, glColorTableParameteriv, glColorTableParameteriv, NULL, 341), + NAME_FUNC_OFFSET(17371, glCopyColorTable, glCopyColorTable, NULL, 342), + NAME_FUNC_OFFSET(17391, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, 343), + NAME_FUNC_OFFSET(17410, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, 343), + NAME_FUNC_OFFSET(17429, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, 344), + NAME_FUNC_OFFSET(17459, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, 344), + NAME_FUNC_OFFSET(17489, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, 345), + NAME_FUNC_OFFSET(17519, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, 345), + NAME_FUNC_OFFSET(17549, glColorSubTable, glColorSubTable, NULL, 346), + NAME_FUNC_OFFSET(17568, glCopyColorSubTable, glCopyColorSubTable, NULL, 347), + NAME_FUNC_OFFSET(17591, glConvolutionFilter1D, glConvolutionFilter1D, NULL, 348), + NAME_FUNC_OFFSET(17616, glConvolutionFilter2D, glConvolutionFilter2D, NULL, 349), + NAME_FUNC_OFFSET(17641, glConvolutionParameterf, glConvolutionParameterf, NULL, 350), + NAME_FUNC_OFFSET(17668, glConvolutionParameterfv, glConvolutionParameterfv, NULL, 351), + NAME_FUNC_OFFSET(17696, glConvolutionParameteri, glConvolutionParameteri, NULL, 352), + NAME_FUNC_OFFSET(17723, glConvolutionParameteriv, glConvolutionParameteriv, NULL, 353), + NAME_FUNC_OFFSET(17751, glCopyConvolutionFilter1D, glCopyConvolutionFilter1D, NULL, 354), + NAME_FUNC_OFFSET(17780, glCopyConvolutionFilter2D, glCopyConvolutionFilter2D, NULL, 355), + NAME_FUNC_OFFSET(17809, glGetConvolutionFilter, gl_dispatch_stub_356, gl_dispatch_stub_356, 356), + NAME_FUNC_OFFSET(17835, glGetConvolutionParameterfv, gl_dispatch_stub_357, gl_dispatch_stub_357, 357), + NAME_FUNC_OFFSET(17866, glGetConvolutionParameteriv, gl_dispatch_stub_358, gl_dispatch_stub_358, 358), + NAME_FUNC_OFFSET(17897, glGetSeparableFilter, gl_dispatch_stub_359, gl_dispatch_stub_359, 359), + NAME_FUNC_OFFSET(17921, glSeparableFilter2D, glSeparableFilter2D, NULL, 360), + NAME_FUNC_OFFSET(17944, glGetHistogram, gl_dispatch_stub_361, gl_dispatch_stub_361, 361), + NAME_FUNC_OFFSET(17962, glGetHistogramParameterfv, gl_dispatch_stub_362, gl_dispatch_stub_362, 362), + NAME_FUNC_OFFSET(17991, glGetHistogramParameteriv, gl_dispatch_stub_363, gl_dispatch_stub_363, 363), + NAME_FUNC_OFFSET(18020, glGetMinmax, gl_dispatch_stub_364, gl_dispatch_stub_364, 364), + NAME_FUNC_OFFSET(18035, glGetMinmaxParameterfv, gl_dispatch_stub_365, gl_dispatch_stub_365, 365), + NAME_FUNC_OFFSET(18061, glGetMinmaxParameteriv, gl_dispatch_stub_366, gl_dispatch_stub_366, 366), + NAME_FUNC_OFFSET(18087, glHistogram, glHistogram, NULL, 367), + NAME_FUNC_OFFSET(18102, glMinmax, glMinmax, NULL, 368), + NAME_FUNC_OFFSET(18114, glResetHistogram, glResetHistogram, NULL, 369), + NAME_FUNC_OFFSET(18134, glResetMinmax, glResetMinmax, NULL, 370), + NAME_FUNC_OFFSET(18151, glTexImage3D, glTexImage3D, NULL, 371), + NAME_FUNC_OFFSET(18167, glTexSubImage3D, glTexSubImage3D, NULL, 372), + NAME_FUNC_OFFSET(18186, glCopyTexSubImage3D, glCopyTexSubImage3D, NULL, 373), + NAME_FUNC_OFFSET(18209, glActiveTextureARB, glActiveTextureARB, NULL, 374), + NAME_FUNC_OFFSET(18225, glClientActiveTextureARB, glClientActiveTextureARB, NULL, 375), + NAME_FUNC_OFFSET(18247, glMultiTexCoord1dARB, glMultiTexCoord1dARB, NULL, 376), + NAME_FUNC_OFFSET(18265, glMultiTexCoord1dvARB, glMultiTexCoord1dvARB, NULL, 377), + NAME_FUNC_OFFSET(18284, glMultiTexCoord1fARB, glMultiTexCoord1fARB, NULL, 378), + NAME_FUNC_OFFSET(18302, glMultiTexCoord1fvARB, glMultiTexCoord1fvARB, NULL, 379), + NAME_FUNC_OFFSET(18321, glMultiTexCoord1iARB, glMultiTexCoord1iARB, NULL, 380), + NAME_FUNC_OFFSET(18339, glMultiTexCoord1ivARB, glMultiTexCoord1ivARB, NULL, 381), + NAME_FUNC_OFFSET(18358, glMultiTexCoord1sARB, glMultiTexCoord1sARB, NULL, 382), + NAME_FUNC_OFFSET(18376, glMultiTexCoord1svARB, glMultiTexCoord1svARB, NULL, 383), + NAME_FUNC_OFFSET(18395, glMultiTexCoord2dARB, glMultiTexCoord2dARB, NULL, 384), + NAME_FUNC_OFFSET(18413, glMultiTexCoord2dvARB, glMultiTexCoord2dvARB, NULL, 385), + NAME_FUNC_OFFSET(18432, glMultiTexCoord2fARB, glMultiTexCoord2fARB, NULL, 386), + NAME_FUNC_OFFSET(18450, glMultiTexCoord2fvARB, glMultiTexCoord2fvARB, NULL, 387), + NAME_FUNC_OFFSET(18469, glMultiTexCoord2iARB, glMultiTexCoord2iARB, NULL, 388), + NAME_FUNC_OFFSET(18487, glMultiTexCoord2ivARB, glMultiTexCoord2ivARB, NULL, 389), + NAME_FUNC_OFFSET(18506, glMultiTexCoord2sARB, glMultiTexCoord2sARB, NULL, 390), + NAME_FUNC_OFFSET(18524, glMultiTexCoord2svARB, glMultiTexCoord2svARB, NULL, 391), + NAME_FUNC_OFFSET(18543, glMultiTexCoord3dARB, glMultiTexCoord3dARB, NULL, 392), + NAME_FUNC_OFFSET(18561, glMultiTexCoord3dvARB, glMultiTexCoord3dvARB, NULL, 393), + NAME_FUNC_OFFSET(18580, glMultiTexCoord3fARB, glMultiTexCoord3fARB, NULL, 394), + NAME_FUNC_OFFSET(18598, glMultiTexCoord3fvARB, glMultiTexCoord3fvARB, NULL, 395), + NAME_FUNC_OFFSET(18617, glMultiTexCoord3iARB, glMultiTexCoord3iARB, NULL, 396), + NAME_FUNC_OFFSET(18635, glMultiTexCoord3ivARB, glMultiTexCoord3ivARB, NULL, 397), + NAME_FUNC_OFFSET(18654, glMultiTexCoord3sARB, glMultiTexCoord3sARB, NULL, 398), + NAME_FUNC_OFFSET(18672, glMultiTexCoord3svARB, glMultiTexCoord3svARB, NULL, 399), + NAME_FUNC_OFFSET(18691, glMultiTexCoord4dARB, glMultiTexCoord4dARB, NULL, 400), + NAME_FUNC_OFFSET(18709, glMultiTexCoord4dvARB, glMultiTexCoord4dvARB, NULL, 401), + NAME_FUNC_OFFSET(18728, glMultiTexCoord4fARB, glMultiTexCoord4fARB, NULL, 402), + NAME_FUNC_OFFSET(18746, glMultiTexCoord4fvARB, glMultiTexCoord4fvARB, NULL, 403), + NAME_FUNC_OFFSET(18765, glMultiTexCoord4iARB, glMultiTexCoord4iARB, NULL, 404), + NAME_FUNC_OFFSET(18783, glMultiTexCoord4ivARB, glMultiTexCoord4ivARB, NULL, 405), + NAME_FUNC_OFFSET(18802, glMultiTexCoord4sARB, glMultiTexCoord4sARB, NULL, 406), + NAME_FUNC_OFFSET(18820, glMultiTexCoord4svARB, glMultiTexCoord4svARB, NULL, 407), + NAME_FUNC_OFFSET(18839, glStencilOpSeparate, glStencilOpSeparate, NULL, 423), + NAME_FUNC_OFFSET(18862, glLoadTransposeMatrixdARB, glLoadTransposeMatrixdARB, NULL, 441), + NAME_FUNC_OFFSET(18885, glLoadTransposeMatrixfARB, glLoadTransposeMatrixfARB, NULL, 442), + NAME_FUNC_OFFSET(18908, glMultTransposeMatrixdARB, glMultTransposeMatrixdARB, NULL, 443), + NAME_FUNC_OFFSET(18931, glMultTransposeMatrixfARB, glMultTransposeMatrixfARB, NULL, 444), + NAME_FUNC_OFFSET(18954, glSampleCoverageARB, glSampleCoverageARB, NULL, 445), + NAME_FUNC_OFFSET(18971, glCompressedTexImage1DARB, glCompressedTexImage1DARB, NULL, 446), + NAME_FUNC_OFFSET(18994, glCompressedTexImage2DARB, glCompressedTexImage2DARB, NULL, 447), + NAME_FUNC_OFFSET(19017, glCompressedTexImage3DARB, glCompressedTexImage3DARB, NULL, 448), + NAME_FUNC_OFFSET(19040, glCompressedTexSubImage1DARB, glCompressedTexSubImage1DARB, NULL, 449), + NAME_FUNC_OFFSET(19066, glCompressedTexSubImage2DARB, glCompressedTexSubImage2DARB, NULL, 450), + NAME_FUNC_OFFSET(19092, glCompressedTexSubImage3DARB, glCompressedTexSubImage3DARB, NULL, 451), + NAME_FUNC_OFFSET(19118, glGetCompressedTexImageARB, glGetCompressedTexImageARB, NULL, 452), + NAME_FUNC_OFFSET(19142, glDisableVertexAttribArrayARB, glDisableVertexAttribArrayARB, NULL, 453), + NAME_FUNC_OFFSET(19169, glEnableVertexAttribArrayARB, glEnableVertexAttribArrayARB, NULL, 454), + NAME_FUNC_OFFSET(19195, glGetVertexAttribdvARB, glGetVertexAttribdvARB, NULL, 461), + NAME_FUNC_OFFSET(19215, glGetVertexAttribfvARB, glGetVertexAttribfvARB, NULL, 462), + NAME_FUNC_OFFSET(19235, glGetVertexAttribivARB, glGetVertexAttribivARB, NULL, 463), + NAME_FUNC_OFFSET(19255, glProgramEnvParameter4dARB, glProgramEnvParameter4dARB, NULL, 464), + NAME_FUNC_OFFSET(19278, glProgramEnvParameter4dvARB, glProgramEnvParameter4dvARB, NULL, 465), + NAME_FUNC_OFFSET(19302, glProgramEnvParameter4fARB, glProgramEnvParameter4fARB, NULL, 466), + NAME_FUNC_OFFSET(19325, glProgramEnvParameter4fvARB, glProgramEnvParameter4fvARB, NULL, 467), + NAME_FUNC_OFFSET(19349, glVertexAttrib1dARB, glVertexAttrib1dARB, NULL, 473), + NAME_FUNC_OFFSET(19366, glVertexAttrib1dvARB, glVertexAttrib1dvARB, NULL, 474), + NAME_FUNC_OFFSET(19384, glVertexAttrib1fARB, glVertexAttrib1fARB, NULL, 475), + NAME_FUNC_OFFSET(19401, glVertexAttrib1fvARB, glVertexAttrib1fvARB, NULL, 476), + NAME_FUNC_OFFSET(19419, glVertexAttrib1sARB, glVertexAttrib1sARB, NULL, 477), + NAME_FUNC_OFFSET(19436, glVertexAttrib1svARB, glVertexAttrib1svARB, NULL, 478), + NAME_FUNC_OFFSET(19454, glVertexAttrib2dARB, glVertexAttrib2dARB, NULL, 479), + NAME_FUNC_OFFSET(19471, glVertexAttrib2dvARB, glVertexAttrib2dvARB, NULL, 480), + NAME_FUNC_OFFSET(19489, glVertexAttrib2fARB, glVertexAttrib2fARB, NULL, 481), + NAME_FUNC_OFFSET(19506, glVertexAttrib2fvARB, glVertexAttrib2fvARB, NULL, 482), + NAME_FUNC_OFFSET(19524, glVertexAttrib2sARB, glVertexAttrib2sARB, NULL, 483), + NAME_FUNC_OFFSET(19541, glVertexAttrib2svARB, glVertexAttrib2svARB, NULL, 484), + NAME_FUNC_OFFSET(19559, glVertexAttrib3dARB, glVertexAttrib3dARB, NULL, 485), + NAME_FUNC_OFFSET(19576, glVertexAttrib3dvARB, glVertexAttrib3dvARB, NULL, 486), + NAME_FUNC_OFFSET(19594, glVertexAttrib3fARB, glVertexAttrib3fARB, NULL, 487), + NAME_FUNC_OFFSET(19611, glVertexAttrib3fvARB, glVertexAttrib3fvARB, NULL, 488), + NAME_FUNC_OFFSET(19629, glVertexAttrib3sARB, glVertexAttrib3sARB, NULL, 489), + NAME_FUNC_OFFSET(19646, glVertexAttrib3svARB, glVertexAttrib3svARB, NULL, 490), + NAME_FUNC_OFFSET(19664, glVertexAttrib4NbvARB, glVertexAttrib4NbvARB, NULL, 491), + NAME_FUNC_OFFSET(19683, glVertexAttrib4NivARB, glVertexAttrib4NivARB, NULL, 492), + NAME_FUNC_OFFSET(19702, glVertexAttrib4NsvARB, glVertexAttrib4NsvARB, NULL, 493), + NAME_FUNC_OFFSET(19721, glVertexAttrib4NubARB, glVertexAttrib4NubARB, NULL, 494), + NAME_FUNC_OFFSET(19740, glVertexAttrib4NubvARB, glVertexAttrib4NubvARB, NULL, 495), + NAME_FUNC_OFFSET(19760, glVertexAttrib4NuivARB, glVertexAttrib4NuivARB, NULL, 496), + NAME_FUNC_OFFSET(19780, glVertexAttrib4NusvARB, glVertexAttrib4NusvARB, NULL, 497), + NAME_FUNC_OFFSET(19800, glVertexAttrib4bvARB, glVertexAttrib4bvARB, NULL, 498), + NAME_FUNC_OFFSET(19818, glVertexAttrib4dARB, glVertexAttrib4dARB, NULL, 499), + NAME_FUNC_OFFSET(19835, glVertexAttrib4dvARB, glVertexAttrib4dvARB, NULL, 500), + NAME_FUNC_OFFSET(19853, glVertexAttrib4fARB, glVertexAttrib4fARB, NULL, 501), + NAME_FUNC_OFFSET(19870, glVertexAttrib4fvARB, glVertexAttrib4fvARB, NULL, 502), + NAME_FUNC_OFFSET(19888, glVertexAttrib4ivARB, glVertexAttrib4ivARB, NULL, 503), + NAME_FUNC_OFFSET(19906, glVertexAttrib4sARB, glVertexAttrib4sARB, NULL, 504), + NAME_FUNC_OFFSET(19923, glVertexAttrib4svARB, glVertexAttrib4svARB, NULL, 505), + NAME_FUNC_OFFSET(19941, glVertexAttrib4ubvARB, glVertexAttrib4ubvARB, NULL, 506), + NAME_FUNC_OFFSET(19960, glVertexAttrib4uivARB, glVertexAttrib4uivARB, NULL, 507), + NAME_FUNC_OFFSET(19979, glVertexAttrib4usvARB, glVertexAttrib4usvARB, NULL, 508), + NAME_FUNC_OFFSET(19998, glVertexAttribPointerARB, glVertexAttribPointerARB, NULL, 509), + NAME_FUNC_OFFSET(20020, glBindBufferARB, glBindBufferARB, NULL, 510), + NAME_FUNC_OFFSET(20033, glBufferDataARB, glBufferDataARB, NULL, 511), + NAME_FUNC_OFFSET(20046, glBufferSubDataARB, glBufferSubDataARB, NULL, 512), + NAME_FUNC_OFFSET(20062, glDeleteBuffersARB, glDeleteBuffersARB, NULL, 513), + NAME_FUNC_OFFSET(20078, glGenBuffersARB, glGenBuffersARB, NULL, 514), + NAME_FUNC_OFFSET(20091, glGetBufferParameterivARB, glGetBufferParameterivARB, NULL, 515), + NAME_FUNC_OFFSET(20114, glGetBufferPointervARB, glGetBufferPointervARB, NULL, 516), + NAME_FUNC_OFFSET(20134, glGetBufferSubDataARB, glGetBufferSubDataARB, NULL, 517), + NAME_FUNC_OFFSET(20153, glIsBufferARB, glIsBufferARB, NULL, 518), + NAME_FUNC_OFFSET(20164, glMapBufferARB, glMapBufferARB, NULL, 519), + NAME_FUNC_OFFSET(20176, glUnmapBufferARB, glUnmapBufferARB, NULL, 520), + NAME_FUNC_OFFSET(20190, glBeginQueryARB, glBeginQueryARB, NULL, 521), + NAME_FUNC_OFFSET(20203, glDeleteQueriesARB, glDeleteQueriesARB, NULL, 522), + NAME_FUNC_OFFSET(20219, glEndQueryARB, glEndQueryARB, NULL, 523), + NAME_FUNC_OFFSET(20230, glGenQueriesARB, glGenQueriesARB, NULL, 524), + NAME_FUNC_OFFSET(20243, glGetQueryObjectivARB, glGetQueryObjectivARB, NULL, 525), + NAME_FUNC_OFFSET(20262, glGetQueryObjectuivARB, glGetQueryObjectuivARB, NULL, 526), + NAME_FUNC_OFFSET(20282, glGetQueryivARB, glGetQueryivARB, NULL, 527), + NAME_FUNC_OFFSET(20295, glIsQueryARB, glIsQueryARB, NULL, 528), + NAME_FUNC_OFFSET(20305, glCompileShaderARB, glCompileShaderARB, NULL, 530), + NAME_FUNC_OFFSET(20321, glGetActiveUniformARB, glGetActiveUniformARB, NULL, 535), + NAME_FUNC_OFFSET(20340, glGetShaderSourceARB, glGetShaderSourceARB, NULL, 541), + NAME_FUNC_OFFSET(20358, glGetUniformLocationARB, glGetUniformLocationARB, NULL, 542), + NAME_FUNC_OFFSET(20379, glGetUniformfvARB, glGetUniformfvARB, NULL, 543), + NAME_FUNC_OFFSET(20394, glGetUniformivARB, glGetUniformivARB, NULL, 544), + NAME_FUNC_OFFSET(20409, glLinkProgramARB, glLinkProgramARB, NULL, 545), + NAME_FUNC_OFFSET(20423, glShaderSourceARB, glShaderSourceARB, NULL, 546), + NAME_FUNC_OFFSET(20438, glUniform1fARB, glUniform1fARB, NULL, 547), + NAME_FUNC_OFFSET(20450, glUniform1fvARB, glUniform1fvARB, NULL, 548), + NAME_FUNC_OFFSET(20463, glUniform1iARB, glUniform1iARB, NULL, 549), + NAME_FUNC_OFFSET(20475, glUniform1ivARB, glUniform1ivARB, NULL, 550), + NAME_FUNC_OFFSET(20488, glUniform2fARB, glUniform2fARB, NULL, 551), + NAME_FUNC_OFFSET(20500, glUniform2fvARB, glUniform2fvARB, NULL, 552), + NAME_FUNC_OFFSET(20513, glUniform2iARB, glUniform2iARB, NULL, 553), + NAME_FUNC_OFFSET(20525, glUniform2ivARB, glUniform2ivARB, NULL, 554), + NAME_FUNC_OFFSET(20538, glUniform3fARB, glUniform3fARB, NULL, 555), + NAME_FUNC_OFFSET(20550, glUniform3fvARB, glUniform3fvARB, NULL, 556), + NAME_FUNC_OFFSET(20563, glUniform3iARB, glUniform3iARB, NULL, 557), + NAME_FUNC_OFFSET(20575, glUniform3ivARB, glUniform3ivARB, NULL, 558), + NAME_FUNC_OFFSET(20588, glUniform4fARB, glUniform4fARB, NULL, 559), + NAME_FUNC_OFFSET(20600, glUniform4fvARB, glUniform4fvARB, NULL, 560), + NAME_FUNC_OFFSET(20613, glUniform4iARB, glUniform4iARB, NULL, 561), + NAME_FUNC_OFFSET(20625, glUniform4ivARB, glUniform4ivARB, NULL, 562), + NAME_FUNC_OFFSET(20638, glUniformMatrix2fvARB, glUniformMatrix2fvARB, NULL, 563), + NAME_FUNC_OFFSET(20657, glUniformMatrix3fvARB, glUniformMatrix3fvARB, NULL, 564), + NAME_FUNC_OFFSET(20676, glUniformMatrix4fvARB, glUniformMatrix4fvARB, NULL, 565), + NAME_FUNC_OFFSET(20695, glUseProgramObjectARB, glUseProgramObjectARB, NULL, 566), + NAME_FUNC_OFFSET(20708, glValidateProgramARB, glValidateProgramARB, NULL, 567), + NAME_FUNC_OFFSET(20726, glBindAttribLocationARB, glBindAttribLocationARB, NULL, 568), + NAME_FUNC_OFFSET(20747, glGetActiveAttribARB, glGetActiveAttribARB, NULL, 569), + NAME_FUNC_OFFSET(20765, glGetAttribLocationARB, glGetAttribLocationARB, NULL, 570), + NAME_FUNC_OFFSET(20785, glDrawBuffersARB, glDrawBuffersARB, NULL, 571), + NAME_FUNC_OFFSET(20799, glDrawBuffersARB, glDrawBuffersARB, NULL, 571), + NAME_FUNC_OFFSET(20816, glDrawArraysInstancedARB, glDrawArraysInstancedARB, NULL, 573), + NAME_FUNC_OFFSET(20841, glDrawArraysInstancedARB, glDrawArraysInstancedARB, NULL, 573), + NAME_FUNC_OFFSET(20863, glDrawElementsInstancedARB, glDrawElementsInstancedARB, NULL, 574), + NAME_FUNC_OFFSET(20890, glDrawElementsInstancedARB, glDrawElementsInstancedARB, NULL, 574), + NAME_FUNC_OFFSET(20914, glRenderbufferStorageMultisample, glRenderbufferStorageMultisample, NULL, 575), + NAME_FUNC_OFFSET(20950, glBlendEquationSeparateiARB, glBlendEquationSeparateiARB, NULL, 596), + NAME_FUNC_OFFSET(20984, glBlendEquationiARB, glBlendEquationiARB, NULL, 597), + NAME_FUNC_OFFSET(21010, glBlendFuncSeparateiARB, glBlendFuncSeparateiARB, NULL, 598), + NAME_FUNC_OFFSET(21040, glBlendFunciARB, glBlendFunciARB, NULL, 599), + NAME_FUNC_OFFSET(21062, gl_dispatch_stub_653, gl_dispatch_stub_653, NULL, 653), + NAME_FUNC_OFFSET(21078, gl_dispatch_stub_654, gl_dispatch_stub_654, NULL, 654), + NAME_FUNC_OFFSET(21097, glPointParameterfEXT, glPointParameterfEXT, NULL, 661), + NAME_FUNC_OFFSET(21115, glPointParameterfEXT, glPointParameterfEXT, NULL, 661), + NAME_FUNC_OFFSET(21136, glPointParameterfEXT, glPointParameterfEXT, NULL, 661), + NAME_FUNC_OFFSET(21158, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 662), + NAME_FUNC_OFFSET(21177, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 662), + NAME_FUNC_OFFSET(21199, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 662), + NAME_FUNC_OFFSET(21222, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, 665), + NAME_FUNC_OFFSET(21241, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, 666), + NAME_FUNC_OFFSET(21261, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, 667), + NAME_FUNC_OFFSET(21280, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, 668), + NAME_FUNC_OFFSET(21300, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, 669), + NAME_FUNC_OFFSET(21319, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, 670), + NAME_FUNC_OFFSET(21339, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, 671), + NAME_FUNC_OFFSET(21358, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, 672), + NAME_FUNC_OFFSET(21378, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, 673), + NAME_FUNC_OFFSET(21397, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, 674), + NAME_FUNC_OFFSET(21417, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, 675), + NAME_FUNC_OFFSET(21437, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, 676), + NAME_FUNC_OFFSET(21458, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, 677), + NAME_FUNC_OFFSET(21478, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, 678), + NAME_FUNC_OFFSET(21499, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, 679), + NAME_FUNC_OFFSET(21519, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, 680), + NAME_FUNC_OFFSET(21540, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, 681), + NAME_FUNC_OFFSET(21564, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, 682), + NAME_FUNC_OFFSET(21582, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, 683), + NAME_FUNC_OFFSET(21602, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, 684), + NAME_FUNC_OFFSET(21620, glFogCoorddEXT, glFogCoorddEXT, NULL, 685), + NAME_FUNC_OFFSET(21632, glFogCoorddvEXT, glFogCoorddvEXT, NULL, 686), + NAME_FUNC_OFFSET(21645, glFogCoordfEXT, glFogCoordfEXT, NULL, 687), + NAME_FUNC_OFFSET(21657, glFogCoordfvEXT, glFogCoordfvEXT, NULL, 688), + NAME_FUNC_OFFSET(21670, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 690), + NAME_FUNC_OFFSET(21690, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 690), + NAME_FUNC_OFFSET(21714, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 707), + NAME_FUNC_OFFSET(21728, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 707), + NAME_FUNC_OFFSET(21745, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 708), + NAME_FUNC_OFFSET(21760, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 708), + NAME_FUNC_OFFSET(21778, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 709), + NAME_FUNC_OFFSET(21792, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 709), + NAME_FUNC_OFFSET(21809, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 710), + NAME_FUNC_OFFSET(21824, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 710), + NAME_FUNC_OFFSET(21842, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 711), + NAME_FUNC_OFFSET(21856, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 711), + NAME_FUNC_OFFSET(21873, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 712), + NAME_FUNC_OFFSET(21888, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 712), + NAME_FUNC_OFFSET(21906, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 713), + NAME_FUNC_OFFSET(21920, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 713), + NAME_FUNC_OFFSET(21937, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 714), + NAME_FUNC_OFFSET(21952, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 714), + NAME_FUNC_OFFSET(21970, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 715), + NAME_FUNC_OFFSET(21984, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 715), + NAME_FUNC_OFFSET(22001, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 716), + NAME_FUNC_OFFSET(22016, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 716), + NAME_FUNC_OFFSET(22034, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 717), + NAME_FUNC_OFFSET(22048, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 717), + NAME_FUNC_OFFSET(22065, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 718), + NAME_FUNC_OFFSET(22080, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 718), + NAME_FUNC_OFFSET(22098, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 719), + NAME_FUNC_OFFSET(22112, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 719), + NAME_FUNC_OFFSET(22129, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 720), + NAME_FUNC_OFFSET(22144, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 720), + NAME_FUNC_OFFSET(22162, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 721), + NAME_FUNC_OFFSET(22176, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 721), + NAME_FUNC_OFFSET(22193, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 722), + NAME_FUNC_OFFSET(22208, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 722), + NAME_FUNC_OFFSET(22226, glBindProgramNV, glBindProgramNV, NULL, 741), + NAME_FUNC_OFFSET(22243, glDeleteProgramsNV, glDeleteProgramsNV, NULL, 742), + NAME_FUNC_OFFSET(22263, glGenProgramsNV, glGenProgramsNV, NULL, 744), + NAME_FUNC_OFFSET(22280, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 750), + NAME_FUNC_OFFSET(22306, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 750), + NAME_FUNC_OFFSET(22335, glIsProgramNV, glIsProgramNV, NULL, 754), + NAME_FUNC_OFFSET(22350, glPointParameteriNV, glPointParameteriNV, NULL, 818), + NAME_FUNC_OFFSET(22368, glPointParameterivNV, glPointParameterivNV, NULL, 819), + NAME_FUNC_OFFSET(22387, gl_dispatch_stub_822, gl_dispatch_stub_822, NULL, 822), + NAME_FUNC_OFFSET(22408, gl_dispatch_stub_824, gl_dispatch_stub_824, NULL, 824), + NAME_FUNC_OFFSET(22424, glPrimitiveRestartIndexNV, glPrimitiveRestartIndexNV, NULL, 831), + NAME_FUNC_OFFSET(22448, gl_dispatch_stub_834, gl_dispatch_stub_834, NULL, 834), + NAME_FUNC_OFFSET(22472, gl_dispatch_stub_834, gl_dispatch_stub_834, NULL, 834), + NAME_FUNC_OFFSET(22499, glBindFramebufferEXT, glBindFramebufferEXT, NULL, 835), + NAME_FUNC_OFFSET(22517, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, 836), + NAME_FUNC_OFFSET(22536, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, 837), + NAME_FUNC_OFFSET(22561, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, 838), + NAME_FUNC_OFFSET(22582, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, 839), + NAME_FUNC_OFFSET(22604, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, 840), + NAME_FUNC_OFFSET(22630, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, 841), + NAME_FUNC_OFFSET(22653, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, 842), + NAME_FUNC_OFFSET(22676, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, 843), + NAME_FUNC_OFFSET(22699, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, 844), + NAME_FUNC_OFFSET(22717, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, 845), + NAME_FUNC_OFFSET(22736, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, 846), + NAME_FUNC_OFFSET(22753, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, 847), + NAME_FUNC_OFFSET(22791, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, 848), + NAME_FUNC_OFFSET(22820, glIsFramebufferEXT, glIsFramebufferEXT, NULL, 849), + NAME_FUNC_OFFSET(22836, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, 850), + NAME_FUNC_OFFSET(22853, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, 851), + NAME_FUNC_OFFSET(22875, gl_dispatch_stub_852, gl_dispatch_stub_852, NULL, 852), + NAME_FUNC_OFFSET(22893, glBindFragDataLocationEXT, glBindFragDataLocationEXT, NULL, 855), + NAME_FUNC_OFFSET(22916, glGetFragDataLocationEXT, glGetFragDataLocationEXT, NULL, 856), + NAME_FUNC_OFFSET(22938, glGetUniformuivEXT, glGetUniformuivEXT, NULL, 857), + NAME_FUNC_OFFSET(22954, glGetVertexAttribIivEXT, glGetVertexAttribIivEXT, NULL, 858), + NAME_FUNC_OFFSET(22975, glGetVertexAttribIuivEXT, glGetVertexAttribIuivEXT, NULL, 859), + NAME_FUNC_OFFSET(22997, glUniform1uiEXT, glUniform1uiEXT, NULL, 860), + NAME_FUNC_OFFSET(23010, glUniform1uivEXT, glUniform1uivEXT, NULL, 861), + NAME_FUNC_OFFSET(23024, glUniform2uiEXT, glUniform2uiEXT, NULL, 862), + NAME_FUNC_OFFSET(23037, glUniform2uivEXT, glUniform2uivEXT, NULL, 863), + NAME_FUNC_OFFSET(23051, glUniform3uiEXT, glUniform3uiEXT, NULL, 864), + NAME_FUNC_OFFSET(23064, glUniform3uivEXT, glUniform3uivEXT, NULL, 865), + NAME_FUNC_OFFSET(23078, glUniform4uiEXT, glUniform4uiEXT, NULL, 866), + NAME_FUNC_OFFSET(23091, glUniform4uivEXT, glUniform4uivEXT, NULL, 867), + NAME_FUNC_OFFSET(23105, glVertexAttribI1iEXT, glVertexAttribI1iEXT, NULL, 868), + NAME_FUNC_OFFSET(23123, glVertexAttribI1ivEXT, glVertexAttribI1ivEXT, NULL, 869), + NAME_FUNC_OFFSET(23142, glVertexAttribI1uiEXT, glVertexAttribI1uiEXT, NULL, 870), + NAME_FUNC_OFFSET(23161, glVertexAttribI1uivEXT, glVertexAttribI1uivEXT, NULL, 871), + NAME_FUNC_OFFSET(23181, glVertexAttribI2iEXT, glVertexAttribI2iEXT, NULL, 872), + NAME_FUNC_OFFSET(23199, glVertexAttribI2ivEXT, glVertexAttribI2ivEXT, NULL, 873), + NAME_FUNC_OFFSET(23218, glVertexAttribI2uiEXT, glVertexAttribI2uiEXT, NULL, 874), + NAME_FUNC_OFFSET(23237, glVertexAttribI2uivEXT, glVertexAttribI2uivEXT, NULL, 875), + NAME_FUNC_OFFSET(23257, glVertexAttribI3iEXT, glVertexAttribI3iEXT, NULL, 876), + NAME_FUNC_OFFSET(23275, glVertexAttribI3ivEXT, glVertexAttribI3ivEXT, NULL, 877), + NAME_FUNC_OFFSET(23294, glVertexAttribI3uiEXT, glVertexAttribI3uiEXT, NULL, 878), + NAME_FUNC_OFFSET(23313, glVertexAttribI3uivEXT, glVertexAttribI3uivEXT, NULL, 879), + NAME_FUNC_OFFSET(23333, glVertexAttribI4bvEXT, glVertexAttribI4bvEXT, NULL, 880), + NAME_FUNC_OFFSET(23352, glVertexAttribI4iEXT, glVertexAttribI4iEXT, NULL, 881), + NAME_FUNC_OFFSET(23370, glVertexAttribI4ivEXT, glVertexAttribI4ivEXT, NULL, 882), + NAME_FUNC_OFFSET(23389, glVertexAttribI4svEXT, glVertexAttribI4svEXT, NULL, 883), + NAME_FUNC_OFFSET(23408, glVertexAttribI4ubvEXT, glVertexAttribI4ubvEXT, NULL, 884), + NAME_FUNC_OFFSET(23428, glVertexAttribI4uiEXT, glVertexAttribI4uiEXT, NULL, 885), + NAME_FUNC_OFFSET(23447, glVertexAttribI4uivEXT, glVertexAttribI4uivEXT, NULL, 886), + NAME_FUNC_OFFSET(23467, glVertexAttribI4usvEXT, glVertexAttribI4usvEXT, NULL, 887), + NAME_FUNC_OFFSET(23487, glVertexAttribIPointerEXT, glVertexAttribIPointerEXT, NULL, 888), + NAME_FUNC_OFFSET(23510, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, 889), + NAME_FUNC_OFFSET(23536, glColorMaskIndexedEXT, glColorMaskIndexedEXT, NULL, 890), + NAME_FUNC_OFFSET(23549, glDisableIndexedEXT, glDisableIndexedEXT, NULL, 891), + NAME_FUNC_OFFSET(23560, glEnableIndexedEXT, glEnableIndexedEXT, NULL, 892), + NAME_FUNC_OFFSET(23570, glGetBooleanIndexedvEXT, glGetBooleanIndexedvEXT, NULL, 893), + NAME_FUNC_OFFSET(23586, glGetIntegerIndexedvEXT, glGetIntegerIndexedvEXT, NULL, 894), + NAME_FUNC_OFFSET(23602, glIsEnabledIndexedEXT, glIsEnabledIndexedEXT, NULL, 895), + NAME_FUNC_OFFSET(23615, glGetTexParameterIivEXT, glGetTexParameterIivEXT, NULL, 898), + NAME_FUNC_OFFSET(23636, glGetTexParameterIuivEXT, glGetTexParameterIuivEXT, NULL, 899), + NAME_FUNC_OFFSET(23658, glTexParameterIivEXT, glTexParameterIivEXT, NULL, 900), + NAME_FUNC_OFFSET(23676, glTexParameterIuivEXT, glTexParameterIuivEXT, NULL, 901), + NAME_FUNC_OFFSET(23695, glBeginConditionalRenderNV, glBeginConditionalRenderNV, NULL, 902), + NAME_FUNC_OFFSET(23720, glEndConditionalRenderNV, glEndConditionalRenderNV, NULL, 903), + NAME_FUNC_OFFSET(23743, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, 904), + NAME_FUNC_OFFSET(23768, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, 905), + NAME_FUNC_OFFSET(23785, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, 907), + NAME_FUNC_OFFSET(23803, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, 908), + NAME_FUNC_OFFSET(23826, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, 909), + NAME_FUNC_OFFSET(23856, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, 910), + NAME_FUNC_OFFSET(23884, glProvokingVertexEXT, glProvokingVertexEXT, NULL, 911), NAME_FUNC_OFFSET(-1, NULL, NULL, NULL, 0) }; diff --git a/src/mesa/drivers/common/driverfuncs.c b/src/mesa/drivers/common/driverfuncs.c index 854dea94504..0dbc7c3e853 100644 --- a/src/mesa/drivers/common/driverfuncs.c +++ b/src/mesa/drivers/common/driverfuncs.c @@ -41,6 +41,7 @@ #include "main/bufferobj.h" #include "main/fbobject.h" #include "main/texrender.h" +#include "main/samplerobj.h" #include "main/syncobj.h" #include "main/texturebarrier.h" #include "main/transformfeedback.h" @@ -200,6 +201,8 @@ _mesa_init_driver_functions(struct dd_function_table *driver) _mesa_init_transform_feedback_functions(driver); + _mesa_init_sampler_object_functions(driver); + /* T&L stuff */ driver->NeedValidate = GL_FALSE; driver->ValidateTnlModule = NULL; diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c index 6c35fa10d8a..08b6024639f 100644 --- a/src/mesa/drivers/common/meta.c +++ b/src/mesa/drivers/common/meta.c @@ -40,6 +40,7 @@ #include "main/bufferobj.h" #include "main/buffers.h" #include "main/colortab.h" +#include "main/condrender.h" #include "main/depth.h" #include "main/enable.h" #include "main/fbobject.h" @@ -94,6 +95,7 @@ #define META_VIEWPORT 0x4000 #define META_CLAMP_FRAGMENT_COLOR 0x8000 #define META_CLAMP_VERTEX_COLOR 0x10000 +#define META_CONDITIONAL_RENDER 0x20000 /*@}*/ @@ -188,6 +190,10 @@ struct save_state /** META_CLAMP_VERTEX_COLOR */ GLenum ClampVertexColor; + /** META_CONDITIONAL_RENDER */ + struct gl_query_object *CondRenderQuery; + GLenum CondRenderMode; + /** Miscellaneous (always disabled) */ GLboolean Lighting; }; @@ -597,6 +603,14 @@ _mesa_meta_begin(struct gl_context *ctx, GLbitfield state) _mesa_ClampColorARB(GL_CLAMP_VERTEX_COLOR, GL_FALSE); } + if (state & META_CONDITIONAL_RENDER) { + save->CondRenderQuery = ctx->Query.CondRenderQuery; + save->CondRenderMode = ctx->Query.CondRenderMode; + + if (ctx->Query.CondRenderQuery) + _mesa_EndConditionalRender(); + } + /* misc */ { save->Lighting = ctx->Light.Enabled; @@ -869,6 +883,12 @@ _mesa_meta_end(struct gl_context *ctx) _mesa_ClampColorARB(GL_CLAMP_VERTEX_COLOR, save->ClampVertexColor); } + if (state & META_CONDITIONAL_RENDER) { + if (save->CondRenderQuery) + _mesa_BeginConditionalRender(save->CondRenderQuery->Id, + save->CondRenderMode); + } + /* misc */ if (save->Lighting) { _mesa_set_enable(ctx, GL_LIGHTING, GL_TRUE); @@ -1442,7 +1462,10 @@ _mesa_meta_Clear(struct gl_context *ctx, GLbitfield buffers) }; struct vertex verts[4]; /* save all state but scissor, pixel pack/unpack */ - GLbitfield metaSave = META_ALL - META_SCISSOR - META_PIXEL_STORE; + GLbitfield metaSave = (META_ALL - + META_SCISSOR - + META_PIXEL_STORE - + META_CONDITIONAL_RENDER); const GLuint stencilMax = (1 << ctx->DrawBuffer->Visual.stencilBits) - 1; if (buffers & BUFFER_BITS_COLOR) { @@ -1848,7 +1871,8 @@ _mesa_meta_DrawPixels(struct gl_context *ctx, * just going for the matching set of channels, in floating * point. */ - if (ctx->Color.ClampFragmentColor != GL_TRUE) + if (ctx->Color.ClampFragmentColor != GL_TRUE && + ctx->Extensions.ARB_texture_float) texIntFormat = GL_RGBA32F; } else if (_mesa_is_stencil_format(format)) { diff --git a/src/mesa/drivers/dri/i915/i830_texstate.c b/src/mesa/drivers/dri/i915/i830_texstate.c index 7554bd5e7b9..3298dbb69f5 100644 --- a/src/mesa/drivers/dri/i915/i830_texstate.c +++ b/src/mesa/drivers/dri/i915/i830_texstate.c @@ -29,6 +29,7 @@ #include "main/enums.h" #include "main/colormac.h" #include "main/macros.h" +#include "main/samplerobj.h" #include "intel_mipmap_tree.h" #include "intel_tex.h" @@ -120,6 +121,7 @@ i830_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) struct gl_texture_object *tObj = tUnit->_Current; struct intel_texture_object *intelObj = intel_texture_object(tObj); struct gl_texture_image *firstImage; + struct gl_sampler_object *sampler = _mesa_get_samplerobj(ctx, unit); GLuint *state = i830->state.Tex[unit], format, pitch; GLint lodbias; GLubyte border[4]; @@ -193,7 +195,7 @@ i830_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) float maxlod; uint32_t minlod_fixed, maxlod_fixed; - switch (tObj->Sampler.MinFilter) { + switch (sampler->MinFilter) { case GL_NEAREST: minFilt = FILTER_NEAREST; mipFilt = MIPFILTER_NONE; @@ -222,12 +224,12 @@ i830_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) return GL_FALSE; } - if (tObj->Sampler.MaxAnisotropy > 1.0) { + if (sampler->MaxAnisotropy > 1.0) { minFilt = FILTER_ANISOTROPIC; magFilt = FILTER_ANISOTROPIC; } else { - switch (tObj->Sampler.MagFilter) { + switch (sampler->MagFilter) { case GL_NEAREST: magFilt = FILTER_NEAREST; break; @@ -239,7 +241,7 @@ i830_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) } } - lodbias = (int) ((tUnit->LodBias + tObj->Sampler.LodBias) * 16.0); + lodbias = (int) ((tUnit->LodBias + sampler->LodBias) * 16.0); if (lodbias < -64) lodbias = -64; if (lodbias > 63) @@ -259,8 +261,8 @@ i830_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) * addressable (smallest resolution) LOD. Use it to cover both * MAX_LEVEL and MAX_LOD. */ - minlod_fixed = U_FIXED(CLAMP(tObj->Sampler.MinLod, 0.0, 11), 4); - maxlod = MIN2(tObj->Sampler.MaxLod, tObj->_MaxLevel - tObj->BaseLevel); + minlod_fixed = U_FIXED(CLAMP(sampler->MinLod, 0.0, 11), 4); + maxlod = MIN2(sampler->MaxLod, tObj->_MaxLevel - tObj->BaseLevel); if (intel->intelScreen->deviceID == PCI_CHIP_I855_GM || intel->intelScreen->deviceID == PCI_CHIP_I865_G) { maxlod_fixed = U_FIXED(CLAMP(maxlod, 0.0, 11.75), 2); @@ -279,8 +281,8 @@ i830_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) } { - GLenum ws = tObj->Sampler.WrapS; - GLenum wt = tObj->Sampler.WrapT; + GLenum ws = sampler->WrapS; + GLenum wt = sampler->WrapT; /* 3D textures not available on i830 @@ -300,10 +302,10 @@ i830_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) } /* convert border color from float to ubyte */ - CLAMPED_FLOAT_TO_UBYTE(border[0], tObj->Sampler.BorderColor.f[0]); - CLAMPED_FLOAT_TO_UBYTE(border[1], tObj->Sampler.BorderColor.f[1]); - CLAMPED_FLOAT_TO_UBYTE(border[2], tObj->Sampler.BorderColor.f[2]); - CLAMPED_FLOAT_TO_UBYTE(border[3], tObj->Sampler.BorderColor.f[3]); + CLAMPED_FLOAT_TO_UBYTE(border[0], sampler->BorderColor.f[0]); + CLAMPED_FLOAT_TO_UBYTE(border[1], sampler->BorderColor.f[1]); + CLAMPED_FLOAT_TO_UBYTE(border[2], sampler->BorderColor.f[2]); + CLAMPED_FLOAT_TO_UBYTE(border[3], sampler->BorderColor.f[3]); state[I830_TEXREG_TM0S4] = PACK_COLOR_8888(border[3], border[0], diff --git a/src/mesa/drivers/dri/i915/i915_texstate.c b/src/mesa/drivers/dri/i915/i915_texstate.c index 742bb994adb..5aa2ea18048 100644 --- a/src/mesa/drivers/dri/i915/i915_texstate.c +++ b/src/mesa/drivers/dri/i915/i915_texstate.c @@ -29,6 +29,7 @@ #include "main/enums.h" #include "main/macros.h" #include "main/colormac.h" +#include "main/samplerobj.h" #include "intel_mipmap_tree.h" #include "intel_tex.h" @@ -136,6 +137,7 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) struct gl_texture_object *tObj = tUnit->_Current; struct intel_texture_object *intelObj = intel_texture_object(tObj); struct gl_texture_image *firstImage; + struct gl_sampler_object *sampler = _mesa_get_samplerobj(ctx, unit); GLuint *state = i915->state.Tex[unit], format, pitch; GLint lodbias, aniso = 0; GLubyte border[4]; @@ -164,7 +166,7 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) format = translate_texture_format(firstImage->TexFormat, firstImage->InternalFormat, - tObj->Sampler.DepthMode); + sampler->DepthMode); pitch = intelObj->mt->region->pitch * intelObj->mt->cpp; state[I915_TEXREG_MS3] = @@ -181,7 +183,7 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) * (lowest resolution) LOD. Use it to cover both MAX_LEVEL and * MAX_LOD. */ - maxlod = MIN2(tObj->Sampler.MaxLod, tObj->_MaxLevel - tObj->BaseLevel); + maxlod = MIN2(sampler->MaxLod, tObj->_MaxLevel - tObj->BaseLevel); state[I915_TEXREG_MS4] = ((((pitch / 4) - 1) << MS4_PITCH_SHIFT) | MS4_CUBE_FACE_ENA_MASK | @@ -192,7 +194,7 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) { GLuint minFilt, mipFilt, magFilt; - switch (tObj->Sampler.MinFilter) { + switch (sampler->MinFilter) { case GL_NEAREST: minFilt = FILTER_NEAREST; mipFilt = MIPFILTER_NONE; @@ -221,16 +223,16 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) return GL_FALSE; } - if (tObj->Sampler.MaxAnisotropy > 1.0) { + if (sampler->MaxAnisotropy > 1.0) { minFilt = FILTER_ANISOTROPIC; magFilt = FILTER_ANISOTROPIC; - if (tObj->Sampler.MaxAnisotropy > 2.0) + if (sampler->MaxAnisotropy > 2.0) aniso = SS2_MAX_ANISO_4; else aniso = SS2_MAX_ANISO_2; } else { - switch (tObj->Sampler.MagFilter) { + switch (sampler->MagFilter) { case GL_NEAREST: magFilt = FILTER_NEAREST; break; @@ -242,7 +244,7 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) } } - lodbias = (int) ((tUnit->LodBias + tObj->Sampler.LodBias) * 16.0); + lodbias = (int) ((tUnit->LodBias + sampler->LodBias) * 16.0); if (lodbias < -256) lodbias = -256; if (lodbias > 255) @@ -258,14 +260,14 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) /* Shadow: */ - if (tObj->Sampler.CompareMode == GL_COMPARE_R_TO_TEXTURE_ARB && + if (sampler->CompareMode == GL_COMPARE_R_TO_TEXTURE_ARB && tObj->Target != GL_TEXTURE_3D) { if (tObj->Target == GL_TEXTURE_1D) return GL_FALSE; state[I915_TEXREG_SS2] |= (SS2_SHADOW_ENABLE | - intel_translate_shadow_compare_func(tObj->Sampler.CompareFunc)); + intel_translate_shadow_compare_func(sampler->CompareFunc)); minFilt = FILTER_4X4_FLAT; magFilt = FILTER_4X4_FLAT; @@ -278,9 +280,9 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) } { - GLenum ws = tObj->Sampler.WrapS; - GLenum wt = tObj->Sampler.WrapT; - GLenum wr = tObj->Sampler.WrapR; + GLenum ws = sampler->WrapS; + GLenum wt = sampler->WrapT; + GLenum wr = sampler->WrapR; float minlod; /* We program 1D textures as 2D textures, so the 2D texcoord could @@ -298,8 +300,8 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) * clamp_to_border. */ if (tObj->Target == GL_TEXTURE_3D && - (tObj->Sampler.MinFilter != GL_NEAREST || - tObj->Sampler.MagFilter != GL_NEAREST) && + (sampler->MinFilter != GL_NEAREST || + sampler->MagFilter != GL_NEAREST) && (ws == GL_CLAMP || wt == GL_CLAMP || wr == GL_CLAMP || @@ -322,7 +324,7 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) (translate_wrap_mode(wt) << SS3_TCY_ADDR_MODE_SHIFT) | (translate_wrap_mode(wr) << SS3_TCZ_ADDR_MODE_SHIFT)); - minlod = MIN2(tObj->Sampler.MinLod, tObj->_MaxLevel - tObj->BaseLevel); + minlod = MIN2(sampler->MinLod, tObj->_MaxLevel - tObj->BaseLevel); state[I915_TEXREG_SS3] |= (unit << SS3_TEXTUREMAP_INDEX_SHIFT); state[I915_TEXREG_SS3] |= (U_FIXED(CLAMP(minlod, 0.0, 11.0), 4) << SS3_MIN_LOD_SHIFT); @@ -330,10 +332,10 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) } /* convert border color from float to ubyte */ - CLAMPED_FLOAT_TO_UBYTE(border[0], tObj->Sampler.BorderColor.f[0]); - CLAMPED_FLOAT_TO_UBYTE(border[1], tObj->Sampler.BorderColor.f[1]); - CLAMPED_FLOAT_TO_UBYTE(border[2], tObj->Sampler.BorderColor.f[2]); - CLAMPED_FLOAT_TO_UBYTE(border[3], tObj->Sampler.BorderColor.f[3]); + CLAMPED_FLOAT_TO_UBYTE(border[0], sampler->BorderColor.f[0]); + CLAMPED_FLOAT_TO_UBYTE(border[1], sampler->BorderColor.f[1]); + CLAMPED_FLOAT_TO_UBYTE(border[2], sampler->BorderColor.f[2]); + CLAMPED_FLOAT_TO_UBYTE(border[3], sampler->BorderColor.f[3]); if (firstImage->_BaseFormat == GL_DEPTH_COMPONENT) { /* GL specs that border color for depth textures is taken from the diff --git a/src/mesa/drivers/dri/i965/Makefile b/src/mesa/drivers/dri/i965/Makefile index b05ba35d65f..849018b74ae 100644 --- a/src/mesa/drivers/dri/i965/Makefile +++ b/src/mesa/drivers/dri/i965/Makefile @@ -61,7 +61,6 @@ DRIVER_SOURCES = \ brw_sf.c \ brw_sf_emit.c \ brw_sf_state.c \ - brw_state.c \ brw_state_batch.c \ brw_state_cache.c \ brw_state_dump.c \ diff --git a/src/mesa/drivers/dri/i965/brw_cc.c b/src/mesa/drivers/dri/i965/brw_cc.c index 74a66af31a5..94b8c20b019 100644 --- a/src/mesa/drivers/dri/i965/brw_cc.c +++ b/src/mesa/drivers/dri/i965/brw_cc.c @@ -37,28 +37,36 @@ #include "main/macros.h" #include "intel_batchbuffer.h" -void -brw_update_cc_vp(struct brw_context *brw) +static void +prepare_cc_vp(struct brw_context *brw) { struct gl_context *ctx = &brw->intel.ctx; - struct brw_cc_viewport ccv; + struct brw_cc_viewport *ccv; - memset(&ccv, 0, sizeof(ccv)); + ccv = brw_state_batch(brw, sizeof(*ccv), 32, &brw->cc.vp_offset); /* _NEW_TRANSOFORM */ if (ctx->Transform.DepthClamp) { /* _NEW_VIEWPORT */ - ccv.min_depth = MIN2(ctx->Viewport.Near, ctx->Viewport.Far); - ccv.max_depth = MAX2(ctx->Viewport.Near, ctx->Viewport.Far); + ccv->min_depth = MIN2(ctx->Viewport.Near, ctx->Viewport.Far); + ccv->max_depth = MAX2(ctx->Viewport.Near, ctx->Viewport.Far); } else { - ccv.min_depth = 0.0; - ccv.max_depth = 1.0; + ccv->min_depth = 0.0; + ccv->max_depth = 1.0; } - drm_intel_bo_unreference(brw->cc.vp_bo); - brw->cc.vp_bo = brw_cache_data(&brw->cache, BRW_CC_VP, &ccv, sizeof(ccv)); + brw->state.dirty.cache |= CACHE_NEW_CC_VP; } +const struct brw_tracked_state brw_cc_vp = { + .dirty = { + .mesa = _NEW_VIEWPORT | _NEW_TRANSFORM, + .brw = BRW_NEW_BATCH, + .cache = 0 + }, + .prepare = prepare_cc_vp +}; + /** * Modify blend function to force destination alpha to 1.0 * @@ -81,11 +89,6 @@ fix_xRGB_alpha(GLenum function) return function; } -static void prepare_cc_unit(struct brw_context *brw) -{ - brw_add_validated_bo(brw, brw->cc.vp_bo); -} - /** * Creates the state cache entry for the given CC unit key. */ @@ -209,7 +212,8 @@ static void upload_cc_unit(struct brw_context *brw) cc->cc5.statistics_enable = 1; /* CACHE_NEW_CC_VP */ - cc->cc4.cc_viewport_state_offset = brw->cc.vp_bo->offset >> 5; /* reloc */ + cc->cc4.cc_viewport_state_offset = (intel->batch.bo->offset + + brw->cc.vp_offset) >> 5; /* reloc */ brw->state.dirty.cache |= CACHE_NEW_CC_UNIT; @@ -217,7 +221,7 @@ static void upload_cc_unit(struct brw_context *brw) drm_intel_bo_emit_reloc(brw->intel.batch.bo, (brw->cc.state_offset + offsetof(struct brw_cc_unit_state, cc4)), - brw->cc.vp_bo, 0, + intel->batch.bo, brw->cc.vp_offset, I915_GEM_DOMAIN_INSTRUCTION, 0); } @@ -227,7 +231,6 @@ const struct brw_tracked_state brw_cc_unit = { .brw = BRW_NEW_BATCH, .cache = CACHE_NEW_CC_VP }, - .prepare = prepare_cc_unit, .emit = upload_cc_unit, }; diff --git a/src/mesa/drivers/dri/i965/brw_clip.c b/src/mesa/drivers/dri/i965/brw_clip.c index 1be165cc9a1..3c175515408 100644 --- a/src/mesa/drivers/dri/i965/brw_clip.c +++ b/src/mesa/drivers/dri/i965/brw_clip.c @@ -144,14 +144,12 @@ static void compile_clip_prog( struct brw_context *brw, /* Upload */ drm_intel_bo_unreference(brw->clip.prog_bo); - brw->clip.prog_bo = brw_upload_cache_with_auxdata(&brw->cache, - BRW_CLIP_PROG, - &c.key, sizeof(c.key), - NULL, 0, - program, program_size, - &c.prog_data, - sizeof(c.prog_data), - &brw->clip.prog_data); + brw->clip.prog_bo = brw_upload_cache(&brw->cache, + BRW_CLIP_PROG, + &c.key, sizeof(c.key), + program, program_size, + &c.prog_data, sizeof(c.prog_data), + &brw->clip.prog_data); } /* Calculate interpolants for triangle and line rasterization. @@ -270,7 +268,6 @@ static void upload_clip_prog(struct brw_context *brw) drm_intel_bo_unreference(brw->clip.prog_bo); brw->clip.prog_bo = brw_search_cache(&brw->cache, BRW_CLIP_PROG, &key, sizeof(key), - NULL, 0, &brw->clip.prog_data); if (brw->clip.prog_bo == NULL) compile_clip_prog( brw, &key ); diff --git a/src/mesa/drivers/dri/i965/brw_clip_state.c b/src/mesa/drivers/dri/i965/brw_clip_state.c index 60fd5fa7d9e..6015c8cbe9f 100644 --- a/src/mesa/drivers/dri/i965/brw_clip_state.c +++ b/src/mesa/drivers/dri/i965/brw_clip_state.c @@ -33,148 +33,101 @@ #include "brw_state.h" #include "brw_defines.h" -struct brw_clip_unit_key { - unsigned int total_grf; - unsigned int urb_entry_read_length; - unsigned int curb_entry_read_length; - unsigned int clip_mode; - - unsigned int curbe_offset; - - unsigned int nr_urb_entries, urb_size; - - GLboolean depth_clamp; -}; - static void -clip_unit_populate_key(struct brw_context *brw, struct brw_clip_unit_key *key) -{ - struct gl_context *ctx = &brw->intel.ctx; - memset(key, 0, sizeof(*key)); - - /* CACHE_NEW_CLIP_PROG */ - key->total_grf = brw->clip.prog_data->total_grf; - key->urb_entry_read_length = brw->clip.prog_data->urb_read_length; - key->curb_entry_read_length = brw->clip.prog_data->curb_read_length; - key->clip_mode = brw->clip.prog_data->clip_mode; - - /* BRW_NEW_CURBE_OFFSETS */ - key->curbe_offset = brw->curbe.clip_start; - - /* BRW_NEW_URB_FENCE */ - key->nr_urb_entries = brw->urb.nr_clip_entries; - key->urb_size = brw->urb.vsize; - - /* _NEW_TRANSOFORM */ - key->depth_clamp = ctx->Transform.DepthClamp; -} - -static drm_intel_bo * -clip_unit_create_from_key(struct brw_context *brw, - struct brw_clip_unit_key *key) +brw_prepare_clip_unit(struct brw_context *brw) { struct intel_context *intel = &brw->intel; - struct brw_clip_unit_state clip; - drm_intel_bo *bo; + struct gl_context *ctx = &intel->ctx; + struct brw_clip_unit_state *clip; - memset(&clip, 0, sizeof(clip)); + clip = brw_state_batch(brw, sizeof(*clip), 32, &brw->clip.state_offset); + memset(clip, 0, sizeof(*clip)); - clip.thread0.grf_reg_count = ALIGN(key->total_grf, 16) / 16 - 1; + /* CACHE_NEW_CLIP_PROG */ + clip->thread0.grf_reg_count = (ALIGN(brw->clip.prog_data->total_grf, 16) / + 16 - 1); /* reloc */ - clip.thread0.kernel_start_pointer = brw->clip.prog_bo->offset >> 6; + clip->thread0.kernel_start_pointer = brw->clip.prog_bo->offset >> 6; - clip.thread1.floating_point_mode = BRW_FLOATING_POINT_NON_IEEE_754; - clip.thread1.single_program_flow = 1; + clip->thread1.floating_point_mode = BRW_FLOATING_POINT_NON_IEEE_754; + clip->thread1.single_program_flow = 1; - clip.thread3.urb_entry_read_length = key->urb_entry_read_length; - clip.thread3.const_urb_entry_read_length = key->curb_entry_read_length; - clip.thread3.const_urb_entry_read_offset = key->curbe_offset * 2; - clip.thread3.dispatch_grf_start_reg = 1; - clip.thread3.urb_entry_read_offset = 0; + clip->thread3.urb_entry_read_length = brw->clip.prog_data->urb_read_length; + clip->thread3.const_urb_entry_read_length = + brw->clip.prog_data->curb_read_length; + + /* BRW_NEW_CURBE_OFFSETS */ + clip->thread3.const_urb_entry_read_offset = brw->curbe.clip_start * 2; + clip->thread3.dispatch_grf_start_reg = 1; + clip->thread3.urb_entry_read_offset = 0; - clip.thread4.nr_urb_entries = key->nr_urb_entries; - clip.thread4.urb_entry_allocation_size = key->urb_size - 1; + /* BRW_NEW_URB_FENCE */ + clip->thread4.nr_urb_entries = brw->urb.nr_clip_entries; + clip->thread4.urb_entry_allocation_size = brw->urb.vsize - 1; /* If we have enough clip URB entries to run two threads, do so. */ - if (key->nr_urb_entries >= 10) { + if (brw->urb.nr_clip_entries >= 10) { /* Half of the URB entries go to each thread, and it has to be an * even number. */ - assert(key->nr_urb_entries % 2 == 0); + assert(brw->urb.nr_clip_entries % 2 == 0); /* Although up to 16 concurrent Clip threads are allowed on Ironlake, * only 2 threads can output VUEs at a time. */ if (intel->gen == 5) - clip.thread4.max_threads = 16 - 1; + clip->thread4.max_threads = 16 - 1; else - clip.thread4.max_threads = 2 - 1; + clip->thread4.max_threads = 2 - 1; } else { - assert(key->nr_urb_entries >= 5); - clip.thread4.max_threads = 1 - 1; + assert(brw->urb.nr_clip_entries >= 5); + clip->thread4.max_threads = 1 - 1; } if (unlikely(INTEL_DEBUG & DEBUG_SINGLE_THREAD)) - clip.thread4.max_threads = 0; + clip->thread4.max_threads = 0; if (unlikely(INTEL_DEBUG & DEBUG_STATS)) - clip.thread4.stats_enable = 1; - - clip.clip5.userclip_enable_flags = 0x7f; - clip.clip5.userclip_must_clip = 1; - clip.clip5.guard_band_enable = 0; - if (!key->depth_clamp) - clip.clip5.viewport_z_clip_enable = 1; - clip.clip5.viewport_xy_clip_enable = 1; - clip.clip5.vertex_position_space = BRW_CLIP_NDCSPACE; - clip.clip5.api_mode = BRW_CLIP_API_OGL; - clip.clip5.clip_mode = key->clip_mode; + clip->thread4.stats_enable = 1; - if (intel->is_g4x) - clip.clip5.negative_w_clip_test = 1; + clip->clip5.userclip_enable_flags = 0x7f; + clip->clip5.userclip_must_clip = 1; + clip->clip5.guard_band_enable = 0; + /* _NEW_TRANSOFORM */ + if (!ctx->Transform.DepthClamp) + clip->clip5.viewport_z_clip_enable = 1; + clip->clip5.viewport_xy_clip_enable = 1; + clip->clip5.vertex_position_space = BRW_CLIP_NDCSPACE; + clip->clip5.api_mode = BRW_CLIP_API_OGL; + clip->clip5.clip_mode = brw->clip.prog_data->clip_mode; - clip.clip6.clipper_viewport_state_ptr = 0; - clip.viewport_xmin = -1; - clip.viewport_xmax = 1; - clip.viewport_ymin = -1; - clip.viewport_ymax = 1; + if (intel->is_g4x) + clip->clip5.negative_w_clip_test = 1; - bo = brw_upload_cache(&brw->cache, BRW_CLIP_UNIT, - key, sizeof(*key), - &brw->clip.prog_bo, 1, - &clip, sizeof(clip)); + clip->clip6.clipper_viewport_state_ptr = 0; + clip->viewport_xmin = -1; + clip->viewport_xmax = 1; + clip->viewport_ymin = -1; + clip->viewport_ymax = 1; /* Emit clip program relocation */ assert(brw->clip.prog_bo); - drm_intel_bo_emit_reloc(bo, offsetof(struct brw_clip_unit_state, thread0), - brw->clip.prog_bo, clip.thread0.grf_reg_count << 1, + drm_intel_bo_emit_reloc(intel->batch.bo, + (brw->clip.state_offset + + offsetof(struct brw_clip_unit_state, thread0)), + brw->clip.prog_bo, clip->thread0.grf_reg_count << 1, I915_GEM_DOMAIN_INSTRUCTION, 0); - return bo; -} - -static void upload_clip_unit( struct brw_context *brw ) -{ - struct brw_clip_unit_key key; - - clip_unit_populate_key(brw, &key); - - drm_intel_bo_unreference(brw->clip.state_bo); - brw->clip.state_bo = brw_search_cache(&brw->cache, BRW_CLIP_UNIT, - &key, sizeof(key), - &brw->clip.prog_bo, 1, - NULL); - if (brw->clip.state_bo == NULL) { - brw->clip.state_bo = clip_unit_create_from_key(brw, &key); - } + brw->state.dirty.cache |= CACHE_NEW_CLIP_UNIT; } const struct brw_tracked_state brw_clip_unit = { .dirty = { .mesa = _NEW_TRANSFORM, - .brw = (BRW_NEW_CURBE_OFFSETS | + .brw = (BRW_NEW_BATCH | + BRW_NEW_CURBE_OFFSETS | BRW_NEW_URB_FENCE), .cache = CACHE_NEW_CLIP_PROG }, - .prepare = upload_clip_unit, + .prepare = brw_prepare_clip_unit, }; diff --git a/src/mesa/drivers/dri/i965/brw_context.c b/src/mesa/drivers/dri/i965/brw_context.c index 230d326fa12..db6466ff1ae 100644 --- a/src/mesa/drivers/dri/i965/brw_context.c +++ b/src/mesa/drivers/dri/i965/brw_context.c @@ -51,9 +51,6 @@ static void brwInitDriverFunctions( struct dd_function_table *functions ) brwInitFragProgFuncs( functions ); brw_init_queryobj_functions(functions); - - functions->Enable = brw_enable; - functions->DepthRange = brw_depth_range; } GLboolean brwCreateContext( int api, @@ -232,11 +229,6 @@ GLboolean brwCreateContext( int api, brw_draw_init( brw ); - /* Now that most driver functions are hooked up, initialize some of the - * immediate state. - */ - brw_update_cc_vp(brw); - return GL_TRUE; } diff --git a/src/mesa/drivers/dri/i965/brw_context.h b/src/mesa/drivers/dri/i965/brw_context.h index 1daa49abfb3..26cd8209c65 100644 --- a/src/mesa/drivers/dri/i965/brw_context.h +++ b/src/mesa/drivers/dri/i965/brw_context.h @@ -204,13 +204,16 @@ struct brw_wm_prog_data { GLuint urb_read_length; GLuint first_curbe_grf; + GLuint first_curbe_grf_16; GLuint total_grf; + GLuint total_grf_16; GLuint total_scratch; GLuint nr_params; /**< number of float params/constants */ GLuint nr_pull_params; GLboolean error; int dispatch_width; + uint32_t prog_offset_16; /* Pointer to tracked values (only valid once * _mesa_load_state_parameters has been called at runtime). @@ -308,7 +311,6 @@ enum brw_cache_id { BRW_CC_VP, BRW_CC_UNIT, BRW_WM_PROG, - BRW_SAMPLER_DEFAULT_COLOR, BRW_SAMPLER, BRW_WM_UNIT, BRW_SF_PROG, @@ -336,8 +338,6 @@ struct brw_cache_item { GLuint hash; GLuint key_size; /* for variable-sized keys */ const void *key; - drm_intel_bo **reloc_bufs; - GLuint nr_reloc_bufs; drm_intel_bo *bo; @@ -381,7 +381,6 @@ struct brw_tracked_state { #define CACHE_NEW_CC_VP (1<<BRW_CC_VP) #define CACHE_NEW_CC_UNIT (1<<BRW_CC_UNIT) #define CACHE_NEW_WM_PROG (1<<BRW_WM_PROG) -#define CACHE_NEW_SAMPLER_DEFAULT_COLOR (1<<BRW_SAMPLER_DEFAULT_COLOR) #define CACHE_NEW_SAMPLER (1<<BRW_SAMPLER) #define CACHE_NEW_WM_UNIT (1<<BRW_WM_UNIT) #define CACHE_NEW_SF_PROG (1<<BRW_SF_PROG) @@ -630,29 +629,38 @@ struct brw_context int8_t *constant_map; /* variable array following prog_data */ drm_intel_bo *prog_bo; - drm_intel_bo *state_bo; drm_intel_bo *const_bo; + uint32_t state_offset; /** Binding table of pointers to surf_bo entries */ uint32_t bind_bo_offset; uint32_t surf_offset[BRW_VS_MAX_SURF]; GLuint nr_surfaces; + + uint32_t push_const_offset; /* Offset in the batchbuffer */ + int push_const_size; /* in 256-bit register increments */ } vs; struct { struct brw_gs_prog_data *prog_data; GLboolean prog_active; + uint32_t state_offset; drm_intel_bo *prog_bo; - drm_intel_bo *state_bo; } gs; struct { struct brw_clip_prog_data *prog_data; drm_intel_bo *prog_bo; - drm_intel_bo *state_bo; - drm_intel_bo *vp_bo; + + /* Offset in the batch to the CLIP state on pre-gen6. */ + uint32_t state_offset; + + /* As of gen6, this is the offset in the batch to the CLIP VP, + * instead of vp_bo. + */ + uint32_t vp_offset; } clip; @@ -660,9 +668,7 @@ struct brw_context struct brw_sf_prog_data *prog_data; drm_intel_bo *prog_bo; - drm_intel_bo *state_bo; uint32_t state_offset; - drm_intel_bo *vp_bo; uint32_t vp_offset; } sf; @@ -675,8 +681,9 @@ struct brw_context */ GLbitfield input_size_masks[4]; - /** Array of surface default colors (texture border color) */ - drm_intel_bo *sdc_bo[BRW_MAX_TEX_UNIT]; + /** offsets in the batch to sampler default colors (texture border color) + */ + uint32_t sdc_offset[BRW_MAX_TEX_UNIT]; GLuint render_surf; GLuint nr_surfaces; @@ -685,35 +692,32 @@ struct brw_context drm_intel_bo *scratch_bo; GLuint sampler_count; - drm_intel_bo *sampler_bo; + uint32_t sampler_offset; /** Binding table of pointers to surf_bo entries */ uint32_t bind_bo_offset; uint32_t surf_offset[BRW_WM_MAX_SURF]; + uint32_t state_offset; /* offset in batchbuffer to pre-gen6 WM state */ drm_intel_bo *prog_bo; - drm_intel_bo *state_bo; drm_intel_bo *const_bo; /* pull constant buffer. */ /** - * This is the push constant BO on gen6. + * This is offset in the batch to the push constants on gen6. * * Pre-gen6, push constants live in the CURBE. */ - drm_intel_bo *push_const_bo; + uint32_t push_const_offset; } wm; struct { /* gen4 */ drm_intel_bo *prog_bo; - drm_intel_bo *vp_bo; - - /* gen6 */ - drm_intel_bo *blend_state_bo; - drm_intel_bo *depth_stencil_state_bo; - drm_intel_bo *color_calc_state_bo; uint32_t state_offset; + uint32_t blend_state_offset; + uint32_t depth_stencil_state_offset; + uint32_t vp_offset; } cc; struct { @@ -783,9 +787,6 @@ void brwInitFragProgFuncs( struct dd_function_table *functions ); */ void brw_upload_urb_fence(struct brw_context *brw); -/* brw_cc.c */ -void brw_update_cc_vp(struct brw_context *brw); - /* brw_curbe.c */ void brw_upload_cs_urb_state(struct brw_context *brw); @@ -793,10 +794,6 @@ void brw_upload_cs_urb_state(struct brw_context *brw); /* brw_disasm.c */ int brw_disasm (FILE *file, struct brw_instruction *inst, int gen); -/* brw_state.c */ -void brw_enable(struct gl_context * ctx, GLenum cap, GLboolean state); -void brw_depth_range(struct gl_context *ctx, GLclampd nearval, GLclampd farval); - /*====================================================================== * Inline conversion functions. These are better-typed than the * macros used previously: diff --git a/src/mesa/drivers/dri/i965/brw_draw.c b/src/mesa/drivers/dri/i965/brw_draw.c index 2db70c543ea..9ab533179b8 100644 --- a/src/mesa/drivers/dri/i965/brw_draw.c +++ b/src/mesa/drivers/dri/i965/brw_draw.c @@ -28,6 +28,8 @@ #include "main/glheader.h" #include "main/context.h" +#include "main/condrender.h" +#include "main/samplerobj.h" #include "main/state.h" #include "main/enums.h" #include "tnl/tnl.h" @@ -278,22 +280,25 @@ static GLboolean check_fallbacks( struct brw_context *brw, int u; for (u = 0; u < ctx->Const.MaxTextureCoordUnits; u++) { struct gl_texture_unit *texUnit = &ctx->Texture.Unit[u]; + if (texUnit->Enabled) { + struct gl_sampler_object *sampler = _mesa_get_samplerobj(ctx, u); + if (texUnit->Enabled & TEXTURE_1D_BIT) { - if (texUnit->CurrentTex[TEXTURE_1D_INDEX]->Sampler.WrapS == GL_CLAMP) { + if (sampler->WrapS == GL_CLAMP) { return GL_TRUE; } } if (texUnit->Enabled & TEXTURE_2D_BIT) { - if (texUnit->CurrentTex[TEXTURE_2D_INDEX]->Sampler.WrapS == GL_CLAMP || - texUnit->CurrentTex[TEXTURE_2D_INDEX]->Sampler.WrapT == GL_CLAMP) { + if (sampler->WrapS == GL_CLAMP || + sampler->WrapT == GL_CLAMP) { return GL_TRUE; } } if (texUnit->Enabled & TEXTURE_3D_BIT) { - if (texUnit->CurrentTex[TEXTURE_3D_INDEX]->Sampler.WrapS == GL_CLAMP || - texUnit->CurrentTex[TEXTURE_3D_INDEX]->Sampler.WrapT == GL_CLAMP || - texUnit->CurrentTex[TEXTURE_3D_INDEX]->Sampler.WrapR == GL_CLAMP) { + if (sampler->WrapS == GL_CLAMP || + sampler->WrapT == GL_CLAMP || + sampler->WrapR == GL_CLAMP) { return GL_TRUE; } } @@ -359,15 +364,21 @@ static GLboolean brw_try_draw_prims( struct gl_context *ctx, for (i = 0; i < nr_prims; i++) { uint32_t hw_prim; + int estimated_max_prim_size; + + estimated_max_prim_size = 512; /* batchbuffer commands */ + estimated_max_prim_size += (BRW_MAX_TEX_UNIT * + (sizeof(struct brw_sampler_state) + + sizeof(struct gen5_sampler_default_color))); + estimated_max_prim_size += 1024; /* gen6 VS push constants */ + estimated_max_prim_size += 1024; /* gen6 WM push constants */ + estimated_max_prim_size += 512; /* misc. pad */ /* Flush the batch if it's approaching full, so that we don't wrap while * we've got validated state that needs to be in the same batch as the - * primitives. This fraction is just a guess (minimal full state plus - * a primitive is around 512 bytes), and would be better if we had - * an upper bound of how much we might emit in a single - * brw_try_draw_prims(). + * primitives. */ - intel_batchbuffer_require_space(intel, 1024, false); + intel_batchbuffer_require_space(intel, estimated_max_prim_size, false); hw_prim = brw_set_prim(brw, &prim[i]); if (brw->state.dirty.brw) { @@ -438,6 +449,9 @@ void brw_draw_prims( struct gl_context *ctx, { GLboolean retval; + if (!_mesa_check_conditional_render(ctx)) + return; + if (!vbo_all_varyings_in_vbos(arrays)) { if (!index_bounds_valid) vbo_get_minmax_index(ctx, prim, ib, &min_index, &max_index); diff --git a/src/mesa/drivers/dri/i965/brw_eu.h b/src/mesa/drivers/dri/i965/brw_eu.h index 718b3800423..4eb67d57a5a 100644 --- a/src/mesa/drivers/dri/i965/brw_eu.h +++ b/src/mesa/drivers/dri/i965/brw_eu.h @@ -293,6 +293,14 @@ static INLINE struct brw_reg retype( struct brw_reg reg, return reg; } +static inline struct brw_reg +sechalf(struct brw_reg reg) +{ + if (reg.vstride) + reg.nr++; + return reg; +} + static INLINE struct brw_reg suboffset( struct brw_reg reg, GLuint delta ) { @@ -856,7 +864,6 @@ void brw_ff_sync(struct brw_compile *p, void brw_fb_WRITE(struct brw_compile *p, int dispatch_width, - struct brw_reg dest, GLuint msg_reg_nr, struct brw_reg src0, GLuint binding_table_index, diff --git a/src/mesa/drivers/dri/i965/brw_eu_emit.c b/src/mesa/drivers/dri/i965/brw_eu_emit.c index 71485cd1f71..859068ec4eb 100644 --- a/src/mesa/drivers/dri/i965/brw_eu_emit.c +++ b/src/mesa/drivers/dri/i965/brw_eu_emit.c @@ -1871,7 +1871,6 @@ void brw_dp_READ_4_vs_relative(struct brw_compile *p, void brw_fb_WRITE(struct brw_compile *p, int dispatch_width, - struct brw_reg dest, GLuint msg_reg_nr, struct brw_reg src0, GLuint binding_table_index, @@ -1883,6 +1882,12 @@ void brw_fb_WRITE(struct brw_compile *p, struct intel_context *intel = &p->brw->intel; struct brw_instruction *insn; GLuint msg_control, msg_type; + struct brw_reg dest; + + if (dispatch_width == 16) + dest = retype(vec16(brw_null_reg()), BRW_REGISTER_TYPE_UW); + else + dest = retype(vec8(brw_null_reg()), BRW_REGISTER_TYPE_UW); if (intel->gen >= 6 && binding_table_index == 0) { insn = next_insn(p, BRW_OPCODE_SENDC); diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index 5426925e372..21eb9e4e5e1 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -194,6 +194,32 @@ fs_visitor::fail(const char *format, ...) } } +void +fs_visitor::push_force_uncompressed() +{ + force_uncompressed_stack++; +} + +void +fs_visitor::pop_force_uncompressed() +{ + force_uncompressed_stack--; + assert(force_uncompressed_stack >= 0); +} + +void +fs_visitor::push_force_sechalf() +{ + force_sechalf_stack++; +} + +void +fs_visitor::pop_force_sechalf() +{ + force_sechalf_stack--; + assert(force_sechalf_stack >= 0); +} + /** * Returns how many MRFs an FS opcode will write over. * @@ -214,9 +240,9 @@ fs_visitor::implied_mrf_writes(fs_inst *inst) case FS_OPCODE_LOG2: case FS_OPCODE_SIN: case FS_OPCODE_COS: - return 1; + return 1 * c->dispatch_width / 8; case FS_OPCODE_POW: - return 2; + return 2 * c->dispatch_width / 8; case FS_OPCODE_TEX: case FS_OPCODE_TXB: case FS_OPCODE_TXD: @@ -313,6 +339,31 @@ fs_visitor::variable_storage(ir_variable *var) return (fs_reg *)hash_table_find(this->variable_ht, var); } +void +import_uniforms_callback(const void *key, + void *data, + void *closure) +{ + struct hash_table *dst_ht = (struct hash_table *)closure; + const fs_reg *reg = (const fs_reg *)data; + + if (reg->file != UNIFORM) + return; + + hash_table_insert(dst_ht, data, key); +} + +/* For 16-wide, we need to follow from the uniform setup of 8-wide dispatch. + * This brings in those uniform definitions + */ +void +fs_visitor::import_uniforms(struct hash_table *src_variable_ht) +{ + hash_table_call_foreach(src_variable_ht, + import_uniforms_callback, + variable_ht); +} + /* Our support for uniforms is piggy-backed on the struct * gl_fragment_program, because that's where the values actually * get stored, rather than in some global gl_shader_program uniform @@ -614,7 +665,7 @@ fs_visitor::emit_math(fs_opcodes opcode, fs_reg dst, fs_reg src) if (intel->gen < 6) { inst->base_mrf = 2; - inst->mlen = 1; + inst->mlen = c->dispatch_width / 8; } return inst; @@ -652,7 +703,7 @@ fs_visitor::emit_math(fs_opcodes opcode, fs_reg dst, fs_reg src0, fs_reg src1) inst = emit(opcode, dst, src0, reg_null_f); inst->base_mrf = base_mrf; - inst->mlen = 2; + inst->mlen = 2 * c->dispatch_width / 8; } return inst; } @@ -689,6 +740,13 @@ fs_visitor::visit(ir_variable *ir) if (ir->mode == ir_var_uniform) { int param_index = c->prog_data.nr_params; + if (c->dispatch_width == 16) { + if (!variable_storage(ir)) { + fail("Failed to find uniform '%s' in 16-wide\n", ir->name); + } + return; + } + if (!strncmp(ir->name, "gl_", 3)) { setup_builtin_uniform_values(ir); } else { @@ -1233,32 +1291,34 @@ fs_visitor::emit_texture_gen4(ir_texture *ir, fs_reg dst, fs_reg coordinate) return inst; } +/* gen5's sampler has slots for u, v, r, array index, then optional + * parameters like shadow comparitor or LOD bias. If optional + * parameters aren't present, those base slots are optional and don't + * need to be included in the message. + * + * We don't fill in the unnecessary slots regardless, which may look + * surprising in the disassembly. + */ fs_inst * fs_visitor::emit_texture_gen5(ir_texture *ir, fs_reg dst, fs_reg coordinate) { - /* gen5's SIMD8 sampler has slots for u, v, r, array index, then - * optional parameters like shadow comparitor or LOD bias. If - * optional parameters aren't present, those base slots are - * optional and don't need to be included in the message. - * - * We don't fill in the unnecessary slots regardless, which may - * look surprising in the disassembly. - */ int mlen = 1; /* g0 header always present. */ int base_mrf = 1; + int reg_width = c->dispatch_width / 8; for (int i = 0; i < ir->coordinate->type->vector_elements; i++) { - emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen + i), coordinate); + emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen + i * reg_width), + coordinate); coordinate.reg_offset++; } - mlen += ir->coordinate->type->vector_elements; + mlen += ir->coordinate->type->vector_elements * reg_width; if (ir->shadow_comparitor) { - mlen = MAX2(mlen, 5); + mlen = MAX2(mlen, 1 + 4 * reg_width); ir->shadow_comparitor->accept(this); emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), this->result); - mlen++; + mlen += reg_width; } fs_inst *inst = NULL; @@ -1268,17 +1328,18 @@ fs_visitor::emit_texture_gen5(ir_texture *ir, fs_reg dst, fs_reg coordinate) break; case ir_txb: ir->lod_info.bias->accept(this); - mlen = MAX2(mlen, 5); + mlen = MAX2(mlen, 1 + 4 * reg_width); emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), this->result); - mlen++; + mlen += reg_width; inst = emit(FS_OPCODE_TXB, dst); + break; case ir_txl: ir->lod_info.lod->accept(this); - mlen = MAX2(mlen, 5); + mlen = MAX2(mlen, 1 + 4 * reg_width); emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), this->result); - mlen++; + mlen += reg_width; inst = emit(FS_OPCODE_TXL, dst); break; @@ -1290,6 +1351,10 @@ fs_visitor::emit_texture_gen5(ir_texture *ir, fs_reg dst, fs_reg coordinate) inst->base_mrf = base_mrf; inst->mlen = mlen; + if (mlen > 11) { + fail("Message length >11 disallowed by hardware\n"); + } + return inst; } @@ -1355,6 +1420,12 @@ fs_visitor::visit(ir_texture *ir) 0 }; + if (c->dispatch_width == 16) { + fail("rectangle scale uniform setup not supported on 16-wide\n"); + this->result = fs_reg(this, ir->type); + return; + } + c->prog_data.param_convert[c->prog_data.nr_params] = PARAM_NO_CONVERT; c->prog_data.param_convert[c->prog_data.nr_params + 1] = @@ -1731,6 +1802,10 @@ fs_visitor::visit(ir_if *ir) { fs_inst *inst; + if (c->dispatch_width == 16) { + fail("Can't support (non-uniform) control flow on 16-wide\n"); + } + /* Don't point the annotation at the if statement, because then it plus * the then and else blocks get printed. */ @@ -1771,6 +1846,10 @@ fs_visitor::visit(ir_loop *ir) { fs_reg counter = reg_undef; + if (c->dispatch_width == 16) { + fail("Can't support (non-uniform) control flow on 16-wide\n"); + } + if (ir->counter) { this->base_ir = ir->counter; ir->counter->accept(this); @@ -1874,6 +1953,11 @@ fs_visitor::emit(fs_inst inst) fs_inst *list_inst = new(mem_ctx) fs_inst; *list_inst = inst; + if (force_uncompressed_stack > 0) + list_inst->force_uncompressed = true; + else if (force_sechalf_stack > 0) + list_inst->force_sechalf = true; + list_inst->annotation = this->current_annotation; list_inst->ir = this->base_ir; @@ -1916,21 +2000,14 @@ fs_visitor::interp_reg(int location, int channel) void fs_visitor::emit_interpolation_setup_gen4() { - struct brw_reg g1_uw = retype(brw_vec1_grf(1, 0), BRW_REGISTER_TYPE_UW); - this->current_annotation = "compute pixel centers"; this->pixel_x = fs_reg(this, glsl_type::uint_type); this->pixel_y = fs_reg(this, glsl_type::uint_type); this->pixel_x.type = BRW_REGISTER_TYPE_UW; this->pixel_y.type = BRW_REGISTER_TYPE_UW; - emit(BRW_OPCODE_ADD, - this->pixel_x, - fs_reg(stride(suboffset(g1_uw, 4), 2, 4, 0)), - fs_reg(brw_imm_v(0x10101010))); - emit(BRW_OPCODE_ADD, - this->pixel_y, - fs_reg(stride(suboffset(g1_uw, 5), 2, 4, 0)), - fs_reg(brw_imm_v(0x11001100))); + + emit(FS_OPCODE_PIXEL_X, this->pixel_x); + emit(FS_OPCODE_PIXEL_Y, this->pixel_y); this->current_annotation = "compute pixel deltas from v0"; if (brw->has_pln) { @@ -2001,11 +2078,69 @@ fs_visitor::emit_interpolation_setup_gen6() } void +fs_visitor::emit_color_write(int index, int first_color_mrf, fs_reg color) +{ + int reg_width = c->dispatch_width / 8; + + if (c->dispatch_width == 8 || intel->gen == 6) { + /* SIMD8 write looks like: + * m + 0: r0 + * m + 1: r1 + * m + 2: g0 + * m + 3: g1 + * + * gen6 SIMD16 DP write looks like: + * m + 0: r0 + * m + 1: r1 + * m + 2: g0 + * m + 3: g1 + * m + 4: b0 + * m + 5: b1 + * m + 6: a0 + * m + 7: a1 + */ + emit(BRW_OPCODE_MOV, fs_reg(MRF, first_color_mrf + index * reg_width), + color); + } else { + /* pre-gen6 SIMD16 single source DP write looks like: + * m + 0: r0 + * m + 1: g0 + * m + 2: b0 + * m + 3: a0 + * m + 4: r1 + * m + 5: g1 + * m + 6: b1 + * m + 7: a1 + */ + if (brw->has_compr4) { + /* By setting the high bit of the MRF register number, we + * indicate that we want COMPR4 mode - instead of doing the + * usual destination + 1 for the second half we get + * destination + 4. + */ + emit(BRW_OPCODE_MOV, + fs_reg(MRF, BRW_MRF_COMPR4 + first_color_mrf + index), color); + } else { + push_force_uncompressed(); + emit(BRW_OPCODE_MOV, fs_reg(MRF, first_color_mrf + index), color); + pop_force_uncompressed(); + + push_force_sechalf(); + color.sechalf = true; + emit(BRW_OPCODE_MOV, fs_reg(MRF, first_color_mrf + index + 4), color); + pop_force_sechalf(); + color.sechalf = false; + } + } +} + +void fs_visitor::emit_fb_writes() { this->current_annotation = "FB write header"; GLboolean header_present = GL_TRUE; int nr = 0; + int reg_width = c->dispatch_width / 8; if (intel->gen >= 6 && !this->kill_emitted && @@ -2019,31 +2154,44 @@ fs_visitor::emit_fb_writes() } if (c->aa_dest_stencil_reg) { + push_force_uncompressed(); emit(BRW_OPCODE_MOV, fs_reg(MRF, nr++), fs_reg(brw_vec8_grf(c->aa_dest_stencil_reg, 0))); + pop_force_uncompressed(); } /* Reserve space for color. It'll be filled in per MRT below. */ int color_mrf = nr; - nr += 4; + nr += 4 * reg_width; if (c->source_depth_to_render_target) { + if (intel->gen == 6 && c->dispatch_width == 16) { + /* For outputting oDepth on gen6, SIMD8 writes have to be + * used. This would require 8-wide moves of each half to + * message regs, kind of like pre-gen5 SIMD16 FB writes. + * Just bail on doing so for now. + */ + fail("Missing support for simd16 depth writes on gen6\n"); + } + if (c->computes_depth) { /* Hand over gl_FragDepth. */ assert(this->frag_depth); fs_reg depth = *(variable_storage(this->frag_depth)); - emit(BRW_OPCODE_MOV, fs_reg(MRF, nr++), depth); + emit(BRW_OPCODE_MOV, fs_reg(MRF, nr), depth); } else { /* Pass through the payload depth. */ - emit(BRW_OPCODE_MOV, fs_reg(MRF, nr++), + emit(BRW_OPCODE_MOV, fs_reg(MRF, nr), fs_reg(brw_vec8_grf(c->source_depth_reg, 0))); } + nr += reg_width; } if (c->dest_depth_reg) { - emit(BRW_OPCODE_MOV, fs_reg(MRF, nr++), + emit(BRW_OPCODE_MOV, fs_reg(MRF, nr), fs_reg(brw_vec8_grf(c->dest_depth_reg, 0))); + nr += reg_width; } fs_reg color = reg_undef; @@ -2060,7 +2208,7 @@ fs_visitor::emit_fb_writes() target); if (this->frag_color || this->frag_data) { for (int i = 0; i < 4; i++) { - emit(BRW_OPCODE_MOV, fs_reg(MRF, color_mrf + i), color); + emit_color_write(i, color_mrf, color); color.reg_offset++; } } @@ -2084,7 +2232,7 @@ fs_visitor::emit_fb_writes() * renderbuffer. */ color.reg_offset += 3; - emit(BRW_OPCODE_MOV, fs_reg(MRF, color_mrf + 3), color); + emit_color_write(3, color_mrf, color); } fs_inst *inst = emit(FS_OPCODE_FB_WRITE); @@ -2144,8 +2292,7 @@ fs_visitor::generate_fb_write(fs_inst *inst) brw_pop_insn_state(p); brw_fb_WRITE(p, - 8, /* dispatch_width */ - retype(vec8(brw_null_reg()), BRW_REGISTER_TYPE_UW), + c->dispatch_width, inst->base_mrf, implied_header, inst->target, @@ -2155,6 +2302,40 @@ fs_visitor::generate_fb_write(fs_inst *inst) inst->header_present); } +/* Computes the integer pixel x,y values from the origin. + * + * This is the basis of gl_FragCoord computation, but is also used + * pre-gen6 for computing the deltas from v0 for computing + * interpolation. + */ +void +fs_visitor::generate_pixel_xy(struct brw_reg dst, bool is_x) +{ + struct brw_reg g1_uw = retype(brw_vec1_grf(1, 0), BRW_REGISTER_TYPE_UW); + struct brw_reg src; + struct brw_reg deltas; + + if (is_x) { + src = stride(suboffset(g1_uw, 4), 2, 4, 0); + deltas = brw_imm_v(0x10101010); + } else { + src = stride(suboffset(g1_uw, 5), 2, 4, 0); + deltas = brw_imm_v(0x11001100); + } + + if (c->dispatch_width == 16) { + dst = vec16(dst); + } + + /* We do this 8 or 16-wide, but since the destination is UW we + * don't do compression in the 16-wide case. + */ + brw_push_insn_state(p); + brw_set_compression_control(p, BRW_COMPRESSION_NONE); + brw_ADD(p, dst, src, deltas); + brw_pop_insn_state(p); +} + void fs_visitor::generate_linterp(fs_inst *inst, struct brw_reg dst, struct brw_reg *src) @@ -2214,8 +2395,16 @@ fs_visitor::generate_math(fs_inst *inst, assert(inst->mlen == 0); if (inst->opcode == FS_OPCODE_POW) { + brw_set_compression_control(p, BRW_COMPRESSION_NONE); brw_math2(p, dst, op, src[0], src[1]); + + if (c->dispatch_width == 16) { + brw_set_compression_control(p, BRW_COMPRESSION_2NDHALF); + brw_math2(p, sechalf(dst), op, sechalf(src[0]), sechalf(src[1])); + brw_set_compression_control(p, BRW_COMPRESSION_COMPRESSED); + } } else { + brw_set_compression_control(p, BRW_COMPRESSION_NONE); brw_math(p, dst, op, inst->saturate ? BRW_MATH_SATURATE_SATURATE : @@ -2223,10 +2412,23 @@ fs_visitor::generate_math(fs_inst *inst, 0, src[0], BRW_MATH_DATA_VECTOR, BRW_MATH_PRECISION_FULL); + + if (c->dispatch_width == 16) { + brw_set_compression_control(p, BRW_COMPRESSION_2NDHALF); + brw_math(p, sechalf(dst), + op, + inst->saturate ? BRW_MATH_SATURATE_SATURATE : + BRW_MATH_SATURATE_NONE, + 0, sechalf(src[0]), + BRW_MATH_DATA_VECTOR, + BRW_MATH_PRECISION_FULL); + brw_set_compression_control(p, BRW_COMPRESSION_COMPRESSED); + } } - } else { + } else /* gen <= 5 */{ assert(inst->mlen >= 1); + brw_set_compression_control(p, BRW_COMPRESSION_NONE); brw_math(p, dst, op, inst->saturate ? BRW_MATH_SATURATE_SATURATE : @@ -2234,6 +2436,19 @@ fs_visitor::generate_math(fs_inst *inst, inst->base_mrf, src[0], BRW_MATH_DATA_VECTOR, BRW_MATH_PRECISION_FULL); + + if (c->dispatch_width == 16) { + brw_set_compression_control(p, BRW_COMPRESSION_2NDHALF); + brw_math(p, sechalf(dst), + op, + inst->saturate ? BRW_MATH_SATURATE_SATURATE : + BRW_MATH_SATURATE_NONE, + inst->base_mrf + 1, sechalf(src[0]), + BRW_MATH_DATA_VECTOR, + BRW_MATH_PRECISION_FULL); + + brw_set_compression_control(p, BRW_COMPRESSION_COMPRESSED); + } } } @@ -2244,6 +2459,12 @@ fs_visitor::generate_tex(fs_inst *inst, struct brw_reg dst, struct brw_reg src) int rlen = 4; uint32_t simd_mode = BRW_SAMPLER_SIMD_MODE_SIMD8; + if (c->dispatch_width == 16) { + rlen = 8; + dst = vec16(dst); + simd_mode = BRW_SAMPLER_SIMD_MODE_SIMD16; + } + if (intel->gen >= 5) { switch (inst->opcode) { case FS_OPCODE_TEX: @@ -2311,11 +2532,6 @@ fs_visitor::generate_tex(fs_inst *inst, struct brw_reg dst, struct brw_reg src) } assert(msg_type != -1); - if (simd_mode == BRW_SAMPLER_SIMD_MODE_SIMD16) { - rlen = 8; - dst = vec16(dst); - } - brw_SAMPLE(p, retype(dst, BRW_REGISTER_TYPE_UW), inst->base_mrf, @@ -2408,6 +2624,7 @@ fs_visitor::generate_discard_not(fs_inst *inst, struct brw_reg mask) } else { brw_push_insn_state(p); brw_set_mask_control(p, BRW_MASK_DISABLE); + brw_set_compression_control(p, BRW_COMPRESSION_NONE); brw_NOT(p, mask, brw_mask_reg(1)); /* IMASK */ brw_pop_insn_state(p); } @@ -2432,6 +2649,7 @@ fs_visitor::generate_discard_and(fs_inst *inst, struct brw_reg mask) brw_push_insn_state(p); brw_set_mask_control(p, BRW_MASK_DISABLE); + brw_set_compression_control(p, BRW_COMPRESSION_NONE); brw_AND(p, g1, f0, g1); brw_pop_insn_state(p); } else { @@ -2441,6 +2659,7 @@ fs_visitor::generate_discard_and(fs_inst *inst, struct brw_reg mask) brw_push_insn_state(p); brw_set_mask_control(p, BRW_MASK_DISABLE); + brw_set_compression_control(p, BRW_COMPRESSION_NONE); brw_AND(p, g0, mask, g0); brw_pop_insn_state(p); } @@ -2527,6 +2746,9 @@ fs_visitor::generate_pull_constant_load(fs_inst *inst, struct brw_reg dst) void fs_visitor::setup_paramvalues_refs() { + if (c->dispatch_width != 8) + return; + /* Set up the pointers to ParamValues now that that array is finalized. */ for (unsigned int i = 0; i < c->prog_data.nr_params; i++) { c->prog_data.param[i] = @@ -2538,8 +2760,12 @@ fs_visitor::setup_paramvalues_refs() void fs_visitor::assign_curb_setup() { - c->prog_data.first_curbe_grf = c->nr_payload_regs; c->prog_data.curb_read_length = ALIGN(c->prog_data.nr_params, 8) / 8; + if (c->dispatch_width == 8) { + c->prog_data.first_curbe_grf = c->nr_payload_regs; + } else { + c->prog_data.first_curbe_grf_16 = c->nr_payload_regs; + } /* Map the offsets in the UNIFORM file to fixed HW regs. */ foreach_iter(exec_list_iterator, iter, this->instructions) { @@ -2548,7 +2774,7 @@ fs_visitor::assign_curb_setup() for (unsigned int i = 0; i < 3; i++) { if (inst->src[i].file == UNIFORM) { int constant_nr = inst->src[i].hw_reg + inst->src[i].reg_offset; - struct brw_reg brw_reg = brw_vec1_grf(c->prog_data.first_curbe_grf + + struct brw_reg brw_reg = brw_vec1_grf(c->nr_payload_regs + constant_nr / 8, constant_nr % 8); @@ -2600,7 +2826,7 @@ fs_visitor::calculate_urb_setup() void fs_visitor::assign_urb_setup() { - int urb_start = c->prog_data.first_curbe_grf + c->prog_data.curb_read_length; + int urb_start = c->nr_payload_regs + c->prog_data.curb_read_length; /* Offset all the urb_setup[] index by the actual position of the * setup regs, now that the location of the constants has been chosen. @@ -2725,6 +2951,11 @@ fs_visitor::setup_pull_constants() if (c->prog_data.nr_params <= max_uniform_components) return; + if (c->dispatch_width == 16) { + fail("Pull constants not supported in 16-wide\n"); + return; + } + /* Just demote the end of the list. We could probably do better * here, demoting things that are rarely used in the program first. */ @@ -2884,7 +3115,9 @@ fs_visitor::propagate_constants() if (inst->opcode != BRW_OPCODE_MOV || inst->predicated || inst->dst.file != GRF || inst->src[0].file != IMM || - inst->dst.type != inst->src[0].type) + inst->dst.type != inst->src[0].type || + (c->dispatch_width == 16 && + (inst->force_uncompressed || inst->force_sechalf))) continue; /* Don't bother with cases where we should have had the @@ -3152,6 +3385,20 @@ fs_visitor::compute_to_mrf() inst->src[0].abs || inst->src[0].negate || inst->src[0].smear != -1) continue; + /* Work out which hardware MRF registers are written by this + * instruction. + */ + int mrf_low = inst->dst.hw_reg & ~BRW_MRF_COMPR4; + int mrf_high; + if (inst->dst.hw_reg & BRW_MRF_COMPR4) { + mrf_high = mrf_low + 4; + } else if (c->dispatch_width == 16 && + (!inst->force_uncompressed && !inst->force_sechalf)) { + mrf_high = mrf_low + 1; + } else { + mrf_high = mrf_low; + } + /* Can't compute-to-MRF this GRF if someone else was going to * read it later. */ @@ -3179,11 +3426,21 @@ fs_visitor::compute_to_mrf() } /* If it's predicated, it (probably) didn't populate all - * the channels. + * the channels. We might be able to rewrite everything + * that writes that reg, but it would require smarter + * tracking to delay the rewriting until complete success. */ if (scan_inst->predicated) break; + /* If it's half of register setup and not the same half as + * our MOV we're trying to remove, bail for now. + */ + if (scan_inst->force_uncompressed != inst->force_uncompressed || + scan_inst->force_sechalf != inst->force_sechalf) { + break; + } + /* SEND instructions can't have MRF as a destination. */ if (scan_inst->mlen) break; @@ -3233,12 +3490,29 @@ fs_visitor::compute_to_mrf() if (interfered) break; - if (scan_inst->dst.file == MRF && - scan_inst->dst.hw_reg == inst->dst.hw_reg) { - /* Somebody else wrote our MRF here, so we can't can't + if (scan_inst->dst.file == MRF) { + /* If somebody else writes our MRF here, we can't * compute-to-MRF before that. */ - break; + int scan_mrf_low = scan_inst->dst.hw_reg & ~BRW_MRF_COMPR4; + int scan_mrf_high; + + if (scan_inst->dst.hw_reg & BRW_MRF_COMPR4) { + scan_mrf_high = scan_mrf_low + 4; + } else if (c->dispatch_width == 16 && + (!scan_inst->force_uncompressed && + !scan_inst->force_sechalf)) { + scan_mrf_high = scan_mrf_low + 1; + } else { + scan_mrf_high = scan_mrf_low; + } + + if (mrf_low == scan_mrf_low || + mrf_low == scan_mrf_high || + mrf_high == scan_mrf_low || + mrf_high == scan_mrf_high) { + break; + } } if (scan_inst->mlen > 0) { @@ -3247,8 +3521,12 @@ fs_visitor::compute_to_mrf() * scan_inst->mlen - 1. Don't go pushing our MRF write up * above it. */ - if (inst->dst.hw_reg >= scan_inst->base_mrf && - inst->dst.hw_reg < scan_inst->base_mrf + scan_inst->mlen) { + if (mrf_low >= scan_inst->base_mrf && + mrf_low < scan_inst->base_mrf + scan_inst->mlen) { + break; + } + if (mrf_high >= scan_inst->base_mrf && + mrf_high < scan_inst->base_mrf + scan_inst->mlen) { break; } } @@ -3268,6 +3546,10 @@ fs_visitor::remove_duplicate_mrf_writes() fs_inst *last_mrf_move[16]; bool progress = false; + /* Need to update the MRF tracking for compressed instructions. */ + if (c->dispatch_width == 16) + return false; + memset(last_mrf_move, 0, sizeof(last_mrf_move)); foreach_iter(exec_list_iterator, iter, this->instructions) { @@ -3347,6 +3629,29 @@ fs_visitor::virtual_grf_interferes(int a, int b) (this->virtual_grf_use[b] != -1 || this->virtual_grf_def[b] == MAX_INSTRUCTION)); + /* If the register is used to store 16 values of less than float + * size (only the case for pixel_[xy]), then we can't allocate + * another dword-sized thing to that register that would be used in + * the same instruction. This is because when the GPU decodes (for + * example): + * + * (declare (in ) vec4 gl_FragCoord@0x97766a0) + * add(16) g6<1>F g6<8,8,1>UW 0.5F { align1 compr }; + * + * it's actually processed as: + * add(8) g6<1>F g6<8,8,1>UW 0.5F { align1 }; + * add(8) g7<1>F g6.8<8,8,1>UW 0.5F { align1 sechalf }; + * + * so our second half values in g6 got overwritten in the first + * half. + */ + if (c->dispatch_width == 16 && (this->pixel_x.reg == a || + this->pixel_x.reg == b || + this->pixel_y.reg == a || + this->pixel_y.reg == b)) { + return start <= end; + } + return start < end; } @@ -3366,6 +3671,8 @@ static struct brw_reg brw_reg_from_fs_reg(fs_reg *reg) reg->hw_reg, reg->smear); } brw_reg = retype(brw_reg, reg->type); + if (reg->sechalf) + brw_reg = sechalf(brw_reg); break; case IMM: switch (reg->type) { @@ -3411,7 +3718,7 @@ static struct brw_reg brw_reg_from_fs_reg(fs_reg *reg) void fs_visitor::generate_code() { - int last_native_inst = 0; + int last_native_inst = p->nr_insn; const char *last_annotation_string = NULL; ir_instruction *last_annotation_ir = NULL; @@ -3427,8 +3734,8 @@ fs_visitor::generate_code() if (unlikely(INTEL_DEBUG & DEBUG_WM)) { - printf("Native code for fragment shader %d:\n", - ctx->Shader.CurrentFragmentProgram->Name); + printf("Native code for fragment shader %d (%d-wide dispatch):\n", + ctx->Shader.CurrentFragmentProgram->Name, c->dispatch_width); } foreach_iter(exec_list_iterator, iter, this->instructions) { @@ -3461,6 +3768,14 @@ fs_visitor::generate_code() brw_set_predicate_inverse(p, inst->predicate_inverse); brw_set_saturate(p, inst->saturate); + if (inst->force_uncompressed || c->dispatch_width == 8) { + brw_set_compression_control(p, BRW_COMPRESSION_NONE); + } else if (inst->force_sechalf) { + brw_set_compression_control(p, BRW_COMPRESSION_2NDHALF); + } else { + brw_set_compression_control(p, BRW_COMPRESSION_COMPRESSED); + } + switch (inst->opcode) { case BRW_OPCODE_MOV: brw_MOV(p, dst, src[0]); @@ -3602,6 +3917,12 @@ fs_visitor::generate_code() case FS_OPCODE_COS: generate_math(inst, dst, src); break; + case FS_OPCODE_PIXEL_X: + generate_pixel_xy(dst, true); + break; + case FS_OPCODE_PIXEL_Y: + generate_pixel_xy(dst, false); + break; case FS_OPCODE_CINTERP: brw_MOV(p, dst, src[0]); break; @@ -3668,6 +3989,10 @@ fs_visitor::generate_code() last_native_inst = p->nr_insn; } + if (unlikely(INTEL_DEBUG & DEBUG_WM)) { + printf("\n"); + } + ralloc_free(if_stack); ralloc_free(loop_stack); ralloc_free(if_depth_in_loop); @@ -3693,108 +4018,146 @@ fs_visitor::generate_code() } } -GLboolean -brw_wm_fs_emit(struct brw_context *brw, struct brw_wm_compile *c) +bool +fs_visitor::run() { - struct intel_context *intel = &brw->intel; - struct gl_context *ctx = &intel->ctx; - struct gl_shader_program *prog = ctx->Shader.CurrentFragmentProgram; + uint32_t prog_offset_16 = 0; + uint32_t orig_nr_params = c->prog_data.nr_params; - if (!prog) - return GL_FALSE; + brw_wm_payload_setup(brw, c); - struct brw_shader *shader = - (brw_shader *) prog->_LinkedShaders[MESA_SHADER_FRAGMENT]; - if (!shader) - return GL_FALSE; + if (c->dispatch_width == 16) { + /* align to 64 byte boundary. */ + while ((c->func.nr_insn * sizeof(struct brw_instruction)) % 64) { + brw_NOP(p); + } - /* We always use 8-wide mode, at least for now. For one, flow - * control only works in 8-wide. Also, when we're fragment shader - * bound, we're almost always under register pressure as well, so - * 8-wide would save us from the performance cliff of spilling - * regs. - */ - c->dispatch_width = 8; + /* Save off the start of this 16-wide program in case we succeed. */ + prog_offset_16 = c->func.nr_insn * sizeof(struct brw_instruction); - if (unlikely(INTEL_DEBUG & DEBUG_WM)) { - printf("GLSL IR for native fragment shader %d:\n", prog->Name); - _mesa_print_ir(shader->ir, NULL); - printf("\n"); + brw_set_compression_control(p, BRW_COMPRESSION_COMPRESSED); } - /* Now the main event: Visit the shader IR and generate our FS IR for it. - */ - fs_visitor v(c, shader); - if (0) { - v.emit_dummy_fs(); + emit_dummy_fs(); } else { - v.calculate_urb_setup(); + calculate_urb_setup(); if (intel->gen < 6) - v.emit_interpolation_setup_gen4(); + emit_interpolation_setup_gen4(); else - v.emit_interpolation_setup_gen6(); + emit_interpolation_setup_gen6(); /* Generate FS IR for main(). (the visitor only descends into * functions called "main"). */ foreach_iter(exec_list_iterator, iter, *shader->ir) { ir_instruction *ir = (ir_instruction *)iter.get(); - v.base_ir = ir; - ir->accept(&v); + base_ir = ir; + ir->accept(this); } - v.emit_fb_writes(); + emit_fb_writes(); - v.split_virtual_grfs(); + split_virtual_grfs(); - v.setup_paramvalues_refs(); - v.setup_pull_constants(); + setup_paramvalues_refs(); + setup_pull_constants(); bool progress; do { progress = false; - progress = v.remove_duplicate_mrf_writes() || progress; + progress = remove_duplicate_mrf_writes() || progress; - progress = v.propagate_constants() || progress; - progress = v.register_coalesce() || progress; - progress = v.compute_to_mrf() || progress; - progress = v.dead_code_eliminate() || progress; + progress = propagate_constants() || progress; + progress = register_coalesce() || progress; + progress = compute_to_mrf() || progress; + progress = dead_code_eliminate() || progress; } while (progress); - v.schedule_instructions(); + schedule_instructions(); - v.assign_curb_setup(); - v.assign_urb_setup(); + assign_curb_setup(); + assign_urb_setup(); if (0) { /* Debug of register spilling: Go spill everything. */ - int virtual_grf_count = v.virtual_grf_next; + int virtual_grf_count = virtual_grf_next; for (int i = 1; i < virtual_grf_count; i++) { - v.spill_reg(i); + spill_reg(i); } } if (0) - v.assign_regs_trivial(); + assign_regs_trivial(); else { - while (!v.assign_regs()) { - if (v.failed) + while (!assign_regs()) { + if (failed) break; } } } + assert(force_uncompressed_stack == 0); + assert(force_sechalf_stack == 0); - if (!v.failed) - v.generate_code(); + if (failed) + return false; - assert(!v.failed); /* FINISHME: Cleanly fail, tested at link time, etc. */ + generate_code(); - if (v.failed) - return GL_FALSE; + if (c->dispatch_width == 8) { + c->prog_data.total_grf = grf_used; + } else { + c->prog_data.total_grf_16 = grf_used; + c->prog_data.prog_offset_16 = prog_offset_16; - c->prog_data.total_grf = v.grf_used; + /* Make sure we didn't try to sneak in an extra uniform */ + assert(orig_nr_params == c->prog_data.nr_params); + } - return GL_TRUE; + return !failed; +} + +bool +brw_wm_fs_emit(struct brw_context *brw, struct brw_wm_compile *c) +{ + struct intel_context *intel = &brw->intel; + struct gl_context *ctx = &intel->ctx; + struct gl_shader_program *prog = ctx->Shader.CurrentFragmentProgram; + + if (!prog) + return false; + + struct brw_shader *shader = + (brw_shader *) prog->_LinkedShaders[MESA_SHADER_FRAGMENT]; + if (!shader) + return false; + + if (unlikely(INTEL_DEBUG & DEBUG_WM)) { + printf("GLSL IR for native fragment shader %d:\n", prog->Name); + _mesa_print_ir(shader->ir, NULL); + printf("\n\n"); + } + + /* Now the main event: Visit the shader IR and generate our FS IR for it. + */ + c->dispatch_width = 8; + + fs_visitor v(c, shader); + if (!v.run()) { + /* FINISHME: Cleanly fail, test at link time, etc. */ + assert(!"not reached"); + return false; + } + + if (intel->gen >= 5 && c->prog_data.nr_pull_params == 0) { + c->dispatch_width = 16; + fs_visitor v2(c, shader); + v2.import_uniforms(v.variable_ht); + v2.run(); + } + + c->prog_data.dispatch_width = 8; + + return true; } diff --git a/src/mesa/drivers/dri/i965/brw_fs.h b/src/mesa/drivers/dri/i965/brw_fs.h index f792906cfe7..518d09180c4 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.h +++ b/src/mesa/drivers/dri/i965/brw_fs.h @@ -67,6 +67,8 @@ enum fs_opcodes { FS_OPCODE_COS, FS_OPCODE_DDX, FS_OPCODE_DDY, + FS_OPCODE_PIXEL_X, + FS_OPCODE_PIXEL_Y, FS_OPCODE_CINTERP, FS_OPCODE_LINTERP, FS_OPCODE_TEX, @@ -176,6 +178,7 @@ public: int type; bool negate; bool abs; + bool sechalf; struct brw_reg fixed_hw_reg; int smear; /* -1, or a channel of the reg to smear to all channels. */ @@ -341,6 +344,8 @@ public: bool eot; bool header_present; bool shadow_compare; + bool force_uncompressed; + bool force_sechalf; uint32_t offset; /* spill/unspill offset */ /** @{ @@ -403,6 +408,8 @@ public: this->live_intervals_valid = false; this->kill_emitted = false; + this->force_uncompressed_stack = 0; + this->force_sechalf_stack = 0; } ~fs_visitor() @@ -413,6 +420,7 @@ public: fs_reg *variable_storage(ir_variable *var); int virtual_grf_alloc(int size); + void import_uniforms(struct hash_table *src_variable_ht); void visit(ir_variable *ir); void visit(ir_assignment *ir); @@ -459,6 +467,7 @@ public: return emit(fs_inst(opcode, dst, src0, src1, src2)); } + bool run(); void setup_paramvalues_refs(); void assign_curb_setup(); void calculate_urb_setup(); @@ -479,8 +488,14 @@ public: void schedule_instructions(); void fail(const char *msg, ...); + void push_force_uncompressed(); + void pop_force_uncompressed(); + void push_force_sechalf(); + void pop_force_sechalf(); + void generate_code(); void generate_fb_write(fs_inst *inst); + void generate_pixel_xy(struct brw_reg dst, bool is_x); void generate_linterp(fs_inst *inst, struct brw_reg dst, struct brw_reg *src); void generate_tex(fs_inst *inst, struct brw_reg dst, struct brw_reg src); @@ -508,6 +523,7 @@ public: void emit_if_gen6(ir_if *ir); void emit_unspill(fs_inst *inst, fs_reg reg, uint32_t spill_offset); + void emit_color_write(int index, int first_color_mrf, fs_reg color); void emit_fb_writes(); void emit_assignment_writes(fs_reg &l, fs_reg &r, const glsl_type *type, bool predicated); @@ -565,6 +581,9 @@ public: fs_reg reg_null_cmp; int grf_used; + + int force_uncompressed_stack; + int force_sechalf_stack; }; GLboolean brw_do_channel_expressions(struct exec_list *instructions); diff --git a/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp b/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp index 67f29ce1816..1e2cf917116 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp @@ -48,11 +48,11 @@ extern "C" { #include "../glsl/ir_print_visitor.h" static void -assign_reg(int *reg_hw_locations, fs_reg *reg) +assign_reg(int *reg_hw_locations, fs_reg *reg, int reg_width) { if (reg->file == GRF && reg->reg != 0) { assert(reg->reg_offset >= 0); - reg->hw_reg = reg_hw_locations[reg->reg] + reg->reg_offset; + reg->hw_reg = reg_hw_locations[reg->reg] + reg->reg_offset * reg_width; reg->reg = 0; } } @@ -63,32 +63,48 @@ fs_visitor::assign_regs_trivial() int last_grf = 0; int hw_reg_mapping[this->virtual_grf_next]; int i; + int reg_width = c->dispatch_width / 8; hw_reg_mapping[0] = 0; - hw_reg_mapping[1] = this->first_non_payload_grf; + /* Note that compressed instructions require alignment to 2 registers. */ + hw_reg_mapping[1] = ALIGN(this->first_non_payload_grf, reg_width); for (i = 2; i < this->virtual_grf_next; i++) { hw_reg_mapping[i] = (hw_reg_mapping[i - 1] + - this->virtual_grf_sizes[i - 1]); + this->virtual_grf_sizes[i - 1] * reg_width); } - last_grf = hw_reg_mapping[i - 1] + this->virtual_grf_sizes[i - 1]; + last_grf = hw_reg_mapping[i - 1] + (this->virtual_grf_sizes[i - 1] * + reg_width); foreach_iter(exec_list_iterator, iter, this->instructions) { fs_inst *inst = (fs_inst *)iter.get(); - assign_reg(hw_reg_mapping, &inst->dst); - assign_reg(hw_reg_mapping, &inst->src[0]); - assign_reg(hw_reg_mapping, &inst->src[1]); + assign_reg(hw_reg_mapping, &inst->dst, reg_width); + assign_reg(hw_reg_mapping, &inst->src[0], reg_width); + assign_reg(hw_reg_mapping, &inst->src[1], reg_width); } - this->grf_used = last_grf + 1; + if (last_grf >= BRW_MAX_GRF) { + fail("Ran out of regs on trivial allocator (%d/%d)\n", + last_grf, BRW_MAX_GRF); + } + + this->grf_used = last_grf + reg_width; } bool fs_visitor::assign_regs() { + /* Most of this allocation was written for a reg_width of 1 + * (dispatch_width == 8). In extending to 16-wide, the code was + * left in place and it was converted to have the hardware + * registers it's allocating be contiguous physical pairs of regs + * for reg_width == 2. + */ + int reg_width = c->dispatch_width / 8; int last_grf = 0; int hw_reg_mapping[this->virtual_grf_next + 1]; - int base_reg_count = BRW_MAX_GRF - this->first_non_payload_grf; + int first_assigned_grf = ALIGN(this->first_non_payload_grf, reg_width); + int base_reg_count = (BRW_MAX_GRF - first_assigned_grf) / reg_width; int class_sizes[base_reg_count]; int class_count = 0; int aligned_pair_class = -1; @@ -157,8 +173,8 @@ fs_visitor::assign_regs() if (0) { printf("%d/%d conflicts %d/%d\n", - class_sizes[i], this->first_non_payload_grf + i_r, - class_sizes[c], this->first_non_payload_grf + c_r); + class_sizes[i], first_assigned_grf + i_r, + class_sizes[c], first_assigned_grf + c_r); } ra_add_reg_conflict(regs, @@ -172,7 +188,7 @@ fs_visitor::assign_regs() /* Add a special class for aligned pairs, which we'll put delta_x/y * in on gen5 so that we can do PLN. */ - if (brw->has_pln && intel->gen < 6) { + if (brw->has_pln && reg_width == 1 && intel->gen < 6) { int reg_count = (base_reg_count - 1) / 2; int unaligned_pair_class = 1; assert(class_sizes[unaligned_pair_class] == 2); @@ -182,7 +198,7 @@ fs_visitor::assign_regs() class_sizes[aligned_pair_class] = 2; class_base_reg[aligned_pair_class] = 0; class_reg_count[aligned_pair_class] = 0; - int start = (this->first_non_payload_grf & 1) ? 1 : 0; + int start = (first_assigned_grf & 1) ? 1 : 0; for (int i = 0; i < reg_count; i++) { ra_class_add_reg(regs, classes[aligned_pair_class], @@ -228,6 +244,8 @@ fs_visitor::assign_regs() if (reg == -1) { fail("no register to spill\n"); + } else if (c->dispatch_width == 16) { + fail("no spilling support on 16-wide yet\n"); } else { spill_reg(reg); } @@ -257,7 +275,7 @@ fs_visitor::assign_regs() } assert(hw_reg >= 0); - hw_reg_mapping[i] = this->first_non_payload_grf + hw_reg; + hw_reg_mapping[i] = first_assigned_grf + hw_reg * reg_width; last_grf = MAX2(last_grf, hw_reg_mapping[i] + this->virtual_grf_sizes[i] - 1); } @@ -265,12 +283,12 @@ fs_visitor::assign_regs() foreach_iter(exec_list_iterator, iter, this->instructions) { fs_inst *inst = (fs_inst *)iter.get(); - assign_reg(hw_reg_mapping, &inst->dst); - assign_reg(hw_reg_mapping, &inst->src[0]); - assign_reg(hw_reg_mapping, &inst->src[1]); + assign_reg(hw_reg_mapping, &inst->dst, reg_width); + assign_reg(hw_reg_mapping, &inst->src[0], reg_width); + assign_reg(hw_reg_mapping, &inst->src[1], reg_width); } - this->grf_used = last_grf + 1; + this->grf_used = last_grf + reg_width; ralloc_free(g); ralloc_free(regs); diff --git a/src/mesa/drivers/dri/i965/brw_fs_schedule_instructions.cpp b/src/mesa/drivers/dri/i965/brw_fs_schedule_instructions.cpp index bff8f82f3f7..fb1192c810a 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_schedule_instructions.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_schedule_instructions.cpp @@ -145,6 +145,8 @@ public: void calculate_deps(); void schedule_instructions(fs_inst *next_block_header); + bool is_compressed(fs_inst *inst); + void *mem_ctx; int instructions_to_schedule; @@ -234,6 +236,17 @@ instruction_scheduler::add_barrier_deps(schedule_node *n) } } +/* instruction scheduling needs to be aware of when an MRF write + * actually writes 2 MRFs. + */ +bool +instruction_scheduler::is_compressed(fs_inst *inst) +{ + return (v->c->dispatch_width == 16 && + !inst->force_uncompressed && + !inst->force_sechalf); +} + void instruction_scheduler::calculate_deps() { @@ -297,11 +310,24 @@ instruction_scheduler::calculate_deps() } last_grf_write[inst->dst.reg] = n; } else if (inst->dst.file == MRF) { - if (last_mrf_write[inst->dst.hw_reg]) { - add_dep(last_mrf_write[inst->dst.hw_reg], n, - last_mrf_write[inst->dst.hw_reg]->latency); + int reg = inst->dst.hw_reg & ~BRW_MRF_COMPR4; + + if (last_mrf_write[reg]) { + add_dep(last_mrf_write[reg], n, + last_mrf_write[reg]->latency); + } + last_mrf_write[reg] = n; + if (is_compressed(inst)) { + if (inst->dst.hw_reg & BRW_MRF_COMPR4) + reg += 4; + else + reg++; + if (last_mrf_write[reg]) { + add_dep(last_mrf_write[reg], n, + last_mrf_write[reg]->latency); + } + last_mrf_write[reg] = n; } - last_mrf_write[inst->dst.hw_reg] = n; } else if (inst->dst.file != BAD_FILE) { add_barrier_deps(n); } @@ -369,7 +395,18 @@ instruction_scheduler::calculate_deps() if (inst->dst.file == GRF) { last_grf_write[inst->dst.reg] = n; } else if (inst->dst.file == MRF) { - last_mrf_write[inst->dst.hw_reg] = n; + int reg = inst->dst.hw_reg & ~BRW_MRF_COMPR4; + + last_mrf_write[reg] = n; + + if (is_compressed(inst)) { + if (inst->dst.hw_reg & BRW_MRF_COMPR4) + reg += 4; + else + reg++; + + last_mrf_write[reg] = n; + } } else if (inst->dst.file != BAD_FILE) { add_barrier_deps(n); } diff --git a/src/mesa/drivers/dri/i965/brw_gs.c b/src/mesa/drivers/dri/i965/brw_gs.c index 14ee6767cd5..f213ae20acd 100644 --- a/src/mesa/drivers/dri/i965/brw_gs.c +++ b/src/mesa/drivers/dri/i965/brw_gs.c @@ -121,13 +121,11 @@ static void compile_gs_prog( struct brw_context *brw, /* Upload */ drm_intel_bo_unreference(brw->gs.prog_bo); - brw->gs.prog_bo = brw_upload_cache_with_auxdata(&brw->cache, BRW_GS_PROG, - &c.key, sizeof(c.key), - NULL, 0, - program, program_size, - &c.prog_data, - sizeof(c.prog_data), - &brw->gs.prog_data); + brw->gs.prog_bo = brw_upload_cache(&brw->cache, BRW_GS_PROG, + &c.key, sizeof(c.key), + program, program_size, + &c.prog_data, sizeof(c.prog_data), + &brw->gs.prog_data); } static const GLenum gs_prim[GL_POLYGON+1] = { @@ -193,7 +191,6 @@ static void prepare_gs_prog(struct brw_context *brw) if (brw->gs.prog_active) { brw->gs.prog_bo = brw_search_cache(&brw->cache, BRW_GS_PROG, &key, sizeof(key), - NULL, 0, &brw->gs.prog_data); if (brw->gs.prog_bo == NULL) compile_gs_prog( brw, &key ); diff --git a/src/mesa/drivers/dri/i965/brw_gs_state.c b/src/mesa/drivers/dri/i965/brw_gs_state.c index 69a5f7a6667..542874b7706 100644 --- a/src/mesa/drivers/dri/i965/brw_gs_state.c +++ b/src/mesa/drivers/dri/i965/brw_gs_state.c @@ -35,112 +35,65 @@ #include "brw_state.h" #include "brw_defines.h" -struct brw_gs_unit_key { - unsigned int total_grf; - unsigned int urb_entry_read_length; - - unsigned int curbe_offset; - - unsigned int nr_urb_entries, urb_size; - GLboolean prog_active; -}; - static void -gs_unit_populate_key(struct brw_context *brw, struct brw_gs_unit_key *key) -{ - memset(key, 0, sizeof(*key)); - - /* CACHE_NEW_GS_PROG */ - key->prog_active = brw->gs.prog_active; - if (key->prog_active) { - key->total_grf = brw->gs.prog_data->total_grf; - key->urb_entry_read_length = brw->gs.prog_data->urb_read_length; - } else { - key->total_grf = 1; - key->urb_entry_read_length = 1; - } - - /* BRW_NEW_CURBE_OFFSETS */ - key->curbe_offset = brw->curbe.clip_start; - - /* BRW_NEW_URB_FENCE */ - key->nr_urb_entries = brw->urb.nr_gs_entries; - key->urb_size = brw->urb.vsize; -} - -static drm_intel_bo * -gs_unit_create_from_key(struct brw_context *brw, struct brw_gs_unit_key *key) +brw_prepare_gs_unit(struct brw_context *brw) { struct intel_context *intel = &brw->intel; - struct brw_gs_unit_state gs; - drm_intel_bo *bo; - - memset(&gs, 0, sizeof(gs)); - - gs.thread0.grf_reg_count = ALIGN(key->total_grf, 16) / 16 - 1; - if (key->prog_active) /* reloc */ - gs.thread0.kernel_start_pointer = brw->gs.prog_bo->offset >> 6; + struct brw_gs_unit_state *gs; - gs.thread1.floating_point_mode = BRW_FLOATING_POINT_NON_IEEE_754; - gs.thread1.single_program_flow = 1; + gs = brw_state_batch(brw, sizeof(*gs), 32, &brw->gs.state_offset); - gs.thread3.dispatch_grf_start_reg = 1; - gs.thread3.const_urb_entry_read_offset = 0; - gs.thread3.const_urb_entry_read_length = 0; - gs.thread3.urb_entry_read_offset = 0; - gs.thread3.urb_entry_read_length = key->urb_entry_read_length; + memset(gs, 0, sizeof(*gs)); - gs.thread4.nr_urb_entries = key->nr_urb_entries; - gs.thread4.urb_entry_allocation_size = key->urb_size - 1; - - if (key->nr_urb_entries >= 8) - gs.thread4.max_threads = 1; - else - gs.thread4.max_threads = 0; - - if (intel->gen == 5) - gs.thread4.rendering_enable = 1; - - if (unlikely(INTEL_DEBUG & DEBUG_STATS)) - gs.thread4.stats_enable = 1; - - bo = brw_upload_cache(&brw->cache, BRW_GS_UNIT, - key, sizeof(*key), - &brw->gs.prog_bo, 1, - &gs, sizeof(gs)); + /* CACHE_NEW_GS_PROG */ + if (brw->gs.prog_active) { + gs->thread0.grf_reg_count = (ALIGN(brw->gs.prog_data->total_grf, 16) / + 16 - 1); + /* reloc */ + gs->thread0.kernel_start_pointer = brw->gs.prog_bo->offset >> 6; + + gs->thread1.floating_point_mode = BRW_FLOATING_POINT_NON_IEEE_754; + gs->thread1.single_program_flow = 1; + + gs->thread3.dispatch_grf_start_reg = 1; + gs->thread3.const_urb_entry_read_offset = 0; + gs->thread3.const_urb_entry_read_length = 0; + gs->thread3.urb_entry_read_offset = 0; + gs->thread3.urb_entry_read_length = brw->gs.prog_data->urb_read_length; + + /* BRW_NEW_URB_FENCE */ + gs->thread4.nr_urb_entries = brw->urb.nr_gs_entries; + gs->thread4.urb_entry_allocation_size = brw->urb.vsize - 1; + + if (brw->urb.nr_gs_entries >= 8) + gs->thread4.max_threads = 1; + else + gs->thread4.max_threads = 0; - if (key->prog_active) { /* Emit GS program relocation */ - drm_intel_bo_emit_reloc(bo, offsetof(struct brw_gs_unit_state, thread0), - brw->gs.prog_bo, gs.thread0.grf_reg_count << 1, + drm_intel_bo_emit_reloc(intel->batch.bo, + (brw->gs.state_offset + + offsetof(struct brw_gs_unit_state, thread0)), + brw->gs.prog_bo, gs->thread0.grf_reg_count << 1, I915_GEM_DOMAIN_INSTRUCTION, 0); } - return bo; -} - -static void prepare_gs_unit(struct brw_context *brw) -{ - struct brw_gs_unit_key key; + if (intel->gen == 5) + gs->thread4.rendering_enable = 1; - gs_unit_populate_key(brw, &key); + if (unlikely(INTEL_DEBUG & DEBUG_STATS)) + gs->thread4.stats_enable = 1; - drm_intel_bo_unreference(brw->gs.state_bo); - brw->gs.state_bo = brw_search_cache(&brw->cache, BRW_GS_UNIT, - &key, sizeof(key), - &brw->gs.prog_bo, 1, - NULL); - if (brw->gs.state_bo == NULL) { - brw->gs.state_bo = gs_unit_create_from_key(brw, &key); - } + brw->state.dirty.cache |= CACHE_NEW_GS_UNIT; } const struct brw_tracked_state brw_gs_unit = { .dirty = { .mesa = 0, - .brw = (BRW_NEW_CURBE_OFFSETS | + .brw = (BRW_NEW_BATCH | + BRW_NEW_CURBE_OFFSETS | BRW_NEW_URB_FENCE), .cache = CACHE_NEW_GS_PROG }, - .prepare = prepare_gs_unit, + .prepare = brw_prepare_gs_unit, }; diff --git a/src/mesa/drivers/dri/i965/brw_misc_state.c b/src/mesa/drivers/dri/i965/brw_misc_state.c index 19eea07ebc6..7119786de42 100644 --- a/src/mesa/drivers/dri/i965/brw_misc_state.c +++ b/src/mesa/drivers/dri/i965/brw_misc_state.c @@ -143,15 +143,19 @@ static void upload_pipelined_state_pointers(struct brw_context *brw ) BEGIN_BATCH(7); OUT_BATCH(_3DSTATE_PIPELINED_POINTERS << 16 | (7 - 2)); - OUT_RELOC(brw->vs.state_bo, I915_GEM_DOMAIN_INSTRUCTION, 0, 0); + OUT_RELOC(intel->batch.bo, I915_GEM_DOMAIN_INSTRUCTION, 0, + brw->vs.state_offset); if (brw->gs.prog_active) - OUT_RELOC(brw->gs.state_bo, I915_GEM_DOMAIN_INSTRUCTION, 0, 1); + OUT_RELOC(brw->intel.batch.bo, I915_GEM_DOMAIN_INSTRUCTION, 0, + brw->gs.state_offset | 1); else OUT_BATCH(0); - OUT_RELOC(brw->clip.state_bo, I915_GEM_DOMAIN_INSTRUCTION, 0, 1); + OUT_RELOC(brw->intel.batch.bo, I915_GEM_DOMAIN_INSTRUCTION, 0, + brw->clip.state_offset | 1); OUT_RELOC(brw->intel.batch.bo, I915_GEM_DOMAIN_INSTRUCTION, 0, brw->sf.state_offset); - OUT_RELOC(brw->wm.state_bo, I915_GEM_DOMAIN_INSTRUCTION, 0, 0); + OUT_RELOC(brw->intel.batch.bo, I915_GEM_DOMAIN_INSTRUCTION, 0, + brw->wm.state_offset); OUT_RELOC(brw->intel.batch.bo, I915_GEM_DOMAIN_INSTRUCTION, 0, brw->cc.state_offset); ADVANCE_BATCH(); @@ -159,16 +163,6 @@ static void upload_pipelined_state_pointers(struct brw_context *brw ) brw->state.dirty.brw |= BRW_NEW_PSP; } - -static void prepare_psp_urb_cbs(struct brw_context *brw) -{ - brw_add_validated_bo(brw, brw->vs.state_bo); - brw_add_validated_bo(brw, brw->gs.state_bo); - brw_add_validated_bo(brw, brw->clip.state_bo); - brw_add_validated_bo(brw, brw->sf.state_bo); - brw_add_validated_bo(brw, brw->wm.state_bo); -} - static void upload_psp_urb_cbs(struct brw_context *brw ) { upload_pipelined_state_pointers(brw); @@ -188,7 +182,6 @@ const struct brw_tracked_state brw_psp_urb_cbs = { CACHE_NEW_WM_UNIT | CACHE_NEW_CC_UNIT) }, - .prepare = prepare_psp_urb_cbs, .emit = upload_psp_urb_cbs, }; @@ -551,12 +544,28 @@ static void upload_state_base_address( struct brw_context *brw ) if (intel->gen >= 6) { BEGIN_BATCH(10); OUT_BATCH(CMD_STATE_BASE_ADDRESS << 16 | (10 - 2)); - OUT_BATCH(1); /* General state base address */ - OUT_RELOC(intel->batch.bo, I915_GEM_DOMAIN_SAMPLER, 0, - 1); /* Surface state base address */ - OUT_BATCH(1); /* Dynamic state base address */ - OUT_BATCH(1); /* Indirect object base address */ - OUT_BATCH(1); /* Instruction base address */ + /* General state base address: stateless DP read/write requests */ + OUT_BATCH(1); + /* Surface state base address: + * BINDING_TABLE_STATE + * SURFACE_STATE + */ + OUT_RELOC(intel->batch.bo, I915_GEM_DOMAIN_SAMPLER, 0, 1); + /* Dynamic state base address: + * SAMPLER_STATE + * SAMPLER_BORDER_COLOR_STATE + * CLIP, SF, WM/CC viewport state + * COLOR_CALC_STATE + * DEPTH_STENCIL_STATE + * BLEND_STATE + * Push constants (when INSTPM: CONSTANT_BUFFER Address Offset + * Disable is clear, which we rely on) + */ + OUT_RELOC(intel->batch.bo, (I915_GEM_DOMAIN_RENDER | + I915_GEM_DOMAIN_INSTRUCTION), 0, 1); + + OUT_BATCH(1); /* Indirect object base address: MEDIA_OBJECT data */ + OUT_BATCH(1); /* Instruction base address: shader kernels (incl. SIP) */ OUT_BATCH(1); /* General state upper bound */ OUT_BATCH(1); /* Dynamic state upper bound */ OUT_BATCH(1); /* Indirect object upper bound */ diff --git a/src/mesa/drivers/dri/i965/brw_sf.c b/src/mesa/drivers/dri/i965/brw_sf.c index 6da155b1a9b..5a03851b8e6 100644 --- a/src/mesa/drivers/dri/i965/brw_sf.c +++ b/src/mesa/drivers/dri/i965/brw_sf.c @@ -119,13 +119,11 @@ static void compile_sf_prog( struct brw_context *brw, /* Upload */ drm_intel_bo_unreference(brw->sf.prog_bo); - brw->sf.prog_bo = brw_upload_cache_with_auxdata(&brw->cache, BRW_SF_PROG, - &c.key, sizeof(c.key), - NULL, 0, - program, program_size, - &c.prog_data, - sizeof(c.prog_data), - &brw->sf.prog_data); + brw->sf.prog_bo = brw_upload_cache(&brw->cache, BRW_SF_PROG, + &c.key, sizeof(c.key), + program, program_size, + &c.prog_data, sizeof(c.prog_data), + &brw->sf.prog_data); } /* Calculate interpolants for triangle and line rasterization. @@ -194,7 +192,6 @@ static void upload_sf_prog(struct brw_context *brw) drm_intel_bo_unreference(brw->sf.prog_bo); brw->sf.prog_bo = brw_search_cache(&brw->cache, BRW_SF_PROG, &key, sizeof(key), - NULL, 0, &brw->sf.prog_data); if (brw->sf.prog_bo == NULL) compile_sf_prog( brw, &key ); diff --git a/src/mesa/drivers/dri/i965/brw_sf_state.c b/src/mesa/drivers/dri/i965/brw_sf_state.c index 66d91a0bde7..78b22c4df3d 100644 --- a/src/mesa/drivers/dri/i965/brw_sf_state.c +++ b/src/mesa/drivers/dri/i965/brw_sf_state.c @@ -39,7 +39,7 @@ static void upload_sf_vp(struct brw_context *brw) { struct intel_context *intel = &brw->intel; - struct gl_context *ctx = &brw->intel.ctx; + struct gl_context *ctx = &intel->ctx; const GLfloat depth_scale = 1.0F / ctx->DrawBuffer->_DepthMaxF; struct brw_sf_viewport *sfv; GLfloat y_scale, y_bias; @@ -106,11 +106,6 @@ static void upload_sf_vp(struct brw_context *brw) sfv->scissor.ymax = ctx->DrawBuffer->Height - ctx->DrawBuffer->_Ymin - 1; } - /* Keep a pointer to it for brw_state_dump.c */ - drm_intel_bo_unreference(brw->sf.vp_bo); - drm_intel_bo_reference(intel->batch.bo); - brw->sf.vp_bo = intel->batch.bo; - brw->state.dirty.cache |= CACHE_NEW_SF_VP; } @@ -177,7 +172,7 @@ static void upload_sf_unit( struct brw_context *brw ) sf->thread4.stats_enable = 1; /* CACHE_NEW_SF_VP */ - sf->sf5.sf_viewport_state_offset = (brw->sf.vp_bo->offset + + sf->sf5.sf_viewport_state_offset = (intel->batch.bo->offset + brw->sf.vp_offset) >> 5; /* reloc */ sf->sf5.viewport_transform = 1; diff --git a/src/mesa/drivers/dri/i965/brw_state.h b/src/mesa/drivers/dri/i965/brw_state.h index 86b0caa4a4e..8b9e3a4ec5d 100644 --- a/src/mesa/drivers/dri/i965/brw_state.h +++ b/src/mesa/drivers/dri/i965/brw_state.h @@ -47,6 +47,7 @@ brw_add_validated_bo(struct brw_context *brw, drm_intel_bo *bo) }; extern const struct brw_tracked_state brw_blend_constant_color; +extern const struct brw_tracked_state brw_cc_vp; extern const struct brw_tracked_state brw_cc_unit; extern const struct brw_tracked_state brw_check_fallback; extern const struct brw_tracked_state brw_clip_prog; @@ -102,11 +103,11 @@ extern const struct brw_tracked_state gen6_depth_stencil_state; extern const struct brw_tracked_state gen6_gs_state; extern const struct brw_tracked_state gen6_sampler_state; extern const struct brw_tracked_state gen6_scissor_state; -extern const struct brw_tracked_state gen6_scissor_state_pointers; extern const struct brw_tracked_state gen6_sf_state; extern const struct brw_tracked_state gen6_sf_vp; extern const struct brw_tracked_state gen6_urb; extern const struct brw_tracked_state gen6_viewport_state; +extern const struct brw_tracked_state gen6_vs_constants; extern const struct brw_tracked_state gen6_vs_state; extern const struct brw_tracked_state gen6_wm_constants; extern const struct brw_tracked_state gen6_wm_state; @@ -123,38 +124,21 @@ void brw_clear_validated_bos(struct brw_context *brw); /*********************************************************************** * brw_state_cache.c */ -drm_intel_bo *brw_cache_data(struct brw_cache *cache, - enum brw_cache_id cache_id, - const void *data, - GLuint size); drm_intel_bo *brw_upload_cache(struct brw_cache *cache, enum brw_cache_id cache_id, const void *key, GLuint key_sz, - drm_intel_bo **reloc_bufs, - GLuint nr_reloc_bufs, const void *data, - GLuint data_sz); - -drm_intel_bo *brw_upload_cache_with_auxdata(struct brw_cache *cache, - enum brw_cache_id cache_id, - const void *key, - GLuint key_sz, - drm_intel_bo **reloc_bufs, - GLuint nr_reloc_bufs, - const void *data, - GLuint data_sz, - const void *aux, - GLuint aux_sz, - void *aux_return); + GLuint data_sz, + const void *aux, + GLuint aux_sz, + void *aux_return); drm_intel_bo *brw_search_cache( struct brw_cache *cache, enum brw_cache_id cache_id, const void *key, GLuint key_size, - drm_intel_bo **reloc_bufs, - GLuint nr_reloc_bufs, void *aux_return); void brw_state_cache_check_size( struct brw_context *brw ); diff --git a/src/mesa/drivers/dri/i965/brw_state_cache.c b/src/mesa/drivers/dri/i965/brw_state_cache.c index 01eeb19a684..f13a41fa7cc 100644 --- a/src/mesa/drivers/dri/i965/brw_state_cache.c +++ b/src/mesa/drivers/dri/i965/brw_state_cache.c @@ -31,29 +31,17 @@ /** @file brw_state_cache.c * - * This file implements a simple static state cache for 965. The consumers - * can query the hash table of state using a cache_id, opaque key data, - * and list of buffers that will be used in relocations, and receive the - * corresponding state buffer object of state (plus associated auxiliary - * data) in return. + * This file implements a simple static state cache for 965. The + * consumers can query the hash table of state using a cache_id, + * opaque key data, and receive the corresponding state buffer object + * of state (plus associated auxiliary data) in return. Objects in + * the cache may not have relocations (pointers to other BOs) in them. * - * The inner workings are a simple hash table based on a CRC of the key data. - * The cache_id and relocation target buffers associated with the state - * buffer are included as auxiliary key data, but are not part of the hash - * value (this should be fixed, but will likely be fixed instead by making - * consumers use structured keys). + * The inner workings are a simple hash table based on a CRC of the + * key data. * - * Replacement is not implemented. Instead, when the cache gets too big, at - * a safe point (unlock) we throw out all of the cache data and let it - * regenerate for the next rendering operation. - * - * The reloc_buf pointers need to be included as key data, otherwise the - * non-unique values stuffed in the offset in key data through - * brw_cache_data() may result in successful probe for state buffers - * even when the buffer being referenced doesn't match. The result would be - * that the same state cache entry is used twice for different buffers, - * only one of the two buffers referenced gets put into the offset, and the - * incorrect program is run for the other instance. + * Replacement is not implemented. Instead, when the cache gets too + * big we throw out all of the cache data and let it get regenerated. */ #include "main/imports.h" @@ -76,13 +64,6 @@ hash_key(struct brw_cache_item *item) hash = (hash << 5) | (hash >> 27); } - /* Include the BO pointers as key data as well */ - ikey = (GLuint *)item->reloc_bufs; - for (i = 0; i < item->nr_reloc_bufs * sizeof(drm_intel_bo *) / 4; i++) { - hash ^= ikey[i]; - hash = (hash << 5) | (hash >> 27); - } - return hash; } @@ -110,10 +91,7 @@ brw_cache_item_equals(const struct brw_cache_item *a, return a->cache_id == b->cache_id && a->hash == b->hash && a->key_size == b->key_size && - (memcmp(a->key, b->key, a->key_size) == 0) && - a->nr_reloc_bufs == b->nr_reloc_bufs && - (memcmp(a->reloc_bufs, b->reloc_bufs, - a->nr_reloc_bufs * sizeof(drm_intel_bo *)) == 0); + (memcmp(a->key, b->key, a->key_size) == 0); } static struct brw_cache_item * @@ -170,9 +148,7 @@ rehash(struct brw_cache *cache) drm_intel_bo * brw_search_cache(struct brw_cache *cache, enum brw_cache_id cache_id, - const void *key, - GLuint key_size, - drm_intel_bo **reloc_bufs, GLuint nr_reloc_bufs, + const void *key, GLuint key_size, void *aux_return) { struct brw_cache_item *item; @@ -182,8 +158,6 @@ brw_search_cache(struct brw_cache *cache, lookup.cache_id = cache_id; lookup.key = key; lookup.key_size = key_size; - lookup.reloc_bufs = reloc_bufs; - lookup.nr_reloc_bufs = nr_reloc_bufs; hash = hash_key(&lookup); lookup.hash = hash; @@ -203,30 +177,24 @@ brw_search_cache(struct brw_cache *cache, drm_intel_bo * -brw_upload_cache_with_auxdata(struct brw_cache *cache, - enum brw_cache_id cache_id, - const void *key, - GLuint key_size, - drm_intel_bo **reloc_bufs, - GLuint nr_reloc_bufs, - const void *data, - GLuint data_size, - const void *aux, - GLuint aux_size, - void *aux_return) +brw_upload_cache(struct brw_cache *cache, + enum brw_cache_id cache_id, + const void *key, + GLuint key_size, + const void *data, + GLuint data_size, + const void *aux, + GLuint aux_size, + void *aux_return) { struct brw_cache_item *item = CALLOC_STRUCT(brw_cache_item); GLuint hash; - GLuint relocs_size = nr_reloc_bufs * sizeof(drm_intel_bo *); void *tmp; drm_intel_bo *bo; - int i; item->cache_id = cache_id; item->key = key; item->key_size = key_size; - item->reloc_bufs = reloc_bufs; - item->nr_reloc_bufs = nr_reloc_bufs; hash = hash_key(item); item->hash = hash; @@ -235,19 +203,13 @@ brw_upload_cache_with_auxdata(struct brw_cache *cache, cache->name[cache_id], data_size, 1 << 6); - /* Set up the memory containing the key, aux_data, and reloc_bufs */ - tmp = malloc(key_size + aux_size + relocs_size); + /* Set up the memory containing the key and aux_data */ + tmp = malloc(key_size + aux_size); memcpy(tmp, key, key_size); memcpy(tmp + key_size, aux, aux_size); - memcpy(tmp + key_size + aux_size, reloc_bufs, relocs_size); - for (i = 0; i < nr_reloc_bufs; i++) { - if (reloc_bufs[i] != NULL) - drm_intel_bo_reference(reloc_bufs[i]); - } item->key = tmp; - item->reloc_bufs = tmp + key_size + aux_size; item->bo = bo; drm_intel_bo_reference(bo); @@ -276,73 +238,6 @@ brw_upload_cache_with_auxdata(struct brw_cache *cache, return bo; } -drm_intel_bo * -brw_upload_cache(struct brw_cache *cache, - enum brw_cache_id cache_id, - const void *key, - GLuint key_size, - drm_intel_bo **reloc_bufs, - GLuint nr_reloc_bufs, - const void *data, - GLuint data_size) -{ - return brw_upload_cache_with_auxdata(cache, cache_id, - key, key_size, - reloc_bufs, nr_reloc_bufs, - data, data_size, - NULL, 0, - NULL); -} - -/** - * Wrapper around brw_cache_data_sz using the cache_id's canonical key size. - * - * If nr_reloc_bufs is nonzero, brw_search_cache()/brw_upload_cache() would be - * better to use, as the potentially changing offsets in the data-used-as-key - * will result in excessive cache misses. - * - * If aux data is involved, use search/upload instead. - - */ -drm_intel_bo * -brw_cache_data(struct brw_cache *cache, - enum brw_cache_id cache_id, - const void *data, - GLuint data_size) -{ - drm_intel_bo *bo; - struct brw_cache_item *item, lookup; - GLuint hash; - - lookup.cache_id = cache_id; - lookup.key = data; - lookup.key_size = data_size; - lookup.reloc_bufs = NULL; - lookup.nr_reloc_bufs = 0; - hash = hash_key(&lookup); - lookup.hash = hash; - - item = search_cache(cache, hash, &lookup); - if (item) { - update_cache_last(cache, cache_id, item->bo); - drm_intel_bo_reference(item->bo); - return item->bo; - } - - bo = brw_upload_cache(cache, cache_id, - data, data_size, - NULL, 0, - data, data_size); - - return bo; -} - -enum pool_type { - DW_SURFACE_STATE, - DW_GENERAL_STATE -}; - - static void brw_init_cache_id(struct brw_cache *cache, const char *name, @@ -352,8 +247,8 @@ brw_init_cache_id(struct brw_cache *cache, } -static void -brw_init_non_surface_cache(struct brw_context *brw) +void +brw_init_caches(struct brw_context *brw) { struct brw_cache *cache = &brw->cache; @@ -367,7 +262,6 @@ brw_init_non_surface_cache(struct brw_context *brw) brw_init_cache_id(cache, "CC_VP", BRW_CC_VP); brw_init_cache_id(cache, "CC_UNIT", BRW_CC_UNIT); brw_init_cache_id(cache, "WM_PROG", BRW_WM_PROG); - brw_init_cache_id(cache, "SAMPLER_DEFAULT_COLOR", BRW_SAMPLER_DEFAULT_COLOR); brw_init_cache_id(cache, "SAMPLER", BRW_SAMPLER); brw_init_cache_id(cache, "WM_UNIT", BRW_WM_UNIT); brw_init_cache_id(cache, "SF_PROG", BRW_SF_PROG); @@ -392,13 +286,6 @@ brw_init_non_surface_cache(struct brw_context *brw) brw_init_cache_id(cache, "DEPTH_STENCIL_STATE", BRW_DEPTH_STENCIL_STATE); } -void -brw_init_caches(struct brw_context *brw) -{ - brw_init_non_surface_cache(brw); -} - - static void brw_clear_cache(struct brw_context *brw, struct brw_cache *cache) { @@ -409,11 +296,7 @@ brw_clear_cache(struct brw_context *brw, struct brw_cache *cache) for (i = 0; i < cache->size; i++) { for (c = cache->items[i]; c; c = next) { - int j; - next = c->next; - for (j = 0; j < c->nr_reloc_bufs; j++) - drm_intel_bo_unreference(c->reloc_bufs[j]); drm_intel_bo_unreference(c->bo); free((void *)c->key); free(c); diff --git a/src/mesa/drivers/dri/i965/brw_state_dump.c b/src/mesa/drivers/dri/i965/brw_state_dump.c index b393259c915..3a3aa8c0346 100644 --- a/src/mesa/drivers/dri/i965/brw_state_dump.c +++ b/src/mesa/drivers/dri/i965/brw_state_dump.c @@ -140,19 +140,15 @@ static void dump_wm_surface_state(struct brw_context *brw) static void dump_wm_sampler_state(struct brw_context *brw) { + struct intel_context *intel = &brw->intel; struct gl_context *ctx = &brw->intel.ctx; int i; - if (!brw->wm.sampler_bo) { - fprintf(stderr, "WM_SAMPLER: NULL\n"); - return; - } - - drm_intel_bo_map(brw->wm.sampler_bo, GL_FALSE); + drm_intel_bo_map(intel->batch.bo, GL_FALSE); for (i = 0; i < BRW_MAX_TEX_UNIT; i++) { unsigned int offset; + uint32_t sdc_offset; struct brw_sampler_state *samp; - struct brw_sampler_default_color *sdc; char name[20]; if (!ctx->Texture.Unit[i]._ReallyEnabled) { @@ -160,9 +156,11 @@ static void dump_wm_sampler_state(struct brw_context *brw) continue; } - offset = brw->wm.sampler_bo->offset + - i * sizeof(struct brw_sampler_state); - samp = (struct brw_sampler_state *)(brw->wm.sampler_bo->virtual + + offset = (intel->batch.bo->offset + + brw->wm.sampler_offset + + i * sizeof(struct brw_sampler_state)); + samp = (struct brw_sampler_state *)(intel->batch.bo->virtual + + brw->wm.sampler_offset + i * sizeof(struct brw_sampler_state)); sprintf(name, "WM SAMP%d", i); @@ -173,30 +171,45 @@ static void dump_wm_sampler_state(struct brw_context *brw) sprintf(name, " WM SDC%d", i); - drm_intel_bo_map(brw->wm.sdc_bo[i], GL_FALSE); - sdc = (struct brw_sampler_default_color *)(brw->wm.sdc_bo[i]->virtual); - state_out(name, sdc, brw->wm.sdc_bo[i]->offset, 0, "r\n"); - state_out(name, sdc, brw->wm.sdc_bo[i]->offset, 1, "g\n"); - state_out(name, sdc, brw->wm.sdc_bo[i]->offset, 2, "b\n"); - state_out(name, sdc, brw->wm.sdc_bo[i]->offset, 3, "a\n"); - drm_intel_bo_unmap(brw->wm.sdc_bo[i]); + sdc_offset = intel->batch.bo->offset + brw->wm.sdc_offset[i]; + if (intel->gen >= 5) { + struct gen5_sampler_default_color *sdc = (intel->batch.bo->virtual + + brw->wm.sdc_offset[i]); + state_out(name, sdc, sdc_offset, 0, "unorm rgba\n"); + state_out(name, sdc, sdc_offset, 1, "r %f\n", sdc->f[0]); + state_out(name, sdc, sdc_offset, 2, "b %f\n", sdc->f[1]); + state_out(name, sdc, sdc_offset, 3, "g %f\n", sdc->f[2]); + state_out(name, sdc, sdc_offset, 4, "a %f\n", sdc->f[3]); + state_out(name, sdc, sdc_offset, 5, "half float rg\n"); + state_out(name, sdc, sdc_offset, 6, "half float ba\n"); + state_out(name, sdc, sdc_offset, 7, "u16 rg\n"); + state_out(name, sdc, sdc_offset, 8, "u16 ba\n"); + state_out(name, sdc, sdc_offset, 9, "s16 rg\n"); + state_out(name, sdc, sdc_offset, 10, "s16 ba\n"); + state_out(name, sdc, sdc_offset, 11, "s8 rgba\n"); + } else { + struct brw_sampler_default_color *sdc = (intel->batch.bo->virtual + + brw->wm.sdc_offset[i]); + state_out(name, sdc, sdc_offset, 0, "r %f\n", sdc->color[0]); + state_out(name, sdc, sdc_offset, 1, "g %f\n", sdc->color[1]); + state_out(name, sdc, sdc_offset, 2, "b %f\n", sdc->color[2]); + state_out(name, sdc, sdc_offset, 3, "a %f\n", sdc->color[3]); + } } - drm_intel_bo_unmap(brw->wm.sampler_bo); + drm_intel_bo_unmap(intel->batch.bo); } static void dump_sf_viewport_state(struct brw_context *brw) { + struct intel_context *intel = &brw->intel; const char *name = "SF VP"; struct brw_sf_viewport *vp; uint32_t vp_off; - if (brw->sf.vp_bo == NULL) - return; - - drm_intel_bo_map(brw->sf.vp_bo, GL_FALSE); + drm_intel_bo_map(intel->batch.bo, GL_FALSE); - vp = brw->sf.vp_bo->virtual + brw->sf.vp_offset; - vp_off = brw->sf.vp_bo->offset + brw->sf.vp_offset; + vp = intel->batch.bo->virtual + brw->sf.vp_offset; + vp_off = intel->batch.bo->offset + brw->sf.vp_offset; state_out(name, vp, vp_off, 0, "m00 = %f\n", vp->viewport.m00); state_out(name, vp, vp_off, 1, "m11 = %f\n", vp->viewport.m11); @@ -210,62 +223,56 @@ static void dump_sf_viewport_state(struct brw_context *brw) state_out(name, vp, vp_off, 7, "bottom right = %d,%d\n", vp->scissor.xmax, vp->scissor.ymax); - drm_intel_bo_unmap(brw->sf.vp_bo); + drm_intel_bo_unmap(intel->batch.bo); } static void dump_clip_viewport_state(struct brw_context *brw) { + struct intel_context *intel = &brw->intel; const char *name = "CLIP VP"; struct brw_clipper_viewport *vp; uint32_t vp_off; - if (brw->clip.vp_bo == NULL) - return; - - drm_intel_bo_map(brw->clip.vp_bo, GL_FALSE); + drm_intel_bo_map(intel->batch.bo, GL_FALSE); - vp = brw->clip.vp_bo->virtual; - vp_off = brw->clip.vp_bo->offset; + vp = intel->batch.bo->virtual + brw->clip.vp_offset; + vp_off = intel->batch.bo->offset + brw->clip.vp_offset; state_out(name, vp, vp_off, 0, "xmin = %f\n", vp->xmin); state_out(name, vp, vp_off, 1, "xmax = %f\n", vp->xmax); state_out(name, vp, vp_off, 2, "ymin = %f\n", vp->ymin); state_out(name, vp, vp_off, 3, "ymax = %f\n", vp->ymax); - drm_intel_bo_unmap(brw->clip.vp_bo); + drm_intel_bo_unmap(intel->batch.bo); } static void dump_cc_viewport_state(struct brw_context *brw) { + struct intel_context *intel = &brw->intel; const char *name = "CC VP"; struct brw_cc_viewport *vp; uint32_t vp_off; - if (brw->cc.vp_bo == NULL) - return; - - drm_intel_bo_map(brw->cc.vp_bo, GL_FALSE); + drm_intel_bo_map(intel->batch.bo, GL_FALSE); - vp = brw->cc.vp_bo->virtual; - vp_off = brw->cc.vp_bo->offset; + vp = intel->batch.bo->virtual + brw->cc.vp_offset; + vp_off = intel->batch.bo->offset + brw->cc.vp_offset; state_out(name, vp, vp_off, 0, "min_depth = %f\n", vp->min_depth); state_out(name, vp, vp_off, 1, "max_depth = %f\n", vp->max_depth); - drm_intel_bo_unmap(brw->cc.vp_bo); + drm_intel_bo_unmap(intel->batch.bo); } static void dump_depth_stencil_state(struct brw_context *brw) { + struct intel_context *intel = &brw->intel; const char *name = "DEPTH STENCIL"; struct gen6_depth_stencil_state *ds; uint32_t ds_off; - if (brw->cc.depth_stencil_state_bo == NULL) - return; + drm_intel_bo_map(intel->batch.bo, GL_FALSE); - drm_intel_bo_map(brw->cc.depth_stencil_state_bo, GL_FALSE); - - ds = brw->cc.depth_stencil_state_bo->virtual; - ds_off = brw->cc.depth_stencil_state_bo->offset; + ds = intel->batch.bo->virtual + brw->cc.depth_stencil_state_offset; + ds_off = intel->batch.bo->offset + brw->cc.depth_stencil_state_offset; state_out(name, ds, ds_off, 0, "stencil %sable, func %d, write %sable\n", ds->ds0.stencil_enable ? "en" : "dis", @@ -277,7 +284,7 @@ static void dump_depth_stencil_state(struct brw_context *brw) ds->ds2.depth_test_enable ? "en" : "dis", ds->ds2.depth_test_func, ds->ds2.depth_write_enable ? "en" : "dis"); - drm_intel_bo_unmap(brw->cc.depth_stencil_state_bo); + drm_intel_bo_unmap(intel->batch.bo); } static void dump_cc_state(struct brw_context *brw) @@ -291,8 +298,8 @@ static void dump_cc_state(struct brw_context *brw) return; drm_intel_bo_map(bo, GL_FALSE); - cc = bo->virtual; - cc_off = bo->offset; + cc = bo->virtual + brw->cc.state_offset; + cc_off = bo->offset + brw->cc.state_offset; state_out(name, cc, cc_off, 0, "alpha test format %s, round disable %d, stencil ref %d," "bf stencil ref %d\n", @@ -312,22 +319,20 @@ static void dump_cc_state(struct brw_context *brw) static void dump_blend_state(struct brw_context *brw) { + struct intel_context *intel = &brw->intel; const char *name = "BLEND"; struct gen6_blend_state *blend; uint32_t blend_off; - if (brw->cc.blend_state_bo == NULL) - return; - - drm_intel_bo_map(brw->cc.blend_state_bo, GL_FALSE); + drm_intel_bo_map(intel->batch.bo, GL_FALSE); - blend = brw->cc.blend_state_bo->virtual; - blend_off = brw->cc.blend_state_bo->offset; + blend = intel->batch.bo->virtual + brw->cc.blend_state_offset; + blend_off = intel->batch.bo->offset + brw->cc.blend_state_offset; state_out(name, blend, blend_off, 0, "\n"); state_out(name, blend, blend_off, 1, "\n"); - drm_intel_bo_unmap(brw->cc.blend_state_bo); + drm_intel_bo_unmap(intel->batch.bo); } @@ -383,21 +388,25 @@ void brw_debug_batch(struct intel_context *intel) dump_wm_sampler_state(brw); if (intel->gen < 6) - state_struct_out("VS", brw->vs.state_bo, 0, sizeof(struct brw_vs_unit_state)); + state_struct_out("VS", intel->batch.bo, brw->vs.state_offset, + sizeof(struct brw_vs_unit_state)); brw_debug_prog("VS prog", brw->vs.prog_bo); if (intel->gen < 6) - state_struct_out("GS", brw->gs.state_bo, 0, sizeof(struct brw_gs_unit_state)); + state_struct_out("GS", intel->batch.bo, brw->gs.state_offset, + sizeof(struct brw_gs_unit_state)); brw_debug_prog("GS prog", brw->gs.prog_bo); if (intel->gen < 6) { - state_struct_out("SF", brw->sf.state_bo, 0, sizeof(struct brw_sf_unit_state)); - brw_debug_prog("SF prog", brw->sf.prog_bo); + state_struct_out("SF", intel->batch.bo, brw->sf.state_offset, + sizeof(struct brw_sf_unit_state)); + brw_debug_prog("SF prog", brw->sf.prog_bo); } dump_sf_viewport_state(brw); if (intel->gen < 6) - state_struct_out("WM", brw->wm.state_bo, 0, sizeof(struct brw_wm_unit_state)); + state_struct_out("WM", intel->batch.bo, brw->wm.state_offset, + sizeof(struct brw_wm_unit_state)); brw_debug_prog("WM prog", brw->wm.prog_bo); if (intel->gen >= 6) { diff --git a/src/mesa/drivers/dri/i965/brw_state_upload.c b/src/mesa/drivers/dri/i965/brw_state_upload.c index 6f521be6599..008aceb222b 100644 --- a/src/mesa/drivers/dri/i965/brw_state_upload.c +++ b/src/mesa/drivers/dri/i965/brw_state_upload.c @@ -60,6 +60,7 @@ static const struct brw_tracked_state *gen4_atoms[] = &brw_curbe_offsets, &brw_recalculate_urb_fence, + &brw_cc_vp, &brw_cc_unit, &brw_vs_constants, /* Before vs_surfaces and constant_buffer */ @@ -119,6 +120,10 @@ static const struct brw_tracked_state *gen6_atoms[] = /* Command packets: */ &brw_invarient_state, + /* must do before binding table pointers, cc state ptrs */ + &brw_state_base_address, + + &brw_cc_vp, &gen6_viewport_state, /* must do after *_vp stages */ &gen6_urb, @@ -129,6 +134,7 @@ static const struct brw_tracked_state *gen6_atoms[] = &brw_vs_constants, /* Before vs_surfaces and constant_buffer */ &brw_wm_constants, /* Before wm_surfaces and constant_buffer */ + &gen6_vs_constants, /* Before vs_state */ &gen6_wm_constants, /* Before wm_state */ &brw_vs_surfaces, /* must do before unit */ @@ -146,9 +152,6 @@ static const struct brw_tracked_state *gen6_atoms[] = &gen6_wm_state, &gen6_scissor_state, - &gen6_scissor_state_pointers, - - &brw_state_base_address, &gen6_binding_table_pointers, @@ -314,7 +317,6 @@ static struct dirty_bit_map cache_bits[] = { DEFINE_BIT(CACHE_NEW_CC_VP), DEFINE_BIT(CACHE_NEW_CC_UNIT), DEFINE_BIT(CACHE_NEW_WM_PROG), - DEFINE_BIT(CACHE_NEW_SAMPLER_DEFAULT_COLOR), DEFINE_BIT(CACHE_NEW_SAMPLER), DEFINE_BIT(CACHE_NEW_WM_UNIT), DEFINE_BIT(CACHE_NEW_SF_PROG), diff --git a/src/mesa/drivers/dri/i965/brw_vs.c b/src/mesa/drivers/dri/i965/brw_vs.c index 63ae13191f9..31a2b518c40 100644 --- a/src/mesa/drivers/dri/i965/brw_vs.c +++ b/src/mesa/drivers/dri/i965/brw_vs.c @@ -103,13 +103,11 @@ static void do_vs_prog( struct brw_context *brw, aux_size += c.vp->program.Base.Parameters->NumParameters; drm_intel_bo_unreference(brw->vs.prog_bo); - brw->vs.prog_bo = brw_upload_cache_with_auxdata(&brw->cache, BRW_VS_PROG, - &c.key, sizeof(c.key), - NULL, 0, - program, program_size, - &c.prog_data, - aux_size, - &brw->vs.prog_data); + brw->vs.prog_bo = brw_upload_cache(&brw->cache, BRW_VS_PROG, + &c.key, sizeof(c.key), + program, program_size, + &c.prog_data, aux_size, + &brw->vs.prog_data); } @@ -148,7 +146,6 @@ static void brw_upload_vs_prog(struct brw_context *brw) drm_intel_bo_unreference(brw->vs.prog_bo); brw->vs.prog_bo = brw_search_cache(&brw->cache, BRW_VS_PROG, &key, sizeof(key), - NULL, 0, &brw->vs.prog_data); if (brw->vs.prog_bo == NULL) do_vs_prog(brw, vp, &key); diff --git a/src/mesa/drivers/dri/i965/brw_vs_emit.c b/src/mesa/drivers/dri/i965/brw_vs_emit.c index dd4e1e6c6ad..a28cdc0bfe9 100644 --- a/src/mesa/drivers/dri/i965/brw_vs_emit.c +++ b/src/mesa/drivers/dri/i965/brw_vs_emit.c @@ -1553,6 +1553,26 @@ static void emit_swz( struct brw_vs_compile *c, } } +static int +align_interleaved_urb_mlen(struct brw_context *brw, int mlen) +{ + struct intel_context *intel = &brw->intel; + + if (intel->gen >= 6) { + /* URB data written (does not include the message header reg) must + * be a multiple of 256 bits, or 2 VS registers. See vol5c.5, + * section 5.4.3.2.2: URB_INTERLEAVED. + * + * URB entries are allocated on a multiple of 1024 bits, so an + * extra 128 bits written here to make the end align to 256 is + * no problem. + */ + if ((mlen % 2) != 1) + mlen++; + } + + return mlen; +} /** * Post-vertex-program processing. Send the results to the URB. @@ -1734,12 +1754,11 @@ static void emit_vertex_write( struct brw_vs_compile *c) eot = (c->first_overflow_output == 0); - msg_len = c->nr_outputs + 2 + len_vertex_header; - if (intel->gen >= 6) { - /* interleaved urb write message length for gen6 should be multiple of 2 */ - if ((msg_len % 2) != 0) - msg_len++; - } + /* Message header, plus VUE header, plus the (first set of) outputs. */ + msg_len = 1 + len_vertex_header + c->nr_outputs; + msg_len = align_interleaved_urb_mlen(brw, msg_len); + /* Any outputs beyond BRW_MAX_MRF should be past first_overflow_output */ + msg_len = MIN2(msg_len, (BRW_MAX_MRF - 1)), brw_urb_WRITE(p, brw_null_reg(), /* dest */ @@ -1747,7 +1766,7 @@ static void emit_vertex_write( struct brw_vs_compile *c) c->r0, /* src */ 0, /* allocate */ 1, /* used */ - MIN2(msg_len - 1, (BRW_MAX_MRF - 1)), /* msg len */ + msg_len, 0, /* response len */ eot, /* eot */ eot, /* writes complete */ @@ -1774,7 +1793,7 @@ static void emit_vertex_write( struct brw_vs_compile *c) c->r0, /* src */ 0, /* allocate */ 1, /* used */ - mrf, /* msg len */ + align_interleaved_urb_mlen(brw, mrf), 0, /* response len */ 1, /* eot */ 1, /* writes complete */ diff --git a/src/mesa/drivers/dri/i965/brw_vs_state.c b/src/mesa/drivers/dri/i965/brw_vs_state.c index c3a7cc247c5..1eee5b7e5de 100644 --- a/src/mesa/drivers/dri/i965/brw_vs_state.c +++ b/src/mesa/drivers/dri/i965/brw_vs_state.c @@ -49,48 +49,19 @@ struct brw_vs_unit_key { }; static void -vs_unit_populate_key(struct brw_context *brw, struct brw_vs_unit_key *key) -{ - struct gl_context *ctx = &brw->intel.ctx; - - memset(key, 0, sizeof(*key)); - - /* CACHE_NEW_VS_PROG */ - key->total_grf = brw->vs.prog_data->total_grf; - key->urb_entry_read_length = brw->vs.prog_data->urb_read_length; - key->curb_entry_read_length = brw->vs.prog_data->curb_read_length; - - /* BRW_NEW_URB_FENCE */ - key->nr_urb_entries = brw->urb.nr_vs_entries; - key->urb_size = brw->urb.vsize; - - /* BRW_NEW_NR_VS_SURFACES */ - key->nr_surfaces = brw->vs.nr_surfaces; - - /* BRW_NEW_CURBE_OFFSETS, _NEW_TRANSFORM */ - if (ctx->Transform.ClipPlanesEnabled) { - /* Note that we read in the userclip planes as well, hence - * clip_start: - */ - key->curbe_offset = brw->curbe.clip_start; - } - else { - key->curbe_offset = brw->curbe.vs_start; - } -} - -static drm_intel_bo * -vs_unit_create_from_key(struct brw_context *brw, struct brw_vs_unit_key *key) +brw_prepare_vs_unit(struct brw_context *brw) { struct intel_context *intel = &brw->intel; - struct brw_vs_unit_state vs; - drm_intel_bo *bo; + struct gl_context *ctx = &intel->ctx; + struct brw_vs_unit_state *vs; - memset(&vs, 0, sizeof(vs)); + vs = brw_state_batch(brw, sizeof(*vs), 32, &brw->vs.state_offset); + memset(vs, 0, sizeof(*vs)); - vs.thread0.kernel_start_pointer = brw->vs.prog_bo->offset >> 6; /* reloc */ - vs.thread0.grf_reg_count = ALIGN(key->total_grf, 16) / 16 - 1; - vs.thread1.floating_point_mode = BRW_FLOATING_POINT_NON_IEEE_754; + /* CACHE_NEW_VS_PROG */ + vs->thread0.kernel_start_pointer = brw->vs.prog_bo->offset >> 6; /* reloc */ + vs->thread0.grf_reg_count = ALIGN(brw->vs.prog_data->total_grf, 16) / 16 - 1; + vs->thread1.floating_point_mode = BRW_FLOATING_POINT_NON_IEEE_754; /* Choosing multiple program flow means that we may get 2-vertex threads, * which will have the channel mask for dwords 4-7 enabled in the thread, * and those dwords will be written to the second URB handle when we @@ -103,21 +74,34 @@ vs_unit_create_from_key(struct brw_context *brw, struct brw_vs_unit_key *key) * The most notable and reliably failing application is the Humus * demo "CelShading" */ - vs.thread1.single_program_flow = (intel->gen == 5); + vs->thread1.single_program_flow = (intel->gen == 5); + /* BRW_NEW_NR_VS_SURFACES */ if (intel->gen == 5) - vs.thread1.binding_table_entry_count = 0; /* hardware requirement */ + vs->thread1.binding_table_entry_count = 0; /* hardware requirement */ else - vs.thread1.binding_table_entry_count = key->nr_surfaces; + vs->thread1.binding_table_entry_count = brw->vs.nr_surfaces; + + vs->thread3.urb_entry_read_length = brw->vs.prog_data->urb_read_length; + vs->thread3.const_urb_entry_read_length = brw->vs.prog_data->curb_read_length; + vs->thread3.dispatch_grf_start_reg = 1; + vs->thread3.urb_entry_read_offset = 0; - vs.thread3.urb_entry_read_length = key->urb_entry_read_length; - vs.thread3.const_urb_entry_read_length = key->curb_entry_read_length; - vs.thread3.dispatch_grf_start_reg = 1; - vs.thread3.urb_entry_read_offset = 0; - vs.thread3.const_urb_entry_read_offset = key->curbe_offset * 2; + /* BRW_NEW_CURBE_OFFSETS, _NEW_TRANSFORM */ + if (ctx->Transform.ClipPlanesEnabled) { + /* Note that we read in the userclip planes as well, hence + * clip_start: + */ + vs->thread3.const_urb_entry_read_offset = brw->curbe.clip_start * 2; + } + else { + vs->thread3.const_urb_entry_read_offset = brw->curbe.vs_start * 2; + } + + /* BRW_NEW_URB_FENCE */ if (intel->gen == 5) { - switch (key->nr_urb_entries) { + switch (brw->urb.nr_vs_entries) { case 8: case 12: case 16: @@ -129,13 +113,13 @@ vs_unit_create_from_key(struct brw_context *brw, struct brw_vs_unit_key *key) case 192: case 224: case 256: - vs.thread4.nr_urb_entries = key->nr_urb_entries >> 2; + vs->thread4.nr_urb_entries = brw->urb.nr_vs_entries >> 2; break; default: assert(0); } } else { - switch (key->nr_urb_entries) { + switch (brw->urb.nr_vs_entries) { case 8: case 12: case 16: @@ -147,63 +131,45 @@ vs_unit_create_from_key(struct brw_context *brw, struct brw_vs_unit_key *key) default: assert(0); } - vs.thread4.nr_urb_entries = key->nr_urb_entries; + vs->thread4.nr_urb_entries = brw->urb.nr_vs_entries; } - vs.thread4.urb_entry_allocation_size = key->urb_size - 1; + vs->thread4.urb_entry_allocation_size = brw->urb.vsize - 1; - vs.thread4.max_threads = CLAMP(key->nr_urb_entries / 2, - 1, brw->vs_max_threads) - 1; + vs->thread4.max_threads = CLAMP(brw->urb.nr_vs_entries / 2, + 1, brw->vs_max_threads) - 1; /* No samplers for ARB_vp programs: */ /* It has to be set to 0 for Ironlake */ - vs.vs5.sampler_count = 0; + vs->vs5.sampler_count = 0; if (unlikely(INTEL_DEBUG & DEBUG_STATS)) - vs.thread4.stats_enable = 1; + vs->thread4.stats_enable = 1; /* Vertex program always enabled: */ - vs.vs6.vs_enable = 1; - - bo = brw_upload_cache(&brw->cache, BRW_VS_UNIT, - key, sizeof(*key), - &brw->vs.prog_bo, 1, - &vs, sizeof(vs)); + vs->vs6.vs_enable = 1; /* Emit VS program relocation */ - drm_intel_bo_emit_reloc(bo, offsetof(struct brw_vs_unit_state, thread0), - brw->vs.prog_bo, vs.thread0.grf_reg_count << 1, + drm_intel_bo_emit_reloc(intel->batch.bo, (brw->vs.state_offset + + offsetof(struct brw_vs_unit_state, + thread0)), + brw->vs.prog_bo, vs->thread0.grf_reg_count << 1, I915_GEM_DOMAIN_INSTRUCTION, 0); - return bo; -} - -static void prepare_vs_unit(struct brw_context *brw) -{ - struct brw_vs_unit_key key; - - vs_unit_populate_key(brw, &key); - - drm_intel_bo_unreference(brw->vs.state_bo); - brw->vs.state_bo = brw_search_cache(&brw->cache, BRW_VS_UNIT, - &key, sizeof(key), - &brw->vs.prog_bo, 1, - NULL); - if (brw->vs.state_bo == NULL) { - brw->vs.state_bo = vs_unit_create_from_key(brw, &key); - } + brw->state.dirty.cache |= CACHE_NEW_VS_UNIT; } const struct brw_tracked_state brw_vs_unit = { .dirty = { .mesa = _NEW_TRANSFORM, - .brw = (BRW_NEW_CURBE_OFFSETS | + .brw = (BRW_NEW_BATCH | + BRW_NEW_CURBE_OFFSETS | BRW_NEW_NR_VS_SURFACES | BRW_NEW_URB_FENCE), .cache = CACHE_NEW_VS_PROG }, - .prepare = prepare_vs_unit, + .prepare = brw_prepare_vs_unit, }; diff --git a/src/mesa/drivers/dri/i965/brw_vtbl.c b/src/mesa/drivers/dri/i965/brw_vtbl.c index ce8712a260f..f2c417d8a81 100644 --- a/src/mesa/drivers/dri/i965/brw_vtbl.c +++ b/src/mesa/drivers/dri/i965/brw_vtbl.c @@ -60,7 +60,6 @@ dri_bo_release(drm_intel_bo **bo) static void brw_destroy_context( struct intel_context *intel ) { struct brw_context *brw = brw_context(&intel->ctx); - int i; brw_destroy_state(brw); brw_draw_destroy( brw ); @@ -77,28 +76,13 @@ static void brw_destroy_context( struct intel_context *intel ) dri_bo_release(&brw->curbe.curbe_bo); dri_bo_release(&brw->vs.prog_bo); - dri_bo_release(&brw->vs.state_bo); dri_bo_release(&brw->vs.const_bo); dri_bo_release(&brw->gs.prog_bo); - dri_bo_release(&brw->gs.state_bo); dri_bo_release(&brw->clip.prog_bo); - dri_bo_release(&brw->clip.state_bo); - dri_bo_release(&brw->clip.vp_bo); dri_bo_release(&brw->sf.prog_bo); - dri_bo_release(&brw->sf.state_bo); - dri_bo_release(&brw->sf.vp_bo); - for (i = 0; i < BRW_MAX_TEX_UNIT; i++) - dri_bo_release(&brw->wm.sdc_bo[i]); - dri_bo_release(&brw->wm.sampler_bo); dri_bo_release(&brw->wm.prog_bo); - dri_bo_release(&brw->wm.state_bo); dri_bo_release(&brw->wm.const_bo); - dri_bo_release(&brw->wm.push_const_bo); dri_bo_release(&brw->cc.prog_bo); - dri_bo_release(&brw->cc.vp_bo); - dri_bo_release(&brw->cc.blend_state_bo); - dri_bo_release(&brw->cc.depth_stencil_state_bo); - dri_bo_release(&brw->cc.color_calc_state_bo); free(brw->curbe.last_buf); free(brw->curbe.next_buf); diff --git a/src/mesa/drivers/dri/i965/brw_wm.c b/src/mesa/drivers/dri/i965/brw_wm.c index 65af227d831..06512de940f 100644 --- a/src/mesa/drivers/dri/i965/brw_wm.c +++ b/src/mesa/drivers/dri/i965/brw_wm.c @@ -33,6 +33,7 @@ #include "brw_wm.h" #include "brw_state.h" #include "main/formats.h" +#include "main/samplerobj.h" /** Return number of src args for given instruction */ GLuint brw_wm_nr_args( GLuint opcode ) @@ -119,7 +120,7 @@ brw_wm_non_glsl_emit(struct brw_context *brw, struct brw_wm_compile *c) brw_wm_emit(c); } -static void +void brw_wm_payload_setup(struct brw_context *brw, struct brw_wm_compile *c) { @@ -224,18 +225,13 @@ static void do_wm_prog( struct brw_context *brw, brw_init_compile(brw, &c->func); - brw_wm_payload_setup(brw, c); - if (!brw_wm_fs_emit(brw, c)) { - /* - * Shader which use GLSL features such as flow control are handled - * differently from "simple" shaders. - */ + /* Fallback for fixed function and ARB_fp shaders. */ c->dispatch_width = 16; brw_wm_payload_setup(brw, c); brw_wm_non_glsl_emit(brw, c); + c->prog_data.dispatch_width = 16; } - c->prog_data.dispatch_width = c->dispatch_width; /* Scratch space is used for register spilling */ if (c->last_scratch) { @@ -272,13 +268,11 @@ static void do_wm_prog( struct brw_context *brw, program = brw_get_program(&c->func, &program_size); drm_intel_bo_unreference(brw->wm.prog_bo); - brw->wm.prog_bo = brw_upload_cache_with_auxdata(&brw->cache, BRW_WM_PROG, - &c->key, sizeof(c->key), - NULL, 0, - program, program_size, - &c->prog_data, - sizeof(c->prog_data), - &brw->wm.prog_data); + brw->wm.prog_bo = brw_upload_cache(&brw->cache, BRW_WM_PROG, + &c->key, sizeof(c->key), + program, program_size, + &c->prog_data, sizeof(c->prog_data), + &brw->wm.prog_data); } @@ -373,6 +367,7 @@ static void brw_wm_populate_key( struct brw_context *brw, if (unit->_ReallyEnabled) { const struct gl_texture_object *t = unit->_Current; const struct gl_texture_image *img = t->Image[0][t->BaseLevel]; + struct gl_sampler_object *sampler = _mesa_get_samplerobj(ctx, i); int swizzles[SWIZZLE_NIL + 1] = { SWIZZLE_X, SWIZZLE_Y, @@ -388,14 +383,14 @@ static void brw_wm_populate_key( struct brw_context *brw, * well and our shadow compares always return the result in * all 4 channels. */ - if (t->Sampler.CompareMode == GL_COMPARE_R_TO_TEXTURE_ARB) { - if (t->Sampler.DepthMode == GL_ALPHA) { + if (sampler->CompareMode == GL_COMPARE_R_TO_TEXTURE_ARB) { + if (sampler->DepthMode == GL_ALPHA) { swizzles[0] = SWIZZLE_ZERO; swizzles[1] = SWIZZLE_ZERO; swizzles[2] = SWIZZLE_ZERO; - } else if (t->Sampler.DepthMode == GL_LUMINANCE) { + } else if (sampler->DepthMode == GL_LUMINANCE) { swizzles[3] = SWIZZLE_ONE; - } else if (t->Sampler.DepthMode == GL_RED) { + } else if (sampler->DepthMode == GL_RED) { /* See table 3.23 of the GL 3.0 spec. */ swizzles[1] = SWIZZLE_ZERO; swizzles[2] = SWIZZLE_ZERO; @@ -465,7 +460,7 @@ static void brw_prepare_wm_prog(struct brw_context *brw) struct brw_wm_prog_key key; struct brw_fragment_program *fp = (struct brw_fragment_program *) brw->fragment_program; - + brw_wm_populate_key(brw, &key); /* Make an early check for the key. @@ -473,7 +468,6 @@ static void brw_prepare_wm_prog(struct brw_context *brw) drm_intel_bo_unreference(brw->wm.prog_bo); brw->wm.prog_bo = brw_search_cache(&brw->cache, BRW_WM_PROG, &key, sizeof(key), - NULL, 0, &brw->wm.prog_data); if (brw->wm.prog_bo == NULL) do_wm_prog(brw, fp, &key); diff --git a/src/mesa/drivers/dri/i965/brw_wm.h b/src/mesa/drivers/dri/i965/brw_wm.h index 40659f26025..a5f99a0a657 100644 --- a/src/mesa/drivers/dri/i965/brw_wm.h +++ b/src/mesa/drivers/dri/i965/brw_wm.h @@ -201,11 +201,11 @@ struct brw_wm_compile { PASS2_DONE } state; - GLuint source_depth_reg:3; - GLuint source_w_reg:3; - GLuint aa_dest_stencil_reg:3; - GLuint dest_depth_reg:3; - GLuint nr_payload_regs:4; + uint8_t source_depth_reg; + uint8_t source_w_reg; + uint8_t aa_dest_stencil_reg; + uint8_t dest_depth_reg; + uint8_t nr_payload_regs; GLuint computes_depth:1; /* could be derived from program string */ GLuint source_depth_to_render_target:1; GLuint runtime_check_aads_emit:1; @@ -218,7 +218,6 @@ struct brw_wm_compile { GLuint nr_fp_insns; GLuint fp_temp; GLuint fp_interp_emitted; - GLuint fp_fragcolor_emitted; struct prog_src_register pixel_xy; struct prog_src_register delta_xy; @@ -315,7 +314,7 @@ void brw_wm_print_program( struct brw_wm_compile *c, void brw_wm_lookup_iz(struct intel_context *intel, struct brw_wm_compile *c); -GLboolean brw_wm_fs_emit(struct brw_context *brw, struct brw_wm_compile *c); +bool brw_wm_fs_emit(struct brw_context *brw, struct brw_wm_compile *c); /* brw_wm_emit.c */ void emit_alu1(struct brw_compile *p, @@ -475,5 +474,7 @@ struct gl_shader_program *brw_new_shader_program(struct gl_context *ctx, GLuint bool brw_color_buffer_write_enabled(struct brw_context *brw); bool brw_render_target_supported(gl_format format); +void brw_wm_payload_setup(struct brw_context *brw, + struct brw_wm_compile *c); #endif diff --git a/src/mesa/drivers/dri/i965/brw_wm_emit.c b/src/mesa/drivers/dri/i965/brw_wm_emit.c index cdc1f367e5c..fd4cd892f41 100644 --- a/src/mesa/drivers/dri/i965/brw_wm_emit.c +++ b/src/mesa/drivers/dri/i965/brw_wm_emit.c @@ -51,16 +51,6 @@ static GLboolean can_do_pln(struct intel_context *intel, return GL_TRUE; } -/* Not quite sure how correct this is - need to understand horiz - * vs. vertical strides a little better. - */ -static INLINE struct brw_reg sechalf( struct brw_reg reg ) -{ - if (reg.vstride) - reg.nr++; - return reg; -} - /* Return the SrcReg index of the channels that can be immediate float operands * instead of usage of PROGRAM_CONSTANT values through push/pull. */ @@ -1325,12 +1315,6 @@ static void fire_fb_write( struct brw_wm_compile *c, { struct brw_compile *p = &c->func; struct intel_context *intel = &p->brw->intel; - struct brw_reg dst; - - if (c->dispatch_width == 16) - dst = retype(vec16(brw_null_reg()), BRW_REGISTER_TYPE_UW); - else - dst = retype(vec8(brw_null_reg()), BRW_REGISTER_TYPE_UW); /* Pass through control information: * @@ -1352,7 +1336,6 @@ static void fire_fb_write( struct brw_wm_compile *c, /* send (16) null.0<1>:uw m0 r0.0<8;8,1>:uw 0x85a04000:ud { Align1 EOT } */ brw_fb_WRITE(p, c->dispatch_width, - dst, base_reg, retype(brw_vec8_grf(0, 0), BRW_REGISTER_TYPE_UW), target, diff --git a/src/mesa/drivers/dri/i965/brw_wm_fp.c b/src/mesa/drivers/dri/i965/brw_wm_fp.c index 4759b289a0c..9ddbee2edf4 100644 --- a/src/mesa/drivers/dri/i965/brw_wm_fp.c +++ b/src/mesa/drivers/dri/i965/brw_wm_fp.c @@ -961,35 +961,31 @@ static void emit_render_target_writes( struct brw_wm_compile *c ) struct prog_src_register outcolor; GLuint i; - struct prog_instruction *inst, *last_inst = NULL; + struct prog_instruction *inst = NULL; /* The inst->Aux field is used for FB write target and the EOT marker */ - if (c->key.nr_color_regions > 1) { - for (i = 0 ; i < c->key.nr_color_regions; i++) { - outcolor = src_reg(PROGRAM_OUTPUT, FRAG_RESULT_DATA0 + i); - last_inst = inst = emit_op(c, WM_FB_WRITE, dst_mask(dst_undef(), 0), - 0, outcolor, payload_r0_depth, outdepth); - inst->Aux = INST_AUX_TARGET(i); - if (c->fp_fragcolor_emitted) { - outcolor = src_reg(PROGRAM_OUTPUT, FRAG_RESULT_COLOR); - last_inst = inst = emit_op(c, WM_FB_WRITE, dst_mask(dst_undef(), 0), - 0, outcolor, payload_r0_depth, outdepth); - inst->Aux = INST_AUX_TARGET(i); - } + for (i = 0; i < c->key.nr_color_regions; i++) { + if (c->fp->program.Base.OutputsWritten & (1 << FRAG_RESULT_COLOR)) { + outcolor = src_reg(PROGRAM_OUTPUT, FRAG_RESULT_COLOR); + } else { + outcolor = src_reg(PROGRAM_OUTPUT, FRAG_RESULT_DATA0 + i); } - last_inst->Aux |= INST_AUX_EOT; + inst = emit_op(c, WM_FB_WRITE, dst_mask(dst_undef(), 0), + 0, outcolor, payload_r0_depth, outdepth); + inst->Aux = INST_AUX_TARGET(i); } - else { - /* if gl_FragData[0] is written, use it, else use gl_FragColor */ - if (c->fp->program.Base.OutputsWritten & BITFIELD64_BIT(FRAG_RESULT_DATA0)) - outcolor = src_reg(PROGRAM_OUTPUT, FRAG_RESULT_DATA0); - else - outcolor = src_reg(PROGRAM_OUTPUT, FRAG_RESULT_COLOR); - inst = emit_op(c, WM_FB_WRITE, dst_mask(dst_undef(),0), - 0, outcolor, payload_r0_depth, outdepth); - inst->Aux = INST_AUX_EOT | INST_AUX_TARGET(0); + /* Mark the last FB write as final, or emit a dummy write if we had + * no render targets bound. + */ + if (c->key.nr_color_regions != 0) { + inst->Aux |= INST_AUX_EOT; + } else { + inst = emit_op(c, WM_FB_WRITE, dst_mask(dst_undef(), 0), + 0, src_reg(PROGRAM_OUTPUT, FRAG_RESULT_COLOR), + payload_r0_depth, outdepth); + inst->Aux = INST_AUX_TARGET(0) | INST_AUX_EOT; } } @@ -1015,16 +1011,6 @@ static void validate_src_regs( struct brw_wm_compile *c, } } } - -static void validate_dst_regs( struct brw_wm_compile *c, - const struct prog_instruction *inst ) -{ - if (inst->DstReg.File == PROGRAM_OUTPUT) { - GLuint idx = inst->DstReg.Index; - if (idx == FRAG_RESULT_COLOR) - c->fp_fragcolor_emitted = 1; - } -} static void print_insns( const struct prog_instruction *insn, GLuint nr ) @@ -1083,7 +1069,6 @@ void brw_wm_pass_fp( struct brw_wm_compile *c ) for (insn = 0; insn < fp->program.Base.NumInstructions; insn++) { const struct prog_instruction *inst = &fp->program.Base.Instructions[insn]; validate_src_regs(c, inst); - validate_dst_regs(c, inst); } /* Loop over all instructions doing assorted simplifications and diff --git a/src/mesa/drivers/dri/i965/brw_wm_sampler_state.c b/src/mesa/drivers/dri/i965/brw_wm_sampler_state.c index cfc30d8613f..7b93bf90241 100644 --- a/src/mesa/drivers/dri/i965/brw_wm_sampler_state.c +++ b/src/mesa/drivers/dri/i965/brw_wm_sampler_state.c @@ -35,7 +35,7 @@ #include "brw_defines.h" #include "main/macros.h" - +#include "main/samplerobj.h" /* Samplers aren't strictly wm state from the hardware's perspective, @@ -66,81 +66,93 @@ static GLuint translate_wrap_mode( GLenum wrap ) } } -static drm_intel_bo *upload_default_color( struct brw_context *brw, - const GLfloat *color ) +static void +upload_default_color(struct brw_context *brw, struct gl_sampler_object *sampler, + int unit) { struct intel_context *intel = &brw->intel; + struct gl_context *ctx = &intel->ctx; + struct gl_texture_unit *texUnit = &ctx->Texture.Unit[unit]; + struct gl_texture_object *texObj = texUnit->_Current; + struct gl_texture_image *firstImage = texObj->Image[0][texObj->BaseLevel]; + float color[4]; + + if (firstImage->_BaseFormat == GL_DEPTH_COMPONENT) { + /* GL specs that border color for depth textures is taken from the + * R channel, while the hardware uses A. Spam R into all the + * channels for safety. + */ + color[0] = sampler->BorderColor.f[0]; + color[1] = sampler->BorderColor.f[0]; + color[2] = sampler->BorderColor.f[0]; + color[3] = sampler->BorderColor.f[0]; + } else { + color[0] = sampler->BorderColor.f[0]; + color[1] = sampler->BorderColor.f[1]; + color[2] = sampler->BorderColor.f[2]; + color[3] = sampler->BorderColor.f[3]; + } if (intel->gen >= 5) { - struct gen5_sampler_default_color sdc; + struct gen5_sampler_default_color *sdc; + + sdc = brw_state_batch(brw, sizeof(*sdc), 32, &brw->wm.sdc_offset[unit]); - memset(&sdc, 0, sizeof(sdc)); + memset(sdc, 0, sizeof(*sdc)); - UNCLAMPED_FLOAT_TO_UBYTE(sdc.ub[0], color[0]); - UNCLAMPED_FLOAT_TO_UBYTE(sdc.ub[1], color[1]); - UNCLAMPED_FLOAT_TO_UBYTE(sdc.ub[2], color[2]); - UNCLAMPED_FLOAT_TO_UBYTE(sdc.ub[3], color[3]); + UNCLAMPED_FLOAT_TO_UBYTE(sdc->ub[0], color[0]); + UNCLAMPED_FLOAT_TO_UBYTE(sdc->ub[1], color[1]); + UNCLAMPED_FLOAT_TO_UBYTE(sdc->ub[2], color[2]); + UNCLAMPED_FLOAT_TO_UBYTE(sdc->ub[3], color[3]); - UNCLAMPED_FLOAT_TO_USHORT(sdc.us[0], color[0]); - UNCLAMPED_FLOAT_TO_USHORT(sdc.us[1], color[1]); - UNCLAMPED_FLOAT_TO_USHORT(sdc.us[2], color[2]); - UNCLAMPED_FLOAT_TO_USHORT(sdc.us[3], color[3]); + UNCLAMPED_FLOAT_TO_USHORT(sdc->us[0], color[0]); + UNCLAMPED_FLOAT_TO_USHORT(sdc->us[1], color[1]); + UNCLAMPED_FLOAT_TO_USHORT(sdc->us[2], color[2]); + UNCLAMPED_FLOAT_TO_USHORT(sdc->us[3], color[3]); - UNCLAMPED_FLOAT_TO_SHORT(sdc.s[0], color[0]); - UNCLAMPED_FLOAT_TO_SHORT(sdc.s[1], color[1]); - UNCLAMPED_FLOAT_TO_SHORT(sdc.s[2], color[2]); - UNCLAMPED_FLOAT_TO_SHORT(sdc.s[3], color[3]); + UNCLAMPED_FLOAT_TO_SHORT(sdc->s[0], color[0]); + UNCLAMPED_FLOAT_TO_SHORT(sdc->s[1], color[1]); + UNCLAMPED_FLOAT_TO_SHORT(sdc->s[2], color[2]); + UNCLAMPED_FLOAT_TO_SHORT(sdc->s[3], color[3]); - /* XXX: Fill in half floats */ - /* XXX: Fill in signed bytes */ + sdc->hf[0] = _mesa_float_to_half(color[0]); + sdc->hf[1] = _mesa_float_to_half(color[1]); + sdc->hf[2] = _mesa_float_to_half(color[2]); + sdc->hf[3] = _mesa_float_to_half(color[3]); - COPY_4V(sdc.f, color); + sdc->b[0] = sdc->s[0] >> 8; + sdc->b[1] = sdc->s[1] >> 8; + sdc->b[2] = sdc->s[2] >> 8; + sdc->b[3] = sdc->s[3] >> 8; - return brw_cache_data(&brw->cache, BRW_SAMPLER_DEFAULT_COLOR, - &sdc, sizeof(sdc)); + sdc->f[0] = color[0]; + sdc->f[1] = color[1]; + sdc->f[2] = color[2]; + sdc->f[3] = color[3]; } else { - struct brw_sampler_default_color sdc; + struct brw_sampler_default_color *sdc; - COPY_4V(sdc.color, color); + sdc = brw_state_batch(brw, sizeof(*sdc), 32, &brw->wm.sdc_offset[unit]); - return brw_cache_data(&brw->cache, BRW_SAMPLER_DEFAULT_COLOR, - &sdc, sizeof(sdc)); + COPY_4V(sdc->color, color); } } - -struct wm_sampler_key { - int sampler_count; - - struct wm_sampler_entry { - GLenum tex_target; - GLenum wrap_r, wrap_s, wrap_t; - float maxlod, minlod; - float lod_bias; - float max_aniso; - GLenum minfilter, magfilter; - GLenum comparemode, comparefunc; - - /** If target is cubemap, take context setting. - */ - GLboolean seamless_cube_map; - } sampler[BRW_MAX_TEX_UNIT]; -}; - /** * Sets the sampler state for a single unit based off of the sampler key * entry. */ static void brw_update_sampler_state(struct brw_context *brw, - struct wm_sampler_entry *key, - drm_intel_bo *sdc_bo, + int unit, struct brw_sampler_state *sampler) { struct intel_context *intel = &brw->intel; + struct gl_context *ctx = &intel->ctx; + struct gl_texture_unit *texUnit = &ctx->Texture.Unit[unit]; + struct gl_texture_object *texObj = texUnit->_Current; + struct gl_sampler_object *gl_sampler = _mesa_get_samplerobj(ctx, unit); - memset(sampler, 0, sizeof(*sampler)); - - switch (key->minfilter) { + switch (gl_sampler->MinFilter) { case GL_NEAREST: sampler->ss0.min_filter = BRW_MAPFILTER_NEAREST; sampler->ss0.mip_filter = BRW_MIPFILTER_NONE; @@ -171,17 +183,17 @@ static void brw_update_sampler_state(struct brw_context *brw, /* Set Anisotropy: */ - if (key->max_aniso > 1.0) { + if (gl_sampler->MaxAnisotropy > 1.0) { sampler->ss0.min_filter = BRW_MAPFILTER_ANISOTROPIC; sampler->ss0.mag_filter = BRW_MAPFILTER_ANISOTROPIC; - if (key->max_aniso > 2.0) { - sampler->ss3.max_aniso = MIN2((key->max_aniso - 2) / 2, + if (gl_sampler->MaxAnisotropy > 2.0) { + sampler->ss3.max_aniso = MIN2((gl_sampler->MaxAnisotropy - 2) / 2, BRW_ANISORATIO_16); } } else { - switch (key->magfilter) { + switch (gl_sampler->MagFilter) { case GL_NEAREST: sampler->ss0.mag_filter = BRW_MAPFILTER_NEAREST; break; @@ -193,9 +205,9 @@ static void brw_update_sampler_state(struct brw_context *brw, } } - sampler->ss1.r_wrap_mode = translate_wrap_mode(key->wrap_r); - sampler->ss1.s_wrap_mode = translate_wrap_mode(key->wrap_s); - sampler->ss1.t_wrap_mode = translate_wrap_mode(key->wrap_t); + sampler->ss1.r_wrap_mode = translate_wrap_mode(gl_sampler->WrapR); + sampler->ss1.s_wrap_mode = translate_wrap_mode(gl_sampler->WrapS); + sampler->ss1.t_wrap_mode = translate_wrap_mode(gl_sampler->WrapT); if (intel->gen >= 6 && sampler->ss0.min_filter != sampler->ss0.mag_filter) @@ -204,9 +216,10 @@ static void brw_update_sampler_state(struct brw_context *brw, /* Cube-maps on 965 and later must use the same wrap mode for all 3 * coordinate dimensions. Futher, only CUBE and CLAMP are valid. */ - if (key->tex_target == GL_TEXTURE_CUBE_MAP) { - if (key->seamless_cube_map && - (key->minfilter != GL_NEAREST || key->magfilter != GL_NEAREST)) { + if (texObj->Target == GL_TEXTURE_CUBE_MAP) { + if (ctx->Texture.CubeMapSeamless && + (gl_sampler->MinFilter != GL_NEAREST || + gl_sampler->MagFilter != GL_NEAREST)) { sampler->ss1.r_wrap_mode = BRW_TEXCOORDMODE_CUBE; sampler->ss1.s_wrap_mode = BRW_TEXCOORDMODE_CUBE; sampler->ss1.t_wrap_mode = BRW_TEXCOORDMODE_CUBE; @@ -215,7 +228,7 @@ static void brw_update_sampler_state(struct brw_context *brw, sampler->ss1.s_wrap_mode = BRW_TEXCOORDMODE_CLAMP; sampler->ss1.t_wrap_mode = BRW_TEXCOORDMODE_CLAMP; } - } else if (key->tex_target == GL_TEXTURE_1D) { + } else if (texObj->Target == GL_TEXTURE_1D) { /* There's a bug in 1D texture sampling - it actually pays * attention to the wrap_t value, though it should not. * Override the wrap_t value here to GL_REPEAT to keep @@ -227,18 +240,19 @@ static void brw_update_sampler_state(struct brw_context *brw, /* Set shadow function: */ - if (key->comparemode == GL_COMPARE_R_TO_TEXTURE_ARB) { + if (gl_sampler->CompareMode == GL_COMPARE_R_TO_TEXTURE_ARB) { /* Shadowing is "enabled" by emitting a particular sampler * message (sample_c). So need to recompile WM program when * shadow comparison is enabled on each/any texture unit. */ sampler->ss0.shadow_function = - intel_translate_shadow_compare_func(key->comparefunc); + intel_translate_shadow_compare_func(gl_sampler->CompareFunc); } /* Set LOD bias: */ - sampler->ss0.lod_bias = S_FIXED(CLAMP(key->lod_bias, -16, 15), 6); + sampler->ss0.lod_bias = S_FIXED(CLAMP(texUnit->LodBias + + gl_sampler->LodBias, -16, 15), 6); sampler->ss0.lod_preclamp = 1; /* OpenGL mode */ sampler->ss0.default_color_mode = 0; /* OpenGL/DX10 mode */ @@ -252,150 +266,67 @@ static void brw_update_sampler_state(struct brw_context *brw, */ sampler->ss0.base_level = U_FIXED(0, 1); - sampler->ss1.max_lod = U_FIXED(CLAMP(key->maxlod, 0, 13), 6); - sampler->ss1.min_lod = U_FIXED(CLAMP(key->minlod, 0, 13), 6); - - sampler->ss2.default_color_pointer = sdc_bo->offset >> 5; /* reloc */ -} + sampler->ss1.max_lod = U_FIXED(CLAMP(gl_sampler->MaxLod, 0, 13), 6); + sampler->ss1.min_lod = U_FIXED(CLAMP(gl_sampler->MinLod, 0, 13), 6); + upload_default_color(brw, gl_sampler, unit); -/** Sets up the cache key for sampler state for all texture units */ -static void -brw_wm_sampler_populate_key(struct brw_context *brw, - struct wm_sampler_key *key) -{ - struct gl_context *ctx = &brw->intel.ctx; - int unit; - char *last_entry_end = ((char*)&key->sampler_count) + - sizeof(key->sampler_count); - - key->sampler_count = 0; - - for (unit = 0; unit < BRW_MAX_TEX_UNIT; unit++) { - if (ctx->Texture.Unit[unit]._ReallyEnabled) { - struct wm_sampler_entry *entry = &key->sampler[unit]; - struct gl_texture_unit *texUnit = &ctx->Texture.Unit[unit]; - struct gl_texture_object *texObj = texUnit->_Current; - struct gl_texture_image *firstImage = - texObj->Image[0][texObj->BaseLevel]; - - memset(last_entry_end, 0, - (char*)entry - last_entry_end + sizeof(*entry)); - last_entry_end = ((char*)entry) + sizeof(*entry); - - entry->tex_target = texObj->Target; - - entry->seamless_cube_map = (texObj->Target == GL_TEXTURE_CUBE_MAP) - ? ctx->Texture.CubeMapSeamless : GL_FALSE; - - entry->wrap_r = texObj->Sampler.WrapR; - entry->wrap_s = texObj->Sampler.WrapS; - entry->wrap_t = texObj->Sampler.WrapT; - - entry->maxlod = texObj->Sampler.MaxLod; - entry->minlod = texObj->Sampler.MinLod; - entry->lod_bias = texUnit->LodBias + texObj->Sampler.LodBias; - entry->max_aniso = texObj->Sampler.MaxAnisotropy; - entry->minfilter = texObj->Sampler.MinFilter; - entry->magfilter = texObj->Sampler.MagFilter; - entry->comparemode = texObj->Sampler.CompareMode; - entry->comparefunc = texObj->Sampler.CompareFunc; - - drm_intel_bo_unreference(brw->wm.sdc_bo[unit]); - if (firstImage->_BaseFormat == GL_DEPTH_COMPONENT) { - float bordercolor[4] = { - texObj->Sampler.BorderColor.f[0], - texObj->Sampler.BorderColor.f[0], - texObj->Sampler.BorderColor.f[0], - texObj->Sampler.BorderColor.f[0] - }; - /* GL specs that border color for depth textures is taken from the - * R channel, while the hardware uses A. Spam R into all the - * channels for safety. - */ - brw->wm.sdc_bo[unit] = upload_default_color(brw, bordercolor); - } else { - brw->wm.sdc_bo[unit] = upload_default_color(brw, - texObj->Sampler.BorderColor.f); - } - key->sampler_count = unit + 1; - } + if (intel->gen >= 6) { + sampler->ss2.default_color_pointer = brw->wm.sdc_offset[unit] >> 5; + } else { + /* reloc */ + sampler->ss2.default_color_pointer = (intel->batch.bo->offset + + brw->wm.sdc_offset[unit]) >> 5; + + drm_intel_bo_emit_reloc(intel->batch.bo, + brw->wm.sampler_offset + + unit * sizeof(struct brw_sampler_state) + + offsetof(struct brw_sampler_state, ss2), + intel->batch.bo, brw->wm.sdc_offset[unit], + I915_GEM_DOMAIN_SAMPLER, 0); } - struct wm_sampler_entry *entry = &key->sampler[key->sampler_count]; - memset(last_entry_end, 0, (char*)entry - last_entry_end); } + /* All samplers must be uploaded in a single contiguous array, which * complicates various things. However, this is still too confusing - * FIXME: simplify all the different new texture state flags. */ -static void upload_wm_samplers( struct brw_context *brw ) +static void +prepare_wm_samplers(struct brw_context *brw) { struct gl_context *ctx = &brw->intel.ctx; - struct wm_sampler_key key; - int i, sampler_key_size; - - brw_wm_sampler_populate_key(brw, &key); + struct brw_sampler_state *samplers; + int i; - if (brw->wm.sampler_count != key.sampler_count) { - brw->wm.sampler_count = key.sampler_count; - brw->state.dirty.cache |= CACHE_NEW_SAMPLER; + brw->wm.sampler_count = 0; + for (i = 0; i < BRW_MAX_TEX_UNIT; i++) { + if (ctx->Texture.Unit[i]._ReallyEnabled) + brw->wm.sampler_count = i + 1; } - drm_intel_bo_unreference(brw->wm.sampler_bo); - brw->wm.sampler_bo = NULL; if (brw->wm.sampler_count == 0) return; - /* Only include the populated portion of the key in the search. */ - sampler_key_size = offsetof(struct wm_sampler_key, - sampler[key.sampler_count]); - brw->wm.sampler_bo = brw_search_cache(&brw->cache, BRW_SAMPLER, - &key, sampler_key_size, - brw->wm.sdc_bo, key.sampler_count, - NULL); + samplers = brw_state_batch(brw, brw->wm.sampler_count * sizeof(*samplers), + 32, &brw->wm.sampler_offset); + memset(samplers, 0, brw->wm.sampler_count * sizeof(*samplers)); - /* If we didnt find it in the cache, compute the state and put it in the - * cache. - */ - if (brw->wm.sampler_bo == NULL) { - struct brw_sampler_state sampler[BRW_MAX_TEX_UNIT]; - - memset(sampler, 0, sizeof(sampler)); - for (i = 0; i < key.sampler_count; i++) { - if (brw->wm.sdc_bo[i] == NULL) - continue; - - brw_update_sampler_state(brw, &key.sampler[i], brw->wm.sdc_bo[i], - &sampler[i]); - } - - brw->wm.sampler_bo = brw_upload_cache(&brw->cache, BRW_SAMPLER, - &key, sampler_key_size, - brw->wm.sdc_bo, key.sampler_count, - &sampler, sizeof(sampler)); - - /* Emit SDC relocations */ - for (i = 0; i < BRW_MAX_TEX_UNIT; i++) { - if (!ctx->Texture.Unit[i]._ReallyEnabled) - continue; - - drm_intel_bo_emit_reloc(brw->wm.sampler_bo, - i * sizeof(struct brw_sampler_state) + - offsetof(struct brw_sampler_state, ss2), - brw->wm.sdc_bo[i], 0, - I915_GEM_DOMAIN_SAMPLER, 0); - } + for (i = 0; i < brw->wm.sampler_count; i++) { + if (ctx->Texture.Unit[i]._ReallyEnabled) + brw_update_sampler_state(brw, i, &samplers[i]); } + + brw->state.dirty.cache |= CACHE_NEW_SAMPLER; } const struct brw_tracked_state brw_wm_samplers = { .dirty = { .mesa = _NEW_TEXTURE, - .brw = 0, + .brw = BRW_NEW_BATCH, .cache = 0 }, - .prepare = upload_wm_samplers, + .prepare = prepare_wm_samplers, }; diff --git a/src/mesa/drivers/dri/i965/brw_wm_state.c b/src/mesa/drivers/dri/i965/brw_wm_state.c index be4b260a5ff..a91ae511b7f 100644 --- a/src/mesa/drivers/dri/i965/brw_wm_state.c +++ b/src/mesa/drivers/dri/i965/brw_wm_state.c @@ -40,21 +40,6 @@ * WM unit - fragment programs and rasterization */ -struct brw_wm_unit_key { - unsigned int total_grf, total_scratch; - unsigned int urb_entry_read_length; - unsigned int curb_entry_read_length; - unsigned int dispatch_grf_start_reg; - - unsigned int curbe_offset; - - unsigned int nr_surfaces, sampler_count; - GLboolean uses_depth, computes_depth, uses_kill, is_glsl; - GLboolean polygon_stipple, stats_wm, line_stipple, offset_enable; - GLboolean color_write_enable; - GLfloat offset_units, offset_factor; -}; - bool brw_color_buffer_write_enabled(struct brw_context *brw) { @@ -81,219 +66,192 @@ brw_color_buffer_write_enabled(struct brw_context *brw) return false; } +/** + * Setup wm hardware state. See page 225 of Volume 2 + */ static void -wm_unit_populate_key(struct brw_context *brw, struct brw_wm_unit_key *key) +brw_prepare_wm_unit(struct brw_context *brw) { - struct gl_context *ctx = &brw->intel.ctx; - const struct gl_fragment_program *fp = brw->fragment_program; struct intel_context *intel = &brw->intel; + struct gl_context *ctx = &intel->ctx; + const struct gl_fragment_program *fp = brw->fragment_program; + struct brw_wm_unit_state *wm; - memset(key, 0, sizeof(*key)); + wm = brw_state_batch(brw, sizeof(*wm), 32, &brw->wm.state_offset); + memset(wm, 0, sizeof(*wm)); + + if (brw->wm.prog_data->prog_offset_16) { + /* These two fields should be the same pre-gen6, which is why we + * only have one hardware field to program for both dispatch + * widths. + */ + assert(brw->wm.prog_data->first_curbe_grf == + brw->wm.prog_data->first_curbe_grf_16); + } /* CACHE_NEW_WM_PROG */ - key->total_grf = brw->wm.prog_data->total_grf; - key->urb_entry_read_length = brw->wm.prog_data->urb_read_length; - key->curb_entry_read_length = brw->wm.prog_data->curb_read_length; - key->dispatch_grf_start_reg = brw->wm.prog_data->first_curbe_grf; - key->total_scratch = brw->wm.prog_data->total_scratch; + wm->thread0.grf_reg_count = ALIGN(brw->wm.prog_data->total_grf, 16) / 16 - 1; + wm->wm9.grf_reg_count_2 = ALIGN(brw->wm.prog_data->total_grf_16, 16) / 16 - 1; + wm->thread0.kernel_start_pointer = brw->wm.prog_bo->offset >> 6; /* reloc */ + /* reloc */ + wm->wm9.kernel_start_pointer_2 = (brw->wm.prog_bo->offset + + brw->wm.prog_data->prog_offset_16) >> 6; + wm->thread1.depth_coef_urb_read_offset = 1; + wm->thread1.floating_point_mode = BRW_FLOATING_POINT_NON_IEEE_754; - /* BRW_NEW_CURBE_OFFSETS */ - key->curbe_offset = brw->curbe.wm_start; + if (intel->gen == 5) + wm->thread1.binding_table_entry_count = 0; /* hardware requirement */ + else { + /* BRW_NEW_NR_SURFACES */ + wm->thread1.binding_table_entry_count = brw->wm.nr_surfaces; + } - /* BRW_NEW_NR_SURFACEs */ - key->nr_surfaces = brw->wm.nr_surfaces; + if (brw->wm.prog_data->total_scratch != 0) { + wm->thread2.scratch_space_base_pointer = + brw->wm.scratch_bo->offset >> 10; /* reloc */ + wm->thread2.per_thread_scratch_space = + ffs(brw->wm.prog_data->total_scratch) - 11; + } else { + wm->thread2.scratch_space_base_pointer = 0; + wm->thread2.per_thread_scratch_space = 0; + } - /* CACHE_NEW_SAMPLER */ - key->sampler_count = brw->wm.sampler_count; + wm->thread3.dispatch_grf_start_reg = brw->wm.prog_data->first_curbe_grf; + wm->thread3.urb_entry_read_length = brw->wm.prog_data->urb_read_length; + wm->thread3.urb_entry_read_offset = 0; + wm->thread3.const_urb_entry_read_length = + brw->wm.prog_data->curb_read_length; + /* BRW_NEW_CURBE_OFFSETS */ + wm->thread3.const_urb_entry_read_offset = brw->curbe.wm_start * 2; - /* _NEW_POLYGONSTIPPLE */ - key->polygon_stipple = ctx->Polygon.StippleFlag; + if (intel->gen == 5) + wm->wm4.sampler_count = 0; /* hardware requirement */ + else { + /* CACHE_NEW_SAMPLER */ + wm->wm4.sampler_count = (brw->wm.sampler_count + 1) / 4; + } - /* BRW_NEW_FRAGMENT_PROGRAM */ - key->uses_depth = (fp->Base.InputsRead & (1 << FRAG_ATTRIB_WPOS)) != 0; + if (brw->wm.sampler_count) { + /* reloc */ + wm->wm4.sampler_state_pointer = (intel->batch.bo->offset + + brw->wm.sampler_offset) >> 5; + } else { + wm->wm4.sampler_state_pointer = 0; + } - /* as far as we can tell */ - key->computes_depth = - (fp->Base.OutputsWritten & BITFIELD64_BIT(FRAG_RESULT_DEPTH)) != 0; + /* BRW_NEW_FRAGMENT_PROGRAM */ + wm->wm5.program_uses_depth = (fp->Base.InputsRead & + (1 << FRAG_ATTRIB_WPOS)) != 0; + wm->wm5.program_computes_depth = (fp->Base.OutputsWritten & + BITFIELD64_BIT(FRAG_RESULT_DEPTH)) != 0; /* BRW_NEW_DEPTH_BUFFER * Override for NULL depthbuffer case, required by the Pixel Shader Computed * Depth field. */ if (brw->state.depth_region == NULL) - key->computes_depth = 0; - - /* _NEW_BUFFERS | _NEW_COLOR */ - key->color_write_enable = brw_color_buffer_write_enabled(brw); + wm->wm5.program_computes_depth = 0; /* _NEW_COLOR */ - key->uses_kill = fp->UsesKill || ctx->Color.AlphaEnabled; + wm->wm5.program_uses_killpixel = fp->UsesKill || ctx->Color.AlphaEnabled; - /* If using the fragment shader backend, the program is always - * 8-wide. + + /* BRW_NEW_FRAGMENT_PROGRAM + * + * If using the fragment shader backend, the program is always + * 8-wide. If not, it's always 16. */ if (ctx->Shader.CurrentFragmentProgram) { struct brw_shader *shader = (struct brw_shader *) ctx->Shader.CurrentFragmentProgram->_LinkedShaders[MESA_SHADER_FRAGMENT]; if (shader != NULL && shader->ir != NULL) { - key->is_glsl = GL_TRUE; + wm->wm5.enable_8_pix = 1; + if (brw->wm.prog_data->prog_offset_16) + wm->wm5.enable_16_pix = 1; } } + if (!wm->wm5.enable_8_pix) + wm->wm5.enable_16_pix = 1; - /* _NEW_DEPTH */ - key->stats_wm = intel->stats_wm; + wm->wm5.max_threads = brw->wm_max_threads - 1; - /* _NEW_LINE */ - key->line_stipple = ctx->Line.StippleFlag; - - /* _NEW_POLYGON */ - key->offset_enable = ctx->Polygon.OffsetFill; - key->offset_units = ctx->Polygon.OffsetUnits; - key->offset_factor = ctx->Polygon.OffsetFactor; -} - -/** - * Setup wm hardware state. See page 225 of Volume 2 - */ -static drm_intel_bo * -wm_unit_create_from_key(struct brw_context *brw, struct brw_wm_unit_key *key, - drm_intel_bo **reloc_bufs) -{ - struct intel_context *intel = &brw->intel; - struct brw_wm_unit_state wm; - drm_intel_bo *bo; - - memset(&wm, 0, sizeof(wm)); - - wm.thread0.grf_reg_count = ALIGN(key->total_grf, 16) / 16 - 1; - wm.thread0.kernel_start_pointer = brw->wm.prog_bo->offset >> 6; /* reloc */ - wm.thread1.depth_coef_urb_read_offset = 1; - wm.thread1.floating_point_mode = BRW_FLOATING_POINT_NON_IEEE_754; - - if (intel->gen == 5) - wm.thread1.binding_table_entry_count = 0; /* hardware requirement */ - else - wm.thread1.binding_table_entry_count = key->nr_surfaces; - - if (key->total_scratch != 0) { - wm.thread2.scratch_space_base_pointer = - brw->wm.scratch_bo->offset >> 10; /* reloc */ - wm.thread2.per_thread_scratch_space = ffs(key->total_scratch) - 11; - } else { - wm.thread2.scratch_space_base_pointer = 0; - wm.thread2.per_thread_scratch_space = 0; - } - - wm.thread3.dispatch_grf_start_reg = key->dispatch_grf_start_reg; - wm.thread3.urb_entry_read_length = key->urb_entry_read_length; - wm.thread3.urb_entry_read_offset = 0; - wm.thread3.const_urb_entry_read_length = key->curb_entry_read_length; - wm.thread3.const_urb_entry_read_offset = key->curbe_offset * 2; - - if (intel->gen == 5) - wm.wm4.sampler_count = 0; /* hardware requirement */ - else - wm.wm4.sampler_count = (key->sampler_count + 1) / 4; - - if (brw->wm.sampler_bo != NULL) { - /* reloc */ - wm.wm4.sampler_state_pointer = brw->wm.sampler_bo->offset >> 5; - } else { - wm.wm4.sampler_state_pointer = 0; - } - - wm.wm5.program_uses_depth = key->uses_depth; - wm.wm5.program_computes_depth = key->computes_depth; - wm.wm5.program_uses_killpixel = key->uses_kill; - - if (key->is_glsl) - wm.wm5.enable_8_pix = 1; - else - wm.wm5.enable_16_pix = 1; - - wm.wm5.max_threads = brw->wm_max_threads - 1; - - if (key->color_write_enable || - key->uses_kill || - key->computes_depth) { - wm.wm5.thread_dispatch_enable = 1; + /* _NEW_BUFFERS | _NEW_COLOR */ + if (brw_color_buffer_write_enabled(brw) || + wm->wm5.program_uses_killpixel || + wm->wm5.program_computes_depth) { + wm->wm5.thread_dispatch_enable = 1; } - wm.wm5.legacy_line_rast = 0; - wm.wm5.legacy_global_depth_bias = 0; - wm.wm5.early_depth_test = 1; /* never need to disable */ - wm.wm5.line_aa_region_width = 0; - wm.wm5.line_endcap_aa_region_width = 1; + wm->wm5.legacy_line_rast = 0; + wm->wm5.legacy_global_depth_bias = 0; + wm->wm5.early_depth_test = 1; /* never need to disable */ + wm->wm5.line_aa_region_width = 0; + wm->wm5.line_endcap_aa_region_width = 1; - wm.wm5.polygon_stipple = key->polygon_stipple; + /* _NEW_POLYGONSTIPPLE */ + wm->wm5.polygon_stipple = ctx->Polygon.StippleFlag; - if (key->offset_enable) { - wm.wm5.depth_offset = 1; + /* _NEW_POLYGON */ + if (ctx->Polygon.OffsetFill) { + wm->wm5.depth_offset = 1; /* Something wierd going on with legacy_global_depth_bias, * offset_constant, scaling and MRD. This value passes glean * but gives some odd results elsewere (eg. the * quad-offset-units test). */ - wm.global_depth_offset_constant = key->offset_units * 2; + wm->global_depth_offset_constant = ctx->Polygon.OffsetUnits * 2; /* This is the only value that passes glean: */ - wm.global_depth_offset_scale = key->offset_factor; + wm->global_depth_offset_scale = ctx->Polygon.OffsetFactor; } - wm.wm5.line_stipple = key->line_stipple; - - if (unlikely(INTEL_DEBUG & DEBUG_STATS) || key->stats_wm) - wm.wm4.stats_enable = 1; + /* _NEW_LINE */ + wm->wm5.line_stipple = ctx->Line.StippleFlag; - bo = brw_upload_cache(&brw->cache, BRW_WM_UNIT, - key, sizeof(*key), - reloc_bufs, 3, - &wm, sizeof(wm)); + /* _NEW_DEPTH */ + if (unlikely(INTEL_DEBUG & DEBUG_STATS) || intel->stats_wm) + wm->wm4.stats_enable = 1; /* Emit WM program relocation */ - drm_intel_bo_emit_reloc(bo, offsetof(struct brw_wm_unit_state, thread0), - brw->wm.prog_bo, wm.thread0.grf_reg_count << 1, + drm_intel_bo_emit_reloc(intel->batch.bo, + brw->wm.state_offset + + offsetof(struct brw_wm_unit_state, thread0), + brw->wm.prog_bo, wm->thread0.grf_reg_count << 1, I915_GEM_DOMAIN_INSTRUCTION, 0); + if (brw->wm.prog_data->prog_offset_16) { + drm_intel_bo_emit_reloc(intel->batch.bo, + brw->wm.state_offset + + offsetof(struct brw_wm_unit_state, wm9), + brw->wm.prog_bo, + ((wm->wm9.grf_reg_count_2 << 1) + + brw->wm.prog_data->prog_offset_16), + I915_GEM_DOMAIN_INSTRUCTION, 0); + } + /* Emit scratch space relocation */ - if (key->total_scratch != 0) { - drm_intel_bo_emit_reloc(bo, offsetof(struct brw_wm_unit_state, thread2), + if (brw->wm.prog_data->total_scratch != 0) { + drm_intel_bo_emit_reloc(intel->batch.bo, + brw->wm.state_offset + + offsetof(struct brw_wm_unit_state, thread2), brw->wm.scratch_bo, - wm.thread2.per_thread_scratch_space, + wm->thread2.per_thread_scratch_space, I915_GEM_DOMAIN_RENDER, I915_GEM_DOMAIN_RENDER); } /* Emit sampler state relocation */ - if (key->sampler_count != 0) { - drm_intel_bo_emit_reloc(bo, offsetof(struct brw_wm_unit_state, wm4), - brw->wm.sampler_bo, (wm.wm4.stats_enable | - (wm.wm4.sampler_count << 2)), + if (brw->wm.sampler_count != 0) { + drm_intel_bo_emit_reloc(intel->batch.bo, + brw->wm.state_offset + + offsetof(struct brw_wm_unit_state, wm4), + intel->batch.bo, (brw->wm.sampler_offset | + wm->wm4.stats_enable | + (wm->wm4.sampler_count << 2)), I915_GEM_DOMAIN_INSTRUCTION, 0); } - return bo; -} - - -static void upload_wm_unit( struct brw_context *brw ) -{ - struct brw_wm_unit_key key; - drm_intel_bo *reloc_bufs[3]; - wm_unit_populate_key(brw, &key); - - reloc_bufs[0] = brw->wm.prog_bo; - reloc_bufs[1] = brw->wm.scratch_bo; - reloc_bufs[2] = brw->wm.sampler_bo; - - drm_intel_bo_unreference(brw->wm.state_bo); - brw->wm.state_bo = brw_search_cache(&brw->cache, BRW_WM_UNIT, - &key, sizeof(key), - reloc_bufs, 3, - NULL); - if (brw->wm.state_bo == NULL) { - brw->wm.state_bo = wm_unit_create_from_key(brw, &key, reloc_bufs); - } + brw->state.dirty.cache |= CACHE_NEW_WM_UNIT; } const struct brw_tracked_state brw_wm_unit = { @@ -305,7 +263,8 @@ const struct brw_tracked_state brw_wm_unit = { _NEW_DEPTH | _NEW_BUFFERS), - .brw = (BRW_NEW_FRAGMENT_PROGRAM | + .brw = (BRW_NEW_BATCH | + BRW_NEW_FRAGMENT_PROGRAM | BRW_NEW_CURBE_OFFSETS | BRW_NEW_DEPTH_BUFFER | BRW_NEW_NR_WM_SURFACES), @@ -313,6 +272,6 @@ const struct brw_tracked_state brw_wm_unit = { .cache = (CACHE_NEW_WM_PROG | CACHE_NEW_SAMPLER) }, - .prepare = upload_wm_unit, + .prepare = brw_prepare_wm_unit, }; diff --git a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c index e3396a3cbd4..47b8b511f05 100644 --- a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c +++ b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c @@ -31,6 +31,7 @@ #include "main/mtypes.h" +#include "main/samplerobj.h" #include "main/texstore.h" #include "program/prog_parameter.h" @@ -112,6 +113,10 @@ static uint32_t brw_format_for_mesa_format[MESA_FORMAT_COUNT] = [MESA_FORMAT_LUMINANCE_FLOAT32] = BRW_SURFACEFORMAT_L32_FLOAT, [MESA_FORMAT_ALPHA_FLOAT32] = BRW_SURFACEFORMAT_A32_FLOAT, [MESA_FORMAT_LUMINANCE_ALPHA_FLOAT32] = BRW_SURFACEFORMAT_L32A32_FLOAT, + [MESA_FORMAT_RED_RGTC1] = BRW_SURFACEFORMAT_BC4_UNORM, + [MESA_FORMAT_SIGNED_RED_RGTC1] = BRW_SURFACEFORMAT_BC4_SNORM, + [MESA_FORMAT_RG_RGTC2] = BRW_SURFACEFORMAT_BC5_UNORM, + [MESA_FORMAT_SIGNED_RG_RGTC2] = BRW_SURFACEFORMAT_BC5_SNORM, }; bool @@ -213,6 +218,7 @@ brw_update_texture_surface( struct gl_context *ctx, GLuint unit ) struct gl_texture_object *tObj = ctx->Texture.Unit[unit]._Current; struct intel_texture_object *intelObj = intel_texture_object(tObj); struct gl_texture_image *firstImage = tObj->Image[0][tObj->BaseLevel]; + struct gl_sampler_object *sampler = _mesa_get_samplerobj(ctx, unit); const GLuint surf_index = SURF_INDEX_TEXTURE(unit); struct brw_surface_state *surf; @@ -224,8 +230,8 @@ brw_update_texture_surface( struct gl_context *ctx, GLuint unit ) surf->ss0.surface_type = translate_tex_target(tObj->Target); surf->ss0.surface_format = translate_tex_format(firstImage->TexFormat, firstImage->InternalFormat, - tObj->Sampler.DepthMode, - tObj->Sampler.sRGBDecode); + sampler->DepthMode, + sampler->sRGBDecode); /* This is ok for all textures with channel width 8bit or less: */ @@ -309,7 +315,7 @@ brw_create_constant_surface(struct brw_context *brw, * state atom. */ static void -prepare_wm_constants(struct brw_context *brw) +prepare_wm_pull_constants(struct brw_context *brw) { struct gl_context *ctx = &brw->intel.ctx; struct intel_context *intel = &brw->intel; @@ -353,7 +359,7 @@ const struct brw_tracked_state brw_wm_constants = { .brw = (BRW_NEW_FRAGMENT_PROGRAM), .cache = 0 }, - .prepare = prepare_wm_constants, + .prepare = prepare_wm_pull_constants, }; /** diff --git a/src/mesa/drivers/dri/i965/gen6_cc.c b/src/mesa/drivers/dri/i965/gen6_cc.c index 1b935fb5e70..66357f00fa6 100644 --- a/src/mesa/drivers/dri/i965/gen6_cc.c +++ b/src/mesa/drivers/dri/i965/gen6_cc.c @@ -32,82 +32,39 @@ #include "intel_batchbuffer.h" #include "main/macros.h" -struct gen6_blend_state_key { - GLboolean color_blend, alpha_enabled; - GLboolean dither; - GLboolean color_mask[BRW_MAX_DRAW_BUFFERS][4]; - - GLenum logic_op; - - GLenum blend_eq_rgb, blend_eq_a; - GLenum blend_src_rgb, blend_src_a; - GLenum blend_dst_rgb, blend_dst_a; - - GLenum alpha_func; -}; - static void -blend_state_populate_key(struct brw_context *brw, - struct gen6_blend_state_key *key) +prepare_blend_state(struct brw_context *brw) { struct gl_context *ctx = &brw->intel.ctx; - - memset(key, 0, sizeof(*key)); - - /* _NEW_COLOR */ - memcpy(key->color_mask, ctx->Color.ColorMask, sizeof(key->color_mask)); - - /* _NEW_COLOR */ - if (ctx->Color._LogicOpEnabled) - key->logic_op = ctx->Color.LogicOp; - else - key->logic_op = GL_COPY; - - /* _NEW_COLOR */ - key->color_blend = ctx->Color.BlendEnabled; - if (key->color_blend) { - key->blend_eq_rgb = ctx->Color.Blend[0].EquationRGB; - key->blend_eq_a = ctx->Color.Blend[0].EquationA; - key->blend_src_rgb = ctx->Color.Blend[0].SrcRGB; - key->blend_dst_rgb = ctx->Color.Blend[0].DstRGB; - key->blend_src_a = ctx->Color.Blend[0].SrcA; - key->blend_dst_a = ctx->Color.Blend[0].DstA; - } - - /* _NEW_COLOR */ - key->alpha_enabled = ctx->Color.AlphaEnabled; - if (key->alpha_enabled) { - key->alpha_func = ctx->Color.AlphaFunc; - } - - /* _NEW_COLOR */ - key->dither = ctx->Color.DitherFlag; -} - -/** - * Creates the state cache entry for the given CC unit key. - */ -static drm_intel_bo * -blend_state_create_from_key(struct brw_context *brw, - struct gen6_blend_state_key *key) -{ - struct gen6_blend_state blend[BRW_MAX_DRAW_BUFFERS]; - drm_intel_bo *bo; + struct gen6_blend_state *blend; int b; - - memset(&blend, 0, sizeof(blend)); - - for (b = 0; b < BRW_MAX_DRAW_BUFFERS; b++) { - if (key->logic_op != GL_COPY) { - blend[b].blend1.logic_op_enable = 1; - blend[b].blend1.logic_op_func = intel_translate_logic_op(key->logic_op); - } else if (key->color_blend & (1 << b)) { - GLenum eqRGB = key->blend_eq_rgb; - GLenum eqA = key->blend_eq_a; - GLenum srcRGB = key->blend_src_rgb; - GLenum dstRGB = key->blend_dst_rgb; - GLenum srcA = key->blend_src_a; - GLenum dstA = key->blend_dst_a; + int nr_draw_buffers = ctx->DrawBuffer->_NumColorDrawBuffers; + int size = sizeof(*blend) * nr_draw_buffers; + + blend = brw_state_batch(brw, size, 64, &brw->cc.blend_state_offset); + + memset(blend, 0, size); + + for (b = 0; b < nr_draw_buffers; b++) { + /* _NEW_COLOR */ + if (ctx->Color._LogicOpEnabled) { + struct gl_renderbuffer *rb = ctx->DrawBuffer->_ColorDrawBuffers[b]; + /* _NEW_BUFFERS */ + /* Floating point RTs should have no effect from LogicOp, + * except for disabling of blending + */ + if (_mesa_get_format_datatype(rb->Format) != GL_FLOAT) { + blend[b].blend1.logic_op_enable = 1; + blend[b].blend1.logic_op_func = + intel_translate_logic_op(ctx->Color.LogicOp); + } + } else if (ctx->Color.BlendEnabled & (1 << b)) { + GLenum eqRGB = ctx->Color.Blend[0].EquationRGB; + GLenum eqA = ctx->Color.Blend[0].EquationA; + GLenum srcRGB = ctx->Color.Blend[0].SrcRGB; + GLenum dstRGB = ctx->Color.Blend[0].DstRGB; + GLenum srcA = ctx->Color.Blend[0].SrcA; + GLenum dstA = ctx->Color.Blend[0].DstA; if (eqRGB == GL_MIN || eqRGB == GL_MAX) { srcRGB = dstRGB = GL_ONE; @@ -131,146 +88,74 @@ blend_state_create_from_key(struct brw_context *brw, eqA != eqRGB); } - if (key->alpha_enabled) { + + /* _NEW_COLOR */ + if (ctx->Color.AlphaEnabled) { blend[b].blend1.alpha_test_enable = 1; - blend[b].blend1.alpha_test_func = intel_translate_compare_func(key->alpha_func); + blend[b].blend1.alpha_test_func = + intel_translate_compare_func(ctx->Color.AlphaFunc); } - if (key->dither) { + /* _NEW_COLOR */ + if (ctx->Color.DitherFlag) { blend[b].blend1.dither_enable = 1; blend[b].blend1.y_dither_offset = 0; blend[b].blend1.x_dither_offset = 0; } - blend[b].blend1.write_disable_r = !key->color_mask[b][0]; - blend[b].blend1.write_disable_g = !key->color_mask[b][1]; - blend[b].blend1.write_disable_b = !key->color_mask[b][2]; - blend[b].blend1.write_disable_a = !key->color_mask[b][3]; + blend[b].blend1.write_disable_r = !ctx->Color.ColorMask[b][0]; + blend[b].blend1.write_disable_g = !ctx->Color.ColorMask[b][1]; + blend[b].blend1.write_disable_b = !ctx->Color.ColorMask[b][2]; + blend[b].blend1.write_disable_a = !ctx->Color.ColorMask[b][3]; } - bo = brw_upload_cache(&brw->cache, BRW_BLEND_STATE, - key, sizeof(*key), - NULL, 0, - &blend, sizeof(blend)); - - return bo; -} - -static void -prepare_blend_state(struct brw_context *brw) -{ - struct gen6_blend_state_key key; - - blend_state_populate_key(brw, &key); - - drm_intel_bo_unreference(brw->cc.blend_state_bo); - brw->cc.blend_state_bo = brw_search_cache(&brw->cache, BRW_BLEND_STATE, - &key, sizeof(key), - NULL, 0, - NULL); - - if (brw->cc.blend_state_bo == NULL) - brw->cc.blend_state_bo = blend_state_create_from_key(brw, &key); + brw->state.dirty.cache |= CACHE_NEW_BLEND_STATE; } const struct brw_tracked_state gen6_blend_state = { .dirty = { - .mesa = _NEW_COLOR, - .brw = 0, + .mesa = (_NEW_COLOR | + _NEW_BUFFERS), + .brw = BRW_NEW_BATCH, .cache = 0, }, .prepare = prepare_blend_state, }; -struct gen6_color_calc_state_key { - float blend_constant_color[4]; - GLclampf alpha_ref; - GLubyte stencil_ref[2]; -}; - static void -color_calc_state_populate_key(struct brw_context *brw, - struct gen6_color_calc_state_key *key) +gen6_prepare_color_calc_state(struct brw_context *brw) { struct gl_context *ctx = &brw->intel.ctx; + struct gen6_color_calc_state *cc; - memset(key, 0, sizeof(*key)); - - /* _NEW_STENCIL */ - if (ctx->Stencil._Enabled) { - const unsigned back = ctx->Stencil._BackFace; - - key->stencil_ref[0] = ctx->Stencil.Ref[0]; - if (ctx->Stencil._TestTwoSide) - key->stencil_ref[1] = ctx->Stencil.Ref[back]; - } + cc = brw_state_batch(brw, sizeof(*cc), 64, &brw->cc.state_offset); + memset(cc, 0, sizeof(*cc)); /* _NEW_COLOR */ - if (ctx->Color.AlphaEnabled) - key->alpha_ref = ctx->Color.AlphaRef; - - key->blend_constant_color[0] = ctx->Color.BlendColorUnclamped[0]; - key->blend_constant_color[1] = ctx->Color.BlendColorUnclamped[1]; - key->blend_constant_color[2] = ctx->Color.BlendColorUnclamped[2]; - key->blend_constant_color[3] = ctx->Color.BlendColorUnclamped[3]; -} - -/** - * Creates the state cache entry for the given CC state key. - */ -static drm_intel_bo * -color_calc_state_create_from_key(struct brw_context *brw, - struct gen6_color_calc_state_key *key) -{ - struct gen6_color_calc_state cc; - drm_intel_bo *bo; - - memset(&cc, 0, sizeof(cc)); + cc->cc0.alpha_test_format = BRW_ALPHATEST_FORMAT_UNORM8; + UNCLAMPED_FLOAT_TO_UBYTE(cc->cc1.alpha_ref_fi.ui, ctx->Color.AlphaRef); - cc.cc0.alpha_test_format = BRW_ALPHATEST_FORMAT_UNORM8; - UNCLAMPED_FLOAT_TO_UBYTE(cc.cc1.alpha_ref_fi.ui, key->alpha_ref); - - cc.cc0.stencil_ref = key->stencil_ref[0]; - cc.cc0.bf_stencil_ref = key->stencil_ref[1]; - - cc.constant_r = key->blend_constant_color[0]; - cc.constant_g = key->blend_constant_color[1]; - cc.constant_b = key->blend_constant_color[2]; - cc.constant_a = key->blend_constant_color[3]; - - bo = brw_upload_cache(&brw->cache, BRW_COLOR_CALC_STATE, - key, sizeof(*key), - NULL, 0, - &cc, sizeof(cc)); - - return bo; -} - -static void -prepare_color_calc_state(struct brw_context *brw) -{ - struct gen6_color_calc_state_key key; - - color_calc_state_populate_key(brw, &key); + /* _NEW_STENCIL */ + cc->cc0.stencil_ref = ctx->Stencil.Ref[0]; + cc->cc0.bf_stencil_ref = ctx->Stencil.Ref[ctx->Stencil._BackFace]; - drm_intel_bo_unreference(brw->cc.color_calc_state_bo); - brw->cc.color_calc_state_bo = brw_search_cache(&brw->cache, BRW_COLOR_CALC_STATE, - &key, sizeof(key), - NULL, 0, - NULL); + /* _NEW_COLOR */ + cc->constant_r = ctx->Color.BlendColorUnclamped[0]; + cc->constant_g = ctx->Color.BlendColorUnclamped[1]; + cc->constant_b = ctx->Color.BlendColorUnclamped[2]; + cc->constant_a = ctx->Color.BlendColorUnclamped[3]; - if (brw->cc.color_calc_state_bo == NULL) - brw->cc.color_calc_state_bo = color_calc_state_create_from_key(brw, &key); + brw->state.dirty.cache |= CACHE_NEW_COLOR_CALC_STATE; } const struct brw_tracked_state gen6_color_calc_state = { .dirty = { .mesa = _NEW_COLOR | _NEW_STENCIL, - .brw = 0, + .brw = BRW_NEW_BATCH, .cache = 0, }, - .prepare = prepare_color_calc_state, + .prepare = gen6_prepare_color_calc_state, }; static void upload_cc_state_pointers(struct brw_context *brw) @@ -279,20 +164,12 @@ static void upload_cc_state_pointers(struct brw_context *brw) BEGIN_BATCH(4); OUT_BATCH(_3DSTATE_CC_STATE_POINTERS << 16 | (4 - 2)); - OUT_RELOC(brw->cc.blend_state_bo, I915_GEM_DOMAIN_INSTRUCTION, 0, 1); - OUT_RELOC(brw->cc.depth_stencil_state_bo, I915_GEM_DOMAIN_INSTRUCTION, 0, 1); - OUT_RELOC(brw->cc.color_calc_state_bo, I915_GEM_DOMAIN_INSTRUCTION, 0, 1); + OUT_BATCH(brw->cc.blend_state_offset | 1); + OUT_BATCH(brw->cc.depth_stencil_state_offset | 1); + OUT_BATCH(brw->cc.state_offset | 1); ADVANCE_BATCH(); } - -static void prepare_cc_state_pointers(struct brw_context *brw) -{ - brw_add_validated_bo(brw, brw->cc.color_calc_state_bo); - brw_add_validated_bo(brw, brw->cc.blend_state_bo); - brw_add_validated_bo(brw, brw->cc.depth_stencil_state_bo); -} - const struct brw_tracked_state gen6_cc_state_pointers = { .dirty = { .mesa = 0, @@ -301,6 +178,5 @@ const struct brw_tracked_state gen6_cc_state_pointers = { CACHE_NEW_COLOR_CALC_STATE | CACHE_NEW_DEPTH_STENCIL_STATE) }, - .prepare = prepare_cc_state_pointers, .emit = upload_cc_state_pointers, }; diff --git a/src/mesa/drivers/dri/i965/gen6_depthstencil.c b/src/mesa/drivers/dri/i965/gen6_depthstencil.c index 96e6eade6b7..775e1ce2c9c 100644 --- a/src/mesa/drivers/dri/i965/gen6_depthstencil.c +++ b/src/mesa/drivers/dri/i965/gen6_depthstencil.c @@ -28,138 +28,68 @@ #include "brw_context.h" #include "brw_state.h" -struct brw_depth_stencil_state_key { - GLenum depth_func; - GLboolean depth_test, depth_write; - GLboolean stencil, stencil_two_side; - GLenum stencil_func[2], stencil_fail_op[2]; - GLenum stencil_pass_depth_fail_op[2], stencil_pass_depth_pass_op[2]; - GLubyte stencil_write_mask[2], stencil_test_mask[2]; -}; - static void -depth_stencil_state_populate_key(struct brw_context *brw, - struct brw_depth_stencil_state_key *key) +gen6_prepare_depth_stencil_state(struct brw_context *brw) { struct gl_context *ctx = &brw->intel.ctx; - const unsigned back = ctx->Stencil._BackFace; + struct gen6_depth_stencil_state *ds; - memset(key, 0, sizeof(*key)); + ds = brw_state_batch(brw, sizeof(*ds), 64, + &brw->cc.depth_stencil_state_offset); + memset(ds, 0, sizeof(*ds)); /* _NEW_STENCIL */ - key->stencil = ctx->Stencil._Enabled; - key->stencil_two_side = ctx->Stencil._TestTwoSide; - - if (key->stencil) { - key->stencil_func[0] = ctx->Stencil.Function[0]; - key->stencil_fail_op[0] = ctx->Stencil.FailFunc[0]; - key->stencil_pass_depth_fail_op[0] = ctx->Stencil.ZFailFunc[0]; - key->stencil_pass_depth_pass_op[0] = ctx->Stencil.ZPassFunc[0]; - key->stencil_write_mask[0] = ctx->Stencil.WriteMask[0]; - key->stencil_test_mask[0] = ctx->Stencil.ValueMask[0]; - } - if (key->stencil_two_side) { - key->stencil_func[1] = ctx->Stencil.Function[back]; - key->stencil_fail_op[1] = ctx->Stencil.FailFunc[back]; - key->stencil_pass_depth_fail_op[1] = ctx->Stencil.ZFailFunc[back]; - key->stencil_pass_depth_pass_op[1] = ctx->Stencil.ZPassFunc[back]; - key->stencil_write_mask[1] = ctx->Stencil.WriteMask[back]; - key->stencil_test_mask[1] = ctx->Stencil.ValueMask[back]; - } - - key->depth_test = ctx->Depth.Test; - if (key->depth_test) { - key->depth_func = ctx->Depth.Func; - key->depth_write = ctx->Depth.Mask; - } -} - -/** - * Creates the state cache entry for the given DEPTH_STENCIL_STATE state key. - */ -static drm_intel_bo * -depth_stencil_state_create_from_key(struct brw_context *brw, - struct brw_depth_stencil_state_key *key) -{ - struct gen6_depth_stencil_state ds; - drm_intel_bo *bo; - - memset(&ds, 0, sizeof(ds)); - - /* _NEW_STENCIL */ - if (key->stencil) { - ds.ds0.stencil_enable = 1; - ds.ds0.stencil_func = - intel_translate_compare_func(key->stencil_func[0]); - ds.ds0.stencil_fail_op = - intel_translate_stencil_op(key->stencil_fail_op[0]); - ds.ds0.stencil_pass_depth_fail_op = - intel_translate_stencil_op(key->stencil_pass_depth_fail_op[0]); - ds.ds0.stencil_pass_depth_pass_op = - intel_translate_stencil_op(key->stencil_pass_depth_pass_op[0]); - ds.ds1.stencil_write_mask = key->stencil_write_mask[0]; - ds.ds1.stencil_test_mask = key->stencil_test_mask[0]; - - if (key->stencil_two_side) { - ds.ds0.bf_stencil_enable = 1; - ds.ds0.bf_stencil_func = - intel_translate_compare_func(key->stencil_func[1]); - ds.ds0.bf_stencil_fail_op = - intel_translate_stencil_op(key->stencil_fail_op[1]); - ds.ds0.bf_stencil_pass_depth_fail_op = - intel_translate_stencil_op(key->stencil_pass_depth_fail_op[1]); - ds.ds0.bf_stencil_pass_depth_pass_op = - intel_translate_stencil_op(key->stencil_pass_depth_pass_op[1]); - ds.ds1.bf_stencil_write_mask = key->stencil_write_mask[1]; - ds.ds1.bf_stencil_test_mask = key->stencil_test_mask[1]; + if (ctx->Stencil._Enabled) { + int back = ctx->Stencil._BackFace; + + ds->ds0.stencil_enable = 1; + ds->ds0.stencil_func = + intel_translate_compare_func(ctx->Stencil.Function[0]); + ds->ds0.stencil_fail_op = + intel_translate_stencil_op(ctx->Stencil.FailFunc[0]); + ds->ds0.stencil_pass_depth_fail_op = + intel_translate_stencil_op(ctx->Stencil.ZFailFunc[0]); + ds->ds0.stencil_pass_depth_pass_op = + intel_translate_stencil_op(ctx->Stencil.ZPassFunc[0]); + ds->ds1.stencil_write_mask = ctx->Stencil.WriteMask[0]; + ds->ds1.stencil_test_mask = ctx->Stencil.ValueMask[0]; + + if (ctx->Stencil._TestTwoSide) { + ds->ds0.bf_stencil_enable = 1; + ds->ds0.bf_stencil_func = + intel_translate_compare_func(ctx->Stencil.Function[back]); + ds->ds0.bf_stencil_fail_op = + intel_translate_stencil_op(ctx->Stencil.FailFunc[back]); + ds->ds0.bf_stencil_pass_depth_fail_op = + intel_translate_stencil_op(ctx->Stencil.ZFailFunc[back]); + ds->ds0.bf_stencil_pass_depth_pass_op = + intel_translate_stencil_op(ctx->Stencil.ZPassFunc[back]); + ds->ds1.bf_stencil_write_mask = ctx->Stencil.WriteMask[back]; + ds->ds1.bf_stencil_test_mask = ctx->Stencil.ValueMask[back]; } /* Not really sure about this: */ - if (key->stencil_write_mask[0] || - (key->stencil_two_side && key->stencil_write_mask[1])) - ds.ds0.stencil_write_enable = 1; + if (ctx->Stencil.WriteMask[0] || + (ctx->Stencil._TestTwoSide && ctx->Stencil.WriteMask[back])) + ds->ds0.stencil_write_enable = 1; } /* _NEW_DEPTH */ - if (key->depth_test) { - ds.ds2.depth_test_enable = 1; - ds.ds2.depth_test_func = intel_translate_compare_func(key->depth_func); - ds.ds2.depth_write_enable = key->depth_write; + if (ctx->Depth.Test) { + ds->ds2.depth_test_enable = 1; + ds->ds2.depth_test_func = intel_translate_compare_func(ctx->Depth.Func); + ds->ds2.depth_write_enable = ctx->Depth.Mask; } - bo = brw_upload_cache(&brw->cache, BRW_DEPTH_STENCIL_STATE, - key, sizeof(*key), - NULL, 0, - &ds, sizeof(ds)); - - return bo; -} - -static void -prepare_depth_stencil_state(struct brw_context *brw) -{ - struct brw_depth_stencil_state_key key; - - depth_stencil_state_populate_key(brw, &key); - - drm_intel_bo_unreference(brw->cc.depth_stencil_state_bo); - brw->cc.depth_stencil_state_bo = brw_search_cache(&brw->cache, - BRW_DEPTH_STENCIL_STATE, - &key, sizeof(key), - NULL, 0, - NULL); - - if (brw->cc.depth_stencil_state_bo == NULL) - brw->cc.depth_stencil_state_bo = - depth_stencil_state_create_from_key(brw, &key); + brw->state.dirty.cache |= CACHE_NEW_DEPTH_STENCIL_STATE; } const struct brw_tracked_state gen6_depth_stencil_state = { .dirty = { .mesa = _NEW_DEPTH | _NEW_STENCIL, - .brw = 0, + .brw = BRW_NEW_BATCH, .cache = 0, }, - .prepare = prepare_depth_stencil_state, + .prepare = gen6_prepare_depth_stencil_state, }; diff --git a/src/mesa/drivers/dri/i965/gen6_sampler_state.c b/src/mesa/drivers/dri/i965/gen6_sampler_state.c index f65c651bdff..4cdec699df6 100644 --- a/src/mesa/drivers/dri/i965/gen6_sampler_state.c +++ b/src/mesa/drivers/dri/i965/gen6_sampler_state.c @@ -43,27 +43,15 @@ upload_sampler_state_pointers(struct brw_context *brw) (4 - 2)); OUT_BATCH(0); /* VS */ OUT_BATCH(0); /* GS */ - if (brw->wm.sampler_bo) - OUT_RELOC(brw->wm.sampler_bo, I915_GEM_DOMAIN_INSTRUCTION, 0, 0); - else - OUT_BATCH(0); - + OUT_BATCH(brw->wm.sampler_offset); ADVANCE_BATCH(); } - -static void -prepare_sampler_state_pointers(struct brw_context *brw) -{ - brw_add_validated_bo(brw, brw->wm.sampler_bo); -} - const struct brw_tracked_state gen6_sampler_state = { .dirty = { .mesa = 0, .brw = BRW_NEW_BATCH, .cache = CACHE_NEW_SAMPLER }, - .prepare = prepare_sampler_state_pointers, .emit = upload_sampler_state_pointers, }; diff --git a/src/mesa/drivers/dri/i965/gen6_scissor_state.c b/src/mesa/drivers/dri/i965/gen6_scissor_state.c index 12b65826ae9..fad3ca0dd04 100644 --- a/src/mesa/drivers/dri/i965/gen6_scissor_state.c +++ b/src/mesa/drivers/dri/i965/gen6_scissor_state.c @@ -31,11 +31,15 @@ #include "intel_batchbuffer.h" static void -prepare_scissor_state(struct brw_context *brw) +gen6_prepare_scissor_state(struct brw_context *brw) { - struct gl_context *ctx = &brw->intel.ctx; + struct intel_context *intel = &brw->intel; + struct gl_context *ctx = &intel->ctx; const GLboolean render_to_fbo = (ctx->DrawBuffer->Name != 0); - struct gen6_scissor_rect scissor; + struct gen6_scissor_rect *scissor; + uint32_t scissor_state_offset; + + scissor = brw_state_batch(brw, sizeof(*scissor), 32, &scissor_state_offset); /* _NEW_SCISSOR | _NEW_BUFFERS | _NEW_VIEWPORT */ @@ -54,62 +58,36 @@ prepare_scissor_state(struct brw_context *brw) * anything. Instead, just provide a min > max scissor inside * the bounds, which produces the expected no rendering. */ - scissor.xmin = 1; - scissor.xmax = 0; - scissor.ymin = 1; - scissor.ymax = 0; + scissor->xmin = 1; + scissor->xmax = 0; + scissor->ymin = 1; + scissor->ymax = 0; } else if (render_to_fbo) { /* texmemory: Y=0=bottom */ - scissor.xmin = ctx->DrawBuffer->_Xmin; - scissor.xmax = ctx->DrawBuffer->_Xmax - 1; - scissor.ymin = ctx->DrawBuffer->_Ymin; - scissor.ymax = ctx->DrawBuffer->_Ymax - 1; + scissor->xmin = ctx->DrawBuffer->_Xmin; + scissor->xmax = ctx->DrawBuffer->_Xmax - 1; + scissor->ymin = ctx->DrawBuffer->_Ymin; + scissor->ymax = ctx->DrawBuffer->_Ymax - 1; } else { /* memory: Y=0=top */ - scissor.xmin = ctx->DrawBuffer->_Xmin; - scissor.xmax = ctx->DrawBuffer->_Xmax - 1; - scissor.ymin = ctx->DrawBuffer->Height - ctx->DrawBuffer->_Ymax; - scissor.ymax = ctx->DrawBuffer->Height - ctx->DrawBuffer->_Ymin - 1; + scissor->xmin = ctx->DrawBuffer->_Xmin; + scissor->xmax = ctx->DrawBuffer->_Xmax - 1; + scissor->ymin = ctx->DrawBuffer->Height - ctx->DrawBuffer->_Ymax; + scissor->ymax = ctx->DrawBuffer->Height - ctx->DrawBuffer->_Ymin - 1; } - drm_intel_bo_unreference(brw->sf.state_bo); - brw->sf.state_bo = brw_cache_data(&brw->cache, BRW_SF_UNIT, - &scissor, sizeof(scissor)); -} - -const struct brw_tracked_state gen6_scissor_state = { - .dirty = { - .mesa = _NEW_SCISSOR | _NEW_BUFFERS | _NEW_VIEWPORT, - .brw = 0, - .cache = 0, - }, - .prepare = prepare_scissor_state, -}; - -static void upload_scissor_state_pointers(struct brw_context *brw) -{ - struct intel_context *intel = &brw->intel; - BEGIN_BATCH(2); OUT_BATCH(_3DSTATE_SCISSOR_STATE_POINTERS << 16 | (2 - 2)); - OUT_RELOC(brw->sf.state_bo, I915_GEM_DOMAIN_INSTRUCTION, 0, 0); + OUT_BATCH(scissor_state_offset); ADVANCE_BATCH(); - } - -static void prepare_scissor_state_pointers(struct brw_context *brw) -{ - brw_add_validated_bo(brw, brw->sf.state_bo); -} - -const struct brw_tracked_state gen6_scissor_state_pointers = { +const struct brw_tracked_state gen6_scissor_state = { .dirty = { - .mesa = 0, + .mesa = _NEW_SCISSOR | _NEW_BUFFERS | _NEW_VIEWPORT, .brw = BRW_NEW_BATCH, - .cache = CACHE_NEW_SF_UNIT + .cache = 0, }, - .prepare = prepare_scissor_state_pointers, - .emit = upload_scissor_state_pointers, + .prepare = gen6_prepare_scissor_state, }; diff --git a/src/mesa/drivers/dri/i965/gen6_viewport_state.c b/src/mesa/drivers/dri/i965/gen6_viewport_state.c index cd7d209e3ea..4116bdb96de 100644 --- a/src/mesa/drivers/dri/i965/gen6_viewport_state.c +++ b/src/mesa/drivers/dri/i965/gen6_viewport_state.c @@ -41,22 +41,22 @@ static void prepare_clip_vp(struct brw_context *brw) { - struct brw_clipper_viewport vp; + struct brw_clipper_viewport *vp; - vp.xmin = -1.0; - vp.xmax = 1.0; - vp.ymin = -1.0; - vp.ymax = 1.0; + vp = brw_state_batch(brw, sizeof(*vp), 32, &brw->clip.vp_offset); - drm_intel_bo_unreference(brw->clip.vp_bo); - brw->clip.vp_bo = brw_cache_data(&brw->cache, BRW_CLIP_VP, - &vp, sizeof(vp)); + vp->xmin = -1.0; + vp->xmax = 1.0; + vp->ymin = -1.0; + vp->ymax = 1.0; + + brw->state.dirty.cache |= CACHE_NEW_CLIP_VP; } const struct brw_tracked_state gen6_clip_vp = { .dirty = { - .mesa = _NEW_VIEWPORT, /* XXX: not really, but we need nonzero */ - .brw = 0, + .mesa = 0, + .brw = BRW_NEW_BATCH, .cache = 0, }, .prepare = prepare_clip_vp, @@ -67,12 +67,13 @@ prepare_sf_vp(struct brw_context *brw) { struct gl_context *ctx = &brw->intel.ctx; const GLfloat depth_scale = 1.0F / ctx->DrawBuffer->_DepthMaxF; - struct brw_sf_viewport sfv; + struct brw_sf_viewport *sfv; GLfloat y_scale, y_bias; const GLboolean render_to_fbo = (ctx->DrawBuffer->Name != 0); const GLfloat *v = ctx->Viewport._WindowMap.m; - memset(&sfv, 0, sizeof(sfv)); + sfv = brw_state_batch(brw, sizeof(*sfv), 32, &brw->sf.vp_offset); + memset(sfv, 0, sizeof(*sfv)); /* _NEW_BUFFERS */ if (render_to_fbo) { @@ -84,34 +85,25 @@ prepare_sf_vp(struct brw_context *brw) } /* _NEW_VIEWPORT */ - sfv.viewport.m00 = v[MAT_SX]; - sfv.viewport.m11 = v[MAT_SY] * y_scale; - sfv.viewport.m22 = v[MAT_SZ] * depth_scale; - sfv.viewport.m30 = v[MAT_TX]; - sfv.viewport.m31 = v[MAT_TY] * y_scale + y_bias; - sfv.viewport.m32 = v[MAT_TZ] * depth_scale; + sfv->viewport.m00 = v[MAT_SX]; + sfv->viewport.m11 = v[MAT_SY] * y_scale; + sfv->viewport.m22 = v[MAT_SZ] * depth_scale; + sfv->viewport.m30 = v[MAT_TX]; + sfv->viewport.m31 = v[MAT_TY] * y_scale + y_bias; + sfv->viewport.m32 = v[MAT_TZ] * depth_scale; - drm_intel_bo_unreference(brw->sf.vp_bo); - brw->sf.vp_bo = brw_cache_data(&brw->cache, BRW_SF_VP, - &sfv, sizeof(sfv)); + brw->state.dirty.cache |= CACHE_NEW_SF_VP; } const struct brw_tracked_state gen6_sf_vp = { .dirty = { .mesa = _NEW_VIEWPORT | _NEW_BUFFERS, - .brw = 0, + .brw = BRW_NEW_BATCH, .cache = 0, }, .prepare = prepare_sf_vp, }; -static void prepare_viewport_state_pointers(struct brw_context *brw) -{ - brw_add_validated_bo(brw, brw->clip.vp_bo); - brw_add_validated_bo(brw, brw->sf.vp_bo); - brw_add_validated_bo(brw, brw->cc.vp_bo); -} - static void upload_viewport_state_pointers(struct brw_context *brw) { struct intel_context *intel = &brw->intel; @@ -121,9 +113,9 @@ static void upload_viewport_state_pointers(struct brw_context *brw) GEN6_CC_VIEWPORT_MODIFY | GEN6_SF_VIEWPORT_MODIFY | GEN6_CLIP_VIEWPORT_MODIFY); - OUT_RELOC(brw->clip.vp_bo, I915_GEM_DOMAIN_INSTRUCTION, 0, 0); - OUT_RELOC(brw->sf.vp_bo, I915_GEM_DOMAIN_INSTRUCTION, 0, 0); - OUT_RELOC(brw->cc.vp_bo, I915_GEM_DOMAIN_INSTRUCTION, 0, 0); + OUT_BATCH(brw->clip.vp_offset); + OUT_BATCH(brw->sf.vp_offset); + OUT_BATCH(brw->cc.vp_offset); ADVANCE_BATCH(); } @@ -135,6 +127,5 @@ const struct brw_tracked_state gen6_viewport_state = { CACHE_NEW_SF_VP | CACHE_NEW_CC_VP) }, - .prepare = prepare_viewport_state_pointers, .emit = upload_viewport_state_pointers, }; diff --git a/src/mesa/drivers/dri/i965/gen6_vs_state.c b/src/mesa/drivers/dri/i965/gen6_vs_state.c index a10cec318d6..b46368e36e2 100644 --- a/src/mesa/drivers/dri/i965/gen6_vs_state.c +++ b/src/mesa/drivers/dri/i965/gen6_vs_state.c @@ -34,43 +34,36 @@ #include "intel_batchbuffer.h" static void -upload_vs_state(struct brw_context *brw) +gen6_prepare_vs_push_constants(struct brw_context *brw) { struct intel_context *intel = &brw->intel; struct gl_context *ctx = &intel->ctx; + /* _BRW_NEW_VERTEX_PROGRAM */ const struct brw_vertex_program *vp = brw_vertex_program_const(brw->vertex_program); unsigned int nr_params = brw->vs.prog_data->nr_params / 4; - drm_intel_bo *constant_bo; - int i; + if (brw->vertex_program->IsNVProgram) + _mesa_load_tracked_matrices(ctx); + + /* Updates the ParamaterValues[i] pointers for all parameters of the + * basic type of PROGRAM_STATE_VAR. + */ + /* XXX: Should this happen somewhere before to get our state flag set? */ + _mesa_load_state_parameters(ctx, vp->program.Base.Parameters); + + /* CACHE_NEW_VS_PROG | _NEW_TRANSFORM */ if (brw->vs.prog_data->nr_params == 0 && !ctx->Transform.ClipPlanesEnabled) { - /* Disable the push constant buffers. */ - BEGIN_BATCH(5); - OUT_BATCH(_3DSTATE_CONSTANT_VS << 16 | (5 - 2)); - OUT_BATCH(0); - OUT_BATCH(0); - OUT_BATCH(0); - OUT_BATCH(0); - ADVANCE_BATCH(); + brw->vs.push_const_size = 0; } else { - int params_uploaded = 0, param_regs; + int params_uploaded = 0; float *param; + int i; - if (brw->vertex_program->IsNVProgram) - _mesa_load_tracked_matrices(ctx); - - /* Updates the ParamaterValues[i] pointers for all parameters of the - * basic type of PROGRAM_STATE_VAR. - */ - _mesa_load_state_parameters(ctx, vp->program.Base.Parameters); - - constant_bo = drm_intel_bo_alloc(intel->bufmgr, "VS constant_bo", - (MAX_CLIP_PLANES + nr_params) * - 4 * sizeof(float), - 4096); - drm_intel_gem_bo_map_gtt(constant_bo); - param = constant_bo->virtual; + param = brw_state_batch(brw, + (MAX_CLIP_PLANES + nr_params) * + 4 * sizeof(float), + 32, &brw->vs.push_const_offset); /* This should be loaded like any other param, but it's ad-hoc * until we redo the VS backend. @@ -100,30 +93,56 @@ upload_vs_state(struct brw_context *brw) if (0) { printf("VS constant buffer:\n"); for (i = 0; i < params_uploaded; i++) { - float *buf = (float *)constant_bo->virtual + i * 4; + float *buf = param + i * 4; printf("%d: %f %f %f %f\n", i, buf[0], buf[1], buf[2], buf[3]); } } - drm_intel_gem_bo_unmap_gtt(constant_bo); + brw->vs.push_const_size = (params_uploaded + 1) / 2; + /* We can only push 32 registers of constants at a time. */ + assert(brw->vs.push_const_size <= 32); + } +} + +const struct brw_tracked_state gen6_vs_constants = { + .dirty = { + .mesa = _NEW_TRANSFORM | _NEW_PROGRAM_CONSTANTS, + .brw = (BRW_NEW_BATCH | + BRW_NEW_VERTEX_PROGRAM), + .cache = 0, + }, + .prepare = gen6_prepare_vs_push_constants, +}; - param_regs = (params_uploaded + 1) / 2; - assert(param_regs <= 32); +static void +upload_vs_state(struct brw_context *brw) +{ + struct intel_context *intel = &brw->intel; + if (brw->vs.push_const_size == 0) { + /* Disable the push constant buffers. */ + BEGIN_BATCH(5); + OUT_BATCH(_3DSTATE_CONSTANT_VS << 16 | (5 - 2)); + OUT_BATCH(0); + OUT_BATCH(0); + OUT_BATCH(0); + OUT_BATCH(0); + ADVANCE_BATCH(); + } else { BEGIN_BATCH(5); OUT_BATCH(_3DSTATE_CONSTANT_VS << 16 | GEN6_CONSTANT_BUFFER_0_ENABLE | (5 - 2)); - OUT_RELOC(constant_bo, - I915_GEM_DOMAIN_RENDER, 0, /* XXX: bad domain */ - param_regs - 1); + /* Pointer to the VS constant buffer. Covered by the set of + * state flags from gen6_prepare_wm_constants + */ + OUT_BATCH(brw->vs.push_const_offset + + brw->vs.push_const_size - 1); OUT_BATCH(0); OUT_BATCH(0); OUT_BATCH(0); ADVANCE_BATCH(); - - drm_intel_bo_unreference(constant_bo); } BEGIN_BATCH(6); @@ -149,7 +168,9 @@ const struct brw_tracked_state gen6_vs_state = { .brw = (BRW_NEW_CURBE_OFFSETS | BRW_NEW_NR_VS_SURFACES | BRW_NEW_URB_FENCE | - BRW_NEW_CONTEXT), + BRW_NEW_CONTEXT | + BRW_NEW_VERTEX_PROGRAM | + BRW_NEW_BATCH), .cache = CACHE_NEW_VS_PROG }, .emit = upload_vs_state, diff --git a/src/mesa/drivers/dri/i965/gen6_wm_state.c b/src/mesa/drivers/dri/i965/gen6_wm_state.c index 8215cb15a9c..33b233414c6 100644 --- a/src/mesa/drivers/dri/i965/gen6_wm_state.c +++ b/src/mesa/drivers/dri/i965/gen6_wm_state.c @@ -35,16 +35,13 @@ #include "intel_batchbuffer.h" static void -prepare_wm_constants(struct brw_context *brw) +gen6_prepare_wm_push_constants(struct brw_context *brw) { struct intel_context *intel = &brw->intel; struct gl_context *ctx = &intel->ctx; const struct brw_fragment_program *fp = brw_fragment_program_const(brw->fragment_program); - drm_intel_bo_unreference(brw->wm.push_const_bo); - brw->wm.push_const_bo = NULL; - /* Updates the ParamaterValues[i] pointers for all parameters of the * basic type of PROGRAM_STATE_VAR. */ @@ -55,13 +52,11 @@ prepare_wm_constants(struct brw_context *brw) float *constants; unsigned int i; - brw->wm.push_const_bo = drm_intel_bo_alloc(intel->bufmgr, - "WM constant_bo", - brw->wm.prog_data->nr_params * - sizeof(float), - 4096); - drm_intel_gem_bo_map_gtt(brw->wm.push_const_bo); - constants = brw->wm.push_const_bo->virtual; + constants = brw_state_batch(brw, + brw->wm.prog_data->nr_params * + sizeof(float), + 32, &brw->wm.push_const_offset); + for (i = 0; i < brw->wm.prog_data->nr_params; i++) { constants[i] = convert_param(brw->wm.prog_data->param_convert[i], *brw->wm.prog_data->param[i]); @@ -80,18 +75,17 @@ prepare_wm_constants(struct brw_context *brw) printf("\n"); printf("\n"); } - - drm_intel_gem_bo_unmap_gtt(brw->wm.push_const_bo); } } const struct brw_tracked_state gen6_wm_constants = { .dirty = { .mesa = _NEW_PROGRAM_CONSTANTS, - .brw = BRW_NEW_FRAGMENT_PROGRAM, + .brw = (BRW_NEW_BATCH | + BRW_NEW_FRAGMENT_PROGRAM), .cache = 0, }, - .prepare = prepare_wm_constants, + .prepare = gen6_prepare_wm_push_constants, }; static void @@ -118,8 +112,10 @@ upload_wm_state(struct brw_context *brw) OUT_BATCH(_3DSTATE_CONSTANT_PS << 16 | GEN6_CONSTANT_BUFFER_0_ENABLE | (5 - 2)); - OUT_RELOC(brw->wm.push_const_bo, - I915_GEM_DOMAIN_RENDER, 0, /* XXX: bad domain */ + /* Pointer to the WM constant buffer. Covered by the set of + * state flags from gen6_prepare_wm_constants + */ + OUT_BATCH(brw->wm.push_const_offset + ALIGN(brw->wm.prog_data->nr_params, brw->wm.prog_data->dispatch_width) / 8 - 1); OUT_BATCH(0); @@ -143,14 +139,19 @@ upload_wm_state(struct brw_context *brw) dw2 |= (ALIGN(brw->wm.sampler_count, 4) / 4) << GEN6_WM_SAMPLER_COUNT_SHIFT; dw4 |= (brw->wm.prog_data->first_curbe_grf << GEN6_WM_DISPATCH_START_GRF_SHIFT_0); + dw4 |= (brw->wm.prog_data->first_curbe_grf_16 << + GEN6_WM_DISPATCH_START_GRF_SHIFT_2); dw5 |= (brw->wm_max_threads - 1) << GEN6_WM_MAX_THREADS_SHIFT; /* CACHE_NEW_WM_PROG */ - if (brw->wm.prog_data->dispatch_width == 8) + if (brw->wm.prog_data->dispatch_width == 8) { dw5 |= GEN6_WM_8_DISPATCH_ENABLE; - else + if (brw->wm.prog_data->prog_offset_16) + dw5 |= GEN6_WM_16_DISPATCH_ENABLE; + } else { dw5 |= GEN6_WM_16_DISPATCH_ENABLE; + } /* _NEW_LINE */ if (ctx->Line.StippleFlag) @@ -194,7 +195,12 @@ upload_wm_state(struct brw_context *brw) OUT_BATCH(dw5); OUT_BATCH(dw6); OUT_BATCH(0); /* kernel 1 pointer */ - OUT_BATCH(0); /* kernel 2 pointer */ + if (brw->wm.prog_data->prog_offset_16) { + OUT_RELOC(brw->wm.prog_bo, I915_GEM_DOMAIN_INSTRUCTION, 0, + brw->wm.prog_data->prog_offset_16); + } else { + OUT_BATCH(0); /* kernel 2 pointer */ + } ADVANCE_BATCH(); } diff --git a/src/mesa/drivers/dri/intel/intel_batchbuffer.c b/src/mesa/drivers/dri/intel/intel_batchbuffer.c index 53d6e7c6acc..377989bcc14 100644 --- a/src/mesa/drivers/dri/intel/intel_batchbuffer.c +++ b/src/mesa/drivers/dri/intel/intel_batchbuffer.c @@ -128,6 +128,11 @@ _intel_batchbuffer_flush(struct intel_context *intel, if (intel->batch.used == 0) return; + if (intel->first_post_swapbuffers_batch == NULL) { + intel->first_post_swapbuffers_batch = intel->batch.bo; + drm_intel_bo_reference(intel->first_post_swapbuffers_batch); + } + if (unlikely(INTEL_DEBUG & DEBUG_BATCH)) fprintf(stderr, "%s:%d: Batchbuffer flush with %db used\n", file, line, 4*intel->batch.used); diff --git a/src/mesa/drivers/dri/intel/intel_clear.c b/src/mesa/drivers/dri/intel/intel_clear.c index 82d29e76712..5a96232107e 100644 --- a/src/mesa/drivers/dri/intel/intel_clear.c +++ b/src/mesa/drivers/dri/intel/intel_clear.c @@ -28,6 +28,7 @@ #include "main/glheader.h" #include "main/mtypes.h" +#include "main/condrender.h" #include "swrast/swrast.h" #include "drivers/common/meta.h" @@ -88,6 +89,9 @@ intelClear(struct gl_context *ctx, GLbitfield mask) struct intel_renderbuffer *irb; int i; + if (!_mesa_check_conditional_render(ctx)) + return; + if (mask & (BUFFER_BIT_FRONT_LEFT | BUFFER_BIT_FRONT_RIGHT)) { intel->front_buffer_dirty = GL_TRUE; } diff --git a/src/mesa/drivers/dri/intel/intel_context.c b/src/mesa/drivers/dri/intel/intel_context.c index 02e7f7717fc..acdf35fc71b 100644 --- a/src/mesa/drivers/dri/intel/intel_context.c +++ b/src/mesa/drivers/dri/intel/intel_context.c @@ -466,9 +466,11 @@ intel_prepare_render(struct intel_context *intel) * the swap, and getting our hands on that doesn't seem worth it, * so we just us the first batch we emitted after the last swap. */ - if (intel->need_throttle) { - drmCommandNone(intel->driFd, DRM_I915_GEM_THROTTLE); - intel->need_throttle = GL_FALSE; + if (intel->need_throttle && intel->first_post_swapbuffers_batch) { + drm_intel_bo_wait_rendering(intel->first_post_swapbuffers_batch); + drm_intel_bo_unreference(intel->first_post_swapbuffers_batch); + intel->first_post_swapbuffers_batch = NULL; + intel->need_throttle = GL_FALSE; } } @@ -650,27 +652,23 @@ intelInitContext(struct intel_context *intel, intel->driFd = sPriv->fd; intel->has_xrgb_textures = GL_TRUE; + intel->gen = intelScreen->gen; if (IS_GEN6(intel->intelScreen->deviceID)) { - intel->gen = 6; intel->needs_ff_sync = GL_TRUE; intel->has_luminance_srgb = GL_TRUE; } else if (IS_GEN5(intel->intelScreen->deviceID)) { - intel->gen = 5; intel->needs_ff_sync = GL_TRUE; intel->has_luminance_srgb = GL_TRUE; } else if (IS_965(intel->intelScreen->deviceID)) { - intel->gen = 4; if (IS_G4X(intel->intelScreen->deviceID)) { intel->has_luminance_srgb = GL_TRUE; intel->is_g4x = GL_TRUE; } } else if (IS_9XX(intel->intelScreen->deviceID)) { - intel->gen = 3; if (IS_945(intel->intelScreen->deviceID)) { intel->is_945 = GL_TRUE; } } else { - intel->gen = 2; if (intel->intelScreen->deviceID == PCI_CHIP_I830_M || intel->intelScreen->deviceID == PCI_CHIP_845_G) { intel->has_xrgb_textures = GL_FALSE; @@ -718,6 +716,12 @@ intelInitContext(struct intel_context *intel, ctx->TextureFormatSupported[MESA_FORMAT_RGBA_DXT5] = GL_TRUE; #ifndef I915 + /* GL_ARB_texture_compression_rgtc */ + ctx->TextureFormatSupported[MESA_FORMAT_RED_RGTC1] = GL_TRUE; + ctx->TextureFormatSupported[MESA_FORMAT_SIGNED_RED_RGTC1] = GL_TRUE; + ctx->TextureFormatSupported[MESA_FORMAT_RG_RGTC2] = GL_TRUE; + ctx->TextureFormatSupported[MESA_FORMAT_SIGNED_RG_RGTC2] = GL_TRUE; + /* GL_ARB_texture_rg */ ctx->TextureFormatSupported[MESA_FORMAT_R8] = GL_TRUE; ctx->TextureFormatSupported[MESA_FORMAT_R16] = GL_TRUE; @@ -936,6 +940,8 @@ intelDestroyContext(__DRIcontext * driContextPriv) intel->prim.vb = NULL; drm_intel_bo_unreference(intel->prim.vb_bo); intel->prim.vb_bo = NULL; + drm_intel_bo_unreference(intel->first_post_swapbuffers_batch); + intel->first_post_swapbuffers_batch = NULL; driDestroyOptionCache(&intel->optionCache); diff --git a/src/mesa/drivers/dri/intel/intel_context.h b/src/mesa/drivers/dri/intel/intel_context.h index c59119373da..d3a8a659caa 100644 --- a/src/mesa/drivers/dri/intel/intel_context.h +++ b/src/mesa/drivers/dri/intel/intel_context.h @@ -182,6 +182,7 @@ struct intel_context bool is_blit; } batch; + drm_intel_bo *first_post_swapbuffers_batch; GLboolean need_throttle; GLboolean no_batch_wrap; diff --git a/src/mesa/drivers/dri/intel/intel_extensions.c b/src/mesa/drivers/dri/intel/intel_extensions.c index e107534a4da..3fd987abd8c 100644 --- a/src/mesa/drivers/dri/intel/intel_extensions.c +++ b/src/mesa/drivers/dri/intel/intel_extensions.c @@ -91,6 +91,7 @@ static const struct dri_extension card_extensions[] = { { "GL_ARB_pixel_buffer_object", NULL }, { "GL_ARB_point_parameters", GL_ARB_point_parameters_functions }, { "GL_ARB_point_sprite", NULL }, + { "GL_ARB_sampler_objects", NULL }, { "GL_ARB_shader_objects", GL_ARB_shader_objects_functions }, { "GL_ARB_shading_language_100", GL_VERSION_2_0_functions }, { "GL_ARB_sync", GL_ARB_sync_functions }, @@ -176,6 +177,7 @@ static const struct dri_extension brw_extensions[] = { { "GL_ARB_texture_float", NULL }, #endif { "GL_MESA_texture_signed_rgba", NULL }, + { "GL_ARB_texture_compression_rgtc", NULL }, { "GL_ARB_texture_non_power_of_two", NULL }, { "GL_ARB_texture_rg", NULL }, { "GL_EXT_draw_buffers2", GL_EXT_draw_buffers2_functions }, @@ -189,6 +191,7 @@ static const struct dri_extension brw_extensions[] = { { "GL_ATI_envmap_bumpmap", GL_ATI_envmap_bumpmap_functions }, { "GL_ATI_separate_stencil", GL_ATI_separate_stencil_functions }, { "GL_ATI_texture_env_combine3", NULL }, + { "GL_NV_conditional_render", NULL }, { "GL_NV_texture_env_combine4", NULL }, { NULL, NULL } }; diff --git a/src/mesa/drivers/dri/intel/intel_pixel_bitmap.c b/src/mesa/drivers/dri/intel/intel_pixel_bitmap.c index 43cdd0d2bac..64c7acce1e9 100644 --- a/src/mesa/drivers/dri/intel/intel_pixel_bitmap.c +++ b/src/mesa/drivers/dri/intel/intel_pixel_bitmap.c @@ -29,6 +29,7 @@ #include "main/enums.h" #include "main/image.h" #include "main/colormac.h" +#include "main/condrender.h" #include "main/mtypes.h" #include "main/macros.h" #include "main/pbo.h" @@ -68,7 +69,7 @@ static const GLubyte *map_pbo( struct gl_context *ctx, if (!_mesa_validate_pbo_access(2, unpack, width, height, 1, GL_COLOR_INDEX, GL_BITMAP, - (GLvoid *) bitmap)) { + INT_MAX, (const GLvoid *) bitmap)) { _mesa_error(ctx, GL_INVALID_OPERATION,"glBitmap(invalid PBO access)"); return NULL; } @@ -329,6 +330,9 @@ intelBitmap(struct gl_context * ctx, { struct intel_context *intel = intel_context(ctx); + if (!_mesa_check_conditional_render(ctx)) + return; + if (do_blit_bitmap(ctx, x, y, width, height, unpack, pixels)) return; diff --git a/src/mesa/drivers/dri/intel/intel_pixel_copy.c b/src/mesa/drivers/dri/intel/intel_pixel_copy.c index a7ca780e944..e83f1bfab94 100644 --- a/src/mesa/drivers/dri/intel/intel_pixel_copy.c +++ b/src/mesa/drivers/dri/intel/intel_pixel_copy.c @@ -29,6 +29,7 @@ #include "main/image.h" #include "main/state.h" #include "main/mtypes.h" +#include "main/condrender.h" #include "drivers/common/meta.h" #include "intel_context.h" @@ -204,6 +205,9 @@ intelCopyPixels(struct gl_context * ctx, { DBG("%s\n", __FUNCTION__); + if (!_mesa_check_conditional_render(ctx)) + return; + if (do_blit_copypixels(ctx, srcx, srcy, width, height, destx, desty, type)) return; diff --git a/src/mesa/drivers/dri/intel/intel_screen.c b/src/mesa/drivers/dri/intel/intel_screen.c index 64a21a147f0..5dacbb06633 100644 --- a/src/mesa/drivers/dri/intel/intel_screen.c +++ b/src/mesa/drivers/dri/intel/intel_screen.c @@ -216,8 +216,16 @@ intel_create_image(__DRIscreen *screen, { __DRIimage *image; struct intel_screen *intelScreen = screen->private; + uint32_t tiling; int cpp; + tiling = I915_TILING_X; + if (use & __DRI_IMAGE_USE_CURSOR) { + if (width != 64 || height != 64) + return NULL; + tiling = I915_TILING_NONE; + } + image = CALLOC(sizeof *image); if (image == NULL) return NULL; @@ -247,7 +255,7 @@ intel_create_image(__DRIscreen *screen, cpp = _mesa_get_format_bytes(image->format); image->region = - intel_region_alloc(intelScreen, I915_TILING_NONE, + intel_region_alloc(intelScreen, tiling, cpp, width, height, GL_TRUE); if (image->region == NULL) { FREE(image); @@ -548,6 +556,18 @@ __DRIconfig **intelInitScreen2(__DRIscreen *psp) intelScreen->deviceID = strtod(devid_override, NULL); } + if (IS_GEN6(intelScreen->deviceID)) { + intelScreen->gen = 6; + } else if (IS_GEN5(intelScreen->deviceID)) { + intelScreen->gen = 5; + } else if (IS_965(intelScreen->deviceID)) { + intelScreen->gen = 4; + } else if (IS_9XX(intelScreen->deviceID)) { + intelScreen->gen = 3; + } else { + intelScreen->gen = 2; + } + api_mask = (1 << __DRI_API_OPENGL); #if FEATURE_ES1 api_mask |= (1 << __DRI_API_GLES); @@ -660,12 +680,21 @@ intelAllocateBuffer(__DRIscreen *screen, { struct intel_buffer *intelBuffer; struct intel_screen *intelScreen = screen->private; + uint32_t tiling; intelBuffer = CALLOC(sizeof *intelBuffer); if (intelBuffer == NULL) return NULL; - intelBuffer->region = intel_region_alloc(intelScreen, I915_TILING_NONE, + if ((attachment == __DRI_BUFFER_DEPTH || + attachment == __DRI_BUFFER_STENCIL || + attachment == __DRI_BUFFER_DEPTH_STENCIL) && + intelScreen->gen >= 4) + tiling = I915_TILING_Y; + else + tiling = I915_TILING_X; + + intelBuffer->region = intel_region_alloc(intelScreen, tiling, format / 8, width, height, GL_TRUE); if (intelBuffer->region == NULL) { diff --git a/src/mesa/drivers/dri/intel/intel_screen.h b/src/mesa/drivers/dri/intel/intel_screen.h index 0f0b5be56dc..4613c9858c4 100644 --- a/src/mesa/drivers/dri/intel/intel_screen.h +++ b/src/mesa/drivers/dri/intel/intel_screen.h @@ -37,6 +37,7 @@ struct intel_screen { int deviceID; + int gen; int logTextureGranularity; diff --git a/src/mesa/drivers/dri/intel/intel_tex_validate.c b/src/mesa/drivers/dri/intel/intel_tex_validate.c index 5e705c93619..27f2646ebf5 100644 --- a/src/mesa/drivers/dri/intel/intel_tex_validate.c +++ b/src/mesa/drivers/dri/intel/intel_tex_validate.c @@ -1,5 +1,6 @@ #include "main/mtypes.h" #include "main/macros.h" +#include "main/samplerobj.h" #include "intel_context.h" #include "intel_mipmap_tree.h" @@ -14,11 +15,13 @@ */ static void intel_update_max_level(struct intel_context *intel, - struct intel_texture_object *intelObj) + struct intel_texture_object *intelObj, + struct gl_sampler_object *sampler) { struct gl_texture_object *tObj = &intelObj->base; - if (tObj->Sampler.MinFilter == GL_NEAREST || tObj->Sampler.MinFilter == GL_LINEAR) { + if (sampler->MinFilter == GL_NEAREST || + sampler->MinFilter == GL_LINEAR) { intelObj->_MaxLevel = tObj->BaseLevel; } else { intelObj->_MaxLevel = tObj->_MaxLevel; @@ -70,8 +73,10 @@ copy_image_data_to_tree(struct intel_context *intel, GLuint intel_finalize_mipmap_tree(struct intel_context *intel, GLuint unit) { + struct gl_context *ctx = &intel->ctx; struct gl_texture_object *tObj = intel->ctx.Texture.Unit[unit]._Current; struct intel_texture_object *intelObj = intel_texture_object(tObj); + struct gl_sampler_object *sampler = _mesa_get_samplerobj(ctx, unit); int comp_byte = 0; int cpp; GLuint face, i; @@ -84,7 +89,7 @@ intel_finalize_mipmap_tree(struct intel_context *intel, GLuint unit) /* What levels must the tree include at a minimum? */ - intel_update_max_level(intel, intelObj); + intel_update_max_level(intel, intelObj, sampler); firstImage = intel_texture_image(tObj->Image[0][tObj->BaseLevel]); /* Fallback case: diff --git a/src/mesa/drivers/dri/r300/compiler/Makefile b/src/mesa/drivers/dri/r300/compiler/Makefile index 51b896ae91f..5c9f57b4eac 100644 --- a/src/mesa/drivers/dri/r300/compiler/Makefile +++ b/src/mesa/drivers/dri/r300/compiler/Makefile @@ -20,12 +20,15 @@ C_SOURCES = \ radeon_pair_translate.c \ radeon_pair_schedule.c \ radeon_pair_regalloc.c \ + radeon_pair_dead_sources.c \ radeon_dataflow.c \ radeon_dataflow_deadcode.c \ radeon_dataflow_swizzles.c \ + radeon_list.c \ radeon_optimize.c \ radeon_remove_constants.c \ radeon_rename_regs.c \ + radeon_variable.c \ r3xx_fragprog.c \ r300_fragprog.c \ r300_fragprog_swizzle.c \ @@ -48,6 +51,7 @@ INCLUDES = \ -I. \ -I$(TOP)/include \ -I$(TOP)/src/mesa \ + -I$(TOP)/src/glsl \ ##### TARGETS ##### diff --git a/src/mesa/drivers/dri/r300/compiler/SConscript b/src/mesa/drivers/dri/r300/compiler/SConscript index 2b4bce1c08c..9931537492e 100755 --- a/src/mesa/drivers/dri/r300/compiler/SConscript +++ b/src/mesa/drivers/dri/r300/compiler/SConscript @@ -3,6 +3,7 @@ Import('*') env = env.Clone() env.Append(CPPPATH = '#/include') env.Append(CPPPATH = '#/src/mesa') +env.Append(CPPPATH = '#/src/glsl') # temporary fix env['CFLAGS'] = str(env['CFLAGS']).replace('-Werror=declaration-after-statement', '') @@ -22,6 +23,7 @@ r300compiler = env.ConvenienceLibrary( 'radeon_pair_translate.c', 'radeon_pair_schedule.c', 'radeon_pair_regalloc.c', + 'radeon_pair_dead_sources.c', 'radeon_optimize.c', 'radeon_remove_constants.c', 'radeon_rename_regs.c', @@ -30,6 +32,8 @@ r300compiler = env.ConvenienceLibrary( 'radeon_dataflow.c', 'radeon_dataflow_deadcode.c', 'radeon_dataflow_swizzles.c', + 'radeon_variable.c', + 'radeon_list.c', 'r3xx_fragprog.c', 'r300_fragprog.c', 'r300_fragprog_swizzle.c', diff --git a/src/mesa/drivers/dri/r300/compiler/r300_fragprog_emit.c b/src/mesa/drivers/dri/r300/compiler/r300_fragprog_emit.c index 8b73409136f..e6fd1fde62d 100644 --- a/src/mesa/drivers/dri/r300/compiler/r300_fragprog_emit.c +++ b/src/mesa/drivers/dri/r300/compiler/r300_fragprog_emit.c @@ -93,7 +93,7 @@ static unsigned int use_source(struct r300_fragment_program_code* code, struct r if (src.File == RC_FILE_CONSTANT) { return src.Index | (1 << 5); - } else if (src.File == RC_FILE_TEMPORARY) { + } else if (src.File == RC_FILE_TEMPORARY || src.File == RC_FILE_INPUT) { use_temporary(code, src.Index); return src.Index & 0x1f; } diff --git a/src/mesa/drivers/dri/r300/compiler/r300_fragprog_swizzle.c b/src/mesa/drivers/dri/r300/compiler/r300_fragprog_swizzle.c index 5223aaa71a4..b7bca8c0cfa 100644 --- a/src/mesa/drivers/dri/r300/compiler/r300_fragprog_swizzle.c +++ b/src/mesa/drivers/dri/r300/compiler/r300_fragprog_swizzle.c @@ -87,6 +87,18 @@ static const struct swizzle_data* lookup_native_swizzle(unsigned int swizzle) return 0; } +/** + * Determines if the given swizzle is valid for r300/r400. In most situations + * it is better to use r300_swizzle_is_native() which can be accesed via + * struct radeon_compiler *c; c->SwizzleCaps->IsNative(). + */ +int r300_swizzle_is_native_basic(unsigned int swizzle) +{ + if(lookup_native_swizzle(swizzle)) + return 1; + else + return 0; +} /** * Check whether the given instruction supports the swizzle and negate @@ -140,7 +152,6 @@ static void r300_swizzle_split( split->NumPhases = 0; while(mask) { - const struct swizzle_data *best_swizzle = 0; unsigned int best_matchcount = 0; unsigned int best_matchmask = 0; int i, comp; @@ -167,7 +178,6 @@ static void r300_swizzle_split( } } if (matchcount > best_matchcount) { - best_swizzle = sd; best_matchcount = matchcount; best_matchmask = matchmask; if (matchmask == (mask & RC_MASK_XYZ)) diff --git a/src/mesa/drivers/dri/r300/compiler/r300_fragprog_swizzle.h b/src/mesa/drivers/dri/r300/compiler/r300_fragprog_swizzle.h index 118476af132..f2635be140d 100644 --- a/src/mesa/drivers/dri/r300/compiler/r300_fragprog_swizzle.h +++ b/src/mesa/drivers/dri/r300/compiler/r300_fragprog_swizzle.h @@ -34,5 +34,6 @@ extern struct rc_swizzle_caps r300_swizzle_caps; unsigned int r300FPTranslateRGBSwizzle(unsigned int src, unsigned int swizzle); unsigned int r300FPTranslateAlphaSwizzle(unsigned int src, unsigned int swizzle); +int r300_swizzle_is_native_basic(unsigned int swizzle); #endif /* __R300_FRAGPROG_SWIZZLE_H_ */ diff --git a/src/mesa/drivers/dri/r300/compiler/r3xx_fragprog.c b/src/mesa/drivers/dri/r300/compiler/r3xx_fragprog.c index 9286733635f..e2441e97d87 100644 --- a/src/mesa/drivers/dri/r300/compiler/r3xx_fragprog.c +++ b/src/mesa/drivers/dri/r300/compiler/r3xx_fragprog.c @@ -148,8 +148,8 @@ void r3xx_compile_fragment_program(struct r300_fragment_program_compiler* c) {"register rename", 1, !is_r500, rc_rename_regs, NULL}, {"pair translate", 1, 1, rc_pair_translate, NULL}, {"pair scheduling", 1, 1, rc_pair_schedule, NULL}, - {"register allocation", 1, opt, rc_pair_regalloc, NULL}, - {"dumb register allocation", 1, !opt, rc_pair_regalloc_inputs_only, NULL}, + {"dead sources", 1, 1, rc_pair_remove_dead_sources, NULL}, + {"register allocation", 1, 1, rc_pair_regalloc, &opt}, {"final code validation", 0, 1, rc_validate_final_shader, NULL}, {"machine code generation", 0, is_r500, r500BuildFragmentProgramHwCode, NULL}, {"machine code generation", 0, !is_r500, r300BuildFragmentProgramHwCode, NULL}, diff --git a/src/mesa/drivers/dri/r300/compiler/r500_fragprog.c b/src/mesa/drivers/dri/r300/compiler/r500_fragprog.c index 140eeed3de3..5e0be6b8881 100644 --- a/src/mesa/drivers/dri/r300/compiler/r500_fragprog.c +++ b/src/mesa/drivers/dri/r300/compiler/r500_fragprog.c @@ -70,6 +70,8 @@ static int r500_swizzle_is_native(rc_opcode opcode, struct rc_src_register reg) if (opcode == RC_OPCODE_TEX || opcode == RC_OPCODE_TXB || opcode == RC_OPCODE_TXP || + opcode == RC_OPCODE_TXD || + opcode == RC_OPCODE_TXL || opcode == RC_OPCODE_KIL) { if (reg.Abs) return 0; diff --git a/src/mesa/drivers/dri/r300/compiler/r500_fragprog_emit.c b/src/mesa/drivers/dri/r300/compiler/r500_fragprog_emit.c index c7f79bc53c7..c30cd753d15 100644 --- a/src/mesa/drivers/dri/r300/compiler/r500_fragprog_emit.c +++ b/src/mesa/drivers/dri/r300/compiler/r500_fragprog_emit.c @@ -207,7 +207,7 @@ static unsigned int use_source(struct r500_fragment_program_code* code, struct r if (src.File == RC_FILE_CONSTANT) { return src.Index | R500_RGB_ADDR0_CONST; - } else if (src.File == RC_FILE_TEMPORARY) { + } else if (src.File == RC_FILE_TEMPORARY || src.File == RC_FILE_INPUT) { use_temporary(code, src.Index); return src.Index; } @@ -396,6 +396,12 @@ static int emit_tex(struct r300_fragment_program_compiler *c, struct rc_sub_inst case RC_OPCODE_TXP: code->inst[ip].inst1 |= R500_TEX_INST_PROJ; break; + case RC_OPCODE_TXD: + code->inst[ip].inst1 |= R500_TEX_INST_DXDY; + break; + case RC_OPCODE_TXL: + code->inst[ip].inst1 |= R500_TEX_INST_LOD; + break; default: error("emit_tex can't handle opcode %s\n", rc_get_opcode_info(inst->Opcode)->Name); } @@ -407,8 +413,23 @@ static int emit_tex(struct r300_fragment_program_compiler *c, struct rc_sub_inst code->inst[ip].inst2 = R500_TEX_SRC_ADDR(inst->SrcReg[0].Index) | (translate_strq_swizzle(inst->SrcReg[0].Swizzle) << 8) | R500_TEX_DST_ADDR(inst->DstReg.Index) - | R500_TEX_DST_R_SWIZ_R | R500_TEX_DST_G_SWIZ_G - | R500_TEX_DST_B_SWIZ_B | R500_TEX_DST_A_SWIZ_A; + | (GET_SWZ(inst->TexSwizzle, 0) << 24) + | (GET_SWZ(inst->TexSwizzle, 1) << 26) + | (GET_SWZ(inst->TexSwizzle, 2) << 28) + | (GET_SWZ(inst->TexSwizzle, 3) << 30) + ; + + if (inst->Opcode == RC_OPCODE_TXD) { + use_temporary(code, inst->SrcReg[1].Index); + use_temporary(code, inst->SrcReg[2].Index); + + /* DX and DY parameters are specified in a separate register. */ + code->inst[ip].inst3 = + R500_DX_ADDR(inst->SrcReg[1].Index) | + (translate_strq_swizzle(inst->SrcReg[1].Swizzle) << 8) | + R500_DY_ADDR(inst->SrcReg[2].Index) | + (translate_strq_swizzle(inst->SrcReg[2].Swizzle) << 24); + } return 1; } diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_compiler_util.c b/src/mesa/drivers/dri/r300/compiler/radeon_compiler_util.c index 15ec4418cb8..b077e7b7d65 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_compiler_util.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_compiler_util.c @@ -124,6 +124,165 @@ unsigned swizzle_mask(unsigned swizzle, unsigned mask) return ret; } +static unsigned int srcs_need_rewrite(const struct rc_opcode_info * info) +{ + if (info->HasTexture) { + return 0; + } + switch (info->Opcode) { + case RC_OPCODE_DP2: + case RC_OPCODE_DP3: + case RC_OPCODE_DP4: + case RC_OPCODE_DDX: + case RC_OPCODE_DDY: + return 0; + default: + return 1; + } +} + +/** + * @return A swizzle the results from converting old_swizzle using + * conversion_swizzle + */ +unsigned int rc_adjust_channels( + unsigned int old_swizzle, + unsigned int conversion_swizzle) +{ + unsigned int i; + unsigned int new_swizzle = rc_init_swizzle(RC_SWIZZLE_UNUSED, 0); + for (i = 0; i < 4; i++) { + unsigned int new_chan = get_swz(conversion_swizzle, i); + if (new_chan == RC_SWIZZLE_UNUSED) { + continue; + } + SET_SWZ(new_swizzle, new_chan, GET_SWZ(old_swizzle, i)); + } + return new_swizzle; +} + +static unsigned int rewrite_writemask( + unsigned int old_mask, + unsigned int conversion_swizzle) +{ + unsigned int new_mask = 0; + unsigned int i; + + for (i = 0; i < 4; i++) { + if (!GET_BIT(old_mask, i) + || GET_SWZ(conversion_swizzle, i) == RC_SWIZZLE_UNUSED) { + continue; + } + new_mask |= (1 << GET_SWZ(conversion_swizzle, i)); + } + + return new_mask; +} + +/** + * This function rewrites the writemask of sub and adjusts the swizzles + * of all its source registers based on the conversion_swizzle. + * conversion_swizzle represents a mapping of the old writemask to the + * new writemask. For a detailed description of how conversion swizzles + * work see rc_rewrite_swizzle(). + */ +void rc_pair_rewrite_writemask( + struct rc_pair_sub_instruction * sub, + unsigned int conversion_swizzle) +{ + const struct rc_opcode_info * info = rc_get_opcode_info(sub->Opcode); + unsigned int i; + + sub->WriteMask = rewrite_writemask(sub->WriteMask, conversion_swizzle); + + if (!srcs_need_rewrite(info)) { + return ; + } + + for (i = 0; i < info->NumSrcRegs; i++) { + sub->Arg[i].Swizzle = + rc_adjust_channels(sub->Arg[i].Swizzle, + conversion_swizzle); + } +} + +static void normal_rewrite_writemask_cb( + void * userdata, + struct rc_instruction * inst, + struct rc_src_register * src) +{ + unsigned int * new_mask = (unsigned int *)userdata; + src->Swizzle = rc_adjust_channels(src->Swizzle, *new_mask); +} + +/** + * This function is the same as rc_pair_rewrite_writemask() except it + * operates on normal instructions. + */ +void rc_normal_rewrite_writemask( + struct rc_instruction * inst, + unsigned int conversion_swizzle) +{ + unsigned int new_mask; + struct rc_sub_instruction * sub = &inst->U.I; + const struct rc_opcode_info * info = rc_get_opcode_info(sub->Opcode); + sub->DstReg.WriteMask = + rewrite_writemask(sub->DstReg.WriteMask, conversion_swizzle); + + if (info->HasTexture) { + unsigned int i; + assert(sub->TexSwizzle == RC_SWIZZLE_XYZW); + for (i = 0; i < 4; i++) { + unsigned int swz = GET_SWZ(conversion_swizzle, i); + if (swz > 3) + continue; + SET_SWZ(sub->TexSwizzle, swz, i); + } + } + + if (!srcs_need_rewrite(info)) { + return; + } + + new_mask = sub->DstReg.WriteMask; + rc_for_all_reads_src(inst, normal_rewrite_writemask_cb, &new_mask); +} + +/** + * This function replaces each value 'swz' in swizzle with the value of + * GET_SWZ(conversion_swizzle, swz). So, if you want to change all the X's + * in swizzle to Y, then conversion_swizzle should be Y___ (0xff9). If you want + * to change all the Y's in swizzle to X, then conversion_swizzle should be + * _X__ (0xfc7). If you want to change the Y's to X and the X's to Y, then + * conversion swizzle should be YX__ (0xfc1). + * @param swizzle The swizzle to change + * @param conversion_swizzle Describes the conversion to perform on the swizzle + * @return A converted swizzle + */ +unsigned int rc_rewrite_swizzle( + unsigned int swizzle, + unsigned int conversion_swizzle) +{ + unsigned int chan; + unsigned int out_swizzle = swizzle; + + for (chan = 0; chan < 4; chan++) { + unsigned int swz = GET_SWZ(swizzle, chan); + unsigned int new_swz; + if (swz > 3) { + SET_SWZ(out_swizzle, chan, swz); + } else { + new_swz = GET_SWZ(conversion_swizzle, swz); + if (new_swz != RC_SWIZZLE_UNUSED) { + SET_SWZ(out_swizzle, chan, new_swz); + } else { + SET_SWZ(out_swizzle, chan, swz); + } + } + } + return out_swizzle; +} + /** * Left multiplication of a register with a swizzle */ @@ -281,3 +440,197 @@ unsigned int rc_inst_can_use_presub( return 1; } +struct max_data { + unsigned int Max; + unsigned int HasFileType; + rc_register_file File; +}; + +static void max_callback( + void * userdata, + struct rc_instruction * inst, + rc_register_file file, + unsigned int index, + unsigned int mask) +{ + struct max_data * d = (struct max_data*)userdata; + if (file == d->File && (!d->HasFileType || index > d->Max)) { + d->Max = index; + d->HasFileType = 1; + } +} + +/** + * @return The maximum index of the specified register file used by the + * program. + */ +int rc_get_max_index( + struct radeon_compiler * c, + rc_register_file file) +{ + struct max_data data; + data.Max = 0; + data.HasFileType = 0; + data.File = file; + struct rc_instruction * inst; + for (inst = c->Program.Instructions.Next; + inst != &c->Program.Instructions; + inst = inst->Next) { + rc_for_all_reads_mask(inst, max_callback, &data); + rc_for_all_writes_mask(inst, max_callback, &data); + } + if (!data.HasFileType) { + return -1; + } else { + return data.Max; + } +} + +static unsigned int get_source_readmask( + struct rc_pair_sub_instruction * sub, + unsigned int source, + unsigned int src_type) +{ + unsigned int i; + unsigned int readmask = 0; + const struct rc_opcode_info * info = rc_get_opcode_info(sub->Opcode); + + for (i = 0; i < info->NumSrcRegs; i++) { + if (sub->Arg[i].Source != source + || src_type != rc_source_type_swz(sub->Arg[i].Swizzle)) { + continue; + } + readmask |= rc_swizzle_to_writemask(sub->Arg[i].Swizzle); + } + return readmask; +} + +/** + * This function attempts to remove a source from a pair instructions. + * @param inst + * @param src_type RC_SOURCE_RGB, RC_SOURCE_ALPHA, or both bitwise or'd + * @param source The index of the source to remove + * @param new_readmask A mask representing the components that are read by + * the source that is intended to replace the one you are removing. If you + * want to remove a source only and not replace it, this parameter should be + * zero. + * @return 1 if the source was successfully removed, 0 if it was not + */ +unsigned int rc_pair_remove_src( + struct rc_instruction * inst, + unsigned int src_type, + unsigned int source, + unsigned int new_readmask) +{ + unsigned int readmask = 0; + + readmask |= get_source_readmask(&inst->U.P.RGB, source, src_type); + readmask |= get_source_readmask(&inst->U.P.Alpha, source, src_type); + + if ((new_readmask & readmask) != readmask) + return 0; + + if (src_type & RC_SOURCE_RGB) { + memset(&inst->U.P.RGB.Src[source], 0, + sizeof(struct rc_pair_instruction_source)); + } + + if (src_type & RC_SOURCE_ALPHA) { + memset(&inst->U.P.Alpha.Src[source], 0, + sizeof(struct rc_pair_instruction_source)); + } + + return 1; +} + +/** + * @return RC_OPCODE_NOOP if inst is not a flow control instruction. + * @return The opcode of inst if it is a flow control instruction. + */ +rc_opcode rc_get_flow_control_inst(struct rc_instruction * inst) +{ + const struct rc_opcode_info * info; + if (inst->Type == RC_INSTRUCTION_NORMAL) { + info = rc_get_opcode_info(inst->U.I.Opcode); + } else { + info = rc_get_opcode_info(inst->U.P.RGB.Opcode); + /*A flow control instruction shouldn't have an alpha + * instruction.*/ + assert(!info->IsFlowControl || + inst->U.P.Alpha.Opcode == RC_OPCODE_NOP); + } + + if (info->IsFlowControl) + return info->Opcode; + else + return RC_OPCODE_NOP; + +} + +/** + * @return The BGNLOOP instruction that starts the loop ended by endloop. + */ +struct rc_instruction * rc_match_endloop(struct rc_instruction * endloop) +{ + unsigned int endloop_count = 0; + struct rc_instruction * inst; + for (inst = endloop->Prev; inst != endloop; inst = inst->Prev) { + rc_opcode op = rc_get_flow_control_inst(inst); + if (op == RC_OPCODE_ENDLOOP) { + endloop_count++; + } else if (op == RC_OPCODE_BGNLOOP) { + if (endloop_count == 0) { + return inst; + } else { + endloop_count--; + } + } + } + return NULL; +} + +/** + * @return The ENDLOOP instruction that ends the loop started by bgnloop. + */ +struct rc_instruction * rc_match_bgnloop(struct rc_instruction * bgnloop) +{ + unsigned int bgnloop_count = 0; + struct rc_instruction * inst; + for (inst = bgnloop->Next; inst!=bgnloop; inst = inst->Next) { + rc_opcode op = rc_get_flow_control_inst(inst); + if (op == RC_OPCODE_BGNLOOP) { + bgnloop_count++; + } else if (op == RC_OPCODE_ENDLOOP) { + if (bgnloop_count == 0) { + return inst; + } else { + bgnloop_count--; + } + } + } + return NULL; +} + +/** + * @return A conversion swizzle for converting from old_mask->new_mask + */ +unsigned int rc_make_conversion_swizzle( + unsigned int old_mask, + unsigned int new_mask) +{ + unsigned int conversion_swizzle = rc_init_swizzle(RC_SWIZZLE_UNUSED, 0); + unsigned int old_idx; + unsigned int new_idx = 0; + for (old_idx = 0; old_idx < 4; old_idx++) { + if (!GET_BIT(old_mask, old_idx)) + continue; + for ( ; new_idx < 4; new_idx++) { + if (GET_BIT(new_mask, new_idx)) { + SET_SWZ(conversion_swizzle, old_idx, new_idx); + new_idx++; + break; + } + } + } + return conversion_swizzle; +} diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_compiler_util.h b/src/mesa/drivers/dri/r300/compiler/radeon_compiler_util.h index dd0f6c66156..2af289dfabd 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_compiler_util.h +++ b/src/mesa/drivers/dri/r300/compiler/radeon_compiler_util.h @@ -3,7 +3,12 @@ #ifndef RADEON_PROGRAM_UTIL_H #define RADEON_PROGRAM_UTIL_H +#include "radeon_opcodes.h" + +struct radeon_compiler; struct rc_instruction; +struct rc_pair_instruction; +struct rc_pair_sub_instruction; struct rc_src_register; unsigned int rc_swizzle_to_writemask(unsigned int swz); @@ -22,6 +27,22 @@ rc_swizzle rc_mask_to_swizzle(unsigned int mask); unsigned swizzle_mask(unsigned swizzle, unsigned mask); +unsigned int rc_adjust_channels( + unsigned int old_swizzle, + unsigned int conversion_swizzle); + +void rc_pair_rewrite_writemask( + struct rc_pair_sub_instruction * sub, + unsigned int conversion_swizzle); + +void rc_normal_rewrite_writemask( + struct rc_instruction * inst, + unsigned int conversion_swizzle); + +unsigned int rc_rewrite_swizzle( + unsigned int swizzle, + unsigned int new_mask); + struct rc_src_register lmul_swizzle(unsigned int swizzle, struct rc_src_register srcreg); void reset_srcreg(struct rc_src_register* reg); @@ -46,4 +67,23 @@ unsigned int rc_inst_can_use_presub( struct rc_src_register presub_src0, struct rc_src_register presub_src1); +int rc_get_max_index( + struct radeon_compiler * c, + rc_register_file file); + +unsigned int rc_pair_remove_src( + struct rc_instruction * inst, + unsigned int src_type, + unsigned int source, + unsigned int new_readmask); + +rc_opcode rc_get_flow_control_inst(struct rc_instruction * inst); + +struct rc_instruction * rc_match_endloop(struct rc_instruction * endloop); +struct rc_instruction * rc_match_bgnloop(struct rc_instruction * bgnloop); + +unsigned int rc_make_conversion_swizzle( + unsigned int old_mask, + unsigned int new_mask); + #endif /* RADEON_PROGRAM_UTIL_H */ diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_dataflow.c b/src/mesa/drivers/dri/r300/compiler/radeon_dataflow.c index d1a7eab50f7..b0deb751be0 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_dataflow.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_dataflow.c @@ -151,6 +151,7 @@ static void pair_sub_for_all_args( unsigned int presub_src_count; struct rc_pair_instruction_source * src_array; unsigned int j; + if (src_type & RC_SOURCE_RGB) { presub_type = fullinst-> U.P.RGB.Src[RC_PAIR_PRESUB_SRC].Index; @@ -446,30 +447,6 @@ void rc_remap_registers(struct rc_instruction * inst, rc_remap_register_fn cb, v remap_pair_instruction(inst, cb, userdata); } -/** - * @return RC_OPCODE_NOOP if inst is not a flow control instruction. - * @return The opcode of inst if it is a flow control instruction. - */ -static rc_opcode get_flow_control_inst(struct rc_instruction * inst) -{ - const struct rc_opcode_info * info; - if (inst->Type == RC_INSTRUCTION_NORMAL) { - info = rc_get_opcode_info(inst->U.I.Opcode); - } else { - info = rc_get_opcode_info(inst->U.P.RGB.Opcode); - /*A flow control instruction shouldn't have an alpha - * instruction.*/ - assert(!info->IsFlowControl || - inst->U.P.Alpha.Opcode == RC_OPCODE_NOP); - } - - if (info->IsFlowControl) - return info->Opcode; - else - return RC_OPCODE_NOP; - -} - struct branch_write_mask { unsigned int IfWriteMask:4; unsigned int ElseWriteMask:4; @@ -495,12 +472,11 @@ struct get_readers_callback_data { struct branch_write_mask BranchMasks[R500_PFS_MAX_BRANCH_DEPTH_FULL + 1]; }; -static void add_reader( +static struct rc_reader * add_reader( struct memory_pool * pool, struct rc_reader_data * data, struct rc_instruction * inst, - unsigned int mask, - void * arg_or_src) + unsigned int mask) { struct rc_reader * new; memory_pool_array_reserve(pool, struct rc_reader, data->Readers, @@ -508,11 +484,32 @@ static void add_reader( new = &data->Readers[data->ReaderCount++]; new->Inst = inst; new->WriteMask = mask; - if (inst->Type == RC_INSTRUCTION_NORMAL) { - new->U.Src = arg_or_src; - } else { - new->U.Arg = arg_or_src; - } + return new; +} + +static void add_reader_normal( + struct memory_pool * pool, + struct rc_reader_data * data, + struct rc_instruction * inst, + unsigned int mask, + struct rc_src_register * src) +{ + struct rc_reader * new = add_reader(pool, data, inst, mask); + new->U.I.Src = src; +} + + +static void add_reader_pair( + struct memory_pool * pool, + struct rc_reader_data * data, + struct rc_instruction * inst, + unsigned int mask, + struct rc_pair_instruction_arg * arg, + struct rc_pair_instruction_source * src) +{ + struct rc_reader * new = add_reader(pool, data, inst, mask); + new->U.P.Src = src; + new->U.P.Arg = arg; } static unsigned int get_readers_read_callback( @@ -544,6 +541,11 @@ static unsigned int get_readers_read_callback( return shared_mask; } + if (cb_data->ReaderData->LoopDepth > 0) { + cb_data->ReaderData->AbortOnWrite |= + (read_mask & cb_data->AliveWriteMask); + } + /* XXX The behavior in this case should be configurable. */ if ((read_mask & cb_data->AliveWriteMask) != read_mask) { cb_data->ReaderData->Abort = 1; @@ -572,10 +574,10 @@ static void get_readers_pair_read_callback( if (d->ReadPairCB) d->ReadPairCB(d->ReaderData, inst, arg, src); - if (d->ReaderData->Abort) + if (d->ReaderData->ExitOnAbort && d->ReaderData->Abort) return; - add_reader(&d->C->Pool, d->ReaderData, inst, shared_mask, arg); + add_reader_pair(&d->C->Pool, d->ReaderData, inst, shared_mask, arg, src); } /** @@ -600,10 +602,10 @@ static void get_readers_normal_read_callback( if (d->ReadNormalCB) d->ReadNormalCB(d->ReaderData, inst, src); - if (d->ReaderData->Abort) + if (d->ReaderData->ExitOnAbort && d->ReaderData->Abort) return; - add_reader(&d->C->Pool, d->ReaderData, inst, shared_mask, src); + add_reader_normal(&d->C->Pool, d->ReaderData, inst, shared_mask, src); } /** @@ -624,12 +626,57 @@ static void get_readers_write_callback( unsigned int shared_mask = mask & d->DstMask; d->ReaderData->AbortOnRead &= ~shared_mask; d->AliveWriteMask &= ~shared_mask; + if (d->ReaderData->AbortOnWrite & shared_mask) { + d->ReaderData->Abort = 1; + } } if(d->WriteCB) d->WriteCB(d->ReaderData, inst, file, index, mask); } +static void push_branch_mask( + struct get_readers_callback_data * d, + unsigned int * branch_depth) +{ + (*branch_depth)++; + if (*branch_depth > R500_PFS_MAX_BRANCH_DEPTH_FULL) { + d->ReaderData->Abort = 1; + return; + } + d->BranchMasks[*branch_depth].IfWriteMask = + d->AliveWriteMask; +} + +static void pop_branch_mask( + struct get_readers_callback_data * d, + unsigned int * branch_depth) +{ + struct branch_write_mask * masks = &d->BranchMasks[*branch_depth]; + + if (masks->HasElse) { + /* Abort on read for components that were written in the IF + * block. */ + d->ReaderData->AbortOnRead |= + masks->IfWriteMask & ~masks->ElseWriteMask; + /* Abort on read for components that were written in the ELSE + * block. */ + d->ReaderData->AbortOnRead |= + masks->ElseWriteMask & ~d->AliveWriteMask; + + d->AliveWriteMask = masks->IfWriteMask + ^ ((masks->IfWriteMask ^ masks->ElseWriteMask) + & (masks->IfWriteMask ^ d->AliveWriteMask)); + } else { + d->ReaderData->AbortOnRead |= + masks->IfWriteMask & ~d->AliveWriteMask; + d->AliveWriteMask = masks->IfWriteMask; + + } + memset(masks, 0, sizeof(struct branch_write_mask)); + (*branch_depth)--; +} + static void get_readers_for_single_write( void * userdata, struct rc_instruction * writer, @@ -639,10 +686,14 @@ static void get_readers_for_single_write( { struct rc_instruction * tmp; unsigned int branch_depth = 0; + struct rc_instruction * endloop = NULL; + unsigned int abort_on_read_at_endloop; struct get_readers_callback_data * d = userdata; d->ReaderData->Writer = writer; d->ReaderData->AbortOnRead = 0; + d->ReaderData->AbortOnWrite = 0; + d->ReaderData->LoopDepth = 0; d->ReaderData->InElse = 0; d->DstFile = dst_file; d->DstIndex = dst_index; @@ -655,32 +706,43 @@ static void get_readers_for_single_write( for(tmp = writer->Next; tmp != &d->C->Program.Instructions; tmp = tmp->Next){ - rc_opcode opcode = get_flow_control_inst(tmp); + rc_opcode opcode = rc_get_flow_control_inst(tmp); switch(opcode) { case RC_OPCODE_BGNLOOP: - /* XXX We can do better when we see a BGNLOOP if we - * add a flag called AbortOnWrite to struct - * rc_reader_data and leave it set until the next - * ENDLOOP. */ + d->ReaderData->LoopDepth++; + push_branch_mask(d, &branch_depth); + break; case RC_OPCODE_ENDLOOP: - /* XXX We can do better when we see an ENDLOOP by - * searching backwards from writer and looking for - * readers of writer's destination index. If we find a - * reader before we get to the BGNLOOP, we must abort - * unless there is another writer between that reader - * and the BGNLOOP. */ - case RC_OPCODE_BRK: - case RC_OPCODE_CONT: - d->ReaderData->Abort = 1; - return; - case RC_OPCODE_IF: - branch_depth++; - if (branch_depth > R500_PFS_MAX_BRANCH_DEPTH_FULL) { - d->ReaderData->Abort = 1; - return; + if (d->ReaderData->LoopDepth > 0) { + d->ReaderData->LoopDepth--; + if (d->ReaderData->LoopDepth == 0) { + d->ReaderData->AbortOnWrite = 0; + } + pop_branch_mask(d, &branch_depth); + } else { + /* Here we have reached an ENDLOOP without + * seeing its BGNLOOP. These means that + * the writer was written inside of a loop, + * so it could have readers that are above it + * (i.e. they have a lower IP). To find these + * readers we jump to the BGNLOOP instruction + * and check each instruction until we get + * back to the writer. + */ + endloop = tmp; + tmp = rc_match_endloop(tmp); + if (!tmp) { + rc_error(d->C, "Failed to match endloop.\n"); + d->ReaderData->Abort = 1; + return; + } + abort_on_read_at_endloop = d->ReaderData->AbortOnRead; + d->ReaderData->AbortOnRead |= d->AliveWriteMask; + continue; } - d->BranchMasks[branch_depth].IfWriteMask = - d->AliveWriteMask; + break; + case RC_OPCODE_IF: + push_branch_mask(d, &branch_depth); break; case RC_OPCODE_ELSE: if (branch_depth == 0) { @@ -700,35 +762,7 @@ static void get_readers_for_single_write( d->ReaderData->InElse = 0; } else { - struct branch_write_mask * masks = - &d->BranchMasks[branch_depth]; - - if (masks->HasElse) { - /* Abort on read for components that - * were written in the IF block. */ - d->ReaderData->AbortOnRead |= - masks->IfWriteMask - & ~masks->ElseWriteMask; - /* Abort on read for components that - * were written in the ELSE block. */ - d->ReaderData->AbortOnRead |= - masks->ElseWriteMask - & ~d->AliveWriteMask; - d->AliveWriteMask = masks->IfWriteMask - ^ ((masks->IfWriteMask ^ - masks->ElseWriteMask) - & (masks->IfWriteMask - ^ d->AliveWriteMask)); - } else { - d->ReaderData->AbortOnRead |= - masks->IfWriteMask - & ~d->AliveWriteMask; - d->AliveWriteMask = masks->IfWriteMask; - - } - memset(masks, 0, - sizeof(struct branch_write_mask)); - branch_depth--; + pop_branch_mask(d, &branch_depth); } break; default: @@ -745,9 +779,17 @@ static void get_readers_for_single_write( rc_pair_for_all_reads_arg(tmp, get_readers_pair_read_callback, d); } + + /* This can happen when we jump from an ENDLOOP to BGNLOOP */ + if (tmp == writer) { + tmp = endloop; + endloop = NULL; + d->ReaderData->AbortOnRead = abort_on_read_at_endloop; + continue; + } rc_for_all_writes_mask(tmp, get_readers_write_callback, d); - if (d->ReaderData->Abort) + if (d->ReaderData->ExitOnAbort && d->ReaderData->Abort) return; if (branch_depth == 0 && !d->AliveWriteMask) @@ -755,6 +797,26 @@ static void get_readers_for_single_write( } } +static void init_get_readers_callback_data( + struct get_readers_callback_data * d, + struct rc_reader_data * reader_data, + struct radeon_compiler * c, + rc_read_src_fn read_normal_cb, + rc_pair_read_arg_fn read_pair_cb, + rc_read_write_mask_fn write_cb) +{ + reader_data->Abort = 0; + reader_data->ReaderCount = 0; + reader_data->ReadersReserved = 0; + reader_data->Readers = NULL; + + d->C = c; + d->ReaderData = reader_data; + d->ReadNormalCB = read_normal_cb; + d->ReadPairCB = read_pair_cb; + d->WriteCB = write_cb; +} + /** * This function will create a list of readers via the rc_reader_data struct. * This function will abort (set the flag data->Abort) and return if it @@ -803,16 +865,28 @@ void rc_get_readers( { struct get_readers_callback_data d; - data->Abort = 0; - data->ReaderCount = 0; - data->ReadersReserved = 0; - data->Readers = NULL; - - d.C = c; - d.ReaderData = data; - d.ReadNormalCB = read_normal_cb; - d.ReadPairCB = read_pair_cb; - d.WriteCB = write_cb; + init_get_readers_callback_data(&d, data, c, read_normal_cb, + read_pair_cb, write_cb); rc_for_all_writes_mask(writer, get_readers_for_single_write, &d); } + +void rc_get_readers_sub( + struct radeon_compiler * c, + struct rc_instruction * writer, + struct rc_pair_sub_instruction * sub_writer, + struct rc_reader_data * data, + rc_read_src_fn read_normal_cb, + rc_pair_read_arg_fn read_pair_cb, + rc_read_write_mask_fn write_cb) +{ + struct get_readers_callback_data d; + + init_get_readers_callback_data(&d, data, c, read_normal_cb, + read_pair_cb, write_cb); + + if (sub_writer->WriteMask) { + get_readers_for_single_write(&d, writer, RC_FILE_TEMPORARY, + sub_writer->DestIndex, sub_writer->WriteMask); + } +} diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_dataflow.h b/src/mesa/drivers/dri/r300/compiler/radeon_dataflow.h index ef971c5b234..d8a627258ea 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_dataflow.h +++ b/src/mesa/drivers/dri/r300/compiler/radeon_dataflow.h @@ -37,6 +37,7 @@ struct rc_swizzle_caps; struct rc_src_register; struct rc_pair_instruction_arg; struct rc_pair_instruction_source; +struct rc_pair_sub_instruction; struct rc_compiler; @@ -74,14 +75,21 @@ struct rc_reader { struct rc_instruction * Inst; unsigned int WriteMask; union { - struct rc_src_register * Src; - struct rc_pair_instruction_arg * Arg; + struct { + struct rc_src_register * Src; + } I; + struct { + struct rc_pair_instruction_arg * Arg; + struct rc_pair_instruction_source * Src; + } P; } U; }; struct rc_reader_data { unsigned int Abort; unsigned int AbortOnRead; + unsigned int AbortOnWrite; + unsigned int LoopDepth; unsigned int InElse; struct rc_instruction * Writer; @@ -89,6 +97,9 @@ struct rc_reader_data { unsigned int ReadersReserved; struct rc_reader * Readers; + /* If this flag is enabled, rc_get_readers will exit as soon possbile + * after the Abort flag is set.*/ + unsigned int ExitOnAbort; void * CbData; }; @@ -99,6 +110,15 @@ void rc_get_readers( rc_read_src_fn read_normal_cb, rc_pair_read_arg_fn read_pair_cb, rc_read_write_mask_fn write_cb); + +void rc_get_readers_sub( + struct radeon_compiler * c, + struct rc_instruction * writer, + struct rc_pair_sub_instruction * sub_writer, + struct rc_reader_data * data, + rc_read_src_fn read_normal_cb, + rc_pair_read_arg_fn read_pair_cb, + rc_read_write_mask_fn write_cb); /** * Compiler passes based on dataflow analysis. */ diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_list.c b/src/mesa/drivers/dri/r300/compiler/radeon_list.c new file mode 100644 index 00000000000..811c908a81a --- /dev/null +++ b/src/mesa/drivers/dri/r300/compiler/radeon_list.c @@ -0,0 +1,90 @@ +/* + * Copyright 2011 Tom Stellard <[email protected]> + * + * All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining + * a copy of this software and associated documentation files (the + * "Software"), to deal in the Software without restriction, including + * without limitation the rights to use, copy, modify, merge, publish, + * distribute, sublicense, and/or sell copies of the Software, and to + * permit persons to whom the Software is furnished to do so, subject to + * the following conditions: + * + * The above copyright notice and this permission notice (including the + * next paragraph) shall be included in all copies or substantial + * portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + * IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE + * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION + * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION + * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + */ + +#include "radeon_list.h" + +#include <stdlib.h> +#include <stdio.h> + +#include "memory_pool.h" + +struct rc_list * rc_list(struct memory_pool * pool, void * item) +{ + struct rc_list * new = memory_pool_malloc(pool, sizeof(struct rc_list)); + new->Item = item; + new->Next = NULL; + new->Prev = NULL; + + return new; +} + +void rc_list_add(struct rc_list ** list, struct rc_list * new_value) +{ + struct rc_list * temp; + + if (*list == NULL) { + *list = new_value; + return; + } + + for (temp = *list; temp->Next; temp = temp->Next); + + temp->Next = new_value; + new_value->Prev = temp; +} + +void rc_list_remove(struct rc_list ** list, struct rc_list * rm_value) +{ + if (*list == rm_value) { + *list = rm_value->Next; + return; + } + + rm_value->Prev->Next = rm_value->Next; + if (rm_value->Next) { + rm_value->Next->Prev = rm_value->Prev; + } +} + +unsigned int rc_list_count(struct rc_list * list) +{ + unsigned int count = 0; + while (list) { + count++; + list = list->Next; + } + return count; +} + +void rc_list_print(struct rc_list * list) +{ + while(list) { + fprintf(stderr, "%p->", list->Item); + list = list->Next; + } + fprintf(stderr, "\n"); +} diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_list.h b/src/mesa/drivers/dri/r300/compiler/radeon_list.h new file mode 100644 index 00000000000..b3c8f89cc68 --- /dev/null +++ b/src/mesa/drivers/dri/r300/compiler/radeon_list.h @@ -0,0 +1,46 @@ +/* + * Copyright 2011 Tom Stellard <[email protected]> + * + * All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining + * a copy of this software and associated documentation files (the + * "Software"), to deal in the Software without restriction, including + * without limitation the rights to use, copy, modify, merge, publish, + * distribute, sublicense, and/or sell copies of the Software, and to + * permit persons to whom the Software is furnished to do so, subject to + * the following conditions: + * + * The above copyright notice and this permission notice (including the + * next paragraph) shall be included in all copies or substantial + * portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + * IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE + * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION + * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION + * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + */ + +#ifndef RADEON_LIST_H +#define RADEON_LIST_H + +struct memory_pool; + +struct rc_list { + void * Item; + struct rc_list * Prev; + struct rc_list * Next; +}; + +struct rc_list * rc_list(struct memory_pool * pool, void * item); +void rc_list_add(struct rc_list ** list, struct rc_list * new_value); +void rc_list_remove(struct rc_list ** list, struct rc_list * rm_value); +unsigned int rc_list_count(struct rc_list * list); +void rc_list_print(struct rc_list * list); + +#endif /* RADEON_LIST_H */ + diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_opcodes.c b/src/mesa/drivers/dri/r300/compiler/radeon_opcodes.c index e3e498e8fb4..afd78ad79dd 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_opcodes.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_opcodes.c @@ -481,6 +481,7 @@ void rc_compute_sources_for_writemask( break; case RC_OPCODE_TXB: case RC_OPCODE_TXP: + case RC_OPCODE_TXL: srcmasks[0] |= RC_MASK_W; /* Fall through */ case RC_OPCODE_TEX: @@ -500,6 +501,33 @@ void rc_compute_sources_for_writemask( break; } break; + case RC_OPCODE_TXD: + switch (inst->U.I.TexSrcTarget) { + case RC_TEXTURE_1D_ARRAY: + srcmasks[0] |= RC_MASK_Y; + /* Fall through. */ + case RC_TEXTURE_1D: + srcmasks[0] |= RC_MASK_X; + srcmasks[1] |= RC_MASK_X; + srcmasks[2] |= RC_MASK_X; + break; + case RC_TEXTURE_2D_ARRAY: + srcmasks[0] |= RC_MASK_Z; + /* Fall through. */ + case RC_TEXTURE_2D: + case RC_TEXTURE_RECT: + srcmasks[0] |= RC_MASK_XY; + srcmasks[1] |= RC_MASK_XY; + srcmasks[2] |= RC_MASK_XY; + break; + case RC_TEXTURE_3D: + case RC_TEXTURE_CUBE: + srcmasks[0] |= RC_MASK_XYZ; + srcmasks[1] |= RC_MASK_XYZ; + srcmasks[2] |= RC_MASK_XYZ; + break; + } + break; case RC_OPCODE_DST: srcmasks[0] |= RC_MASK_Y | RC_MASK_Z; srcmasks[1] |= RC_MASK_Y | RC_MASK_W; diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_optimize.c b/src/mesa/drivers/dri/r300/compiler/radeon_optimize.c index 79898e1047e..5b4fba80873 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_optimize.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_optimize.c @@ -91,6 +91,8 @@ static void copy_propagate_scan_read(void * data, struct rc_instruction * inst, (inst->U.I.Opcode == RC_OPCODE_TEX || inst->U.I.Opcode == RC_OPCODE_TXB || inst->U.I.Opcode == RC_OPCODE_TXP || + inst->U.I.Opcode == RC_OPCODE_TXD || + inst->U.I.Opcode == RC_OPCODE_TXL || inst->U.I.Opcode == RC_OPCODE_KIL)){ reader_data->Abort = 1; return; @@ -144,6 +146,7 @@ static void copy_propagate(struct radeon_compiler * c, struct rc_instruction * i return; /* Get a list of all the readers of this MOV instruction. */ + reader_data.ExitOnAbort = 1; rc_get_readers(c, inst_mov, &reader_data, copy_propagate_scan_read, NULL, is_src_clobbered_scan_write); @@ -154,7 +157,7 @@ static void copy_propagate(struct radeon_compiler * c, struct rc_instruction * i /* Propagate the MOV instruction. */ for (i = 0; i < reader_data.ReaderCount; i++) { struct rc_instruction * inst = reader_data.Readers[i].Inst; - *reader_data.Readers[i].U.Src = chain_srcregs(*reader_data.Readers[i].U.Src, inst_mov->U.I.SrcReg[0]); + *reader_data.Readers[i].U.I.Src = chain_srcregs(*reader_data.Readers[i].U.I.Src, inst_mov->U.I.SrcReg[0]); if (inst_mov->U.I.SrcReg[0].File == RC_FILE_PRESUB) inst->U.I.PreSub = inst_mov->U.I.PreSub; @@ -453,6 +456,7 @@ static int presub_helper( rc_presubtract_op cb_op = presub_opcode; reader_data.CbData = &cb_op; + reader_data.ExitOnAbort = 1; rc_get_readers(c, inst_add, &reader_data, presub_scan_read, NULL, is_src_clobbered_scan_write); @@ -466,7 +470,7 @@ static int presub_helper( rc_get_opcode_info(reader.Inst->U.I.Opcode); for (src_index = 0; src_index < info->NumSrcRegs; src_index++) { - if (&reader.Inst->U.I.SrcReg[src_index] == reader.U.Src) + if (&reader.Inst->U.I.SrcReg[src_index] == reader.U.I.Src) presub_replace(inst_add, reader.Inst, src_index); } } @@ -619,13 +623,11 @@ static int peephole_add_presub_inv( struct radeon_compiler * c, struct rc_instruction * inst_add) { - unsigned int i, swz, mask; + unsigned int i, swz; if (!is_presub_candidate(c, inst_add)) return 0; - mask = inst_add->U.I.DstReg.WriteMask; - /* Check if src0 is 1. */ /* XXX It would be nice to use is_src_uniform_constant here, but that * function only works if the register's file is RC_FILE_NONE */ diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_pair_dead_sources.c b/src/mesa/drivers/dri/r300/compiler/radeon_pair_dead_sources.c new file mode 100644 index 00000000000..1e9a2c09d44 --- /dev/null +++ b/src/mesa/drivers/dri/r300/compiler/radeon_pair_dead_sources.c @@ -0,0 +1,62 @@ + +#include "radeon_compiler.h" +#include "radeon_compiler_util.h" +#include "radeon_opcodes.h" +#include "radeon_program_pair.h" + +static void mark_used_presub(struct rc_pair_sub_instruction * sub) +{ + if (sub->Src[RC_PAIR_PRESUB_SRC].Used) { + unsigned int presub_reg_count = rc_presubtract_src_reg_count( + sub->Src[RC_PAIR_PRESUB_SRC].Index); + unsigned int i; + for (i = 0; i < presub_reg_count; i++) { + sub->Src[i].Used = 1; + } + } +} + +static void mark_used( + struct rc_instruction * inst, + struct rc_pair_sub_instruction * sub) +{ + unsigned int i; + const struct rc_opcode_info * info = rc_get_opcode_info(sub->Opcode); + for (i = 0; i < info->NumSrcRegs; i++) { + unsigned int src_type = rc_source_type_swz(sub->Arg[i].Swizzle); + if (src_type & RC_SOURCE_RGB) { + inst->U.P.RGB.Src[sub->Arg[i].Source].Used = 1; + } + + if (src_type & RC_SOURCE_ALPHA) { + inst->U.P.Alpha.Src[sub->Arg[i].Source].Used = 1; + } + } +} + +/** + * This pass finds sources that are not used by their instruction and marks + * them as unused. + */ +void rc_pair_remove_dead_sources(struct radeon_compiler * c, void *user) +{ + struct rc_instruction * inst; + for (inst = c->Program.Instructions.Next; + inst != &c->Program.Instructions; + inst = inst->Next) { + unsigned int i; + if (inst->Type == RC_INSTRUCTION_NORMAL) + continue; + + /* Mark all sources as unused */ + for (i = 0; i < 4; i++) { + inst->U.P.RGB.Src[i].Used = 0; + inst->U.P.Alpha.Src[i].Used = 0; + } + mark_used(inst, &inst->U.P.RGB); + mark_used(inst, &inst->U.P.Alpha); + + mark_used_presub(&inst->U.P.RGB); + mark_used_presub(&inst->U.P.Alpha); + } +} diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_pair_regalloc.c b/src/mesa/drivers/dri/r300/compiler/radeon_pair_regalloc.c index d53181e1f75..49983d6ce75 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_pair_regalloc.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_pair_regalloc.c @@ -1,5 +1,6 @@ /* * Copyright (C) 2009 Nicolai Haehnle. + * Copyright 2011 Tom Stellard <[email protected]> * * All Rights Reserved. * @@ -29,125 +30,126 @@ #include <stdio.h> +#include "main/glheader.h" +#include "program/register_allocate.h" +#include "ralloc.h" + +#include "r300_fragprog_swizzle.h" #include "radeon_compiler.h" +#include "radeon_compiler_util.h" #include "radeon_dataflow.h" - +#include "radeon_list.h" +#include "radeon_variable.h" #define VERBOSE 0 #define DBG(...) do { if (VERBOSE) fprintf(stderr, __VA_ARGS__); } while(0) -struct live_intervals { - int Start; - int End; - struct live_intervals * Next; -}; struct register_info { - struct live_intervals Live; + struct live_intervals Live[4]; unsigned int Used:1; unsigned int Allocated:1; unsigned int File:3; unsigned int Index:RC_REGISTER_INDEX_BITS; -}; - -struct hardware_register { - struct live_intervals * Used; + unsigned int Writemask; }; struct regalloc_state { struct radeon_compiler * C; - struct register_info Input[RC_REGISTER_MAX_INDEX]; - struct register_info Temporary[RC_REGISTER_MAX_INDEX]; - - struct hardware_register * HwTemporary; - unsigned int NumHwTemporaries; - /** - * If an instruction is inside of a loop, EndLoop will be the - * IP of the ENDLOOP instruction, and BeginLoop will be the IP - * of the BGNLOOP instruction. Otherwise, EndLoop and BeginLoop - * will be -1. - */ - int EndLoop; - int BeginLoop; + struct register_info * Input; + unsigned int NumInputs; + + struct register_info * Temporary; + unsigned int NumTemporaries; + + unsigned int Simple; + int LoopEnd; +}; + +enum rc_reg_class { + RC_REG_CLASS_SINGLE, + RC_REG_CLASS_DOUBLE, + RC_REG_CLASS_TRIPLE, + RC_REG_CLASS_ALPHA, + RC_REG_CLASS_SINGLE_PLUS_ALPHA, + RC_REG_CLASS_DOUBLE_PLUS_ALPHA, + RC_REG_CLASS_TRIPLE_PLUS_ALPHA, + RC_REG_CLASS_X, + RC_REG_CLASS_Y, + RC_REG_CLASS_Z, + RC_REG_CLASS_XY, + RC_REG_CLASS_YZ, + RC_REG_CLASS_XZ, + RC_REG_CLASS_XW, + RC_REG_CLASS_YW, + RC_REG_CLASS_ZW, + RC_REG_CLASS_XYW, + RC_REG_CLASS_YZW, + RC_REG_CLASS_XZW, + RC_REG_CLASS_COUNT +}; + +struct rc_class { + enum rc_reg_class Class; + + unsigned int WritemaskCount; + + /** This is 1 if this class is being used by the register allocator + * and 0 otherwise */ + unsigned int Used; + + /** This is the ID number assigned to this class by ra. */ + unsigned int Id; + + /** List of writemasks that belong to this class */ + unsigned int Writemasks[3]; + + }; static void print_live_intervals(struct live_intervals * src) { - if (!src) { + if (!src || !src->Used) { DBG("(null)"); return; } - while(src) { - DBG("(%i,%i)", src->Start, src->End); - src = src->Next; - } + DBG("(%i,%i)", src->Start, src->End); } -static void add_live_intervals(struct regalloc_state * s, - struct live_intervals ** dst, struct live_intervals * src) +static int overlap_live_intervals(struct live_intervals * a, struct live_intervals * b) { - struct live_intervals ** dst_backup = dst; - if (VERBOSE) { - DBG("add_live_intervals: "); - print_live_intervals(*dst); + DBG("overlap_live_intervals: "); + print_live_intervals(a); DBG(" to "); - print_live_intervals(src); - DBG("\n"); - } - - while(src) { - if (*dst && (*dst)->End < src->Start) { - dst = &(*dst)->Next; - } else if (!*dst || (*dst)->Start > src->End) { - struct live_intervals * li = memory_pool_malloc(&s->C->Pool, sizeof(*li)); - li->Start = src->Start; - li->End = src->End; - li->Next = *dst; - *dst = li; - src = src->Next; - } else { - if (src->End > (*dst)->End) - (*dst)->End = src->End; - if (src->Start < (*dst)->Start) - (*dst)->Start = src->Start; - src = src->Next; - } - } - - if (VERBOSE) { - DBG(" result: "); - print_live_intervals(*dst_backup); + print_live_intervals(b); DBG("\n"); } -} -static int overlap_live_intervals(struct live_intervals * dst, struct live_intervals * src) -{ - if (VERBOSE) { - DBG("overlap_live_intervals: "); - print_live_intervals(dst); - DBG(" to "); - print_live_intervals(src); - DBG("\n"); + if (!a->Used || !b->Used) { + DBG(" unused interval\n"); + return 0; } - while(src && dst) { - if (dst->End <= src->Start) { - dst = dst->Next; - } else if (dst->End <= src->End) { + if (a->Start > b->Start) { + if (a->Start < b->End) { + DBG(" overlap\n"); + return 1; + } + } else if (b->Start > a->Start) { + if (b->Start < a->End) { DBG(" overlap\n"); return 1; - } else if (dst->Start < src->End) { + } + } else { /* a->Start == b->Start */ + if (a->Start != a->End && b->Start != b->End) { DBG(" overlap\n"); return 1; - } else { - src = src->Next; } } @@ -156,92 +158,27 @@ static int overlap_live_intervals(struct live_intervals * dst, struct live_inter return 0; } -static int try_add_live_intervals(struct regalloc_state * s, - struct live_intervals ** dst, struct live_intervals * src) -{ - if (overlap_live_intervals(*dst, src)) - return 0; - - add_live_intervals(s, dst, src); - return 1; -} - -static void scan_callback(void * data, struct rc_instruction * inst, +static void scan_read_callback(void * data, struct rc_instruction * inst, rc_register_file file, unsigned int index, unsigned int mask) { struct regalloc_state * s = data; struct register_info * reg; + unsigned int i; - if (file == RC_FILE_TEMPORARY) - reg = &s->Temporary[index]; - else if (file == RC_FILE_INPUT) - reg = &s->Input[index]; - else + if (file != RC_FILE_INPUT) return; - if (!reg->Used) { - reg->Used = 1; - if (file == RC_FILE_INPUT) - reg->Live.Start = -1; - else if (s->BeginLoop >= 0) - reg->Live.Start = s->BeginLoop; - else - reg->Live.Start = inst->IP; - reg->Live.End = inst->IP; - } else if (s->EndLoop >= 0) - reg->Live.End = s->EndLoop; - else if (inst->IP > reg->Live.End) - reg->Live.End = inst->IP; -} + s->Input[index].Used = 1; + reg = &s->Input[index]; -static void compute_live_intervals(struct radeon_compiler *c, - struct regalloc_state *s) -{ - memset(s, 0, sizeof(*s)); - s->C = c; - s->NumHwTemporaries = c->max_temp_regs; - s->BeginLoop = -1; - s->EndLoop = -1; - s->HwTemporary = - memory_pool_malloc(&c->Pool, - s->NumHwTemporaries * sizeof(struct hardware_register)); - memset(s->HwTemporary, 0, s->NumHwTemporaries * sizeof(struct hardware_register)); - - rc_recompute_ips(s->C); - - for(struct rc_instruction * inst = s->C->Program.Instructions.Next; - inst != &s->C->Program.Instructions; - inst = inst->Next) { - - /* For all instructions inside of a loop, the ENDLOOP - * instruction is used as the end of the live interval and - * the BGNLOOP instruction is used as the beginning. */ - if (inst->U.I.Opcode == RC_OPCODE_BGNLOOP && s->EndLoop < 0) { - int loops = 1; - struct rc_instruction * tmp; - s->BeginLoop = inst->IP; - for(tmp = inst->Next; - tmp != &s->C->Program.Instructions; - tmp = tmp->Next) { - if (tmp->U.I.Opcode == RC_OPCODE_BGNLOOP) { - loops++; - } else if (tmp->U.I.Opcode - == RC_OPCODE_ENDLOOP) { - if(!--loops) { - s->EndLoop = tmp->IP; - break; - } - } - } - } - - if (inst->IP == s->EndLoop) { - s->EndLoop = -1; - s->BeginLoop = -1; + for (i = 0; i < 4; i++) { + if (!((mask >> i) & 0x1)) { + continue; } - - rc_for_all_reads_mask(inst, scan_callback, s); - rc_for_all_writes_mask(inst, scan_callback, s); + reg->Live[i].Used = 1; + reg->Live[i].Start = 0; + reg->Live[i].End = + s->LoopEnd > inst->IP ? s->LoopEnd : inst->IP; } } @@ -251,7 +188,7 @@ static void remap_register(void * data, struct rc_instruction * inst, struct regalloc_state * s = data; const struct register_info * reg; - if (*file == RC_FILE_TEMPORARY) + if (*file == RC_FILE_TEMPORARY && s->Simple) reg = &s->Temporary[*index]; else if (*file == RC_FILE_INPUT) reg = &s->Input[*index]; @@ -259,106 +196,511 @@ static void remap_register(void * data, struct rc_instruction * inst, return; if (reg->Allocated) { - *file = reg->File; *index = reg->Index; } } -static void do_regalloc(struct regalloc_state * s) +static void alloc_input_simple(void * data, unsigned int input, + unsigned int hwreg) +{ + struct regalloc_state * s = data; + + if (input >= s->NumInputs) + return; + + s->Input[input].Allocated = 1; + s->Input[input].File = RC_FILE_TEMPORARY; + s->Input[input].Index = hwreg; +} + +/* This functions offsets the temporary register indices by the number + * of input registers, because input registers are actually temporaries and + * should not occupy the same space. + * + * This pass is supposed to be used to maintain correct allocation of inputs + * if the standard register allocation is disabled. */ +static void do_regalloc_inputs_only(struct regalloc_state * s) +{ + for (unsigned i = 0; i < s->NumTemporaries; i++) { + s->Temporary[i].Allocated = 1; + s->Temporary[i].File = RC_FILE_TEMPORARY; + s->Temporary[i].Index = i + s->NumInputs; + } +} + +static unsigned int is_derivative(rc_opcode op) { - /* Simple and stupid greedy register allocation */ - for(unsigned int index = 0; index < RC_REGISTER_MAX_INDEX; ++index) { - struct register_info * reg = &s->Temporary[index]; + return (op == RC_OPCODE_DDX || op == RC_OPCODE_DDY); +} - if (!reg->Used) +static int find_class( + struct rc_class * classes, + unsigned int writemask, + unsigned int max_writemask_count) +{ + unsigned int i; + for (i = 0; i < RC_REG_CLASS_COUNT; i++) { + unsigned int j; + if (classes[i].WritemaskCount > max_writemask_count) { continue; + } + for (j = 0; j < 3; j++) { + if (classes[i].Writemasks[j] == writemask) { + return i; + } + } + } + return -1; +} + +static enum rc_reg_class variable_get_class( + struct rc_variable * variable, + struct rc_class * classes) +{ + unsigned int i; + unsigned int can_change_writemask= 1; + unsigned int writemask = rc_variable_writemask_sum(variable); + struct rc_list * readers = rc_variable_readers_union(variable); + int class_index; + + if (!variable->C->is_r500) { + struct rc_class c; + /* The assumption here is that if an instruction has type + * RC_INSTRUCTION_NORMAL then it is a TEX instruction. + * r300 and r400 can't swizzle the result of a TEX lookup. */ + if (variable->Inst->Type == RC_INSTRUCTION_NORMAL) { + writemask = RC_MASK_XYZW; + } - for(unsigned int hwreg = 0; hwreg < s->NumHwTemporaries; ++hwreg) { - if (try_add_live_intervals(s, &s->HwTemporary[hwreg].Used, ®->Live)) { - reg->Allocated = 1; - reg->File = RC_FILE_TEMPORARY; - reg->Index = hwreg; - goto success; + /* Check if it is possible to do swizzle packing for r300/r400 + * without creating non-native swizzles. */ + class_index = find_class(classes, writemask, 3); + if (class_index < 0) { + goto error; + } + c = classes[class_index]; + for (i = 0; i < c.WritemaskCount; i++) { + int j; + unsigned int conversion_swizzle = + rc_make_conversion_swizzle( + writemask, c.Writemasks[i]); + for (j = 0; j < variable->ReaderCount; j++) { + unsigned int old_swizzle; + unsigned int new_swizzle; + struct rc_reader r = variable->Readers[j]; + if (r.Inst->Type == RC_INSTRUCTION_PAIR ) { + old_swizzle = r.U.P.Arg->Swizzle; + } else { + old_swizzle = r.U.I.Src->Swizzle; + } + new_swizzle = rc_adjust_channels( + old_swizzle, conversion_swizzle); + if (!r300_swizzle_is_native_basic(new_swizzle)) { + can_change_writemask = 0; + break; + } + } + if (!can_change_writemask) { + break; } } + } - rc_error(s->C, "Ran out of hardware temporaries\n"); - return; + if (variable->Inst->Type == RC_INSTRUCTION_PAIR) { + /* DDX/DDY seem to always fail when their writemasks are + * changed.*/ + if (is_derivative(variable->Inst->U.P.RGB.Opcode) + || is_derivative(variable->Inst->U.P.Alpha.Opcode)) { + can_change_writemask = 0; + } + } + for ( ; readers; readers = readers->Next) { + struct rc_reader * r = readers->Item; + if (r->Inst->Type == RC_INSTRUCTION_PAIR) { + if (r->U.P.Arg->Source == RC_PAIR_PRESUB_SRC) { + can_change_writemask = 0; + break; + } + /* DDX/DDY also fail when their swizzles are changed. */ + if (is_derivative(r->Inst->U.P.RGB.Opcode) + || is_derivative(r->Inst->U.P.Alpha.Opcode)) { + can_change_writemask = 0; + break; + } + } + } - success:; + class_index = find_class(classes, writemask, + can_change_writemask ? 3 : 1); + if (class_index > -1) { + return classes[class_index].Class; + } else { +error: + rc_error(variable->C, + "Could not find class for index=%u mask=%u\n", + variable->Dst.Index, writemask); + return 0; } +} - /* Rewrite all instructions based on the translation table we built */ - for(struct rc_instruction * inst = s->C->Program.Instructions.Next; - inst != &s->C->Program.Instructions; - inst = inst->Next) { - rc_remap_registers(inst, &remap_register, s); +static unsigned int overlap_live_intervals_array( + struct live_intervals * a, + struct live_intervals * b) +{ + unsigned int a_chan, b_chan; + for (a_chan = 0; a_chan < 4; a_chan++) { + for (b_chan = 0; b_chan < 4; b_chan++) { + if (overlap_live_intervals(&a[a_chan], &b[b_chan])) { + return 1; + } + } } + return 0; } -static void alloc_input(void * data, unsigned int input, unsigned int hwreg) +static unsigned int reg_get_index(int reg) { - struct regalloc_state * s = data; + return reg / RC_MASK_XYZW; +} - if (!s->Input[input].Used) - return; +static unsigned int reg_get_writemask(int reg) +{ + return (reg % RC_MASK_XYZW) + 1; +} - add_live_intervals(s, &s->HwTemporary[hwreg].Used, &s->Input[input].Live); +static int get_reg_id(unsigned int index, unsigned int writemask) +{ + assert(writemask); + if (writemask == 0) { + return 0; + } + return (index * RC_MASK_XYZW) + (writemask - 1); +} - s->Input[input].Allocated = 1; - s->Input[input].File = RC_FILE_TEMPORARY; - s->Input[input].Index = hwreg; +#if VERBOSE +static void print_reg(int reg) +{ + unsigned int index = reg_get_index(reg); + unsigned int mask = reg_get_writemask(reg); + fprintf(stderr, "Temp[%u].%c%c%c%c", index, + mask & RC_MASK_X ? 'x' : '_', + mask & RC_MASK_Y ? 'y' : '_', + mask & RC_MASK_Z ? 'z' : '_', + mask & RC_MASK_W ? 'w' : '_'); +} +#endif +static void add_register_conflicts( + struct ra_regs * regs, + unsigned int max_temp_regs) +{ + unsigned int index, a_mask, b_mask; + for (index = 0; index < max_temp_regs; index++) { + for(a_mask = 1; a_mask <= RC_MASK_XYZW; a_mask++) { + for (b_mask = a_mask + 1; b_mask <= RC_MASK_XYZW; + b_mask++) { + if (a_mask & b_mask) { + ra_add_reg_conflict(regs, + get_reg_id(index, a_mask), + get_reg_id(index, b_mask)); + } + } + } + } } -void rc_pair_regalloc(struct radeon_compiler *cc, void *user) +static void do_advanced_regalloc(struct regalloc_state * s) { - struct r300_fragment_program_compiler *c = (struct r300_fragment_program_compiler*)cc; - struct regalloc_state s; + struct rc_class rc_class_list [] = { + {RC_REG_CLASS_SINGLE, 3, 0, 0, + {RC_MASK_X, + RC_MASK_Y, + RC_MASK_Z}}, + {RC_REG_CLASS_DOUBLE, 3, 0, 0, + {RC_MASK_X | RC_MASK_Y, + RC_MASK_X | RC_MASK_Z, + RC_MASK_Y | RC_MASK_Z}}, + {RC_REG_CLASS_TRIPLE, 1, 0, 0, + {RC_MASK_X | RC_MASK_Y | RC_MASK_Z, + RC_MASK_NONE, + RC_MASK_NONE}}, + {RC_REG_CLASS_ALPHA, 1, 0, 0, + {RC_MASK_W, + RC_MASK_NONE, + RC_MASK_NONE}}, + {RC_REG_CLASS_SINGLE_PLUS_ALPHA, 3, 0, 0, + {RC_MASK_X | RC_MASK_W, + RC_MASK_Y | RC_MASK_W, + RC_MASK_Z | RC_MASK_W}}, + {RC_REG_CLASS_DOUBLE_PLUS_ALPHA, 3, 0, 0, + {RC_MASK_X | RC_MASK_Y | RC_MASK_W, + RC_MASK_X | RC_MASK_Z | RC_MASK_W, + RC_MASK_Y | RC_MASK_Z | RC_MASK_W}}, + {RC_REG_CLASS_TRIPLE_PLUS_ALPHA, 1, 0, 0, + {RC_MASK_X | RC_MASK_Y | RC_MASK_Z | RC_MASK_W, + RC_MASK_NONE, + RC_MASK_NONE}}, + {RC_REG_CLASS_X, 1, 0, 0, + {RC_MASK_X, + RC_MASK_NONE, + RC_MASK_NONE}}, + {RC_REG_CLASS_Y, 1, 0, 0, + {RC_MASK_Y, + RC_MASK_NONE, + RC_MASK_NONE}}, + {RC_REG_CLASS_Z, 1, 0, 0, + {RC_MASK_Z, + RC_MASK_NONE, + RC_MASK_NONE}}, + {RC_REG_CLASS_XY, 1, 0, 0, + {RC_MASK_X | RC_MASK_Y, + RC_MASK_NONE, + RC_MASK_NONE}}, + {RC_REG_CLASS_YZ, 1, 0, 0, + {RC_MASK_Y | RC_MASK_Z, + RC_MASK_NONE, + RC_MASK_NONE}}, + {RC_REG_CLASS_XZ, 1, 0, 0, + {RC_MASK_X | RC_MASK_Z, + RC_MASK_NONE, + RC_MASK_NONE}}, + {RC_REG_CLASS_XW, 1, 0, 0, + {RC_MASK_X | RC_MASK_W, + RC_MASK_NONE, + RC_MASK_NONE}}, + {RC_REG_CLASS_YW, 1, 0, 0, + {RC_MASK_Y | RC_MASK_W, + RC_MASK_NONE, + RC_MASK_NONE}}, + {RC_REG_CLASS_ZW, 1, 0, 0, + {RC_MASK_Z | RC_MASK_W, + RC_MASK_NONE, + RC_MASK_NONE}}, + {RC_REG_CLASS_XYW, 1, 0, 0, + {RC_MASK_X | RC_MASK_Y | RC_MASK_W, + RC_MASK_NONE, + RC_MASK_NONE}}, + {RC_REG_CLASS_YZW, 1, 0, 0, + {RC_MASK_Y | RC_MASK_Z | RC_MASK_W, + RC_MASK_NONE, + RC_MASK_NONE}}, + {RC_REG_CLASS_XZW, 1, 0, 0, + {RC_MASK_X | RC_MASK_Z | RC_MASK_W, + RC_MASK_NONE, + RC_MASK_NONE}} + }; + + unsigned int i, j, index, input_node, node_count, node_index; + unsigned int * node_classes; + unsigned int * input_classes; + struct rc_instruction * inst; + struct rc_list * var_ptr; + struct rc_list * variables; + struct ra_regs * regs; + struct ra_graph * graph; + + /* Allocate the main ra data structure */ + regs = ra_alloc_reg_set(s->C->max_temp_regs * RC_MASK_XYZW); + + /* Get list of program variables */ + variables = rc_get_variables(s->C); + node_count = rc_list_count(variables); + node_classes = memory_pool_malloc(&s->C->Pool, + node_count * sizeof(unsigned int)); + input_classes = memory_pool_malloc(&s->C->Pool, + s->NumInputs * sizeof(unsigned int)); + + for (var_ptr = variables, node_index = 0; var_ptr; + var_ptr = var_ptr->Next, node_index++) { + unsigned int class_index; + /* Compute the live intervals */ + rc_variable_compute_live_intervals(var_ptr->Item); + + class_index = variable_get_class(var_ptr->Item, rc_class_list); + + /* If we haven't used this register class yet, mark it + * as used and allocate space for it. */ + if (!rc_class_list[class_index].Used) { + rc_class_list[class_index].Used = 1; + rc_class_list[class_index].Id = ra_alloc_reg_class(regs); + } - compute_live_intervals(cc, &s); + node_classes[node_index] = rc_class_list[class_index].Id; + } - c->AllocateHwInputs(c, &alloc_input, &s); - do_regalloc(&s); -} + /* Assign registers to the classes */ + for (i = 0; i < RC_REG_CLASS_COUNT; i++) { + struct rc_class class = rc_class_list[i]; + if (!class.Used) { + continue; + } -/* This functions offsets the temporary register indices by the number - * of input registers, because input registers are actually temporaries and - * should not occupy the same space. - * - * This pass is supposed to be used to maintain correct allocation of inputs - * if the standard register allocation is disabled. */ -void rc_pair_regalloc_inputs_only(struct radeon_compiler *cc, void *user) -{ - struct r300_fragment_program_compiler *c = (struct r300_fragment_program_compiler*)cc; - struct regalloc_state s; - int temp_reg_offset; + for (index = 0; index < s->C->max_temp_regs; index++) { + for (j = 0; j < class.WritemaskCount; j++) { + int reg_id = get_reg_id(index, + class.Writemasks[j]); + ra_class_add_reg(regs, class.Id, reg_id); + } + } + } + + /* Add register conflicts */ + add_register_conflicts(regs, s->C->max_temp_regs); + + /* Calculate live intervals for input registers */ + for (inst = s->C->Program.Instructions.Next; + inst != &s->C->Program.Instructions; + inst = inst->Next) { + rc_opcode op = rc_get_flow_control_inst(inst); + if (op == RC_OPCODE_BGNLOOP) { + struct rc_instruction * endloop = + rc_match_bgnloop(inst); + if (endloop->IP > s->LoopEnd) { + s->LoopEnd = endloop->IP; + } + } + rc_for_all_reads_mask(inst, scan_read_callback, s); + } - compute_live_intervals(cc, &s); + /* Create classes for input registers */ + for (i = 0; i < s->NumInputs; i++) { + unsigned int chan, class_id, writemask = 0; + for (chan = 0; chan < 4; chan++) { + if (s->Input[i].Live[chan].Used) { + writemask |= (1 << chan); + } + } + s->Input[i].Writemask = writemask; + if (!writemask) { + continue; + } + + class_id = ra_alloc_reg_class(regs); + input_classes[i] = class_id; + ra_class_add_reg(regs, class_id, + get_reg_id(s->Input[i].Index, writemask)); + } - c->AllocateHwInputs(c, &alloc_input, &s); + ra_set_finalize(regs); - temp_reg_offset = 0; - for (unsigned i = 0; i < RC_REGISTER_MAX_INDEX; i++) { - if (s.Input[i].Allocated && temp_reg_offset <= s.Input[i].Index) - temp_reg_offset = s.Input[i].Index + 1; + graph = ra_alloc_interference_graph(regs, node_count + s->NumInputs); + + /* Build the interference graph */ + for (var_ptr = variables, node_index = 0; var_ptr; + var_ptr = var_ptr->Next,node_index++) { + struct rc_list * a, * b; + unsigned int b_index; + + ra_set_node_class(graph, node_index, node_classes[node_index]); + + for (a = var_ptr, b = var_ptr->Next, b_index = node_index + 1; + b; b = b->Next, b_index++) { + struct rc_variable * var_a = a->Item; + while (var_a) { + struct rc_variable * var_b = b->Item; + while (var_b) { + if (overlap_live_intervals_array(var_a->Live, var_b->Live)) { + ra_add_node_interference(graph, + node_index, b_index); + } + var_b = var_b->Friend; + } + var_a = var_a->Friend; + } + } } - if (temp_reg_offset) { - for (unsigned i = 0; i < RC_REGISTER_MAX_INDEX; i++) { - if (s.Temporary[i].Used) { - s.Temporary[i].Allocated = 1; - s.Temporary[i].File = RC_FILE_TEMPORARY; - s.Temporary[i].Index = i + temp_reg_offset; + /* Add input registers to the interference graph */ + for (i = 0, input_node = 0; i< s->NumInputs; i++) { + if (!s->Input[i].Writemask) { + continue; + } + ra_set_node_class(graph, node_count + input_node, + input_classes[i]); + for (var_ptr = variables, node_index = 0; + var_ptr; var_ptr = var_ptr->Next, node_index++) { + struct rc_variable * var = var_ptr->Item; + if (overlap_live_intervals_array(s->Input[i].Live, + var->Live)) { + ra_add_node_interference(graph, node_index, + node_count + input_node); } } + /* Manually allocate a register for this input */ + ra_set_node_reg(graph, node_count + input_node, get_reg_id( + s->Input[i].Index, s->Input[i].Writemask)); + input_node++; + } + + if (!ra_allocate_no_spills(graph)) { + rc_error(s->C, "Ran out of hardware temporaries\n"); + return; + } + + /* Rewrite the registers */ + for (var_ptr = variables, node_index = 0; var_ptr; + var_ptr = var_ptr->Next, node_index++) { + int reg = ra_get_node_reg(graph, node_index); + unsigned int writemask = reg_get_writemask(reg); + unsigned int index = reg_get_index(reg); + struct rc_variable * var = var_ptr->Item; + + if (!s->C->is_r500 && var->Inst->Type == RC_INSTRUCTION_NORMAL) { + writemask = rc_variable_writemask_sum(var); + } - /* Rewrite all registers. */ - for (struct rc_instruction *inst = cc->Program.Instructions.Next; - inst != &cc->Program.Instructions; - inst = inst->Next) { - rc_remap_registers(inst, &remap_register, &s); + if (var->Dst.File == RC_FILE_INPUT) { + continue; } + rc_variable_change_dst(var, index, writemask); + } + + ralloc_free(graph); + ralloc_free(regs); +} + +/** + * @param user This parameter should be a pointer to an integer value. If this + * integer value is zero, then a simple register allocator will be used that + * only allocates space for input registers (\sa do_regalloc_inputs_only). If + * user is non-zero, then the regular register allocator will be used + * (\sa do_regalloc). + */ +void rc_pair_regalloc(struct radeon_compiler *cc, void *user) +{ + struct r300_fragment_program_compiler *c = + (struct r300_fragment_program_compiler*)cc; + struct regalloc_state s; + int * do_full_regalloc = (int*)user; + + memset(&s, 0, sizeof(s)); + s.C = cc; + s.NumInputs = rc_get_max_index(cc, RC_FILE_INPUT) + 1; + s.Input = memory_pool_malloc(&cc->Pool, + s.NumInputs * sizeof(struct register_info)); + memset(s.Input, 0, s.NumInputs * sizeof(struct register_info)); + + s.NumTemporaries = rc_get_max_index(cc, RC_FILE_TEMPORARY) + 1; + s.Temporary = memory_pool_malloc(&cc->Pool, + s.NumTemporaries * sizeof(struct register_info)); + memset(s.Temporary, 0, s.NumTemporaries * sizeof(struct register_info)); + + rc_recompute_ips(s.C); + + c->AllocateHwInputs(c, &alloc_input_simple, &s); + if (*do_full_regalloc) { + do_advanced_regalloc(&s); + } else { + s.Simple = 1; + do_regalloc_inputs_only(&s); + } + + /* Rewrite inputs and if we are doing the simple allocation, rewrite + * temporaries too. */ + for (struct rc_instruction *inst = s.C->Program.Instructions.Next; + inst != &s.C->Program.Instructions; + inst = inst->Next) { + rc_remap_registers(inst, &remap_register, &s); } } diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_pair_schedule.c b/src/mesa/drivers/dri/r300/compiler/radeon_pair_schedule.c index 8e10813ff06..25cd52c9cd4 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_pair_schedule.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_pair_schedule.c @@ -709,7 +709,7 @@ static int convert_rgb_to_alpha( pair_inst->Alpha.Opcode = pair_inst->RGB.Opcode; pair_inst->Alpha.DestIndex = new_index; - pair_inst->Alpha.WriteMask = 1; + pair_inst->Alpha.WriteMask = RC_MASK_W; pair_inst->Alpha.Target = pair_inst->RGB.Target; pair_inst->Alpha.OutputWriteMask = pair_inst->RGB.OutputWriteMask; pair_inst->Alpha.DepthWriteMask = pair_inst->RGB.DepthWriteMask; @@ -739,7 +739,7 @@ static int convert_rgb_to_alpha( for(i = 0; i < sched_inst->GlobalReaders.ReaderCount; i++) { struct rc_reader reader = sched_inst->GlobalReaders.Readers[i]; - rgb_to_alpha_remap(reader.Inst, reader.U.Arg, + rgb_to_alpha_remap(reader.Inst, reader.U.P.Arg, RC_FILE_TEMPORARY, old_swz, new_index); } return 1; @@ -952,6 +952,7 @@ static void schedule_block(struct r300_fragment_program_compiler * c, instruction_ready(&s, s.Current); /* Get global readers for possible RGB->Alpha conversion. */ + s.Current->GlobalReaders.ExitOnAbort = 1; rc_get_readers(s.C, inst, &s.Current->GlobalReaders, is_rgb_to_alpha_possible_normal, is_rgb_to_alpha_possible, NULL); diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_program.h b/src/mesa/drivers/dri/r300/compiler/radeon_program.h index a07f6b63c6e..b899eccbf53 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_program.h +++ b/src/mesa/drivers/dri/r300/compiler/radeon_program.h @@ -108,6 +108,9 @@ struct rc_sub_instruction { /** True if tex instruction should do shadow comparison */ unsigned int TexShadow:1; + + /**R500 Only. How to swizzle the result of a TEX lookup*/ + unsigned int TexSwizzle:12; /*@}*/ /** This holds information about the presubtract operation used by diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_program_constants.h b/src/mesa/drivers/dri/r300/compiler/radeon_program_constants.h index 45f79ece5ba..24577333450 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_program_constants.h +++ b/src/mesa/drivers/dri/r300/compiler/radeon_program_constants.h @@ -129,6 +129,7 @@ typedef enum { #define RC_SWIZZLE_0000 RC_MAKE_SWIZZLE_SMEAR(RC_SWIZZLE_ZERO) #define RC_SWIZZLE_1111 RC_MAKE_SWIZZLE_SMEAR(RC_SWIZZLE_ONE) #define RC_SWIZZLE_HHHH RC_MAKE_SWIZZLE_SMEAR(RC_SWIZZLE_HALF) +#define RC_SWIZZLE_UUUU RC_MAKE_SWIZZLE_SMEAR(RC_SWIZZLE_UNUSED) /** * \name Bitmasks for components of vectors. diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_program_pair.c b/src/mesa/drivers/dri/r300/compiler/radeon_program_pair.c index 68874795b8a..52315957520 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_program_pair.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_program_pair.c @@ -223,3 +223,17 @@ struct rc_pair_instruction_source * rc_pair_get_src( return NULL; } } + +int rc_pair_get_src_index( + struct rc_pair_instruction * pair_inst, + struct rc_pair_instruction_source * src) +{ + int i; + for (i = 0; i < 3; i++) { + if (&pair_inst->RGB.Src[i] == src + || &pair_inst->Alpha.Src[i] == src) { + return i; + } + } + return -1; +} diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_program_pair.h b/src/mesa/drivers/dri/r300/compiler/radeon_program_pair.h index d1a435fc530..a957ea9f7a0 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_program_pair.h +++ b/src/mesa/drivers/dri/r300/compiler/radeon_program_pair.h @@ -114,6 +114,10 @@ void rc_pair_foreach_source_that_rgb_reads( struct rc_pair_instruction_source * rc_pair_get_src( struct rc_pair_instruction * pair_inst, struct rc_pair_instruction_arg * arg); + +int rc_pair_get_src_index( + struct rc_pair_instruction * pair_inst, + struct rc_pair_instruction_source * src); /*@}*/ @@ -127,6 +131,7 @@ void rc_pair_translate(struct radeon_compiler *cc, void *user); void rc_pair_schedule(struct radeon_compiler *cc, void *user); void rc_pair_regalloc(struct radeon_compiler *cc, void *user); void rc_pair_regalloc_inputs_only(struct radeon_compiler *cc, void *user); +void rc_pair_remove_dead_sources(struct radeon_compiler *c, void *user); /*@}*/ #endif /* __RADEON_PROGRAM_PAIR_H_ */ diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_program_tex.c b/src/mesa/drivers/dri/r300/compiler/radeon_program_tex.c index cef448ee4e1..8d16b2cf9ec 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_program_tex.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_program_tex.c @@ -142,6 +142,8 @@ int radeonTransformTEX( if (inst->U.I.Opcode != RC_OPCODE_TEX && inst->U.I.Opcode != RC_OPCODE_TXB && inst->U.I.Opcode != RC_OPCODE_TXP && + inst->U.I.Opcode != RC_OPCODE_TXD && + inst->U.I.Opcode != RC_OPCODE_TXL && inst->U.I.Opcode != RC_OPCODE_KIL) return 0; diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_rename_regs.c b/src/mesa/drivers/dri/r300/compiler/radeon_rename_regs.c index 5bd19c0b9c6..cafa0579734 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_rename_regs.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_rename_regs.c @@ -71,6 +71,7 @@ void rc_rename_regs(struct radeon_compiler *c, void *user) if (inst->U.I.DstReg.File != RC_FILE_TEMPORARY) continue; + reader_data.ExitOnAbort = 1; rc_get_readers(c, inst, &reader_data, NULL, NULL, NULL); if (reader_data.Abort || reader_data.ReaderCount == 0) @@ -85,7 +86,7 @@ void rc_rename_regs(struct radeon_compiler *c, void *user) reader_data.Writer->U.I.DstReg.Index = new_index; for(i = 0; i < reader_data.ReaderCount; i++) { - reader_data.Readers[i].U.Src->Index = new_index; + reader_data.Readers[i].U.I.Src->Index = new_index; } } } diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_variable.c b/src/mesa/drivers/dri/r300/compiler/radeon_variable.c new file mode 100644 index 00000000000..16fa5d28902 --- /dev/null +++ b/src/mesa/drivers/dri/r300/compiler/radeon_variable.c @@ -0,0 +1,484 @@ +/* + * Copyright 2011 Tom Stellard <[email protected]> + * + * All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining + * a copy of this software and associated documentation files (the + * "Software"), to deal in the Software without restriction, including + * without limitation the rights to use, copy, modify, merge, publish, + * distribute, sublicense, and/or sell copies of the Software, and to + * permit persons to whom the Software is furnished to do so, subject to + * the following conditions: + * + * The above copyright notice and this permission notice (including the + * next paragraph) shall be included in all copies or substantial + * portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + * IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE + * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION + * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION + * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + */ + +#include "radeon_variable.h" + +#include "memory_pool.h" +#include "radeon_compiler_util.h" +#include "radeon_dataflow.h" +#include "radeon_list.h" +#include "radeon_opcodes.h" +#include "radeon_program.h" + +/** + * Rewrite the index and writemask for the destination register of var + * and its friends to new_index and new_writemask. This function also takes + * care of rewriting the swizzles for the sources of var. + */ +void rc_variable_change_dst( + struct rc_variable * var, + unsigned int new_index, + unsigned int new_writemask) +{ + struct rc_variable * var_ptr; + struct rc_list * readers; + unsigned int old_mask = rc_variable_writemask_sum(var); + unsigned int conversion_swizzle = + rc_make_conversion_swizzle(old_mask, new_writemask); + + for (var_ptr = var; var_ptr; var_ptr = var_ptr->Friend) { + if (var_ptr->Inst->Type == RC_INSTRUCTION_NORMAL) { + rc_normal_rewrite_writemask(var_ptr->Inst, + conversion_swizzle); + var_ptr->Inst->U.I.DstReg.Index = new_index; + } else { + struct rc_pair_sub_instruction * sub; + if (var_ptr->Dst.WriteMask == RC_MASK_W) { + assert(new_writemask & RC_MASK_W); + sub = &var_ptr->Inst->U.P.Alpha; + } else { + sub = &var_ptr->Inst->U.P.RGB; + rc_pair_rewrite_writemask(sub, + conversion_swizzle); + } + sub->DestIndex = new_index; + } + } + + readers = rc_variable_readers_union(var); + + for ( ; readers; readers = readers->Next) { + struct rc_reader * reader = readers->Item; + if (reader->Inst->Type == RC_INSTRUCTION_NORMAL) { + reader->U.I.Src->Index = new_index; + reader->U.I.Src->Swizzle = rc_rewrite_swizzle( + reader->U.I.Src->Swizzle, conversion_swizzle); + } else { + struct rc_pair_instruction * pair_inst = + &reader->Inst->U.P; + unsigned int src_type = rc_source_type_swz( + reader->U.P.Arg->Swizzle); + + int src_index = reader->U.P.Arg->Source; + if (src_index == RC_PAIR_PRESUB_SRC) { + src_index = rc_pair_get_src_index( + pair_inst, reader->U.P.Src); + } + /* Try to delete the old src, it is OK if this fails, + * because rc_pair_alloc_source might be able to + * find a source the ca be reused. + */ + if (rc_pair_remove_src(reader->Inst, src_type, + src_index, old_mask)) { + /* Reuse the source index of the source that + * was just deleted and set its register + * index. We can't use rc_pair_alloc_source + * for this becuase it might return a source + * index that is already being used. */ + if (src_type & RC_SOURCE_RGB) { + pair_inst->RGB.Src[src_index] + .Used = 1; + pair_inst->RGB.Src[src_index] + .Index = new_index; + pair_inst->RGB.Src[src_index] + .File = RC_FILE_TEMPORARY; + } + if (src_type & RC_SOURCE_ALPHA) { + pair_inst->Alpha.Src[src_index] + .Used = 1; + pair_inst->Alpha.Src[src_index] + .Index = new_index; + pair_inst->Alpha.Src[src_index] + .File = RC_FILE_TEMPORARY; + } + } else { + src_index = rc_pair_alloc_source( + &reader->Inst->U.P, + src_type & RC_SOURCE_RGB, + src_type & RC_SOURCE_ALPHA, + RC_FILE_TEMPORARY, + new_index); + if (src_index < 0) { + rc_error(var->C, "Rewrite of inst %u failed " + "Can't allocate source for " + "Inst %u src_type=%x " + "new_index=%u new_mask=%u\n", + var->Inst->IP, reader->Inst->IP, src_type, new_index, new_writemask); + continue; + } + } + reader->U.P.Arg->Swizzle = rc_rewrite_swizzle( + reader->U.P.Arg->Swizzle, conversion_swizzle); + if (reader->U.P.Arg->Source != RC_PAIR_PRESUB_SRC) { + reader->U.P.Arg->Source = src_index; + } + } + } +} + +/** + * Compute the live intervals for var and its friends. + */ +void rc_variable_compute_live_intervals(struct rc_variable * var) +{ + while(var) { + unsigned int i; + unsigned int start = var->Inst->IP; + + for (i = 0; i < var->ReaderCount; i++) { + unsigned int chan; + unsigned int chan_start = start; + unsigned int chan_end = var->Readers[i].Inst->IP; + unsigned int mask = var->Readers[i].WriteMask; + struct rc_instruction * inst; + + /* Extend the live interval of T0 to the start of the + * loop for sequences like: + * BGNLOOP + * read T0 + * ... + * write T0 + * ENDLOOP + */ + if (var->Readers[i].Inst->IP < start) { + struct rc_instruction * bgnloop = + rc_match_endloop(var->Readers[i].Inst); + chan_start = bgnloop->IP; + } + + /* Extend the live interval of T0 to the start of the + * loop in case there is a BRK instruction in the loop + * (we don't actually check for a BRK instruction we + * assume there is one somewhere in the loop, which + * there usually is) for sequences like: + * BGNLOOP + * ... + * conditional BRK + * ... + * write T0 + * ENDLOOP + * read T0 + *************************************************** + * Extend the live interval of T0 to the end of the + * loop for sequences like: + * write T0 + * BGNLOOP + * ... + * read T0 + * ENDLOOP + */ + for (inst = var->Inst; inst != var->Readers[i].Inst; + inst = inst->Next) { + rc_opcode op = rc_get_flow_control_inst(inst); + if (op == RC_OPCODE_ENDLOOP) { + struct rc_instruction * bgnloop = + rc_match_endloop(inst); + if (bgnloop->IP < chan_start) { + chan_start = bgnloop->IP; + } + } else if (op == RC_OPCODE_BGNLOOP) { + struct rc_instruction * endloop = + rc_match_bgnloop(inst); + if (endloop->IP > chan_end) { + chan_end = endloop->IP; + } + } + } + + for (chan = 0; chan < 4; chan++) { + if ((mask >> chan) & 0x1) { + if (!var->Live[chan].Used + || chan_start < var->Live[chan].Start) { + var->Live[chan].Start = + chan_start; + } + if (!var->Live[chan].Used + || chan_end > var->Live[chan].End) { + var->Live[chan].End = chan_end; + } + var->Live[chan].Used = 1; + } + } + } + var = var->Friend; + } +} + +/** + * @return 1 if a and b share a reader + * @return 0 if they do not + */ +static unsigned int readers_intersect( + struct rc_variable * a, + struct rc_variable * b) +{ + unsigned int a_index, b_index; + for (a_index = 0; a_index < a->ReaderCount; a_index++) { + struct rc_reader reader_a = a->Readers[a_index]; + for (b_index = 0; b_index < b->ReaderCount; b_index++) { + struct rc_reader reader_b = b->Readers[b_index]; + if (reader_a.Inst->Type == RC_INSTRUCTION_NORMAL + && reader_b.Inst->Type == RC_INSTRUCTION_NORMAL + && reader_a.U.I.Src == reader_b.U.I.Src) { + + return 1; + } + if (reader_a.Inst->Type == RC_INSTRUCTION_PAIR + && reader_b.Inst->Type == RC_INSTRUCTION_PAIR + && reader_a.U.P.Src == reader_b.U.P.Src) { + + return 1; + } + } + } + return 0; +} + +void rc_variable_add_friend( + struct rc_variable * var, + struct rc_variable * friend) +{ + assert(var->Dst.Index == friend->Dst.Index); + while(var->Friend) { + var = var->Friend; + } + var->Friend = friend; +} + +struct rc_variable * rc_variable( + struct radeon_compiler * c, + unsigned int DstFile, + unsigned int DstIndex, + unsigned int DstWriteMask, + struct rc_reader_data * reader_data) +{ + struct rc_variable * new = + memory_pool_malloc(&c->Pool, sizeof(struct rc_variable)); + memset(new, 0, sizeof(struct rc_variable)); + new->C = c; + new->Dst.File = DstFile; + new->Dst.Index = DstIndex; + new->Dst.WriteMask = DstWriteMask; + if (reader_data) { + new->Inst = reader_data->Writer; + new->ReaderCount = reader_data->ReaderCount; + new->Readers = reader_data->Readers; + } + return new; +} + +static void get_variable_helper( + struct rc_list ** aborted_list, + struct rc_list ** variable_list, + unsigned int aborted, + struct rc_variable * variable) +{ + if (aborted) { + rc_list_add(aborted_list, rc_list(&variable->C->Pool, variable)); + } else { + rc_list_add(variable_list, rc_list(&variable->C->Pool, variable)); + } +} + +static void get_variable_pair_helper( + struct rc_list ** aborted_list, + struct rc_list ** variable_list, + struct radeon_compiler * c, + struct rc_instruction * inst, + struct rc_pair_sub_instruction * sub_inst) +{ + struct rc_reader_data reader_data; + struct rc_variable * new_var; + rc_register_file file; + unsigned int writemask; + + if (sub_inst->Opcode == RC_OPCODE_NOP) { + return; + } + memset(&reader_data, 0, sizeof(struct rc_reader_data)); + rc_get_readers_sub(c, inst, sub_inst, &reader_data, NULL, NULL, NULL); + + if (reader_data.ReaderCount == 0) { + return; + } + + if (sub_inst->WriteMask) { + file = RC_FILE_TEMPORARY; + writemask = sub_inst->WriteMask; + } else if (sub_inst->OutputWriteMask) { + file = RC_FILE_OUTPUT; + writemask = sub_inst->OutputWriteMask; + } else { + writemask = 0; + file = RC_FILE_NONE; + } + new_var = rc_variable(c, file, sub_inst->DestIndex, writemask, + &reader_data); + get_variable_helper(aborted_list, variable_list, reader_data.Abort, + new_var); +} + +/** + * Generate a list of variables used by the shader program. Each instruction + * that writes to a register is considered a variable. The struct rc_variable + * data structure includes a list of readers and is essentially a + * definition-use chain. Any two variables that share a reader are considered + * "friends" and they are linked together via the Friend attribute. + */ +struct rc_list * rc_get_variables(struct radeon_compiler * c) +{ + struct rc_instruction * inst; + struct rc_list * aborted_list = NULL; + struct rc_list * variable_list = NULL; + struct rc_list * var_ptr; + struct rc_list * search_ptr; + + for (inst = c->Program.Instructions.Next; + inst != &c->Program.Instructions; + inst = inst->Next) { + struct rc_reader_data reader_data; + struct rc_variable * new_var; + memset(&reader_data, 0, sizeof(reader_data)); + + if (inst->Type == RC_INSTRUCTION_NORMAL) { + rc_get_readers(c, inst, &reader_data, NULL, NULL, NULL); + if (reader_data.ReaderCount == 0) { + continue; + } + new_var = rc_variable(c, inst->U.I.DstReg.File, + inst->U.I.DstReg.Index, + inst->U.I.DstReg.WriteMask, &reader_data); + get_variable_helper(&aborted_list, &variable_list, + reader_data.Abort, new_var); + } else { + get_variable_pair_helper(&aborted_list, &variable_list, + c, inst, &inst->U.P.RGB); + get_variable_pair_helper(&aborted_list, &variable_list, + c, inst, &inst->U.P.Alpha); + } + } + + /* The aborted_list contains a list of variables that might share a + * reader with another variable. We need to search through this list + * and pair together variables that do share the same reader. + */ + while (aborted_list) { + struct rc_list * search_ptr_next; + var_ptr = aborted_list; + + search_ptr = var_ptr->Next; + while(search_ptr) { + search_ptr_next = search_ptr->Next; + if (readers_intersect(var_ptr->Item, search_ptr->Item)){ + rc_list_remove(&aborted_list, search_ptr); + rc_variable_add_friend(var_ptr->Item, + search_ptr->Item); + } + search_ptr = search_ptr_next; + } + rc_list_remove(&aborted_list, var_ptr); + rc_list_add(&variable_list, rc_list( + &((struct rc_variable*)(var_ptr->Item))->C->Pool, + var_ptr->Item)); + } + return variable_list; +} + +/** + * @return The bitwise or of the writemasks of a variable and all of its + * friends. + */ +unsigned int rc_variable_writemask_sum(struct rc_variable * var) +{ + unsigned int writemask = 0; + while(var) { + writemask |= var->Dst.WriteMask; + var = var->Friend; + } + return writemask; +} + +/* + * @return A list of readers for a variable and its friends. Readers + * that read from two different variable friends are only included once in + * this list. + */ +struct rc_list * rc_variable_readers_union(struct rc_variable * var) +{ + struct rc_list * list = NULL; + while (var) { + unsigned int i; + for (i = 0; i < var->ReaderCount; i++) { + struct rc_list * temp; + struct rc_reader * a = &var->Readers[i]; + unsigned int match = 0; + for (temp = list; temp; temp = temp->Next) { + struct rc_reader * b = temp->Item; + if (a->Inst->Type != b->Inst->Type) { + continue; + } + if (a->Inst->Type == RC_INSTRUCTION_NORMAL) { + if (a->U.I.Src == b->U.I.Src) { + match = 1; + break; + } + } + if (a->Inst->Type == RC_INSTRUCTION_PAIR) { + if (a->U.P.Arg == b->U.P.Arg + && a->U.P.Src == b->U.P.Src) { + match = 1; + break; + } + } + } + if (match) { + continue; + } + rc_list_add(&list, rc_list(&var->C->Pool, a)); + } + var = var->Friend; + } + return list; +} + +void rc_variable_print(struct rc_variable * var) +{ + unsigned int i; + while (var) { + fprintf(stderr, "%u: TEMP[%u].%u: ", + var->Inst->IP, var->Dst.Index, var->Dst.WriteMask); + for (i = 0; i < 4; i++) { + fprintf(stderr, "chan %u: start=%u end=%u ", i, + var->Live[i].Start, var->Live[i].End); + } + fprintf(stderr, "%u readers\n", var->ReaderCount); + if (var->Friend) { + fprintf(stderr, "Friend: \n\t"); + } + var = var->Friend; + } +} diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_variable.h b/src/mesa/drivers/dri/r300/compiler/radeon_variable.h new file mode 100644 index 00000000000..b8fbcaa4029 --- /dev/null +++ b/src/mesa/drivers/dri/r300/compiler/radeon_variable.h @@ -0,0 +1,84 @@ +/* + * Copyright 2011 Tom Stellard <[email protected]> + * + * All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining + * a copy of this software and associated documentation files (the + * "Software"), to deal in the Software without restriction, including + * without limitation the rights to use, copy, modify, merge, publish, + * distribute, sublicense, and/or sell copies of the Software, and to + * permit persons to whom the Software is furnished to do so, subject to + * the following conditions: + * + * The above copyright notice and this permission notice (including the + * next paragraph) shall be included in all copies or substantial + * portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + * IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE + * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION + * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION + * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + */ + +#ifndef RADEON_VARIABLE_H +#define RADEON_VARIABLE_H + +#include "radeon_compiler.h" + +struct radeon_compiler; +struct rc_list; +struct rc_reader_data; +struct rc_readers; + +struct live_intervals { + int Start; + int End; + int Used; +}; + +struct rc_variable { + struct radeon_compiler * C; + struct rc_dst_register Dst; + + struct rc_instruction * Inst; + unsigned int ReaderCount; + struct rc_reader * Readers; + struct live_intervals Live[4]; + + /* A friend is a variable that shares a reader with another variable. + */ + struct rc_variable * Friend; +}; + +void rc_variable_change_dst( + struct rc_variable * var, + unsigned int new_index, + unsigned int new_writemask); + +void rc_variable_compute_live_intervals(struct rc_variable * var); + +void rc_variable_add_friend( + struct rc_variable * var, + struct rc_variable * friend); + +struct rc_variable * rc_variable( + struct radeon_compiler * c, + unsigned int DstFile, + unsigned int DstIndex, + unsigned int DstWriteMask, + struct rc_reader_data * reader_data); + +struct rc_list * rc_get_variables(struct radeon_compiler * c); + +unsigned int rc_variable_writemask_sum(struct rc_variable * var); + +struct rc_list * rc_variable_readers_union(struct rc_variable * var); + +void rc_variable_print(struct rc_variable * var); + +#endif /* RADEON_VARIABLE_H */ diff --git a/src/mesa/drivers/dri/radeon/radeon_chipset.h b/src/mesa/drivers/dri/radeon/radeon_chipset.h index 88b68e3d191..9145023826e 100644 --- a/src/mesa/drivers/dri/radeon/radeon_chipset.h +++ b/src/mesa/drivers/dri/radeon/radeon_chipset.h @@ -406,6 +406,7 @@ #define PCI_CHIP_CEDAR_68E8 0x68E8 #define PCI_CHIP_CEDAR_68E9 0x68E9 #define PCI_CHIP_CEDAR_68F1 0x68F1 +#define PCI_CHIP_CEDAR_68F2 0x68F2 #define PCI_CHIP_CEDAR_68F8 0x68F8 #define PCI_CHIP_CEDAR_68F9 0x68F9 #define PCI_CHIP_CEDAR_68FE 0x68FE @@ -426,7 +427,9 @@ #define PCI_CHIP_JUNIPER_68B0 0x68B0 #define PCI_CHIP_JUNIPER_68B8 0x68B8 #define PCI_CHIP_JUNIPER_68B9 0x68B9 +#define PCI_CHIP_JUNIPER_68BA 0x68BA #define PCI_CHIP_JUNIPER_68BE 0x68BE +#define PCI_CHIP_JUNIPER_68BF 0x68BF #define PCI_CHIP_CYPRESS_6880 0x6880 #define PCI_CHIP_CYPRESS_6888 0x6888 @@ -434,6 +437,7 @@ #define PCI_CHIP_CYPRESS_688A 0x688A #define PCI_CHIP_CYPRESS_6898 0x6898 #define PCI_CHIP_CYPRESS_6899 0x6899 +#define PCI_CHIP_CYPRESS_689B 0x689B #define PCI_CHIP_CYPRESS_689E 0x689E #define PCI_CHIP_HEMLOCK_689C 0x689C @@ -458,6 +462,7 @@ #define PCI_CHIP_BARTS_6729 0x6729 #define PCI_CHIP_BARTS_6738 0x6738 #define PCI_CHIP_BARTS_6739 0x6739 +#define PCI_CHIP_BARTS_673E 0x673E #define PCI_CHIP_TURKS_6740 0x6740 #define PCI_CHIP_TURKS_6741 0x6741 diff --git a/src/mesa/drivers/dri/radeon/radeon_screen.c b/src/mesa/drivers/dri/radeon/radeon_screen.c index 732efe8bd85..6449229e088 100644 --- a/src/mesa/drivers/dri/radeon/radeon_screen.c +++ b/src/mesa/drivers/dri/radeon/radeon_screen.c @@ -1106,6 +1106,7 @@ static int radeon_set_screen_flags(radeonScreenPtr screen, int device_id) case PCI_CHIP_CEDAR_68E8: case PCI_CHIP_CEDAR_68E9: case PCI_CHIP_CEDAR_68F1: + case PCI_CHIP_CEDAR_68F2: case PCI_CHIP_CEDAR_68F8: case PCI_CHIP_CEDAR_68F9: case PCI_CHIP_CEDAR_68FE: @@ -1132,7 +1133,9 @@ static int radeon_set_screen_flags(radeonScreenPtr screen, int device_id) case PCI_CHIP_JUNIPER_68B0: case PCI_CHIP_JUNIPER_68B8: case PCI_CHIP_JUNIPER_68B9: + case PCI_CHIP_JUNIPER_68BA: case PCI_CHIP_JUNIPER_68BE: + case PCI_CHIP_JUNIPER_68BF: screen->chip_family = CHIP_FAMILY_JUNIPER; screen->chip_flags = RADEON_CHIPSET_TCL; break; @@ -1143,6 +1146,7 @@ static int radeon_set_screen_flags(radeonScreenPtr screen, int device_id) case PCI_CHIP_CYPRESS_688A: case PCI_CHIP_CYPRESS_6898: case PCI_CHIP_CYPRESS_6899: + case PCI_CHIP_CYPRESS_689B: case PCI_CHIP_CYPRESS_689E: screen->chip_family = CHIP_FAMILY_CYPRESS; screen->chip_flags = RADEON_CHIPSET_TCL; @@ -1176,6 +1180,7 @@ static int radeon_set_screen_flags(radeonScreenPtr screen, int device_id) case PCI_CHIP_BARTS_6729: case PCI_CHIP_BARTS_6738: case PCI_CHIP_BARTS_6739: + case PCI_CHIP_BARTS_673E: screen->chip_family = CHIP_FAMILY_BARTS; screen->chip_flags = RADEON_CHIPSET_TCL; break; diff --git a/src/mesa/drivers/windows/fx/fx.rc b/src/mesa/drivers/windows/fx/fx.rc deleted file mode 100644 index f920b8768dd..00000000000 --- a/src/mesa/drivers/windows/fx/fx.rc +++ /dev/null @@ -1,39 +0,0 @@ -#include <windows.h> - -#define PRODNAME "Mesa 6.x" -#define CONTACTSTR "http://www.mesa3d.org" -#define HWSTR "3dfx Voodoo Graphics, Voodoo Rush, Voodoo^2, Voodoo Banshee, Velocity 100/200, Voodoo3, Voodoo4, Voodoo5" -#define COPYRIGHTSTR "Copyright \251 Brian E. Paul" - -#define VERSIONSTR "6.3.0.1" -#define MANVERSION 6 -#define MANREVISION 3 -#define BUILD_NUMBER 1 - -VS_VERSION_INFO VERSIONINFO - FILEVERSION MANVERSION, MANREVISION, 0, BUILD_NUMBER - PRODUCTVERSION MANVERSION, MANREVISION, 0, BUILD_NUMBER - FILEFLAGSMASK 0x0030003FL - - FILEOS VOS_DOS_WINDOWS32 - FILETYPE VFT_DRV - FILESUBTYPE VFT2_DRV_INSTALLABLE -BEGIN - BLOCK "StringFileInfo" - BEGIN - BLOCK "040904E4" - BEGIN - VALUE "FileDescription", PRODNAME - VALUE "FileVersion", VERSIONSTR - VALUE "LegalCopyright", COPYRIGHTSTR - VALUE "ProductName", PRODNAME - VALUE "Graphics Subsystem", HWSTR - VALUE "Contact", CONTACTSTR - END - END - BLOCK "VarFileInfo" - BEGIN - /* the following line should be extended for localized versions */ - VALUE "Translation", 0x409, 1252 - END -END diff --git a/src/mesa/drivers/windows/fx/fxopengl.def b/src/mesa/drivers/windows/fx/fxopengl.def deleted file mode 100644 index bc615e93ae6..00000000000 --- a/src/mesa/drivers/windows/fx/fxopengl.def +++ /dev/null @@ -1,953 +0,0 @@ -LIBRARY OpenGL32 -DESCRIPTION "Mesa 5.1" -EXPORTS - glAccum - glActiveStencilFaceEXT - glActiveTexture - glActiveTextureARB - glAlphaFunc - glAreProgramsResidentNV - glAreTexturesResident - glAreTexturesResidentEXT - glArrayElement - glArrayElementEXT - glBegin - glBeginQueryARB - glBindBufferARB - glBindProgramARB - glBindProgramNV - glBindTexture - glBindTextureEXT - glBitmap -;glBlendColor -;glBlendColorEXT - glBlendEquation - glBlendEquationEXT - glBlendFunc - glBlendFuncSeparate - glBlendFuncSeparateEXT - glBlendFuncSeparateINGR - glBufferDataARB - glBufferSubDataARB - glCallList - glCallLists - glClear - glClearAccum - glClearColor - glClearDepth - glClearIndex - glClearStencil - glClientActiveTexture - glClientActiveTextureARB - glClipPlane - glColorMask - glColorMaterial - glColorPointer - glColorPointerEXT - glColorSubTable - glColorSubTableEXT - glColorTable - glColorTableEXT - glColorTableParameterfv - glColorTableParameterfvSGI - glColorTableParameteriv - glColorTableParameterivSGI - glColorTableSGI - glColor3b - glColor3bv - glColor3d - glColor3dv - glColor3f - glColor3fv - glColor3i - glColor3iv - glColor3s - glColor3sv - glColor3ub - glColor3ubv - glColor3ui - glColor3uiv - glColor3us - glColor3usv - glColor4b - glColor4bv - glColor4d - glColor4dv - glColor4f - glColor4fv - glColor4i - glColor4iv - glColor4s - glColor4sv - glColor4ub - glColor4ubv - glColor4ui - glColor4uiv - glColor4us - glColor4usv - glCombinerInputNV - glCombinerOutputNV - glCombinerParameterfNV - glCombinerParameterfvNV - glCombinerParameteriNV - glCombinerParameterivNV - glCompressedTexImage1D - glCompressedTexImage1DARB - glCompressedTexImage2D - glCompressedTexImage2DARB - glCompressedTexImage3D - glCompressedTexImage3DARB - glCompressedTexSubImage1D - glCompressedTexSubImage1DARB - glCompressedTexSubImage2D - glCompressedTexSubImage2DARB - glCompressedTexSubImage3D - glCompressedTexSubImage3DARB - glConvolutionFilter1D - glConvolutionFilter1DEXT - glConvolutionFilter2D - glConvolutionFilter2DEXT - glConvolutionParameterf - glConvolutionParameterfEXT - glConvolutionParameterfv - glConvolutionParameterfvEXT - glConvolutionParameteri - glConvolutionParameteriEXT - glConvolutionParameteriv - glConvolutionParameterivEXT - glCopyColorSubTable - glCopyColorSubTableEXT - glCopyColorTable - glCopyColorTableSGI - glCopyConvolutionFilter1D - glCopyConvolutionFilter1DEXT - glCopyConvolutionFilter2D - glCopyConvolutionFilter2DEXT - glCopyPixels - glCopyTexImage1D - glCopyTexImage1DEXT - glCopyTexImage2D - glCopyTexImage2DEXT - glCopyTexSubImage1D - glCopyTexSubImage1DEXT - glCopyTexSubImage2D - glCopyTexSubImage2DEXT - glCopyTexSubImage3D - glCopyTexSubImage3DEXT - glCullFace - glDeleteBuffersARB - glDeleteFencesNV - glDeleteLists - glDeleteProgramsARB - glDeleteProgramsNV - glDeleteQueriesARB - glDeleteTextures - glDeleteTexturesEXT - glDepthBoundsEXT - glDepthFunc - glDepthMask - glDepthRange - glDetailTexFuncSGIS - glDisable - glDisableClientState - glDisableVertexAttribArrayARB - glDrawArrays - glDrawArraysEXT - glDrawBuffer - glDrawElements - glDrawPixels - glDrawRangeElements - glDrawRangeElementsEXT - glEdgeFlag - glEdgeFlagPointer - glEdgeFlagPointerEXT - glEdgeFlagv - glEnable - glEnableClientState - glEnableVertexAttribArrayARB - glEnd - glEndList - glEndQueryARB - glEvalCoord1d - glEvalCoord1dv - glEvalCoord1f - glEvalCoord1fv - glEvalCoord2d - glEvalCoord2dv - glEvalCoord2f - glEvalCoord2fv - glEvalMesh1 - glEvalMesh2 - glEvalPoint1 - glEvalPoint2 - glExecuteProgramNV - glFeedbackBuffer - glFinalCombinerInputNV - glFinish - glFinishFenceNV - glFlush - glFlushRasterSGIX - glFlushVertexArrayRangeNV - glFogCoordd - glFogCoorddEXT - glFogCoorddv - glFogCoorddvEXT - glFogCoordf - glFogCoordfEXT - glFogCoordfv - glFogCoordfvEXT - glFogCoordPointer - glFogCoordPointerEXT - glFogf - glFogfv - glFogi - glFogiv - glFragmentColorMaterialSGIX - glFragmentLightfSGIX - glFragmentLightfvSGIX - glFragmentLightiSGIX - glFragmentLightivSGIX - glFragmentLightModelfSGIX - glFragmentLightModelfvSGIX - glFragmentLightModeliSGIX - glFragmentLightModelivSGIX - glFragmentMaterialfSGIX - glFragmentMaterialfvSGIX - glFragmentMaterialiSGIX - glFragmentMaterialivSGIX - glFrameZoomSGIX - glFrontFace - glFrustum - glGenBuffersARB - glGenFencesNV - glGenLists - glGenProgramsARB - glGenProgramsNV - glGenQueriesARB - glGenTextures - glGenTexturesEXT - glGetBooleanv - glGetBufferParameterivARB - glGetBufferPointervARB - glGetBufferSubDataARB - glGetClipPlane - glGetColorTable - glGetColorTableEXT - glGetColorTableParameterfv - glGetColorTableParameterfvEXT - glGetColorTableParameterfvSGI - glGetColorTableParameteriv - glGetColorTableParameterivEXT - glGetColorTableParameterivSGI - glGetColorTableSGI - glGetCombinerInputParameterfvNV - glGetCombinerInputParameterivNV - glGetCombinerOutputParameterfvNV - glGetCombinerOutputParameterivNV - glGetCompressedTexImage - glGetCompressedTexImageARB - glGetConvolutionFilter - glGetConvolutionFilterEXT - glGetConvolutionParameterfv - glGetConvolutionParameterfvEXT - glGetConvolutionParameteriv - glGetConvolutionParameterivEXT - glGetDetailTexFuncSGIS - glGetDoublev - glGetError - glGetFenceivNV - glGetFinalCombinerInputParameterfvNV - glGetFinalCombinerInputParameterivNV - glGetFloatv - glGetFragmentLightfvSGIX - glGetFragmentLightivSGIX - glGetFragmentMaterialfvSGIX - glGetFragmentMaterialivSGIX - glGetHistogram - glGetHistogramEXT - glGetHistogramParameterfv - glGetHistogramParameterfvEXT - glGetHistogramParameteriv - glGetHistogramParameterivEXT - glGetInstrumentsSGIX - glGetIntegerv - glGetLightfv - glGetLightiv - glGetListParameterfvSGIX - glGetListParameterivSGIX - glGetMapdv - glGetMapfv - glGetMapiv - glGetMaterialfv - glGetMaterialiv - glGetMinmax - glGetMinmaxEXT - glGetMinmaxParameterfv - glGetMinmaxParameterfvEXT - glGetMinmaxParameteriv - glGetMinmaxParameterivEXT - glGetPixelMapfv - glGetPixelMapuiv - glGetPixelMapusv - glGetPixelTexGenParameterfvSGIS - glGetPixelTexGenParameterivSGIS - glGetPointerv - glGetPointervEXT - glGetPolygonStipple - glGetProgramEnvParameterdvARB - glGetProgramEnvParameterfvARB - glGetProgramivARB - glGetProgramivNV - glGetProgramLocalParameterdvARB - glGetProgramLocalParameterfvARB - glGetProgramNamedParameterdvNV - glGetProgramNamedParameterfvNV - glGetProgramParameterdvNV - glGetProgramParameterfvNV - glGetProgramStringARB - glGetProgramStringNV - glGetQueryivARB - glGetQueryObjectivARB - glGetQueryObjectuivARB - glGetSeparableFilter - glGetSeparableFilterEXT - glGetSharpenTexFuncSGIS - glGetString - glGetTexEnvfv - glGetTexEnviv - glGetTexFilterFuncSGIS - glGetTexGendv - glGetTexGenfv - glGetTexGeniv - glGetTexImage - glGetTexLevelParameterfv - glGetTexLevelParameteriv - glGetTexParameterfv - glGetTexParameteriv - glGetTrackMatrixivNV - glGetVertexAttribdvARB - glGetVertexAttribdvNV - glGetVertexAttribfvARB - glGetVertexAttribfvNV - glGetVertexAttribivARB - glGetVertexAttribivNV - glGetVertexAttribPointervARB - glGetVertexAttribPointervNV - glHint - glHintPGI - glHistogram - glHistogramEXT - glIndexd - glIndexdv - glIndexf - glIndexFuncEXT - glIndexfv - glIndexi - glIndexiv - glIndexMask - glIndexMaterialEXT - glIndexPointer - glIndexPointerEXT - glIndexs - glIndexsv - glIndexub - glIndexubv - glInitNames - glInstrumentsBufferSGIX - glInterleavedArrays - glIsBufferARB - glIsEnabled - glIsFenceNV - glIsList - glIsProgramARB - glIsProgramNV - glIsQueryARB - glIsTexture - glIsTextureEXT - glLightEnviSGIX - glLightf - glLightfv - glLighti - glLightiv - glLightModelf - glLightModelfv - glLightModeli - glLightModeliv - glLineStipple - glLineWidth - glListBase - glListParameterfSGIX - glListParameterfvSGIX - glListParameteriSGIX - glListParameterivSGIX - glLoadIdentity - glLoadMatrixd - glLoadMatrixf - glLoadName - glLoadProgramNV - glLoadTransposeMatrixd - glLoadTransposeMatrixdARB - glLoadTransposeMatrixf - glLoadTransposeMatrixfARB - glLockArraysEXT - glLogicOp - glMapBufferARB - glMapGrid1d - glMapGrid1f - glMapGrid2d - glMapGrid2f - glMap1d - glMap1f - glMap2d - glMap2f - glMaterialf - glMaterialfv - glMateriali - glMaterialiv - glMatrixMode - glMinmax - glMinmaxEXT - glMultiDrawArrays - glMultiDrawArraysEXT - glMultiDrawElements - glMultiDrawElementsEXT - glMultiModeDrawArraysIBM - glMultiModeDrawElementsIBM - glMultiTexCoord1d - glMultiTexCoord1dARB - glMultiTexCoord1dv - glMultiTexCoord1dvARB - glMultiTexCoord1f - glMultiTexCoord1fARB - glMultiTexCoord1fv - glMultiTexCoord1fvARB - glMultiTexCoord1i - glMultiTexCoord1iARB - glMultiTexCoord1iv - glMultiTexCoord1ivARB - glMultiTexCoord1s - glMultiTexCoord1sARB - glMultiTexCoord1sv - glMultiTexCoord1svARB - glMultiTexCoord2d - glMultiTexCoord2dARB - glMultiTexCoord2dv - glMultiTexCoord2dvARB - glMultiTexCoord2f - glMultiTexCoord2fARB - glMultiTexCoord2fv - glMultiTexCoord2fvARB - glMultiTexCoord2i - glMultiTexCoord2iARB - glMultiTexCoord2iv - glMultiTexCoord2ivARB - glMultiTexCoord2s - glMultiTexCoord2sARB - glMultiTexCoord2sv - glMultiTexCoord2svARB - glMultiTexCoord3d - glMultiTexCoord3dARB - glMultiTexCoord3dv - glMultiTexCoord3dvARB - glMultiTexCoord3f - glMultiTexCoord3fARB - glMultiTexCoord3fv - glMultiTexCoord3fvARB - glMultiTexCoord3i - glMultiTexCoord3iARB - glMultiTexCoord3iv - glMultiTexCoord3ivARB - glMultiTexCoord3s - glMultiTexCoord3sARB - glMultiTexCoord3sv - glMultiTexCoord3svARB - glMultiTexCoord4d - glMultiTexCoord4dARB - glMultiTexCoord4dv - glMultiTexCoord4dvARB - glMultiTexCoord4f - glMultiTexCoord4fARB - glMultiTexCoord4fv - glMultiTexCoord4fvARB - glMultiTexCoord4i - glMultiTexCoord4iARB - glMultiTexCoord4iv - glMultiTexCoord4ivARB - glMultiTexCoord4s - glMultiTexCoord4sARB - glMultiTexCoord4sv - glMultiTexCoord4svARB - glMultMatrixd - glMultMatrixf - glMultTransposeMatrixd - glMultTransposeMatrixdARB - glMultTransposeMatrixf - glMultTransposeMatrixfARB - glNewList - glNormalPointer - glNormalPointerEXT - glNormal3b - glNormal3bv - glNormal3d - glNormal3dv - glNormal3f - glNormal3fv - glNormal3i - glNormal3iv - glNormal3s - glNormal3sv - glOrtho - glPassThrough - glPixelMapfv - glPixelMapuiv - glPixelMapusv - glPixelStoref - glPixelStorei - glPixelTexGenParameterfSGIS - glPixelTexGenParameterfvSGIS - glPixelTexGenParameteriSGIS - glPixelTexGenParameterivSGIS - glPixelTexGenSGIX - glPixelTransferf - glPixelTransferi - glPixelZoom - glPointParameterf - glPointParameterfARB - glPointParameterfEXT - glPointParameterfSGIS - glPointParameterfv - glPointParameterfvARB - glPointParameterfvEXT - glPointParameterfvSGIS - glPointParameteri - glPointParameteriNV - glPointParameteriv - glPointParameterivNV - glPointSize - glPollInstrumentsSGIX - glPolygonMode - glPolygonOffset - glPolygonOffsetEXT - glPolygonStipple - glPopAttrib - glPopClientAttrib - glPopMatrix - glPopName - glPrioritizeTextures - glPrioritizeTexturesEXT - glProgramEnvParameter4dARB - glProgramEnvParameter4dvARB - glProgramEnvParameter4fARB - glProgramEnvParameter4fvARB - glProgramLocalParameter4dARB - glProgramLocalParameter4dvARB - glProgramLocalParameter4fARB - glProgramLocalParameter4fvARB - glProgramNamedParameter4dNV - glProgramNamedParameter4dvNV - glProgramNamedParameter4fNV - glProgramNamedParameter4fvNV - glProgramParameters4dvNV - glProgramParameters4fvNV - glProgramParameter4dNV - glProgramParameter4dvNV - glProgramParameter4fNV - glProgramParameter4fvNV - glProgramStringARB - glPushAttrib - glPushClientAttrib - glPushMatrix - glPushName - glRasterPos2d - glRasterPos2dv - glRasterPos2f - glRasterPos2fv - glRasterPos2i - glRasterPos2iv - glRasterPos2s - glRasterPos2sv - glRasterPos3d - glRasterPos3dv - glRasterPos3f - glRasterPos3fv - glRasterPos3i - glRasterPos3iv - glRasterPos3s - glRasterPos3sv - glRasterPos4d - glRasterPos4dv - glRasterPos4f - glRasterPos4fv - glRasterPos4i - glRasterPos4iv - glRasterPos4s - glRasterPos4sv - glReadBuffer - glReadInstrumentsSGIX - glReadPixels - glRectd - glRectdv - glRectf - glRectfv - glRecti - glRectiv - glRects - glRectsv - glReferencePlaneSGIX - glRenderMode - glRequestResidentProgramsNV - glResetHistogram - glResetHistogramEXT - glResetMinmax - glResetMinmaxEXT - glResizeBuffersMESA - glRotated - glRotatef - glSampleCoverage - glSampleCoverageARB - glSampleMaskEXT - glSampleMaskSGIS - glSamplePatternEXT - glSamplePatternSGIS - glScaled - glScalef - glScissor - glSecondaryColorPointer - glSecondaryColorPointerEXT - glSecondaryColor3b - glSecondaryColor3bEXT - glSecondaryColor3bv - glSecondaryColor3bvEXT - glSecondaryColor3d - glSecondaryColor3dEXT - glSecondaryColor3dv - glSecondaryColor3dvEXT - glSecondaryColor3f - glSecondaryColor3fEXT - glSecondaryColor3fv - glSecondaryColor3fvEXT - glSecondaryColor3i - glSecondaryColor3iEXT - glSecondaryColor3iv - glSecondaryColor3ivEXT - glSecondaryColor3s - glSecondaryColor3sEXT - glSecondaryColor3sv - glSecondaryColor3svEXT - glSecondaryColor3ub - glSecondaryColor3ubEXT - glSecondaryColor3ubv - glSecondaryColor3ubvEXT - glSecondaryColor3ui - glSecondaryColor3uiEXT - glSecondaryColor3uiv - glSecondaryColor3uivEXT - glSecondaryColor3us - glSecondaryColor3usEXT - glSecondaryColor3usv - glSecondaryColor3usvEXT - glSelectBuffer - glSeparableFilter2D - glSeparableFilter2DEXT - glSetFenceNV - glShadeModel - glSharpenTexFuncSGIS - glSpriteParameterfSGIX - glSpriteParameterfvSGIX - glSpriteParameteriSGIX - glSpriteParameterivSGIX - glStartInstrumentsSGIX - glStencilFunc - glStencilMask - glStencilOp - glStopInstrumentsSGIX - glTagSampleBufferSGIX - glTbufferMask3DFX - glTestFenceNV - glTexCoordPointer - glTexCoordPointerEXT - glTexCoord1d - glTexCoord1dv - glTexCoord1f - glTexCoord1fv - glTexCoord1i - glTexCoord1iv - glTexCoord1s - glTexCoord1sv - glTexCoord2d - glTexCoord2dv - glTexCoord2f - glTexCoord2fv - glTexCoord2i - glTexCoord2iv - glTexCoord2s - glTexCoord2sv - glTexCoord3d - glTexCoord3dv - glTexCoord3f - glTexCoord3fv - glTexCoord3i - glTexCoord3iv - glTexCoord3s - glTexCoord3sv - glTexCoord4d - glTexCoord4dv - glTexCoord4f - glTexCoord4fv - glTexCoord4i - glTexCoord4iv - glTexCoord4s - glTexCoord4sv - glTexEnvf - glTexEnvfv - glTexEnvi - glTexEnviv - glTexFilterFuncSGIS - glTexGend - glTexGendv - glTexGenf - glTexGenfv - glTexGeni - glTexGeniv - glTexImage1D - glTexImage2D - glTexImage3D - glTexImage3DEXT - glTexImage4DSGIS - glTexParameterf - glTexParameterfv - glTexParameteri - glTexParameteriv - glTexSubImage1D - glTexSubImage1DEXT - glTexSubImage2D - glTexSubImage2DEXT - glTexSubImage3D - glTexSubImage3DEXT - glTexSubImage4DSGIS - glTrackMatrixNV - glTranslated - glTranslatef - glUnlockArraysEXT - glUnmapBufferARB - glVertexArrayRangeNV - glVertexAttribPointerARB - glVertexAttribPointerNV - glVertexAttribs1dvNV - glVertexAttribs1fvNV - glVertexAttribs1svNV - glVertexAttribs2dvNV - glVertexAttribs2fvNV - glVertexAttribs2svNV - glVertexAttribs3dvNV - glVertexAttribs3fvNV - glVertexAttribs3svNV - glVertexAttribs4dvNV - glVertexAttribs4fvNV - glVertexAttribs4svNV - glVertexAttribs4ubvNV - glVertexAttrib1dARB - glVertexAttrib1dNV - glVertexAttrib1dvARB - glVertexAttrib1dvNV - glVertexAttrib1fARB - glVertexAttrib1fNV - glVertexAttrib1fvARB - glVertexAttrib1fvNV - glVertexAttrib1sARB - glVertexAttrib1sNV - glVertexAttrib1svARB - glVertexAttrib1svNV - glVertexAttrib2dARB - glVertexAttrib2dNV - glVertexAttrib2dvARB - glVertexAttrib2dvNV - glVertexAttrib2fARB - glVertexAttrib2fNV - glVertexAttrib2fvARB - glVertexAttrib2fvNV - glVertexAttrib2sARB - glVertexAttrib2sNV - glVertexAttrib2svARB - glVertexAttrib2svNV - glVertexAttrib3dARB - glVertexAttrib3dNV - glVertexAttrib3dvARB - glVertexAttrib3dvNV - glVertexAttrib3fARB - glVertexAttrib3fNV - glVertexAttrib3fvARB - glVertexAttrib3fvNV - glVertexAttrib3sARB - glVertexAttrib3sNV - glVertexAttrib3svARB - glVertexAttrib3svNV - glVertexAttrib4bvARB - glVertexAttrib4dARB - glVertexAttrib4dNV - glVertexAttrib4dvARB - glVertexAttrib4dvNV - glVertexAttrib4fARB - glVertexAttrib4fNV - glVertexAttrib4fvARB - glVertexAttrib4fvNV - glVertexAttrib4ivARB - glVertexAttrib4NbvARB - glVertexAttrib4NivARB - glVertexAttrib4NsvARB - glVertexAttrib4NubARB - glVertexAttrib4NubvARB - glVertexAttrib4NuivARB - glVertexAttrib4NusvARB - glVertexAttrib4sARB - glVertexAttrib4sNV - glVertexAttrib4svARB - glVertexAttrib4svNV - glVertexAttrib4ubNV - glVertexAttrib4ubvARB - glVertexAttrib4ubvNV - glVertexAttrib4uivARB - glVertexAttrib4usvARB - glVertexPointer - glVertexPointerEXT - glVertexWeightfEXT - glVertexWeightfvEXT - glVertexWeightPointerEXT - glVertex2d - glVertex2dv - glVertex2f - glVertex2fv - glVertex2i - glVertex2iv - glVertex2s - glVertex2sv - glVertex3d - glVertex3dv - glVertex3f - glVertex3fv - glVertex3i - glVertex3iv - glVertex3s - glVertex3sv - glVertex4d - glVertex4dv - glVertex4f - glVertex4fv - glVertex4i - glVertex4iv - glVertex4s - glVertex4sv - glViewport - glWindowPos2d - glWindowPos2dARB - glWindowPos2dMESA - glWindowPos2dv - glWindowPos2dvARB - glWindowPos2dvMESA - glWindowPos2f - glWindowPos2fARB - glWindowPos2fMESA - glWindowPos2fv - glWindowPos2fvARB - glWindowPos2fvMESA - glWindowPos2i - glWindowPos2iARB - glWindowPos2iMESA - glWindowPos2iv - glWindowPos2ivARB - glWindowPos2ivMESA - glWindowPos2s - glWindowPos2sARB - glWindowPos2sMESA - glWindowPos2sv - glWindowPos2svARB - glWindowPos2svMESA - glWindowPos3d - glWindowPos3dARB - glWindowPos3dMESA - glWindowPos3dv - glWindowPos3dvARB - glWindowPos3dvMESA - glWindowPos3f - glWindowPos3fARB - glWindowPos3fMESA - glWindowPos3fv - glWindowPos3fvARB - glWindowPos3fvMESA - glWindowPos3i - glWindowPos3iARB - glWindowPos3iMESA - glWindowPos3iv - glWindowPos3ivARB - glWindowPos3ivMESA - glWindowPos3s - glWindowPos3sARB - glWindowPos3sMESA - glWindowPos3sv - glWindowPos3svARB - glWindowPos3svMESA - glWindowPos4dMESA - glWindowPos4dvMESA - glWindowPos4fMESA - glWindowPos4fvMESA - glWindowPos4iMESA - glWindowPos4ivMESA - glWindowPos4sMESA - glWindowPos4svMESA - fxCloseHardware -;fxGetScreenGeometry - fxMesaCreateBestContext - fxMesaCreateContext - fxMesaDestroyContext - fxMesaGetCurrentContext - fxMesaMakeCurrent - fxMesaSelectCurrentBoard -;fxMesaSetNearFar - fxMesaSwapBuffers - fxMesaUpdateScreenSize - wglChoosePixelFormat - wglCopyContext - wglCreateContext - wglCreateLayerContext - wglDeleteContext - wglDescribeLayerPlane - wglDescribePixelFormat - wglGetCurrentContext - wglGetCurrentDC - wglGetDefaultProcAddress - wglGetLayerPaletteEntries - wglGetPixelFormat - wglGetProcAddress - wglMakeCurrent - wglRealizeLayerPalette - wglSetLayerPaletteEntries - wglSetPixelFormat - wglShareLists - wglSwapBuffers - wglSwapLayerBuffers - wglUseFontBitmapsA - wglUseFontBitmapsW - wglUseFontOutlinesA - wglUseFontOutlinesW - ChoosePixelFormat - DescribePixelFormat - GetPixelFormat - SetPixelFormat - SwapBuffers - DrvCopyContext - DrvCreateContext - DrvCreateLayerContext - DrvDeleteContext - DrvDescribeLayerPlane - DrvDescribePixelFormat - DrvGetLayerPaletteEntries - DrvGetProcAddress - DrvReleaseContext - DrvRealizeLayerPalette - DrvSetContext - DrvSetLayerPaletteEntries - DrvSetPixelFormat - DrvShareLists - DrvSwapBuffers - DrvSwapLayerBuffers - DrvValidateVersion diff --git a/src/mesa/drivers/windows/fx/fxwgl.c b/src/mesa/drivers/windows/fx/fxwgl.c deleted file mode 100644 index ce76ecd1568..00000000000 --- a/src/mesa/drivers/windows/fx/fxwgl.c +++ /dev/null @@ -1,1307 +0,0 @@ -/* - * Mesa 3-D graphics library - * Version: 4.0 - * - * Copyright (C) 1999-2001 Brian Paul All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN - * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -/* Authors: - * David Bucciarelli - * Brian Paul - * Keith Whitwell - * Hiroshi Morii - * Daniel Borca - */ - -/* fxwgl.c - Microsoft wgl functions emulation for - * 3Dfx VooDoo/Mesa interface - */ - - -#ifdef _WIN32 - -#ifdef __cplusplus -extern "C" { -#endif - -#include <windows.h> -#define GL_GLEXT_PROTOTYPES -#include "GL/gl.h" -#include "GL/glext.h" - -#ifdef __cplusplus -} -#endif - -#include "GL/fxmesa.h" -#include "glheader.h" -#include "glapi.h" -#include "imports.h" -#include "../../glide/fxdrv.h" - -#define MAX_MESA_ATTRS 20 - -#if (_MSC_VER >= 1200) -#pragma warning( push ) -#pragma warning( disable : 4273 ) -#endif - -struct __extensions__ { - PROC proc; - char *name; -}; - -struct __pixelformat__ { - PIXELFORMATDESCRIPTOR pfd; - GLint mesaAttr[MAX_MESA_ATTRS]; -}; - -WINGDIAPI void GLAPIENTRY gl3DfxSetPaletteEXT(GLuint *); -static GLushort gammaTable[3 * 256]; - -struct __pixelformat__ pix[] = { - /* 16bit RGB565 single buffer with depth */ - { - {sizeof(PIXELFORMATDESCRIPTOR), 1, - PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL, - PFD_TYPE_RGBA, - 16, - 5, 0, 6, 5, 5, 11, 0, 0, - 0, 0, 0, 0, 0, - 16, - 0, - 0, - PFD_MAIN_PLANE, - 0, 0, 0, 0} - , - {FXMESA_COLORDEPTH, 16, - FXMESA_ALPHA_SIZE, 0, - FXMESA_DEPTH_SIZE, 16, - FXMESA_STENCIL_SIZE, 0, - FXMESA_ACCUM_SIZE, 0, - FXMESA_NONE} - } - , - /* 16bit RGB565 double buffer with depth */ - { - {sizeof(PIXELFORMATDESCRIPTOR), 1, - PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL | - PFD_DOUBLEBUFFER | PFD_SWAP_COPY, - PFD_TYPE_RGBA, - 16, - 5, 0, 6, 5, 5, 11, 0, 0, - 0, 0, 0, 0, 0, - 16, - 0, - 0, - PFD_MAIN_PLANE, - 0, 0, 0, 0} - , - {FXMESA_COLORDEPTH, 16, - FXMESA_DOUBLEBUFFER, - FXMESA_ALPHA_SIZE, 0, - FXMESA_DEPTH_SIZE, 16, - FXMESA_STENCIL_SIZE, 0, - FXMESA_ACCUM_SIZE, 0, - FXMESA_NONE} - } - , - /* 16bit ARGB1555 single buffer with depth */ - { - {sizeof(PIXELFORMATDESCRIPTOR), 1, - PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL, - PFD_TYPE_RGBA, - 16, - 5, 0, 5, 5, 5, 10, 1, 15, - 0, 0, 0, 0, 0, - 16, - 0, - 0, - PFD_MAIN_PLANE, - 0, 0, 0, 0} - , - {FXMESA_COLORDEPTH, 15, - FXMESA_ALPHA_SIZE, 1, - FXMESA_DEPTH_SIZE, 16, - FXMESA_STENCIL_SIZE, 0, - FXMESA_ACCUM_SIZE, 0, - FXMESA_NONE} - } - , - /* 16bit ARGB1555 double buffer with depth */ - { - {sizeof(PIXELFORMATDESCRIPTOR), 1, - PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL | - PFD_DOUBLEBUFFER | PFD_SWAP_COPY, - PFD_TYPE_RGBA, - 16, - 5, 0, 5, 5, 5, 10, 1, 15, - 0, 0, 0, 0, 0, - 16, - 0, - 0, - PFD_MAIN_PLANE, - 0, 0, 0, 0} - , - {FXMESA_COLORDEPTH, 15, - FXMESA_DOUBLEBUFFER, - FXMESA_ALPHA_SIZE, 1, - FXMESA_DEPTH_SIZE, 16, - FXMESA_STENCIL_SIZE, 0, - FXMESA_ACCUM_SIZE, 0, - FXMESA_NONE} - } - , - /* 32bit ARGB8888 single buffer with depth */ - { - {sizeof(PIXELFORMATDESCRIPTOR), 1, - PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL, - PFD_TYPE_RGBA, - 32, - 8, 0, 8, 8, 8, 16, 8, 24, - 0, 0, 0, 0, 0, - 24, - 8, - 0, - PFD_MAIN_PLANE, - 0, 0, 0, 0} - , - {FXMESA_COLORDEPTH, 32, - FXMESA_ALPHA_SIZE, 8, - FXMESA_DEPTH_SIZE, 24, - FXMESA_STENCIL_SIZE, 8, - FXMESA_ACCUM_SIZE, 0, - FXMESA_NONE} - } - , - /* 32bit ARGB8888 double buffer with depth */ - { - {sizeof(PIXELFORMATDESCRIPTOR), 1, - PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL | - PFD_DOUBLEBUFFER | PFD_SWAP_COPY, - PFD_TYPE_RGBA, - 32, - 8, 0, 8, 8, 8, 16, 8, 24, - 0, 0, 0, 0, 0, - 24, - 8, - 0, - PFD_MAIN_PLANE, - 0, 0, 0, 0} - , - {FXMESA_COLORDEPTH, 32, - FXMESA_DOUBLEBUFFER, - FXMESA_ALPHA_SIZE, 8, - FXMESA_DEPTH_SIZE, 24, - FXMESA_STENCIL_SIZE, 8, - FXMESA_ACCUM_SIZE, 0, - FXMESA_NONE} - } -}; - -static fxMesaContext ctx = NULL; -static WNDPROC hWNDOldProc; -static int curPFD = 0; -static HDC hDC; -static HWND hWND; - -static GLboolean haveDualHead; - -/* For the in-window-rendering hack */ - -#ifndef GR_CONTROL_RESIZE -/* Apparently GR_CONTROL_RESIZE can be ignored. OK? */ -#define GR_CONTROL_RESIZE -1 -#endif - -static GLboolean gdiWindowHack; -static void *dibSurfacePtr; -static BITMAPINFO *dibBMI; -static HBITMAP dibHBM; -static HWND dibWnd; - -static int -env_check (const char *var, int val) -{ - const char *env = getenv(var); - return (env && (env[0] == val)); -} - -static LRESULT APIENTRY -__wglMonitor (HWND hwnd, UINT message, UINT wParam, LONG lParam) -{ - long ret; /* Now gives the resized window at the end to hWNDOldProc */ - - if (ctx && hwnd == hWND) { - switch (message) { - case WM_PAINT: - case WM_MOVE: - break; - case WM_DISPLAYCHANGE: - case WM_SIZE: -#if 0 - if (wParam != SIZE_MINIMIZED) { - static int moving = 0; - if (!moving) { - if (!FX_grSstControl(GR_CONTROL_RESIZE)) { - moving = 1; - SetWindowPos(hwnd, 0, 0, 0, 300, 300, SWP_NOMOVE | SWP_NOZORDER); - moving = 0; - if (!FX_grSstControl(GR_CONTROL_RESIZE)) { - /*MessageBox(0,_T("Error changing windowsize"),_T("fxMESA"),MB_OK);*/ - PostMessage(hWND, WM_CLOSE, 0, 0); - } - } - /* Do the clipping in the glide library */ - grClipWindow(0, 0, FX_grSstScreenWidth(), FX_grSstScreenHeight()); - /* And let the new size set in the context */ - fxMesaUpdateScreenSize(ctx); - } - } -#endif - break; - case WM_ACTIVATE: - break; - case WM_SHOWWINDOW: - break; - case WM_SYSKEYDOWN: - case WM_SYSCHAR: - break; - } - } - - /* Finally call the hWNDOldProc, which handles the resize with the - * now changed window sizes */ - ret = CallWindowProc(hWNDOldProc, hwnd, message, wParam, lParam); - - return ret; -} - -static void -wgl_error (long error) -{ -#define WGL_INVALID_PIXELFORMAT ERROR_INVALID_PIXEL_FORMAT - SetLastError(0xC0000000 /* error severity */ - |0x00070000 /* error facility (who we are) */ - |error); -} - -GLAPI BOOL GLAPIENTRY -wglCopyContext (HGLRC hglrcSrc, HGLRC hglrcDst, UINT mask) -{ - return FALSE; -} - -GLAPI HGLRC GLAPIENTRY -wglCreateContext (HDC hdc) -{ - HWND hWnd; - WNDPROC oldProc; - int error; - - if (ctx) { - SetLastError(0); - return NULL; - } - - if (!(hWnd = WindowFromDC(hdc))) { - SetLastError(0); - return NULL; - } - - if (curPFD == 0) { - wgl_error(WGL_INVALID_PIXELFORMAT); - return NULL; - } - - if ((oldProc = (WNDPROC)GetWindowLong(hWnd, GWL_WNDPROC)) != __wglMonitor) { - hWNDOldProc = oldProc; - SetWindowLong(hWnd, GWL_WNDPROC, (LONG)__wglMonitor); - } - - /* always log when debugging, or if user demands */ - if (TDFX_DEBUG || env_check("MESA_FX_INFO", 'r')) { - freopen("MESA.LOG", "w", stderr); - } - - { - RECT cliRect; - ShowWindow(hWnd, SW_SHOWNORMAL); - SetForegroundWindow(hWnd); - Sleep(100); /* a hack for win95 */ - if (env_check("MESA_GLX_FX", 'w') && !(GetWindowLong(hWnd, GWL_STYLE) & WS_POPUP)) { - /* XXX todo - windowed modes */ - error = !(ctx = fxMesaCreateContext((GLuint) hWnd, GR_RESOLUTION_NONE, GR_REFRESH_NONE, pix[curPFD - 1].mesaAttr)); - } else { - GetClientRect(hWnd, &cliRect); - error = !(ctx = fxMesaCreateBestContext((GLuint) hWnd, cliRect.right, cliRect.bottom, pix[curPFD - 1].mesaAttr)); - } - } - - /*if (getenv("SST_DUALHEAD")) - haveDualHead = - ((atoi(getenv("SST_DUALHEAD")) == 1) ? GL_TRUE : GL_FALSE); - else - haveDualHead = GL_FALSE;*/ - - if (error) { - SetLastError(0); - return NULL; - } - - hDC = hdc; - hWND = hWnd; - - /* Required by the OpenGL Optimizer 1.1 (is it a Optimizer bug ?) */ - wglMakeCurrent(hdc, (HGLRC)1); - - return (HGLRC)1; -} - -GLAPI HGLRC GLAPIENTRY -wglCreateLayerContext (HDC hdc, int iLayerPlane) -{ - SetLastError(0); - return NULL; -} - -GLAPI BOOL GLAPIENTRY -wglDeleteContext (HGLRC hglrc) -{ - if (ctx && hglrc == (HGLRC)1) { - - fxMesaDestroyContext(ctx); - - SetWindowLong(WindowFromDC(hDC), GWL_WNDPROC, (LONG) hWNDOldProc); - - ctx = NULL; - hDC = 0; - return TRUE; - } - - SetLastError(0); - - return FALSE; -} - -GLAPI HGLRC GLAPIENTRY -wglGetCurrentContext (VOID) -{ - if (ctx) - return (HGLRC)1; - - SetLastError(0); - return NULL; -} - -GLAPI HDC GLAPIENTRY -wglGetCurrentDC (VOID) -{ - if (ctx) - return hDC; - - SetLastError(0); - return NULL; -} - -GLAPI BOOL GLAPIENTRY -wglSwapIntervalEXT (int interval) -{ - if (ctx == NULL) { - return FALSE; - } - if (interval < 0) { - interval = 0; - } else if (interval > 3) { - interval = 3; - } - ctx->swapInterval = interval; - return TRUE; -} - -GLAPI int GLAPIENTRY -wglGetSwapIntervalEXT (void) -{ - return (ctx == NULL) ? -1 : ctx->swapInterval; -} - -GLAPI BOOL GLAPIENTRY -wglGetDeviceGammaRamp3DFX (HDC hdc, LPVOID arrays) -{ - /* gammaTable should be per-context */ - memcpy(arrays, gammaTable, 3 * 256 * sizeof(GLushort)); - return TRUE; -} - -GLAPI BOOL GLAPIENTRY -wglSetDeviceGammaRamp3DFX (HDC hdc, LPVOID arrays) -{ - GLint i, tableSize, inc, index; - GLushort *red, *green, *blue; - FxU32 gammaTableR[256], gammaTableG[256], gammaTableB[256]; - - /* gammaTable should be per-context */ - memcpy(gammaTable, arrays, 3 * 256 * sizeof(GLushort)); - - tableSize = FX_grGetInteger(GR_GAMMA_TABLE_ENTRIES); - inc = 256 / tableSize; - red = (GLushort *)arrays; - green = (GLushort *)arrays + 256; - blue = (GLushort *)arrays + 512; - for (i = 0, index = 0; i < tableSize; i++, index += inc) { - gammaTableR[i] = red[index] >> 8; - gammaTableG[i] = green[index] >> 8; - gammaTableB[i] = blue[index] >> 8; - } - - grLoadGammaTable(tableSize, gammaTableR, gammaTableG, gammaTableB); - - return TRUE; -} - -typedef void *HPBUFFERARB; - -/* WGL_ARB_pixel_format */ -GLAPI BOOL GLAPIENTRY -wglGetPixelFormatAttribivARB (HDC hdc, - int iPixelFormat, - int iLayerPlane, - UINT nAttributes, - const int *piAttributes, - int *piValues) -{ - SetLastError(0); - return FALSE; -} - -GLAPI BOOL GLAPIENTRY -wglGetPixelFormatAttribfvARB (HDC hdc, - int iPixelFormat, - int iLayerPlane, - UINT nAttributes, - const int *piAttributes, - FLOAT *pfValues) -{ - SetLastError(0); - return FALSE; -} - -GLAPI BOOL GLAPIENTRY -wglChoosePixelFormatARB (HDC hdc, - const int *piAttribIList, - const FLOAT *pfAttribFList, - UINT nMaxFormats, - int *piFormats, - UINT *nNumFormats) -{ - SetLastError(0); - return FALSE; -} - -/* WGL_ARB_render_texture */ -GLAPI BOOL GLAPIENTRY -wglBindTexImageARB (HPBUFFERARB hPbuffer, int iBuffer) -{ - SetLastError(0); - return FALSE; -} - -GLAPI BOOL GLAPIENTRY -wglReleaseTexImageARB (HPBUFFERARB hPbuffer, int iBuffer) -{ - SetLastError(0); - return FALSE; -} - -GLAPI BOOL GLAPIENTRY -wglSetPbufferAttribARB (HPBUFFERARB hPbuffer, - const int *piAttribList) -{ - SetLastError(0); - return FALSE; -} - -/* WGL_ARB_pbuffer */ -GLAPI HPBUFFERARB GLAPIENTRY -wglCreatePbufferARB (HDC hDC, - int iPixelFormat, - int iWidth, - int iHeight, - const int *piAttribList) -{ - SetLastError(0); - return NULL; -} - -GLAPI HDC GLAPIENTRY -wglGetPbufferDCARB (HPBUFFERARB hPbuffer) -{ - SetLastError(0); - return NULL; -} - -GLAPI int GLAPIENTRY -wglReleasePbufferDCARB (HPBUFFERARB hPbuffer, HDC hDC) -{ - SetLastError(0); - return -1; -} - -GLAPI BOOL GLAPIENTRY -wglDestroyPbufferARB (HPBUFFERARB hPbuffer) -{ - SetLastError(0); - return FALSE; -} - -GLAPI BOOL GLAPIENTRY -wglQueryPbufferARB (HPBUFFERARB hPbuffer, - int iAttribute, - int *piValue) -{ - SetLastError(0); - return FALSE; -} - -GLAPI const char * GLAPIENTRY -wglGetExtensionsStringEXT (void) -{ - return "WGL_3DFX_gamma_control " - "WGL_EXT_swap_control " - "WGL_EXT_extensions_string WGL_ARB_extensions_string" - /*WGL_ARB_pixel_format WGL_ARB_render_texture WGL_ARB_pbuffer*/; -} - -GLAPI const char * GLAPIENTRY -wglGetExtensionsStringARB (HDC hdc) -{ - return wglGetExtensionsStringEXT(); -} - -static struct { - const char *name; - PROC func; -} wgl_ext[] = { - {"wglGetExtensionsStringARB", (PROC)wglGetExtensionsStringARB}, - {"wglGetExtensionsStringEXT", (PROC)wglGetExtensionsStringEXT}, - {"wglSwapIntervalEXT", (PROC)wglSwapIntervalEXT}, - {"wglGetSwapIntervalEXT", (PROC)wglGetSwapIntervalEXT}, - {"wglGetDeviceGammaRamp3DFX", (PROC)wglGetDeviceGammaRamp3DFX}, - {"wglSetDeviceGammaRamp3DFX", (PROC)wglSetDeviceGammaRamp3DFX}, - /* WGL_ARB_pixel_format */ - {"wglGetPixelFormatAttribivARB", (PROC)wglGetPixelFormatAttribivARB}, - {"wglGetPixelFormatAttribfvARB", (PROC)wglGetPixelFormatAttribfvARB}, - {"wglChoosePixelFormatARB", (PROC)wglChoosePixelFormatARB}, - /* WGL_ARB_render_texture */ - {"wglBindTexImageARB", (PROC)wglBindTexImageARB}, - {"wglReleaseTexImageARB", (PROC)wglReleaseTexImageARB}, - {"wglSetPbufferAttribARB", (PROC)wglSetPbufferAttribARB}, - /* WGL_ARB_pbuffer */ - {"wglCreatePbufferARB", (PROC)wglCreatePbufferARB}, - {"wglGetPbufferDCARB", (PROC)wglGetPbufferDCARB}, - {"wglReleasePbufferDCARB", (PROC)wglReleasePbufferDCARB}, - {"wglDestroyPbufferARB", (PROC)wglDestroyPbufferARB}, - {"wglQueryPbufferARB", (PROC)wglQueryPbufferARB}, - {NULL, NULL} -}; - -GLAPI PROC GLAPIENTRY -wglGetProcAddress (LPCSTR lpszProc) -{ - int i; - PROC p = (PROC)_glapi_get_proc_address((const char *)lpszProc); - - /* we can't BlendColor. work around buggy applications */ - if (p && strcmp(lpszProc, "glBlendColor") - && strcmp(lpszProc, "glBlendColorEXT")) - return p; - - for (i = 0; wgl_ext[i].name; i++) { - if (!strcmp(lpszProc, wgl_ext[i].name)) { - return wgl_ext[i].func; - } - } - - SetLastError(0); - return NULL; -} - -GLAPI PROC GLAPIENTRY -wglGetDefaultProcAddress (LPCSTR lpszProc) -{ - SetLastError(0); - return NULL; -} - -GLAPI BOOL GLAPIENTRY -wglMakeCurrent (HDC hdc, HGLRC hglrc) -{ - if ((hdc == NULL) && (hglrc == NULL)) - return TRUE; - - if (!ctx || hglrc != (HGLRC)1 || WindowFromDC(hdc) != hWND) { - SetLastError(0); - return FALSE; - } - - hDC = hdc; - - fxMesaMakeCurrent(ctx); - - return TRUE; -} - -GLAPI BOOL GLAPIENTRY -wglShareLists (HGLRC hglrc1, HGLRC hglrc2) -{ - if (!ctx || hglrc1 != (HGLRC)1 || hglrc1 != hglrc2) { - SetLastError(0); - return FALSE; - } - - return TRUE; -} - -static BOOL -wglUseFontBitmaps_FX (HDC fontDevice, DWORD firstChar, DWORD numChars, - DWORD listBase) -{ - TEXTMETRIC metric; - BITMAPINFO *dibInfo; - HDC bitDevice; - COLORREF tempColor; - int i; - - GetTextMetrics(fontDevice, &metric); - - dibInfo = (BITMAPINFO *)calloc(sizeof(BITMAPINFO) + sizeof(RGBQUAD), 1); - dibInfo->bmiHeader.biSize = sizeof(BITMAPINFOHEADER); - dibInfo->bmiHeader.biPlanes = 1; - dibInfo->bmiHeader.biBitCount = 1; - dibInfo->bmiHeader.biCompression = BI_RGB; - - bitDevice = CreateCompatibleDC(fontDevice); - - /* Swap fore and back colors so the bitmap has the right polarity */ - tempColor = GetBkColor(bitDevice); - SetBkColor(bitDevice, GetTextColor(bitDevice)); - SetTextColor(bitDevice, tempColor); - - /* Place chars based on base line */ - SetTextAlign(bitDevice, TA_BASELINE); - - for (i = 0; i < (int)numChars; i++) { - SIZE size; - char curChar; - int charWidth, charHeight, bmapWidth, bmapHeight, numBytes, res; - HBITMAP bitObject; - HGDIOBJ origBmap; - unsigned char *bmap; - - curChar = (char)(i + firstChar); /* [koolsmoky] explicit cast */ - - /* Find how high/wide this character is */ - GetTextExtentPoint32(bitDevice, &curChar, 1, &size); - - /* Create the output bitmap */ - charWidth = size.cx; - charHeight = size.cy; - bmapWidth = ((charWidth + 31) / 32) * 32; /* Round up to the next multiple of 32 bits */ - bmapHeight = charHeight; - bitObject = CreateCompatibleBitmap(bitDevice, bmapWidth, bmapHeight); - /*VERIFY(bitObject);*/ - - /* Assign the output bitmap to the device */ - origBmap = SelectObject(bitDevice, bitObject); - - PatBlt(bitDevice, 0, 0, bmapWidth, bmapHeight, BLACKNESS); - - /* Use our source font on the device */ - SelectObject(bitDevice, GetCurrentObject(fontDevice, OBJ_FONT)); - - /* Draw the character */ - TextOut(bitDevice, 0, metric.tmAscent, &curChar, 1); - - /* Unselect our bmap object */ - SelectObject(bitDevice, origBmap); - - /* Convert the display dependant representation to a 1 bit deep DIB */ - numBytes = (bmapWidth * bmapHeight) / 8; - bmap = MALLOC(numBytes); - dibInfo->bmiHeader.biWidth = bmapWidth; - dibInfo->bmiHeader.biHeight = bmapHeight; - res = GetDIBits(bitDevice, bitObject, 0, bmapHeight, bmap, - dibInfo, DIB_RGB_COLORS); - - /* Create the GL object */ - glNewList(i + listBase, GL_COMPILE); - glBitmap(bmapWidth, bmapHeight, 0.0, metric.tmDescent, - charWidth, 0.0, bmap); - glEndList(); - /* CheckGL(); */ - - /* Destroy the bmap object */ - DeleteObject(bitObject); - - /* Deallocate the bitmap data */ - FREE(bmap); - } - - /* Destroy the DC */ - DeleteDC(bitDevice); - - FREE(dibInfo); - - return TRUE; -} - -GLAPI BOOL GLAPIENTRY -wglUseFontBitmapsW (HDC hdc, DWORD first, DWORD count, DWORD listBase) -{ - return FALSE; -} - -GLAPI BOOL GLAPIENTRY -wglUseFontOutlinesA (HDC hdc, DWORD first, DWORD count, - DWORD listBase, FLOAT deviation, - FLOAT extrusion, int format, LPGLYPHMETRICSFLOAT lpgmf) -{ - SetLastError(0); - return FALSE; -} - -GLAPI BOOL GLAPIENTRY -wglUseFontOutlinesW (HDC hdc, DWORD first, DWORD count, - DWORD listBase, FLOAT deviation, - FLOAT extrusion, int format, LPGLYPHMETRICSFLOAT lpgmf) -{ - SetLastError(0); - return FALSE; -} - - -GLAPI BOOL GLAPIENTRY -wglSwapLayerBuffers (HDC hdc, UINT fuPlanes) -{ - if (ctx && WindowFromDC(hdc) == hWND) { - fxMesaSwapBuffers(); - - return TRUE; - } - - SetLastError(0); - return FALSE; -} - -static int -pfd_tablen (void) -{ - /* we should take an envvar for `fxMesaSelectCurrentBoard' */ - return (fxMesaSelectCurrentBoard(0) < GR_SSTTYPE_Voodoo4) - ? 2 /* only 16bit entries */ - : sizeof(pix) / sizeof(pix[0]); /* full table */ -} - -GLAPI int GLAPIENTRY -wglChoosePixelFormat (HDC hdc, const PIXELFORMATDESCRIPTOR *ppfd) -{ - int i, best = -1, qt_valid_pix; - PIXELFORMATDESCRIPTOR pfd = *ppfd; - - qt_valid_pix = pfd_tablen(); - -#if 1 || QUAKE2 || GORE - /* QUAKE2: 24+32 */ - /* GORE : 24+16 */ - if ((pfd.cColorBits == 24) || (pfd.cColorBits == 32)) { - /* the first 2 entries are 16bit */ - pfd.cColorBits = (qt_valid_pix > 2) ? 32 : 16; - } - if (pfd.cColorBits == 32) { - pfd.cDepthBits = 24; - } else if (pfd.cColorBits == 16) { - pfd.cDepthBits = 16; - } -#endif - - if (pfd.nSize != sizeof(PIXELFORMATDESCRIPTOR) || pfd.nVersion != 1) { - SetLastError(0); - return 0; - } - - for (i = 0; i < qt_valid_pix; i++) { - if (pfd.cColorBits > 0 && pix[i].pfd.cColorBits != pfd.cColorBits) - continue; - - if ((pfd.dwFlags & PFD_DRAW_TO_WINDOW) - && !(pix[i].pfd.dwFlags & PFD_DRAW_TO_WINDOW)) continue; - if ((pfd.dwFlags & PFD_DRAW_TO_BITMAP) - && !(pix[i].pfd.dwFlags & PFD_DRAW_TO_BITMAP)) continue; - if ((pfd.dwFlags & PFD_SUPPORT_GDI) - && !(pix[i].pfd.dwFlags & PFD_SUPPORT_GDI)) continue; - if ((pfd.dwFlags & PFD_SUPPORT_OPENGL) - && !(pix[i].pfd.dwFlags & PFD_SUPPORT_OPENGL)) continue; - if (!(pfd.dwFlags & PFD_DOUBLEBUFFER_DONTCARE) - && ((pfd.dwFlags & PFD_DOUBLEBUFFER) != - (pix[i].pfd.dwFlags & PFD_DOUBLEBUFFER))) continue; -#if 1 /* Doom3 fails here! */ - if (!(pfd.dwFlags & PFD_STEREO_DONTCARE) - && ((pfd.dwFlags & PFD_STEREO) != - (pix[i].pfd.dwFlags & PFD_STEREO))) continue; -#endif - - if (pfd.cDepthBits > 0 && pix[i].pfd.cDepthBits == 0) - continue; /* need depth buffer */ - - if (pfd.cAlphaBits > 0 && pix[i].pfd.cAlphaBits == 0) - continue; /* need alpha buffer */ - -#if 0 /* regression bug? */ - if (pfd.cStencilBits > 0 && pix[i].pfd.cStencilBits == 0) - continue; /* need stencil buffer */ -#endif - - if (pfd.iPixelType == pix[i].pfd.iPixelType) { - best = i + 1; - break; - } - } - - if (best == -1) { - FILE *err = fopen("MESA.LOG", "w"); - if (err != NULL) { - fprintf(err, "wglChoosePixelFormat failed\n"); - fprintf(err, "\tnSize = %d\n", ppfd->nSize); - fprintf(err, "\tnVersion = %d\n", ppfd->nVersion); - fprintf(err, "\tdwFlags = %lu\n", ppfd->dwFlags); - fprintf(err, "\tiPixelType = %d\n", ppfd->iPixelType); - fprintf(err, "\tcColorBits = %d\n", ppfd->cColorBits); - fprintf(err, "\tcRedBits = %d\n", ppfd->cRedBits); - fprintf(err, "\tcRedShift = %d\n", ppfd->cRedShift); - fprintf(err, "\tcGreenBits = %d\n", ppfd->cGreenBits); - fprintf(err, "\tcGreenShift = %d\n", ppfd->cGreenShift); - fprintf(err, "\tcBlueBits = %d\n", ppfd->cBlueBits); - fprintf(err, "\tcBlueShift = %d\n", ppfd->cBlueShift); - fprintf(err, "\tcAlphaBits = %d\n", ppfd->cAlphaBits); - fprintf(err, "\tcAlphaShift = %d\n", ppfd->cAlphaShift); - fprintf(err, "\tcAccumBits = %d\n", ppfd->cAccumBits); - fprintf(err, "\tcAccumRedBits = %d\n", ppfd->cAccumRedBits); - fprintf(err, "\tcAccumGreenBits = %d\n", ppfd->cAccumGreenBits); - fprintf(err, "\tcAccumBlueBits = %d\n", ppfd->cAccumBlueBits); - fprintf(err, "\tcAccumAlphaBits = %d\n", ppfd->cAccumAlphaBits); - fprintf(err, "\tcDepthBits = %d\n", ppfd->cDepthBits); - fprintf(err, "\tcStencilBits = %d\n", ppfd->cStencilBits); - fprintf(err, "\tcAuxBuffers = %d\n", ppfd->cAuxBuffers); - fprintf(err, "\tiLayerType = %d\n", ppfd->iLayerType); - fprintf(err, "\tbReserved = %d\n", ppfd->bReserved); - fprintf(err, "\tdwLayerMask = %lu\n", ppfd->dwLayerMask); - fprintf(err, "\tdwVisibleMask = %lu\n", ppfd->dwVisibleMask); - fprintf(err, "\tdwDamageMask = %lu\n", ppfd->dwDamageMask); - fclose(err); - } - - SetLastError(0); - return 0; - } - - return best; -} - -GLAPI int GLAPIENTRY -ChoosePixelFormat (HDC hdc, const PIXELFORMATDESCRIPTOR *ppfd) -{ - - return wglChoosePixelFormat(hdc, ppfd); -} - -GLAPI int GLAPIENTRY -wglDescribePixelFormat (HDC hdc, int iPixelFormat, UINT nBytes, - LPPIXELFORMATDESCRIPTOR ppfd) -{ - int qt_valid_pix; - - qt_valid_pix = pfd_tablen(); - - if (iPixelFormat < 1 || iPixelFormat > qt_valid_pix || - ((nBytes != sizeof(PIXELFORMATDESCRIPTOR)) && (nBytes != 0))) { - SetLastError(0); - return qt_valid_pix; - } - - if (nBytes != 0) - *ppfd = pix[iPixelFormat - 1].pfd; - - return qt_valid_pix; -} - -GLAPI int GLAPIENTRY -DescribePixelFormat (HDC hdc, int iPixelFormat, UINT nBytes, - LPPIXELFORMATDESCRIPTOR ppfd) -{ - return wglDescribePixelFormat(hdc, iPixelFormat, nBytes, ppfd); -} - -GLAPI int GLAPIENTRY -wglGetPixelFormat (HDC hdc) -{ - if (curPFD == 0) { - SetLastError(0); - return 0; - } - - return curPFD; -} - -GLAPI int GLAPIENTRY -GetPixelFormat (HDC hdc) -{ - return wglGetPixelFormat(hdc); -} - -GLAPI BOOL GLAPIENTRY -wglSetPixelFormat (HDC hdc, int iPixelFormat, const PIXELFORMATDESCRIPTOR *ppfd) -{ - int qt_valid_pix; - - qt_valid_pix = pfd_tablen(); - - if (iPixelFormat < 1 || iPixelFormat > qt_valid_pix) { - if (ppfd == NULL) { - PIXELFORMATDESCRIPTOR my_pfd; - if (!wglDescribePixelFormat(hdc, iPixelFormat, sizeof(PIXELFORMATDESCRIPTOR), &my_pfd)) { - SetLastError(0); - return FALSE; - } - } else if (ppfd->nSize != sizeof(PIXELFORMATDESCRIPTOR)) { - SetLastError(0); - return FALSE; - } - } - curPFD = iPixelFormat; - - return TRUE; -} - -GLAPI BOOL GLAPIENTRY -wglSwapBuffers (HDC hdc) -{ - if (!ctx) { - SetLastError(0); - return FALSE; - } - - fxMesaSwapBuffers(); - - return TRUE; -} - -GLAPI BOOL GLAPIENTRY -SetPixelFormat (HDC hdc, int iPixelFormat, const PIXELFORMATDESCRIPTOR *ppfd) -{ - return wglSetPixelFormat(hdc, iPixelFormat, ppfd); -} - -GLAPI BOOL GLAPIENTRY -SwapBuffers(HDC hdc) -{ - return wglSwapBuffers(hdc); -} - -static FIXED -FixedFromDouble (double d) -{ - struct { - FIXED f; - long l; - } pun; - pun.l = (long)(d * 65536L); - return pun.f; -} - -/* -** This was yanked from windows/gdi/wgl.c -*/ -GLAPI BOOL GLAPIENTRY -wglUseFontBitmapsA (HDC hdc, DWORD first, DWORD count, DWORD listBase) -{ - int i; - GLuint font_list; - DWORD size; - GLYPHMETRICS gm; - HANDLE hBits; - LPSTR lpBits; - MAT2 mat; - int success = TRUE; - - font_list = listBase; - - mat.eM11 = FixedFromDouble(1); - mat.eM12 = FixedFromDouble(0); - mat.eM21 = FixedFromDouble(0); - mat.eM22 = FixedFromDouble(-1); - - memset(&gm, 0, sizeof(gm)); - - /* - ** If we can't get the glyph outline, it may be because this is a fixed - ** font. Try processing it that way. - */ - if (GetGlyphOutline(hdc, first, GGO_BITMAP, &gm, 0, NULL, &mat) == GDI_ERROR) { - return wglUseFontBitmaps_FX(hdc, first, count, listBase); - } - - /* - ** Otherwise process all desired characters. - */ - for (i = 0; i < count; i++) { - DWORD err; - - glNewList(font_list + i, GL_COMPILE); - - /* allocate space for the bitmap/outline */ - size = GetGlyphOutline(hdc, first + i, GGO_BITMAP, &gm, 0, NULL, &mat); - if (size == GDI_ERROR) { - glEndList(); - err = GetLastError(); - success = FALSE; - continue; - } - - hBits = GlobalAlloc(GHND, size + 1); - lpBits = GlobalLock(hBits); - - err = GetGlyphOutline(hdc, /* handle to device context */ - first + i, /* character to query */ - GGO_BITMAP, /* format of data to return */ - &gm, /* pointer to structure for metrics */ - size, /* size of buffer for data */ - lpBits, /* pointer to buffer for data */ - &mat /* pointer to transformation */ - /* matrix structure */ - ); - - if (err == GDI_ERROR) { - GlobalUnlock(hBits); - GlobalFree(hBits); - - glEndList(); - err = GetLastError(); - success = FALSE; - continue; - } - - glBitmap(gm.gmBlackBoxX, gm.gmBlackBoxY, - -gm.gmptGlyphOrigin.x, - gm.gmptGlyphOrigin.y, - gm.gmCellIncX, gm.gmCellIncY, - (const GLubyte *)lpBits); - - GlobalUnlock(hBits); - GlobalFree(hBits); - - glEndList(); - } - - return success; -} - -GLAPI BOOL GLAPIENTRY -wglDescribeLayerPlane (HDC hdc, int iPixelFormat, int iLayerPlane, - UINT nBytes, LPLAYERPLANEDESCRIPTOR ppfd) -{ - SetLastError(0); - return FALSE; -} - -GLAPI int GLAPIENTRY -wglGetLayerPaletteEntries (HDC hdc, int iLayerPlane, int iStart, - int cEntries, COLORREF *pcr) -{ - SetLastError(0); - return FALSE; -} - -GLAPI BOOL GLAPIENTRY -wglRealizeLayerPalette (HDC hdc, int iLayerPlane, BOOL bRealize) -{ - SetLastError(0); - return FALSE; -} - -GLAPI int GLAPIENTRY -wglSetLayerPaletteEntries (HDC hdc, int iLayerPlane, int iStart, - int cEntries, CONST COLORREF *pcr) -{ - SetLastError(0); - return FALSE; -} - - -/*************************************************************************** - * [dBorca] simplistic ICD implementation, based on ICD code by Gregor Anich - */ - -typedef struct _icdTable { - DWORD size; - PROC table[336]; -} ICDTABLE, *PICDTABLE; - -#ifdef USE_MGL_NAMESPACE -#define GL_FUNC(func) mgl##func -#else -#define GL_FUNC(func) gl##func -#endif - -static ICDTABLE icdTable = { 336, { -#define ICD_ENTRY(func) (PROC)GL_FUNC(func), -#include "../icd/icdlist.h" -#undef ICD_ENTRY -} }; - - -GLAPI BOOL GLAPIENTRY -DrvCopyContext (HGLRC hglrcSrc, HGLRC hglrcDst, UINT mask) -{ - return wglCopyContext(hglrcSrc, hglrcDst, mask); -} - - -GLAPI HGLRC GLAPIENTRY -DrvCreateContext (HDC hdc) -{ - return wglCreateContext(hdc); -} - - -GLAPI BOOL GLAPIENTRY -DrvDeleteContext (HGLRC hglrc) -{ - return wglDeleteContext(hglrc); -} - - -GLAPI HGLRC GLAPIENTRY -DrvCreateLayerContext (HDC hdc, int iLayerPlane) -{ - return wglCreateContext(hdc); -} - - -GLAPI PICDTABLE GLAPIENTRY -DrvSetContext (HDC hdc, HGLRC hglrc, void *callback) -{ - return wglMakeCurrent(hdc, hglrc) ? &icdTable : NULL; -} - - -GLAPI BOOL GLAPIENTRY -DrvReleaseContext (HGLRC hglrc) -{ - return TRUE; -} - - -GLAPI BOOL GLAPIENTRY -DrvShareLists (HGLRC hglrc1, HGLRC hglrc2) -{ - return wglShareLists(hglrc1, hglrc2); -} - - -GLAPI BOOL GLAPIENTRY -DrvDescribeLayerPlane (HDC hdc, int iPixelFormat, - int iLayerPlane, UINT nBytes, - LPLAYERPLANEDESCRIPTOR plpd) -{ - return wglDescribeLayerPlane(hdc, iPixelFormat, iLayerPlane, nBytes, plpd); -} - - -GLAPI int GLAPIENTRY -DrvSetLayerPaletteEntries (HDC hdc, int iLayerPlane, - int iStart, int cEntries, CONST COLORREF *pcr) -{ - return wglSetLayerPaletteEntries(hdc, iLayerPlane, iStart, cEntries, pcr); -} - - -GLAPI int GLAPIENTRY -DrvGetLayerPaletteEntries (HDC hdc, int iLayerPlane, - int iStart, int cEntries, COLORREF *pcr) -{ - return wglGetLayerPaletteEntries(hdc, iLayerPlane, iStart, cEntries, pcr); -} - - -GLAPI BOOL GLAPIENTRY -DrvRealizeLayerPalette (HDC hdc, int iLayerPlane, BOOL bRealize) -{ - return wglRealizeLayerPalette(hdc, iLayerPlane, bRealize); -} - - -GLAPI BOOL GLAPIENTRY -DrvSwapLayerBuffers (HDC hdc, UINT fuPlanes) -{ - return wglSwapLayerBuffers(hdc, fuPlanes); -} - -GLAPI int GLAPIENTRY -DrvDescribePixelFormat (HDC hdc, int iPixelFormat, UINT nBytes, - LPPIXELFORMATDESCRIPTOR ppfd) -{ - return wglDescribePixelFormat(hdc, iPixelFormat, nBytes, ppfd); -} - - -GLAPI PROC GLAPIENTRY -DrvGetProcAddress (LPCSTR lpszProc) -{ - return wglGetProcAddress(lpszProc); -} - - -GLAPI BOOL GLAPIENTRY -DrvSetPixelFormat (HDC hdc, int iPixelFormat) -{ - return wglSetPixelFormat(hdc, iPixelFormat, NULL); -} - - -GLAPI BOOL GLAPIENTRY -DrvSwapBuffers (HDC hdc) -{ - return wglSwapBuffers(hdc); -} - - -GLAPI BOOL GLAPIENTRY -DrvValidateVersion (DWORD version) -{ - (void)version; - return TRUE; -} - - -#if (_MSC_VER >= 1200) -#pragma warning( pop ) -#endif - -#endif /* FX */ diff --git a/src/mesa/drivers/windows/gdi/InitCritSections.cpp b/src/mesa/drivers/windows/gdi/InitCritSections.cpp deleted file mode 100644 index 69f03b8e47c..00000000000 --- a/src/mesa/drivers/windows/gdi/InitCritSections.cpp +++ /dev/null @@ -1,33 +0,0 @@ -#include "glapi.h" -#include "glThread.h" - -#ifdef WIN32 - -extern "C" _glthread_Mutex OneTimeLock; -extern "C" _glthread_Mutex GenTexturesLock; - -extern "C" void FreeAllTSD(void); - -class _CriticalSectionInit -{ -public: - static _CriticalSectionInit m_inst; - - _CriticalSectionInit() - { - _glthread_INIT_MUTEX(OneTimeLock); - _glthread_INIT_MUTEX(GenTexturesLock); - } - - ~_CriticalSectionInit() - { - _glthread_DESTROY_MUTEX(OneTimeLock); - _glthread_DESTROY_MUTEX(GenTexturesLock); - FreeAllTSD(); - } -}; - -_CriticalSectionInit _CriticalSectionInit::m_inst; - - -#endif /* WIN32 */ diff --git a/src/mesa/drivers/windows/gdi/wgl.c b/src/mesa/drivers/windows/gdi/wgl.c index 1dafe6e2952..bf4ca9c908f 100644 --- a/src/mesa/drivers/windows/gdi/wgl.c +++ b/src/mesa/drivers/windows/gdi/wgl.c @@ -390,7 +390,7 @@ static FIXED FixedFromDouble(double d) static BOOL wglUseFontBitmaps_FX(HDC fontDevice, DWORD firstChar, DWORD numChars, DWORD listBase) { -#define VERIFY(a) a +#define VERIFY(a) (void)(a) TEXTMETRIC metric; BITMAPINFO *dibInfo; diff --git a/src/mesa/drivers/windows/gdi/wmesa.c b/src/mesa/drivers/windows/gdi/wmesa.c index e3a37eb1ace..35a150d0687 100644 --- a/src/mesa/drivers/windows/gdi/wmesa.c +++ b/src/mesa/drivers/windows/gdi/wmesa.c @@ -5,7 +5,7 @@ #include "wmesadef.h" #include "colors.h" -#include <GL/wmesa.h> +#include "GL/wmesa.h" #include <winuser.h> #include "main/context.h" #include "main/extensions.h" @@ -30,7 +30,7 @@ static WMesaFramebuffer FirstFramebuffer = NULL; * Create a new WMesaFramebuffer object which will correspond to the * given HDC (Window handle). */ -WMesaFramebuffer +static WMesaFramebuffer wmesa_new_framebuffer(HDC hdc, struct gl_config *visual) { WMesaFramebuffer pwfb @@ -48,7 +48,7 @@ wmesa_new_framebuffer(HDC hdc, struct gl_config *visual) /** * Given an hdc, free the corresponding WMesaFramebuffer */ -void +static void wmesa_free_framebuffer(HDC hdc) { WMesaFramebuffer pwfb, prev; @@ -71,7 +71,7 @@ wmesa_free_framebuffer(HDC hdc) /** * Given an hdc, return the corresponding WMesaFramebuffer */ -WMesaFramebuffer +static WMesaFramebuffer wmesa_lookup_framebuffer(HDC hdc) { WMesaFramebuffer pwfb; @@ -147,9 +147,8 @@ static void wmSetPixelFormat(WMesaFramebuffer pwfb, HDC hDC) * We write into this memory with the span routines and then blit it * to the window on a buffer swap. */ -BOOL wmCreateBackingStore(WMesaFramebuffer pwfb, long lxSize, long lySize) +static BOOL wmCreateBackingStore(WMesaFramebuffer pwfb, long lxSize, long lySize) { - HDC hdc = pwfb->hDC; LPBITMAPINFO pbmi = &(pwfb->bmi); HDC hic; @@ -227,7 +226,6 @@ wmesa_get_buffer_size(struct gl_framebuffer *buffer, GLuint *width, GLuint *heig static void wmesa_flush(struct gl_context *ctx) { - WMesaContext pwc = wmesa_context(ctx); WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->WinSysDrawBuffer); if (ctx->Visual.doubleBufferMode == 1) { @@ -254,9 +252,7 @@ static void wmesa_flush(struct gl_context *ctx) static void clear_color(struct gl_context *ctx, const GLfloat color[4]) { WMesaContext pwc = wmesa_context(ctx); - WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); GLubyte col[3]; - UINT bytesPerPixel = pwfb->cColorBits / 8; CLAMPED_FLOAT_TO_UBYTE(col[0], color[0]); CLAMPED_FLOAT_TO_UBYTE(col[1], color[1]); @@ -448,21 +444,15 @@ static void clear(struct gl_context *ctx, GLbitfield mask) **/ /* Write a horizontal span of RGBA color pixels with a boolean mask. */ -static void write_rgba_span_front(const struct gl_context *ctx, - struct gl_renderbuffer *rb, - GLuint n, GLint x, GLint y, - const GLubyte rgba[][4], - const GLubyte mask[] ) +static void write_rgba_span_front(struct gl_context *ctx, + struct gl_renderbuffer *rb, + GLuint n, GLint x, GLint y, + const void *values, + const GLubyte *mask) { + const GLubyte (*rgba)[4] = (const GLubyte (*)[4])values; WMesaContext pwc = wmesa_context(ctx); WMesaFramebuffer pwfb = wmesa_lookup_framebuffer(pwc->hDC); - CONST BITMAPINFO bmi= - { - { - sizeof(BITMAPINFOHEADER), - n, 1, 1, 32, BI_RGB, 0, 1, 1, 0, 0 - } - }; HBITMAP bmp=0; HDC mdc=0; typedef union @@ -535,12 +525,13 @@ static void write_rgba_span_front(const struct gl_context *ctx, } /* Write a horizontal span of RGB color pixels with a boolean mask. */ -static void write_rgb_span_front(const struct gl_context *ctx, - struct gl_renderbuffer *rb, - GLuint n, GLint x, GLint y, - const GLubyte rgb[][3], - const GLubyte mask[] ) +static void write_rgb_span_front(struct gl_context *ctx, + struct gl_renderbuffer *rb, + GLuint n, GLint x, GLint y, + const void *values, + const GLubyte *mask) { + const GLubyte (*rgb)[3] = (const GLubyte (*)[3])values; WMesaContext pwc = wmesa_context(ctx); GLuint i; @@ -564,12 +555,13 @@ static void write_rgb_span_front(const struct gl_context *ctx, * Write a horizontal span of pixels with a boolean mask. The current color * is used for all pixels. */ -static void write_mono_rgba_span_front(const struct gl_context *ctx, - struct gl_renderbuffer *rb, - GLuint n, GLint x, GLint y, - const GLchan color[4], - const GLubyte mask[]) +static void write_mono_rgba_span_front(struct gl_context *ctx, + struct gl_renderbuffer *rb, + GLuint n, GLint x, GLint y, + const void *value, + const GLubyte *mask) { + const GLchan *color = (const GLchan *)value; GLuint i; WMesaContext pwc = wmesa_context(ctx); COLORREF colorref; @@ -589,13 +581,14 @@ static void write_mono_rgba_span_front(const struct gl_context *ctx, } /* Write an array of RGBA pixels with a boolean mask. */ -static void write_rgba_pixels_front(const struct gl_context *ctx, - struct gl_renderbuffer *rb, - GLuint n, - const GLint x[], const GLint y[], - const GLubyte rgba[][4], - const GLubyte mask[] ) +static void write_rgba_pixels_front(struct gl_context *ctx, + struct gl_renderbuffer *rb, + GLuint n, + const GLint x[], const GLint y[], + const void *values, + const GLubyte *mask) { + const GLubyte (*rgba)[4] = (const GLubyte (*)[4])values; GLuint i; WMesaContext pwc = wmesa_context(ctx); (void) ctx; @@ -612,13 +605,14 @@ static void write_rgba_pixels_front(const struct gl_context *ctx, * Write an array of pixels with a boolean mask. The current color * is used for all pixels. */ -static void write_mono_rgba_pixels_front(const struct gl_context *ctx, - struct gl_renderbuffer *rb, - GLuint n, - const GLint x[], const GLint y[], - const GLchan color[4], - const GLubyte mask[] ) +static void write_mono_rgba_pixels_front(struct gl_context *ctx, + struct gl_renderbuffer *rb, + GLuint n, + const GLint x[], const GLint y[], + const void *value, + const GLubyte *mask) { + const GLchan *color = (const GLchan *)value; GLuint i; WMesaContext pwc = wmesa_context(ctx); COLORREF colorref; @@ -630,11 +624,12 @@ static void write_mono_rgba_pixels_front(const struct gl_context *ctx, } /* Read a horizontal span of color pixels. */ -static void read_rgba_span_front(const struct gl_context *ctx, - struct gl_renderbuffer *rb, - GLuint n, GLint x, GLint y, - GLubyte rgba[][4] ) +static void read_rgba_span_front(struct gl_context *ctx, + struct gl_renderbuffer *rb, + GLuint n, GLint x, GLint y, + void *values) { + GLubyte (*rgba)[4] = (GLubyte (*)[4])values; WMesaContext pwc = wmesa_context(ctx); GLuint i; COLORREF Color; @@ -650,11 +645,12 @@ static void read_rgba_span_front(const struct gl_context *ctx, /* Read an array of color pixels. */ -static void read_rgba_pixels_front(const struct gl_context *ctx, - struct gl_renderbuffer *rb, - GLuint n, const GLint x[], const GLint y[], - GLubyte rgba[][4]) +static void read_rgba_pixels_front(struct gl_context *ctx, + struct gl_renderbuffer *rb, + GLuint n, const GLint x[], const GLint y[], + void *values) { + GLubyte (*rgba)[4] = (GLubyte (*)[4])values; WMesaContext pwc = wmesa_context(ctx); GLuint i; COLORREF Color; @@ -679,13 +675,13 @@ LPDWORD lpdw = ((LPDWORD)((pwc)->pbPixels + (pwc)->ScanWidth * (y)) + (x)); \ /* Write a horizontal span of RGBA color pixels with a boolean mask. */ -static void write_rgba_span_32(const struct gl_context *ctx, +static void write_rgba_span_32(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, GLint x, GLint y, - const GLubyte rgba[][4], - const GLubyte mask[] ) + const void *values, + const GLubyte *mask) { - WMesaContext pwc = wmesa_context(ctx); + const GLubyte (*rgba)[4] = (const GLubyte (*)[4])values; WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); GLuint i; LPDWORD lpdw; @@ -709,13 +705,13 @@ static void write_rgba_span_32(const struct gl_context *ctx, /* Write a horizontal span of RGB color pixels with a boolean mask. */ -static void write_rgb_span_32(const struct gl_context *ctx, +static void write_rgb_span_32(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, GLint x, GLint y, - const GLubyte rgb[][3], - const GLubyte mask[] ) + const void *values, + const GLubyte *mask) { - WMesaContext pwc = wmesa_context(ctx); + const GLubyte (*rgb)[3] = (const GLubyte (*)[3])values; WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); GLuint i; LPDWORD lpdw; @@ -741,16 +737,16 @@ static void write_rgb_span_32(const struct gl_context *ctx, * Write a horizontal span of pixels with a boolean mask. The current color * is used for all pixels. */ -static void write_mono_rgba_span_32(const struct gl_context *ctx, +static void write_mono_rgba_span_32(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, GLint x, GLint y, - const GLchan color[4], - const GLubyte mask[]) + const void *value, + const GLubyte *mask) { + const GLchan *color = (const GLchan *)value; LPDWORD lpdw; DWORD pixel; GLuint i; - WMesaContext pwc = wmesa_context(ctx); WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); lpdw = ((LPDWORD)(pwfb->pbPixels + pwfb->ScanWidth * y)) + x; y=FLIP(y); @@ -767,14 +763,14 @@ static void write_mono_rgba_span_32(const struct gl_context *ctx, } /* Write an array of RGBA pixels with a boolean mask. */ -static void write_rgba_pixels_32(const struct gl_context *ctx, +static void write_rgba_pixels_32(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, const GLint x[], const GLint y[], - const GLubyte rgba[][4], - const GLubyte mask[]) + const void *values, + const GLubyte *mask) { + const GLubyte (*rgba)[4] = (const GLubyte (*)[4])values; GLuint i; - WMesaContext pwc = wmesa_context(ctx); WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); for (i=0; i<n; i++) if (mask[i]) @@ -786,15 +782,15 @@ static void write_rgba_pixels_32(const struct gl_context *ctx, * Write an array of pixels with a boolean mask. The current color * is used for all pixels. */ -static void write_mono_rgba_pixels_32(const struct gl_context *ctx, +static void write_mono_rgba_pixels_32(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, const GLint x[], const GLint y[], - const GLchan color[4], - const GLubyte mask[]) + const void *value, + const GLubyte *mask) { + const GLchan *color = (const GLchan *)value; GLuint i; - WMesaContext pwc = wmesa_context(ctx); WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); for (i=0; i<n; i++) if (mask[i]) @@ -803,15 +799,15 @@ static void write_mono_rgba_pixels_32(const struct gl_context *ctx, } /* Read a horizontal span of color pixels. */ -static void read_rgba_span_32(const struct gl_context *ctx, +static void read_rgba_span_32(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, GLint x, GLint y, - GLubyte rgba[][4] ) + void *values) { + GLubyte (*rgba)[4] = (GLubyte (*)[4])values; GLuint i; DWORD pixel; LPDWORD lpdw; - WMesaContext pwc = wmesa_context(ctx); WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); y = FLIP(y); @@ -827,15 +823,15 @@ static void read_rgba_span_32(const struct gl_context *ctx, /* Read an array of color pixels. */ -static void read_rgba_pixels_32(const struct gl_context *ctx, +static void read_rgba_pixels_32(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, const GLint x[], const GLint y[], - GLubyte rgba[][4]) + void *values) { + GLubyte (*rgba)[4] = (GLubyte (*)[4])values; GLuint i; DWORD pixel; LPDWORD lpdw; - WMesaContext pwc = wmesa_context(ctx); WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); for (i=0; i<n; i++) { @@ -861,13 +857,13 @@ lpb[1] = (g); \ lpb[2] = (r); } /* Write a horizontal span of RGBA color pixels with a boolean mask. */ -static void write_rgba_span_24(const struct gl_context *ctx, +static void write_rgba_span_24(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, GLint x, GLint y, - const GLubyte rgba[][4], - const GLubyte mask[] ) + const void *values, + const GLubyte *mask) { - WMesaContext pwc = wmesa_context(ctx); + const GLubyte (*rgba)[4] = (const GLubyte (*)[4])values; WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); GLuint i; LPBYTE lpb; @@ -895,13 +891,13 @@ static void write_rgba_span_24(const struct gl_context *ctx, /* Write a horizontal span of RGB color pixels with a boolean mask. */ -static void write_rgb_span_24(const struct gl_context *ctx, +static void write_rgb_span_24(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, GLint x, GLint y, - const GLubyte rgb[][3], - const GLubyte mask[] ) + const void *values, + const GLubyte *mask) { - WMesaContext pwc = wmesa_context(ctx); + const GLubyte (*rgb)[3] = (const GLubyte (*)[3])values; WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); GLuint i; LPBYTE lpb; @@ -931,15 +927,15 @@ static void write_rgb_span_24(const struct gl_context *ctx, * Write a horizontal span of pixels with a boolean mask. The current color * is used for all pixels. */ -static void write_mono_rgba_span_24(const struct gl_context *ctx, +static void write_mono_rgba_span_24(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, GLint x, GLint y, - const GLchan color[4], - const GLubyte mask[]) + const void *value, + const GLubyte *mask) { + const GLchan *color = (const GLchan *)value; LPBYTE lpb; GLuint i; - WMesaContext pwc = wmesa_context(ctx); WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); lpb = ((LPBYTE)(pwfb->pbPixels + pwfb->ScanWidth * y)) + (3 * x); y=FLIP(y); @@ -960,14 +956,14 @@ static void write_mono_rgba_span_24(const struct gl_context *ctx, } /* Write an array of RGBA pixels with a boolean mask. */ -static void write_rgba_pixels_24(const struct gl_context *ctx, +static void write_rgba_pixels_24(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, const GLint x[], const GLint y[], - const GLubyte rgba[][4], - const GLubyte mask[]) + const void *values, + const GLubyte *mask) { + const GLubyte (*rgba)[4] = (const GLubyte (*)[4])values; GLuint i; - WMesaContext pwc = wmesa_context(ctx); WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); for (i=0; i<n; i++) if (mask[i]) @@ -979,15 +975,15 @@ static void write_rgba_pixels_24(const struct gl_context *ctx, * Write an array of pixels with a boolean mask. The current color * is used for all pixels. */ -static void write_mono_rgba_pixels_24(const struct gl_context *ctx, +static void write_mono_rgba_pixels_24(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, const GLint x[], const GLint y[], - const GLchan color[4], - const GLubyte mask[]) + const void *value, + const GLubyte *mask) { + const GLchan *color = (const GLchan *)value; GLuint i; - WMesaContext pwc = wmesa_context(ctx); WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); for (i=0; i<n; i++) if (mask[i]) @@ -996,14 +992,14 @@ static void write_mono_rgba_pixels_24(const struct gl_context *ctx, } /* Read a horizontal span of color pixels. */ -static void read_rgba_span_24(const struct gl_context *ctx, +static void read_rgba_span_24(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, GLint x, GLint y, - GLubyte rgba[][4] ) + void *values) { + GLubyte (*rgba)[4] = (GLubyte (*)[4])values; GLuint i; LPBYTE lpb; - WMesaContext pwc = wmesa_context(ctx); WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); y = FLIP(y); @@ -1018,14 +1014,14 @@ static void read_rgba_span_24(const struct gl_context *ctx, /* Read an array of color pixels. */ -static void read_rgba_pixels_24(const struct gl_context *ctx, +static void read_rgba_pixels_24(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, const GLint x[], const GLint y[], - GLubyte rgba[][4]) + void *values) { + GLubyte (*rgba)[4] = (GLubyte (*)[4])values; GLuint i; LPBYTE lpb; - WMesaContext pwc = wmesa_context(ctx); WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); for (i=0; i<n; i++) { @@ -1050,13 +1046,13 @@ LPWORD lpw = ((LPWORD)((pwc)->pbPixels + (pwc)->ScanWidth * (y)) + (x)); \ /* Write a horizontal span of RGBA color pixels with a boolean mask. */ -static void write_rgba_span_16(const struct gl_context *ctx, +static void write_rgba_span_16(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, GLint x, GLint y, - const GLubyte rgba[][4], - const GLubyte mask[] ) + const void *values, + const GLubyte *mask) { - WMesaContext pwc = wmesa_context(ctx); + const GLubyte (*rgba)[4] = (const GLubyte (*)[4])values; WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); GLuint i; LPWORD lpw; @@ -1080,13 +1076,13 @@ static void write_rgba_span_16(const struct gl_context *ctx, /* Write a horizontal span of RGB color pixels with a boolean mask. */ -static void write_rgb_span_16(const struct gl_context *ctx, +static void write_rgb_span_16(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, GLint x, GLint y, - const GLubyte rgb[][3], - const GLubyte mask[] ) + const void *values, + const GLubyte *mask) { - WMesaContext pwc = wmesa_context(ctx); + const GLubyte (*rgb)[3] = (const GLubyte (*)[3])values; WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); GLuint i; LPWORD lpw; @@ -1112,16 +1108,16 @@ static void write_rgb_span_16(const struct gl_context *ctx, * Write a horizontal span of pixels with a boolean mask. The current color * is used for all pixels. */ -static void write_mono_rgba_span_16(const struct gl_context *ctx, +static void write_mono_rgba_span_16(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, GLint x, GLint y, - const GLchan color[4], - const GLubyte mask[]) + const void *value, + const GLubyte *mask) { + const GLchan *color = (const GLchan *)value; LPWORD lpw; WORD pixel; GLuint i; - WMesaContext pwc = wmesa_context(ctx); WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); (void) ctx; lpw = ((LPWORD)(pwfb->pbPixels + pwfb->ScanWidth * y)) + x; @@ -1139,14 +1135,14 @@ static void write_mono_rgba_span_16(const struct gl_context *ctx, } /* Write an array of RGBA pixels with a boolean mask. */ -static void write_rgba_pixels_16(const struct gl_context *ctx, +static void write_rgba_pixels_16(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, const GLint x[], const GLint y[], - const GLubyte rgba[][4], - const GLubyte mask[]) + const void *values, + const GLubyte *mask) { + const GLubyte (*rgba)[4] = (const GLubyte (*)[4])values; GLuint i; - WMesaContext pwc = wmesa_context(ctx); WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); (void) ctx; for (i=0; i<n; i++) @@ -1159,15 +1155,15 @@ static void write_rgba_pixels_16(const struct gl_context *ctx, * Write an array of pixels with a boolean mask. The current color * is used for all pixels. */ -static void write_mono_rgba_pixels_16(const struct gl_context *ctx, +static void write_mono_rgba_pixels_16(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, const GLint x[], const GLint y[], - const GLchan color[4], - const GLubyte mask[]) + const void *value, + const GLubyte *mask) { + const GLchan *color = (const GLchan *)value; GLuint i; - WMesaContext pwc = wmesa_context(ctx); WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); (void) ctx; for (i=0; i<n; i++) @@ -1177,14 +1173,14 @@ static void write_mono_rgba_pixels_16(const struct gl_context *ctx, } /* Read a horizontal span of color pixels. */ -static void read_rgba_span_16(const struct gl_context *ctx, +static void read_rgba_span_16(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, GLint x, GLint y, - GLubyte rgba[][4] ) + void *values) { + GLubyte (*rgba)[4] = (GLubyte (*)[4])values; GLuint i, pixel; LPWORD lpw; - WMesaContext pwc = wmesa_context(ctx); WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); y = FLIP(y); @@ -1201,14 +1197,14 @@ static void read_rgba_span_16(const struct gl_context *ctx, /* Read an array of color pixels. */ -static void read_rgba_pixels_16(const struct gl_context *ctx, +static void read_rgba_pixels_16(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint n, const GLint x[], const GLint y[], - GLubyte rgba[][4]) + void *values) { + GLubyte (*rgba)[4] = (GLubyte (*)[4])values; GLuint i, pixel; LPWORD lpw; - WMesaContext pwc = wmesa_context(ctx); WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); for (i=0; i<n; i++) { @@ -1261,8 +1257,9 @@ wmesa_renderbuffer_storage(struct gl_context *ctx, * Plug in the Get/PutRow/Values functions for a renderbuffer depending * on if we're drawing to the front or back color buffer. */ -void wmesa_set_renderbuffer_funcs(struct gl_renderbuffer *rb, int pixelformat, - int cColorBits, int double_buffer) +static void +wmesa_set_renderbuffer_funcs(struct gl_renderbuffer *rb, int pixelformat, + int cColorBits, int double_buffer) { if (double_buffer) { /* back buffer */ @@ -1324,7 +1321,6 @@ static void wmesa_resize_buffers(struct gl_context *ctx, struct gl_framebuffer *buffer, GLuint width, GLuint height) { - WMesaContext pwc = wmesa_context(ctx); WMesaFramebuffer pwfb = wmesa_framebuffer(buffer); if (pwfb->Base.Width != width || pwfb->Base.Height != height) { @@ -1353,7 +1349,6 @@ static void wmesa_viewport(struct gl_context *ctx, GLint x, GLint y, GLsizei width, GLsizei height) { - WMesaContext pwc = wmesa_context(ctx); GLuint new_width, new_height; wmesa_get_buffer_size(ctx->WinSysDrawBuffer, &new_width, &new_height); @@ -1553,7 +1548,7 @@ void WMesaDestroyContext( WMesaContext pwc ) /** * Create a new color renderbuffer. */ -struct gl_renderbuffer * +static struct gl_renderbuffer * wmesa_new_renderbuffer(void) { struct gl_renderbuffer *rb = CALLOC_STRUCT(gl_renderbuffer); diff --git a/src/mesa/drivers/windows/gdi/wmesadef.h b/src/mesa/drivers/windows/gdi/wmesadef.h index 32289ebc700..9fda8839014 100644 --- a/src/mesa/drivers/windows/gdi/wmesadef.h +++ b/src/mesa/drivers/windows/gdi/wmesadef.h @@ -1,8 +1,8 @@ #ifndef WMESADEF_H #define WMESADEF_H -#ifdef __MINGW32__ + #include <windows.h> -#endif + #include "main/context.h" diff --git a/src/mesa/drivers/x11/xm_dd.c b/src/mesa/drivers/x11/xm_dd.c index 3031b7b3273..81f48f9d95a 100644 --- a/src/mesa/drivers/x11/xm_dd.c +++ b/src/mesa/drivers/x11/xm_dd.c @@ -445,11 +445,11 @@ xmesa_DrawPixels_8R8G8B( struct gl_context *ctx, if (swrast->NewState) _swrast_validate_derived( ctx ); - if (unpack->BufferObj->Name) { + if (_mesa_is_bufferobj(unpack->BufferObj)) { /* unpack from PBO */ GLubyte *buf; if (!_mesa_validate_pbo_access(2, unpack, width, height, 1, - format, type, pixels)) { + format, type, INT_MAX, pixels)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glDrawPixels(invalid PBO access)"); return; @@ -507,7 +507,7 @@ xmesa_DrawPixels_8R8G8B( struct gl_context *ctx, XPutImage(dpy, xrb->pixmap, gc, &ximage, 0, 0, dstX, dstY, w, h); } - if (unpack->BufferObj->Name) { + if (_mesa_is_bufferobj(unpack->BufferObj)) { ctx->Driver.UnmapBuffer(ctx, GL_PIXEL_UNPACK_BUFFER_EXT, unpack->BufferObj); } @@ -580,11 +580,11 @@ xmesa_DrawPixels_5R6G5B( struct gl_context *ctx, if (swrast->NewState) _swrast_validate_derived( ctx ); - if (unpack->BufferObj->Name) { + if (_mesa_is_bufferobj(unpack->BufferObj)) { /* unpack from PBO */ GLubyte *buf; if (!_mesa_validate_pbo_access(2, unpack, width, height, 1, - format, type, pixels)) { + format, type, INT_MAX, pixels)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glDrawPixels(invalid PBO access)"); return; diff --git a/src/mesa/main/.gitignore b/src/mesa/main/.gitignore index 391c334ab71..2575f44df4a 100644 --- a/src/mesa/main/.gitignore +++ b/src/mesa/main/.gitignore @@ -2,3 +2,5 @@ api_exec_es1.c api_exec_es2.c get_es1.c get_es2.c +git_sha1.h +git_sha1.h.tmp diff --git a/src/mesa/main/api_exec.c b/src/mesa/main/api_exec.c index d0298df20cb..93214dd0ba6 100644 --- a/src/mesa/main/api_exec.c +++ b/src/mesa/main/api_exec.c @@ -502,6 +502,9 @@ _mesa_create_exec_table(void) SET_CompressedTexSubImage2DARB(exec, _mesa_CompressedTexSubImage2DARB); SET_CompressedTexSubImage1DARB(exec, _mesa_CompressedTexSubImage1DARB); SET_GetCompressedTexImageARB(exec, _mesa_GetCompressedTexImageARB); + + /* ARB 104. GL_ARB_robustness */ + SET_GetnCompressedTexImageARB(exec, _mesa_GetnCompressedTexImageARB); #endif /* ARB 14. GL_ARB_point_parameters */ @@ -597,6 +600,12 @@ _mesa_create_exec_table(void) SET_DrawBuffersARB(exec, _mesa_DrawBuffersARB); #endif + /* ARB 104. GL_ARB_robustness */ + SET_GetGraphicsResetStatusARB(exec, _mesa_GetGraphicsResetStatusARB); + SET_GetnPolygonStippleARB(exec, _mesa_GetnPolygonStippleARB); + SET_GetnTexImageARB(exec, _mesa_GetnTexImageARB); + SET_ReadnPixelsARB(exec, _mesa_ReadnPixelsARB); + /* GL_ARB_sync */ _mesa_init_sync_dispatch(exec); diff --git a/src/mesa/main/colortab.c b/src/mesa/main/colortab.c index 35b3096f650..ddb0f1f6579 100644 --- a/src/mesa/main/colortab.c +++ b/src/mesa/main/colortab.c @@ -190,7 +190,7 @@ store_colortable_entries(struct gl_context *ctx, struct gl_color_table *table, { data = _mesa_map_validate_pbo_source(ctx, 1, &ctx->Unpack, count, 1, 1, - format, type, data, + format, type, INT_MAX, data, "glColor[Sub]Table"); if (!data) return; @@ -509,8 +509,8 @@ _mesa_CopyColorSubTable(GLenum target, GLsizei start, static void GLAPIENTRY -_mesa_GetColorTable( GLenum target, GLenum format, - GLenum type, GLvoid *data ) +_mesa_GetnColorTableARB( GLenum target, GLenum format, GLenum type, + GLsizei bufSize, GLvoid *data ) { GET_CURRENT_CONTEXT(ctx); struct gl_texture_unit *texUnit = _mesa_get_current_tex_unit(ctx); @@ -614,7 +614,7 @@ _mesa_GetColorTable( GLenum target, GLenum format, data = _mesa_map_validate_pbo_dest(ctx, 1, &ctx->Pack, table->Size, 1, 1, - format, type, data, + format, type, bufSize, data, "glGetColorTable"); if (!data) return; @@ -630,6 +630,13 @@ _mesa_GetColorTable( GLenum target, GLenum format, } +static void GLAPIENTRY +_mesa_GetColorTable( GLenum target, GLenum format, + GLenum type, GLvoid *data ) +{ + _mesa_GetnColorTableARB(target, format, type, INT_MAX, data); +} + static void GLAPIENTRY _mesa_ColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params) @@ -790,6 +797,9 @@ _mesa_init_colortable_dispatch(struct _glapi_table *disp) SET_GetColorTable(disp, _mesa_GetColorTable); SET_GetColorTableParameterfv(disp, _mesa_GetColorTableParameterfv); SET_GetColorTableParameteriv(disp, _mesa_GetColorTableParameteriv); + + /* GL_ARB_robustness */ + SET_GetnColorTableARB(disp, _mesa_GetnColorTableARB); } diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c index 8053edc23b2..ea13bdd6835 100644 --- a/src/mesa/main/context.c +++ b/src/mesa/main/context.c @@ -658,6 +658,9 @@ _mesa_init_constants(struct gl_context *ctx) /** GL_EXT_gpu_shader4 */ ctx->Const.MinProgramTexelOffset = -8; ctx->Const.MaxProgramTexelOffset = 7; + + /* GL_ARB_robustness */ + ctx->Const.ResetStrategy = GL_NO_RESET_NOTIFICATION_ARB; } @@ -793,6 +796,7 @@ init_attrib_groups(struct gl_context *ctx) /* Miscellaneous */ ctx->NewState = _NEW_ALL; ctx->ErrorValue = (GLenum) GL_NO_ERROR; + ctx->ResetStatus = (GLenum) GL_NO_ERROR; ctx->varying_vp_inputs = ~0; return GL_TRUE; diff --git a/src/mesa/main/convolve.c b/src/mesa/main/convolve.c index 5d286eb316b..74f28da87ee 100644 --- a/src/mesa/main/convolve.c +++ b/src/mesa/main/convolve.c @@ -115,8 +115,8 @@ _mesa_CopyConvolutionFilter2D(GLenum target, GLenum internalFormat, GLint x, GLi static void GLAPIENTRY -_mesa_GetConvolutionFilter(GLenum target, GLenum format, GLenum type, - GLvoid *image) +_mesa_GetnConvolutionFilterARB(GLenum target, GLenum format, GLenum type, + GLsizei bufSize, GLvoid *image) { GET_CURRENT_CONTEXT(ctx); @@ -125,6 +125,14 @@ _mesa_GetConvolutionFilter(GLenum target, GLenum format, GLenum type, static void GLAPIENTRY +_mesa_GetConvolutionFilter(GLenum target, GLenum format, GLenum type, + GLvoid *image) +{ + _mesa_GetnConvolutionFilterARB(target, format, type, INT_MAX, image); +} + + +static void GLAPIENTRY _mesa_GetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params) { GET_CURRENT_CONTEXT(ctx); @@ -143,8 +151,10 @@ _mesa_GetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params) static void GLAPIENTRY -_mesa_GetSeparableFilter(GLenum target, GLenum format, GLenum type, - GLvoid *row, GLvoid *column, GLvoid *span) +_mesa_GetnSeparableFilterARB(GLenum target, GLenum format, GLenum type, + GLsizei rowBufSize, GLvoid *row, + GLsizei columnBufSize, GLvoid *column, + GLvoid *span) { GET_CURRENT_CONTEXT(ctx); @@ -153,6 +163,15 @@ _mesa_GetSeparableFilter(GLenum target, GLenum format, GLenum type, static void GLAPIENTRY +_mesa_GetSeparableFilter(GLenum target, GLenum format, GLenum type, + GLvoid *row, GLvoid *column, GLvoid *span) +{ + _mesa_GetnSeparableFilterARB(target, format, type, INT_MAX, row, + INT_MAX, column, span); +} + + +static void GLAPIENTRY _mesa_SeparableFilter2D(GLenum target, GLenum internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column) { GET_CURRENT_CONTEXT(ctx); @@ -176,6 +195,10 @@ _mesa_init_convolve_dispatch(struct _glapi_table *disp) SET_GetConvolutionParameteriv(disp, _mesa_GetConvolutionParameteriv); SET_SeparableFilter2D(disp, _mesa_SeparableFilter2D); SET_GetSeparableFilter(disp, _mesa_GetSeparableFilter); + + /* GL_ARB_robustness */ + SET_GetnConvolutionFilterARB(disp, _mesa_GetnConvolutionFilterARB); + SET_GetnSeparableFilterARB(disp, _mesa_GetnSeparableFilterARB); } diff --git a/src/mesa/main/dlist.c b/src/mesa/main/dlist.c index f66082e7fce..63653df4502 100644 --- a/src/mesa/main/dlist.c +++ b/src/mesa/main/dlist.c @@ -859,8 +859,8 @@ unpack_image(struct gl_context *ctx, GLuint dimensions, } return image; } - else if (_mesa_validate_pbo_access(dimensions, unpack, width, height, depth, - format, type, pixels)) { + else if (_mesa_validate_pbo_access(dimensions, unpack, width, height, + depth, format, type, INT_MAX, pixels)) { const GLubyte *map, *src; GLvoid *image; diff --git a/src/mesa/main/drawpix.c b/src/mesa/main/drawpix.c index ee379f71bf5..89c2b26973c 100644 --- a/src/mesa/main/drawpix.c +++ b/src/mesa/main/drawpix.c @@ -90,10 +90,10 @@ _mesa_DrawPixels( GLsizei width, GLsizei height, GLint x = IROUND(ctx->Current.RasterPos[0]); GLint y = IROUND(ctx->Current.RasterPos[1]); - if (ctx->Unpack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) { /* unpack from PBO */ - if (!_mesa_validate_pbo_access(2, &ctx->Unpack, width, height, 1, - format, type, pixels)) { + if (!_mesa_validate_pbo_access(2, &ctx->Unpack, width, height, + 1, format, type, INT_MAX, pixels)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glDrawPixels(invalid PBO access)"); goto end; @@ -249,11 +249,11 @@ _mesa_Bitmap( GLsizei width, GLsizei height, GLint x = IFLOOR(ctx->Current.RasterPos[0] + epsilon - xorig); GLint y = IFLOOR(ctx->Current.RasterPos[1] + epsilon - yorig); - if (ctx->Unpack.BufferObj->Name) { + if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) { /* unpack from PBO */ - if (!_mesa_validate_pbo_access(2, &ctx->Unpack, width, height, 1, - GL_COLOR_INDEX, GL_BITMAP, - (GLvoid *) bitmap)) { + if (!_mesa_validate_pbo_access(2, &ctx->Unpack, width, height, + 1, GL_COLOR_INDEX, GL_BITMAP, + INT_MAX, (const GLvoid *) bitmap)) { _mesa_error(ctx, GL_INVALID_OPERATION, "glBitmap(invalid PBO access)"); return; diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c index 2ec19c8afbd..aac8b9c5eaf 100644 --- a/src/mesa/main/enable.c +++ b/src/mesa/main/enable.c @@ -885,15 +885,18 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, GLboolean state) case GL_TEXTURE_CUBE_MAP_SEAMLESS: CHECK_EXTENSION(ARB_seamless_cube_map, cap); - ctx->Texture.CubeMapSeamless = state; + if (ctx->Texture.CubeMapSeamless != state) { + FLUSH_VERTICES(ctx, _NEW_TEXTURE); + ctx->Texture.CubeMapSeamless = state; + } break; #if FEATURE_EXT_transform_feedback case GL_RASTERIZER_DISCARD: CHECK_EXTENSION(EXT_transform_feedback, cap); if (ctx->TransformFeedback.RasterDiscard != state) { - ctx->TransformFeedback.RasterDiscard = state; FLUSH_VERTICES(ctx, _NEW_TRANSFORM); + ctx->TransformFeedback.RasterDiscard = state; } break; #endif diff --git a/src/mesa/main/enums.c b/src/mesa/main/enums.c index 98cbbf53b85..8a50e26569c 100644 --- a/src/mesa/main/enums.c +++ b/src/mesa/main/enums.c @@ -366,6 +366,7 @@ LONGSTRING static const char enum_string_table[] = "GL_CONTEXT_CORE_PROFILE_BIT\0" "GL_CONTEXT_FLAGS\0" "GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT\0" + "GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB\0" "GL_CONTEXT_PROFILE_MASK\0" "GL_CONVOLUTION_1D\0" "GL_CONVOLUTION_2D\0" @@ -739,6 +740,7 @@ LONGSTRING static const char enum_string_table[] = "GL_GREEN_INTEGER\0" "GL_GREEN_INTEGER_EXT\0" "GL_GREEN_SCALE\0" + "GL_GUILTY_CONTEXT_RESET_ARB\0" "GL_HALF_FLOAT\0" "GL_HALF_FLOAT_OES\0" "GL_HIGH_FLOAT\0" @@ -786,6 +788,7 @@ LONGSTRING static const char enum_string_table[] = "GL_INDEX_SHIFT\0" "GL_INDEX_WRITEMASK\0" "GL_INFO_LOG_LENGTH\0" + "GL_INNOCENT_CONTEXT_RESET_ARB\0" "GL_INT\0" "GL_INTENSITY\0" "GL_INTENSITY12\0" @@ -894,6 +897,7 @@ LONGSTRING static const char enum_string_table[] = "GL_LOAD\0" "GL_LOGIC_OP\0" "GL_LOGIC_OP_MODE\0" + "GL_LOSE_CONTEXT_ON_RESET_ARB\0" "GL_LOWER_LEFT\0" "GL_LOW_FLOAT\0" "GL_LOW_INT\0" @@ -1277,6 +1281,7 @@ LONGSTRING static const char enum_string_table[] = "GL_NORMAL_MAP_OES\0" "GL_NOTEQUAL\0" "GL_NO_ERROR\0" + "GL_NO_RESET_NOTIFICATION_ARB\0" "GL_NUM_COMPRESSED_TEXTURE_FORMATS\0" "GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB\0" "GL_NUM_EXTENSIONS\0" @@ -1637,6 +1642,7 @@ LONGSTRING static const char enum_string_table[] = "GL_REPLICATE_BORDER_HP\0" "GL_RESCALE_NORMAL\0" "GL_RESCALE_NORMAL_EXT\0" + "GL_RESET_NOTIFICATION_STRATEGY_ARB\0" "GL_RETAINED_APPLE\0" "GL_RETURN\0" "GL_RG16_SNORM\0" @@ -2193,6 +2199,7 @@ LONGSTRING static const char enum_string_table[] = "GL_TRIANGLE_STRIP_ADJACENCY_ARB\0" "GL_TRUE\0" "GL_UNDEFINED_APPLE\0" + "GL_UNKNOWN_CONTEXT_RESET_ARB\0" "GL_UNPACK_ALIGNMENT\0" "GL_UNPACK_IMAGE_HEIGHT\0" "GL_UNPACK_LSB_FIRST\0" @@ -2345,7 +2352,7 @@ LONGSTRING static const char enum_string_table[] = "GL_ZOOM_Y\0" ; -static const enum_elt all_enums[2306] = +static const enum_elt all_enums[2313] = { { 0, 0x00000600 }, /* GL_2D */ { 6, 0x00001407 }, /* GL_2_BYTES */ @@ -2676,2408 +2683,2415 @@ static const enum_elt all_enums[2306] = { 6607, 0x00000001 }, /* GL_CONTEXT_CORE_PROFILE_BIT */ { 6635, 0x0000821E }, /* GL_CONTEXT_FLAGS */ { 6652, 0x00000001 }, /* GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT */ - { 6691, 0x00009126 }, /* GL_CONTEXT_PROFILE_MASK */ - { 6715, 0x00008010 }, /* GL_CONVOLUTION_1D */ - { 6733, 0x00008011 }, /* GL_CONVOLUTION_2D */ - { 6751, 0x00008154 }, /* GL_CONVOLUTION_BORDER_COLOR */ - { 6779, 0x00008154 }, /* GL_CONVOLUTION_BORDER_COLOR_HP */ - { 6810, 0x00008013 }, /* GL_CONVOLUTION_BORDER_MODE */ - { 6837, 0x00008013 }, /* GL_CONVOLUTION_BORDER_MODE_EXT */ - { 6868, 0x00008015 }, /* GL_CONVOLUTION_FILTER_BIAS */ - { 6895, 0x00008015 }, /* GL_CONVOLUTION_FILTER_BIAS_EXT */ - { 6926, 0x00008014 }, /* GL_CONVOLUTION_FILTER_SCALE */ - { 6954, 0x00008014 }, /* GL_CONVOLUTION_FILTER_SCALE_EXT */ - { 6986, 0x00008017 }, /* GL_CONVOLUTION_FORMAT */ - { 7008, 0x00008017 }, /* GL_CONVOLUTION_FORMAT_EXT */ - { 7034, 0x00008019 }, /* GL_CONVOLUTION_HEIGHT */ - { 7056, 0x00008019 }, /* GL_CONVOLUTION_HEIGHT_EXT */ - { 7082, 0x00008018 }, /* GL_CONVOLUTION_WIDTH */ - { 7103, 0x00008018 }, /* GL_CONVOLUTION_WIDTH_EXT */ - { 7128, 0x00008862 }, /* GL_COORD_REPLACE */ - { 7145, 0x00008862 }, /* GL_COORD_REPLACE_ARB */ - { 7166, 0x00008862 }, /* GL_COORD_REPLACE_NV */ - { 7186, 0x00008862 }, /* GL_COORD_REPLACE_OES */ - { 7207, 0x00001503 }, /* GL_COPY */ - { 7215, 0x0000150C }, /* GL_COPY_INVERTED */ - { 7232, 0x00000706 }, /* GL_COPY_PIXEL_TOKEN */ - { 7252, 0x00008F36 }, /* GL_COPY_READ_BUFFER */ - { 7272, 0x00008F37 }, /* GL_COPY_WRITE_BUFFER */ - { 7293, 0x00000B44 }, /* GL_CULL_FACE */ - { 7306, 0x00000B45 }, /* GL_CULL_FACE_MODE */ - { 7324, 0x000081AA }, /* GL_CULL_VERTEX_EXT */ - { 7343, 0x000081AC }, /* GL_CULL_VERTEX_EYE_POSITION_EXT */ - { 7375, 0x000081AB }, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */ - { 7410, 0x00008626 }, /* GL_CURRENT_ATTRIB_NV */ - { 7431, 0x00000001 }, /* GL_CURRENT_BIT */ - { 7446, 0x00000B00 }, /* GL_CURRENT_COLOR */ - { 7463, 0x00008453 }, /* GL_CURRENT_FOG_COORD */ - { 7484, 0x00008453 }, /* GL_CURRENT_FOG_COORDINATE */ - { 7510, 0x00000B01 }, /* GL_CURRENT_INDEX */ - { 7527, 0x00008641 }, /* GL_CURRENT_MATRIX_ARB */ - { 7549, 0x00008845 }, /* GL_CURRENT_MATRIX_INDEX_ARB */ - { 7577, 0x00008641 }, /* GL_CURRENT_MATRIX_NV */ - { 7598, 0x00008640 }, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */ - { 7632, 0x00008640 }, /* GL_CURRENT_MATRIX_STACK_DEPTH_NV */ - { 7665, 0x00000B02 }, /* GL_CURRENT_NORMAL */ - { 7683, 0x00008843 }, /* GL_CURRENT_PALETTE_MATRIX_ARB */ - { 7713, 0x00008843 }, /* GL_CURRENT_PALETTE_MATRIX_OES */ - { 7743, 0x00008B8D }, /* GL_CURRENT_PROGRAM */ - { 7762, 0x00008865 }, /* GL_CURRENT_QUERY */ - { 7779, 0x00008865 }, /* GL_CURRENT_QUERY_ARB */ - { 7800, 0x00000B04 }, /* GL_CURRENT_RASTER_COLOR */ - { 7824, 0x00000B09 }, /* GL_CURRENT_RASTER_DISTANCE */ - { 7851, 0x00000B05 }, /* GL_CURRENT_RASTER_INDEX */ - { 7875, 0x00000B07 }, /* GL_CURRENT_RASTER_POSITION */ - { 7902, 0x00000B08 }, /* GL_CURRENT_RASTER_POSITION_VALID */ - { 7935, 0x0000845F }, /* GL_CURRENT_RASTER_SECONDARY_COLOR */ - { 7969, 0x00000B06 }, /* GL_CURRENT_RASTER_TEXTURE_COORDS */ - { 8002, 0x00008459 }, /* GL_CURRENT_SECONDARY_COLOR */ - { 8029, 0x00000B03 }, /* GL_CURRENT_TEXTURE_COORDS */ - { 8055, 0x00008626 }, /* GL_CURRENT_VERTEX_ATTRIB */ - { 8080, 0x00008626 }, /* GL_CURRENT_VERTEX_ATTRIB_ARB */ - { 8109, 0x000086A8 }, /* GL_CURRENT_WEIGHT_ARB */ - { 8131, 0x00000900 }, /* GL_CW */ - { 8137, 0x0000875B }, /* GL_DEBUG_ASSERT_MESA */ - { 8158, 0x00008759 }, /* GL_DEBUG_OBJECT_MESA */ - { 8179, 0x0000875A }, /* GL_DEBUG_PRINT_MESA */ - { 8199, 0x00002101 }, /* GL_DECAL */ - { 8208, 0x00001E03 }, /* GL_DECR */ - { 8216, 0x00008508 }, /* GL_DECR_WRAP */ - { 8229, 0x00008508 }, /* GL_DECR_WRAP_EXT */ - { 8246, 0x00008B80 }, /* GL_DELETE_STATUS */ - { 8263, 0x00001801 }, /* GL_DEPTH */ - { 8272, 0x000088F0 }, /* GL_DEPTH24_STENCIL8 */ - { 8292, 0x000088F0 }, /* GL_DEPTH24_STENCIL8_EXT */ - { 8316, 0x000088F0 }, /* GL_DEPTH24_STENCIL8_OES */ - { 8340, 0x00008D00 }, /* GL_DEPTH_ATTACHMENT */ - { 8360, 0x00008D00 }, /* GL_DEPTH_ATTACHMENT_EXT */ - { 8384, 0x00008D00 }, /* GL_DEPTH_ATTACHMENT_OES */ - { 8408, 0x00000D1F }, /* GL_DEPTH_BIAS */ - { 8422, 0x00000D56 }, /* GL_DEPTH_BITS */ - { 8436, 0x00008891 }, /* GL_DEPTH_BOUNDS_EXT */ - { 8456, 0x00008890 }, /* GL_DEPTH_BOUNDS_TEST_EXT */ - { 8481, 0x00008223 }, /* GL_DEPTH_BUFFER */ - { 8497, 0x00000100 }, /* GL_DEPTH_BUFFER_BIT */ - { 8517, 0x0000864F }, /* GL_DEPTH_CLAMP */ - { 8532, 0x0000864F }, /* GL_DEPTH_CLAMP_NV */ - { 8550, 0x00000B73 }, /* GL_DEPTH_CLEAR_VALUE */ - { 8571, 0x00001902 }, /* GL_DEPTH_COMPONENT */ - { 8590, 0x000081A5 }, /* GL_DEPTH_COMPONENT16 */ - { 8611, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_ARB */ - { 8636, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_OES */ - { 8661, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_SGIX */ - { 8687, 0x000081A6 }, /* GL_DEPTH_COMPONENT24 */ - { 8708, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_ARB */ - { 8733, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_OES */ - { 8758, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_SGIX */ - { 8784, 0x000081A7 }, /* GL_DEPTH_COMPONENT32 */ - { 8805, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_ARB */ - { 8830, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_OES */ - { 8855, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_SGIX */ - { 8881, 0x00000B74 }, /* GL_DEPTH_FUNC */ - { 8895, 0x00000B70 }, /* GL_DEPTH_RANGE */ - { 8910, 0x00000D1E }, /* GL_DEPTH_SCALE */ - { 8925, 0x000084F9 }, /* GL_DEPTH_STENCIL */ - { 8942, 0x0000821A }, /* GL_DEPTH_STENCIL_ATTACHMENT */ - { 8970, 0x000084F9 }, /* GL_DEPTH_STENCIL_EXT */ - { 8991, 0x000084F9 }, /* GL_DEPTH_STENCIL_NV */ - { 9011, 0x000084F9 }, /* GL_DEPTH_STENCIL_OES */ - { 9032, 0x0000886F }, /* GL_DEPTH_STENCIL_TO_BGRA_NV */ - { 9060, 0x0000886E }, /* GL_DEPTH_STENCIL_TO_RGBA_NV */ - { 9088, 0x00000B71 }, /* GL_DEPTH_TEST */ - { 9102, 0x0000884B }, /* GL_DEPTH_TEXTURE_MODE */ - { 9124, 0x0000884B }, /* GL_DEPTH_TEXTURE_MODE_ARB */ - { 9150, 0x00000B72 }, /* GL_DEPTH_WRITEMASK */ - { 9169, 0x00001201 }, /* GL_DIFFUSE */ - { 9180, 0x00000BD0 }, /* GL_DITHER */ - { 9190, 0x00000A02 }, /* GL_DOMAIN */ - { 9200, 0x00001100 }, /* GL_DONT_CARE */ - { 9213, 0x000086AE }, /* GL_DOT3_RGB */ - { 9225, 0x000086AF }, /* GL_DOT3_RGBA */ - { 9238, 0x000086AF }, /* GL_DOT3_RGBA_ARB */ - { 9255, 0x00008741 }, /* GL_DOT3_RGBA_EXT */ - { 9272, 0x000086AE }, /* GL_DOT3_RGB_ARB */ - { 9288, 0x00008740 }, /* GL_DOT3_RGB_EXT */ - { 9304, 0x0000140A }, /* GL_DOUBLE */ - { 9314, 0x00000C32 }, /* GL_DOUBLEBUFFER */ - { 9330, 0x00000C01 }, /* GL_DRAW_BUFFER */ - { 9345, 0x00008825 }, /* GL_DRAW_BUFFER0 */ - { 9361, 0x00008825 }, /* GL_DRAW_BUFFER0_ARB */ - { 9381, 0x00008825 }, /* GL_DRAW_BUFFER0_ATI */ - { 9401, 0x00008826 }, /* GL_DRAW_BUFFER1 */ - { 9417, 0x0000882F }, /* GL_DRAW_BUFFER10 */ - { 9434, 0x0000882F }, /* GL_DRAW_BUFFER10_ARB */ - { 9455, 0x0000882F }, /* GL_DRAW_BUFFER10_ATI */ - { 9476, 0x00008830 }, /* GL_DRAW_BUFFER11 */ - { 9493, 0x00008830 }, /* GL_DRAW_BUFFER11_ARB */ - { 9514, 0x00008830 }, /* GL_DRAW_BUFFER11_ATI */ - { 9535, 0x00008831 }, /* GL_DRAW_BUFFER12 */ - { 9552, 0x00008831 }, /* GL_DRAW_BUFFER12_ARB */ - { 9573, 0x00008831 }, /* GL_DRAW_BUFFER12_ATI */ - { 9594, 0x00008832 }, /* GL_DRAW_BUFFER13 */ - { 9611, 0x00008832 }, /* GL_DRAW_BUFFER13_ARB */ - { 9632, 0x00008832 }, /* GL_DRAW_BUFFER13_ATI */ - { 9653, 0x00008833 }, /* GL_DRAW_BUFFER14 */ - { 9670, 0x00008833 }, /* GL_DRAW_BUFFER14_ARB */ - { 9691, 0x00008833 }, /* GL_DRAW_BUFFER14_ATI */ - { 9712, 0x00008834 }, /* GL_DRAW_BUFFER15 */ - { 9729, 0x00008834 }, /* GL_DRAW_BUFFER15_ARB */ - { 9750, 0x00008834 }, /* GL_DRAW_BUFFER15_ATI */ - { 9771, 0x00008826 }, /* GL_DRAW_BUFFER1_ARB */ - { 9791, 0x00008826 }, /* GL_DRAW_BUFFER1_ATI */ - { 9811, 0x00008827 }, /* GL_DRAW_BUFFER2 */ - { 9827, 0x00008827 }, /* GL_DRAW_BUFFER2_ARB */ - { 9847, 0x00008827 }, /* GL_DRAW_BUFFER2_ATI */ - { 9867, 0x00008828 }, /* GL_DRAW_BUFFER3 */ - { 9883, 0x00008828 }, /* GL_DRAW_BUFFER3_ARB */ - { 9903, 0x00008828 }, /* GL_DRAW_BUFFER3_ATI */ - { 9923, 0x00008829 }, /* GL_DRAW_BUFFER4 */ - { 9939, 0x00008829 }, /* GL_DRAW_BUFFER4_ARB */ - { 9959, 0x00008829 }, /* GL_DRAW_BUFFER4_ATI */ - { 9979, 0x0000882A }, /* GL_DRAW_BUFFER5 */ - { 9995, 0x0000882A }, /* GL_DRAW_BUFFER5_ARB */ - { 10015, 0x0000882A }, /* GL_DRAW_BUFFER5_ATI */ - { 10035, 0x0000882B }, /* GL_DRAW_BUFFER6 */ - { 10051, 0x0000882B }, /* GL_DRAW_BUFFER6_ARB */ - { 10071, 0x0000882B }, /* GL_DRAW_BUFFER6_ATI */ - { 10091, 0x0000882C }, /* GL_DRAW_BUFFER7 */ - { 10107, 0x0000882C }, /* GL_DRAW_BUFFER7_ARB */ - { 10127, 0x0000882C }, /* GL_DRAW_BUFFER7_ATI */ - { 10147, 0x0000882D }, /* GL_DRAW_BUFFER8 */ - { 10163, 0x0000882D }, /* GL_DRAW_BUFFER8_ARB */ - { 10183, 0x0000882D }, /* GL_DRAW_BUFFER8_ATI */ - { 10203, 0x0000882E }, /* GL_DRAW_BUFFER9 */ - { 10219, 0x0000882E }, /* GL_DRAW_BUFFER9_ARB */ - { 10239, 0x0000882E }, /* GL_DRAW_BUFFER9_ATI */ - { 10259, 0x00008CA9 }, /* GL_DRAW_FRAMEBUFFER */ - { 10279, 0x00008CA6 }, /* GL_DRAW_FRAMEBUFFER_BINDING */ - { 10307, 0x00008CA6 }, /* GL_DRAW_FRAMEBUFFER_BINDING_EXT */ - { 10339, 0x00008CA9 }, /* GL_DRAW_FRAMEBUFFER_EXT */ - { 10363, 0x00000705 }, /* GL_DRAW_PIXEL_TOKEN */ - { 10383, 0x00000304 }, /* GL_DST_ALPHA */ - { 10396, 0x00000306 }, /* GL_DST_COLOR */ - { 10409, 0x0000877A }, /* GL_DU8DV8_ATI */ - { 10423, 0x00008779 }, /* GL_DUDV_ATI */ - { 10435, 0x000088EA }, /* GL_DYNAMIC_COPY */ - { 10451, 0x000088EA }, /* GL_DYNAMIC_COPY_ARB */ - { 10471, 0x000088E8 }, /* GL_DYNAMIC_DRAW */ - { 10487, 0x000088E8 }, /* GL_DYNAMIC_DRAW_ARB */ - { 10507, 0x000088E9 }, /* GL_DYNAMIC_READ */ - { 10523, 0x000088E9 }, /* GL_DYNAMIC_READ_ARB */ - { 10543, 0x00000B43 }, /* GL_EDGE_FLAG */ - { 10556, 0x00008079 }, /* GL_EDGE_FLAG_ARRAY */ - { 10575, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */ - { 10609, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB */ - { 10647, 0x00008093 }, /* GL_EDGE_FLAG_ARRAY_POINTER */ - { 10674, 0x0000808C }, /* GL_EDGE_FLAG_ARRAY_STRIDE */ - { 10700, 0x00008893 }, /* GL_ELEMENT_ARRAY_BUFFER */ - { 10724, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */ - { 10756, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB */ - { 10792, 0x00001600 }, /* GL_EMISSION */ - { 10804, 0x00002000 }, /* GL_ENABLE_BIT */ - { 10818, 0x00000202 }, /* GL_EQUAL */ - { 10827, 0x00001509 }, /* GL_EQUIV */ - { 10836, 0x00010000 }, /* GL_EVAL_BIT */ - { 10848, 0x00000800 }, /* GL_EXP */ - { 10855, 0x00000801 }, /* GL_EXP2 */ - { 10863, 0x00001F03 }, /* GL_EXTENSIONS */ - { 10877, 0x00002400 }, /* GL_EYE_LINEAR */ - { 10891, 0x00002502 }, /* GL_EYE_PLANE */ - { 10904, 0x0000855C }, /* GL_EYE_PLANE_ABSOLUTE_NV */ - { 10929, 0x0000855B }, /* GL_EYE_RADIAL_NV */ - { 10946, 0x00000000 }, /* GL_FALSE */ - { 10955, 0x00001101 }, /* GL_FASTEST */ - { 10966, 0x00001C01 }, /* GL_FEEDBACK */ - { 10978, 0x00000DF0 }, /* GL_FEEDBACK_BUFFER_POINTER */ - { 11005, 0x00000DF1 }, /* GL_FEEDBACK_BUFFER_SIZE */ - { 11029, 0x00000DF2 }, /* GL_FEEDBACK_BUFFER_TYPE */ - { 11053, 0x00001B02 }, /* GL_FILL */ - { 11061, 0x00008E4D }, /* GL_FIRST_VERTEX_CONVENTION */ - { 11088, 0x00008E4D }, /* GL_FIRST_VERTEX_CONVENTION_EXT */ - { 11119, 0x0000140C }, /* GL_FIXED */ - { 11128, 0x0000140C }, /* GL_FIXED_OES */ - { 11141, 0x0000891D }, /* GL_FIXED_ONLY */ - { 11155, 0x0000891D }, /* GL_FIXED_ONLY_ARB */ - { 11173, 0x00001D00 }, /* GL_FLAT */ - { 11181, 0x00001406 }, /* GL_FLOAT */ - { 11190, 0x00008B5A }, /* GL_FLOAT_MAT2 */ - { 11204, 0x00008B5A }, /* GL_FLOAT_MAT2_ARB */ - { 11222, 0x00008B65 }, /* GL_FLOAT_MAT2x3 */ - { 11238, 0x00008B66 }, /* GL_FLOAT_MAT2x4 */ - { 11254, 0x00008B5B }, /* GL_FLOAT_MAT3 */ - { 11268, 0x00008B5B }, /* GL_FLOAT_MAT3_ARB */ - { 11286, 0x00008B67 }, /* GL_FLOAT_MAT3x2 */ - { 11302, 0x00008B68 }, /* GL_FLOAT_MAT3x4 */ - { 11318, 0x00008B5C }, /* GL_FLOAT_MAT4 */ - { 11332, 0x00008B5C }, /* GL_FLOAT_MAT4_ARB */ - { 11350, 0x00008B69 }, /* GL_FLOAT_MAT4x2 */ - { 11366, 0x00008B6A }, /* GL_FLOAT_MAT4x3 */ - { 11382, 0x00008B50 }, /* GL_FLOAT_VEC2 */ - { 11396, 0x00008B50 }, /* GL_FLOAT_VEC2_ARB */ - { 11414, 0x00008B51 }, /* GL_FLOAT_VEC3 */ - { 11428, 0x00008B51 }, /* GL_FLOAT_VEC3_ARB */ - { 11446, 0x00008B52 }, /* GL_FLOAT_VEC4 */ - { 11460, 0x00008B52 }, /* GL_FLOAT_VEC4_ARB */ - { 11478, 0x00000B60 }, /* GL_FOG */ - { 11485, 0x00000080 }, /* GL_FOG_BIT */ - { 11496, 0x00000B66 }, /* GL_FOG_COLOR */ - { 11509, 0x00008451 }, /* GL_FOG_COORD */ - { 11522, 0x00008451 }, /* GL_FOG_COORDINATE */ - { 11540, 0x00008457 }, /* GL_FOG_COORDINATE_ARRAY */ - { 11564, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ - { 11603, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB */ - { 11646, 0x00008456 }, /* GL_FOG_COORDINATE_ARRAY_POINTER */ - { 11678, 0x00008455 }, /* GL_FOG_COORDINATE_ARRAY_STRIDE */ - { 11709, 0x00008454 }, /* GL_FOG_COORDINATE_ARRAY_TYPE */ - { 11738, 0x00008450 }, /* GL_FOG_COORDINATE_SOURCE */ - { 11763, 0x00008457 }, /* GL_FOG_COORD_ARRAY */ - { 11782, 0x0000889D }, /* GL_FOG_COORD_ARRAY_BUFFER_BINDING */ - { 11816, 0x00008456 }, /* GL_FOG_COORD_ARRAY_POINTER */ - { 11843, 0x00008455 }, /* GL_FOG_COORD_ARRAY_STRIDE */ - { 11869, 0x00008454 }, /* GL_FOG_COORD_ARRAY_TYPE */ - { 11893, 0x00008450 }, /* GL_FOG_COORD_SRC */ - { 11910, 0x00000B62 }, /* GL_FOG_DENSITY */ - { 11925, 0x0000855A }, /* GL_FOG_DISTANCE_MODE_NV */ - { 11949, 0x00000B64 }, /* GL_FOG_END */ - { 11960, 0x00000C54 }, /* GL_FOG_HINT */ - { 11972, 0x00000B61 }, /* GL_FOG_INDEX */ - { 11985, 0x00000B65 }, /* GL_FOG_MODE */ - { 11997, 0x00008198 }, /* GL_FOG_OFFSET_SGIX */ - { 12016, 0x00008199 }, /* GL_FOG_OFFSET_VALUE_SGIX */ - { 12041, 0x00000B63 }, /* GL_FOG_START */ - { 12054, 0x00008452 }, /* GL_FRAGMENT_DEPTH */ - { 12072, 0x00008804 }, /* GL_FRAGMENT_PROGRAM_ARB */ - { 12096, 0x00008B30 }, /* GL_FRAGMENT_SHADER */ - { 12115, 0x00008B30 }, /* GL_FRAGMENT_SHADER_ARB */ - { 12138, 0x00008B8B }, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ - { 12173, 0x00008B8B }, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES */ - { 12212, 0x00008D40 }, /* GL_FRAMEBUFFER */ - { 12227, 0x00008215 }, /* GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE */ - { 12264, 0x00008214 }, /* GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE */ - { 12300, 0x00008210 }, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ - { 12341, 0x00008211 }, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ - { 12382, 0x00008216 }, /* GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE */ - { 12419, 0x00008213 }, /* GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE */ - { 12456, 0x00008DA7 }, /* GL_FRAMEBUFFER_ATTACHMENT_LAYERED */ - { 12490, 0x00008DA7 }, /* GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB */ - { 12528, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */ - { 12566, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT */ - { 12608, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES */ - { 12650, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */ - { 12688, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT */ - { 12730, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES */ - { 12772, 0x00008212 }, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ - { 12807, 0x00008217 }, /* GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE */ - { 12846, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT */ - { 12895, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES */ - { 12944, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE */ - { 12992, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT */ - { 13044, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES */ - { 13096, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */ - { 13136, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT */ - { 13180, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */ - { 13220, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT */ - { 13264, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES */ - { 13308, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING */ - { 13331, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING_EXT */ - { 13358, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING_OES */ - { 13385, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE */ - { 13409, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE_EXT */ - { 13437, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE_OES */ - { 13465, 0x00008218 }, /* GL_FRAMEBUFFER_DEFAULT */ - { 13488, 0x00008D40 }, /* GL_FRAMEBUFFER_EXT */ - { 13507, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT */ - { 13544, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT */ - { 13585, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES */ - { 13626, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS */ - { 13663, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */ - { 13704, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES */ - { 13745, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER */ - { 13783, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT */ - { 13825, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_OES */ - { 13867, 0x00008CD8 }, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */ - { 13918, 0x00008CDA }, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */ - { 13956, 0x00008CDA }, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES */ - { 13994, 0x00008DA9 }, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB */ - { 14036, 0x00008DA8 }, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS */ - { 14076, 0x00008DA8 }, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB */ - { 14120, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT */ - { 14165, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT */ - { 14214, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES */ - { 14263, 0x00008D56 }, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ - { 14301, 0x00008D56 }, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT */ - { 14343, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER */ - { 14381, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT */ - { 14423, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_OES */ - { 14465, 0x00008D40 }, /* GL_FRAMEBUFFER_OES */ - { 14484, 0x00008CDE }, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */ - { 14516, 0x00008219 }, /* GL_FRAMEBUFFER_UNDEFINED */ - { 14541, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED */ - { 14568, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED_EXT */ - { 14599, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED_OES */ - { 14630, 0x00000404 }, /* GL_FRONT */ - { 14639, 0x00000408 }, /* GL_FRONT_AND_BACK */ - { 14657, 0x00000B46 }, /* GL_FRONT_FACE */ - { 14671, 0x00000400 }, /* GL_FRONT_LEFT */ - { 14685, 0x00000401 }, /* GL_FRONT_RIGHT */ - { 14700, 0x00008006 }, /* GL_FUNC_ADD */ - { 14712, 0x00008006 }, /* GL_FUNC_ADD_EXT */ - { 14728, 0x00008006 }, /* GL_FUNC_ADD_OES */ - { 14744, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT */ - { 14769, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT_EXT */ - { 14798, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT_OES */ - { 14827, 0x0000800A }, /* GL_FUNC_SUBTRACT */ - { 14844, 0x0000800A }, /* GL_FUNC_SUBTRACT_EXT */ - { 14865, 0x0000800A }, /* GL_FUNC_SUBTRACT_OES */ - { 14886, 0x00008191 }, /* GL_GENERATE_MIPMAP */ - { 14905, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT */ - { 14929, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT_SGIS */ - { 14958, 0x00008191 }, /* GL_GENERATE_MIPMAP_SGIS */ - { 14982, 0x00008917 }, /* GL_GEOMETRY_INPUT_TYPE */ - { 15005, 0x00008DDB }, /* GL_GEOMETRY_INPUT_TYPE_ARB */ - { 15032, 0x00008918 }, /* GL_GEOMETRY_OUTPUT_TYPE */ - { 15056, 0x00008DDC }, /* GL_GEOMETRY_OUTPUT_TYPE_ARB */ - { 15084, 0x00008DD9 }, /* GL_GEOMETRY_SHADER */ - { 15103, 0x00008DD9 }, /* GL_GEOMETRY_SHADER_ARB */ - { 15126, 0x00008916 }, /* GL_GEOMETRY_VERTICES_OUT */ - { 15151, 0x00008DDA }, /* GL_GEOMETRY_VERTICES_OUT_ARB */ - { 15180, 0x00000206 }, /* GL_GEQUAL */ - { 15190, 0x00000204 }, /* GL_GREATER */ - { 15201, 0x00001904 }, /* GL_GREEN */ - { 15210, 0x00000D19 }, /* GL_GREEN_BIAS */ - { 15224, 0x00000D53 }, /* GL_GREEN_BITS */ - { 15238, 0x00008D95 }, /* GL_GREEN_INTEGER */ - { 15255, 0x00008D95 }, /* GL_GREEN_INTEGER_EXT */ - { 15276, 0x00000D18 }, /* GL_GREEN_SCALE */ - { 15291, 0x0000140B }, /* GL_HALF_FLOAT */ - { 15305, 0x00008D61 }, /* GL_HALF_FLOAT_OES */ - { 15323, 0x00008DF2 }, /* GL_HIGH_FLOAT */ - { 15337, 0x00008DF5 }, /* GL_HIGH_INT */ - { 15349, 0x00008000 }, /* GL_HINT_BIT */ - { 15361, 0x00008024 }, /* GL_HISTOGRAM */ - { 15374, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE */ - { 15398, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE_EXT */ - { 15426, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE */ - { 15449, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE_EXT */ - { 15476, 0x00008024 }, /* GL_HISTOGRAM_EXT */ - { 15493, 0x00008027 }, /* GL_HISTOGRAM_FORMAT */ - { 15513, 0x00008027 }, /* GL_HISTOGRAM_FORMAT_EXT */ - { 15537, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE */ - { 15561, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE_EXT */ - { 15589, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE */ - { 15617, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE_EXT */ - { 15649, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE */ - { 15671, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE_EXT */ - { 15697, 0x0000802D }, /* GL_HISTOGRAM_SINK */ - { 15715, 0x0000802D }, /* GL_HISTOGRAM_SINK_EXT */ - { 15737, 0x00008026 }, /* GL_HISTOGRAM_WIDTH */ - { 15756, 0x00008026 }, /* GL_HISTOGRAM_WIDTH_EXT */ - { 15779, 0x0000862A }, /* GL_IDENTITY_NV */ - { 15794, 0x00008150 }, /* GL_IGNORE_BORDER_HP */ - { 15814, 0x00008B9B }, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT */ - { 15850, 0x00008B9B }, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES */ - { 15890, 0x00008B9A }, /* GL_IMPLEMENTATION_COLOR_READ_TYPE */ - { 15924, 0x00008B9A }, /* GL_IMPLEMENTATION_COLOR_READ_TYPE_OES */ - { 15962, 0x00001E02 }, /* GL_INCR */ - { 15970, 0x00008507 }, /* GL_INCR_WRAP */ - { 15983, 0x00008507 }, /* GL_INCR_WRAP_EXT */ - { 16000, 0x00008222 }, /* GL_INDEX */ - { 16009, 0x00008077 }, /* GL_INDEX_ARRAY */ - { 16024, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING */ - { 16054, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING_ARB */ - { 16088, 0x00008091 }, /* GL_INDEX_ARRAY_POINTER */ - { 16111, 0x00008086 }, /* GL_INDEX_ARRAY_STRIDE */ - { 16133, 0x00008085 }, /* GL_INDEX_ARRAY_TYPE */ - { 16153, 0x00000D51 }, /* GL_INDEX_BITS */ - { 16167, 0x00000C20 }, /* GL_INDEX_CLEAR_VALUE */ - { 16188, 0x00000BF1 }, /* GL_INDEX_LOGIC_OP */ - { 16206, 0x00000C30 }, /* GL_INDEX_MODE */ - { 16220, 0x00000D13 }, /* GL_INDEX_OFFSET */ - { 16236, 0x00000D12 }, /* GL_INDEX_SHIFT */ - { 16251, 0x00000C21 }, /* GL_INDEX_WRITEMASK */ - { 16270, 0x00008B84 }, /* GL_INFO_LOG_LENGTH */ - { 16289, 0x00001404 }, /* GL_INT */ - { 16296, 0x00008049 }, /* GL_INTENSITY */ - { 16309, 0x0000804C }, /* GL_INTENSITY12 */ - { 16324, 0x0000804C }, /* GL_INTENSITY12_EXT */ - { 16343, 0x0000804D }, /* GL_INTENSITY16 */ - { 16358, 0x00008D8B }, /* GL_INTENSITY16I_EXT */ - { 16378, 0x00008D79 }, /* GL_INTENSITY16UI_EXT */ - { 16399, 0x0000804D }, /* GL_INTENSITY16_EXT */ - { 16418, 0x00008D85 }, /* GL_INTENSITY32I_EXT */ - { 16438, 0x00008D73 }, /* GL_INTENSITY32UI_EXT */ - { 16459, 0x0000804A }, /* GL_INTENSITY4 */ - { 16473, 0x0000804A }, /* GL_INTENSITY4_EXT */ - { 16491, 0x0000804B }, /* GL_INTENSITY8 */ - { 16505, 0x00008D91 }, /* GL_INTENSITY8I_EXT */ - { 16524, 0x00008D7F }, /* GL_INTENSITY8UI_EXT */ - { 16544, 0x0000804B }, /* GL_INTENSITY8_EXT */ - { 16562, 0x00008049 }, /* GL_INTENSITY_EXT */ - { 16579, 0x00008C8C }, /* GL_INTERLEAVED_ATTRIBS */ - { 16602, 0x00008C8C }, /* GL_INTERLEAVED_ATTRIBS_EXT */ - { 16629, 0x00008575 }, /* GL_INTERPOLATE */ - { 16644, 0x00008575 }, /* GL_INTERPOLATE_ARB */ - { 16663, 0x00008575 }, /* GL_INTERPOLATE_EXT */ - { 16682, 0x00008DF7 }, /* GL_INT_10_10_10_2_OES */ - { 16704, 0x00008DC9 }, /* GL_INT_SAMPLER_1D */ - { 16722, 0x00008DCE }, /* GL_INT_SAMPLER_1D_ARRAY */ - { 16746, 0x00008DCE }, /* GL_INT_SAMPLER_1D_ARRAY_EXT */ - { 16774, 0x00008DC9 }, /* GL_INT_SAMPLER_1D_EXT */ - { 16796, 0x00008DCA }, /* GL_INT_SAMPLER_2D */ - { 16814, 0x00008DCF }, /* GL_INT_SAMPLER_2D_ARRAY */ - { 16838, 0x00008DCF }, /* GL_INT_SAMPLER_2D_ARRAY_EXT */ - { 16866, 0x00008DCA }, /* GL_INT_SAMPLER_2D_EXT */ - { 16888, 0x00008DCD }, /* GL_INT_SAMPLER_2D_RECT */ - { 16911, 0x00008DCD }, /* GL_INT_SAMPLER_2D_RECT_EXT */ - { 16938, 0x00008DCB }, /* GL_INT_SAMPLER_3D */ - { 16956, 0x00008DCB }, /* GL_INT_SAMPLER_3D_EXT */ - { 16978, 0x00008DD0 }, /* GL_INT_SAMPLER_BUFFER */ - { 17000, 0x00008DD0 }, /* GL_INT_SAMPLER_BUFFER_EXT */ - { 17026, 0x00008DCC }, /* GL_INT_SAMPLER_CUBE */ - { 17046, 0x00008DCC }, /* GL_INT_SAMPLER_CUBE_EXT */ - { 17070, 0x00008B53 }, /* GL_INT_VEC2 */ - { 17082, 0x00008B53 }, /* GL_INT_VEC2_ARB */ - { 17098, 0x00008B54 }, /* GL_INT_VEC3 */ - { 17110, 0x00008B54 }, /* GL_INT_VEC3_ARB */ - { 17126, 0x00008B55 }, /* GL_INT_VEC4 */ - { 17138, 0x00008B55 }, /* GL_INT_VEC4_ARB */ - { 17154, 0x00000500 }, /* GL_INVALID_ENUM */ - { 17170, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION */ - { 17203, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION_EXT */ - { 17240, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION_OES */ - { 17277, 0x00000502 }, /* GL_INVALID_OPERATION */ - { 17298, 0x00000501 }, /* GL_INVALID_VALUE */ - { 17315, 0x0000862B }, /* GL_INVERSE_NV */ - { 17329, 0x0000862D }, /* GL_INVERSE_TRANSPOSE_NV */ - { 17353, 0x0000150A }, /* GL_INVERT */ - { 17363, 0x00001E00 }, /* GL_KEEP */ - { 17371, 0x00008E4E }, /* GL_LAST_VERTEX_CONVENTION */ - { 17397, 0x00008E4E }, /* GL_LAST_VERTEX_CONVENTION_EXT */ - { 17427, 0x00000406 }, /* GL_LEFT */ - { 17435, 0x00000203 }, /* GL_LEQUAL */ - { 17445, 0x00000201 }, /* GL_LESS */ - { 17453, 0x00004000 }, /* GL_LIGHT0 */ - { 17463, 0x00004001 }, /* GL_LIGHT1 */ - { 17473, 0x00004002 }, /* GL_LIGHT2 */ - { 17483, 0x00004003 }, /* GL_LIGHT3 */ - { 17493, 0x00004004 }, /* GL_LIGHT4 */ - { 17503, 0x00004005 }, /* GL_LIGHT5 */ - { 17513, 0x00004006 }, /* GL_LIGHT6 */ - { 17523, 0x00004007 }, /* GL_LIGHT7 */ - { 17533, 0x00000B50 }, /* GL_LIGHTING */ - { 17545, 0x00000040 }, /* GL_LIGHTING_BIT */ - { 17561, 0x00000B53 }, /* GL_LIGHT_MODEL_AMBIENT */ - { 17584, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL */ - { 17613, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL_EXT */ - { 17646, 0x00000B51 }, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ - { 17674, 0x00000B52 }, /* GL_LIGHT_MODEL_TWO_SIDE */ - { 17698, 0x00001B01 }, /* GL_LINE */ - { 17706, 0x00002601 }, /* GL_LINEAR */ - { 17716, 0x00001208 }, /* GL_LINEAR_ATTENUATION */ - { 17738, 0x00008170 }, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ - { 17768, 0x0000844F }, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */ - { 17799, 0x00002703 }, /* GL_LINEAR_MIPMAP_LINEAR */ - { 17823, 0x00002701 }, /* GL_LINEAR_MIPMAP_NEAREST */ - { 17848, 0x00000001 }, /* GL_LINES */ - { 17857, 0x0000000A }, /* GL_LINES_ADJACENCY */ - { 17876, 0x0000000A }, /* GL_LINES_ADJACENCY_ARB */ - { 17899, 0x00000004 }, /* GL_LINE_BIT */ - { 17911, 0x00000002 }, /* GL_LINE_LOOP */ - { 17924, 0x00000707 }, /* GL_LINE_RESET_TOKEN */ - { 17944, 0x00000B20 }, /* GL_LINE_SMOOTH */ - { 17959, 0x00000C52 }, /* GL_LINE_SMOOTH_HINT */ - { 17979, 0x00000B24 }, /* GL_LINE_STIPPLE */ - { 17995, 0x00000B25 }, /* GL_LINE_STIPPLE_PATTERN */ - { 18019, 0x00000B26 }, /* GL_LINE_STIPPLE_REPEAT */ - { 18042, 0x00000003 }, /* GL_LINE_STRIP */ - { 18056, 0x0000000B }, /* GL_LINE_STRIP_ADJACENCY */ - { 18080, 0x0000000B }, /* GL_LINE_STRIP_ADJACENCY_ARB */ - { 18108, 0x00000702 }, /* GL_LINE_TOKEN */ - { 18122, 0x00000B21 }, /* GL_LINE_WIDTH */ - { 18136, 0x00000B23 }, /* GL_LINE_WIDTH_GRANULARITY */ - { 18162, 0x00000B22 }, /* GL_LINE_WIDTH_RANGE */ - { 18182, 0x00008B82 }, /* GL_LINK_STATUS */ - { 18197, 0x00000B32 }, /* GL_LIST_BASE */ - { 18210, 0x00020000 }, /* GL_LIST_BIT */ - { 18222, 0x00000B33 }, /* GL_LIST_INDEX */ - { 18236, 0x00000B30 }, /* GL_LIST_MODE */ - { 18249, 0x00000101 }, /* GL_LOAD */ - { 18257, 0x00000BF1 }, /* GL_LOGIC_OP */ - { 18269, 0x00000BF0 }, /* GL_LOGIC_OP_MODE */ - { 18286, 0x00008CA1 }, /* GL_LOWER_LEFT */ - { 18300, 0x00008DF0 }, /* GL_LOW_FLOAT */ - { 18313, 0x00008DF3 }, /* GL_LOW_INT */ - { 18324, 0x00001909 }, /* GL_LUMINANCE */ - { 18337, 0x00008041 }, /* GL_LUMINANCE12 */ - { 18352, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12 */ - { 18375, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12_EXT */ - { 18402, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4 */ - { 18424, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4_EXT */ - { 18450, 0x00008041 }, /* GL_LUMINANCE12_EXT */ - { 18469, 0x00008042 }, /* GL_LUMINANCE16 */ - { 18484, 0x00008D8C }, /* GL_LUMINANCE16I_EXT */ - { 18504, 0x00008D7A }, /* GL_LUMINANCE16UI_EXT */ - { 18525, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16 */ - { 18548, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16_EXT */ - { 18575, 0x00008042 }, /* GL_LUMINANCE16_EXT */ - { 18594, 0x00008D86 }, /* GL_LUMINANCE32I_EXT */ - { 18614, 0x00008D74 }, /* GL_LUMINANCE32UI_EXT */ - { 18635, 0x0000803F }, /* GL_LUMINANCE4 */ - { 18649, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4 */ - { 18670, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4_EXT */ - { 18695, 0x0000803F }, /* GL_LUMINANCE4_EXT */ - { 18713, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2 */ - { 18734, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2_EXT */ - { 18759, 0x00008040 }, /* GL_LUMINANCE8 */ - { 18773, 0x00008D92 }, /* GL_LUMINANCE8I_EXT */ - { 18792, 0x00008D80 }, /* GL_LUMINANCE8UI_EXT */ - { 18812, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8 */ - { 18833, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8_EXT */ - { 18858, 0x00008040 }, /* GL_LUMINANCE8_EXT */ - { 18876, 0x0000190A }, /* GL_LUMINANCE_ALPHA */ - { 18895, 0x00008D8D }, /* GL_LUMINANCE_ALPHA16I_EXT */ - { 18921, 0x00008D7B }, /* GL_LUMINANCE_ALPHA16UI_EXT */ - { 18948, 0x00008D87 }, /* GL_LUMINANCE_ALPHA32I_EXT */ - { 18974, 0x00008D75 }, /* GL_LUMINANCE_ALPHA32UI_EXT */ - { 19001, 0x00008D93 }, /* GL_LUMINANCE_ALPHA8I_EXT */ - { 19026, 0x00008D81 }, /* GL_LUMINANCE_ALPHA8UI_EXT */ - { 19052, 0x00008D9D }, /* GL_LUMINANCE_ALPHA_INTEGER_EXT */ - { 19083, 0x00008D9C }, /* GL_LUMINANCE_INTEGER_EXT */ - { 19108, 0x0000821B }, /* GL_MAJOR_VERSION */ - { 19125, 0x00000D90 }, /* GL_MAP1_COLOR_4 */ - { 19141, 0x00000DD0 }, /* GL_MAP1_GRID_DOMAIN */ - { 19161, 0x00000DD1 }, /* GL_MAP1_GRID_SEGMENTS */ - { 19183, 0x00000D91 }, /* GL_MAP1_INDEX */ - { 19197, 0x00000D92 }, /* GL_MAP1_NORMAL */ - { 19212, 0x00000D93 }, /* GL_MAP1_TEXTURE_COORD_1 */ - { 19236, 0x00000D94 }, /* GL_MAP1_TEXTURE_COORD_2 */ - { 19260, 0x00000D95 }, /* GL_MAP1_TEXTURE_COORD_3 */ - { 19284, 0x00000D96 }, /* GL_MAP1_TEXTURE_COORD_4 */ - { 19308, 0x00000D97 }, /* GL_MAP1_VERTEX_3 */ - { 19325, 0x00000D98 }, /* GL_MAP1_VERTEX_4 */ - { 19342, 0x00008660 }, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ - { 19370, 0x0000866A }, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */ - { 19399, 0x0000866B }, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */ - { 19428, 0x0000866C }, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */ - { 19457, 0x0000866D }, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */ - { 19486, 0x0000866E }, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */ - { 19515, 0x0000866F }, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */ - { 19544, 0x00008661 }, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ - { 19572, 0x00008662 }, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ - { 19600, 0x00008663 }, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */ - { 19628, 0x00008664 }, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */ - { 19656, 0x00008665 }, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */ - { 19684, 0x00008666 }, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */ - { 19712, 0x00008667 }, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */ - { 19740, 0x00008668 }, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */ - { 19768, 0x00008669 }, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */ - { 19796, 0x00000DB0 }, /* GL_MAP2_COLOR_4 */ - { 19812, 0x00000DD2 }, /* GL_MAP2_GRID_DOMAIN */ - { 19832, 0x00000DD3 }, /* GL_MAP2_GRID_SEGMENTS */ - { 19854, 0x00000DB1 }, /* GL_MAP2_INDEX */ - { 19868, 0x00000DB2 }, /* GL_MAP2_NORMAL */ - { 19883, 0x00000DB3 }, /* GL_MAP2_TEXTURE_COORD_1 */ - { 19907, 0x00000DB4 }, /* GL_MAP2_TEXTURE_COORD_2 */ - { 19931, 0x00000DB5 }, /* GL_MAP2_TEXTURE_COORD_3 */ - { 19955, 0x00000DB6 }, /* GL_MAP2_TEXTURE_COORD_4 */ - { 19979, 0x00000DB7 }, /* GL_MAP2_VERTEX_3 */ - { 19996, 0x00000DB8 }, /* GL_MAP2_VERTEX_4 */ - { 20013, 0x00008670 }, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */ - { 20041, 0x0000867A }, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */ - { 20070, 0x0000867B }, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */ - { 20099, 0x0000867C }, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */ - { 20128, 0x0000867D }, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ - { 20157, 0x0000867E }, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ - { 20186, 0x0000867F }, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ - { 20215, 0x00008671 }, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */ - { 20243, 0x00008672 }, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */ - { 20271, 0x00008673 }, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */ - { 20299, 0x00008674 }, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */ - { 20327, 0x00008675 }, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */ - { 20355, 0x00008676 }, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */ - { 20383, 0x00008677 }, /* GL_MAP2_VERTEX_ATTRIB7_4_NV */ - { 20411, 0x00008678 }, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */ - { 20439, 0x00008679 }, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */ - { 20467, 0x00000D10 }, /* GL_MAP_COLOR */ - { 20480, 0x00000010 }, /* GL_MAP_FLUSH_EXPLICIT_BIT */ - { 20506, 0x00000008 }, /* GL_MAP_INVALIDATE_BUFFER_BIT */ - { 20535, 0x00000004 }, /* GL_MAP_INVALIDATE_RANGE_BIT */ - { 20563, 0x00000001 }, /* GL_MAP_READ_BIT */ - { 20579, 0x00000D11 }, /* GL_MAP_STENCIL */ - { 20594, 0x00000020 }, /* GL_MAP_UNSYNCHRONIZED_BIT */ - { 20620, 0x00000002 }, /* GL_MAP_WRITE_BIT */ - { 20637, 0x000088C0 }, /* GL_MATRIX0_ARB */ - { 20652, 0x00008630 }, /* GL_MATRIX0_NV */ - { 20666, 0x000088CA }, /* GL_MATRIX10_ARB */ - { 20682, 0x000088CB }, /* GL_MATRIX11_ARB */ - { 20698, 0x000088CC }, /* GL_MATRIX12_ARB */ - { 20714, 0x000088CD }, /* GL_MATRIX13_ARB */ - { 20730, 0x000088CE }, /* GL_MATRIX14_ARB */ - { 20746, 0x000088CF }, /* GL_MATRIX15_ARB */ - { 20762, 0x000088D0 }, /* GL_MATRIX16_ARB */ - { 20778, 0x000088D1 }, /* GL_MATRIX17_ARB */ - { 20794, 0x000088D2 }, /* GL_MATRIX18_ARB */ - { 20810, 0x000088D3 }, /* GL_MATRIX19_ARB */ - { 20826, 0x000088C1 }, /* GL_MATRIX1_ARB */ - { 20841, 0x00008631 }, /* GL_MATRIX1_NV */ - { 20855, 0x000088D4 }, /* GL_MATRIX20_ARB */ - { 20871, 0x000088D5 }, /* GL_MATRIX21_ARB */ - { 20887, 0x000088D6 }, /* GL_MATRIX22_ARB */ - { 20903, 0x000088D7 }, /* GL_MATRIX23_ARB */ - { 20919, 0x000088D8 }, /* GL_MATRIX24_ARB */ - { 20935, 0x000088D9 }, /* GL_MATRIX25_ARB */ - { 20951, 0x000088DA }, /* GL_MATRIX26_ARB */ - { 20967, 0x000088DB }, /* GL_MATRIX27_ARB */ - { 20983, 0x000088DC }, /* GL_MATRIX28_ARB */ - { 20999, 0x000088DD }, /* GL_MATRIX29_ARB */ - { 21015, 0x000088C2 }, /* GL_MATRIX2_ARB */ - { 21030, 0x00008632 }, /* GL_MATRIX2_NV */ - { 21044, 0x000088DE }, /* GL_MATRIX30_ARB */ - { 21060, 0x000088DF }, /* GL_MATRIX31_ARB */ - { 21076, 0x000088C3 }, /* GL_MATRIX3_ARB */ - { 21091, 0x00008633 }, /* GL_MATRIX3_NV */ - { 21105, 0x000088C4 }, /* GL_MATRIX4_ARB */ - { 21120, 0x00008634 }, /* GL_MATRIX4_NV */ - { 21134, 0x000088C5 }, /* GL_MATRIX5_ARB */ - { 21149, 0x00008635 }, /* GL_MATRIX5_NV */ - { 21163, 0x000088C6 }, /* GL_MATRIX6_ARB */ - { 21178, 0x00008636 }, /* GL_MATRIX6_NV */ - { 21192, 0x000088C7 }, /* GL_MATRIX7_ARB */ - { 21207, 0x00008637 }, /* GL_MATRIX7_NV */ - { 21221, 0x000088C8 }, /* GL_MATRIX8_ARB */ - { 21236, 0x000088C9 }, /* GL_MATRIX9_ARB */ - { 21251, 0x00008844 }, /* GL_MATRIX_INDEX_ARRAY_ARB */ - { 21277, 0x00008B9E }, /* GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES */ - { 21318, 0x00008844 }, /* GL_MATRIX_INDEX_ARRAY_OES */ - { 21344, 0x00008849 }, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ - { 21378, 0x00008849 }, /* GL_MATRIX_INDEX_ARRAY_POINTER_OES */ - { 21412, 0x00008846 }, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */ - { 21443, 0x00008846 }, /* GL_MATRIX_INDEX_ARRAY_SIZE_OES */ - { 21474, 0x00008848 }, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ - { 21507, 0x00008848 }, /* GL_MATRIX_INDEX_ARRAY_STRIDE_OES */ - { 21540, 0x00008847 }, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ - { 21571, 0x00008847 }, /* GL_MATRIX_INDEX_ARRAY_TYPE_OES */ - { 21602, 0x00000BA0 }, /* GL_MATRIX_MODE */ - { 21617, 0x00008840 }, /* GL_MATRIX_PALETTE_ARB */ - { 21639, 0x00008840 }, /* GL_MATRIX_PALETTE_OES */ - { 21661, 0x00008008 }, /* GL_MAX */ - { 21668, 0x00008073 }, /* GL_MAX_3D_TEXTURE_SIZE */ - { 21691, 0x00008073 }, /* GL_MAX_3D_TEXTURE_SIZE_OES */ - { 21718, 0x000088FF }, /* GL_MAX_ARRAY_TEXTURE_LAYERS */ - { 21746, 0x000088FF }, /* GL_MAX_ARRAY_TEXTURE_LAYERS_EXT */ - { 21778, 0x00000D35 }, /* GL_MAX_ATTRIB_STACK_DEPTH */ - { 21804, 0x00000D3B }, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ - { 21837, 0x00008177 }, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ - { 21863, 0x00008178 }, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - { 21897, 0x00000D32 }, /* GL_MAX_CLIP_DISTANCES */ - { 21919, 0x00000D32 }, /* GL_MAX_CLIP_PLANES */ - { 21938, 0x00008CDF }, /* GL_MAX_COLOR_ATTACHMENTS */ - { 21963, 0x00008CDF }, /* GL_MAX_COLOR_ATTACHMENTS_EXT */ - { 21992, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ - { 22024, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI */ - { 22060, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ - { 22096, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB */ - { 22136, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT */ - { 22162, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT_EXT */ - { 22192, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH */ - { 22217, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH_EXT */ - { 22246, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ - { 22275, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB */ - { 22308, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES */ - { 22341, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS */ - { 22361, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ARB */ - { 22385, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ATI */ - { 22409, 0x000080E9 }, /* GL_MAX_ELEMENTS_INDICES */ - { 22433, 0x000080E8 }, /* GL_MAX_ELEMENTS_VERTICES */ - { 22458, 0x00000D30 }, /* GL_MAX_EVAL_ORDER */ - { 22476, 0x00008008 }, /* GL_MAX_EXT */ - { 22487, 0x00009125 }, /* GL_MAX_FRAGMENT_INPUT_COMPONENTS */ - { 22520, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ - { 22555, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB */ - { 22594, 0x00008DFD }, /* GL_MAX_FRAGMENT_UNIFORM_VECTORS */ - { 22626, 0x00009123 }, /* GL_MAX_GEOMETRY_INPUT_COMPONENTS */ - { 22659, 0x00009124 }, /* GL_MAX_GEOMETRY_OUTPUT_COMPONENTS */ - { 22693, 0x00008DE0 }, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES */ - { 22725, 0x00008DE0 }, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB */ - { 22761, 0x00008C29 }, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS */ - { 22797, 0x00008C29 }, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB */ - { 22837, 0x00008DE1 }, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS */ - { 22877, 0x00008DE1 }, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB */ - { 22921, 0x00008DDF }, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS */ - { 22956, 0x00008DDF }, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB */ - { 22995, 0x00008DDD }, /* GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB */ - { 23034, 0x00000D31 }, /* GL_MAX_LIGHTS */ - { 23048, 0x00000B31 }, /* GL_MAX_LIST_NESTING */ - { 23068, 0x00008841 }, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */ - { 23106, 0x00000D36 }, /* GL_MAX_MODELVIEW_STACK_DEPTH */ - { 23135, 0x00000D37 }, /* GL_MAX_NAME_STACK_DEPTH */ - { 23159, 0x00008842 }, /* GL_MAX_PALETTE_MATRICES_ARB */ - { 23187, 0x00008842 }, /* GL_MAX_PALETTE_MATRICES_OES */ - { 23215, 0x00000D34 }, /* GL_MAX_PIXEL_MAP_TABLE */ - { 23238, 0x000088B1 }, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */ - { 23275, 0x0000880B }, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */ - { 23311, 0x000088AD }, /* GL_MAX_PROGRAM_ATTRIBS_ARB */ - { 23338, 0x000088F5 }, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ - { 23367, 0x000088B5 }, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ - { 23401, 0x000088F4 }, /* GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV */ - { 23437, 0x000088F6 }, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ - { 23464, 0x000088A1 }, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ - { 23496, 0x000088B4 }, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ - { 23532, 0x000088F8 }, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ - { 23561, 0x000088F7 }, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ - { 23590, 0x0000862F }, /* GL_MAX_PROGRAM_MATRICES_ARB */ - { 23618, 0x0000862E }, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ - { 23656, 0x000088B3 }, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - { 23700, 0x0000880E }, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - { 23743, 0x000088AF }, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */ - { 23777, 0x000088A3 }, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - { 23816, 0x000088AB }, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */ - { 23853, 0x000088A7 }, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */ - { 23891, 0x00008810 }, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - { 23934, 0x0000880F }, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - { 23977, 0x000088A9 }, /* GL_MAX_PROGRAM_PARAMETERS_ARB */ - { 24007, 0x000088A5 }, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */ - { 24038, 0x00008905 }, /* GL_MAX_PROGRAM_TEXEL_OFFSET */ - { 24066, 0x00008905 }, /* GL_MAX_PROGRAM_TEXEL_OFFSET_EXT */ - { 24098, 0x0000880D }, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */ - { 24134, 0x0000880C }, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */ - { 24170, 0x00000D38 }, /* GL_MAX_PROJECTION_STACK_DEPTH */ - { 24200, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE */ - { 24230, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB */ - { 24264, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_NV */ - { 24297, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE */ - { 24322, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE_EXT */ - { 24351, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE_OES */ - { 24380, 0x00008D57 }, /* GL_MAX_SAMPLES */ - { 24395, 0x00008D57 }, /* GL_MAX_SAMPLES_EXT */ - { 24414, 0x00009111 }, /* GL_MAX_SERVER_WAIT_TIMEOUT */ - { 24441, 0x00008504 }, /* GL_MAX_SHININESS_NV */ - { 24461, 0x00008505 }, /* GL_MAX_SPOT_EXPONENT_NV */ - { 24485, 0x00008C2B }, /* GL_MAX_TEXTURE_BUFFER_SIZE */ - { 24512, 0x00008C2B }, /* GL_MAX_TEXTURE_BUFFER_SIZE_ARB */ - { 24543, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS */ - { 24565, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS_ARB */ - { 24591, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS */ - { 24618, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS_ARB */ - { 24649, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS */ - { 24673, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS_EXT */ - { 24701, 0x000084FF }, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ - { 24735, 0x00000D33 }, /* GL_MAX_TEXTURE_SIZE */ - { 24755, 0x00000D39 }, /* GL_MAX_TEXTURE_STACK_DEPTH */ - { 24782, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS */ - { 24803, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS_ARB */ - { 24828, 0x0000862F }, /* GL_MAX_TRACK_MATRICES_NV */ - { 24853, 0x0000862E }, /* GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV */ - { 24888, 0x00008C8A }, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS */ - { 24937, 0x00008C8A }, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT */ - { 24990, 0x00008C8B }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS */ - { 25033, 0x00008C8B }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT */ - { 25080, 0x00008C80 }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS */ - { 25126, 0x00008C80 }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT */ - { 25176, 0x00008B4B }, /* GL_MAX_VARYING_COMPONENTS */ - { 25202, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS */ - { 25224, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS_ARB */ - { 25250, 0x00008DFC }, /* GL_MAX_VARYING_VECTORS */ - { 25273, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS */ - { 25295, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS_ARB */ - { 25321, 0x00009122 }, /* GL_MAX_VERTEX_OUTPUT_COMPONENTS */ - { 25353, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ - { 25387, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB */ - { 25425, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ - { 25458, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB */ - { 25495, 0x00008DFB }, /* GL_MAX_VERTEX_UNIFORM_VECTORS */ - { 25525, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_ARB */ - { 25549, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_OES */ - { 25573, 0x00008DDE }, /* GL_MAX_VERTEX_VARYING_COMPONENTS_ARB */ - { 25610, 0x00000D3A }, /* GL_MAX_VIEWPORT_DIMS */ - { 25631, 0x00008DF1 }, /* GL_MEDIUM_FLOAT */ - { 25647, 0x00008DF4 }, /* GL_MEDIUM_INT */ - { 25661, 0x00008007 }, /* GL_MIN */ - { 25668, 0x0000802E }, /* GL_MINMAX */ - { 25678, 0x0000802E }, /* GL_MINMAX_EXT */ - { 25692, 0x0000802F }, /* GL_MINMAX_FORMAT */ - { 25709, 0x0000802F }, /* GL_MINMAX_FORMAT_EXT */ - { 25730, 0x00008030 }, /* GL_MINMAX_SINK */ - { 25745, 0x00008030 }, /* GL_MINMAX_SINK_EXT */ - { 25764, 0x0000821C }, /* GL_MINOR_VERSION */ - { 25781, 0x00008007 }, /* GL_MIN_EXT */ - { 25792, 0x00008904 }, /* GL_MIN_PROGRAM_TEXEL_OFFSET */ - { 25820, 0x00008904 }, /* GL_MIN_PROGRAM_TEXEL_OFFSET_EXT */ - { 25852, 0x00008370 }, /* GL_MIRRORED_REPEAT */ - { 25871, 0x00008370 }, /* GL_MIRRORED_REPEAT_ARB */ - { 25894, 0x00008370 }, /* GL_MIRRORED_REPEAT_IBM */ - { 25917, 0x00008742 }, /* GL_MIRROR_CLAMP_ATI */ - { 25937, 0x00008742 }, /* GL_MIRROR_CLAMP_EXT */ - { 25957, 0x00008912 }, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ - { 25987, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_ATI */ - { 26015, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ - { 26043, 0x00001700 }, /* GL_MODELVIEW */ - { 26056, 0x00001700 }, /* GL_MODELVIEW0_ARB */ - { 26074, 0x0000872A }, /* GL_MODELVIEW10_ARB */ - { 26093, 0x0000872B }, /* GL_MODELVIEW11_ARB */ - { 26112, 0x0000872C }, /* GL_MODELVIEW12_ARB */ - { 26131, 0x0000872D }, /* GL_MODELVIEW13_ARB */ - { 26150, 0x0000872E }, /* GL_MODELVIEW14_ARB */ - { 26169, 0x0000872F }, /* GL_MODELVIEW15_ARB */ - { 26188, 0x00008730 }, /* GL_MODELVIEW16_ARB */ - { 26207, 0x00008731 }, /* GL_MODELVIEW17_ARB */ - { 26226, 0x00008732 }, /* GL_MODELVIEW18_ARB */ - { 26245, 0x00008733 }, /* GL_MODELVIEW19_ARB */ - { 26264, 0x0000850A }, /* GL_MODELVIEW1_ARB */ - { 26282, 0x00008734 }, /* GL_MODELVIEW20_ARB */ - { 26301, 0x00008735 }, /* GL_MODELVIEW21_ARB */ - { 26320, 0x00008736 }, /* GL_MODELVIEW22_ARB */ - { 26339, 0x00008737 }, /* GL_MODELVIEW23_ARB */ - { 26358, 0x00008738 }, /* GL_MODELVIEW24_ARB */ - { 26377, 0x00008739 }, /* GL_MODELVIEW25_ARB */ - { 26396, 0x0000873A }, /* GL_MODELVIEW26_ARB */ - { 26415, 0x0000873B }, /* GL_MODELVIEW27_ARB */ - { 26434, 0x0000873C }, /* GL_MODELVIEW28_ARB */ - { 26453, 0x0000873D }, /* GL_MODELVIEW29_ARB */ - { 26472, 0x00008722 }, /* GL_MODELVIEW2_ARB */ - { 26490, 0x0000873E }, /* GL_MODELVIEW30_ARB */ - { 26509, 0x0000873F }, /* GL_MODELVIEW31_ARB */ - { 26528, 0x00008723 }, /* GL_MODELVIEW3_ARB */ - { 26546, 0x00008724 }, /* GL_MODELVIEW4_ARB */ - { 26564, 0x00008725 }, /* GL_MODELVIEW5_ARB */ - { 26582, 0x00008726 }, /* GL_MODELVIEW6_ARB */ - { 26600, 0x00008727 }, /* GL_MODELVIEW7_ARB */ - { 26618, 0x00008728 }, /* GL_MODELVIEW8_ARB */ - { 26636, 0x00008729 }, /* GL_MODELVIEW9_ARB */ - { 26654, 0x00000BA6 }, /* GL_MODELVIEW_MATRIX */ - { 26674, 0x0000898D }, /* GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES */ - { 26716, 0x00008629 }, /* GL_MODELVIEW_PROJECTION_NV */ - { 26743, 0x00000BA3 }, /* GL_MODELVIEW_STACK_DEPTH */ - { 26768, 0x00002100 }, /* GL_MODULATE */ - { 26780, 0x00008744 }, /* GL_MODULATE_ADD_ATI */ - { 26800, 0x00008745 }, /* GL_MODULATE_SIGNED_ADD_ATI */ - { 26827, 0x00008746 }, /* GL_MODULATE_SUBTRACT_ATI */ - { 26852, 0x00000103 }, /* GL_MULT */ - { 26860, 0x0000809D }, /* GL_MULTISAMPLE */ - { 26875, 0x000086B2 }, /* GL_MULTISAMPLE_3DFX */ - { 26895, 0x0000809D }, /* GL_MULTISAMPLE_ARB */ - { 26914, 0x20000000 }, /* GL_MULTISAMPLE_BIT */ - { 26933, 0x20000000 }, /* GL_MULTISAMPLE_BIT_3DFX */ - { 26957, 0x20000000 }, /* GL_MULTISAMPLE_BIT_ARB */ - { 26980, 0x00008534 }, /* GL_MULTISAMPLE_FILTER_HINT_NV */ - { 27010, 0x00002A25 }, /* GL_N3F_V3F */ - { 27021, 0x00000D70 }, /* GL_NAME_STACK_DEPTH */ - { 27041, 0x0000150E }, /* GL_NAND */ - { 27049, 0x00002600 }, /* GL_NEAREST */ - { 27060, 0x0000844E }, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ - { 27091, 0x0000844D }, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ - { 27123, 0x00002702 }, /* GL_NEAREST_MIPMAP_LINEAR */ - { 27148, 0x00002700 }, /* GL_NEAREST_MIPMAP_NEAREST */ - { 27174, 0x00000200 }, /* GL_NEVER */ - { 27183, 0x00001102 }, /* GL_NICEST */ - { 27193, 0x00000000 }, /* GL_NONE */ - { 27201, 0x00000000 }, /* GL_NONE_OES */ - { 27213, 0x00001505 }, /* GL_NOOP */ - { 27221, 0x00001508 }, /* GL_NOR */ - { 27228, 0x00000BA1 }, /* GL_NORMALIZE */ - { 27241, 0x00008075 }, /* GL_NORMAL_ARRAY */ - { 27257, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ - { 27288, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING_ARB */ - { 27323, 0x0000808F }, /* GL_NORMAL_ARRAY_POINTER */ - { 27347, 0x0000807F }, /* GL_NORMAL_ARRAY_STRIDE */ - { 27370, 0x0000807E }, /* GL_NORMAL_ARRAY_TYPE */ - { 27391, 0x00008511 }, /* GL_NORMAL_MAP */ - { 27405, 0x00008511 }, /* GL_NORMAL_MAP_ARB */ - { 27423, 0x00008511 }, /* GL_NORMAL_MAP_NV */ - { 27440, 0x00008511 }, /* GL_NORMAL_MAP_OES */ - { 27458, 0x00000205 }, /* GL_NOTEQUAL */ - { 27470, 0x00000000 }, /* GL_NO_ERROR */ - { 27482, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ - { 27516, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB */ - { 27554, 0x0000821D }, /* GL_NUM_EXTENSIONS */ - { 27572, 0x000087FE }, /* GL_NUM_PROGRAM_BINARY_FORMATS_OES */ - { 27606, 0x00008DF9 }, /* GL_NUM_SHADER_BINARY_FORMATS */ - { 27635, 0x00008B89 }, /* GL_OBJECT_ACTIVE_ATTRIBUTES_ARB */ - { 27667, 0x00008B8A }, /* GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB */ - { 27709, 0x00008B86 }, /* GL_OBJECT_ACTIVE_UNIFORMS_ARB */ - { 27739, 0x00008B87 }, /* GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB */ - { 27779, 0x00008B85 }, /* GL_OBJECT_ATTACHED_OBJECTS_ARB */ - { 27810, 0x00008B81 }, /* GL_OBJECT_COMPILE_STATUS_ARB */ - { 27839, 0x00008B80 }, /* GL_OBJECT_DELETE_STATUS_ARB */ - { 27867, 0x00008B84 }, /* GL_OBJECT_INFO_LOG_LENGTH_ARB */ - { 27897, 0x00002401 }, /* GL_OBJECT_LINEAR */ - { 27914, 0x00008B82 }, /* GL_OBJECT_LINK_STATUS_ARB */ - { 27940, 0x00002501 }, /* GL_OBJECT_PLANE */ - { 27956, 0x00008B88 }, /* GL_OBJECT_SHADER_SOURCE_LENGTH_ARB */ - { 27991, 0x00008B4F }, /* GL_OBJECT_SUBTYPE_ARB */ - { 28013, 0x00009112 }, /* GL_OBJECT_TYPE */ - { 28028, 0x00008B4E }, /* GL_OBJECT_TYPE_ARB */ - { 28047, 0x00008B83 }, /* GL_OBJECT_VALIDATE_STATUS_ARB */ - { 28077, 0x00008165 }, /* GL_OCCLUSION_TEST_HP */ - { 28098, 0x00008166 }, /* GL_OCCLUSION_TEST_RESULT_HP */ - { 28126, 0x00000001 }, /* GL_ONE */ - { 28133, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA */ - { 28161, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA_EXT */ - { 28193, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR */ - { 28221, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR_EXT */ - { 28253, 0x00000305 }, /* GL_ONE_MINUS_DST_ALPHA */ - { 28276, 0x00000307 }, /* GL_ONE_MINUS_DST_COLOR */ - { 28299, 0x00000303 }, /* GL_ONE_MINUS_SRC_ALPHA */ - { 28322, 0x00000301 }, /* GL_ONE_MINUS_SRC_COLOR */ - { 28345, 0x00008598 }, /* GL_OPERAND0_ALPHA */ - { 28363, 0x00008598 }, /* GL_OPERAND0_ALPHA_ARB */ - { 28385, 0x00008598 }, /* GL_OPERAND0_ALPHA_EXT */ - { 28407, 0x00008590 }, /* GL_OPERAND0_RGB */ - { 28423, 0x00008590 }, /* GL_OPERAND0_RGB_ARB */ - { 28443, 0x00008590 }, /* GL_OPERAND0_RGB_EXT */ - { 28463, 0x00008599 }, /* GL_OPERAND1_ALPHA */ - { 28481, 0x00008599 }, /* GL_OPERAND1_ALPHA_ARB */ - { 28503, 0x00008599 }, /* GL_OPERAND1_ALPHA_EXT */ - { 28525, 0x00008591 }, /* GL_OPERAND1_RGB */ - { 28541, 0x00008591 }, /* GL_OPERAND1_RGB_ARB */ - { 28561, 0x00008591 }, /* GL_OPERAND1_RGB_EXT */ - { 28581, 0x0000859A }, /* GL_OPERAND2_ALPHA */ - { 28599, 0x0000859A }, /* GL_OPERAND2_ALPHA_ARB */ - { 28621, 0x0000859A }, /* GL_OPERAND2_ALPHA_EXT */ - { 28643, 0x00008592 }, /* GL_OPERAND2_RGB */ - { 28659, 0x00008592 }, /* GL_OPERAND2_RGB_ARB */ - { 28679, 0x00008592 }, /* GL_OPERAND2_RGB_EXT */ - { 28699, 0x0000859B }, /* GL_OPERAND3_ALPHA_NV */ - { 28720, 0x00008593 }, /* GL_OPERAND3_RGB_NV */ - { 28739, 0x00001507 }, /* GL_OR */ - { 28745, 0x00000A01 }, /* GL_ORDER */ - { 28754, 0x0000150D }, /* GL_OR_INVERTED */ - { 28769, 0x0000150B }, /* GL_OR_REVERSE */ - { 28783, 0x00000505 }, /* GL_OUT_OF_MEMORY */ - { 28800, 0x00000D05 }, /* GL_PACK_ALIGNMENT */ - { 28818, 0x0000806C }, /* GL_PACK_IMAGE_HEIGHT */ - { 28839, 0x00008758 }, /* GL_PACK_INVERT_MESA */ - { 28859, 0x00000D01 }, /* GL_PACK_LSB_FIRST */ - { 28877, 0x00000D02 }, /* GL_PACK_ROW_LENGTH */ - { 28896, 0x0000806B }, /* GL_PACK_SKIP_IMAGES */ - { 28916, 0x00000D04 }, /* GL_PACK_SKIP_PIXELS */ - { 28936, 0x00000D03 }, /* GL_PACK_SKIP_ROWS */ - { 28954, 0x00000D00 }, /* GL_PACK_SWAP_BYTES */ - { 28973, 0x00008B92 }, /* GL_PALETTE4_R5_G6_B5_OES */ - { 28998, 0x00008B94 }, /* GL_PALETTE4_RGB5_A1_OES */ - { 29022, 0x00008B90 }, /* GL_PALETTE4_RGB8_OES */ - { 29043, 0x00008B93 }, /* GL_PALETTE4_RGBA4_OES */ - { 29065, 0x00008B91 }, /* GL_PALETTE4_RGBA8_OES */ - { 29087, 0x00008B97 }, /* GL_PALETTE8_R5_G6_B5_OES */ - { 29112, 0x00008B99 }, /* GL_PALETTE8_RGB5_A1_OES */ - { 29136, 0x00008B95 }, /* GL_PALETTE8_RGB8_OES */ - { 29157, 0x00008B98 }, /* GL_PALETTE8_RGBA4_OES */ - { 29179, 0x00008B96 }, /* GL_PALETTE8_RGBA8_OES */ - { 29201, 0x00000700 }, /* GL_PASS_THROUGH_TOKEN */ - { 29223, 0x00000C50 }, /* GL_PERSPECTIVE_CORRECTION_HINT */ - { 29254, 0x00000C79 }, /* GL_PIXEL_MAP_A_TO_A */ - { 29274, 0x00000CB9 }, /* GL_PIXEL_MAP_A_TO_A_SIZE */ - { 29299, 0x00000C78 }, /* GL_PIXEL_MAP_B_TO_B */ - { 29319, 0x00000CB8 }, /* GL_PIXEL_MAP_B_TO_B_SIZE */ - { 29344, 0x00000C77 }, /* GL_PIXEL_MAP_G_TO_G */ - { 29364, 0x00000CB7 }, /* GL_PIXEL_MAP_G_TO_G_SIZE */ - { 29389, 0x00000C75 }, /* GL_PIXEL_MAP_I_TO_A */ - { 29409, 0x00000CB5 }, /* GL_PIXEL_MAP_I_TO_A_SIZE */ - { 29434, 0x00000C74 }, /* GL_PIXEL_MAP_I_TO_B */ - { 29454, 0x00000CB4 }, /* GL_PIXEL_MAP_I_TO_B_SIZE */ - { 29479, 0x00000C73 }, /* GL_PIXEL_MAP_I_TO_G */ - { 29499, 0x00000CB3 }, /* GL_PIXEL_MAP_I_TO_G_SIZE */ - { 29524, 0x00000C70 }, /* GL_PIXEL_MAP_I_TO_I */ - { 29544, 0x00000CB0 }, /* GL_PIXEL_MAP_I_TO_I_SIZE */ - { 29569, 0x00000C72 }, /* GL_PIXEL_MAP_I_TO_R */ - { 29589, 0x00000CB2 }, /* GL_PIXEL_MAP_I_TO_R_SIZE */ - { 29614, 0x00000C76 }, /* GL_PIXEL_MAP_R_TO_R */ - { 29634, 0x00000CB6 }, /* GL_PIXEL_MAP_R_TO_R_SIZE */ - { 29659, 0x00000C71 }, /* GL_PIXEL_MAP_S_TO_S */ - { 29679, 0x00000CB1 }, /* GL_PIXEL_MAP_S_TO_S_SIZE */ - { 29704, 0x00000020 }, /* GL_PIXEL_MODE_BIT */ - { 29722, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER */ - { 29743, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING */ - { 29772, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING_EXT */ - { 29805, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER_EXT */ - { 29830, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER */ - { 29853, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ - { 29884, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING_EXT */ - { 29919, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER_EXT */ - { 29946, 0x00001B00 }, /* GL_POINT */ - { 29955, 0x00000000 }, /* GL_POINTS */ - { 29965, 0x00000002 }, /* GL_POINT_BIT */ - { 29978, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION */ - { 30008, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_ARB */ - { 30042, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_EXT */ - { 30076, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_SGIS */ - { 30111, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE */ - { 30140, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_ARB */ - { 30173, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_EXT */ - { 30206, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_SGIS */ - { 30240, 0x00000B11 }, /* GL_POINT_SIZE */ - { 30254, 0x00008B9F }, /* GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES */ - { 30293, 0x00008B9C }, /* GL_POINT_SIZE_ARRAY_OES */ - { 30317, 0x0000898C }, /* GL_POINT_SIZE_ARRAY_POINTER_OES */ - { 30349, 0x0000898B }, /* GL_POINT_SIZE_ARRAY_STRIDE_OES */ - { 30380, 0x0000898A }, /* GL_POINT_SIZE_ARRAY_TYPE_OES */ - { 30409, 0x00000B13 }, /* GL_POINT_SIZE_GRANULARITY */ - { 30435, 0x00008127 }, /* GL_POINT_SIZE_MAX */ - { 30453, 0x00008127 }, /* GL_POINT_SIZE_MAX_ARB */ - { 30475, 0x00008127 }, /* GL_POINT_SIZE_MAX_EXT */ - { 30497, 0x00008127 }, /* GL_POINT_SIZE_MAX_SGIS */ - { 30520, 0x00008126 }, /* GL_POINT_SIZE_MIN */ - { 30538, 0x00008126 }, /* GL_POINT_SIZE_MIN_ARB */ - { 30560, 0x00008126 }, /* GL_POINT_SIZE_MIN_EXT */ - { 30582, 0x00008126 }, /* GL_POINT_SIZE_MIN_SGIS */ - { 30605, 0x00000B12 }, /* GL_POINT_SIZE_RANGE */ - { 30625, 0x00000B10 }, /* GL_POINT_SMOOTH */ - { 30641, 0x00000C51 }, /* GL_POINT_SMOOTH_HINT */ - { 30662, 0x00008861 }, /* GL_POINT_SPRITE */ - { 30678, 0x00008861 }, /* GL_POINT_SPRITE_ARB */ - { 30698, 0x00008CA0 }, /* GL_POINT_SPRITE_COORD_ORIGIN */ - { 30727, 0x00008861 }, /* GL_POINT_SPRITE_NV */ - { 30746, 0x00008861 }, /* GL_POINT_SPRITE_OES */ - { 30766, 0x00008863 }, /* GL_POINT_SPRITE_R_MODE_NV */ - { 30792, 0x00000701 }, /* GL_POINT_TOKEN */ - { 30807, 0x00000009 }, /* GL_POLYGON */ - { 30818, 0x00000008 }, /* GL_POLYGON_BIT */ - { 30833, 0x00000B40 }, /* GL_POLYGON_MODE */ - { 30849, 0x00008039 }, /* GL_POLYGON_OFFSET_BIAS */ - { 30872, 0x00008038 }, /* GL_POLYGON_OFFSET_FACTOR */ - { 30897, 0x00008037 }, /* GL_POLYGON_OFFSET_FILL */ - { 30920, 0x00002A02 }, /* GL_POLYGON_OFFSET_LINE */ - { 30943, 0x00002A01 }, /* GL_POLYGON_OFFSET_POINT */ - { 30967, 0x00002A00 }, /* GL_POLYGON_OFFSET_UNITS */ - { 30991, 0x00000B41 }, /* GL_POLYGON_SMOOTH */ - { 31009, 0x00000C53 }, /* GL_POLYGON_SMOOTH_HINT */ - { 31032, 0x00000B42 }, /* GL_POLYGON_STIPPLE */ - { 31051, 0x00000010 }, /* GL_POLYGON_STIPPLE_BIT */ - { 31074, 0x00000703 }, /* GL_POLYGON_TOKEN */ - { 31091, 0x00001203 }, /* GL_POSITION */ - { 31103, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ - { 31135, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI */ - { 31171, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ - { 31204, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI */ - { 31241, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ - { 31272, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI */ - { 31307, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ - { 31339, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI */ - { 31375, 0x000080D2 }, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ - { 31408, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ - { 31440, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI */ - { 31476, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ - { 31509, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI */ - { 31546, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS */ - { 31576, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS_SGI */ - { 31610, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE */ - { 31641, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE_SGI */ - { 31676, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ - { 31707, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS_EXT */ - { 31742, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ - { 31774, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE_EXT */ - { 31810, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS */ - { 31840, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS_EXT */ - { 31874, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE */ - { 31905, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE_EXT */ - { 31940, 0x000080D1 }, /* GL_POST_CONVOLUTION_COLOR_TABLE */ - { 31972, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS */ - { 32003, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS_EXT */ - { 32038, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE */ - { 32070, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE_EXT */ - { 32106, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS */ - { 32135, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS_EXT */ - { 32168, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE */ - { 32198, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE_EXT */ - { 32232, 0x0000817B }, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ - { 32271, 0x00008179 }, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ - { 32304, 0x0000817C }, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ - { 32344, 0x0000817A }, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ - { 32378, 0x00008578 }, /* GL_PREVIOUS */ - { 32390, 0x00008578 }, /* GL_PREVIOUS_ARB */ - { 32406, 0x00008578 }, /* GL_PREVIOUS_EXT */ - { 32422, 0x00008577 }, /* GL_PRIMARY_COLOR */ - { 32439, 0x00008577 }, /* GL_PRIMARY_COLOR_ARB */ - { 32460, 0x00008577 }, /* GL_PRIMARY_COLOR_EXT */ - { 32481, 0x00008C87 }, /* GL_PRIMITIVES_GENERATED */ - { 32505, 0x00008C87 }, /* GL_PRIMITIVES_GENERATED_EXT */ - { 32533, 0x00008F9D }, /* GL_PRIMITIVE_RESTART */ - { 32554, 0x00008F9E }, /* GL_PRIMITIVE_RESTART_INDEX */ - { 32581, 0x00008559 }, /* GL_PRIMITIVE_RESTART_INDEX_NV */ - { 32611, 0x00008558 }, /* GL_PRIMITIVE_RESTART_NV */ - { 32635, 0x000088B0 }, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ - { 32668, 0x00008805 }, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ - { 32700, 0x000088AC }, /* GL_PROGRAM_ATTRIBS_ARB */ - { 32723, 0x000087FF }, /* GL_PROGRAM_BINARY_FORMATS_OES */ - { 32753, 0x00008741 }, /* GL_PROGRAM_BINARY_LENGTH_OES */ - { 32782, 0x00008677 }, /* GL_PROGRAM_BINDING_ARB */ - { 32805, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_ARB */ - { 32835, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_NV */ - { 32864, 0x00008874 }, /* GL_PROGRAM_ERROR_STRING_ARB */ - { 32892, 0x00008876 }, /* GL_PROGRAM_FORMAT_ARB */ - { 32914, 0x00008875 }, /* GL_PROGRAM_FORMAT_ASCII_ARB */ - { 32942, 0x000088A0 }, /* GL_PROGRAM_INSTRUCTIONS_ARB */ - { 32970, 0x00008627 }, /* GL_PROGRAM_LENGTH_ARB */ - { 32992, 0x00008627 }, /* GL_PROGRAM_LENGTH_NV */ - { 33013, 0x000088B2 }, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - { 33053, 0x00008808 }, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - { 33092, 0x000088AE }, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ - { 33122, 0x000088A2 }, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - { 33157, 0x000088AA }, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ - { 33190, 0x000088A6 }, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ - { 33224, 0x0000880A }, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - { 33263, 0x00008809 }, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - { 33302, 0x00008B40 }, /* GL_PROGRAM_OBJECT_ARB */ - { 33324, 0x000088A8 }, /* GL_PROGRAM_PARAMETERS_ARB */ - { 33350, 0x00008644 }, /* GL_PROGRAM_PARAMETER_NV */ - { 33374, 0x00008642 }, /* GL_PROGRAM_POINT_SIZE */ - { 33396, 0x00008642 }, /* GL_PROGRAM_POINT_SIZE_ARB */ - { 33422, 0x00008647 }, /* GL_PROGRAM_RESIDENT_NV */ - { 33445, 0x00008628 }, /* GL_PROGRAM_STRING_ARB */ - { 33467, 0x00008628 }, /* GL_PROGRAM_STRING_NV */ - { 33488, 0x00008646 }, /* GL_PROGRAM_TARGET_NV */ - { 33509, 0x000088A4 }, /* GL_PROGRAM_TEMPORARIES_ARB */ - { 33536, 0x00008807 }, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ - { 33568, 0x00008806 }, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ - { 33600, 0x000088B6 }, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ - { 33635, 0x00001701 }, /* GL_PROJECTION */ - { 33649, 0x00000BA7 }, /* GL_PROJECTION_MATRIX */ - { 33670, 0x0000898E }, /* GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES */ - { 33713, 0x00000BA4 }, /* GL_PROJECTION_STACK_DEPTH */ - { 33739, 0x00008E4F }, /* GL_PROVOKING_VERTEX */ - { 33759, 0x00008E4F }, /* GL_PROVOKING_VERTEX_EXT */ - { 33783, 0x000080D3 }, /* GL_PROXY_COLOR_TABLE */ - { 33804, 0x00008025 }, /* GL_PROXY_HISTOGRAM */ - { 33823, 0x00008025 }, /* GL_PROXY_HISTOGRAM_EXT */ - { 33846, 0x000080D5 }, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ - { 33885, 0x000080D4 }, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ - { 33923, 0x00008063 }, /* GL_PROXY_TEXTURE_1D */ - { 33943, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY */ - { 33969, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY_EXT */ - { 33999, 0x00008063 }, /* GL_PROXY_TEXTURE_1D_EXT */ - { 34023, 0x00008064 }, /* GL_PROXY_TEXTURE_2D */ - { 34043, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY */ - { 34069, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY_EXT */ - { 34099, 0x00008064 }, /* GL_PROXY_TEXTURE_2D_EXT */ - { 34123, 0x00008070 }, /* GL_PROXY_TEXTURE_3D */ - { 34143, 0x000080BD }, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ - { 34176, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP */ - { 34202, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP_ARB */ - { 34232, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE */ - { 34259, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */ - { 34290, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_NV */ - { 34320, 0x00008A1D }, /* GL_PURGEABLE_APPLE */ - { 34339, 0x00002003 }, /* GL_Q */ - { 34344, 0x00001209 }, /* GL_QUADRATIC_ATTENUATION */ - { 34369, 0x00000007 }, /* GL_QUADS */ - { 34378, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION */ - { 34422, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT */ - { 34470, 0x00008614 }, /* GL_QUAD_MESH_SUN */ - { 34487, 0x00000008 }, /* GL_QUAD_STRIP */ - { 34501, 0x00008E16 }, /* GL_QUERY_BY_REGION_NO_WAIT */ - { 34528, 0x00008E16 }, /* GL_QUERY_BY_REGION_NO_WAIT_NV */ - { 34558, 0x00008E15 }, /* GL_QUERY_BY_REGION_WAIT */ - { 34582, 0x00008E15 }, /* GL_QUERY_BY_REGION_WAIT_NV */ - { 34609, 0x00008864 }, /* GL_QUERY_COUNTER_BITS */ - { 34631, 0x00008864 }, /* GL_QUERY_COUNTER_BITS_ARB */ - { 34657, 0x00008E14 }, /* GL_QUERY_NO_WAIT */ - { 34674, 0x00008E14 }, /* GL_QUERY_NO_WAIT_NV */ - { 34694, 0x00008866 }, /* GL_QUERY_RESULT */ - { 34710, 0x00008866 }, /* GL_QUERY_RESULT_ARB */ - { 34730, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE */ - { 34756, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE_ARB */ - { 34786, 0x00008E13 }, /* GL_QUERY_WAIT */ - { 34800, 0x00008E13 }, /* GL_QUERY_WAIT_NV */ - { 34817, 0x00002002 }, /* GL_R */ - { 34822, 0x00008C3A }, /* GL_R11F_G11F_B10F */ - { 34840, 0x00008F98 }, /* GL_R16_SNORM */ - { 34853, 0x00002A10 }, /* GL_R3_G3_B2 */ - { 34865, 0x00008F94 }, /* GL_R8_SNORM */ - { 34877, 0x00008C89 }, /* GL_RASTERIZER_DISCARD */ - { 34899, 0x00008C89 }, /* GL_RASTERIZER_DISCARD_EXT */ - { 34925, 0x00019262 }, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ - { 34958, 0x00000C02 }, /* GL_READ_BUFFER */ - { 34973, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER */ - { 34993, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING */ - { 35021, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING_EXT */ - { 35053, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER_EXT */ - { 35077, 0x000088B8 }, /* GL_READ_ONLY */ - { 35090, 0x000088B8 }, /* GL_READ_ONLY_ARB */ - { 35107, 0x000088BA }, /* GL_READ_WRITE */ - { 35121, 0x000088BA }, /* GL_READ_WRITE_ARB */ - { 35139, 0x00001903 }, /* GL_RED */ - { 35146, 0x00008016 }, /* GL_REDUCE */ - { 35156, 0x00008016 }, /* GL_REDUCE_EXT */ - { 35170, 0x00000D15 }, /* GL_RED_BIAS */ - { 35182, 0x00000D52 }, /* GL_RED_BITS */ - { 35194, 0x00008D94 }, /* GL_RED_INTEGER */ - { 35209, 0x00008D94 }, /* GL_RED_INTEGER_EXT */ - { 35228, 0x00000D14 }, /* GL_RED_SCALE */ - { 35241, 0x00008F90 }, /* GL_RED_SNORM */ - { 35254, 0x00008512 }, /* GL_REFLECTION_MAP */ - { 35272, 0x00008512 }, /* GL_REFLECTION_MAP_ARB */ - { 35294, 0x00008512 }, /* GL_REFLECTION_MAP_NV */ - { 35315, 0x00008512 }, /* GL_REFLECTION_MAP_OES */ - { 35337, 0x00008A19 }, /* GL_RELEASED_APPLE */ - { 35355, 0x00001C00 }, /* GL_RENDER */ - { 35365, 0x00008D41 }, /* GL_RENDERBUFFER */ - { 35381, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE */ - { 35408, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE_OES */ - { 35439, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING */ - { 35463, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_EXT */ - { 35491, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_OES */ - { 35519, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE */ - { 35545, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE_OES */ - { 35575, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE */ - { 35602, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE_OES */ - { 35633, 0x00008D41 }, /* GL_RENDERBUFFER_EXT */ - { 35653, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE */ - { 35680, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE_OES */ - { 35711, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT */ - { 35734, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_EXT */ - { 35761, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_OES */ - { 35788, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ - { 35820, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_EXT */ - { 35856, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_OES */ - { 35892, 0x00008D41 }, /* GL_RENDERBUFFER_OES */ - { 35912, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE */ - { 35937, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE_OES */ - { 35966, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES */ - { 35990, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES_EXT */ - { 36018, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE */ - { 36047, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE_OES */ - { 36080, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH */ - { 36102, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_EXT */ - { 36128, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_OES */ - { 36154, 0x00001F01 }, /* GL_RENDERER */ - { 36166, 0x00000C40 }, /* GL_RENDER_MODE */ - { 36181, 0x00002901 }, /* GL_REPEAT */ - { 36191, 0x00001E01 }, /* GL_REPLACE */ - { 36202, 0x00008062 }, /* GL_REPLACE_EXT */ - { 36217, 0x00008153 }, /* GL_REPLICATE_BORDER_HP */ - { 36240, 0x0000803A }, /* GL_RESCALE_NORMAL */ - { 36258, 0x0000803A }, /* GL_RESCALE_NORMAL_EXT */ - { 36280, 0x00008A1B }, /* GL_RETAINED_APPLE */ - { 36298, 0x00000102 }, /* GL_RETURN */ - { 36308, 0x00008F99 }, /* GL_RG16_SNORM */ - { 36322, 0x00008F95 }, /* GL_RG8_SNORM */ - { 36335, 0x00001907 }, /* GL_RGB */ - { 36342, 0x00008052 }, /* GL_RGB10 */ - { 36351, 0x00008059 }, /* GL_RGB10_A2 */ - { 36363, 0x00008059 }, /* GL_RGB10_A2_EXT */ - { 36379, 0x00008052 }, /* GL_RGB10_EXT */ - { 36392, 0x00008053 }, /* GL_RGB12 */ - { 36401, 0x00008053 }, /* GL_RGB12_EXT */ - { 36414, 0x00008054 }, /* GL_RGB16 */ - { 36423, 0x0000881B }, /* GL_RGB16F */ - { 36433, 0x00008D89 }, /* GL_RGB16I */ - { 36443, 0x00008D89 }, /* GL_RGB16I_EXT */ - { 36457, 0x00008D77 }, /* GL_RGB16UI */ - { 36468, 0x00008D77 }, /* GL_RGB16UI_EXT */ - { 36483, 0x00008054 }, /* GL_RGB16_EXT */ - { 36496, 0x00008F9A }, /* GL_RGB16_SNORM */ - { 36511, 0x0000804E }, /* GL_RGB2_EXT */ - { 36523, 0x00008815 }, /* GL_RGB32F */ - { 36533, 0x00008D83 }, /* GL_RGB32I */ - { 36543, 0x00008D83 }, /* GL_RGB32I_EXT */ - { 36557, 0x00008D71 }, /* GL_RGB32UI */ - { 36568, 0x00008D71 }, /* GL_RGB32UI_EXT */ - { 36583, 0x0000804F }, /* GL_RGB4 */ - { 36591, 0x0000804F }, /* GL_RGB4_EXT */ - { 36603, 0x000083A1 }, /* GL_RGB4_S3TC */ - { 36616, 0x00008050 }, /* GL_RGB5 */ - { 36624, 0x00008D62 }, /* GL_RGB565 */ - { 36634, 0x00008D62 }, /* GL_RGB565_OES */ - { 36648, 0x00008057 }, /* GL_RGB5_A1 */ - { 36659, 0x00008057 }, /* GL_RGB5_A1_EXT */ - { 36674, 0x00008057 }, /* GL_RGB5_A1_OES */ - { 36689, 0x00008050 }, /* GL_RGB5_EXT */ - { 36701, 0x00008051 }, /* GL_RGB8 */ - { 36709, 0x00008D8F }, /* GL_RGB8I */ - { 36718, 0x00008D8F }, /* GL_RGB8I_EXT */ - { 36731, 0x00008D7D }, /* GL_RGB8UI */ - { 36741, 0x00008D7D }, /* GL_RGB8UI_EXT */ - { 36755, 0x00008051 }, /* GL_RGB8_EXT */ - { 36767, 0x00008051 }, /* GL_RGB8_OES */ - { 36779, 0x00008F96 }, /* GL_RGB8_SNORM */ - { 36793, 0x00008C3D }, /* GL_RGB9_E5 */ - { 36804, 0x00001908 }, /* GL_RGBA */ - { 36812, 0x0000805A }, /* GL_RGBA12 */ - { 36822, 0x0000805A }, /* GL_RGBA12_EXT */ - { 36836, 0x0000805B }, /* GL_RGBA16 */ - { 36846, 0x0000881A }, /* GL_RGBA16F */ - { 36857, 0x00008D88 }, /* GL_RGBA16I */ - { 36868, 0x00008D88 }, /* GL_RGBA16I_EXT */ - { 36883, 0x00008D76 }, /* GL_RGBA16UI */ - { 36895, 0x00008D76 }, /* GL_RGBA16UI_EXT */ - { 36911, 0x0000805B }, /* GL_RGBA16_EXT */ - { 36925, 0x00008F9B }, /* GL_RGBA16_SNORM */ - { 36941, 0x00008055 }, /* GL_RGBA2 */ - { 36950, 0x00008055 }, /* GL_RGBA2_EXT */ - { 36963, 0x00008814 }, /* GL_RGBA32F */ - { 36974, 0x00008D82 }, /* GL_RGBA32I */ - { 36985, 0x00008D82 }, /* GL_RGBA32I_EXT */ - { 37000, 0x00008D70 }, /* GL_RGBA32UI */ - { 37012, 0x00008D70 }, /* GL_RGBA32UI_EXT */ - { 37028, 0x00008056 }, /* GL_RGBA4 */ - { 37037, 0x000083A5 }, /* GL_RGBA4_DXT5_S3TC */ - { 37056, 0x00008056 }, /* GL_RGBA4_EXT */ - { 37069, 0x00008056 }, /* GL_RGBA4_OES */ - { 37082, 0x000083A3 }, /* GL_RGBA4_S3TC */ - { 37096, 0x00008058 }, /* GL_RGBA8 */ - { 37105, 0x00008D8E }, /* GL_RGBA8I */ - { 37115, 0x00008D8E }, /* GL_RGBA8I_EXT */ - { 37129, 0x00008D7C }, /* GL_RGBA8UI */ - { 37140, 0x00008D7C }, /* GL_RGBA8UI_EXT */ - { 37155, 0x00008058 }, /* GL_RGBA8_EXT */ - { 37168, 0x00008058 }, /* GL_RGBA8_OES */ - { 37181, 0x00008F97 }, /* GL_RGBA8_SNORM */ - { 37196, 0x000083A4 }, /* GL_RGBA_DXT5_S3TC */ - { 37214, 0x00008820 }, /* GL_RGBA_FLOAT_MODE_ARB */ - { 37237, 0x00008D99 }, /* GL_RGBA_INTEGER */ - { 37253, 0x00008D99 }, /* GL_RGBA_INTEGER_EXT */ - { 37273, 0x00008D9E }, /* GL_RGBA_INTEGER_MODE_EXT */ - { 37298, 0x00000C31 }, /* GL_RGBA_MODE */ - { 37311, 0x000083A2 }, /* GL_RGBA_S3TC */ - { 37324, 0x00008F93 }, /* GL_RGBA_SNORM */ - { 37338, 0x00008D98 }, /* GL_RGB_INTEGER */ - { 37353, 0x00008D98 }, /* GL_RGB_INTEGER_EXT */ - { 37372, 0x000083A0 }, /* GL_RGB_S3TC */ - { 37384, 0x00008573 }, /* GL_RGB_SCALE */ - { 37397, 0x00008573 }, /* GL_RGB_SCALE_ARB */ - { 37414, 0x00008573 }, /* GL_RGB_SCALE_EXT */ - { 37431, 0x00008F92 }, /* GL_RGB_SNORM */ - { 37444, 0x00008F91 }, /* GL_RG_SNORM */ - { 37456, 0x00000407 }, /* GL_RIGHT */ - { 37465, 0x00002000 }, /* GL_S */ - { 37470, 0x00008B5D }, /* GL_SAMPLER_1D */ - { 37484, 0x00008DC0 }, /* GL_SAMPLER_1D_ARRAY */ - { 37504, 0x00008DC0 }, /* GL_SAMPLER_1D_ARRAY_EXT */ - { 37528, 0x00008DC3 }, /* GL_SAMPLER_1D_ARRAY_SHADOW */ - { 37555, 0x00008DC3 }, /* GL_SAMPLER_1D_ARRAY_SHADOW_EXT */ - { 37586, 0x00008B61 }, /* GL_SAMPLER_1D_SHADOW */ - { 37607, 0x00008B5E }, /* GL_SAMPLER_2D */ - { 37621, 0x00008DC1 }, /* GL_SAMPLER_2D_ARRAY */ - { 37641, 0x00008DC1 }, /* GL_SAMPLER_2D_ARRAY_EXT */ - { 37665, 0x00008DC4 }, /* GL_SAMPLER_2D_ARRAY_SHADOW */ - { 37692, 0x00008DC4 }, /* GL_SAMPLER_2D_ARRAY_SHADOW_EXT */ - { 37723, 0x00008B63 }, /* GL_SAMPLER_2D_RECT */ - { 37742, 0x00008B64 }, /* GL_SAMPLER_2D_RECT_SHADOW */ - { 37768, 0x00008B62 }, /* GL_SAMPLER_2D_SHADOW */ - { 37789, 0x00008B5F }, /* GL_SAMPLER_3D */ - { 37803, 0x00008B5F }, /* GL_SAMPLER_3D_OES */ - { 37821, 0x00008919 }, /* GL_SAMPLER_BINDING */ - { 37840, 0x00008DC2 }, /* GL_SAMPLER_BUFFER */ - { 37858, 0x00008DC2 }, /* GL_SAMPLER_BUFFER_EXT */ - { 37880, 0x00008B60 }, /* GL_SAMPLER_CUBE */ - { 37896, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW */ - { 37919, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW_EXT */ - { 37946, 0x000080A9 }, /* GL_SAMPLES */ - { 37957, 0x000086B4 }, /* GL_SAMPLES_3DFX */ - { 37973, 0x000080A9 }, /* GL_SAMPLES_ARB */ - { 37988, 0x00008914 }, /* GL_SAMPLES_PASSED */ - { 38006, 0x00008914 }, /* GL_SAMPLES_PASSED_ARB */ - { 38028, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ - { 38056, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE_ARB */ - { 38088, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE */ - { 38111, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE_ARB */ - { 38138, 0x000080A8 }, /* GL_SAMPLE_BUFFERS */ - { 38156, 0x000086B3 }, /* GL_SAMPLE_BUFFERS_3DFX */ - { 38179, 0x000080A8 }, /* GL_SAMPLE_BUFFERS_ARB */ - { 38201, 0x000080A0 }, /* GL_SAMPLE_COVERAGE */ - { 38220, 0x000080A0 }, /* GL_SAMPLE_COVERAGE_ARB */ - { 38243, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT */ - { 38269, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT_ARB */ - { 38299, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE */ - { 38324, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE_ARB */ - { 38353, 0x00080000 }, /* GL_SCISSOR_BIT */ - { 38368, 0x00000C10 }, /* GL_SCISSOR_BOX */ - { 38383, 0x00000C11 }, /* GL_SCISSOR_TEST */ - { 38399, 0x0000845E }, /* GL_SECONDARY_COLOR_ARRAY */ - { 38424, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ - { 38464, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB */ - { 38508, 0x0000845D }, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ - { 38541, 0x0000845A }, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ - { 38571, 0x0000845C }, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ - { 38603, 0x0000845B }, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ - { 38633, 0x00001C02 }, /* GL_SELECT */ - { 38643, 0x00000DF3 }, /* GL_SELECTION_BUFFER_POINTER */ - { 38671, 0x00000DF4 }, /* GL_SELECTION_BUFFER_SIZE */ - { 38696, 0x00008012 }, /* GL_SEPARABLE_2D */ - { 38712, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS */ - { 38732, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS_EXT */ - { 38756, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR */ - { 38783, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR_EXT */ - { 38814, 0x0000150F }, /* GL_SET */ - { 38821, 0x00008DF8 }, /* GL_SHADER_BINARY_FORMATS */ - { 38846, 0x00008DFA }, /* GL_SHADER_COMPILER */ - { 38865, 0x00008B48 }, /* GL_SHADER_OBJECT_ARB */ - { 38886, 0x00008B88 }, /* GL_SHADER_SOURCE_LENGTH */ - { 38910, 0x00008B4F }, /* GL_SHADER_TYPE */ - { 38925, 0x00000B54 }, /* GL_SHADE_MODEL */ - { 38940, 0x00008B8C }, /* GL_SHADING_LANGUAGE_VERSION */ - { 38968, 0x000080BF }, /* GL_SHADOW_AMBIENT_SGIX */ - { 38991, 0x000081FB }, /* GL_SHARED_TEXTURE_PALETTE_EXT */ - { 39021, 0x00001601 }, /* GL_SHININESS */ - { 39034, 0x00001402 }, /* GL_SHORT */ - { 39043, 0x00009119 }, /* GL_SIGNALED */ - { 39055, 0x00008F9C }, /* GL_SIGNED_NORMALIZED */ - { 39076, 0x000081F9 }, /* GL_SINGLE_COLOR */ - { 39092, 0x000081F9 }, /* GL_SINGLE_COLOR_EXT */ - { 39112, 0x000085CC }, /* GL_SLICE_ACCUM_SUN */ - { 39131, 0x00008C46 }, /* GL_SLUMINANCE */ - { 39145, 0x00008C47 }, /* GL_SLUMINANCE8 */ - { 39160, 0x00008C45 }, /* GL_SLUMINANCE8_ALPHA8 */ - { 39182, 0x00008C44 }, /* GL_SLUMINANCE_ALPHA */ - { 39202, 0x00001D01 }, /* GL_SMOOTH */ - { 39212, 0x00000B23 }, /* GL_SMOOTH_LINE_WIDTH_GRANULARITY */ - { 39245, 0x00000B22 }, /* GL_SMOOTH_LINE_WIDTH_RANGE */ - { 39272, 0x00000B13 }, /* GL_SMOOTH_POINT_SIZE_GRANULARITY */ - { 39305, 0x00000B12 }, /* GL_SMOOTH_POINT_SIZE_RANGE */ - { 39332, 0x00008588 }, /* GL_SOURCE0_ALPHA */ - { 39349, 0x00008588 }, /* GL_SOURCE0_ALPHA_ARB */ - { 39370, 0x00008588 }, /* GL_SOURCE0_ALPHA_EXT */ - { 39391, 0x00008580 }, /* GL_SOURCE0_RGB */ - { 39406, 0x00008580 }, /* GL_SOURCE0_RGB_ARB */ - { 39425, 0x00008580 }, /* GL_SOURCE0_RGB_EXT */ - { 39444, 0x00008589 }, /* GL_SOURCE1_ALPHA */ - { 39461, 0x00008589 }, /* GL_SOURCE1_ALPHA_ARB */ - { 39482, 0x00008589 }, /* GL_SOURCE1_ALPHA_EXT */ - { 39503, 0x00008581 }, /* GL_SOURCE1_RGB */ - { 39518, 0x00008581 }, /* GL_SOURCE1_RGB_ARB */ - { 39537, 0x00008581 }, /* GL_SOURCE1_RGB_EXT */ - { 39556, 0x0000858A }, /* GL_SOURCE2_ALPHA */ - { 39573, 0x0000858A }, /* GL_SOURCE2_ALPHA_ARB */ - { 39594, 0x0000858A }, /* GL_SOURCE2_ALPHA_EXT */ - { 39615, 0x00008582 }, /* GL_SOURCE2_RGB */ - { 39630, 0x00008582 }, /* GL_SOURCE2_RGB_ARB */ - { 39649, 0x00008582 }, /* GL_SOURCE2_RGB_EXT */ - { 39668, 0x0000858B }, /* GL_SOURCE3_ALPHA_NV */ - { 39688, 0x00008583 }, /* GL_SOURCE3_RGB_NV */ - { 39706, 0x00001202 }, /* GL_SPECULAR */ - { 39718, 0x00002402 }, /* GL_SPHERE_MAP */ - { 39732, 0x00001206 }, /* GL_SPOT_CUTOFF */ - { 39747, 0x00001204 }, /* GL_SPOT_DIRECTION */ - { 39765, 0x00001205 }, /* GL_SPOT_EXPONENT */ - { 39782, 0x00008588 }, /* GL_SRC0_ALPHA */ - { 39796, 0x00008580 }, /* GL_SRC0_RGB */ - { 39808, 0x00008589 }, /* GL_SRC1_ALPHA */ - { 39822, 0x00008581 }, /* GL_SRC1_RGB */ - { 39834, 0x0000858A }, /* GL_SRC2_ALPHA */ - { 39848, 0x00008582 }, /* GL_SRC2_RGB */ - { 39860, 0x00000302 }, /* GL_SRC_ALPHA */ - { 39873, 0x00000308 }, /* GL_SRC_ALPHA_SATURATE */ - { 39895, 0x00000300 }, /* GL_SRC_COLOR */ - { 39908, 0x00008C40 }, /* GL_SRGB */ - { 39916, 0x00008C41 }, /* GL_SRGB8 */ - { 39925, 0x00008C43 }, /* GL_SRGB8_ALPHA8 */ - { 39941, 0x00008C42 }, /* GL_SRGB_ALPHA */ - { 39955, 0x00000503 }, /* GL_STACK_OVERFLOW */ - { 39973, 0x00000504 }, /* GL_STACK_UNDERFLOW */ - { 39992, 0x000088E6 }, /* GL_STATIC_COPY */ - { 40007, 0x000088E6 }, /* GL_STATIC_COPY_ARB */ - { 40026, 0x000088E4 }, /* GL_STATIC_DRAW */ - { 40041, 0x000088E4 }, /* GL_STATIC_DRAW_ARB */ - { 40060, 0x000088E5 }, /* GL_STATIC_READ */ - { 40075, 0x000088E5 }, /* GL_STATIC_READ_ARB */ - { 40094, 0x00001802 }, /* GL_STENCIL */ - { 40105, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT */ - { 40127, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_EXT */ - { 40153, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_OES */ - { 40179, 0x00008801 }, /* GL_STENCIL_BACK_FAIL */ - { 40200, 0x00008801 }, /* GL_STENCIL_BACK_FAIL_ATI */ - { 40225, 0x00008800 }, /* GL_STENCIL_BACK_FUNC */ - { 40246, 0x00008800 }, /* GL_STENCIL_BACK_FUNC_ATI */ - { 40271, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ - { 40303, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI */ - { 40339, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ - { 40371, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI */ - { 40407, 0x00008CA3 }, /* GL_STENCIL_BACK_REF */ - { 40427, 0x00008CA4 }, /* GL_STENCIL_BACK_VALUE_MASK */ - { 40454, 0x00008CA5 }, /* GL_STENCIL_BACK_WRITEMASK */ - { 40480, 0x00000D57 }, /* GL_STENCIL_BITS */ - { 40496, 0x00008224 }, /* GL_STENCIL_BUFFER */ - { 40514, 0x00000400 }, /* GL_STENCIL_BUFFER_BIT */ - { 40536, 0x00000B91 }, /* GL_STENCIL_CLEAR_VALUE */ - { 40559, 0x00000B94 }, /* GL_STENCIL_FAIL */ - { 40575, 0x00000B92 }, /* GL_STENCIL_FUNC */ - { 40591, 0x00001901 }, /* GL_STENCIL_INDEX */ - { 40608, 0x00008D46 }, /* GL_STENCIL_INDEX1 */ - { 40626, 0x00008D49 }, /* GL_STENCIL_INDEX16 */ - { 40645, 0x00008D49 }, /* GL_STENCIL_INDEX16_EXT */ - { 40668, 0x00008D46 }, /* GL_STENCIL_INDEX1_EXT */ - { 40690, 0x00008D46 }, /* GL_STENCIL_INDEX1_OES */ - { 40712, 0x00008D47 }, /* GL_STENCIL_INDEX4 */ - { 40730, 0x00008D47 }, /* GL_STENCIL_INDEX4_EXT */ - { 40752, 0x00008D47 }, /* GL_STENCIL_INDEX4_OES */ - { 40774, 0x00008D48 }, /* GL_STENCIL_INDEX8 */ - { 40792, 0x00008D48 }, /* GL_STENCIL_INDEX8_EXT */ - { 40814, 0x00008D48 }, /* GL_STENCIL_INDEX8_OES */ - { 40836, 0x00008D45 }, /* GL_STENCIL_INDEX_EXT */ - { 40857, 0x00000B95 }, /* GL_STENCIL_PASS_DEPTH_FAIL */ - { 40884, 0x00000B96 }, /* GL_STENCIL_PASS_DEPTH_PASS */ - { 40911, 0x00000B97 }, /* GL_STENCIL_REF */ - { 40926, 0x00000B90 }, /* GL_STENCIL_TEST */ - { 40942, 0x00008910 }, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ - { 40971, 0x00000B93 }, /* GL_STENCIL_VALUE_MASK */ - { 40993, 0x00000B98 }, /* GL_STENCIL_WRITEMASK */ - { 41014, 0x00000C33 }, /* GL_STEREO */ - { 41024, 0x000085BE }, /* GL_STORAGE_CACHED_APPLE */ - { 41048, 0x000085BD }, /* GL_STORAGE_PRIVATE_APPLE */ - { 41073, 0x000085BF }, /* GL_STORAGE_SHARED_APPLE */ - { 41097, 0x000088E2 }, /* GL_STREAM_COPY */ - { 41112, 0x000088E2 }, /* GL_STREAM_COPY_ARB */ - { 41131, 0x000088E0 }, /* GL_STREAM_DRAW */ - { 41146, 0x000088E0 }, /* GL_STREAM_DRAW_ARB */ - { 41165, 0x000088E1 }, /* GL_STREAM_READ */ - { 41180, 0x000088E1 }, /* GL_STREAM_READ_ARB */ - { 41199, 0x00000D50 }, /* GL_SUBPIXEL_BITS */ - { 41216, 0x000084E7 }, /* GL_SUBTRACT */ - { 41228, 0x000084E7 }, /* GL_SUBTRACT_ARB */ - { 41244, 0x00009113 }, /* GL_SYNC_CONDITION */ - { 41262, 0x00009116 }, /* GL_SYNC_FENCE */ - { 41276, 0x00009115 }, /* GL_SYNC_FLAGS */ - { 41290, 0x00000001 }, /* GL_SYNC_FLUSH_COMMANDS_BIT */ - { 41317, 0x00009117 }, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ - { 41347, 0x00009114 }, /* GL_SYNC_STATUS */ - { 41362, 0x00002001 }, /* GL_T */ - { 41367, 0x00002A2A }, /* GL_T2F_C3F_V3F */ - { 41382, 0x00002A2C }, /* GL_T2F_C4F_N3F_V3F */ - { 41401, 0x00002A29 }, /* GL_T2F_C4UB_V3F */ - { 41417, 0x00002A2B }, /* GL_T2F_N3F_V3F */ - { 41432, 0x00002A27 }, /* GL_T2F_V3F */ - { 41443, 0x00002A2D }, /* GL_T4F_C4F_N3F_V4F */ - { 41462, 0x00002A28 }, /* GL_T4F_V4F */ - { 41473, 0x00008031 }, /* GL_TABLE_TOO_LARGE_EXT */ - { 41496, 0x00001702 }, /* GL_TEXTURE */ - { 41507, 0x000084C0 }, /* GL_TEXTURE0 */ - { 41519, 0x000084C0 }, /* GL_TEXTURE0_ARB */ - { 41535, 0x000084C1 }, /* GL_TEXTURE1 */ - { 41547, 0x000084CA }, /* GL_TEXTURE10 */ - { 41560, 0x000084CA }, /* GL_TEXTURE10_ARB */ - { 41577, 0x000084CB }, /* GL_TEXTURE11 */ - { 41590, 0x000084CB }, /* GL_TEXTURE11_ARB */ - { 41607, 0x000084CC }, /* GL_TEXTURE12 */ - { 41620, 0x000084CC }, /* GL_TEXTURE12_ARB */ - { 41637, 0x000084CD }, /* GL_TEXTURE13 */ - { 41650, 0x000084CD }, /* GL_TEXTURE13_ARB */ - { 41667, 0x000084CE }, /* GL_TEXTURE14 */ - { 41680, 0x000084CE }, /* GL_TEXTURE14_ARB */ - { 41697, 0x000084CF }, /* GL_TEXTURE15 */ - { 41710, 0x000084CF }, /* GL_TEXTURE15_ARB */ - { 41727, 0x000084D0 }, /* GL_TEXTURE16 */ - { 41740, 0x000084D0 }, /* GL_TEXTURE16_ARB */ - { 41757, 0x000084D1 }, /* GL_TEXTURE17 */ - { 41770, 0x000084D1 }, /* GL_TEXTURE17_ARB */ - { 41787, 0x000084D2 }, /* GL_TEXTURE18 */ - { 41800, 0x000084D2 }, /* GL_TEXTURE18_ARB */ - { 41817, 0x000084D3 }, /* GL_TEXTURE19 */ - { 41830, 0x000084D3 }, /* GL_TEXTURE19_ARB */ - { 41847, 0x000084C1 }, /* GL_TEXTURE1_ARB */ - { 41863, 0x000084C2 }, /* GL_TEXTURE2 */ - { 41875, 0x000084D4 }, /* GL_TEXTURE20 */ - { 41888, 0x000084D4 }, /* GL_TEXTURE20_ARB */ - { 41905, 0x000084D5 }, /* GL_TEXTURE21 */ - { 41918, 0x000084D5 }, /* GL_TEXTURE21_ARB */ - { 41935, 0x000084D6 }, /* GL_TEXTURE22 */ - { 41948, 0x000084D6 }, /* GL_TEXTURE22_ARB */ - { 41965, 0x000084D7 }, /* GL_TEXTURE23 */ - { 41978, 0x000084D7 }, /* GL_TEXTURE23_ARB */ - { 41995, 0x000084D8 }, /* GL_TEXTURE24 */ - { 42008, 0x000084D8 }, /* GL_TEXTURE24_ARB */ - { 42025, 0x000084D9 }, /* GL_TEXTURE25 */ - { 42038, 0x000084D9 }, /* GL_TEXTURE25_ARB */ - { 42055, 0x000084DA }, /* GL_TEXTURE26 */ - { 42068, 0x000084DA }, /* GL_TEXTURE26_ARB */ - { 42085, 0x000084DB }, /* GL_TEXTURE27 */ - { 42098, 0x000084DB }, /* GL_TEXTURE27_ARB */ - { 42115, 0x000084DC }, /* GL_TEXTURE28 */ - { 42128, 0x000084DC }, /* GL_TEXTURE28_ARB */ - { 42145, 0x000084DD }, /* GL_TEXTURE29 */ - { 42158, 0x000084DD }, /* GL_TEXTURE29_ARB */ - { 42175, 0x000084C2 }, /* GL_TEXTURE2_ARB */ - { 42191, 0x000084C3 }, /* GL_TEXTURE3 */ - { 42203, 0x000084DE }, /* GL_TEXTURE30 */ - { 42216, 0x000084DE }, /* GL_TEXTURE30_ARB */ - { 42233, 0x000084DF }, /* GL_TEXTURE31 */ - { 42246, 0x000084DF }, /* GL_TEXTURE31_ARB */ - { 42263, 0x000084C3 }, /* GL_TEXTURE3_ARB */ - { 42279, 0x000084C4 }, /* GL_TEXTURE4 */ - { 42291, 0x000084C4 }, /* GL_TEXTURE4_ARB */ - { 42307, 0x000084C5 }, /* GL_TEXTURE5 */ - { 42319, 0x000084C5 }, /* GL_TEXTURE5_ARB */ - { 42335, 0x000084C6 }, /* GL_TEXTURE6 */ - { 42347, 0x000084C6 }, /* GL_TEXTURE6_ARB */ - { 42363, 0x000084C7 }, /* GL_TEXTURE7 */ - { 42375, 0x000084C7 }, /* GL_TEXTURE7_ARB */ - { 42391, 0x000084C8 }, /* GL_TEXTURE8 */ - { 42403, 0x000084C8 }, /* GL_TEXTURE8_ARB */ - { 42419, 0x000084C9 }, /* GL_TEXTURE9 */ - { 42431, 0x000084C9 }, /* GL_TEXTURE9_ARB */ - { 42447, 0x00000DE0 }, /* GL_TEXTURE_1D */ - { 42461, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY */ - { 42481, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY_EXT */ - { 42505, 0x00000DE1 }, /* GL_TEXTURE_2D */ - { 42519, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY */ - { 42539, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY_EXT */ - { 42563, 0x0000806F }, /* GL_TEXTURE_3D */ - { 42577, 0x0000806F }, /* GL_TEXTURE_3D_OES */ - { 42595, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE */ - { 42617, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE_EXT */ - { 42643, 0x0000813C }, /* GL_TEXTURE_BASE_LEVEL */ - { 42665, 0x00008068 }, /* GL_TEXTURE_BINDING_1D */ - { 42687, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY */ - { 42715, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */ - { 42747, 0x00008069 }, /* GL_TEXTURE_BINDING_2D */ - { 42769, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY */ - { 42797, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */ - { 42829, 0x0000806A }, /* GL_TEXTURE_BINDING_3D */ - { 42851, 0x0000806A }, /* GL_TEXTURE_BINDING_3D_OES */ - { 42877, 0x00008C2C }, /* GL_TEXTURE_BINDING_BUFFER */ - { 42903, 0x00008C2C }, /* GL_TEXTURE_BINDING_BUFFER_ARB */ - { 42933, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP */ - { 42961, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_ARB */ - { 42993, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_OES */ - { 43025, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE */ - { 43054, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */ - { 43087, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_NV */ - { 43119, 0x00040000 }, /* GL_TEXTURE_BIT */ - { 43134, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE */ - { 43155, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE_EXT */ - { 43180, 0x00001005 }, /* GL_TEXTURE_BORDER */ - { 43198, 0x00001004 }, /* GL_TEXTURE_BORDER_COLOR */ - { 43222, 0x00008C2A }, /* GL_TEXTURE_BUFFER */ - { 43240, 0x00008C2A }, /* GL_TEXTURE_BUFFER_ARB */ - { 43262, 0x00008C2D }, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ - { 43299, 0x00008C2D }, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB */ - { 43340, 0x00008C2E }, /* GL_TEXTURE_BUFFER_FORMAT */ - { 43365, 0x00008C2E }, /* GL_TEXTURE_BUFFER_FORMAT_ARB */ - { 43394, 0x00008171 }, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ - { 43425, 0x00008176 }, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ - { 43455, 0x00008172 }, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ - { 43485, 0x00008175 }, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ - { 43520, 0x00008173 }, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ - { 43551, 0x00008174 }, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - { 43589, 0x000080BC }, /* GL_TEXTURE_COLOR_TABLE_SGI */ - { 43616, 0x000081EF }, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ - { 43648, 0x000080BF }, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ - { 43682, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC */ - { 43706, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC_ARB */ - { 43734, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE */ - { 43758, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE_ARB */ - { 43786, 0x0000819B }, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ - { 43819, 0x0000819A }, /* GL_TEXTURE_COMPARE_SGIX */ - { 43843, 0x00001003 }, /* GL_TEXTURE_COMPONENTS */ - { 43865, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED */ - { 43887, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED_ARB */ - { 43913, 0x000086A3 }, /* GL_TEXTURE_COMPRESSED_FORMATS_ARB */ - { 43947, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ - { 43980, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB */ - { 44017, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT */ - { 44045, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT_ARB */ - { 44077, 0x00008078 }, /* GL_TEXTURE_COORD_ARRAY */ - { 44100, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ - { 44138, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB */ - { 44180, 0x00008092 }, /* GL_TEXTURE_COORD_ARRAY_POINTER */ - { 44211, 0x00008088 }, /* GL_TEXTURE_COORD_ARRAY_SIZE */ - { 44239, 0x0000808A }, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ - { 44269, 0x00008089 }, /* GL_TEXTURE_COORD_ARRAY_TYPE */ - { 44297, 0x00008B9D }, /* GL_TEXTURE_CROP_RECT_OES */ - { 44322, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP */ - { 44342, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_ARB */ - { 44366, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ - { 44397, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB */ - { 44432, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES */ - { 44467, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ - { 44498, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB */ - { 44533, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES */ - { 44568, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ - { 44599, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB */ - { 44634, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES */ - { 44669, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_OES */ - { 44693, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ - { 44724, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB */ - { 44759, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES */ - { 44794, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ - { 44825, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB */ - { 44860, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES */ - { 44895, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ - { 44926, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB */ - { 44961, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES */ - { 44996, 0x000088F4 }, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ - { 45025, 0x00008071 }, /* GL_TEXTURE_DEPTH */ - { 45042, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE */ - { 45064, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE_ARB */ - { 45090, 0x00002300 }, /* GL_TEXTURE_ENV */ - { 45105, 0x00002201 }, /* GL_TEXTURE_ENV_COLOR */ - { 45126, 0x00002200 }, /* GL_TEXTURE_ENV_MODE */ - { 45146, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL */ - { 45172, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL_EXT */ - { 45202, 0x00002500 }, /* GL_TEXTURE_GEN_MODE */ - { 45222, 0x00002500 }, /* GL_TEXTURE_GEN_MODE_OES */ - { 45246, 0x00000C63 }, /* GL_TEXTURE_GEN_Q */ - { 45263, 0x00000C62 }, /* GL_TEXTURE_GEN_R */ - { 45280, 0x00000C60 }, /* GL_TEXTURE_GEN_S */ - { 45297, 0x00008D60 }, /* GL_TEXTURE_GEN_STR_OES */ - { 45320, 0x00000C61 }, /* GL_TEXTURE_GEN_T */ - { 45337, 0x0000819D }, /* GL_TEXTURE_GEQUAL_R_SGIX */ - { 45362, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE */ - { 45384, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE_EXT */ - { 45410, 0x00001001 }, /* GL_TEXTURE_HEIGHT */ - { 45428, 0x000080ED }, /* GL_TEXTURE_INDEX_SIZE_EXT */ - { 45454, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE */ - { 45480, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE_EXT */ - { 45510, 0x00001003 }, /* GL_TEXTURE_INTERNAL_FORMAT */ - { 45537, 0x0000819C }, /* GL_TEXTURE_LEQUAL_R_SGIX */ - { 45562, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS */ - { 45582, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS_EXT */ - { 45606, 0x00008190 }, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ - { 45633, 0x0000818E }, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ - { 45660, 0x0000818F }, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ - { 45687, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE */ - { 45713, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE_EXT */ - { 45743, 0x00002800 }, /* GL_TEXTURE_MAG_FILTER */ - { 45765, 0x00000BA8 }, /* GL_TEXTURE_MATRIX */ - { 45783, 0x0000898F }, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ - { 45823, 0x000084FE }, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ - { 45853, 0x0000836B }, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ - { 45881, 0x00008369 }, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ - { 45909, 0x0000836A }, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ - { 45937, 0x0000813D }, /* GL_TEXTURE_MAX_LEVEL */ - { 45958, 0x0000813B }, /* GL_TEXTURE_MAX_LOD */ - { 45977, 0x00002801 }, /* GL_TEXTURE_MIN_FILTER */ - { 45999, 0x0000813A }, /* GL_TEXTURE_MIN_LOD */ - { 46018, 0x00008066 }, /* GL_TEXTURE_PRIORITY */ - { 46038, 0x000085B7 }, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ - { 46068, 0x000085B8 }, /* GL_TEXTURE_RANGE_POINTER_APPLE */ - { 46099, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE */ - { 46120, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_ARB */ - { 46145, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_NV */ - { 46169, 0x0000805C }, /* GL_TEXTURE_RED_SIZE */ - { 46189, 0x0000805C }, /* GL_TEXTURE_RED_SIZE_EXT */ - { 46213, 0x00008067 }, /* GL_TEXTURE_RESIDENT */ - { 46233, 0x00008C3F }, /* GL_TEXTURE_SHARED_SIZE */ - { 46256, 0x00000BA5 }, /* GL_TEXTURE_STACK_DEPTH */ - { 46279, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE */ - { 46303, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE_EXT */ - { 46331, 0x000085BC }, /* GL_TEXTURE_STORAGE_HINT_APPLE */ - { 46361, 0x00008065 }, /* GL_TEXTURE_TOO_LARGE_EXT */ - { 46386, 0x0000888F }, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ - { 46420, 0x00001000 }, /* GL_TEXTURE_WIDTH */ - { 46437, 0x00008072 }, /* GL_TEXTURE_WRAP_R */ - { 46455, 0x00008072 }, /* GL_TEXTURE_WRAP_R_OES */ - { 46477, 0x00002802 }, /* GL_TEXTURE_WRAP_S */ - { 46495, 0x00002803 }, /* GL_TEXTURE_WRAP_T */ - { 46513, 0x0000911B }, /* GL_TIMEOUT_EXPIRED */ - { 46532, 0x000088BF }, /* GL_TIME_ELAPSED_EXT */ - { 46552, 0x00008648 }, /* GL_TRACK_MATRIX_NV */ - { 46571, 0x00008649 }, /* GL_TRACK_MATRIX_TRANSFORM_NV */ - { 46600, 0x00001000 }, /* GL_TRANSFORM_BIT */ - { 46617, 0x00008E22 }, /* GL_TRANSFORM_FEEDBACK */ - { 46639, 0x00008E25 }, /* GL_TRANSFORM_FEEDBACK_BINDING */ - { 46669, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER */ - { 46698, 0x00008E24 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ - { 46734, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ - { 46771, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT */ - { 46812, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER_EXT */ - { 46845, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ - { 46879, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT */ - { 46917, 0x00008E23 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ - { 46953, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ - { 46987, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT */ - { 47025, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ - { 47060, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT */ - { 47099, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ - { 47140, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT */ - { 47185, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ - { 47216, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS_EXT */ - { 47251, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ - { 47292, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT */ - { 47337, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX */ - { 47363, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX_ARB */ - { 47393, 0x000088B7 }, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ - { 47425, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ - { 47455, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX_ARB */ - { 47489, 0x0000862C }, /* GL_TRANSPOSE_NV */ - { 47505, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX */ - { 47536, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX_ARB */ - { 47571, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX */ - { 47599, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX_ARB */ - { 47631, 0x00000004 }, /* GL_TRIANGLES */ - { 47644, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY */ - { 47667, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY_ARB */ - { 47694, 0x00000006 }, /* GL_TRIANGLE_FAN */ - { 47710, 0x00008615 }, /* GL_TRIANGLE_MESH_SUN */ - { 47731, 0x00000005 }, /* GL_TRIANGLE_STRIP */ - { 47749, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY */ - { 47777, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY_ARB */ - { 47809, 0x00000001 }, /* GL_TRUE */ - { 47817, 0x00008A1C }, /* GL_UNDEFINED_APPLE */ - { 47836, 0x00000CF5 }, /* GL_UNPACK_ALIGNMENT */ - { 47856, 0x0000806E }, /* GL_UNPACK_IMAGE_HEIGHT */ - { 47879, 0x00000CF1 }, /* GL_UNPACK_LSB_FIRST */ - { 47899, 0x00000CF2 }, /* GL_UNPACK_ROW_LENGTH */ - { 47920, 0x0000806D }, /* GL_UNPACK_SKIP_IMAGES */ - { 47942, 0x00000CF4 }, /* GL_UNPACK_SKIP_PIXELS */ - { 47964, 0x00000CF3 }, /* GL_UNPACK_SKIP_ROWS */ - { 47984, 0x00000CF0 }, /* GL_UNPACK_SWAP_BYTES */ - { 48005, 0x00009118 }, /* GL_UNSIGNALED */ - { 48019, 0x00001401 }, /* GL_UNSIGNED_BYTE */ - { 48036, 0x00008362 }, /* GL_UNSIGNED_BYTE_2_3_3_REV */ - { 48063, 0x00008032 }, /* GL_UNSIGNED_BYTE_3_3_2 */ - { 48086, 0x00001405 }, /* GL_UNSIGNED_INT */ - { 48102, 0x00008C3B }, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ - { 48134, 0x00008036 }, /* GL_UNSIGNED_INT_10_10_10_2 */ - { 48161, 0x00008DF6 }, /* GL_UNSIGNED_INT_10_10_10_2_OES */ - { 48192, 0x000084FA }, /* GL_UNSIGNED_INT_24_8 */ - { 48213, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_EXT */ - { 48238, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_NV */ - { 48262, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_OES */ - { 48287, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV */ - { 48318, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV_EXT */ - { 48353, 0x00008C3E }, /* GL_UNSIGNED_INT_5_9_9_9_REV */ - { 48381, 0x00008035 }, /* GL_UNSIGNED_INT_8_8_8_8 */ - { 48405, 0x00008367 }, /* GL_UNSIGNED_INT_8_8_8_8_REV */ - { 48433, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D */ - { 48460, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ - { 48493, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT */ - { 48530, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D_EXT */ - { 48561, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D */ - { 48588, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ - { 48621, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT */ - { 48658, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D_EXT */ - { 48689, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ - { 48721, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT */ - { 48757, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D */ - { 48784, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D_EXT */ - { 48815, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ - { 48846, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT */ - { 48881, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ - { 48910, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE_EXT */ - { 48943, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2 */ - { 48964, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2_EXT */ - { 48989, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3 */ - { 49010, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3_EXT */ - { 49035, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4 */ - { 49056, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4_EXT */ - { 49081, 0x00008C17 }, /* GL_UNSIGNED_NORMALIZED */ - { 49104, 0x00001403 }, /* GL_UNSIGNED_SHORT */ - { 49122, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ - { 49152, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT */ - { 49186, 0x00008033 }, /* GL_UNSIGNED_SHORT_4_4_4_4 */ - { 49212, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ - { 49242, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT */ - { 49276, 0x00008034 }, /* GL_UNSIGNED_SHORT_5_5_5_1 */ - { 49302, 0x00008363 }, /* GL_UNSIGNED_SHORT_5_6_5 */ - { 49326, 0x00008364 }, /* GL_UNSIGNED_SHORT_5_6_5_REV */ - { 49354, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_APPLE */ - { 49382, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_MESA */ - { 49409, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ - { 49441, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_MESA */ - { 49472, 0x00008CA2 }, /* GL_UPPER_LEFT */ - { 49486, 0x00002A20 }, /* GL_V2F */ - { 49493, 0x00002A21 }, /* GL_V3F */ - { 49500, 0x00008B83 }, /* GL_VALIDATE_STATUS */ - { 49519, 0x00001F00 }, /* GL_VENDOR */ - { 49529, 0x00001F02 }, /* GL_VERSION */ - { 49540, 0x00008074 }, /* GL_VERTEX_ARRAY */ - { 49556, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING */ - { 49580, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING_APPLE */ - { 49610, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ - { 49641, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING_ARB */ - { 49676, 0x0000808E }, /* GL_VERTEX_ARRAY_POINTER */ - { 49700, 0x0000807A }, /* GL_VERTEX_ARRAY_SIZE */ - { 49721, 0x0000807C }, /* GL_VERTEX_ARRAY_STRIDE */ - { 49744, 0x0000807B }, /* GL_VERTEX_ARRAY_TYPE */ - { 49765, 0x00008650 }, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ - { 49792, 0x0000865A }, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ - { 49820, 0x0000865B }, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ - { 49848, 0x0000865C }, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ - { 49876, 0x0000865D }, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ - { 49904, 0x0000865E }, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ - { 49932, 0x0000865F }, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ - { 49960, 0x00008651 }, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ - { 49987, 0x00008652 }, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ - { 50014, 0x00008653 }, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ - { 50041, 0x00008654 }, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ - { 50068, 0x00008655 }, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ - { 50095, 0x00008656 }, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ - { 50122, 0x00008657 }, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ - { 50149, 0x00008658 }, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ - { 50176, 0x00008659 }, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ - { 50203, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ - { 50241, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB */ - { 50283, 0x000088FE }, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ - { 50318, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ - { 50349, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB */ - { 50384, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ - { 50415, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT */ - { 50450, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ - { 50484, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB */ - { 50522, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ - { 50553, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB */ - { 50588, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ - { 50616, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB */ - { 50648, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ - { 50678, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB */ - { 50712, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ - { 50740, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB */ - { 50772, 0x000086A7 }, /* GL_VERTEX_BLEND_ARB */ - { 50792, 0x00008620 }, /* GL_VERTEX_PROGRAM_ARB */ - { 50814, 0x0000864A }, /* GL_VERTEX_PROGRAM_BINDING_NV */ - { 50843, 0x00008620 }, /* GL_VERTEX_PROGRAM_NV */ - { 50864, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE */ - { 50893, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_ARB */ - { 50926, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_NV */ - { 50958, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE */ - { 50985, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_ARB */ - { 51016, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_NV */ - { 51046, 0x00008B31 }, /* GL_VERTEX_SHADER */ - { 51063, 0x00008B31 }, /* GL_VERTEX_SHADER_ARB */ - { 51084, 0x00008621 }, /* GL_VERTEX_STATE_PROGRAM_NV */ - { 51111, 0x00000BA2 }, /* GL_VIEWPORT */ - { 51123, 0x00000800 }, /* GL_VIEWPORT_BIT */ - { 51139, 0x00008A1A }, /* GL_VOLATILE_APPLE */ - { 51157, 0x0000911D }, /* GL_WAIT_FAILED */ - { 51172, 0x000086AD }, /* GL_WEIGHT_ARRAY_ARB */ - { 51192, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ - { 51223, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB */ - { 51258, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_OES */ - { 51293, 0x000086AD }, /* GL_WEIGHT_ARRAY_OES */ - { 51313, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_ARB */ - { 51341, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_OES */ - { 51369, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_ARB */ - { 51394, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_OES */ - { 51419, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ - { 51446, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_OES */ - { 51473, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_ARB */ - { 51498, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_OES */ - { 51523, 0x000086A6 }, /* GL_WEIGHT_SUM_UNITY_ARB */ - { 51547, 0x000081D4 }, /* GL_WRAP_BORDER_SUN */ - { 51566, 0x000088B9 }, /* GL_WRITE_ONLY */ - { 51580, 0x000088B9 }, /* GL_WRITE_ONLY_ARB */ - { 51598, 0x000088B9 }, /* GL_WRITE_ONLY_OES */ - { 51616, 0x00001506 }, /* GL_XOR */ - { 51623, 0x000085B9 }, /* GL_YCBCR_422_APPLE */ - { 51642, 0x00008757 }, /* GL_YCBCR_MESA */ - { 51656, 0x00000000 }, /* GL_ZERO */ - { 51664, 0x00000D16 }, /* GL_ZOOM_X */ - { 51674, 0x00000D17 }, /* GL_ZOOM_Y */ + { 6691, 0x00000004 }, /* GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB */ + { 6729, 0x00009126 }, /* GL_CONTEXT_PROFILE_MASK */ + { 6753, 0x00008010 }, /* GL_CONVOLUTION_1D */ + { 6771, 0x00008011 }, /* GL_CONVOLUTION_2D */ + { 6789, 0x00008154 }, /* GL_CONVOLUTION_BORDER_COLOR */ + { 6817, 0x00008154 }, /* GL_CONVOLUTION_BORDER_COLOR_HP */ + { 6848, 0x00008013 }, /* GL_CONVOLUTION_BORDER_MODE */ + { 6875, 0x00008013 }, /* GL_CONVOLUTION_BORDER_MODE_EXT */ + { 6906, 0x00008015 }, /* GL_CONVOLUTION_FILTER_BIAS */ + { 6933, 0x00008015 }, /* GL_CONVOLUTION_FILTER_BIAS_EXT */ + { 6964, 0x00008014 }, /* GL_CONVOLUTION_FILTER_SCALE */ + { 6992, 0x00008014 }, /* GL_CONVOLUTION_FILTER_SCALE_EXT */ + { 7024, 0x00008017 }, /* GL_CONVOLUTION_FORMAT */ + { 7046, 0x00008017 }, /* GL_CONVOLUTION_FORMAT_EXT */ + { 7072, 0x00008019 }, /* GL_CONVOLUTION_HEIGHT */ + { 7094, 0x00008019 }, /* GL_CONVOLUTION_HEIGHT_EXT */ + { 7120, 0x00008018 }, /* GL_CONVOLUTION_WIDTH */ + { 7141, 0x00008018 }, /* GL_CONVOLUTION_WIDTH_EXT */ + { 7166, 0x00008862 }, /* GL_COORD_REPLACE */ + { 7183, 0x00008862 }, /* GL_COORD_REPLACE_ARB */ + { 7204, 0x00008862 }, /* GL_COORD_REPLACE_NV */ + { 7224, 0x00008862 }, /* GL_COORD_REPLACE_OES */ + { 7245, 0x00001503 }, /* GL_COPY */ + { 7253, 0x0000150C }, /* GL_COPY_INVERTED */ + { 7270, 0x00000706 }, /* GL_COPY_PIXEL_TOKEN */ + { 7290, 0x00008F36 }, /* GL_COPY_READ_BUFFER */ + { 7310, 0x00008F37 }, /* GL_COPY_WRITE_BUFFER */ + { 7331, 0x00000B44 }, /* GL_CULL_FACE */ + { 7344, 0x00000B45 }, /* GL_CULL_FACE_MODE */ + { 7362, 0x000081AA }, /* GL_CULL_VERTEX_EXT */ + { 7381, 0x000081AC }, /* GL_CULL_VERTEX_EYE_POSITION_EXT */ + { 7413, 0x000081AB }, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */ + { 7448, 0x00008626 }, /* GL_CURRENT_ATTRIB_NV */ + { 7469, 0x00000001 }, /* GL_CURRENT_BIT */ + { 7484, 0x00000B00 }, /* GL_CURRENT_COLOR */ + { 7501, 0x00008453 }, /* GL_CURRENT_FOG_COORD */ + { 7522, 0x00008453 }, /* GL_CURRENT_FOG_COORDINATE */ + { 7548, 0x00000B01 }, /* GL_CURRENT_INDEX */ + { 7565, 0x00008641 }, /* GL_CURRENT_MATRIX_ARB */ + { 7587, 0x00008845 }, /* GL_CURRENT_MATRIX_INDEX_ARB */ + { 7615, 0x00008641 }, /* GL_CURRENT_MATRIX_NV */ + { 7636, 0x00008640 }, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */ + { 7670, 0x00008640 }, /* GL_CURRENT_MATRIX_STACK_DEPTH_NV */ + { 7703, 0x00000B02 }, /* GL_CURRENT_NORMAL */ + { 7721, 0x00008843 }, /* GL_CURRENT_PALETTE_MATRIX_ARB */ + { 7751, 0x00008843 }, /* GL_CURRENT_PALETTE_MATRIX_OES */ + { 7781, 0x00008B8D }, /* GL_CURRENT_PROGRAM */ + { 7800, 0x00008865 }, /* GL_CURRENT_QUERY */ + { 7817, 0x00008865 }, /* GL_CURRENT_QUERY_ARB */ + { 7838, 0x00000B04 }, /* GL_CURRENT_RASTER_COLOR */ + { 7862, 0x00000B09 }, /* GL_CURRENT_RASTER_DISTANCE */ + { 7889, 0x00000B05 }, /* GL_CURRENT_RASTER_INDEX */ + { 7913, 0x00000B07 }, /* GL_CURRENT_RASTER_POSITION */ + { 7940, 0x00000B08 }, /* GL_CURRENT_RASTER_POSITION_VALID */ + { 7973, 0x0000845F }, /* GL_CURRENT_RASTER_SECONDARY_COLOR */ + { 8007, 0x00000B06 }, /* GL_CURRENT_RASTER_TEXTURE_COORDS */ + { 8040, 0x00008459 }, /* GL_CURRENT_SECONDARY_COLOR */ + { 8067, 0x00000B03 }, /* GL_CURRENT_TEXTURE_COORDS */ + { 8093, 0x00008626 }, /* GL_CURRENT_VERTEX_ATTRIB */ + { 8118, 0x00008626 }, /* GL_CURRENT_VERTEX_ATTRIB_ARB */ + { 8147, 0x000086A8 }, /* GL_CURRENT_WEIGHT_ARB */ + { 8169, 0x00000900 }, /* GL_CW */ + { 8175, 0x0000875B }, /* GL_DEBUG_ASSERT_MESA */ + { 8196, 0x00008759 }, /* GL_DEBUG_OBJECT_MESA */ + { 8217, 0x0000875A }, /* GL_DEBUG_PRINT_MESA */ + { 8237, 0x00002101 }, /* GL_DECAL */ + { 8246, 0x00001E03 }, /* GL_DECR */ + { 8254, 0x00008508 }, /* GL_DECR_WRAP */ + { 8267, 0x00008508 }, /* GL_DECR_WRAP_EXT */ + { 8284, 0x00008B80 }, /* GL_DELETE_STATUS */ + { 8301, 0x00001801 }, /* GL_DEPTH */ + { 8310, 0x000088F0 }, /* GL_DEPTH24_STENCIL8 */ + { 8330, 0x000088F0 }, /* GL_DEPTH24_STENCIL8_EXT */ + { 8354, 0x000088F0 }, /* GL_DEPTH24_STENCIL8_OES */ + { 8378, 0x00008D00 }, /* GL_DEPTH_ATTACHMENT */ + { 8398, 0x00008D00 }, /* GL_DEPTH_ATTACHMENT_EXT */ + { 8422, 0x00008D00 }, /* GL_DEPTH_ATTACHMENT_OES */ + { 8446, 0x00000D1F }, /* GL_DEPTH_BIAS */ + { 8460, 0x00000D56 }, /* GL_DEPTH_BITS */ + { 8474, 0x00008891 }, /* GL_DEPTH_BOUNDS_EXT */ + { 8494, 0x00008890 }, /* GL_DEPTH_BOUNDS_TEST_EXT */ + { 8519, 0x00008223 }, /* GL_DEPTH_BUFFER */ + { 8535, 0x00000100 }, /* GL_DEPTH_BUFFER_BIT */ + { 8555, 0x0000864F }, /* GL_DEPTH_CLAMP */ + { 8570, 0x0000864F }, /* GL_DEPTH_CLAMP_NV */ + { 8588, 0x00000B73 }, /* GL_DEPTH_CLEAR_VALUE */ + { 8609, 0x00001902 }, /* GL_DEPTH_COMPONENT */ + { 8628, 0x000081A5 }, /* GL_DEPTH_COMPONENT16 */ + { 8649, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_ARB */ + { 8674, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_OES */ + { 8699, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_SGIX */ + { 8725, 0x000081A6 }, /* GL_DEPTH_COMPONENT24 */ + { 8746, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_ARB */ + { 8771, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_OES */ + { 8796, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_SGIX */ + { 8822, 0x000081A7 }, /* GL_DEPTH_COMPONENT32 */ + { 8843, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_ARB */ + { 8868, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_OES */ + { 8893, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_SGIX */ + { 8919, 0x00000B74 }, /* GL_DEPTH_FUNC */ + { 8933, 0x00000B70 }, /* GL_DEPTH_RANGE */ + { 8948, 0x00000D1E }, /* GL_DEPTH_SCALE */ + { 8963, 0x000084F9 }, /* GL_DEPTH_STENCIL */ + { 8980, 0x0000821A }, /* GL_DEPTH_STENCIL_ATTACHMENT */ + { 9008, 0x000084F9 }, /* GL_DEPTH_STENCIL_EXT */ + { 9029, 0x000084F9 }, /* GL_DEPTH_STENCIL_NV */ + { 9049, 0x000084F9 }, /* GL_DEPTH_STENCIL_OES */ + { 9070, 0x0000886F }, /* GL_DEPTH_STENCIL_TO_BGRA_NV */ + { 9098, 0x0000886E }, /* GL_DEPTH_STENCIL_TO_RGBA_NV */ + { 9126, 0x00000B71 }, /* GL_DEPTH_TEST */ + { 9140, 0x0000884B }, /* GL_DEPTH_TEXTURE_MODE */ + { 9162, 0x0000884B }, /* GL_DEPTH_TEXTURE_MODE_ARB */ + { 9188, 0x00000B72 }, /* GL_DEPTH_WRITEMASK */ + { 9207, 0x00001201 }, /* GL_DIFFUSE */ + { 9218, 0x00000BD0 }, /* GL_DITHER */ + { 9228, 0x00000A02 }, /* GL_DOMAIN */ + { 9238, 0x00001100 }, /* GL_DONT_CARE */ + { 9251, 0x000086AE }, /* GL_DOT3_RGB */ + { 9263, 0x000086AF }, /* GL_DOT3_RGBA */ + { 9276, 0x000086AF }, /* GL_DOT3_RGBA_ARB */ + { 9293, 0x00008741 }, /* GL_DOT3_RGBA_EXT */ + { 9310, 0x000086AE }, /* GL_DOT3_RGB_ARB */ + { 9326, 0x00008740 }, /* GL_DOT3_RGB_EXT */ + { 9342, 0x0000140A }, /* GL_DOUBLE */ + { 9352, 0x00000C32 }, /* GL_DOUBLEBUFFER */ + { 9368, 0x00000C01 }, /* GL_DRAW_BUFFER */ + { 9383, 0x00008825 }, /* GL_DRAW_BUFFER0 */ + { 9399, 0x00008825 }, /* GL_DRAW_BUFFER0_ARB */ + { 9419, 0x00008825 }, /* GL_DRAW_BUFFER0_ATI */ + { 9439, 0x00008826 }, /* GL_DRAW_BUFFER1 */ + { 9455, 0x0000882F }, /* GL_DRAW_BUFFER10 */ + { 9472, 0x0000882F }, /* GL_DRAW_BUFFER10_ARB */ + { 9493, 0x0000882F }, /* GL_DRAW_BUFFER10_ATI */ + { 9514, 0x00008830 }, /* GL_DRAW_BUFFER11 */ + { 9531, 0x00008830 }, /* GL_DRAW_BUFFER11_ARB */ + { 9552, 0x00008830 }, /* GL_DRAW_BUFFER11_ATI */ + { 9573, 0x00008831 }, /* GL_DRAW_BUFFER12 */ + { 9590, 0x00008831 }, /* GL_DRAW_BUFFER12_ARB */ + { 9611, 0x00008831 }, /* GL_DRAW_BUFFER12_ATI */ + { 9632, 0x00008832 }, /* GL_DRAW_BUFFER13 */ + { 9649, 0x00008832 }, /* GL_DRAW_BUFFER13_ARB */ + { 9670, 0x00008832 }, /* GL_DRAW_BUFFER13_ATI */ + { 9691, 0x00008833 }, /* GL_DRAW_BUFFER14 */ + { 9708, 0x00008833 }, /* GL_DRAW_BUFFER14_ARB */ + { 9729, 0x00008833 }, /* GL_DRAW_BUFFER14_ATI */ + { 9750, 0x00008834 }, /* GL_DRAW_BUFFER15 */ + { 9767, 0x00008834 }, /* GL_DRAW_BUFFER15_ARB */ + { 9788, 0x00008834 }, /* GL_DRAW_BUFFER15_ATI */ + { 9809, 0x00008826 }, /* GL_DRAW_BUFFER1_ARB */ + { 9829, 0x00008826 }, /* GL_DRAW_BUFFER1_ATI */ + { 9849, 0x00008827 }, /* GL_DRAW_BUFFER2 */ + { 9865, 0x00008827 }, /* GL_DRAW_BUFFER2_ARB */ + { 9885, 0x00008827 }, /* GL_DRAW_BUFFER2_ATI */ + { 9905, 0x00008828 }, /* GL_DRAW_BUFFER3 */ + { 9921, 0x00008828 }, /* GL_DRAW_BUFFER3_ARB */ + { 9941, 0x00008828 }, /* GL_DRAW_BUFFER3_ATI */ + { 9961, 0x00008829 }, /* GL_DRAW_BUFFER4 */ + { 9977, 0x00008829 }, /* GL_DRAW_BUFFER4_ARB */ + { 9997, 0x00008829 }, /* GL_DRAW_BUFFER4_ATI */ + { 10017, 0x0000882A }, /* GL_DRAW_BUFFER5 */ + { 10033, 0x0000882A }, /* GL_DRAW_BUFFER5_ARB */ + { 10053, 0x0000882A }, /* GL_DRAW_BUFFER5_ATI */ + { 10073, 0x0000882B }, /* GL_DRAW_BUFFER6 */ + { 10089, 0x0000882B }, /* GL_DRAW_BUFFER6_ARB */ + { 10109, 0x0000882B }, /* GL_DRAW_BUFFER6_ATI */ + { 10129, 0x0000882C }, /* GL_DRAW_BUFFER7 */ + { 10145, 0x0000882C }, /* GL_DRAW_BUFFER7_ARB */ + { 10165, 0x0000882C }, /* GL_DRAW_BUFFER7_ATI */ + { 10185, 0x0000882D }, /* GL_DRAW_BUFFER8 */ + { 10201, 0x0000882D }, /* GL_DRAW_BUFFER8_ARB */ + { 10221, 0x0000882D }, /* GL_DRAW_BUFFER8_ATI */ + { 10241, 0x0000882E }, /* GL_DRAW_BUFFER9 */ + { 10257, 0x0000882E }, /* GL_DRAW_BUFFER9_ARB */ + { 10277, 0x0000882E }, /* GL_DRAW_BUFFER9_ATI */ + { 10297, 0x00008CA9 }, /* GL_DRAW_FRAMEBUFFER */ + { 10317, 0x00008CA6 }, /* GL_DRAW_FRAMEBUFFER_BINDING */ + { 10345, 0x00008CA6 }, /* GL_DRAW_FRAMEBUFFER_BINDING_EXT */ + { 10377, 0x00008CA9 }, /* GL_DRAW_FRAMEBUFFER_EXT */ + { 10401, 0x00000705 }, /* GL_DRAW_PIXEL_TOKEN */ + { 10421, 0x00000304 }, /* GL_DST_ALPHA */ + { 10434, 0x00000306 }, /* GL_DST_COLOR */ + { 10447, 0x0000877A }, /* GL_DU8DV8_ATI */ + { 10461, 0x00008779 }, /* GL_DUDV_ATI */ + { 10473, 0x000088EA }, /* GL_DYNAMIC_COPY */ + { 10489, 0x000088EA }, /* GL_DYNAMIC_COPY_ARB */ + { 10509, 0x000088E8 }, /* GL_DYNAMIC_DRAW */ + { 10525, 0x000088E8 }, /* GL_DYNAMIC_DRAW_ARB */ + { 10545, 0x000088E9 }, /* GL_DYNAMIC_READ */ + { 10561, 0x000088E9 }, /* GL_DYNAMIC_READ_ARB */ + { 10581, 0x00000B43 }, /* GL_EDGE_FLAG */ + { 10594, 0x00008079 }, /* GL_EDGE_FLAG_ARRAY */ + { 10613, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */ + { 10647, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB */ + { 10685, 0x00008093 }, /* GL_EDGE_FLAG_ARRAY_POINTER */ + { 10712, 0x0000808C }, /* GL_EDGE_FLAG_ARRAY_STRIDE */ + { 10738, 0x00008893 }, /* GL_ELEMENT_ARRAY_BUFFER */ + { 10762, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */ + { 10794, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB */ + { 10830, 0x00001600 }, /* GL_EMISSION */ + { 10842, 0x00002000 }, /* GL_ENABLE_BIT */ + { 10856, 0x00000202 }, /* GL_EQUAL */ + { 10865, 0x00001509 }, /* GL_EQUIV */ + { 10874, 0x00010000 }, /* GL_EVAL_BIT */ + { 10886, 0x00000800 }, /* GL_EXP */ + { 10893, 0x00000801 }, /* GL_EXP2 */ + { 10901, 0x00001F03 }, /* GL_EXTENSIONS */ + { 10915, 0x00002400 }, /* GL_EYE_LINEAR */ + { 10929, 0x00002502 }, /* GL_EYE_PLANE */ + { 10942, 0x0000855C }, /* GL_EYE_PLANE_ABSOLUTE_NV */ + { 10967, 0x0000855B }, /* GL_EYE_RADIAL_NV */ + { 10984, 0x00000000 }, /* GL_FALSE */ + { 10993, 0x00001101 }, /* GL_FASTEST */ + { 11004, 0x00001C01 }, /* GL_FEEDBACK */ + { 11016, 0x00000DF0 }, /* GL_FEEDBACK_BUFFER_POINTER */ + { 11043, 0x00000DF1 }, /* GL_FEEDBACK_BUFFER_SIZE */ + { 11067, 0x00000DF2 }, /* GL_FEEDBACK_BUFFER_TYPE */ + { 11091, 0x00001B02 }, /* GL_FILL */ + { 11099, 0x00008E4D }, /* GL_FIRST_VERTEX_CONVENTION */ + { 11126, 0x00008E4D }, /* GL_FIRST_VERTEX_CONVENTION_EXT */ + { 11157, 0x0000140C }, /* GL_FIXED */ + { 11166, 0x0000140C }, /* GL_FIXED_OES */ + { 11179, 0x0000891D }, /* GL_FIXED_ONLY */ + { 11193, 0x0000891D }, /* GL_FIXED_ONLY_ARB */ + { 11211, 0x00001D00 }, /* GL_FLAT */ + { 11219, 0x00001406 }, /* GL_FLOAT */ + { 11228, 0x00008B5A }, /* GL_FLOAT_MAT2 */ + { 11242, 0x00008B5A }, /* GL_FLOAT_MAT2_ARB */ + { 11260, 0x00008B65 }, /* GL_FLOAT_MAT2x3 */ + { 11276, 0x00008B66 }, /* GL_FLOAT_MAT2x4 */ + { 11292, 0x00008B5B }, /* GL_FLOAT_MAT3 */ + { 11306, 0x00008B5B }, /* GL_FLOAT_MAT3_ARB */ + { 11324, 0x00008B67 }, /* GL_FLOAT_MAT3x2 */ + { 11340, 0x00008B68 }, /* GL_FLOAT_MAT3x4 */ + { 11356, 0x00008B5C }, /* GL_FLOAT_MAT4 */ + { 11370, 0x00008B5C }, /* GL_FLOAT_MAT4_ARB */ + { 11388, 0x00008B69 }, /* GL_FLOAT_MAT4x2 */ + { 11404, 0x00008B6A }, /* GL_FLOAT_MAT4x3 */ + { 11420, 0x00008B50 }, /* GL_FLOAT_VEC2 */ + { 11434, 0x00008B50 }, /* GL_FLOAT_VEC2_ARB */ + { 11452, 0x00008B51 }, /* GL_FLOAT_VEC3 */ + { 11466, 0x00008B51 }, /* GL_FLOAT_VEC3_ARB */ + { 11484, 0x00008B52 }, /* GL_FLOAT_VEC4 */ + { 11498, 0x00008B52 }, /* GL_FLOAT_VEC4_ARB */ + { 11516, 0x00000B60 }, /* GL_FOG */ + { 11523, 0x00000080 }, /* GL_FOG_BIT */ + { 11534, 0x00000B66 }, /* GL_FOG_COLOR */ + { 11547, 0x00008451 }, /* GL_FOG_COORD */ + { 11560, 0x00008451 }, /* GL_FOG_COORDINATE */ + { 11578, 0x00008457 }, /* GL_FOG_COORDINATE_ARRAY */ + { 11602, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ + { 11641, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB */ + { 11684, 0x00008456 }, /* GL_FOG_COORDINATE_ARRAY_POINTER */ + { 11716, 0x00008455 }, /* GL_FOG_COORDINATE_ARRAY_STRIDE */ + { 11747, 0x00008454 }, /* GL_FOG_COORDINATE_ARRAY_TYPE */ + { 11776, 0x00008450 }, /* GL_FOG_COORDINATE_SOURCE */ + { 11801, 0x00008457 }, /* GL_FOG_COORD_ARRAY */ + { 11820, 0x0000889D }, /* GL_FOG_COORD_ARRAY_BUFFER_BINDING */ + { 11854, 0x00008456 }, /* GL_FOG_COORD_ARRAY_POINTER */ + { 11881, 0x00008455 }, /* GL_FOG_COORD_ARRAY_STRIDE */ + { 11907, 0x00008454 }, /* GL_FOG_COORD_ARRAY_TYPE */ + { 11931, 0x00008450 }, /* GL_FOG_COORD_SRC */ + { 11948, 0x00000B62 }, /* GL_FOG_DENSITY */ + { 11963, 0x0000855A }, /* GL_FOG_DISTANCE_MODE_NV */ + { 11987, 0x00000B64 }, /* GL_FOG_END */ + { 11998, 0x00000C54 }, /* GL_FOG_HINT */ + { 12010, 0x00000B61 }, /* GL_FOG_INDEX */ + { 12023, 0x00000B65 }, /* GL_FOG_MODE */ + { 12035, 0x00008198 }, /* GL_FOG_OFFSET_SGIX */ + { 12054, 0x00008199 }, /* GL_FOG_OFFSET_VALUE_SGIX */ + { 12079, 0x00000B63 }, /* GL_FOG_START */ + { 12092, 0x00008452 }, /* GL_FRAGMENT_DEPTH */ + { 12110, 0x00008804 }, /* GL_FRAGMENT_PROGRAM_ARB */ + { 12134, 0x00008B30 }, /* GL_FRAGMENT_SHADER */ + { 12153, 0x00008B30 }, /* GL_FRAGMENT_SHADER_ARB */ + { 12176, 0x00008B8B }, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ + { 12211, 0x00008B8B }, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES */ + { 12250, 0x00008D40 }, /* GL_FRAMEBUFFER */ + { 12265, 0x00008215 }, /* GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE */ + { 12302, 0x00008214 }, /* GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE */ + { 12338, 0x00008210 }, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ + { 12379, 0x00008211 }, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ + { 12420, 0x00008216 }, /* GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE */ + { 12457, 0x00008213 }, /* GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE */ + { 12494, 0x00008DA7 }, /* GL_FRAMEBUFFER_ATTACHMENT_LAYERED */ + { 12528, 0x00008DA7 }, /* GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB */ + { 12566, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */ + { 12604, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT */ + { 12646, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES */ + { 12688, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */ + { 12726, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT */ + { 12768, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES */ + { 12810, 0x00008212 }, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ + { 12845, 0x00008217 }, /* GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE */ + { 12884, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT */ + { 12933, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES */ + { 12982, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE */ + { 13030, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT */ + { 13082, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES */ + { 13134, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */ + { 13174, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT */ + { 13218, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */ + { 13258, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT */ + { 13302, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES */ + { 13346, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING */ + { 13369, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING_EXT */ + { 13396, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING_OES */ + { 13423, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE */ + { 13447, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE_EXT */ + { 13475, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE_OES */ + { 13503, 0x00008218 }, /* GL_FRAMEBUFFER_DEFAULT */ + { 13526, 0x00008D40 }, /* GL_FRAMEBUFFER_EXT */ + { 13545, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT */ + { 13582, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT */ + { 13623, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES */ + { 13664, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS */ + { 13701, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */ + { 13742, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES */ + { 13783, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER */ + { 13821, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT */ + { 13863, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_OES */ + { 13905, 0x00008CD8 }, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */ + { 13956, 0x00008CDA }, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */ + { 13994, 0x00008CDA }, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES */ + { 14032, 0x00008DA9 }, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB */ + { 14074, 0x00008DA8 }, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS */ + { 14114, 0x00008DA8 }, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB */ + { 14158, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT */ + { 14203, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT */ + { 14252, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES */ + { 14301, 0x00008D56 }, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ + { 14339, 0x00008D56 }, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT */ + { 14381, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER */ + { 14419, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT */ + { 14461, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_OES */ + { 14503, 0x00008D40 }, /* GL_FRAMEBUFFER_OES */ + { 14522, 0x00008CDE }, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */ + { 14554, 0x00008219 }, /* GL_FRAMEBUFFER_UNDEFINED */ + { 14579, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED */ + { 14606, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED_EXT */ + { 14637, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED_OES */ + { 14668, 0x00000404 }, /* GL_FRONT */ + { 14677, 0x00000408 }, /* GL_FRONT_AND_BACK */ + { 14695, 0x00000B46 }, /* GL_FRONT_FACE */ + { 14709, 0x00000400 }, /* GL_FRONT_LEFT */ + { 14723, 0x00000401 }, /* GL_FRONT_RIGHT */ + { 14738, 0x00008006 }, /* GL_FUNC_ADD */ + { 14750, 0x00008006 }, /* GL_FUNC_ADD_EXT */ + { 14766, 0x00008006 }, /* GL_FUNC_ADD_OES */ + { 14782, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT */ + { 14807, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT_EXT */ + { 14836, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT_OES */ + { 14865, 0x0000800A }, /* GL_FUNC_SUBTRACT */ + { 14882, 0x0000800A }, /* GL_FUNC_SUBTRACT_EXT */ + { 14903, 0x0000800A }, /* GL_FUNC_SUBTRACT_OES */ + { 14924, 0x00008191 }, /* GL_GENERATE_MIPMAP */ + { 14943, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT */ + { 14967, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT_SGIS */ + { 14996, 0x00008191 }, /* GL_GENERATE_MIPMAP_SGIS */ + { 15020, 0x00008917 }, /* GL_GEOMETRY_INPUT_TYPE */ + { 15043, 0x00008DDB }, /* GL_GEOMETRY_INPUT_TYPE_ARB */ + { 15070, 0x00008918 }, /* GL_GEOMETRY_OUTPUT_TYPE */ + { 15094, 0x00008DDC }, /* GL_GEOMETRY_OUTPUT_TYPE_ARB */ + { 15122, 0x00008DD9 }, /* GL_GEOMETRY_SHADER */ + { 15141, 0x00008DD9 }, /* GL_GEOMETRY_SHADER_ARB */ + { 15164, 0x00008916 }, /* GL_GEOMETRY_VERTICES_OUT */ + { 15189, 0x00008DDA }, /* GL_GEOMETRY_VERTICES_OUT_ARB */ + { 15218, 0x00000206 }, /* GL_GEQUAL */ + { 15228, 0x00000204 }, /* GL_GREATER */ + { 15239, 0x00001904 }, /* GL_GREEN */ + { 15248, 0x00000D19 }, /* GL_GREEN_BIAS */ + { 15262, 0x00000D53 }, /* GL_GREEN_BITS */ + { 15276, 0x00008D95 }, /* GL_GREEN_INTEGER */ + { 15293, 0x00008D95 }, /* GL_GREEN_INTEGER_EXT */ + { 15314, 0x00000D18 }, /* GL_GREEN_SCALE */ + { 15329, 0x00008253 }, /* GL_GUILTY_CONTEXT_RESET_ARB */ + { 15357, 0x0000140B }, /* GL_HALF_FLOAT */ + { 15371, 0x00008D61 }, /* GL_HALF_FLOAT_OES */ + { 15389, 0x00008DF2 }, /* GL_HIGH_FLOAT */ + { 15403, 0x00008DF5 }, /* GL_HIGH_INT */ + { 15415, 0x00008000 }, /* GL_HINT_BIT */ + { 15427, 0x00008024 }, /* GL_HISTOGRAM */ + { 15440, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE */ + { 15464, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE_EXT */ + { 15492, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE */ + { 15515, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE_EXT */ + { 15542, 0x00008024 }, /* GL_HISTOGRAM_EXT */ + { 15559, 0x00008027 }, /* GL_HISTOGRAM_FORMAT */ + { 15579, 0x00008027 }, /* GL_HISTOGRAM_FORMAT_EXT */ + { 15603, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE */ + { 15627, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE_EXT */ + { 15655, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE */ + { 15683, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE_EXT */ + { 15715, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE */ + { 15737, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE_EXT */ + { 15763, 0x0000802D }, /* GL_HISTOGRAM_SINK */ + { 15781, 0x0000802D }, /* GL_HISTOGRAM_SINK_EXT */ + { 15803, 0x00008026 }, /* GL_HISTOGRAM_WIDTH */ + { 15822, 0x00008026 }, /* GL_HISTOGRAM_WIDTH_EXT */ + { 15845, 0x0000862A }, /* GL_IDENTITY_NV */ + { 15860, 0x00008150 }, /* GL_IGNORE_BORDER_HP */ + { 15880, 0x00008B9B }, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT */ + { 15916, 0x00008B9B }, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES */ + { 15956, 0x00008B9A }, /* GL_IMPLEMENTATION_COLOR_READ_TYPE */ + { 15990, 0x00008B9A }, /* GL_IMPLEMENTATION_COLOR_READ_TYPE_OES */ + { 16028, 0x00001E02 }, /* GL_INCR */ + { 16036, 0x00008507 }, /* GL_INCR_WRAP */ + { 16049, 0x00008507 }, /* GL_INCR_WRAP_EXT */ + { 16066, 0x00008222 }, /* GL_INDEX */ + { 16075, 0x00008077 }, /* GL_INDEX_ARRAY */ + { 16090, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING */ + { 16120, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING_ARB */ + { 16154, 0x00008091 }, /* GL_INDEX_ARRAY_POINTER */ + { 16177, 0x00008086 }, /* GL_INDEX_ARRAY_STRIDE */ + { 16199, 0x00008085 }, /* GL_INDEX_ARRAY_TYPE */ + { 16219, 0x00000D51 }, /* GL_INDEX_BITS */ + { 16233, 0x00000C20 }, /* GL_INDEX_CLEAR_VALUE */ + { 16254, 0x00000BF1 }, /* GL_INDEX_LOGIC_OP */ + { 16272, 0x00000C30 }, /* GL_INDEX_MODE */ + { 16286, 0x00000D13 }, /* GL_INDEX_OFFSET */ + { 16302, 0x00000D12 }, /* GL_INDEX_SHIFT */ + { 16317, 0x00000C21 }, /* GL_INDEX_WRITEMASK */ + { 16336, 0x00008B84 }, /* GL_INFO_LOG_LENGTH */ + { 16355, 0x00008254 }, /* GL_INNOCENT_CONTEXT_RESET_ARB */ + { 16385, 0x00001404 }, /* GL_INT */ + { 16392, 0x00008049 }, /* GL_INTENSITY */ + { 16405, 0x0000804C }, /* GL_INTENSITY12 */ + { 16420, 0x0000804C }, /* GL_INTENSITY12_EXT */ + { 16439, 0x0000804D }, /* GL_INTENSITY16 */ + { 16454, 0x00008D8B }, /* GL_INTENSITY16I_EXT */ + { 16474, 0x00008D79 }, /* GL_INTENSITY16UI_EXT */ + { 16495, 0x0000804D }, /* GL_INTENSITY16_EXT */ + { 16514, 0x00008D85 }, /* GL_INTENSITY32I_EXT */ + { 16534, 0x00008D73 }, /* GL_INTENSITY32UI_EXT */ + { 16555, 0x0000804A }, /* GL_INTENSITY4 */ + { 16569, 0x0000804A }, /* GL_INTENSITY4_EXT */ + { 16587, 0x0000804B }, /* GL_INTENSITY8 */ + { 16601, 0x00008D91 }, /* GL_INTENSITY8I_EXT */ + { 16620, 0x00008D7F }, /* GL_INTENSITY8UI_EXT */ + { 16640, 0x0000804B }, /* GL_INTENSITY8_EXT */ + { 16658, 0x00008049 }, /* GL_INTENSITY_EXT */ + { 16675, 0x00008C8C }, /* GL_INTERLEAVED_ATTRIBS */ + { 16698, 0x00008C8C }, /* GL_INTERLEAVED_ATTRIBS_EXT */ + { 16725, 0x00008575 }, /* GL_INTERPOLATE */ + { 16740, 0x00008575 }, /* GL_INTERPOLATE_ARB */ + { 16759, 0x00008575 }, /* GL_INTERPOLATE_EXT */ + { 16778, 0x00008DF7 }, /* GL_INT_10_10_10_2_OES */ + { 16800, 0x00008DC9 }, /* GL_INT_SAMPLER_1D */ + { 16818, 0x00008DCE }, /* GL_INT_SAMPLER_1D_ARRAY */ + { 16842, 0x00008DCE }, /* GL_INT_SAMPLER_1D_ARRAY_EXT */ + { 16870, 0x00008DC9 }, /* GL_INT_SAMPLER_1D_EXT */ + { 16892, 0x00008DCA }, /* GL_INT_SAMPLER_2D */ + { 16910, 0x00008DCF }, /* GL_INT_SAMPLER_2D_ARRAY */ + { 16934, 0x00008DCF }, /* GL_INT_SAMPLER_2D_ARRAY_EXT */ + { 16962, 0x00008DCA }, /* GL_INT_SAMPLER_2D_EXT */ + { 16984, 0x00008DCD }, /* GL_INT_SAMPLER_2D_RECT */ + { 17007, 0x00008DCD }, /* GL_INT_SAMPLER_2D_RECT_EXT */ + { 17034, 0x00008DCB }, /* GL_INT_SAMPLER_3D */ + { 17052, 0x00008DCB }, /* GL_INT_SAMPLER_3D_EXT */ + { 17074, 0x00008DD0 }, /* GL_INT_SAMPLER_BUFFER */ + { 17096, 0x00008DD0 }, /* GL_INT_SAMPLER_BUFFER_EXT */ + { 17122, 0x00008DCC }, /* GL_INT_SAMPLER_CUBE */ + { 17142, 0x00008DCC }, /* GL_INT_SAMPLER_CUBE_EXT */ + { 17166, 0x00008B53 }, /* GL_INT_VEC2 */ + { 17178, 0x00008B53 }, /* GL_INT_VEC2_ARB */ + { 17194, 0x00008B54 }, /* GL_INT_VEC3 */ + { 17206, 0x00008B54 }, /* GL_INT_VEC3_ARB */ + { 17222, 0x00008B55 }, /* GL_INT_VEC4 */ + { 17234, 0x00008B55 }, /* GL_INT_VEC4_ARB */ + { 17250, 0x00000500 }, /* GL_INVALID_ENUM */ + { 17266, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION */ + { 17299, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION_EXT */ + { 17336, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION_OES */ + { 17373, 0x00000502 }, /* GL_INVALID_OPERATION */ + { 17394, 0x00000501 }, /* GL_INVALID_VALUE */ + { 17411, 0x0000862B }, /* GL_INVERSE_NV */ + { 17425, 0x0000862D }, /* GL_INVERSE_TRANSPOSE_NV */ + { 17449, 0x0000150A }, /* GL_INVERT */ + { 17459, 0x00001E00 }, /* GL_KEEP */ + { 17467, 0x00008E4E }, /* GL_LAST_VERTEX_CONVENTION */ + { 17493, 0x00008E4E }, /* GL_LAST_VERTEX_CONVENTION_EXT */ + { 17523, 0x00000406 }, /* GL_LEFT */ + { 17531, 0x00000203 }, /* GL_LEQUAL */ + { 17541, 0x00000201 }, /* GL_LESS */ + { 17549, 0x00004000 }, /* GL_LIGHT0 */ + { 17559, 0x00004001 }, /* GL_LIGHT1 */ + { 17569, 0x00004002 }, /* GL_LIGHT2 */ + { 17579, 0x00004003 }, /* GL_LIGHT3 */ + { 17589, 0x00004004 }, /* GL_LIGHT4 */ + { 17599, 0x00004005 }, /* GL_LIGHT5 */ + { 17609, 0x00004006 }, /* GL_LIGHT6 */ + { 17619, 0x00004007 }, /* GL_LIGHT7 */ + { 17629, 0x00000B50 }, /* GL_LIGHTING */ + { 17641, 0x00000040 }, /* GL_LIGHTING_BIT */ + { 17657, 0x00000B53 }, /* GL_LIGHT_MODEL_AMBIENT */ + { 17680, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL */ + { 17709, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL_EXT */ + { 17742, 0x00000B51 }, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ + { 17770, 0x00000B52 }, /* GL_LIGHT_MODEL_TWO_SIDE */ + { 17794, 0x00001B01 }, /* GL_LINE */ + { 17802, 0x00002601 }, /* GL_LINEAR */ + { 17812, 0x00001208 }, /* GL_LINEAR_ATTENUATION */ + { 17834, 0x00008170 }, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ + { 17864, 0x0000844F }, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */ + { 17895, 0x00002703 }, /* GL_LINEAR_MIPMAP_LINEAR */ + { 17919, 0x00002701 }, /* GL_LINEAR_MIPMAP_NEAREST */ + { 17944, 0x00000001 }, /* GL_LINES */ + { 17953, 0x0000000A }, /* GL_LINES_ADJACENCY */ + { 17972, 0x0000000A }, /* GL_LINES_ADJACENCY_ARB */ + { 17995, 0x00000004 }, /* GL_LINE_BIT */ + { 18007, 0x00000002 }, /* GL_LINE_LOOP */ + { 18020, 0x00000707 }, /* GL_LINE_RESET_TOKEN */ + { 18040, 0x00000B20 }, /* GL_LINE_SMOOTH */ + { 18055, 0x00000C52 }, /* GL_LINE_SMOOTH_HINT */ + { 18075, 0x00000B24 }, /* GL_LINE_STIPPLE */ + { 18091, 0x00000B25 }, /* GL_LINE_STIPPLE_PATTERN */ + { 18115, 0x00000B26 }, /* GL_LINE_STIPPLE_REPEAT */ + { 18138, 0x00000003 }, /* GL_LINE_STRIP */ + { 18152, 0x0000000B }, /* GL_LINE_STRIP_ADJACENCY */ + { 18176, 0x0000000B }, /* GL_LINE_STRIP_ADJACENCY_ARB */ + { 18204, 0x00000702 }, /* GL_LINE_TOKEN */ + { 18218, 0x00000B21 }, /* GL_LINE_WIDTH */ + { 18232, 0x00000B23 }, /* GL_LINE_WIDTH_GRANULARITY */ + { 18258, 0x00000B22 }, /* GL_LINE_WIDTH_RANGE */ + { 18278, 0x00008B82 }, /* GL_LINK_STATUS */ + { 18293, 0x00000B32 }, /* GL_LIST_BASE */ + { 18306, 0x00020000 }, /* GL_LIST_BIT */ + { 18318, 0x00000B33 }, /* GL_LIST_INDEX */ + { 18332, 0x00000B30 }, /* GL_LIST_MODE */ + { 18345, 0x00000101 }, /* GL_LOAD */ + { 18353, 0x00000BF1 }, /* GL_LOGIC_OP */ + { 18365, 0x00000BF0 }, /* GL_LOGIC_OP_MODE */ + { 18382, 0x00008252 }, /* GL_LOSE_CONTEXT_ON_RESET_ARB */ + { 18411, 0x00008CA1 }, /* GL_LOWER_LEFT */ + { 18425, 0x00008DF0 }, /* GL_LOW_FLOAT */ + { 18438, 0x00008DF3 }, /* GL_LOW_INT */ + { 18449, 0x00001909 }, /* GL_LUMINANCE */ + { 18462, 0x00008041 }, /* GL_LUMINANCE12 */ + { 18477, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12 */ + { 18500, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12_EXT */ + { 18527, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4 */ + { 18549, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4_EXT */ + { 18575, 0x00008041 }, /* GL_LUMINANCE12_EXT */ + { 18594, 0x00008042 }, /* GL_LUMINANCE16 */ + { 18609, 0x00008D8C }, /* GL_LUMINANCE16I_EXT */ + { 18629, 0x00008D7A }, /* GL_LUMINANCE16UI_EXT */ + { 18650, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16 */ + { 18673, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16_EXT */ + { 18700, 0x00008042 }, /* GL_LUMINANCE16_EXT */ + { 18719, 0x00008D86 }, /* GL_LUMINANCE32I_EXT */ + { 18739, 0x00008D74 }, /* GL_LUMINANCE32UI_EXT */ + { 18760, 0x0000803F }, /* GL_LUMINANCE4 */ + { 18774, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4 */ + { 18795, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4_EXT */ + { 18820, 0x0000803F }, /* GL_LUMINANCE4_EXT */ + { 18838, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2 */ + { 18859, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2_EXT */ + { 18884, 0x00008040 }, /* GL_LUMINANCE8 */ + { 18898, 0x00008D92 }, /* GL_LUMINANCE8I_EXT */ + { 18917, 0x00008D80 }, /* GL_LUMINANCE8UI_EXT */ + { 18937, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8 */ + { 18958, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8_EXT */ + { 18983, 0x00008040 }, /* GL_LUMINANCE8_EXT */ + { 19001, 0x0000190A }, /* GL_LUMINANCE_ALPHA */ + { 19020, 0x00008D8D }, /* GL_LUMINANCE_ALPHA16I_EXT */ + { 19046, 0x00008D7B }, /* GL_LUMINANCE_ALPHA16UI_EXT */ + { 19073, 0x00008D87 }, /* GL_LUMINANCE_ALPHA32I_EXT */ + { 19099, 0x00008D75 }, /* GL_LUMINANCE_ALPHA32UI_EXT */ + { 19126, 0x00008D93 }, /* GL_LUMINANCE_ALPHA8I_EXT */ + { 19151, 0x00008D81 }, /* GL_LUMINANCE_ALPHA8UI_EXT */ + { 19177, 0x00008D9D }, /* GL_LUMINANCE_ALPHA_INTEGER_EXT */ + { 19208, 0x00008D9C }, /* GL_LUMINANCE_INTEGER_EXT */ + { 19233, 0x0000821B }, /* GL_MAJOR_VERSION */ + { 19250, 0x00000D90 }, /* GL_MAP1_COLOR_4 */ + { 19266, 0x00000DD0 }, /* GL_MAP1_GRID_DOMAIN */ + { 19286, 0x00000DD1 }, /* GL_MAP1_GRID_SEGMENTS */ + { 19308, 0x00000D91 }, /* GL_MAP1_INDEX */ + { 19322, 0x00000D92 }, /* GL_MAP1_NORMAL */ + { 19337, 0x00000D93 }, /* GL_MAP1_TEXTURE_COORD_1 */ + { 19361, 0x00000D94 }, /* GL_MAP1_TEXTURE_COORD_2 */ + { 19385, 0x00000D95 }, /* GL_MAP1_TEXTURE_COORD_3 */ + { 19409, 0x00000D96 }, /* GL_MAP1_TEXTURE_COORD_4 */ + { 19433, 0x00000D97 }, /* GL_MAP1_VERTEX_3 */ + { 19450, 0x00000D98 }, /* GL_MAP1_VERTEX_4 */ + { 19467, 0x00008660 }, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ + { 19495, 0x0000866A }, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */ + { 19524, 0x0000866B }, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */ + { 19553, 0x0000866C }, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */ + { 19582, 0x0000866D }, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */ + { 19611, 0x0000866E }, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */ + { 19640, 0x0000866F }, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */ + { 19669, 0x00008661 }, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ + { 19697, 0x00008662 }, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ + { 19725, 0x00008663 }, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */ + { 19753, 0x00008664 }, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */ + { 19781, 0x00008665 }, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */ + { 19809, 0x00008666 }, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */ + { 19837, 0x00008667 }, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */ + { 19865, 0x00008668 }, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */ + { 19893, 0x00008669 }, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */ + { 19921, 0x00000DB0 }, /* GL_MAP2_COLOR_4 */ + { 19937, 0x00000DD2 }, /* GL_MAP2_GRID_DOMAIN */ + { 19957, 0x00000DD3 }, /* GL_MAP2_GRID_SEGMENTS */ + { 19979, 0x00000DB1 }, /* GL_MAP2_INDEX */ + { 19993, 0x00000DB2 }, /* GL_MAP2_NORMAL */ + { 20008, 0x00000DB3 }, /* GL_MAP2_TEXTURE_COORD_1 */ + { 20032, 0x00000DB4 }, /* GL_MAP2_TEXTURE_COORD_2 */ + { 20056, 0x00000DB5 }, /* GL_MAP2_TEXTURE_COORD_3 */ + { 20080, 0x00000DB6 }, /* GL_MAP2_TEXTURE_COORD_4 */ + { 20104, 0x00000DB7 }, /* GL_MAP2_VERTEX_3 */ + { 20121, 0x00000DB8 }, /* GL_MAP2_VERTEX_4 */ + { 20138, 0x00008670 }, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */ + { 20166, 0x0000867A }, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */ + { 20195, 0x0000867B }, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */ + { 20224, 0x0000867C }, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */ + { 20253, 0x0000867D }, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ + { 20282, 0x0000867E }, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ + { 20311, 0x0000867F }, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ + { 20340, 0x00008671 }, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */ + { 20368, 0x00008672 }, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */ + { 20396, 0x00008673 }, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */ + { 20424, 0x00008674 }, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */ + { 20452, 0x00008675 }, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */ + { 20480, 0x00008676 }, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */ + { 20508, 0x00008677 }, /* GL_MAP2_VERTEX_ATTRIB7_4_NV */ + { 20536, 0x00008678 }, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */ + { 20564, 0x00008679 }, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */ + { 20592, 0x00000D10 }, /* GL_MAP_COLOR */ + { 20605, 0x00000010 }, /* GL_MAP_FLUSH_EXPLICIT_BIT */ + { 20631, 0x00000008 }, /* GL_MAP_INVALIDATE_BUFFER_BIT */ + { 20660, 0x00000004 }, /* GL_MAP_INVALIDATE_RANGE_BIT */ + { 20688, 0x00000001 }, /* GL_MAP_READ_BIT */ + { 20704, 0x00000D11 }, /* GL_MAP_STENCIL */ + { 20719, 0x00000020 }, /* GL_MAP_UNSYNCHRONIZED_BIT */ + { 20745, 0x00000002 }, /* GL_MAP_WRITE_BIT */ + { 20762, 0x000088C0 }, /* GL_MATRIX0_ARB */ + { 20777, 0x00008630 }, /* GL_MATRIX0_NV */ + { 20791, 0x000088CA }, /* GL_MATRIX10_ARB */ + { 20807, 0x000088CB }, /* GL_MATRIX11_ARB */ + { 20823, 0x000088CC }, /* GL_MATRIX12_ARB */ + { 20839, 0x000088CD }, /* GL_MATRIX13_ARB */ + { 20855, 0x000088CE }, /* GL_MATRIX14_ARB */ + { 20871, 0x000088CF }, /* GL_MATRIX15_ARB */ + { 20887, 0x000088D0 }, /* GL_MATRIX16_ARB */ + { 20903, 0x000088D1 }, /* GL_MATRIX17_ARB */ + { 20919, 0x000088D2 }, /* GL_MATRIX18_ARB */ + { 20935, 0x000088D3 }, /* GL_MATRIX19_ARB */ + { 20951, 0x000088C1 }, /* GL_MATRIX1_ARB */ + { 20966, 0x00008631 }, /* GL_MATRIX1_NV */ + { 20980, 0x000088D4 }, /* GL_MATRIX20_ARB */ + { 20996, 0x000088D5 }, /* GL_MATRIX21_ARB */ + { 21012, 0x000088D6 }, /* GL_MATRIX22_ARB */ + { 21028, 0x000088D7 }, /* GL_MATRIX23_ARB */ + { 21044, 0x000088D8 }, /* GL_MATRIX24_ARB */ + { 21060, 0x000088D9 }, /* GL_MATRIX25_ARB */ + { 21076, 0x000088DA }, /* GL_MATRIX26_ARB */ + { 21092, 0x000088DB }, /* GL_MATRIX27_ARB */ + { 21108, 0x000088DC }, /* GL_MATRIX28_ARB */ + { 21124, 0x000088DD }, /* GL_MATRIX29_ARB */ + { 21140, 0x000088C2 }, /* GL_MATRIX2_ARB */ + { 21155, 0x00008632 }, /* GL_MATRIX2_NV */ + { 21169, 0x000088DE }, /* GL_MATRIX30_ARB */ + { 21185, 0x000088DF }, /* GL_MATRIX31_ARB */ + { 21201, 0x000088C3 }, /* GL_MATRIX3_ARB */ + { 21216, 0x00008633 }, /* GL_MATRIX3_NV */ + { 21230, 0x000088C4 }, /* GL_MATRIX4_ARB */ + { 21245, 0x00008634 }, /* GL_MATRIX4_NV */ + { 21259, 0x000088C5 }, /* GL_MATRIX5_ARB */ + { 21274, 0x00008635 }, /* GL_MATRIX5_NV */ + { 21288, 0x000088C6 }, /* GL_MATRIX6_ARB */ + { 21303, 0x00008636 }, /* GL_MATRIX6_NV */ + { 21317, 0x000088C7 }, /* GL_MATRIX7_ARB */ + { 21332, 0x00008637 }, /* GL_MATRIX7_NV */ + { 21346, 0x000088C8 }, /* GL_MATRIX8_ARB */ + { 21361, 0x000088C9 }, /* GL_MATRIX9_ARB */ + { 21376, 0x00008844 }, /* GL_MATRIX_INDEX_ARRAY_ARB */ + { 21402, 0x00008B9E }, /* GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES */ + { 21443, 0x00008844 }, /* GL_MATRIX_INDEX_ARRAY_OES */ + { 21469, 0x00008849 }, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ + { 21503, 0x00008849 }, /* GL_MATRIX_INDEX_ARRAY_POINTER_OES */ + { 21537, 0x00008846 }, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */ + { 21568, 0x00008846 }, /* GL_MATRIX_INDEX_ARRAY_SIZE_OES */ + { 21599, 0x00008848 }, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ + { 21632, 0x00008848 }, /* GL_MATRIX_INDEX_ARRAY_STRIDE_OES */ + { 21665, 0x00008847 }, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ + { 21696, 0x00008847 }, /* GL_MATRIX_INDEX_ARRAY_TYPE_OES */ + { 21727, 0x00000BA0 }, /* GL_MATRIX_MODE */ + { 21742, 0x00008840 }, /* GL_MATRIX_PALETTE_ARB */ + { 21764, 0x00008840 }, /* GL_MATRIX_PALETTE_OES */ + { 21786, 0x00008008 }, /* GL_MAX */ + { 21793, 0x00008073 }, /* GL_MAX_3D_TEXTURE_SIZE */ + { 21816, 0x00008073 }, /* GL_MAX_3D_TEXTURE_SIZE_OES */ + { 21843, 0x000088FF }, /* GL_MAX_ARRAY_TEXTURE_LAYERS */ + { 21871, 0x000088FF }, /* GL_MAX_ARRAY_TEXTURE_LAYERS_EXT */ + { 21903, 0x00000D35 }, /* GL_MAX_ATTRIB_STACK_DEPTH */ + { 21929, 0x00000D3B }, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ + { 21962, 0x00008177 }, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ + { 21988, 0x00008178 }, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + { 22022, 0x00000D32 }, /* GL_MAX_CLIP_DISTANCES */ + { 22044, 0x00000D32 }, /* GL_MAX_CLIP_PLANES */ + { 22063, 0x00008CDF }, /* GL_MAX_COLOR_ATTACHMENTS */ + { 22088, 0x00008CDF }, /* GL_MAX_COLOR_ATTACHMENTS_EXT */ + { 22117, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ + { 22149, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI */ + { 22185, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ + { 22221, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB */ + { 22261, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT */ + { 22287, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT_EXT */ + { 22317, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH */ + { 22342, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH_EXT */ + { 22371, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ + { 22400, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB */ + { 22433, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES */ + { 22466, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS */ + { 22486, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ARB */ + { 22510, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ATI */ + { 22534, 0x000080E9 }, /* GL_MAX_ELEMENTS_INDICES */ + { 22558, 0x000080E8 }, /* GL_MAX_ELEMENTS_VERTICES */ + { 22583, 0x00000D30 }, /* GL_MAX_EVAL_ORDER */ + { 22601, 0x00008008 }, /* GL_MAX_EXT */ + { 22612, 0x00009125 }, /* GL_MAX_FRAGMENT_INPUT_COMPONENTS */ + { 22645, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ + { 22680, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB */ + { 22719, 0x00008DFD }, /* GL_MAX_FRAGMENT_UNIFORM_VECTORS */ + { 22751, 0x00009123 }, /* GL_MAX_GEOMETRY_INPUT_COMPONENTS */ + { 22784, 0x00009124 }, /* GL_MAX_GEOMETRY_OUTPUT_COMPONENTS */ + { 22818, 0x00008DE0 }, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES */ + { 22850, 0x00008DE0 }, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB */ + { 22886, 0x00008C29 }, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS */ + { 22922, 0x00008C29 }, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB */ + { 22962, 0x00008DE1 }, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS */ + { 23002, 0x00008DE1 }, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB */ + { 23046, 0x00008DDF }, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS */ + { 23081, 0x00008DDF }, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB */ + { 23120, 0x00008DDD }, /* GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB */ + { 23159, 0x00000D31 }, /* GL_MAX_LIGHTS */ + { 23173, 0x00000B31 }, /* GL_MAX_LIST_NESTING */ + { 23193, 0x00008841 }, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */ + { 23231, 0x00000D36 }, /* GL_MAX_MODELVIEW_STACK_DEPTH */ + { 23260, 0x00000D37 }, /* GL_MAX_NAME_STACK_DEPTH */ + { 23284, 0x00008842 }, /* GL_MAX_PALETTE_MATRICES_ARB */ + { 23312, 0x00008842 }, /* GL_MAX_PALETTE_MATRICES_OES */ + { 23340, 0x00000D34 }, /* GL_MAX_PIXEL_MAP_TABLE */ + { 23363, 0x000088B1 }, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */ + { 23400, 0x0000880B }, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */ + { 23436, 0x000088AD }, /* GL_MAX_PROGRAM_ATTRIBS_ARB */ + { 23463, 0x000088F5 }, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ + { 23492, 0x000088B5 }, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ + { 23526, 0x000088F4 }, /* GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV */ + { 23562, 0x000088F6 }, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ + { 23589, 0x000088A1 }, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ + { 23621, 0x000088B4 }, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ + { 23657, 0x000088F8 }, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ + { 23686, 0x000088F7 }, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ + { 23715, 0x0000862F }, /* GL_MAX_PROGRAM_MATRICES_ARB */ + { 23743, 0x0000862E }, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ + { 23781, 0x000088B3 }, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ + { 23825, 0x0000880E }, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ + { 23868, 0x000088AF }, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */ + { 23902, 0x000088A3 }, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ + { 23941, 0x000088AB }, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */ + { 23978, 0x000088A7 }, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */ + { 24016, 0x00008810 }, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ + { 24059, 0x0000880F }, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ + { 24102, 0x000088A9 }, /* GL_MAX_PROGRAM_PARAMETERS_ARB */ + { 24132, 0x000088A5 }, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */ + { 24163, 0x00008905 }, /* GL_MAX_PROGRAM_TEXEL_OFFSET */ + { 24191, 0x00008905 }, /* GL_MAX_PROGRAM_TEXEL_OFFSET_EXT */ + { 24223, 0x0000880D }, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */ + { 24259, 0x0000880C }, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */ + { 24295, 0x00000D38 }, /* GL_MAX_PROJECTION_STACK_DEPTH */ + { 24325, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE */ + { 24355, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB */ + { 24389, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_NV */ + { 24422, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE */ + { 24447, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE_EXT */ + { 24476, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE_OES */ + { 24505, 0x00008D57 }, /* GL_MAX_SAMPLES */ + { 24520, 0x00008D57 }, /* GL_MAX_SAMPLES_EXT */ + { 24539, 0x00009111 }, /* GL_MAX_SERVER_WAIT_TIMEOUT */ + { 24566, 0x00008504 }, /* GL_MAX_SHININESS_NV */ + { 24586, 0x00008505 }, /* GL_MAX_SPOT_EXPONENT_NV */ + { 24610, 0x00008C2B }, /* GL_MAX_TEXTURE_BUFFER_SIZE */ + { 24637, 0x00008C2B }, /* GL_MAX_TEXTURE_BUFFER_SIZE_ARB */ + { 24668, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS */ + { 24690, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS_ARB */ + { 24716, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS */ + { 24743, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS_ARB */ + { 24774, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS */ + { 24798, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS_EXT */ + { 24826, 0x000084FF }, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ + { 24860, 0x00000D33 }, /* GL_MAX_TEXTURE_SIZE */ + { 24880, 0x00000D39 }, /* GL_MAX_TEXTURE_STACK_DEPTH */ + { 24907, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS */ + { 24928, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS_ARB */ + { 24953, 0x0000862F }, /* GL_MAX_TRACK_MATRICES_NV */ + { 24978, 0x0000862E }, /* GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV */ + { 25013, 0x00008C8A }, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS */ + { 25062, 0x00008C8A }, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT */ + { 25115, 0x00008C8B }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS */ + { 25158, 0x00008C8B }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT */ + { 25205, 0x00008C80 }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS */ + { 25251, 0x00008C80 }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT */ + { 25301, 0x00008B4B }, /* GL_MAX_VARYING_COMPONENTS */ + { 25327, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS */ + { 25349, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS_ARB */ + { 25375, 0x00008DFC }, /* GL_MAX_VARYING_VECTORS */ + { 25398, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS */ + { 25420, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS_ARB */ + { 25446, 0x00009122 }, /* GL_MAX_VERTEX_OUTPUT_COMPONENTS */ + { 25478, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ + { 25512, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB */ + { 25550, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ + { 25583, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB */ + { 25620, 0x00008DFB }, /* GL_MAX_VERTEX_UNIFORM_VECTORS */ + { 25650, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_ARB */ + { 25674, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_OES */ + { 25698, 0x00008DDE }, /* GL_MAX_VERTEX_VARYING_COMPONENTS_ARB */ + { 25735, 0x00000D3A }, /* GL_MAX_VIEWPORT_DIMS */ + { 25756, 0x00008DF1 }, /* GL_MEDIUM_FLOAT */ + { 25772, 0x00008DF4 }, /* GL_MEDIUM_INT */ + { 25786, 0x00008007 }, /* GL_MIN */ + { 25793, 0x0000802E }, /* GL_MINMAX */ + { 25803, 0x0000802E }, /* GL_MINMAX_EXT */ + { 25817, 0x0000802F }, /* GL_MINMAX_FORMAT */ + { 25834, 0x0000802F }, /* GL_MINMAX_FORMAT_EXT */ + { 25855, 0x00008030 }, /* GL_MINMAX_SINK */ + { 25870, 0x00008030 }, /* GL_MINMAX_SINK_EXT */ + { 25889, 0x0000821C }, /* GL_MINOR_VERSION */ + { 25906, 0x00008007 }, /* GL_MIN_EXT */ + { 25917, 0x00008904 }, /* GL_MIN_PROGRAM_TEXEL_OFFSET */ + { 25945, 0x00008904 }, /* GL_MIN_PROGRAM_TEXEL_OFFSET_EXT */ + { 25977, 0x00008370 }, /* GL_MIRRORED_REPEAT */ + { 25996, 0x00008370 }, /* GL_MIRRORED_REPEAT_ARB */ + { 26019, 0x00008370 }, /* GL_MIRRORED_REPEAT_IBM */ + { 26042, 0x00008742 }, /* GL_MIRROR_CLAMP_ATI */ + { 26062, 0x00008742 }, /* GL_MIRROR_CLAMP_EXT */ + { 26082, 0x00008912 }, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ + { 26112, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_ATI */ + { 26140, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ + { 26168, 0x00001700 }, /* GL_MODELVIEW */ + { 26181, 0x00001700 }, /* GL_MODELVIEW0_ARB */ + { 26199, 0x0000872A }, /* GL_MODELVIEW10_ARB */ + { 26218, 0x0000872B }, /* GL_MODELVIEW11_ARB */ + { 26237, 0x0000872C }, /* GL_MODELVIEW12_ARB */ + { 26256, 0x0000872D }, /* GL_MODELVIEW13_ARB */ + { 26275, 0x0000872E }, /* GL_MODELVIEW14_ARB */ + { 26294, 0x0000872F }, /* GL_MODELVIEW15_ARB */ + { 26313, 0x00008730 }, /* GL_MODELVIEW16_ARB */ + { 26332, 0x00008731 }, /* GL_MODELVIEW17_ARB */ + { 26351, 0x00008732 }, /* GL_MODELVIEW18_ARB */ + { 26370, 0x00008733 }, /* GL_MODELVIEW19_ARB */ + { 26389, 0x0000850A }, /* GL_MODELVIEW1_ARB */ + { 26407, 0x00008734 }, /* GL_MODELVIEW20_ARB */ + { 26426, 0x00008735 }, /* GL_MODELVIEW21_ARB */ + { 26445, 0x00008736 }, /* GL_MODELVIEW22_ARB */ + { 26464, 0x00008737 }, /* GL_MODELVIEW23_ARB */ + { 26483, 0x00008738 }, /* GL_MODELVIEW24_ARB */ + { 26502, 0x00008739 }, /* GL_MODELVIEW25_ARB */ + { 26521, 0x0000873A }, /* GL_MODELVIEW26_ARB */ + { 26540, 0x0000873B }, /* GL_MODELVIEW27_ARB */ + { 26559, 0x0000873C }, /* GL_MODELVIEW28_ARB */ + { 26578, 0x0000873D }, /* GL_MODELVIEW29_ARB */ + { 26597, 0x00008722 }, /* GL_MODELVIEW2_ARB */ + { 26615, 0x0000873E }, /* GL_MODELVIEW30_ARB */ + { 26634, 0x0000873F }, /* GL_MODELVIEW31_ARB */ + { 26653, 0x00008723 }, /* GL_MODELVIEW3_ARB */ + { 26671, 0x00008724 }, /* GL_MODELVIEW4_ARB */ + { 26689, 0x00008725 }, /* GL_MODELVIEW5_ARB */ + { 26707, 0x00008726 }, /* GL_MODELVIEW6_ARB */ + { 26725, 0x00008727 }, /* GL_MODELVIEW7_ARB */ + { 26743, 0x00008728 }, /* GL_MODELVIEW8_ARB */ + { 26761, 0x00008729 }, /* GL_MODELVIEW9_ARB */ + { 26779, 0x00000BA6 }, /* GL_MODELVIEW_MATRIX */ + { 26799, 0x0000898D }, /* GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES */ + { 26841, 0x00008629 }, /* GL_MODELVIEW_PROJECTION_NV */ + { 26868, 0x00000BA3 }, /* GL_MODELVIEW_STACK_DEPTH */ + { 26893, 0x00002100 }, /* GL_MODULATE */ + { 26905, 0x00008744 }, /* GL_MODULATE_ADD_ATI */ + { 26925, 0x00008745 }, /* GL_MODULATE_SIGNED_ADD_ATI */ + { 26952, 0x00008746 }, /* GL_MODULATE_SUBTRACT_ATI */ + { 26977, 0x00000103 }, /* GL_MULT */ + { 26985, 0x0000809D }, /* GL_MULTISAMPLE */ + { 27000, 0x000086B2 }, /* GL_MULTISAMPLE_3DFX */ + { 27020, 0x0000809D }, /* GL_MULTISAMPLE_ARB */ + { 27039, 0x20000000 }, /* GL_MULTISAMPLE_BIT */ + { 27058, 0x20000000 }, /* GL_MULTISAMPLE_BIT_3DFX */ + { 27082, 0x20000000 }, /* GL_MULTISAMPLE_BIT_ARB */ + { 27105, 0x00008534 }, /* GL_MULTISAMPLE_FILTER_HINT_NV */ + { 27135, 0x00002A25 }, /* GL_N3F_V3F */ + { 27146, 0x00000D70 }, /* GL_NAME_STACK_DEPTH */ + { 27166, 0x0000150E }, /* GL_NAND */ + { 27174, 0x00002600 }, /* GL_NEAREST */ + { 27185, 0x0000844E }, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ + { 27216, 0x0000844D }, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ + { 27248, 0x00002702 }, /* GL_NEAREST_MIPMAP_LINEAR */ + { 27273, 0x00002700 }, /* GL_NEAREST_MIPMAP_NEAREST */ + { 27299, 0x00000200 }, /* GL_NEVER */ + { 27308, 0x00001102 }, /* GL_NICEST */ + { 27318, 0x00000000 }, /* GL_NONE */ + { 27326, 0x00000000 }, /* GL_NONE_OES */ + { 27338, 0x00001505 }, /* GL_NOOP */ + { 27346, 0x00001508 }, /* GL_NOR */ + { 27353, 0x00000BA1 }, /* GL_NORMALIZE */ + { 27366, 0x00008075 }, /* GL_NORMAL_ARRAY */ + { 27382, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ + { 27413, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING_ARB */ + { 27448, 0x0000808F }, /* GL_NORMAL_ARRAY_POINTER */ + { 27472, 0x0000807F }, /* GL_NORMAL_ARRAY_STRIDE */ + { 27495, 0x0000807E }, /* GL_NORMAL_ARRAY_TYPE */ + { 27516, 0x00008511 }, /* GL_NORMAL_MAP */ + { 27530, 0x00008511 }, /* GL_NORMAL_MAP_ARB */ + { 27548, 0x00008511 }, /* GL_NORMAL_MAP_NV */ + { 27565, 0x00008511 }, /* GL_NORMAL_MAP_OES */ + { 27583, 0x00000205 }, /* GL_NOTEQUAL */ + { 27595, 0x00000000 }, /* GL_NO_ERROR */ + { 27607, 0x00008261 }, /* GL_NO_RESET_NOTIFICATION_ARB */ + { 27636, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ + { 27670, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB */ + { 27708, 0x0000821D }, /* GL_NUM_EXTENSIONS */ + { 27726, 0x000087FE }, /* GL_NUM_PROGRAM_BINARY_FORMATS_OES */ + { 27760, 0x00008DF9 }, /* GL_NUM_SHADER_BINARY_FORMATS */ + { 27789, 0x00008B89 }, /* GL_OBJECT_ACTIVE_ATTRIBUTES_ARB */ + { 27821, 0x00008B8A }, /* GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB */ + { 27863, 0x00008B86 }, /* GL_OBJECT_ACTIVE_UNIFORMS_ARB */ + { 27893, 0x00008B87 }, /* GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB */ + { 27933, 0x00008B85 }, /* GL_OBJECT_ATTACHED_OBJECTS_ARB */ + { 27964, 0x00008B81 }, /* GL_OBJECT_COMPILE_STATUS_ARB */ + { 27993, 0x00008B80 }, /* GL_OBJECT_DELETE_STATUS_ARB */ + { 28021, 0x00008B84 }, /* GL_OBJECT_INFO_LOG_LENGTH_ARB */ + { 28051, 0x00002401 }, /* GL_OBJECT_LINEAR */ + { 28068, 0x00008B82 }, /* GL_OBJECT_LINK_STATUS_ARB */ + { 28094, 0x00002501 }, /* GL_OBJECT_PLANE */ + { 28110, 0x00008B88 }, /* GL_OBJECT_SHADER_SOURCE_LENGTH_ARB */ + { 28145, 0x00008B4F }, /* GL_OBJECT_SUBTYPE_ARB */ + { 28167, 0x00009112 }, /* GL_OBJECT_TYPE */ + { 28182, 0x00008B4E }, /* GL_OBJECT_TYPE_ARB */ + { 28201, 0x00008B83 }, /* GL_OBJECT_VALIDATE_STATUS_ARB */ + { 28231, 0x00008165 }, /* GL_OCCLUSION_TEST_HP */ + { 28252, 0x00008166 }, /* GL_OCCLUSION_TEST_RESULT_HP */ + { 28280, 0x00000001 }, /* GL_ONE */ + { 28287, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA */ + { 28315, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA_EXT */ + { 28347, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR */ + { 28375, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR_EXT */ + { 28407, 0x00000305 }, /* GL_ONE_MINUS_DST_ALPHA */ + { 28430, 0x00000307 }, /* GL_ONE_MINUS_DST_COLOR */ + { 28453, 0x00000303 }, /* GL_ONE_MINUS_SRC_ALPHA */ + { 28476, 0x00000301 }, /* GL_ONE_MINUS_SRC_COLOR */ + { 28499, 0x00008598 }, /* GL_OPERAND0_ALPHA */ + { 28517, 0x00008598 }, /* GL_OPERAND0_ALPHA_ARB */ + { 28539, 0x00008598 }, /* GL_OPERAND0_ALPHA_EXT */ + { 28561, 0x00008590 }, /* GL_OPERAND0_RGB */ + { 28577, 0x00008590 }, /* GL_OPERAND0_RGB_ARB */ + { 28597, 0x00008590 }, /* GL_OPERAND0_RGB_EXT */ + { 28617, 0x00008599 }, /* GL_OPERAND1_ALPHA */ + { 28635, 0x00008599 }, /* GL_OPERAND1_ALPHA_ARB */ + { 28657, 0x00008599 }, /* GL_OPERAND1_ALPHA_EXT */ + { 28679, 0x00008591 }, /* GL_OPERAND1_RGB */ + { 28695, 0x00008591 }, /* GL_OPERAND1_RGB_ARB */ + { 28715, 0x00008591 }, /* GL_OPERAND1_RGB_EXT */ + { 28735, 0x0000859A }, /* GL_OPERAND2_ALPHA */ + { 28753, 0x0000859A }, /* GL_OPERAND2_ALPHA_ARB */ + { 28775, 0x0000859A }, /* GL_OPERAND2_ALPHA_EXT */ + { 28797, 0x00008592 }, /* GL_OPERAND2_RGB */ + { 28813, 0x00008592 }, /* GL_OPERAND2_RGB_ARB */ + { 28833, 0x00008592 }, /* GL_OPERAND2_RGB_EXT */ + { 28853, 0x0000859B }, /* GL_OPERAND3_ALPHA_NV */ + { 28874, 0x00008593 }, /* GL_OPERAND3_RGB_NV */ + { 28893, 0x00001507 }, /* GL_OR */ + { 28899, 0x00000A01 }, /* GL_ORDER */ + { 28908, 0x0000150D }, /* GL_OR_INVERTED */ + { 28923, 0x0000150B }, /* GL_OR_REVERSE */ + { 28937, 0x00000505 }, /* GL_OUT_OF_MEMORY */ + { 28954, 0x00000D05 }, /* GL_PACK_ALIGNMENT */ + { 28972, 0x0000806C }, /* GL_PACK_IMAGE_HEIGHT */ + { 28993, 0x00008758 }, /* GL_PACK_INVERT_MESA */ + { 29013, 0x00000D01 }, /* GL_PACK_LSB_FIRST */ + { 29031, 0x00000D02 }, /* GL_PACK_ROW_LENGTH */ + { 29050, 0x0000806B }, /* GL_PACK_SKIP_IMAGES */ + { 29070, 0x00000D04 }, /* GL_PACK_SKIP_PIXELS */ + { 29090, 0x00000D03 }, /* GL_PACK_SKIP_ROWS */ + { 29108, 0x00000D00 }, /* GL_PACK_SWAP_BYTES */ + { 29127, 0x00008B92 }, /* GL_PALETTE4_R5_G6_B5_OES */ + { 29152, 0x00008B94 }, /* GL_PALETTE4_RGB5_A1_OES */ + { 29176, 0x00008B90 }, /* GL_PALETTE4_RGB8_OES */ + { 29197, 0x00008B93 }, /* GL_PALETTE4_RGBA4_OES */ + { 29219, 0x00008B91 }, /* GL_PALETTE4_RGBA8_OES */ + { 29241, 0x00008B97 }, /* GL_PALETTE8_R5_G6_B5_OES */ + { 29266, 0x00008B99 }, /* GL_PALETTE8_RGB5_A1_OES */ + { 29290, 0x00008B95 }, /* GL_PALETTE8_RGB8_OES */ + { 29311, 0x00008B98 }, /* GL_PALETTE8_RGBA4_OES */ + { 29333, 0x00008B96 }, /* GL_PALETTE8_RGBA8_OES */ + { 29355, 0x00000700 }, /* GL_PASS_THROUGH_TOKEN */ + { 29377, 0x00000C50 }, /* GL_PERSPECTIVE_CORRECTION_HINT */ + { 29408, 0x00000C79 }, /* GL_PIXEL_MAP_A_TO_A */ + { 29428, 0x00000CB9 }, /* GL_PIXEL_MAP_A_TO_A_SIZE */ + { 29453, 0x00000C78 }, /* GL_PIXEL_MAP_B_TO_B */ + { 29473, 0x00000CB8 }, /* GL_PIXEL_MAP_B_TO_B_SIZE */ + { 29498, 0x00000C77 }, /* GL_PIXEL_MAP_G_TO_G */ + { 29518, 0x00000CB7 }, /* GL_PIXEL_MAP_G_TO_G_SIZE */ + { 29543, 0x00000C75 }, /* GL_PIXEL_MAP_I_TO_A */ + { 29563, 0x00000CB5 }, /* GL_PIXEL_MAP_I_TO_A_SIZE */ + { 29588, 0x00000C74 }, /* GL_PIXEL_MAP_I_TO_B */ + { 29608, 0x00000CB4 }, /* GL_PIXEL_MAP_I_TO_B_SIZE */ + { 29633, 0x00000C73 }, /* GL_PIXEL_MAP_I_TO_G */ + { 29653, 0x00000CB3 }, /* GL_PIXEL_MAP_I_TO_G_SIZE */ + { 29678, 0x00000C70 }, /* GL_PIXEL_MAP_I_TO_I */ + { 29698, 0x00000CB0 }, /* GL_PIXEL_MAP_I_TO_I_SIZE */ + { 29723, 0x00000C72 }, /* GL_PIXEL_MAP_I_TO_R */ + { 29743, 0x00000CB2 }, /* GL_PIXEL_MAP_I_TO_R_SIZE */ + { 29768, 0x00000C76 }, /* GL_PIXEL_MAP_R_TO_R */ + { 29788, 0x00000CB6 }, /* GL_PIXEL_MAP_R_TO_R_SIZE */ + { 29813, 0x00000C71 }, /* GL_PIXEL_MAP_S_TO_S */ + { 29833, 0x00000CB1 }, /* GL_PIXEL_MAP_S_TO_S_SIZE */ + { 29858, 0x00000020 }, /* GL_PIXEL_MODE_BIT */ + { 29876, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER */ + { 29897, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING */ + { 29926, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING_EXT */ + { 29959, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER_EXT */ + { 29984, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER */ + { 30007, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ + { 30038, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING_EXT */ + { 30073, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER_EXT */ + { 30100, 0x00001B00 }, /* GL_POINT */ + { 30109, 0x00000000 }, /* GL_POINTS */ + { 30119, 0x00000002 }, /* GL_POINT_BIT */ + { 30132, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION */ + { 30162, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_ARB */ + { 30196, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_EXT */ + { 30230, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_SGIS */ + { 30265, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE */ + { 30294, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_ARB */ + { 30327, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_EXT */ + { 30360, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_SGIS */ + { 30394, 0x00000B11 }, /* GL_POINT_SIZE */ + { 30408, 0x00008B9F }, /* GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES */ + { 30447, 0x00008B9C }, /* GL_POINT_SIZE_ARRAY_OES */ + { 30471, 0x0000898C }, /* GL_POINT_SIZE_ARRAY_POINTER_OES */ + { 30503, 0x0000898B }, /* GL_POINT_SIZE_ARRAY_STRIDE_OES */ + { 30534, 0x0000898A }, /* GL_POINT_SIZE_ARRAY_TYPE_OES */ + { 30563, 0x00000B13 }, /* GL_POINT_SIZE_GRANULARITY */ + { 30589, 0x00008127 }, /* GL_POINT_SIZE_MAX */ + { 30607, 0x00008127 }, /* GL_POINT_SIZE_MAX_ARB */ + { 30629, 0x00008127 }, /* GL_POINT_SIZE_MAX_EXT */ + { 30651, 0x00008127 }, /* GL_POINT_SIZE_MAX_SGIS */ + { 30674, 0x00008126 }, /* GL_POINT_SIZE_MIN */ + { 30692, 0x00008126 }, /* GL_POINT_SIZE_MIN_ARB */ + { 30714, 0x00008126 }, /* GL_POINT_SIZE_MIN_EXT */ + { 30736, 0x00008126 }, /* GL_POINT_SIZE_MIN_SGIS */ + { 30759, 0x00000B12 }, /* GL_POINT_SIZE_RANGE */ + { 30779, 0x00000B10 }, /* GL_POINT_SMOOTH */ + { 30795, 0x00000C51 }, /* GL_POINT_SMOOTH_HINT */ + { 30816, 0x00008861 }, /* GL_POINT_SPRITE */ + { 30832, 0x00008861 }, /* GL_POINT_SPRITE_ARB */ + { 30852, 0x00008CA0 }, /* GL_POINT_SPRITE_COORD_ORIGIN */ + { 30881, 0x00008861 }, /* GL_POINT_SPRITE_NV */ + { 30900, 0x00008861 }, /* GL_POINT_SPRITE_OES */ + { 30920, 0x00008863 }, /* GL_POINT_SPRITE_R_MODE_NV */ + { 30946, 0x00000701 }, /* GL_POINT_TOKEN */ + { 30961, 0x00000009 }, /* GL_POLYGON */ + { 30972, 0x00000008 }, /* GL_POLYGON_BIT */ + { 30987, 0x00000B40 }, /* GL_POLYGON_MODE */ + { 31003, 0x00008039 }, /* GL_POLYGON_OFFSET_BIAS */ + { 31026, 0x00008038 }, /* GL_POLYGON_OFFSET_FACTOR */ + { 31051, 0x00008037 }, /* GL_POLYGON_OFFSET_FILL */ + { 31074, 0x00002A02 }, /* GL_POLYGON_OFFSET_LINE */ + { 31097, 0x00002A01 }, /* GL_POLYGON_OFFSET_POINT */ + { 31121, 0x00002A00 }, /* GL_POLYGON_OFFSET_UNITS */ + { 31145, 0x00000B41 }, /* GL_POLYGON_SMOOTH */ + { 31163, 0x00000C53 }, /* GL_POLYGON_SMOOTH_HINT */ + { 31186, 0x00000B42 }, /* GL_POLYGON_STIPPLE */ + { 31205, 0x00000010 }, /* GL_POLYGON_STIPPLE_BIT */ + { 31228, 0x00000703 }, /* GL_POLYGON_TOKEN */ + { 31245, 0x00001203 }, /* GL_POSITION */ + { 31257, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ + { 31289, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI */ + { 31325, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ + { 31358, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI */ + { 31395, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ + { 31426, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI */ + { 31461, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ + { 31493, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI */ + { 31529, 0x000080D2 }, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ + { 31562, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ + { 31594, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI */ + { 31630, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ + { 31663, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI */ + { 31700, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS */ + { 31730, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS_SGI */ + { 31764, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE */ + { 31795, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE_SGI */ + { 31830, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ + { 31861, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS_EXT */ + { 31896, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ + { 31928, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE_EXT */ + { 31964, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS */ + { 31994, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS_EXT */ + { 32028, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE */ + { 32059, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE_EXT */ + { 32094, 0x000080D1 }, /* GL_POST_CONVOLUTION_COLOR_TABLE */ + { 32126, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS */ + { 32157, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS_EXT */ + { 32192, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE */ + { 32224, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE_EXT */ + { 32260, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS */ + { 32289, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS_EXT */ + { 32322, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE */ + { 32352, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE_EXT */ + { 32386, 0x0000817B }, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ + { 32425, 0x00008179 }, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ + { 32458, 0x0000817C }, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ + { 32498, 0x0000817A }, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ + { 32532, 0x00008578 }, /* GL_PREVIOUS */ + { 32544, 0x00008578 }, /* GL_PREVIOUS_ARB */ + { 32560, 0x00008578 }, /* GL_PREVIOUS_EXT */ + { 32576, 0x00008577 }, /* GL_PRIMARY_COLOR */ + { 32593, 0x00008577 }, /* GL_PRIMARY_COLOR_ARB */ + { 32614, 0x00008577 }, /* GL_PRIMARY_COLOR_EXT */ + { 32635, 0x00008C87 }, /* GL_PRIMITIVES_GENERATED */ + { 32659, 0x00008C87 }, /* GL_PRIMITIVES_GENERATED_EXT */ + { 32687, 0x00008F9D }, /* GL_PRIMITIVE_RESTART */ + { 32708, 0x00008F9E }, /* GL_PRIMITIVE_RESTART_INDEX */ + { 32735, 0x00008559 }, /* GL_PRIMITIVE_RESTART_INDEX_NV */ + { 32765, 0x00008558 }, /* GL_PRIMITIVE_RESTART_NV */ + { 32789, 0x000088B0 }, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ + { 32822, 0x00008805 }, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ + { 32854, 0x000088AC }, /* GL_PROGRAM_ATTRIBS_ARB */ + { 32877, 0x000087FF }, /* GL_PROGRAM_BINARY_FORMATS_OES */ + { 32907, 0x00008741 }, /* GL_PROGRAM_BINARY_LENGTH_OES */ + { 32936, 0x00008677 }, /* GL_PROGRAM_BINDING_ARB */ + { 32959, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_ARB */ + { 32989, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_NV */ + { 33018, 0x00008874 }, /* GL_PROGRAM_ERROR_STRING_ARB */ + { 33046, 0x00008876 }, /* GL_PROGRAM_FORMAT_ARB */ + { 33068, 0x00008875 }, /* GL_PROGRAM_FORMAT_ASCII_ARB */ + { 33096, 0x000088A0 }, /* GL_PROGRAM_INSTRUCTIONS_ARB */ + { 33124, 0x00008627 }, /* GL_PROGRAM_LENGTH_ARB */ + { 33146, 0x00008627 }, /* GL_PROGRAM_LENGTH_NV */ + { 33167, 0x000088B2 }, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ + { 33207, 0x00008808 }, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ + { 33246, 0x000088AE }, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ + { 33276, 0x000088A2 }, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ + { 33311, 0x000088AA }, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ + { 33344, 0x000088A6 }, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ + { 33378, 0x0000880A }, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ + { 33417, 0x00008809 }, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ + { 33456, 0x00008B40 }, /* GL_PROGRAM_OBJECT_ARB */ + { 33478, 0x000088A8 }, /* GL_PROGRAM_PARAMETERS_ARB */ + { 33504, 0x00008644 }, /* GL_PROGRAM_PARAMETER_NV */ + { 33528, 0x00008642 }, /* GL_PROGRAM_POINT_SIZE */ + { 33550, 0x00008642 }, /* GL_PROGRAM_POINT_SIZE_ARB */ + { 33576, 0x00008647 }, /* GL_PROGRAM_RESIDENT_NV */ + { 33599, 0x00008628 }, /* GL_PROGRAM_STRING_ARB */ + { 33621, 0x00008628 }, /* GL_PROGRAM_STRING_NV */ + { 33642, 0x00008646 }, /* GL_PROGRAM_TARGET_NV */ + { 33663, 0x000088A4 }, /* GL_PROGRAM_TEMPORARIES_ARB */ + { 33690, 0x00008807 }, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ + { 33722, 0x00008806 }, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ + { 33754, 0x000088B6 }, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ + { 33789, 0x00001701 }, /* GL_PROJECTION */ + { 33803, 0x00000BA7 }, /* GL_PROJECTION_MATRIX */ + { 33824, 0x0000898E }, /* GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES */ + { 33867, 0x00000BA4 }, /* GL_PROJECTION_STACK_DEPTH */ + { 33893, 0x00008E4F }, /* GL_PROVOKING_VERTEX */ + { 33913, 0x00008E4F }, /* GL_PROVOKING_VERTEX_EXT */ + { 33937, 0x000080D3 }, /* GL_PROXY_COLOR_TABLE */ + { 33958, 0x00008025 }, /* GL_PROXY_HISTOGRAM */ + { 33977, 0x00008025 }, /* GL_PROXY_HISTOGRAM_EXT */ + { 34000, 0x000080D5 }, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ + { 34039, 0x000080D4 }, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ + { 34077, 0x00008063 }, /* GL_PROXY_TEXTURE_1D */ + { 34097, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY */ + { 34123, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY_EXT */ + { 34153, 0x00008063 }, /* GL_PROXY_TEXTURE_1D_EXT */ + { 34177, 0x00008064 }, /* GL_PROXY_TEXTURE_2D */ + { 34197, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY */ + { 34223, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY_EXT */ + { 34253, 0x00008064 }, /* GL_PROXY_TEXTURE_2D_EXT */ + { 34277, 0x00008070 }, /* GL_PROXY_TEXTURE_3D */ + { 34297, 0x000080BD }, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ + { 34330, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP */ + { 34356, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP_ARB */ + { 34386, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE */ + { 34413, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */ + { 34444, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_NV */ + { 34474, 0x00008A1D }, /* GL_PURGEABLE_APPLE */ + { 34493, 0x00002003 }, /* GL_Q */ + { 34498, 0x00001209 }, /* GL_QUADRATIC_ATTENUATION */ + { 34523, 0x00000007 }, /* GL_QUADS */ + { 34532, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION */ + { 34576, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT */ + { 34624, 0x00008614 }, /* GL_QUAD_MESH_SUN */ + { 34641, 0x00000008 }, /* GL_QUAD_STRIP */ + { 34655, 0x00008E16 }, /* GL_QUERY_BY_REGION_NO_WAIT */ + { 34682, 0x00008E16 }, /* GL_QUERY_BY_REGION_NO_WAIT_NV */ + { 34712, 0x00008E15 }, /* GL_QUERY_BY_REGION_WAIT */ + { 34736, 0x00008E15 }, /* GL_QUERY_BY_REGION_WAIT_NV */ + { 34763, 0x00008864 }, /* GL_QUERY_COUNTER_BITS */ + { 34785, 0x00008864 }, /* GL_QUERY_COUNTER_BITS_ARB */ + { 34811, 0x00008E14 }, /* GL_QUERY_NO_WAIT */ + { 34828, 0x00008E14 }, /* GL_QUERY_NO_WAIT_NV */ + { 34848, 0x00008866 }, /* GL_QUERY_RESULT */ + { 34864, 0x00008866 }, /* GL_QUERY_RESULT_ARB */ + { 34884, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE */ + { 34910, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE_ARB */ + { 34940, 0x00008E13 }, /* GL_QUERY_WAIT */ + { 34954, 0x00008E13 }, /* GL_QUERY_WAIT_NV */ + { 34971, 0x00002002 }, /* GL_R */ + { 34976, 0x00008C3A }, /* GL_R11F_G11F_B10F */ + { 34994, 0x00008F98 }, /* GL_R16_SNORM */ + { 35007, 0x00002A10 }, /* GL_R3_G3_B2 */ + { 35019, 0x00008F94 }, /* GL_R8_SNORM */ + { 35031, 0x00008C89 }, /* GL_RASTERIZER_DISCARD */ + { 35053, 0x00008C89 }, /* GL_RASTERIZER_DISCARD_EXT */ + { 35079, 0x00019262 }, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ + { 35112, 0x00000C02 }, /* GL_READ_BUFFER */ + { 35127, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER */ + { 35147, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING */ + { 35175, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING_EXT */ + { 35207, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER_EXT */ + { 35231, 0x000088B8 }, /* GL_READ_ONLY */ + { 35244, 0x000088B8 }, /* GL_READ_ONLY_ARB */ + { 35261, 0x000088BA }, /* GL_READ_WRITE */ + { 35275, 0x000088BA }, /* GL_READ_WRITE_ARB */ + { 35293, 0x00001903 }, /* GL_RED */ + { 35300, 0x00008016 }, /* GL_REDUCE */ + { 35310, 0x00008016 }, /* GL_REDUCE_EXT */ + { 35324, 0x00000D15 }, /* GL_RED_BIAS */ + { 35336, 0x00000D52 }, /* GL_RED_BITS */ + { 35348, 0x00008D94 }, /* GL_RED_INTEGER */ + { 35363, 0x00008D94 }, /* GL_RED_INTEGER_EXT */ + { 35382, 0x00000D14 }, /* GL_RED_SCALE */ + { 35395, 0x00008F90 }, /* GL_RED_SNORM */ + { 35408, 0x00008512 }, /* GL_REFLECTION_MAP */ + { 35426, 0x00008512 }, /* GL_REFLECTION_MAP_ARB */ + { 35448, 0x00008512 }, /* GL_REFLECTION_MAP_NV */ + { 35469, 0x00008512 }, /* GL_REFLECTION_MAP_OES */ + { 35491, 0x00008A19 }, /* GL_RELEASED_APPLE */ + { 35509, 0x00001C00 }, /* GL_RENDER */ + { 35519, 0x00008D41 }, /* GL_RENDERBUFFER */ + { 35535, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE */ + { 35562, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE_OES */ + { 35593, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING */ + { 35617, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_EXT */ + { 35645, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_OES */ + { 35673, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE */ + { 35699, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE_OES */ + { 35729, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE */ + { 35756, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE_OES */ + { 35787, 0x00008D41 }, /* GL_RENDERBUFFER_EXT */ + { 35807, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE */ + { 35834, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE_OES */ + { 35865, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT */ + { 35888, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_EXT */ + { 35915, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_OES */ + { 35942, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ + { 35974, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_EXT */ + { 36010, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_OES */ + { 36046, 0x00008D41 }, /* GL_RENDERBUFFER_OES */ + { 36066, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE */ + { 36091, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE_OES */ + { 36120, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES */ + { 36144, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES_EXT */ + { 36172, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE */ + { 36201, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE_OES */ + { 36234, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH */ + { 36256, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_EXT */ + { 36282, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_OES */ + { 36308, 0x00001F01 }, /* GL_RENDERER */ + { 36320, 0x00000C40 }, /* GL_RENDER_MODE */ + { 36335, 0x00002901 }, /* GL_REPEAT */ + { 36345, 0x00001E01 }, /* GL_REPLACE */ + { 36356, 0x00008062 }, /* GL_REPLACE_EXT */ + { 36371, 0x00008153 }, /* GL_REPLICATE_BORDER_HP */ + { 36394, 0x0000803A }, /* GL_RESCALE_NORMAL */ + { 36412, 0x0000803A }, /* GL_RESCALE_NORMAL_EXT */ + { 36434, 0x00008256 }, /* GL_RESET_NOTIFICATION_STRATEGY_ARB */ + { 36469, 0x00008A1B }, /* GL_RETAINED_APPLE */ + { 36487, 0x00000102 }, /* GL_RETURN */ + { 36497, 0x00008F99 }, /* GL_RG16_SNORM */ + { 36511, 0x00008F95 }, /* GL_RG8_SNORM */ + { 36524, 0x00001907 }, /* GL_RGB */ + { 36531, 0x00008052 }, /* GL_RGB10 */ + { 36540, 0x00008059 }, /* GL_RGB10_A2 */ + { 36552, 0x00008059 }, /* GL_RGB10_A2_EXT */ + { 36568, 0x00008052 }, /* GL_RGB10_EXT */ + { 36581, 0x00008053 }, /* GL_RGB12 */ + { 36590, 0x00008053 }, /* GL_RGB12_EXT */ + { 36603, 0x00008054 }, /* GL_RGB16 */ + { 36612, 0x0000881B }, /* GL_RGB16F */ + { 36622, 0x00008D89 }, /* GL_RGB16I */ + { 36632, 0x00008D89 }, /* GL_RGB16I_EXT */ + { 36646, 0x00008D77 }, /* GL_RGB16UI */ + { 36657, 0x00008D77 }, /* GL_RGB16UI_EXT */ + { 36672, 0x00008054 }, /* GL_RGB16_EXT */ + { 36685, 0x00008F9A }, /* GL_RGB16_SNORM */ + { 36700, 0x0000804E }, /* GL_RGB2_EXT */ + { 36712, 0x00008815 }, /* GL_RGB32F */ + { 36722, 0x00008D83 }, /* GL_RGB32I */ + { 36732, 0x00008D83 }, /* GL_RGB32I_EXT */ + { 36746, 0x00008D71 }, /* GL_RGB32UI */ + { 36757, 0x00008D71 }, /* GL_RGB32UI_EXT */ + { 36772, 0x0000804F }, /* GL_RGB4 */ + { 36780, 0x0000804F }, /* GL_RGB4_EXT */ + { 36792, 0x000083A1 }, /* GL_RGB4_S3TC */ + { 36805, 0x00008050 }, /* GL_RGB5 */ + { 36813, 0x00008D62 }, /* GL_RGB565 */ + { 36823, 0x00008D62 }, /* GL_RGB565_OES */ + { 36837, 0x00008057 }, /* GL_RGB5_A1 */ + { 36848, 0x00008057 }, /* GL_RGB5_A1_EXT */ + { 36863, 0x00008057 }, /* GL_RGB5_A1_OES */ + { 36878, 0x00008050 }, /* GL_RGB5_EXT */ + { 36890, 0x00008051 }, /* GL_RGB8 */ + { 36898, 0x00008D8F }, /* GL_RGB8I */ + { 36907, 0x00008D8F }, /* GL_RGB8I_EXT */ + { 36920, 0x00008D7D }, /* GL_RGB8UI */ + { 36930, 0x00008D7D }, /* GL_RGB8UI_EXT */ + { 36944, 0x00008051 }, /* GL_RGB8_EXT */ + { 36956, 0x00008051 }, /* GL_RGB8_OES */ + { 36968, 0x00008F96 }, /* GL_RGB8_SNORM */ + { 36982, 0x00008C3D }, /* GL_RGB9_E5 */ + { 36993, 0x00001908 }, /* GL_RGBA */ + { 37001, 0x0000805A }, /* GL_RGBA12 */ + { 37011, 0x0000805A }, /* GL_RGBA12_EXT */ + { 37025, 0x0000805B }, /* GL_RGBA16 */ + { 37035, 0x0000881A }, /* GL_RGBA16F */ + { 37046, 0x00008D88 }, /* GL_RGBA16I */ + { 37057, 0x00008D88 }, /* GL_RGBA16I_EXT */ + { 37072, 0x00008D76 }, /* GL_RGBA16UI */ + { 37084, 0x00008D76 }, /* GL_RGBA16UI_EXT */ + { 37100, 0x0000805B }, /* GL_RGBA16_EXT */ + { 37114, 0x00008F9B }, /* GL_RGBA16_SNORM */ + { 37130, 0x00008055 }, /* GL_RGBA2 */ + { 37139, 0x00008055 }, /* GL_RGBA2_EXT */ + { 37152, 0x00008814 }, /* GL_RGBA32F */ + { 37163, 0x00008D82 }, /* GL_RGBA32I */ + { 37174, 0x00008D82 }, /* GL_RGBA32I_EXT */ + { 37189, 0x00008D70 }, /* GL_RGBA32UI */ + { 37201, 0x00008D70 }, /* GL_RGBA32UI_EXT */ + { 37217, 0x00008056 }, /* GL_RGBA4 */ + { 37226, 0x000083A5 }, /* GL_RGBA4_DXT5_S3TC */ + { 37245, 0x00008056 }, /* GL_RGBA4_EXT */ + { 37258, 0x00008056 }, /* GL_RGBA4_OES */ + { 37271, 0x000083A3 }, /* GL_RGBA4_S3TC */ + { 37285, 0x00008058 }, /* GL_RGBA8 */ + { 37294, 0x00008D8E }, /* GL_RGBA8I */ + { 37304, 0x00008D8E }, /* GL_RGBA8I_EXT */ + { 37318, 0x00008D7C }, /* GL_RGBA8UI */ + { 37329, 0x00008D7C }, /* GL_RGBA8UI_EXT */ + { 37344, 0x00008058 }, /* GL_RGBA8_EXT */ + { 37357, 0x00008058 }, /* GL_RGBA8_OES */ + { 37370, 0x00008F97 }, /* GL_RGBA8_SNORM */ + { 37385, 0x000083A4 }, /* GL_RGBA_DXT5_S3TC */ + { 37403, 0x00008820 }, /* GL_RGBA_FLOAT_MODE_ARB */ + { 37426, 0x00008D99 }, /* GL_RGBA_INTEGER */ + { 37442, 0x00008D99 }, /* GL_RGBA_INTEGER_EXT */ + { 37462, 0x00008D9E }, /* GL_RGBA_INTEGER_MODE_EXT */ + { 37487, 0x00000C31 }, /* GL_RGBA_MODE */ + { 37500, 0x000083A2 }, /* GL_RGBA_S3TC */ + { 37513, 0x00008F93 }, /* GL_RGBA_SNORM */ + { 37527, 0x00008D98 }, /* GL_RGB_INTEGER */ + { 37542, 0x00008D98 }, /* GL_RGB_INTEGER_EXT */ + { 37561, 0x000083A0 }, /* GL_RGB_S3TC */ + { 37573, 0x00008573 }, /* GL_RGB_SCALE */ + { 37586, 0x00008573 }, /* GL_RGB_SCALE_ARB */ + { 37603, 0x00008573 }, /* GL_RGB_SCALE_EXT */ + { 37620, 0x00008F92 }, /* GL_RGB_SNORM */ + { 37633, 0x00008F91 }, /* GL_RG_SNORM */ + { 37645, 0x00000407 }, /* GL_RIGHT */ + { 37654, 0x00002000 }, /* GL_S */ + { 37659, 0x00008B5D }, /* GL_SAMPLER_1D */ + { 37673, 0x00008DC0 }, /* GL_SAMPLER_1D_ARRAY */ + { 37693, 0x00008DC0 }, /* GL_SAMPLER_1D_ARRAY_EXT */ + { 37717, 0x00008DC3 }, /* GL_SAMPLER_1D_ARRAY_SHADOW */ + { 37744, 0x00008DC3 }, /* GL_SAMPLER_1D_ARRAY_SHADOW_EXT */ + { 37775, 0x00008B61 }, /* GL_SAMPLER_1D_SHADOW */ + { 37796, 0x00008B5E }, /* GL_SAMPLER_2D */ + { 37810, 0x00008DC1 }, /* GL_SAMPLER_2D_ARRAY */ + { 37830, 0x00008DC1 }, /* GL_SAMPLER_2D_ARRAY_EXT */ + { 37854, 0x00008DC4 }, /* GL_SAMPLER_2D_ARRAY_SHADOW */ + { 37881, 0x00008DC4 }, /* GL_SAMPLER_2D_ARRAY_SHADOW_EXT */ + { 37912, 0x00008B63 }, /* GL_SAMPLER_2D_RECT */ + { 37931, 0x00008B64 }, /* GL_SAMPLER_2D_RECT_SHADOW */ + { 37957, 0x00008B62 }, /* GL_SAMPLER_2D_SHADOW */ + { 37978, 0x00008B5F }, /* GL_SAMPLER_3D */ + { 37992, 0x00008B5F }, /* GL_SAMPLER_3D_OES */ + { 38010, 0x00008919 }, /* GL_SAMPLER_BINDING */ + { 38029, 0x00008DC2 }, /* GL_SAMPLER_BUFFER */ + { 38047, 0x00008DC2 }, /* GL_SAMPLER_BUFFER_EXT */ + { 38069, 0x00008B60 }, /* GL_SAMPLER_CUBE */ + { 38085, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW */ + { 38108, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW_EXT */ + { 38135, 0x000080A9 }, /* GL_SAMPLES */ + { 38146, 0x000086B4 }, /* GL_SAMPLES_3DFX */ + { 38162, 0x000080A9 }, /* GL_SAMPLES_ARB */ + { 38177, 0x00008914 }, /* GL_SAMPLES_PASSED */ + { 38195, 0x00008914 }, /* GL_SAMPLES_PASSED_ARB */ + { 38217, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ + { 38245, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE_ARB */ + { 38277, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE */ + { 38300, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE_ARB */ + { 38327, 0x000080A8 }, /* GL_SAMPLE_BUFFERS */ + { 38345, 0x000086B3 }, /* GL_SAMPLE_BUFFERS_3DFX */ + { 38368, 0x000080A8 }, /* GL_SAMPLE_BUFFERS_ARB */ + { 38390, 0x000080A0 }, /* GL_SAMPLE_COVERAGE */ + { 38409, 0x000080A0 }, /* GL_SAMPLE_COVERAGE_ARB */ + { 38432, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT */ + { 38458, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT_ARB */ + { 38488, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE */ + { 38513, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE_ARB */ + { 38542, 0x00080000 }, /* GL_SCISSOR_BIT */ + { 38557, 0x00000C10 }, /* GL_SCISSOR_BOX */ + { 38572, 0x00000C11 }, /* GL_SCISSOR_TEST */ + { 38588, 0x0000845E }, /* GL_SECONDARY_COLOR_ARRAY */ + { 38613, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ + { 38653, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB */ + { 38697, 0x0000845D }, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ + { 38730, 0x0000845A }, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ + { 38760, 0x0000845C }, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ + { 38792, 0x0000845B }, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ + { 38822, 0x00001C02 }, /* GL_SELECT */ + { 38832, 0x00000DF3 }, /* GL_SELECTION_BUFFER_POINTER */ + { 38860, 0x00000DF4 }, /* GL_SELECTION_BUFFER_SIZE */ + { 38885, 0x00008012 }, /* GL_SEPARABLE_2D */ + { 38901, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS */ + { 38921, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS_EXT */ + { 38945, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR */ + { 38972, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR_EXT */ + { 39003, 0x0000150F }, /* GL_SET */ + { 39010, 0x00008DF8 }, /* GL_SHADER_BINARY_FORMATS */ + { 39035, 0x00008DFA }, /* GL_SHADER_COMPILER */ + { 39054, 0x00008B48 }, /* GL_SHADER_OBJECT_ARB */ + { 39075, 0x00008B88 }, /* GL_SHADER_SOURCE_LENGTH */ + { 39099, 0x00008B4F }, /* GL_SHADER_TYPE */ + { 39114, 0x00000B54 }, /* GL_SHADE_MODEL */ + { 39129, 0x00008B8C }, /* GL_SHADING_LANGUAGE_VERSION */ + { 39157, 0x000080BF }, /* GL_SHADOW_AMBIENT_SGIX */ + { 39180, 0x000081FB }, /* GL_SHARED_TEXTURE_PALETTE_EXT */ + { 39210, 0x00001601 }, /* GL_SHININESS */ + { 39223, 0x00001402 }, /* GL_SHORT */ + { 39232, 0x00009119 }, /* GL_SIGNALED */ + { 39244, 0x00008F9C }, /* GL_SIGNED_NORMALIZED */ + { 39265, 0x000081F9 }, /* GL_SINGLE_COLOR */ + { 39281, 0x000081F9 }, /* GL_SINGLE_COLOR_EXT */ + { 39301, 0x000085CC }, /* GL_SLICE_ACCUM_SUN */ + { 39320, 0x00008C46 }, /* GL_SLUMINANCE */ + { 39334, 0x00008C47 }, /* GL_SLUMINANCE8 */ + { 39349, 0x00008C45 }, /* GL_SLUMINANCE8_ALPHA8 */ + { 39371, 0x00008C44 }, /* GL_SLUMINANCE_ALPHA */ + { 39391, 0x00001D01 }, /* GL_SMOOTH */ + { 39401, 0x00000B23 }, /* GL_SMOOTH_LINE_WIDTH_GRANULARITY */ + { 39434, 0x00000B22 }, /* GL_SMOOTH_LINE_WIDTH_RANGE */ + { 39461, 0x00000B13 }, /* GL_SMOOTH_POINT_SIZE_GRANULARITY */ + { 39494, 0x00000B12 }, /* GL_SMOOTH_POINT_SIZE_RANGE */ + { 39521, 0x00008588 }, /* GL_SOURCE0_ALPHA */ + { 39538, 0x00008588 }, /* GL_SOURCE0_ALPHA_ARB */ + { 39559, 0x00008588 }, /* GL_SOURCE0_ALPHA_EXT */ + { 39580, 0x00008580 }, /* GL_SOURCE0_RGB */ + { 39595, 0x00008580 }, /* GL_SOURCE0_RGB_ARB */ + { 39614, 0x00008580 }, /* GL_SOURCE0_RGB_EXT */ + { 39633, 0x00008589 }, /* GL_SOURCE1_ALPHA */ + { 39650, 0x00008589 }, /* GL_SOURCE1_ALPHA_ARB */ + { 39671, 0x00008589 }, /* GL_SOURCE1_ALPHA_EXT */ + { 39692, 0x00008581 }, /* GL_SOURCE1_RGB */ + { 39707, 0x00008581 }, /* GL_SOURCE1_RGB_ARB */ + { 39726, 0x00008581 }, /* GL_SOURCE1_RGB_EXT */ + { 39745, 0x0000858A }, /* GL_SOURCE2_ALPHA */ + { 39762, 0x0000858A }, /* GL_SOURCE2_ALPHA_ARB */ + { 39783, 0x0000858A }, /* GL_SOURCE2_ALPHA_EXT */ + { 39804, 0x00008582 }, /* GL_SOURCE2_RGB */ + { 39819, 0x00008582 }, /* GL_SOURCE2_RGB_ARB */ + { 39838, 0x00008582 }, /* GL_SOURCE2_RGB_EXT */ + { 39857, 0x0000858B }, /* GL_SOURCE3_ALPHA_NV */ + { 39877, 0x00008583 }, /* GL_SOURCE3_RGB_NV */ + { 39895, 0x00001202 }, /* GL_SPECULAR */ + { 39907, 0x00002402 }, /* GL_SPHERE_MAP */ + { 39921, 0x00001206 }, /* GL_SPOT_CUTOFF */ + { 39936, 0x00001204 }, /* GL_SPOT_DIRECTION */ + { 39954, 0x00001205 }, /* GL_SPOT_EXPONENT */ + { 39971, 0x00008588 }, /* GL_SRC0_ALPHA */ + { 39985, 0x00008580 }, /* GL_SRC0_RGB */ + { 39997, 0x00008589 }, /* GL_SRC1_ALPHA */ + { 40011, 0x00008581 }, /* GL_SRC1_RGB */ + { 40023, 0x0000858A }, /* GL_SRC2_ALPHA */ + { 40037, 0x00008582 }, /* GL_SRC2_RGB */ + { 40049, 0x00000302 }, /* GL_SRC_ALPHA */ + { 40062, 0x00000308 }, /* GL_SRC_ALPHA_SATURATE */ + { 40084, 0x00000300 }, /* GL_SRC_COLOR */ + { 40097, 0x00008C40 }, /* GL_SRGB */ + { 40105, 0x00008C41 }, /* GL_SRGB8 */ + { 40114, 0x00008C43 }, /* GL_SRGB8_ALPHA8 */ + { 40130, 0x00008C42 }, /* GL_SRGB_ALPHA */ + { 40144, 0x00000503 }, /* GL_STACK_OVERFLOW */ + { 40162, 0x00000504 }, /* GL_STACK_UNDERFLOW */ + { 40181, 0x000088E6 }, /* GL_STATIC_COPY */ + { 40196, 0x000088E6 }, /* GL_STATIC_COPY_ARB */ + { 40215, 0x000088E4 }, /* GL_STATIC_DRAW */ + { 40230, 0x000088E4 }, /* GL_STATIC_DRAW_ARB */ + { 40249, 0x000088E5 }, /* GL_STATIC_READ */ + { 40264, 0x000088E5 }, /* GL_STATIC_READ_ARB */ + { 40283, 0x00001802 }, /* GL_STENCIL */ + { 40294, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT */ + { 40316, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_EXT */ + { 40342, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_OES */ + { 40368, 0x00008801 }, /* GL_STENCIL_BACK_FAIL */ + { 40389, 0x00008801 }, /* GL_STENCIL_BACK_FAIL_ATI */ + { 40414, 0x00008800 }, /* GL_STENCIL_BACK_FUNC */ + { 40435, 0x00008800 }, /* GL_STENCIL_BACK_FUNC_ATI */ + { 40460, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ + { 40492, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI */ + { 40528, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ + { 40560, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI */ + { 40596, 0x00008CA3 }, /* GL_STENCIL_BACK_REF */ + { 40616, 0x00008CA4 }, /* GL_STENCIL_BACK_VALUE_MASK */ + { 40643, 0x00008CA5 }, /* GL_STENCIL_BACK_WRITEMASK */ + { 40669, 0x00000D57 }, /* GL_STENCIL_BITS */ + { 40685, 0x00008224 }, /* GL_STENCIL_BUFFER */ + { 40703, 0x00000400 }, /* GL_STENCIL_BUFFER_BIT */ + { 40725, 0x00000B91 }, /* GL_STENCIL_CLEAR_VALUE */ + { 40748, 0x00000B94 }, /* GL_STENCIL_FAIL */ + { 40764, 0x00000B92 }, /* GL_STENCIL_FUNC */ + { 40780, 0x00001901 }, /* GL_STENCIL_INDEX */ + { 40797, 0x00008D46 }, /* GL_STENCIL_INDEX1 */ + { 40815, 0x00008D49 }, /* GL_STENCIL_INDEX16 */ + { 40834, 0x00008D49 }, /* GL_STENCIL_INDEX16_EXT */ + { 40857, 0x00008D46 }, /* GL_STENCIL_INDEX1_EXT */ + { 40879, 0x00008D46 }, /* GL_STENCIL_INDEX1_OES */ + { 40901, 0x00008D47 }, /* GL_STENCIL_INDEX4 */ + { 40919, 0x00008D47 }, /* GL_STENCIL_INDEX4_EXT */ + { 40941, 0x00008D47 }, /* GL_STENCIL_INDEX4_OES */ + { 40963, 0x00008D48 }, /* GL_STENCIL_INDEX8 */ + { 40981, 0x00008D48 }, /* GL_STENCIL_INDEX8_EXT */ + { 41003, 0x00008D48 }, /* GL_STENCIL_INDEX8_OES */ + { 41025, 0x00008D45 }, /* GL_STENCIL_INDEX_EXT */ + { 41046, 0x00000B95 }, /* GL_STENCIL_PASS_DEPTH_FAIL */ + { 41073, 0x00000B96 }, /* GL_STENCIL_PASS_DEPTH_PASS */ + { 41100, 0x00000B97 }, /* GL_STENCIL_REF */ + { 41115, 0x00000B90 }, /* GL_STENCIL_TEST */ + { 41131, 0x00008910 }, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ + { 41160, 0x00000B93 }, /* GL_STENCIL_VALUE_MASK */ + { 41182, 0x00000B98 }, /* GL_STENCIL_WRITEMASK */ + { 41203, 0x00000C33 }, /* GL_STEREO */ + { 41213, 0x000085BE }, /* GL_STORAGE_CACHED_APPLE */ + { 41237, 0x000085BD }, /* GL_STORAGE_PRIVATE_APPLE */ + { 41262, 0x000085BF }, /* GL_STORAGE_SHARED_APPLE */ + { 41286, 0x000088E2 }, /* GL_STREAM_COPY */ + { 41301, 0x000088E2 }, /* GL_STREAM_COPY_ARB */ + { 41320, 0x000088E0 }, /* GL_STREAM_DRAW */ + { 41335, 0x000088E0 }, /* GL_STREAM_DRAW_ARB */ + { 41354, 0x000088E1 }, /* GL_STREAM_READ */ + { 41369, 0x000088E1 }, /* GL_STREAM_READ_ARB */ + { 41388, 0x00000D50 }, /* GL_SUBPIXEL_BITS */ + { 41405, 0x000084E7 }, /* GL_SUBTRACT */ + { 41417, 0x000084E7 }, /* GL_SUBTRACT_ARB */ + { 41433, 0x00009113 }, /* GL_SYNC_CONDITION */ + { 41451, 0x00009116 }, /* GL_SYNC_FENCE */ + { 41465, 0x00009115 }, /* GL_SYNC_FLAGS */ + { 41479, 0x00000001 }, /* GL_SYNC_FLUSH_COMMANDS_BIT */ + { 41506, 0x00009117 }, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ + { 41536, 0x00009114 }, /* GL_SYNC_STATUS */ + { 41551, 0x00002001 }, /* GL_T */ + { 41556, 0x00002A2A }, /* GL_T2F_C3F_V3F */ + { 41571, 0x00002A2C }, /* GL_T2F_C4F_N3F_V3F */ + { 41590, 0x00002A29 }, /* GL_T2F_C4UB_V3F */ + { 41606, 0x00002A2B }, /* GL_T2F_N3F_V3F */ + { 41621, 0x00002A27 }, /* GL_T2F_V3F */ + { 41632, 0x00002A2D }, /* GL_T4F_C4F_N3F_V4F */ + { 41651, 0x00002A28 }, /* GL_T4F_V4F */ + { 41662, 0x00008031 }, /* GL_TABLE_TOO_LARGE_EXT */ + { 41685, 0x00001702 }, /* GL_TEXTURE */ + { 41696, 0x000084C0 }, /* GL_TEXTURE0 */ + { 41708, 0x000084C0 }, /* GL_TEXTURE0_ARB */ + { 41724, 0x000084C1 }, /* GL_TEXTURE1 */ + { 41736, 0x000084CA }, /* GL_TEXTURE10 */ + { 41749, 0x000084CA }, /* GL_TEXTURE10_ARB */ + { 41766, 0x000084CB }, /* GL_TEXTURE11 */ + { 41779, 0x000084CB }, /* GL_TEXTURE11_ARB */ + { 41796, 0x000084CC }, /* GL_TEXTURE12 */ + { 41809, 0x000084CC }, /* GL_TEXTURE12_ARB */ + { 41826, 0x000084CD }, /* GL_TEXTURE13 */ + { 41839, 0x000084CD }, /* GL_TEXTURE13_ARB */ + { 41856, 0x000084CE }, /* GL_TEXTURE14 */ + { 41869, 0x000084CE }, /* GL_TEXTURE14_ARB */ + { 41886, 0x000084CF }, /* GL_TEXTURE15 */ + { 41899, 0x000084CF }, /* GL_TEXTURE15_ARB */ + { 41916, 0x000084D0 }, /* GL_TEXTURE16 */ + { 41929, 0x000084D0 }, /* GL_TEXTURE16_ARB */ + { 41946, 0x000084D1 }, /* GL_TEXTURE17 */ + { 41959, 0x000084D1 }, /* GL_TEXTURE17_ARB */ + { 41976, 0x000084D2 }, /* GL_TEXTURE18 */ + { 41989, 0x000084D2 }, /* GL_TEXTURE18_ARB */ + { 42006, 0x000084D3 }, /* GL_TEXTURE19 */ + { 42019, 0x000084D3 }, /* GL_TEXTURE19_ARB */ + { 42036, 0x000084C1 }, /* GL_TEXTURE1_ARB */ + { 42052, 0x000084C2 }, /* GL_TEXTURE2 */ + { 42064, 0x000084D4 }, /* GL_TEXTURE20 */ + { 42077, 0x000084D4 }, /* GL_TEXTURE20_ARB */ + { 42094, 0x000084D5 }, /* GL_TEXTURE21 */ + { 42107, 0x000084D5 }, /* GL_TEXTURE21_ARB */ + { 42124, 0x000084D6 }, /* GL_TEXTURE22 */ + { 42137, 0x000084D6 }, /* GL_TEXTURE22_ARB */ + { 42154, 0x000084D7 }, /* GL_TEXTURE23 */ + { 42167, 0x000084D7 }, /* GL_TEXTURE23_ARB */ + { 42184, 0x000084D8 }, /* GL_TEXTURE24 */ + { 42197, 0x000084D8 }, /* GL_TEXTURE24_ARB */ + { 42214, 0x000084D9 }, /* GL_TEXTURE25 */ + { 42227, 0x000084D9 }, /* GL_TEXTURE25_ARB */ + { 42244, 0x000084DA }, /* GL_TEXTURE26 */ + { 42257, 0x000084DA }, /* GL_TEXTURE26_ARB */ + { 42274, 0x000084DB }, /* GL_TEXTURE27 */ + { 42287, 0x000084DB }, /* GL_TEXTURE27_ARB */ + { 42304, 0x000084DC }, /* GL_TEXTURE28 */ + { 42317, 0x000084DC }, /* GL_TEXTURE28_ARB */ + { 42334, 0x000084DD }, /* GL_TEXTURE29 */ + { 42347, 0x000084DD }, /* GL_TEXTURE29_ARB */ + { 42364, 0x000084C2 }, /* GL_TEXTURE2_ARB */ + { 42380, 0x000084C3 }, /* GL_TEXTURE3 */ + { 42392, 0x000084DE }, /* GL_TEXTURE30 */ + { 42405, 0x000084DE }, /* GL_TEXTURE30_ARB */ + { 42422, 0x000084DF }, /* GL_TEXTURE31 */ + { 42435, 0x000084DF }, /* GL_TEXTURE31_ARB */ + { 42452, 0x000084C3 }, /* GL_TEXTURE3_ARB */ + { 42468, 0x000084C4 }, /* GL_TEXTURE4 */ + { 42480, 0x000084C4 }, /* GL_TEXTURE4_ARB */ + { 42496, 0x000084C5 }, /* GL_TEXTURE5 */ + { 42508, 0x000084C5 }, /* GL_TEXTURE5_ARB */ + { 42524, 0x000084C6 }, /* GL_TEXTURE6 */ + { 42536, 0x000084C6 }, /* GL_TEXTURE6_ARB */ + { 42552, 0x000084C7 }, /* GL_TEXTURE7 */ + { 42564, 0x000084C7 }, /* GL_TEXTURE7_ARB */ + { 42580, 0x000084C8 }, /* GL_TEXTURE8 */ + { 42592, 0x000084C8 }, /* GL_TEXTURE8_ARB */ + { 42608, 0x000084C9 }, /* GL_TEXTURE9 */ + { 42620, 0x000084C9 }, /* GL_TEXTURE9_ARB */ + { 42636, 0x00000DE0 }, /* GL_TEXTURE_1D */ + { 42650, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY */ + { 42670, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY_EXT */ + { 42694, 0x00000DE1 }, /* GL_TEXTURE_2D */ + { 42708, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY */ + { 42728, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY_EXT */ + { 42752, 0x0000806F }, /* GL_TEXTURE_3D */ + { 42766, 0x0000806F }, /* GL_TEXTURE_3D_OES */ + { 42784, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE */ + { 42806, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE_EXT */ + { 42832, 0x0000813C }, /* GL_TEXTURE_BASE_LEVEL */ + { 42854, 0x00008068 }, /* GL_TEXTURE_BINDING_1D */ + { 42876, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY */ + { 42904, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */ + { 42936, 0x00008069 }, /* GL_TEXTURE_BINDING_2D */ + { 42958, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY */ + { 42986, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */ + { 43018, 0x0000806A }, /* GL_TEXTURE_BINDING_3D */ + { 43040, 0x0000806A }, /* GL_TEXTURE_BINDING_3D_OES */ + { 43066, 0x00008C2C }, /* GL_TEXTURE_BINDING_BUFFER */ + { 43092, 0x00008C2C }, /* GL_TEXTURE_BINDING_BUFFER_ARB */ + { 43122, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP */ + { 43150, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_ARB */ + { 43182, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_OES */ + { 43214, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE */ + { 43243, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */ + { 43276, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_NV */ + { 43308, 0x00040000 }, /* GL_TEXTURE_BIT */ + { 43323, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE */ + { 43344, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE_EXT */ + { 43369, 0x00001005 }, /* GL_TEXTURE_BORDER */ + { 43387, 0x00001004 }, /* GL_TEXTURE_BORDER_COLOR */ + { 43411, 0x00008C2A }, /* GL_TEXTURE_BUFFER */ + { 43429, 0x00008C2A }, /* GL_TEXTURE_BUFFER_ARB */ + { 43451, 0x00008C2D }, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ + { 43488, 0x00008C2D }, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB */ + { 43529, 0x00008C2E }, /* GL_TEXTURE_BUFFER_FORMAT */ + { 43554, 0x00008C2E }, /* GL_TEXTURE_BUFFER_FORMAT_ARB */ + { 43583, 0x00008171 }, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ + { 43614, 0x00008176 }, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ + { 43644, 0x00008172 }, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ + { 43674, 0x00008175 }, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ + { 43709, 0x00008173 }, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ + { 43740, 0x00008174 }, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + { 43778, 0x000080BC }, /* GL_TEXTURE_COLOR_TABLE_SGI */ + { 43805, 0x000081EF }, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ + { 43837, 0x000080BF }, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ + { 43871, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC */ + { 43895, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC_ARB */ + { 43923, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE */ + { 43947, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE_ARB */ + { 43975, 0x0000819B }, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ + { 44008, 0x0000819A }, /* GL_TEXTURE_COMPARE_SGIX */ + { 44032, 0x00001003 }, /* GL_TEXTURE_COMPONENTS */ + { 44054, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED */ + { 44076, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED_ARB */ + { 44102, 0x000086A3 }, /* GL_TEXTURE_COMPRESSED_FORMATS_ARB */ + { 44136, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ + { 44169, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB */ + { 44206, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT */ + { 44234, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT_ARB */ + { 44266, 0x00008078 }, /* GL_TEXTURE_COORD_ARRAY */ + { 44289, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ + { 44327, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB */ + { 44369, 0x00008092 }, /* GL_TEXTURE_COORD_ARRAY_POINTER */ + { 44400, 0x00008088 }, /* GL_TEXTURE_COORD_ARRAY_SIZE */ + { 44428, 0x0000808A }, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ + { 44458, 0x00008089 }, /* GL_TEXTURE_COORD_ARRAY_TYPE */ + { 44486, 0x00008B9D }, /* GL_TEXTURE_CROP_RECT_OES */ + { 44511, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP */ + { 44531, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_ARB */ + { 44555, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ + { 44586, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB */ + { 44621, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES */ + { 44656, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ + { 44687, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB */ + { 44722, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES */ + { 44757, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ + { 44788, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB */ + { 44823, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES */ + { 44858, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_OES */ + { 44882, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ + { 44913, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB */ + { 44948, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES */ + { 44983, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ + { 45014, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB */ + { 45049, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES */ + { 45084, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ + { 45115, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB */ + { 45150, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES */ + { 45185, 0x000088F4 }, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ + { 45214, 0x00008071 }, /* GL_TEXTURE_DEPTH */ + { 45231, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE */ + { 45253, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE_ARB */ + { 45279, 0x00002300 }, /* GL_TEXTURE_ENV */ + { 45294, 0x00002201 }, /* GL_TEXTURE_ENV_COLOR */ + { 45315, 0x00002200 }, /* GL_TEXTURE_ENV_MODE */ + { 45335, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL */ + { 45361, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL_EXT */ + { 45391, 0x00002500 }, /* GL_TEXTURE_GEN_MODE */ + { 45411, 0x00002500 }, /* GL_TEXTURE_GEN_MODE_OES */ + { 45435, 0x00000C63 }, /* GL_TEXTURE_GEN_Q */ + { 45452, 0x00000C62 }, /* GL_TEXTURE_GEN_R */ + { 45469, 0x00000C60 }, /* GL_TEXTURE_GEN_S */ + { 45486, 0x00008D60 }, /* GL_TEXTURE_GEN_STR_OES */ + { 45509, 0x00000C61 }, /* GL_TEXTURE_GEN_T */ + { 45526, 0x0000819D }, /* GL_TEXTURE_GEQUAL_R_SGIX */ + { 45551, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE */ + { 45573, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE_EXT */ + { 45599, 0x00001001 }, /* GL_TEXTURE_HEIGHT */ + { 45617, 0x000080ED }, /* GL_TEXTURE_INDEX_SIZE_EXT */ + { 45643, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE */ + { 45669, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE_EXT */ + { 45699, 0x00001003 }, /* GL_TEXTURE_INTERNAL_FORMAT */ + { 45726, 0x0000819C }, /* GL_TEXTURE_LEQUAL_R_SGIX */ + { 45751, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS */ + { 45771, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS_EXT */ + { 45795, 0x00008190 }, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ + { 45822, 0x0000818E }, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ + { 45849, 0x0000818F }, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ + { 45876, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE */ + { 45902, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE_EXT */ + { 45932, 0x00002800 }, /* GL_TEXTURE_MAG_FILTER */ + { 45954, 0x00000BA8 }, /* GL_TEXTURE_MATRIX */ + { 45972, 0x0000898F }, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ + { 46012, 0x000084FE }, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ + { 46042, 0x0000836B }, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ + { 46070, 0x00008369 }, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ + { 46098, 0x0000836A }, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ + { 46126, 0x0000813D }, /* GL_TEXTURE_MAX_LEVEL */ + { 46147, 0x0000813B }, /* GL_TEXTURE_MAX_LOD */ + { 46166, 0x00002801 }, /* GL_TEXTURE_MIN_FILTER */ + { 46188, 0x0000813A }, /* GL_TEXTURE_MIN_LOD */ + { 46207, 0x00008066 }, /* GL_TEXTURE_PRIORITY */ + { 46227, 0x000085B7 }, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ + { 46257, 0x000085B8 }, /* GL_TEXTURE_RANGE_POINTER_APPLE */ + { 46288, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE */ + { 46309, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_ARB */ + { 46334, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_NV */ + { 46358, 0x0000805C }, /* GL_TEXTURE_RED_SIZE */ + { 46378, 0x0000805C }, /* GL_TEXTURE_RED_SIZE_EXT */ + { 46402, 0x00008067 }, /* GL_TEXTURE_RESIDENT */ + { 46422, 0x00008C3F }, /* GL_TEXTURE_SHARED_SIZE */ + { 46445, 0x00000BA5 }, /* GL_TEXTURE_STACK_DEPTH */ + { 46468, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE */ + { 46492, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE_EXT */ + { 46520, 0x000085BC }, /* GL_TEXTURE_STORAGE_HINT_APPLE */ + { 46550, 0x00008065 }, /* GL_TEXTURE_TOO_LARGE_EXT */ + { 46575, 0x0000888F }, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ + { 46609, 0x00001000 }, /* GL_TEXTURE_WIDTH */ + { 46626, 0x00008072 }, /* GL_TEXTURE_WRAP_R */ + { 46644, 0x00008072 }, /* GL_TEXTURE_WRAP_R_OES */ + { 46666, 0x00002802 }, /* GL_TEXTURE_WRAP_S */ + { 46684, 0x00002803 }, /* GL_TEXTURE_WRAP_T */ + { 46702, 0x0000911B }, /* GL_TIMEOUT_EXPIRED */ + { 46721, 0x000088BF }, /* GL_TIME_ELAPSED_EXT */ + { 46741, 0x00008648 }, /* GL_TRACK_MATRIX_NV */ + { 46760, 0x00008649 }, /* GL_TRACK_MATRIX_TRANSFORM_NV */ + { 46789, 0x00001000 }, /* GL_TRANSFORM_BIT */ + { 46806, 0x00008E22 }, /* GL_TRANSFORM_FEEDBACK */ + { 46828, 0x00008E25 }, /* GL_TRANSFORM_FEEDBACK_BINDING */ + { 46858, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER */ + { 46887, 0x00008E24 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ + { 46923, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ + { 46960, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT */ + { 47001, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER_EXT */ + { 47034, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ + { 47068, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT */ + { 47106, 0x00008E23 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ + { 47142, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ + { 47176, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT */ + { 47214, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ + { 47249, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT */ + { 47288, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ + { 47329, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT */ + { 47374, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ + { 47405, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS_EXT */ + { 47440, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ + { 47481, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT */ + { 47526, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX */ + { 47552, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX_ARB */ + { 47582, 0x000088B7 }, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ + { 47614, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ + { 47644, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX_ARB */ + { 47678, 0x0000862C }, /* GL_TRANSPOSE_NV */ + { 47694, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX */ + { 47725, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX_ARB */ + { 47760, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX */ + { 47788, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX_ARB */ + { 47820, 0x00000004 }, /* GL_TRIANGLES */ + { 47833, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY */ + { 47856, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY_ARB */ + { 47883, 0x00000006 }, /* GL_TRIANGLE_FAN */ + { 47899, 0x00008615 }, /* GL_TRIANGLE_MESH_SUN */ + { 47920, 0x00000005 }, /* GL_TRIANGLE_STRIP */ + { 47938, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY */ + { 47966, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY_ARB */ + { 47998, 0x00000001 }, /* GL_TRUE */ + { 48006, 0x00008A1C }, /* GL_UNDEFINED_APPLE */ + { 48025, 0x00008255 }, /* GL_UNKNOWN_CONTEXT_RESET_ARB */ + { 48054, 0x00000CF5 }, /* GL_UNPACK_ALIGNMENT */ + { 48074, 0x0000806E }, /* GL_UNPACK_IMAGE_HEIGHT */ + { 48097, 0x00000CF1 }, /* GL_UNPACK_LSB_FIRST */ + { 48117, 0x00000CF2 }, /* GL_UNPACK_ROW_LENGTH */ + { 48138, 0x0000806D }, /* GL_UNPACK_SKIP_IMAGES */ + { 48160, 0x00000CF4 }, /* GL_UNPACK_SKIP_PIXELS */ + { 48182, 0x00000CF3 }, /* GL_UNPACK_SKIP_ROWS */ + { 48202, 0x00000CF0 }, /* GL_UNPACK_SWAP_BYTES */ + { 48223, 0x00009118 }, /* GL_UNSIGNALED */ + { 48237, 0x00001401 }, /* GL_UNSIGNED_BYTE */ + { 48254, 0x00008362 }, /* GL_UNSIGNED_BYTE_2_3_3_REV */ + { 48281, 0x00008032 }, /* GL_UNSIGNED_BYTE_3_3_2 */ + { 48304, 0x00001405 }, /* GL_UNSIGNED_INT */ + { 48320, 0x00008C3B }, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ + { 48352, 0x00008036 }, /* GL_UNSIGNED_INT_10_10_10_2 */ + { 48379, 0x00008DF6 }, /* GL_UNSIGNED_INT_10_10_10_2_OES */ + { 48410, 0x000084FA }, /* GL_UNSIGNED_INT_24_8 */ + { 48431, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_EXT */ + { 48456, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_NV */ + { 48480, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_OES */ + { 48505, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV */ + { 48536, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV_EXT */ + { 48571, 0x00008C3E }, /* GL_UNSIGNED_INT_5_9_9_9_REV */ + { 48599, 0x00008035 }, /* GL_UNSIGNED_INT_8_8_8_8 */ + { 48623, 0x00008367 }, /* GL_UNSIGNED_INT_8_8_8_8_REV */ + { 48651, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D */ + { 48678, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ + { 48711, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT */ + { 48748, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D_EXT */ + { 48779, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D */ + { 48806, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ + { 48839, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT */ + { 48876, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D_EXT */ + { 48907, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ + { 48939, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT */ + { 48975, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D */ + { 49002, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D_EXT */ + { 49033, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ + { 49064, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT */ + { 49099, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ + { 49128, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE_EXT */ + { 49161, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2 */ + { 49182, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2_EXT */ + { 49207, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3 */ + { 49228, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3_EXT */ + { 49253, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4 */ + { 49274, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4_EXT */ + { 49299, 0x00008C17 }, /* GL_UNSIGNED_NORMALIZED */ + { 49322, 0x00001403 }, /* GL_UNSIGNED_SHORT */ + { 49340, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ + { 49370, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT */ + { 49404, 0x00008033 }, /* GL_UNSIGNED_SHORT_4_4_4_4 */ + { 49430, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ + { 49460, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT */ + { 49494, 0x00008034 }, /* GL_UNSIGNED_SHORT_5_5_5_1 */ + { 49520, 0x00008363 }, /* GL_UNSIGNED_SHORT_5_6_5 */ + { 49544, 0x00008364 }, /* GL_UNSIGNED_SHORT_5_6_5_REV */ + { 49572, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_APPLE */ + { 49600, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_MESA */ + { 49627, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ + { 49659, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_MESA */ + { 49690, 0x00008CA2 }, /* GL_UPPER_LEFT */ + { 49704, 0x00002A20 }, /* GL_V2F */ + { 49711, 0x00002A21 }, /* GL_V3F */ + { 49718, 0x00008B83 }, /* GL_VALIDATE_STATUS */ + { 49737, 0x00001F00 }, /* GL_VENDOR */ + { 49747, 0x00001F02 }, /* GL_VERSION */ + { 49758, 0x00008074 }, /* GL_VERTEX_ARRAY */ + { 49774, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING */ + { 49798, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING_APPLE */ + { 49828, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ + { 49859, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING_ARB */ + { 49894, 0x0000808E }, /* GL_VERTEX_ARRAY_POINTER */ + { 49918, 0x0000807A }, /* GL_VERTEX_ARRAY_SIZE */ + { 49939, 0x0000807C }, /* GL_VERTEX_ARRAY_STRIDE */ + { 49962, 0x0000807B }, /* GL_VERTEX_ARRAY_TYPE */ + { 49983, 0x00008650 }, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ + { 50010, 0x0000865A }, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ + { 50038, 0x0000865B }, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ + { 50066, 0x0000865C }, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ + { 50094, 0x0000865D }, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ + { 50122, 0x0000865E }, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ + { 50150, 0x0000865F }, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ + { 50178, 0x00008651 }, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ + { 50205, 0x00008652 }, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ + { 50232, 0x00008653 }, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ + { 50259, 0x00008654 }, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ + { 50286, 0x00008655 }, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ + { 50313, 0x00008656 }, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ + { 50340, 0x00008657 }, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ + { 50367, 0x00008658 }, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ + { 50394, 0x00008659 }, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ + { 50421, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ + { 50459, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB */ + { 50501, 0x000088FE }, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ + { 50536, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ + { 50567, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB */ + { 50602, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ + { 50633, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT */ + { 50668, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ + { 50702, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB */ + { 50740, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ + { 50771, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB */ + { 50806, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ + { 50834, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB */ + { 50866, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ + { 50896, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB */ + { 50930, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ + { 50958, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB */ + { 50990, 0x000086A7 }, /* GL_VERTEX_BLEND_ARB */ + { 51010, 0x00008620 }, /* GL_VERTEX_PROGRAM_ARB */ + { 51032, 0x0000864A }, /* GL_VERTEX_PROGRAM_BINDING_NV */ + { 51061, 0x00008620 }, /* GL_VERTEX_PROGRAM_NV */ + { 51082, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE */ + { 51111, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_ARB */ + { 51144, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_NV */ + { 51176, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE */ + { 51203, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_ARB */ + { 51234, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_NV */ + { 51264, 0x00008B31 }, /* GL_VERTEX_SHADER */ + { 51281, 0x00008B31 }, /* GL_VERTEX_SHADER_ARB */ + { 51302, 0x00008621 }, /* GL_VERTEX_STATE_PROGRAM_NV */ + { 51329, 0x00000BA2 }, /* GL_VIEWPORT */ + { 51341, 0x00000800 }, /* GL_VIEWPORT_BIT */ + { 51357, 0x00008A1A }, /* GL_VOLATILE_APPLE */ + { 51375, 0x0000911D }, /* GL_WAIT_FAILED */ + { 51390, 0x000086AD }, /* GL_WEIGHT_ARRAY_ARB */ + { 51410, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ + { 51441, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB */ + { 51476, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_OES */ + { 51511, 0x000086AD }, /* GL_WEIGHT_ARRAY_OES */ + { 51531, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_ARB */ + { 51559, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_OES */ + { 51587, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_ARB */ + { 51612, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_OES */ + { 51637, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ + { 51664, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_OES */ + { 51691, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_ARB */ + { 51716, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_OES */ + { 51741, 0x000086A6 }, /* GL_WEIGHT_SUM_UNITY_ARB */ + { 51765, 0x000081D4 }, /* GL_WRAP_BORDER_SUN */ + { 51784, 0x000088B9 }, /* GL_WRITE_ONLY */ + { 51798, 0x000088B9 }, /* GL_WRITE_ONLY_ARB */ + { 51816, 0x000088B9 }, /* GL_WRITE_ONLY_OES */ + { 51834, 0x00001506 }, /* GL_XOR */ + { 51841, 0x000085B9 }, /* GL_YCBCR_422_APPLE */ + { 51860, 0x00008757 }, /* GL_YCBCR_MESA */ + { 51874, 0x00000000 }, /* GL_ZERO */ + { 51882, 0x00000D16 }, /* GL_ZOOM_X */ + { 51892, 0x00000D17 }, /* GL_ZOOM_Y */ }; -static const unsigned reduced_enums[1556] = +static const unsigned reduced_enums[1562] = { - 538, /* GL_FALSE */ - 831, /* GL_LINES */ - 835, /* GL_LINE_LOOP */ - 842, /* GL_LINE_STRIP */ - 2146, /* GL_TRIANGLES */ - 2151, /* GL_TRIANGLE_STRIP */ - 2149, /* GL_TRIANGLE_FAN */ - 1512, /* GL_QUADS */ - 1516, /* GL_QUAD_STRIP */ - 1383, /* GL_POLYGON */ - 832, /* GL_LINES_ADJACENCY */ - 843, /* GL_LINE_STRIP_ADJACENCY */ - 2147, /* GL_TRIANGLES_ADJACENCY */ - 2152, /* GL_TRIANGLE_STRIP_ADJACENCY */ - 1395, /* GL_POLYGON_STIPPLE_BIT */ - 1338, /* GL_PIXEL_MODE_BIT */ - 818, /* GL_LIGHTING_BIT */ - 572, /* GL_FOG_BIT */ + 539, /* GL_FALSE */ + 834, /* GL_LINES */ + 838, /* GL_LINE_LOOP */ + 845, /* GL_LINE_STRIP */ + 2152, /* GL_TRIANGLES */ + 2157, /* GL_TRIANGLE_STRIP */ + 2155, /* GL_TRIANGLE_FAN */ + 1517, /* GL_QUADS */ + 1521, /* GL_QUAD_STRIP */ + 1388, /* GL_POLYGON */ + 835, /* GL_LINES_ADJACENCY */ + 846, /* GL_LINE_STRIP_ADJACENCY */ + 2153, /* GL_TRIANGLES_ADJACENCY */ + 2158, /* GL_TRIANGLE_STRIP_ADJACENCY */ + 1400, /* GL_POLYGON_STIPPLE_BIT */ + 1343, /* GL_PIXEL_MODE_BIT */ + 821, /* GL_LIGHTING_BIT */ + 573, /* GL_FOG_BIT */ 8, /* GL_ACCUM */ - 854, /* GL_LOAD */ - 1601, /* GL_RETURN */ - 1205, /* GL_MULT */ + 857, /* GL_LOAD */ + 1607, /* GL_RETURN */ + 1209, /* GL_MULT */ 24, /* GL_ADD */ - 1221, /* GL_NEVER */ - 808, /* GL_LESS */ - 528, /* GL_EQUAL */ - 807, /* GL_LEQUAL */ - 695, /* GL_GREATER */ - 1238, /* GL_NOTEQUAL */ - 694, /* GL_GEQUAL */ + 1225, /* GL_NEVER */ + 811, /* GL_LESS */ + 529, /* GL_EQUAL */ + 810, /* GL_LEQUAL */ + 696, /* GL_GREATER */ + 1242, /* GL_NOTEQUAL */ + 695, /* GL_GEQUAL */ 55, /* GL_ALWAYS */ - 1810, /* GL_SRC_COLOR */ - 1271, /* GL_ONE_MINUS_SRC_COLOR */ - 1808, /* GL_SRC_ALPHA */ - 1270, /* GL_ONE_MINUS_SRC_ALPHA */ - 507, /* GL_DST_ALPHA */ - 1268, /* GL_ONE_MINUS_DST_ALPHA */ - 508, /* GL_DST_COLOR */ - 1269, /* GL_ONE_MINUS_DST_COLOR */ - 1809, /* GL_SRC_ALPHA_SATURATE */ - 671, /* GL_FRONT_LEFT */ - 672, /* GL_FRONT_RIGHT */ + 1816, /* GL_SRC_COLOR */ + 1276, /* GL_ONE_MINUS_SRC_COLOR */ + 1814, /* GL_SRC_ALPHA */ + 1275, /* GL_ONE_MINUS_SRC_ALPHA */ + 508, /* GL_DST_ALPHA */ + 1273, /* GL_ONE_MINUS_DST_ALPHA */ + 509, /* GL_DST_COLOR */ + 1274, /* GL_ONE_MINUS_DST_COLOR */ + 1815, /* GL_SRC_ALPHA_SATURATE */ + 672, /* GL_FRONT_LEFT */ + 673, /* GL_FRONT_RIGHT */ 77, /* GL_BACK_LEFT */ 78, /* GL_BACK_RIGHT */ - 668, /* GL_FRONT */ + 669, /* GL_FRONT */ 76, /* GL_BACK */ - 806, /* GL_LEFT */ - 1691, /* GL_RIGHT */ - 669, /* GL_FRONT_AND_BACK */ + 809, /* GL_LEFT */ + 1697, /* GL_RIGHT */ + 670, /* GL_FRONT_AND_BACK */ 71, /* GL_AUX0 */ 72, /* GL_AUX1 */ 73, /* GL_AUX2 */ 74, /* GL_AUX3 */ - 794, /* GL_INVALID_ENUM */ - 799, /* GL_INVALID_VALUE */ - 798, /* GL_INVALID_OPERATION */ - 1815, /* GL_STACK_OVERFLOW */ - 1816, /* GL_STACK_UNDERFLOW */ - 1296, /* GL_OUT_OF_MEMORY */ - 795, /* GL_INVALID_FRAMEBUFFER_OPERATION */ + 797, /* GL_INVALID_ENUM */ + 802, /* GL_INVALID_VALUE */ + 801, /* GL_INVALID_OPERATION */ + 1821, /* GL_STACK_OVERFLOW */ + 1822, /* GL_STACK_UNDERFLOW */ + 1301, /* GL_OUT_OF_MEMORY */ + 798, /* GL_INVALID_FRAMEBUFFER_OPERATION */ 0, /* GL_2D */ 2, /* GL_3D */ 3, /* GL_3D_COLOR */ 4, /* GL_3D_COLOR_TEXTURE */ 6, /* GL_4D_COLOR_TEXTURE */ - 1316, /* GL_PASS_THROUGH_TOKEN */ - 1382, /* GL_POINT_TOKEN */ - 845, /* GL_LINE_TOKEN */ - 1396, /* GL_POLYGON_TOKEN */ + 1321, /* GL_PASS_THROUGH_TOKEN */ + 1387, /* GL_POINT_TOKEN */ + 848, /* GL_LINE_TOKEN */ + 1401, /* GL_POLYGON_TOKEN */ 87, /* GL_BITMAP_TOKEN */ - 506, /* GL_DRAW_PIXEL_TOKEN */ - 352, /* GL_COPY_PIXEL_TOKEN */ - 836, /* GL_LINE_RESET_TOKEN */ - 531, /* GL_EXP */ - 532, /* GL_EXP2 */ - 389, /* GL_CW */ + 507, /* GL_DRAW_PIXEL_TOKEN */ + 353, /* GL_COPY_PIXEL_TOKEN */ + 839, /* GL_LINE_RESET_TOKEN */ + 532, /* GL_EXP */ + 533, /* GL_EXP2 */ + 390, /* GL_CW */ 154, /* GL_CCW */ 187, /* GL_COEFF */ - 1293, /* GL_ORDER */ - 443, /* GL_DOMAIN */ - 362, /* GL_CURRENT_COLOR */ - 365, /* GL_CURRENT_INDEX */ - 371, /* GL_CURRENT_NORMAL */ - 385, /* GL_CURRENT_TEXTURE_COORDS */ - 377, /* GL_CURRENT_RASTER_COLOR */ - 379, /* GL_CURRENT_RASTER_INDEX */ - 383, /* GL_CURRENT_RASTER_TEXTURE_COORDS */ - 380, /* GL_CURRENT_RASTER_POSITION */ - 381, /* GL_CURRENT_RASTER_POSITION_VALID */ - 378, /* GL_CURRENT_RASTER_DISTANCE */ - 1374, /* GL_POINT_SMOOTH */ - 1358, /* GL_POINT_SIZE */ - 1373, /* GL_POINT_SIZE_RANGE */ - 1364, /* GL_POINT_SIZE_GRANULARITY */ - 837, /* GL_LINE_SMOOTH */ - 846, /* GL_LINE_WIDTH */ - 848, /* GL_LINE_WIDTH_RANGE */ - 847, /* GL_LINE_WIDTH_GRANULARITY */ - 839, /* GL_LINE_STIPPLE */ - 840, /* GL_LINE_STIPPLE_PATTERN */ - 841, /* GL_LINE_STIPPLE_REPEAT */ - 853, /* GL_LIST_MODE */ - 1060, /* GL_MAX_LIST_NESTING */ - 850, /* GL_LIST_BASE */ - 852, /* GL_LIST_INDEX */ - 1385, /* GL_POLYGON_MODE */ - 1392, /* GL_POLYGON_SMOOTH */ - 1394, /* GL_POLYGON_STIPPLE */ - 517, /* GL_EDGE_FLAG */ - 355, /* GL_CULL_FACE */ - 356, /* GL_CULL_FACE_MODE */ - 670, /* GL_FRONT_FACE */ - 817, /* GL_LIGHTING */ - 822, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ - 823, /* GL_LIGHT_MODEL_TWO_SIDE */ - 819, /* GL_LIGHT_MODEL_AMBIENT */ - 1757, /* GL_SHADE_MODEL */ + 1298, /* GL_ORDER */ + 444, /* GL_DOMAIN */ + 363, /* GL_CURRENT_COLOR */ + 366, /* GL_CURRENT_INDEX */ + 372, /* GL_CURRENT_NORMAL */ + 386, /* GL_CURRENT_TEXTURE_COORDS */ + 378, /* GL_CURRENT_RASTER_COLOR */ + 380, /* GL_CURRENT_RASTER_INDEX */ + 384, /* GL_CURRENT_RASTER_TEXTURE_COORDS */ + 381, /* GL_CURRENT_RASTER_POSITION */ + 382, /* GL_CURRENT_RASTER_POSITION_VALID */ + 379, /* GL_CURRENT_RASTER_DISTANCE */ + 1379, /* GL_POINT_SMOOTH */ + 1363, /* GL_POINT_SIZE */ + 1378, /* GL_POINT_SIZE_RANGE */ + 1369, /* GL_POINT_SIZE_GRANULARITY */ + 840, /* GL_LINE_SMOOTH */ + 849, /* GL_LINE_WIDTH */ + 851, /* GL_LINE_WIDTH_RANGE */ + 850, /* GL_LINE_WIDTH_GRANULARITY */ + 842, /* GL_LINE_STIPPLE */ + 843, /* GL_LINE_STIPPLE_PATTERN */ + 844, /* GL_LINE_STIPPLE_REPEAT */ + 856, /* GL_LIST_MODE */ + 1064, /* GL_MAX_LIST_NESTING */ + 853, /* GL_LIST_BASE */ + 855, /* GL_LIST_INDEX */ + 1390, /* GL_POLYGON_MODE */ + 1397, /* GL_POLYGON_SMOOTH */ + 1399, /* GL_POLYGON_STIPPLE */ + 518, /* GL_EDGE_FLAG */ + 356, /* GL_CULL_FACE */ + 357, /* GL_CULL_FACE_MODE */ + 671, /* GL_FRONT_FACE */ + 820, /* GL_LIGHTING */ + 825, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ + 826, /* GL_LIGHT_MODEL_TWO_SIDE */ + 822, /* GL_LIGHT_MODEL_AMBIENT */ + 1763, /* GL_SHADE_MODEL */ 235, /* GL_COLOR_MATERIAL_FACE */ 236, /* GL_COLOR_MATERIAL_PARAMETER */ 234, /* GL_COLOR_MATERIAL */ - 571, /* GL_FOG */ - 593, /* GL_FOG_INDEX */ - 589, /* GL_FOG_DENSITY */ - 597, /* GL_FOG_START */ - 591, /* GL_FOG_END */ - 594, /* GL_FOG_MODE */ - 573, /* GL_FOG_COLOR */ - 428, /* GL_DEPTH_RANGE */ - 437, /* GL_DEPTH_TEST */ - 440, /* GL_DEPTH_WRITEMASK */ - 413, /* GL_DEPTH_CLEAR_VALUE */ - 427, /* GL_DEPTH_FUNC */ + 572, /* GL_FOG */ + 594, /* GL_FOG_INDEX */ + 590, /* GL_FOG_DENSITY */ + 598, /* GL_FOG_START */ + 592, /* GL_FOG_END */ + 595, /* GL_FOG_MODE */ + 574, /* GL_FOG_COLOR */ + 429, /* GL_DEPTH_RANGE */ + 438, /* GL_DEPTH_TEST */ + 441, /* GL_DEPTH_WRITEMASK */ + 414, /* GL_DEPTH_CLEAR_VALUE */ + 428, /* GL_DEPTH_FUNC */ 12, /* GL_ACCUM_CLEAR_VALUE */ - 1860, /* GL_STENCIL_TEST */ - 1841, /* GL_STENCIL_CLEAR_VALUE */ - 1843, /* GL_STENCIL_FUNC */ - 1862, /* GL_STENCIL_VALUE_MASK */ - 1842, /* GL_STENCIL_FAIL */ - 1857, /* GL_STENCIL_PASS_DEPTH_FAIL */ - 1858, /* GL_STENCIL_PASS_DEPTH_PASS */ - 1859, /* GL_STENCIL_REF */ - 1863, /* GL_STENCIL_WRITEMASK */ - 1010, /* GL_MATRIX_MODE */ - 1227, /* GL_NORMALIZE */ - 2278, /* GL_VIEWPORT */ - 1200, /* GL_MODELVIEW_STACK_DEPTH */ - 1486, /* GL_PROJECTION_STACK_DEPTH */ - 2100, /* GL_TEXTURE_STACK_DEPTH */ - 1197, /* GL_MODELVIEW_MATRIX */ - 1484, /* GL_PROJECTION_MATRIX */ - 2080, /* GL_TEXTURE_MATRIX */ + 1866, /* GL_STENCIL_TEST */ + 1847, /* GL_STENCIL_CLEAR_VALUE */ + 1849, /* GL_STENCIL_FUNC */ + 1868, /* GL_STENCIL_VALUE_MASK */ + 1848, /* GL_STENCIL_FAIL */ + 1863, /* GL_STENCIL_PASS_DEPTH_FAIL */ + 1864, /* GL_STENCIL_PASS_DEPTH_PASS */ + 1865, /* GL_STENCIL_REF */ + 1869, /* GL_STENCIL_WRITEMASK */ + 1014, /* GL_MATRIX_MODE */ + 1231, /* GL_NORMALIZE */ + 2285, /* GL_VIEWPORT */ + 1204, /* GL_MODELVIEW_STACK_DEPTH */ + 1491, /* GL_PROJECTION_STACK_DEPTH */ + 2106, /* GL_TEXTURE_STACK_DEPTH */ + 1201, /* GL_MODELVIEW_MATRIX */ + 1489, /* GL_PROJECTION_MATRIX */ + 2086, /* GL_TEXTURE_MATRIX */ 69, /* GL_ATTRIB_STACK_DEPTH */ 169, /* GL_CLIENT_ATTRIB_STACK_DEPTH */ 51, /* GL_ALPHA_TEST */ 52, /* GL_ALPHA_TEST_FUNC */ 53, /* GL_ALPHA_TEST_REF */ - 442, /* GL_DITHER */ + 443, /* GL_DITHER */ 91, /* GL_BLEND_DST */ 105, /* GL_BLEND_SRC */ 88, /* GL_BLEND */ - 856, /* GL_LOGIC_OP_MODE */ - 743, /* GL_INDEX_LOGIC_OP */ + 859, /* GL_LOGIC_OP_MODE */ + 745, /* GL_INDEX_LOGIC_OP */ 233, /* GL_COLOR_LOGIC_OP */ 75, /* GL_AUX_BUFFERS */ - 453, /* GL_DRAW_BUFFER */ - 1539, /* GL_READ_BUFFER */ - 1734, /* GL_SCISSOR_BOX */ - 1735, /* GL_SCISSOR_TEST */ - 742, /* GL_INDEX_CLEAR_VALUE */ - 747, /* GL_INDEX_WRITEMASK */ + 454, /* GL_DRAW_BUFFER */ + 1544, /* GL_READ_BUFFER */ + 1740, /* GL_SCISSOR_BOX */ + 1741, /* GL_SCISSOR_TEST */ + 744, /* GL_INDEX_CLEAR_VALUE */ + 749, /* GL_INDEX_WRITEMASK */ 230, /* GL_COLOR_CLEAR_VALUE */ 272, /* GL_COLOR_WRITEMASK */ - 744, /* GL_INDEX_MODE */ - 1680, /* GL_RGBA_MODE */ - 452, /* GL_DOUBLEBUFFER */ - 1864, /* GL_STEREO */ - 1593, /* GL_RENDER_MODE */ - 1317, /* GL_PERSPECTIVE_CORRECTION_HINT */ - 1375, /* GL_POINT_SMOOTH_HINT */ - 838, /* GL_LINE_SMOOTH_HINT */ - 1393, /* GL_POLYGON_SMOOTH_HINT */ - 592, /* GL_FOG_HINT */ - 2060, /* GL_TEXTURE_GEN_S */ - 2062, /* GL_TEXTURE_GEN_T */ - 2059, /* GL_TEXTURE_GEN_R */ - 2058, /* GL_TEXTURE_GEN_Q */ - 1330, /* GL_PIXEL_MAP_I_TO_I */ - 1336, /* GL_PIXEL_MAP_S_TO_S */ - 1332, /* GL_PIXEL_MAP_I_TO_R */ - 1328, /* GL_PIXEL_MAP_I_TO_G */ - 1326, /* GL_PIXEL_MAP_I_TO_B */ - 1324, /* GL_PIXEL_MAP_I_TO_A */ - 1334, /* GL_PIXEL_MAP_R_TO_R */ - 1322, /* GL_PIXEL_MAP_G_TO_G */ - 1320, /* GL_PIXEL_MAP_B_TO_B */ - 1318, /* GL_PIXEL_MAP_A_TO_A */ - 1331, /* GL_PIXEL_MAP_I_TO_I_SIZE */ - 1337, /* GL_PIXEL_MAP_S_TO_S_SIZE */ - 1333, /* GL_PIXEL_MAP_I_TO_R_SIZE */ - 1329, /* GL_PIXEL_MAP_I_TO_G_SIZE */ - 1327, /* GL_PIXEL_MAP_I_TO_B_SIZE */ - 1325, /* GL_PIXEL_MAP_I_TO_A_SIZE */ - 1335, /* GL_PIXEL_MAP_R_TO_R_SIZE */ - 1323, /* GL_PIXEL_MAP_G_TO_G_SIZE */ - 1321, /* GL_PIXEL_MAP_B_TO_B_SIZE */ - 1319, /* GL_PIXEL_MAP_A_TO_A_SIZE */ - 2163, /* GL_UNPACK_SWAP_BYTES */ - 2158, /* GL_UNPACK_LSB_FIRST */ - 2159, /* GL_UNPACK_ROW_LENGTH */ - 2162, /* GL_UNPACK_SKIP_ROWS */ - 2161, /* GL_UNPACK_SKIP_PIXELS */ - 2156, /* GL_UNPACK_ALIGNMENT */ - 1305, /* GL_PACK_SWAP_BYTES */ - 1300, /* GL_PACK_LSB_FIRST */ - 1301, /* GL_PACK_ROW_LENGTH */ - 1304, /* GL_PACK_SKIP_ROWS */ - 1303, /* GL_PACK_SKIP_PIXELS */ - 1297, /* GL_PACK_ALIGNMENT */ - 951, /* GL_MAP_COLOR */ - 956, /* GL_MAP_STENCIL */ - 746, /* GL_INDEX_SHIFT */ - 745, /* GL_INDEX_OFFSET */ - 1555, /* GL_RED_SCALE */ - 1551, /* GL_RED_BIAS */ - 2304, /* GL_ZOOM_X */ - 2305, /* GL_ZOOM_Y */ - 701, /* GL_GREEN_SCALE */ - 697, /* GL_GREEN_BIAS */ + 746, /* GL_INDEX_MODE */ + 1686, /* GL_RGBA_MODE */ + 453, /* GL_DOUBLEBUFFER */ + 1870, /* GL_STEREO */ + 1598, /* GL_RENDER_MODE */ + 1322, /* GL_PERSPECTIVE_CORRECTION_HINT */ + 1380, /* GL_POINT_SMOOTH_HINT */ + 841, /* GL_LINE_SMOOTH_HINT */ + 1398, /* GL_POLYGON_SMOOTH_HINT */ + 593, /* GL_FOG_HINT */ + 2066, /* GL_TEXTURE_GEN_S */ + 2068, /* GL_TEXTURE_GEN_T */ + 2065, /* GL_TEXTURE_GEN_R */ + 2064, /* GL_TEXTURE_GEN_Q */ + 1335, /* GL_PIXEL_MAP_I_TO_I */ + 1341, /* GL_PIXEL_MAP_S_TO_S */ + 1337, /* GL_PIXEL_MAP_I_TO_R */ + 1333, /* GL_PIXEL_MAP_I_TO_G */ + 1331, /* GL_PIXEL_MAP_I_TO_B */ + 1329, /* GL_PIXEL_MAP_I_TO_A */ + 1339, /* GL_PIXEL_MAP_R_TO_R */ + 1327, /* GL_PIXEL_MAP_G_TO_G */ + 1325, /* GL_PIXEL_MAP_B_TO_B */ + 1323, /* GL_PIXEL_MAP_A_TO_A */ + 1336, /* GL_PIXEL_MAP_I_TO_I_SIZE */ + 1342, /* GL_PIXEL_MAP_S_TO_S_SIZE */ + 1338, /* GL_PIXEL_MAP_I_TO_R_SIZE */ + 1334, /* GL_PIXEL_MAP_I_TO_G_SIZE */ + 1332, /* GL_PIXEL_MAP_I_TO_B_SIZE */ + 1330, /* GL_PIXEL_MAP_I_TO_A_SIZE */ + 1340, /* GL_PIXEL_MAP_R_TO_R_SIZE */ + 1328, /* GL_PIXEL_MAP_G_TO_G_SIZE */ + 1326, /* GL_PIXEL_MAP_B_TO_B_SIZE */ + 1324, /* GL_PIXEL_MAP_A_TO_A_SIZE */ + 2170, /* GL_UNPACK_SWAP_BYTES */ + 2165, /* GL_UNPACK_LSB_FIRST */ + 2166, /* GL_UNPACK_ROW_LENGTH */ + 2169, /* GL_UNPACK_SKIP_ROWS */ + 2168, /* GL_UNPACK_SKIP_PIXELS */ + 2163, /* GL_UNPACK_ALIGNMENT */ + 1310, /* GL_PACK_SWAP_BYTES */ + 1305, /* GL_PACK_LSB_FIRST */ + 1306, /* GL_PACK_ROW_LENGTH */ + 1309, /* GL_PACK_SKIP_ROWS */ + 1308, /* GL_PACK_SKIP_PIXELS */ + 1302, /* GL_PACK_ALIGNMENT */ + 955, /* GL_MAP_COLOR */ + 960, /* GL_MAP_STENCIL */ + 748, /* GL_INDEX_SHIFT */ + 747, /* GL_INDEX_OFFSET */ + 1560, /* GL_RED_SCALE */ + 1556, /* GL_RED_BIAS */ + 2311, /* GL_ZOOM_X */ + 2312, /* GL_ZOOM_Y */ + 702, /* GL_GREEN_SCALE */ + 698, /* GL_GREEN_BIAS */ 115, /* GL_BLUE_SCALE */ 111, /* GL_BLUE_BIAS */ 50, /* GL_ALPHA_SCALE */ 47, /* GL_ALPHA_BIAS */ - 429, /* GL_DEPTH_SCALE */ - 405, /* GL_DEPTH_BIAS */ - 1042, /* GL_MAX_EVAL_ORDER */ - 1059, /* GL_MAX_LIGHTS */ - 1022, /* GL_MAX_CLIP_DISTANCES */ - 1115, /* GL_MAX_TEXTURE_SIZE */ - 1066, /* GL_MAX_PIXEL_MAP_TABLE */ - 1018, /* GL_MAX_ATTRIB_STACK_DEPTH */ - 1062, /* GL_MAX_MODELVIEW_STACK_DEPTH */ - 1063, /* GL_MAX_NAME_STACK_DEPTH */ - 1094, /* GL_MAX_PROJECTION_STACK_DEPTH */ - 1116, /* GL_MAX_TEXTURE_STACK_DEPTH */ - 1142, /* GL_MAX_VIEWPORT_DIMS */ - 1019, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ - 1874, /* GL_SUBPIXEL_BITS */ - 741, /* GL_INDEX_BITS */ - 1552, /* GL_RED_BITS */ - 698, /* GL_GREEN_BITS */ + 430, /* GL_DEPTH_SCALE */ + 406, /* GL_DEPTH_BIAS */ + 1046, /* GL_MAX_EVAL_ORDER */ + 1063, /* GL_MAX_LIGHTS */ + 1026, /* GL_MAX_CLIP_DISTANCES */ + 1119, /* GL_MAX_TEXTURE_SIZE */ + 1070, /* GL_MAX_PIXEL_MAP_TABLE */ + 1022, /* GL_MAX_ATTRIB_STACK_DEPTH */ + 1066, /* GL_MAX_MODELVIEW_STACK_DEPTH */ + 1067, /* GL_MAX_NAME_STACK_DEPTH */ + 1098, /* GL_MAX_PROJECTION_STACK_DEPTH */ + 1120, /* GL_MAX_TEXTURE_STACK_DEPTH */ + 1146, /* GL_MAX_VIEWPORT_DIMS */ + 1023, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ + 1880, /* GL_SUBPIXEL_BITS */ + 743, /* GL_INDEX_BITS */ + 1557, /* GL_RED_BITS */ + 699, /* GL_GREEN_BITS */ 112, /* GL_BLUE_BITS */ 48, /* GL_ALPHA_BITS */ - 406, /* GL_DEPTH_BITS */ - 1838, /* GL_STENCIL_BITS */ + 407, /* GL_DEPTH_BITS */ + 1844, /* GL_STENCIL_BITS */ 14, /* GL_ACCUM_RED_BITS */ 13, /* GL_ACCUM_GREEN_BITS */ 10, /* GL_ACCUM_BLUE_BITS */ 9, /* GL_ACCUM_ALPHA_BITS */ - 1214, /* GL_NAME_STACK_DEPTH */ + 1218, /* GL_NAME_STACK_DEPTH */ 70, /* GL_AUTO_NORMAL */ - 897, /* GL_MAP1_COLOR_4 */ - 900, /* GL_MAP1_INDEX */ - 901, /* GL_MAP1_NORMAL */ - 902, /* GL_MAP1_TEXTURE_COORD_1 */ - 903, /* GL_MAP1_TEXTURE_COORD_2 */ - 904, /* GL_MAP1_TEXTURE_COORD_3 */ - 905, /* GL_MAP1_TEXTURE_COORD_4 */ - 906, /* GL_MAP1_VERTEX_3 */ - 907, /* GL_MAP1_VERTEX_4 */ - 924, /* GL_MAP2_COLOR_4 */ - 927, /* GL_MAP2_INDEX */ - 928, /* GL_MAP2_NORMAL */ - 929, /* GL_MAP2_TEXTURE_COORD_1 */ - 930, /* GL_MAP2_TEXTURE_COORD_2 */ - 931, /* GL_MAP2_TEXTURE_COORD_3 */ - 932, /* GL_MAP2_TEXTURE_COORD_4 */ - 933, /* GL_MAP2_VERTEX_3 */ - 934, /* GL_MAP2_VERTEX_4 */ - 898, /* GL_MAP1_GRID_DOMAIN */ - 899, /* GL_MAP1_GRID_SEGMENTS */ - 925, /* GL_MAP2_GRID_DOMAIN */ - 926, /* GL_MAP2_GRID_SEGMENTS */ - 1957, /* GL_TEXTURE_1D */ - 1960, /* GL_TEXTURE_2D */ - 541, /* GL_FEEDBACK_BUFFER_POINTER */ - 542, /* GL_FEEDBACK_BUFFER_SIZE */ - 543, /* GL_FEEDBACK_BUFFER_TYPE */ - 1744, /* GL_SELECTION_BUFFER_POINTER */ - 1745, /* GL_SELECTION_BUFFER_SIZE */ - 2106, /* GL_TEXTURE_WIDTH */ - 2066, /* GL_TEXTURE_HEIGHT */ - 2010, /* GL_TEXTURE_COMPONENTS */ - 1988, /* GL_TEXTURE_BORDER_COLOR */ - 1987, /* GL_TEXTURE_BORDER */ - 444, /* GL_DONT_CARE */ - 539, /* GL_FASTEST */ - 1222, /* GL_NICEST */ + 901, /* GL_MAP1_COLOR_4 */ + 904, /* GL_MAP1_INDEX */ + 905, /* GL_MAP1_NORMAL */ + 906, /* GL_MAP1_TEXTURE_COORD_1 */ + 907, /* GL_MAP1_TEXTURE_COORD_2 */ + 908, /* GL_MAP1_TEXTURE_COORD_3 */ + 909, /* GL_MAP1_TEXTURE_COORD_4 */ + 910, /* GL_MAP1_VERTEX_3 */ + 911, /* GL_MAP1_VERTEX_4 */ + 928, /* GL_MAP2_COLOR_4 */ + 931, /* GL_MAP2_INDEX */ + 932, /* GL_MAP2_NORMAL */ + 933, /* GL_MAP2_TEXTURE_COORD_1 */ + 934, /* GL_MAP2_TEXTURE_COORD_2 */ + 935, /* GL_MAP2_TEXTURE_COORD_3 */ + 936, /* GL_MAP2_TEXTURE_COORD_4 */ + 937, /* GL_MAP2_VERTEX_3 */ + 938, /* GL_MAP2_VERTEX_4 */ + 902, /* GL_MAP1_GRID_DOMAIN */ + 903, /* GL_MAP1_GRID_SEGMENTS */ + 929, /* GL_MAP2_GRID_DOMAIN */ + 930, /* GL_MAP2_GRID_SEGMENTS */ + 1963, /* GL_TEXTURE_1D */ + 1966, /* GL_TEXTURE_2D */ + 542, /* GL_FEEDBACK_BUFFER_POINTER */ + 543, /* GL_FEEDBACK_BUFFER_SIZE */ + 544, /* GL_FEEDBACK_BUFFER_TYPE */ + 1750, /* GL_SELECTION_BUFFER_POINTER */ + 1751, /* GL_SELECTION_BUFFER_SIZE */ + 2112, /* GL_TEXTURE_WIDTH */ + 2072, /* GL_TEXTURE_HEIGHT */ + 2016, /* GL_TEXTURE_COMPONENTS */ + 1994, /* GL_TEXTURE_BORDER_COLOR */ + 1993, /* GL_TEXTURE_BORDER */ + 445, /* GL_DONT_CARE */ + 540, /* GL_FASTEST */ + 1226, /* GL_NICEST */ 56, /* GL_AMBIENT */ - 441, /* GL_DIFFUSE */ - 1797, /* GL_SPECULAR */ - 1397, /* GL_POSITION */ - 1800, /* GL_SPOT_DIRECTION */ - 1801, /* GL_SPOT_EXPONENT */ - 1799, /* GL_SPOT_CUTOFF */ + 442, /* GL_DIFFUSE */ + 1803, /* GL_SPECULAR */ + 1402, /* GL_POSITION */ + 1806, /* GL_SPOT_DIRECTION */ + 1807, /* GL_SPOT_EXPONENT */ + 1805, /* GL_SPOT_CUTOFF */ 320, /* GL_CONSTANT_ATTENUATION */ - 826, /* GL_LINEAR_ATTENUATION */ - 1511, /* GL_QUADRATIC_ATTENUATION */ + 829, /* GL_LINEAR_ATTENUATION */ + 1516, /* GL_QUADRATIC_ATTENUATION */ 287, /* GL_COMPILE */ 288, /* GL_COMPILE_AND_EXECUTE */ 149, /* GL_BYTE */ - 2165, /* GL_UNSIGNED_BYTE */ - 1762, /* GL_SHORT */ - 2204, /* GL_UNSIGNED_SHORT */ - 749, /* GL_INT */ - 2168, /* GL_UNSIGNED_INT */ - 552, /* GL_FLOAT */ + 2172, /* GL_UNSIGNED_BYTE */ + 1768, /* GL_SHORT */ + 2211, /* GL_UNSIGNED_SHORT */ + 752, /* GL_INT */ + 2175, /* GL_UNSIGNED_INT */ + 553, /* GL_FLOAT */ 1, /* GL_2_BYTES */ 5, /* GL_3_BYTES */ 7, /* GL_4_BYTES */ - 451, /* GL_DOUBLE */ - 702, /* GL_HALF_FLOAT */ - 547, /* GL_FIXED */ + 452, /* GL_DOUBLE */ + 704, /* GL_HALF_FLOAT */ + 548, /* GL_FIXED */ 165, /* GL_CLEAR */ 58, /* GL_AND */ 60, /* GL_AND_REVERSE */ - 350, /* GL_COPY */ + 351, /* GL_COPY */ 59, /* GL_AND_INVERTED */ - 1225, /* GL_NOOP */ - 2300, /* GL_XOR */ - 1292, /* GL_OR */ - 1226, /* GL_NOR */ - 529, /* GL_EQUIV */ - 802, /* GL_INVERT */ - 1295, /* GL_OR_REVERSE */ - 351, /* GL_COPY_INVERTED */ - 1294, /* GL_OR_INVERTED */ - 1215, /* GL_NAND */ - 1751, /* GL_SET */ - 526, /* GL_EMISSION */ - 1761, /* GL_SHININESS */ + 1229, /* GL_NOOP */ + 2307, /* GL_XOR */ + 1297, /* GL_OR */ + 1230, /* GL_NOR */ + 530, /* GL_EQUIV */ + 805, /* GL_INVERT */ + 1300, /* GL_OR_REVERSE */ + 352, /* GL_COPY_INVERTED */ + 1299, /* GL_OR_INVERTED */ + 1219, /* GL_NAND */ + 1757, /* GL_SET */ + 527, /* GL_EMISSION */ + 1767, /* GL_SHININESS */ 57, /* GL_AMBIENT_AND_DIFFUSE */ 232, /* GL_COLOR_INDEXES */ - 1164, /* GL_MODELVIEW */ - 1483, /* GL_PROJECTION */ - 1892, /* GL_TEXTURE */ + 1168, /* GL_MODELVIEW */ + 1488, /* GL_PROJECTION */ + 1898, /* GL_TEXTURE */ 188, /* GL_COLOR */ - 398, /* GL_DEPTH */ - 1823, /* GL_STENCIL */ + 399, /* GL_DEPTH */ + 1829, /* GL_STENCIL */ 231, /* GL_COLOR_INDEX */ - 1844, /* GL_STENCIL_INDEX */ - 414, /* GL_DEPTH_COMPONENT */ - 1548, /* GL_RED */ - 696, /* GL_GREEN */ + 1850, /* GL_STENCIL_INDEX */ + 415, /* GL_DEPTH_COMPONENT */ + 1553, /* GL_RED */ + 697, /* GL_GREEN */ 110, /* GL_BLUE */ 32, /* GL_ALPHA */ - 1604, /* GL_RGB */ - 1644, /* GL_RGBA */ - 860, /* GL_LUMINANCE */ - 887, /* GL_LUMINANCE_ALPHA */ + 1610, /* GL_RGB */ + 1650, /* GL_RGBA */ + 864, /* GL_LUMINANCE */ + 891, /* GL_LUMINANCE_ALPHA */ 86, /* GL_BITMAP */ - 1347, /* GL_POINT */ - 824, /* GL_LINE */ - 544, /* GL_FILL */ - 1562, /* GL_RENDER */ - 540, /* GL_FEEDBACK */ - 1743, /* GL_SELECT */ - 551, /* GL_FLAT */ - 1772, /* GL_SMOOTH */ - 803, /* GL_KEEP */ - 1595, /* GL_REPLACE */ - 731, /* GL_INCR */ - 394, /* GL_DECR */ - 2221, /* GL_VENDOR */ - 1592, /* GL_RENDERER */ - 2222, /* GL_VERSION */ - 533, /* GL_EXTENSIONS */ - 1692, /* GL_S */ - 1883, /* GL_T */ - 1531, /* GL_R */ - 1510, /* GL_Q */ - 1201, /* GL_MODULATE */ - 393, /* GL_DECAL */ - 2053, /* GL_TEXTURE_ENV_MODE */ - 2052, /* GL_TEXTURE_ENV_COLOR */ - 2051, /* GL_TEXTURE_ENV */ - 534, /* GL_EYE_LINEAR */ - 1253, /* GL_OBJECT_LINEAR */ - 1798, /* GL_SPHERE_MAP */ - 2056, /* GL_TEXTURE_GEN_MODE */ - 1255, /* GL_OBJECT_PLANE */ - 535, /* GL_EYE_PLANE */ - 1216, /* GL_NEAREST */ - 825, /* GL_LINEAR */ - 1220, /* GL_NEAREST_MIPMAP_NEAREST */ - 830, /* GL_LINEAR_MIPMAP_NEAREST */ - 1219, /* GL_NEAREST_MIPMAP_LINEAR */ - 829, /* GL_LINEAR_MIPMAP_LINEAR */ - 2079, /* GL_TEXTURE_MAG_FILTER */ - 2088, /* GL_TEXTURE_MIN_FILTER */ - 2109, /* GL_TEXTURE_WRAP_S */ - 2110, /* GL_TEXTURE_WRAP_T */ + 1352, /* GL_POINT */ + 827, /* GL_LINE */ + 545, /* GL_FILL */ + 1567, /* GL_RENDER */ + 541, /* GL_FEEDBACK */ + 1749, /* GL_SELECT */ + 552, /* GL_FLAT */ + 1778, /* GL_SMOOTH */ + 806, /* GL_KEEP */ + 1600, /* GL_REPLACE */ + 733, /* GL_INCR */ + 395, /* GL_DECR */ + 2228, /* GL_VENDOR */ + 1597, /* GL_RENDERER */ + 2229, /* GL_VERSION */ + 534, /* GL_EXTENSIONS */ + 1698, /* GL_S */ + 1889, /* GL_T */ + 1536, /* GL_R */ + 1515, /* GL_Q */ + 1205, /* GL_MODULATE */ + 394, /* GL_DECAL */ + 2059, /* GL_TEXTURE_ENV_MODE */ + 2058, /* GL_TEXTURE_ENV_COLOR */ + 2057, /* GL_TEXTURE_ENV */ + 535, /* GL_EYE_LINEAR */ + 1258, /* GL_OBJECT_LINEAR */ + 1804, /* GL_SPHERE_MAP */ + 2062, /* GL_TEXTURE_GEN_MODE */ + 1260, /* GL_OBJECT_PLANE */ + 536, /* GL_EYE_PLANE */ + 1220, /* GL_NEAREST */ + 828, /* GL_LINEAR */ + 1224, /* GL_NEAREST_MIPMAP_NEAREST */ + 833, /* GL_LINEAR_MIPMAP_NEAREST */ + 1223, /* GL_NEAREST_MIPMAP_LINEAR */ + 832, /* GL_LINEAR_MIPMAP_LINEAR */ + 2085, /* GL_TEXTURE_MAG_FILTER */ + 2094, /* GL_TEXTURE_MIN_FILTER */ + 2115, /* GL_TEXTURE_WRAP_S */ + 2116, /* GL_TEXTURE_WRAP_T */ 155, /* GL_CLAMP */ - 1594, /* GL_REPEAT */ - 1391, /* GL_POLYGON_OFFSET_UNITS */ - 1390, /* GL_POLYGON_OFFSET_POINT */ - 1389, /* GL_POLYGON_OFFSET_LINE */ - 1534, /* GL_R3_G3_B2 */ - 2218, /* GL_V2F */ - 2219, /* GL_V3F */ + 1599, /* GL_REPEAT */ + 1396, /* GL_POLYGON_OFFSET_UNITS */ + 1395, /* GL_POLYGON_OFFSET_POINT */ + 1394, /* GL_POLYGON_OFFSET_LINE */ + 1539, /* GL_R3_G3_B2 */ + 2225, /* GL_V2F */ + 2226, /* GL_V3F */ 152, /* GL_C4UB_V2F */ 153, /* GL_C4UB_V3F */ 150, /* GL_C3F_V3F */ - 1213, /* GL_N3F_V3F */ + 1217, /* GL_N3F_V3F */ 151, /* GL_C4F_N3F_V3F */ - 1888, /* GL_T2F_V3F */ - 1890, /* GL_T4F_V4F */ - 1886, /* GL_T2F_C4UB_V3F */ - 1884, /* GL_T2F_C3F_V3F */ - 1887, /* GL_T2F_N3F_V3F */ - 1885, /* GL_T2F_C4F_N3F_V3F */ - 1889, /* GL_T4F_C4F_N3F_V4F */ + 1894, /* GL_T2F_V3F */ + 1896, /* GL_T4F_V4F */ + 1892, /* GL_T2F_C4UB_V3F */ + 1890, /* GL_T2F_C3F_V3F */ + 1893, /* GL_T2F_N3F_V3F */ + 1891, /* GL_T2F_C4F_N3F_V3F */ + 1895, /* GL_T4F_C4F_N3F_V4F */ 172, /* GL_CLIP_DISTANCE0 */ 173, /* GL_CLIP_DISTANCE1 */ 174, /* GL_CLIP_DISTANCE2 */ @@ -5086,184 +5100,184 @@ static const unsigned reduced_enums[1556] = 177, /* GL_CLIP_DISTANCE5 */ 178, /* GL_CLIP_DISTANCE6 */ 179, /* GL_CLIP_DISTANCE7 */ - 809, /* GL_LIGHT0 */ - 810, /* GL_LIGHT1 */ - 811, /* GL_LIGHT2 */ - 812, /* GL_LIGHT3 */ - 813, /* GL_LIGHT4 */ - 814, /* GL_LIGHT5 */ - 815, /* GL_LIGHT6 */ - 816, /* GL_LIGHT7 */ - 706, /* GL_HINT_BIT */ + 812, /* GL_LIGHT0 */ + 813, /* GL_LIGHT1 */ + 814, /* GL_LIGHT2 */ + 815, /* GL_LIGHT3 */ + 816, /* GL_LIGHT4 */ + 817, /* GL_LIGHT5 */ + 818, /* GL_LIGHT6 */ + 819, /* GL_LIGHT7 */ + 708, /* GL_HINT_BIT */ 322, /* GL_CONSTANT_COLOR */ - 1266, /* GL_ONE_MINUS_CONSTANT_COLOR */ + 1271, /* GL_ONE_MINUS_CONSTANT_COLOR */ 317, /* GL_CONSTANT_ALPHA */ - 1264, /* GL_ONE_MINUS_CONSTANT_ALPHA */ + 1269, /* GL_ONE_MINUS_CONSTANT_ALPHA */ 89, /* GL_BLEND_COLOR */ - 673, /* GL_FUNC_ADD */ - 1145, /* GL_MIN */ - 1013, /* GL_MAX */ + 674, /* GL_FUNC_ADD */ + 1149, /* GL_MIN */ + 1017, /* GL_MAX */ 96, /* GL_BLEND_EQUATION */ - 679, /* GL_FUNC_SUBTRACT */ - 676, /* GL_FUNC_REVERSE_SUBTRACT */ - 330, /* GL_CONVOLUTION_1D */ - 331, /* GL_CONVOLUTION_2D */ - 1746, /* GL_SEPARABLE_2D */ - 334, /* GL_CONVOLUTION_BORDER_MODE */ - 338, /* GL_CONVOLUTION_FILTER_SCALE */ - 336, /* GL_CONVOLUTION_FILTER_BIAS */ - 1549, /* GL_REDUCE */ - 340, /* GL_CONVOLUTION_FORMAT */ - 344, /* GL_CONVOLUTION_WIDTH */ - 342, /* GL_CONVOLUTION_HEIGHT */ - 1032, /* GL_MAX_CONVOLUTION_WIDTH */ - 1030, /* GL_MAX_CONVOLUTION_HEIGHT */ - 1430, /* GL_POST_CONVOLUTION_RED_SCALE */ - 1426, /* GL_POST_CONVOLUTION_GREEN_SCALE */ - 1421, /* GL_POST_CONVOLUTION_BLUE_SCALE */ - 1417, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ - 1428, /* GL_POST_CONVOLUTION_RED_BIAS */ - 1424, /* GL_POST_CONVOLUTION_GREEN_BIAS */ - 1419, /* GL_POST_CONVOLUTION_BLUE_BIAS */ - 1415, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ - 707, /* GL_HISTOGRAM */ - 1490, /* GL_PROXY_HISTOGRAM */ - 723, /* GL_HISTOGRAM_WIDTH */ - 713, /* GL_HISTOGRAM_FORMAT */ - 719, /* GL_HISTOGRAM_RED_SIZE */ - 715, /* GL_HISTOGRAM_GREEN_SIZE */ - 710, /* GL_HISTOGRAM_BLUE_SIZE */ - 708, /* GL_HISTOGRAM_ALPHA_SIZE */ - 717, /* GL_HISTOGRAM_LUMINANCE_SIZE */ - 721, /* GL_HISTOGRAM_SINK */ - 1146, /* GL_MINMAX */ - 1148, /* GL_MINMAX_FORMAT */ - 1150, /* GL_MINMAX_SINK */ - 1891, /* GL_TABLE_TOO_LARGE_EXT */ - 2167, /* GL_UNSIGNED_BYTE_3_3_2 */ - 2207, /* GL_UNSIGNED_SHORT_4_4_4_4 */ - 2210, /* GL_UNSIGNED_SHORT_5_5_5_1 */ - 2179, /* GL_UNSIGNED_INT_8_8_8_8 */ - 2170, /* GL_UNSIGNED_INT_10_10_10_2 */ - 1388, /* GL_POLYGON_OFFSET_FILL */ - 1387, /* GL_POLYGON_OFFSET_FACTOR */ - 1386, /* GL_POLYGON_OFFSET_BIAS */ - 1598, /* GL_RESCALE_NORMAL */ + 680, /* GL_FUNC_SUBTRACT */ + 677, /* GL_FUNC_REVERSE_SUBTRACT */ + 331, /* GL_CONVOLUTION_1D */ + 332, /* GL_CONVOLUTION_2D */ + 1752, /* GL_SEPARABLE_2D */ + 335, /* GL_CONVOLUTION_BORDER_MODE */ + 339, /* GL_CONVOLUTION_FILTER_SCALE */ + 337, /* GL_CONVOLUTION_FILTER_BIAS */ + 1554, /* GL_REDUCE */ + 341, /* GL_CONVOLUTION_FORMAT */ + 345, /* GL_CONVOLUTION_WIDTH */ + 343, /* GL_CONVOLUTION_HEIGHT */ + 1036, /* GL_MAX_CONVOLUTION_WIDTH */ + 1034, /* GL_MAX_CONVOLUTION_HEIGHT */ + 1435, /* GL_POST_CONVOLUTION_RED_SCALE */ + 1431, /* GL_POST_CONVOLUTION_GREEN_SCALE */ + 1426, /* GL_POST_CONVOLUTION_BLUE_SCALE */ + 1422, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ + 1433, /* GL_POST_CONVOLUTION_RED_BIAS */ + 1429, /* GL_POST_CONVOLUTION_GREEN_BIAS */ + 1424, /* GL_POST_CONVOLUTION_BLUE_BIAS */ + 1420, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ + 709, /* GL_HISTOGRAM */ + 1495, /* GL_PROXY_HISTOGRAM */ + 725, /* GL_HISTOGRAM_WIDTH */ + 715, /* GL_HISTOGRAM_FORMAT */ + 721, /* GL_HISTOGRAM_RED_SIZE */ + 717, /* GL_HISTOGRAM_GREEN_SIZE */ + 712, /* GL_HISTOGRAM_BLUE_SIZE */ + 710, /* GL_HISTOGRAM_ALPHA_SIZE */ + 719, /* GL_HISTOGRAM_LUMINANCE_SIZE */ + 723, /* GL_HISTOGRAM_SINK */ + 1150, /* GL_MINMAX */ + 1152, /* GL_MINMAX_FORMAT */ + 1154, /* GL_MINMAX_SINK */ + 1897, /* GL_TABLE_TOO_LARGE_EXT */ + 2174, /* GL_UNSIGNED_BYTE_3_3_2 */ + 2214, /* GL_UNSIGNED_SHORT_4_4_4_4 */ + 2217, /* GL_UNSIGNED_SHORT_5_5_5_1 */ + 2186, /* GL_UNSIGNED_INT_8_8_8_8 */ + 2177, /* GL_UNSIGNED_INT_10_10_10_2 */ + 1393, /* GL_POLYGON_OFFSET_FILL */ + 1392, /* GL_POLYGON_OFFSET_FACTOR */ + 1391, /* GL_POLYGON_OFFSET_BIAS */ + 1603, /* GL_RESCALE_NORMAL */ 41, /* GL_ALPHA4 */ 43, /* GL_ALPHA8 */ 33, /* GL_ALPHA12 */ 35, /* GL_ALPHA16 */ - 875, /* GL_LUMINANCE4 */ - 881, /* GL_LUMINANCE8 */ - 861, /* GL_LUMINANCE12 */ - 867, /* GL_LUMINANCE16 */ - 876, /* GL_LUMINANCE4_ALPHA4 */ - 879, /* GL_LUMINANCE6_ALPHA2 */ - 884, /* GL_LUMINANCE8_ALPHA8 */ - 864, /* GL_LUMINANCE12_ALPHA4 */ - 862, /* GL_LUMINANCE12_ALPHA12 */ - 870, /* GL_LUMINANCE16_ALPHA16 */ - 750, /* GL_INTENSITY */ - 759, /* GL_INTENSITY4 */ - 761, /* GL_INTENSITY8 */ - 751, /* GL_INTENSITY12 */ - 753, /* GL_INTENSITY16 */ - 1619, /* GL_RGB2_EXT */ - 1625, /* GL_RGB4 */ - 1628, /* GL_RGB5 */ - 1635, /* GL_RGB8 */ - 1605, /* GL_RGB10 */ - 1609, /* GL_RGB12 */ - 1611, /* GL_RGB16 */ - 1655, /* GL_RGBA2 */ - 1662, /* GL_RGBA4 */ - 1631, /* GL_RGB5_A1 */ - 1667, /* GL_RGBA8 */ - 1606, /* GL_RGB10_A2 */ - 1645, /* GL_RGBA12 */ - 1647, /* GL_RGBA16 */ - 2096, /* GL_TEXTURE_RED_SIZE */ - 2064, /* GL_TEXTURE_GREEN_SIZE */ - 1985, /* GL_TEXTURE_BLUE_SIZE */ - 1965, /* GL_TEXTURE_ALPHA_SIZE */ - 2077, /* GL_TEXTURE_LUMINANCE_SIZE */ - 2068, /* GL_TEXTURE_INTENSITY_SIZE */ - 1596, /* GL_REPLACE_EXT */ - 1494, /* GL_PROXY_TEXTURE_1D */ - 1498, /* GL_PROXY_TEXTURE_2D */ - 2104, /* GL_TEXTURE_TOO_LARGE_EXT */ - 2090, /* GL_TEXTURE_PRIORITY */ - 2098, /* GL_TEXTURE_RESIDENT */ - 1968, /* GL_TEXTURE_BINDING_1D */ - 1971, /* GL_TEXTURE_BINDING_2D */ - 1974, /* GL_TEXTURE_BINDING_3D */ - 1302, /* GL_PACK_SKIP_IMAGES */ - 1298, /* GL_PACK_IMAGE_HEIGHT */ - 2160, /* GL_UNPACK_SKIP_IMAGES */ - 2157, /* GL_UNPACK_IMAGE_HEIGHT */ - 1963, /* GL_TEXTURE_3D */ - 1502, /* GL_PROXY_TEXTURE_3D */ - 2048, /* GL_TEXTURE_DEPTH */ - 2107, /* GL_TEXTURE_WRAP_R */ - 1014, /* GL_MAX_3D_TEXTURE_SIZE */ - 2223, /* GL_VERTEX_ARRAY */ - 1228, /* GL_NORMAL_ARRAY */ + 879, /* GL_LUMINANCE4 */ + 885, /* GL_LUMINANCE8 */ + 865, /* GL_LUMINANCE12 */ + 871, /* GL_LUMINANCE16 */ + 880, /* GL_LUMINANCE4_ALPHA4 */ + 883, /* GL_LUMINANCE6_ALPHA2 */ + 888, /* GL_LUMINANCE8_ALPHA8 */ + 868, /* GL_LUMINANCE12_ALPHA4 */ + 866, /* GL_LUMINANCE12_ALPHA12 */ + 874, /* GL_LUMINANCE16_ALPHA16 */ + 753, /* GL_INTENSITY */ + 762, /* GL_INTENSITY4 */ + 764, /* GL_INTENSITY8 */ + 754, /* GL_INTENSITY12 */ + 756, /* GL_INTENSITY16 */ + 1625, /* GL_RGB2_EXT */ + 1631, /* GL_RGB4 */ + 1634, /* GL_RGB5 */ + 1641, /* GL_RGB8 */ + 1611, /* GL_RGB10 */ + 1615, /* GL_RGB12 */ + 1617, /* GL_RGB16 */ + 1661, /* GL_RGBA2 */ + 1668, /* GL_RGBA4 */ + 1637, /* GL_RGB5_A1 */ + 1673, /* GL_RGBA8 */ + 1612, /* GL_RGB10_A2 */ + 1651, /* GL_RGBA12 */ + 1653, /* GL_RGBA16 */ + 2102, /* GL_TEXTURE_RED_SIZE */ + 2070, /* GL_TEXTURE_GREEN_SIZE */ + 1991, /* GL_TEXTURE_BLUE_SIZE */ + 1971, /* GL_TEXTURE_ALPHA_SIZE */ + 2083, /* GL_TEXTURE_LUMINANCE_SIZE */ + 2074, /* GL_TEXTURE_INTENSITY_SIZE */ + 1601, /* GL_REPLACE_EXT */ + 1499, /* GL_PROXY_TEXTURE_1D */ + 1503, /* GL_PROXY_TEXTURE_2D */ + 2110, /* GL_TEXTURE_TOO_LARGE_EXT */ + 2096, /* GL_TEXTURE_PRIORITY */ + 2104, /* GL_TEXTURE_RESIDENT */ + 1974, /* GL_TEXTURE_BINDING_1D */ + 1977, /* GL_TEXTURE_BINDING_2D */ + 1980, /* GL_TEXTURE_BINDING_3D */ + 1307, /* GL_PACK_SKIP_IMAGES */ + 1303, /* GL_PACK_IMAGE_HEIGHT */ + 2167, /* GL_UNPACK_SKIP_IMAGES */ + 2164, /* GL_UNPACK_IMAGE_HEIGHT */ + 1969, /* GL_TEXTURE_3D */ + 1507, /* GL_PROXY_TEXTURE_3D */ + 2054, /* GL_TEXTURE_DEPTH */ + 2113, /* GL_TEXTURE_WRAP_R */ + 1018, /* GL_MAX_3D_TEXTURE_SIZE */ + 2230, /* GL_VERTEX_ARRAY */ + 1232, /* GL_NORMAL_ARRAY */ 189, /* GL_COLOR_ARRAY */ - 735, /* GL_INDEX_ARRAY */ - 2018, /* GL_TEXTURE_COORD_ARRAY */ - 518, /* GL_EDGE_FLAG_ARRAY */ - 2229, /* GL_VERTEX_ARRAY_SIZE */ - 2231, /* GL_VERTEX_ARRAY_TYPE */ - 2230, /* GL_VERTEX_ARRAY_STRIDE */ - 1233, /* GL_NORMAL_ARRAY_TYPE */ - 1232, /* GL_NORMAL_ARRAY_STRIDE */ + 737, /* GL_INDEX_ARRAY */ + 2024, /* GL_TEXTURE_COORD_ARRAY */ + 519, /* GL_EDGE_FLAG_ARRAY */ + 2236, /* GL_VERTEX_ARRAY_SIZE */ + 2238, /* GL_VERTEX_ARRAY_TYPE */ + 2237, /* GL_VERTEX_ARRAY_STRIDE */ + 1237, /* GL_NORMAL_ARRAY_TYPE */ + 1236, /* GL_NORMAL_ARRAY_STRIDE */ 193, /* GL_COLOR_ARRAY_SIZE */ 195, /* GL_COLOR_ARRAY_TYPE */ 194, /* GL_COLOR_ARRAY_STRIDE */ - 740, /* GL_INDEX_ARRAY_TYPE */ - 739, /* GL_INDEX_ARRAY_STRIDE */ - 2022, /* GL_TEXTURE_COORD_ARRAY_SIZE */ - 2024, /* GL_TEXTURE_COORD_ARRAY_TYPE */ - 2023, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ - 522, /* GL_EDGE_FLAG_ARRAY_STRIDE */ - 2228, /* GL_VERTEX_ARRAY_POINTER */ - 1231, /* GL_NORMAL_ARRAY_POINTER */ + 742, /* GL_INDEX_ARRAY_TYPE */ + 741, /* GL_INDEX_ARRAY_STRIDE */ + 2028, /* GL_TEXTURE_COORD_ARRAY_SIZE */ + 2030, /* GL_TEXTURE_COORD_ARRAY_TYPE */ + 2029, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ + 523, /* GL_EDGE_FLAG_ARRAY_STRIDE */ + 2235, /* GL_VERTEX_ARRAY_POINTER */ + 1235, /* GL_NORMAL_ARRAY_POINTER */ 192, /* GL_COLOR_ARRAY_POINTER */ - 738, /* GL_INDEX_ARRAY_POINTER */ - 2021, /* GL_TEXTURE_COORD_ARRAY_POINTER */ - 521, /* GL_EDGE_FLAG_ARRAY_POINTER */ - 1206, /* GL_MULTISAMPLE */ - 1720, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ - 1722, /* GL_SAMPLE_ALPHA_TO_ONE */ - 1727, /* GL_SAMPLE_COVERAGE */ - 1724, /* GL_SAMPLE_BUFFERS */ - 1715, /* GL_SAMPLES */ - 1731, /* GL_SAMPLE_COVERAGE_VALUE */ - 1729, /* GL_SAMPLE_COVERAGE_INVERT */ + 740, /* GL_INDEX_ARRAY_POINTER */ + 2027, /* GL_TEXTURE_COORD_ARRAY_POINTER */ + 522, /* GL_EDGE_FLAG_ARRAY_POINTER */ + 1210, /* GL_MULTISAMPLE */ + 1726, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ + 1728, /* GL_SAMPLE_ALPHA_TO_ONE */ + 1733, /* GL_SAMPLE_COVERAGE */ + 1730, /* GL_SAMPLE_BUFFERS */ + 1721, /* GL_SAMPLES */ + 1737, /* GL_SAMPLE_COVERAGE_VALUE */ + 1735, /* GL_SAMPLE_COVERAGE_INVERT */ 237, /* GL_COLOR_MATRIX */ 239, /* GL_COLOR_MATRIX_STACK_DEPTH */ - 1026, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ - 1413, /* GL_POST_COLOR_MATRIX_RED_SCALE */ - 1409, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ - 1404, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ - 1400, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ - 1411, /* GL_POST_COLOR_MATRIX_RED_BIAS */ - 1407, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ - 1402, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ - 1398, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ - 2001, /* GL_TEXTURE_COLOR_TABLE_SGI */ - 1503, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ - 2003, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ + 1030, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ + 1418, /* GL_POST_COLOR_MATRIX_RED_SCALE */ + 1414, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ + 1409, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ + 1405, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ + 1416, /* GL_POST_COLOR_MATRIX_RED_BIAS */ + 1412, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ + 1407, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ + 1403, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ + 2007, /* GL_TEXTURE_COLOR_TABLE_SGI */ + 1508, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ + 2009, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ 94, /* GL_BLEND_DST_RGB */ 108, /* GL_BLEND_SRC_RGB */ 92, /* GL_BLEND_DST_ALPHA */ 106, /* GL_BLEND_SRC_ALPHA */ 243, /* GL_COLOR_TABLE */ - 1423, /* GL_POST_CONVOLUTION_COLOR_TABLE */ - 1406, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ - 1489, /* GL_PROXY_COLOR_TABLE */ - 1493, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ - 1492, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ + 1428, /* GL_POST_CONVOLUTION_COLOR_TABLE */ + 1411, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ + 1494, /* GL_PROXY_COLOR_TABLE */ + 1498, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ + 1497, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ 267, /* GL_COLOR_TABLE_SCALE */ 247, /* GL_COLOR_TABLE_BIAS */ 252, /* GL_COLOR_TABLE_FORMAT */ @@ -5276,748 +5290,754 @@ static const unsigned reduced_enums[1556] = 258, /* GL_COLOR_TABLE_INTENSITY_SIZE */ 79, /* GL_BGR */ 80, /* GL_BGRA */ - 1041, /* GL_MAX_ELEMENTS_VERTICES */ - 1040, /* GL_MAX_ELEMENTS_INDICES */ - 2067, /* GL_TEXTURE_INDEX_SIZE_EXT */ + 1045, /* GL_MAX_ELEMENTS_VERTICES */ + 1044, /* GL_MAX_ELEMENTS_INDICES */ + 2073, /* GL_TEXTURE_INDEX_SIZE_EXT */ 186, /* GL_CLIP_VOLUME_CLIPPING_HINT_EXT */ - 1369, /* GL_POINT_SIZE_MIN */ - 1365, /* GL_POINT_SIZE_MAX */ - 1354, /* GL_POINT_FADE_THRESHOLD_SIZE */ - 1350, /* GL_POINT_DISTANCE_ATTENUATION */ + 1374, /* GL_POINT_SIZE_MIN */ + 1370, /* GL_POINT_SIZE_MAX */ + 1359, /* GL_POINT_FADE_THRESHOLD_SIZE */ + 1355, /* GL_POINT_DISTANCE_ATTENUATION */ 159, /* GL_CLAMP_TO_BORDER */ 162, /* GL_CLAMP_TO_EDGE */ - 2089, /* GL_TEXTURE_MIN_LOD */ - 2087, /* GL_TEXTURE_MAX_LOD */ - 1967, /* GL_TEXTURE_BASE_LEVEL */ - 2086, /* GL_TEXTURE_MAX_LEVEL */ - 726, /* GL_IGNORE_BORDER_HP */ + 2095, /* GL_TEXTURE_MIN_LOD */ + 2093, /* GL_TEXTURE_MAX_LOD */ + 1973, /* GL_TEXTURE_BASE_LEVEL */ + 2092, /* GL_TEXTURE_MAX_LEVEL */ + 728, /* GL_IGNORE_BORDER_HP */ 321, /* GL_CONSTANT_BORDER_HP */ - 1597, /* GL_REPLICATE_BORDER_HP */ - 332, /* GL_CONVOLUTION_BORDER_COLOR */ - 1261, /* GL_OCCLUSION_TEST_HP */ - 1262, /* GL_OCCLUSION_TEST_RESULT_HP */ - 827, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ - 1995, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ - 1997, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ - 1999, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ - 2000, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - 1998, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ - 1996, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ - 1020, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ - 1021, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - 1433, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ - 1435, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ - 1432, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ - 1434, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ - 2075, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ - 2076, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ - 2074, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ - 682, /* GL_GENERATE_MIPMAP */ - 683, /* GL_GENERATE_MIPMAP_HINT */ - 595, /* GL_FOG_OFFSET_SGIX */ - 596, /* GL_FOG_OFFSET_VALUE_SGIX */ - 2009, /* GL_TEXTURE_COMPARE_SGIX */ - 2008, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ - 2071, /* GL_TEXTURE_LEQUAL_R_SGIX */ - 2063, /* GL_TEXTURE_GEQUAL_R_SGIX */ - 415, /* GL_DEPTH_COMPONENT16 */ - 419, /* GL_DEPTH_COMPONENT24 */ - 423, /* GL_DEPTH_COMPONENT32 */ - 357, /* GL_CULL_VERTEX_EXT */ - 359, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */ - 358, /* GL_CULL_VERTEX_EYE_POSITION_EXT */ - 2296, /* GL_WRAP_BORDER_SUN */ - 2002, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ - 820, /* GL_LIGHT_MODEL_COLOR_CONTROL */ - 1765, /* GL_SINGLE_COLOR */ - 1749, /* GL_SEPARATE_SPECULAR_COLOR */ - 1760, /* GL_SHARED_TEXTURE_PALETTE_EXT */ - 607, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ - 608, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ - 619, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ - 610, /* GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE */ - 606, /* GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE */ - 605, /* GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE */ - 609, /* GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE */ - 620, /* GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE */ - 637, /* GL_FRAMEBUFFER_DEFAULT */ - 664, /* GL_FRAMEBUFFER_UNDEFINED */ - 431, /* GL_DEPTH_STENCIL_ATTACHMENT */ - 896, /* GL_MAJOR_VERSION */ - 1152, /* GL_MINOR_VERSION */ - 1242, /* GL_NUM_EXTENSIONS */ + 1602, /* GL_REPLICATE_BORDER_HP */ + 333, /* GL_CONVOLUTION_BORDER_COLOR */ + 1266, /* GL_OCCLUSION_TEST_HP */ + 1267, /* GL_OCCLUSION_TEST_RESULT_HP */ + 830, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ + 2001, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ + 2003, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ + 2005, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ + 2006, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + 2004, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ + 2002, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ + 1024, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ + 1025, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + 1438, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ + 1440, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ + 1437, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ + 1439, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ + 2081, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ + 2082, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ + 2080, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ + 683, /* GL_GENERATE_MIPMAP */ + 684, /* GL_GENERATE_MIPMAP_HINT */ + 596, /* GL_FOG_OFFSET_SGIX */ + 597, /* GL_FOG_OFFSET_VALUE_SGIX */ + 2015, /* GL_TEXTURE_COMPARE_SGIX */ + 2014, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ + 2077, /* GL_TEXTURE_LEQUAL_R_SGIX */ + 2069, /* GL_TEXTURE_GEQUAL_R_SGIX */ + 416, /* GL_DEPTH_COMPONENT16 */ + 420, /* GL_DEPTH_COMPONENT24 */ + 424, /* GL_DEPTH_COMPONENT32 */ + 358, /* GL_CULL_VERTEX_EXT */ + 360, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */ + 359, /* GL_CULL_VERTEX_EYE_POSITION_EXT */ + 2303, /* GL_WRAP_BORDER_SUN */ + 2008, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ + 823, /* GL_LIGHT_MODEL_COLOR_CONTROL */ + 1771, /* GL_SINGLE_COLOR */ + 1755, /* GL_SEPARATE_SPECULAR_COLOR */ + 1766, /* GL_SHARED_TEXTURE_PALETTE_EXT */ + 608, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ + 609, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ + 620, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ + 611, /* GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE */ + 607, /* GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE */ + 606, /* GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE */ + 610, /* GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE */ + 621, /* GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE */ + 638, /* GL_FRAMEBUFFER_DEFAULT */ + 665, /* GL_FRAMEBUFFER_UNDEFINED */ + 432, /* GL_DEPTH_STENCIL_ATTACHMENT */ + 900, /* GL_MAJOR_VERSION */ + 1156, /* GL_MINOR_VERSION */ + 1247, /* GL_NUM_EXTENSIONS */ 327, /* GL_CONTEXT_FLAGS */ - 734, /* GL_INDEX */ - 409, /* GL_DEPTH_BUFFER */ - 1839, /* GL_STENCIL_BUFFER */ + 736, /* GL_INDEX */ + 410, /* GL_DEPTH_BUFFER */ + 1845, /* GL_STENCIL_BUFFER */ 298, /* GL_COMPRESSED_RED */ 299, /* GL_COMPRESSED_RG */ - 2166, /* GL_UNSIGNED_BYTE_2_3_3_REV */ - 2211, /* GL_UNSIGNED_SHORT_5_6_5 */ - 2212, /* GL_UNSIGNED_SHORT_5_6_5_REV */ - 2208, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ - 2205, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ - 2180, /* GL_UNSIGNED_INT_8_8_8_8_REV */ - 2176, /* GL_UNSIGNED_INT_2_10_10_10_REV */ - 2084, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ - 2085, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ - 2083, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ - 1156, /* GL_MIRRORED_REPEAT */ - 1685, /* GL_RGB_S3TC */ - 1627, /* GL_RGB4_S3TC */ - 1681, /* GL_RGBA_S3TC */ - 1666, /* GL_RGBA4_S3TC */ - 1675, /* GL_RGBA_DXT5_S3TC */ - 1663, /* GL_RGBA4_DXT5_S3TC */ + 860, /* GL_LOSE_CONTEXT_ON_RESET_ARB */ + 703, /* GL_GUILTY_CONTEXT_RESET_ARB */ + 751, /* GL_INNOCENT_CONTEXT_RESET_ARB */ + 2162, /* GL_UNKNOWN_CONTEXT_RESET_ARB */ + 1605, /* GL_RESET_NOTIFICATION_STRATEGY_ARB */ + 1244, /* GL_NO_RESET_NOTIFICATION_ARB */ + 2173, /* GL_UNSIGNED_BYTE_2_3_3_REV */ + 2218, /* GL_UNSIGNED_SHORT_5_6_5 */ + 2219, /* GL_UNSIGNED_SHORT_5_6_5_REV */ + 2215, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ + 2212, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ + 2187, /* GL_UNSIGNED_INT_8_8_8_8_REV */ + 2183, /* GL_UNSIGNED_INT_2_10_10_10_REV */ + 2090, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ + 2091, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ + 2089, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ + 1160, /* GL_MIRRORED_REPEAT */ + 1691, /* GL_RGB_S3TC */ + 1633, /* GL_RGB4_S3TC */ + 1687, /* GL_RGBA_S3TC */ + 1672, /* GL_RGBA4_S3TC */ + 1681, /* GL_RGBA_DXT5_S3TC */ + 1669, /* GL_RGBA4_DXT5_S3TC */ 309, /* GL_COMPRESSED_RGB_S3TC_DXT1_EXT */ 304, /* GL_COMPRESSED_RGBA_S3TC_DXT1_EXT */ 305, /* GL_COMPRESSED_RGBA_S3TC_DXT3_EXT */ 306, /* GL_COMPRESSED_RGBA_S3TC_DXT5_EXT */ - 1218, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ - 1217, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ - 828, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */ - 582, /* GL_FOG_COORDINATE_SOURCE */ - 574, /* GL_FOG_COORD */ - 598, /* GL_FRAGMENT_DEPTH */ - 363, /* GL_CURRENT_FOG_COORD */ - 581, /* GL_FOG_COORDINATE_ARRAY_TYPE */ - 580, /* GL_FOG_COORDINATE_ARRAY_STRIDE */ - 579, /* GL_FOG_COORDINATE_ARRAY_POINTER */ - 576, /* GL_FOG_COORDINATE_ARRAY */ + 1222, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ + 1221, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ + 831, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */ + 583, /* GL_FOG_COORDINATE_SOURCE */ + 575, /* GL_FOG_COORD */ + 599, /* GL_FRAGMENT_DEPTH */ + 364, /* GL_CURRENT_FOG_COORD */ + 582, /* GL_FOG_COORDINATE_ARRAY_TYPE */ + 581, /* GL_FOG_COORDINATE_ARRAY_STRIDE */ + 580, /* GL_FOG_COORDINATE_ARRAY_POINTER */ + 577, /* GL_FOG_COORDINATE_ARRAY */ 241, /* GL_COLOR_SUM */ - 384, /* GL_CURRENT_SECONDARY_COLOR */ - 1740, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ - 1742, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ - 1741, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ - 1739, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ - 1736, /* GL_SECONDARY_COLOR_ARRAY */ - 382, /* GL_CURRENT_RASTER_SECONDARY_COLOR */ + 385, /* GL_CURRENT_SECONDARY_COLOR */ + 1746, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ + 1748, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ + 1747, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ + 1745, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ + 1742, /* GL_SECONDARY_COLOR_ARRAY */ + 383, /* GL_CURRENT_RASTER_SECONDARY_COLOR */ 29, /* GL_ALIASED_POINT_SIZE_RANGE */ 28, /* GL_ALIASED_LINE_WIDTH_RANGE */ - 1893, /* GL_TEXTURE0 */ - 1895, /* GL_TEXTURE1 */ - 1917, /* GL_TEXTURE2 */ - 1939, /* GL_TEXTURE3 */ - 1945, /* GL_TEXTURE4 */ - 1947, /* GL_TEXTURE5 */ - 1949, /* GL_TEXTURE6 */ - 1951, /* GL_TEXTURE7 */ - 1953, /* GL_TEXTURE8 */ - 1955, /* GL_TEXTURE9 */ - 1896, /* GL_TEXTURE10 */ - 1898, /* GL_TEXTURE11 */ - 1900, /* GL_TEXTURE12 */ - 1902, /* GL_TEXTURE13 */ - 1904, /* GL_TEXTURE14 */ - 1906, /* GL_TEXTURE15 */ - 1908, /* GL_TEXTURE16 */ - 1910, /* GL_TEXTURE17 */ - 1912, /* GL_TEXTURE18 */ - 1914, /* GL_TEXTURE19 */ - 1918, /* GL_TEXTURE20 */ - 1920, /* GL_TEXTURE21 */ - 1922, /* GL_TEXTURE22 */ - 1924, /* GL_TEXTURE23 */ - 1926, /* GL_TEXTURE24 */ - 1928, /* GL_TEXTURE25 */ - 1930, /* GL_TEXTURE26 */ - 1932, /* GL_TEXTURE27 */ - 1934, /* GL_TEXTURE28 */ - 1936, /* GL_TEXTURE29 */ - 1940, /* GL_TEXTURE30 */ - 1942, /* GL_TEXTURE31 */ + 1899, /* GL_TEXTURE0 */ + 1901, /* GL_TEXTURE1 */ + 1923, /* GL_TEXTURE2 */ + 1945, /* GL_TEXTURE3 */ + 1951, /* GL_TEXTURE4 */ + 1953, /* GL_TEXTURE5 */ + 1955, /* GL_TEXTURE6 */ + 1957, /* GL_TEXTURE7 */ + 1959, /* GL_TEXTURE8 */ + 1961, /* GL_TEXTURE9 */ + 1902, /* GL_TEXTURE10 */ + 1904, /* GL_TEXTURE11 */ + 1906, /* GL_TEXTURE12 */ + 1908, /* GL_TEXTURE13 */ + 1910, /* GL_TEXTURE14 */ + 1912, /* GL_TEXTURE15 */ + 1914, /* GL_TEXTURE16 */ + 1916, /* GL_TEXTURE17 */ + 1918, /* GL_TEXTURE18 */ + 1920, /* GL_TEXTURE19 */ + 1924, /* GL_TEXTURE20 */ + 1926, /* GL_TEXTURE21 */ + 1928, /* GL_TEXTURE22 */ + 1930, /* GL_TEXTURE23 */ + 1932, /* GL_TEXTURE24 */ + 1934, /* GL_TEXTURE25 */ + 1936, /* GL_TEXTURE26 */ + 1938, /* GL_TEXTURE27 */ + 1940, /* GL_TEXTURE28 */ + 1942, /* GL_TEXTURE29 */ + 1946, /* GL_TEXTURE30 */ + 1948, /* GL_TEXTURE31 */ 19, /* GL_ACTIVE_TEXTURE */ 166, /* GL_CLIENT_ACTIVE_TEXTURE */ - 1117, /* GL_MAX_TEXTURE_UNITS */ - 2139, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ - 2142, /* GL_TRANSPOSE_PROJECTION_MATRIX */ - 2144, /* GL_TRANSPOSE_TEXTURE_MATRIX */ - 2136, /* GL_TRANSPOSE_COLOR_MATRIX */ - 1875, /* GL_SUBTRACT */ - 1098, /* GL_MAX_RENDERBUFFER_SIZE */ + 1121, /* GL_MAX_TEXTURE_UNITS */ + 2145, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ + 2148, /* GL_TRANSPOSE_PROJECTION_MATRIX */ + 2150, /* GL_TRANSPOSE_TEXTURE_MATRIX */ + 2142, /* GL_TRANSPOSE_COLOR_MATRIX */ + 1881, /* GL_SUBTRACT */ + 1102, /* GL_MAX_RENDERBUFFER_SIZE */ 290, /* GL_COMPRESSED_ALPHA */ 294, /* GL_COMPRESSED_LUMINANCE */ 295, /* GL_COMPRESSED_LUMINANCE_ALPHA */ 292, /* GL_COMPRESSED_INTENSITY */ 300, /* GL_COMPRESSED_RGB */ 301, /* GL_COMPRESSED_RGBA */ - 2016, /* GL_TEXTURE_COMPRESSION_HINT */ - 2093, /* GL_TEXTURE_RECTANGLE */ - 1981, /* GL_TEXTURE_BINDING_RECTANGLE */ - 1506, /* GL_PROXY_TEXTURE_RECTANGLE */ - 1095, /* GL_MAX_RECTANGLE_TEXTURE_SIZE */ - 430, /* GL_DEPTH_STENCIL */ - 2172, /* GL_UNSIGNED_INT_24_8 */ - 1112, /* GL_MAX_TEXTURE_LOD_BIAS */ - 2082, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ - 1114, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ - 2054, /* GL_TEXTURE_FILTER_CONTROL */ - 2072, /* GL_TEXTURE_LOD_BIAS */ + 2022, /* GL_TEXTURE_COMPRESSION_HINT */ + 2099, /* GL_TEXTURE_RECTANGLE */ + 1987, /* GL_TEXTURE_BINDING_RECTANGLE */ + 1511, /* GL_PROXY_TEXTURE_RECTANGLE */ + 1099, /* GL_MAX_RECTANGLE_TEXTURE_SIZE */ + 431, /* GL_DEPTH_STENCIL */ + 2179, /* GL_UNSIGNED_INT_24_8 */ + 1116, /* GL_MAX_TEXTURE_LOD_BIAS */ + 2088, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ + 1118, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ + 2060, /* GL_TEXTURE_FILTER_CONTROL */ + 2078, /* GL_TEXTURE_LOD_BIAS */ 274, /* GL_COMBINE4 */ - 1104, /* GL_MAX_SHININESS_NV */ - 1105, /* GL_MAX_SPOT_EXPONENT_NV */ - 732, /* GL_INCR_WRAP */ - 395, /* GL_DECR_WRAP */ - 1176, /* GL_MODELVIEW1_ARB */ - 1234, /* GL_NORMAL_MAP */ - 1557, /* GL_REFLECTION_MAP */ - 2026, /* GL_TEXTURE_CUBE_MAP */ - 1978, /* GL_TEXTURE_BINDING_CUBE_MAP */ - 2038, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ - 2028, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ - 2041, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ - 2031, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ - 2044, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ - 2034, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ - 1504, /* GL_PROXY_TEXTURE_CUBE_MAP */ - 1034, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ - 1212, /* GL_MULTISAMPLE_FILTER_HINT_NV */ - 1447, /* GL_PRIMITIVE_RESTART_NV */ - 1446, /* GL_PRIMITIVE_RESTART_INDEX_NV */ - 590, /* GL_FOG_DISTANCE_MODE_NV */ - 537, /* GL_EYE_RADIAL_NV */ - 536, /* GL_EYE_PLANE_ABSOLUTE_NV */ + 1108, /* GL_MAX_SHININESS_NV */ + 1109, /* GL_MAX_SPOT_EXPONENT_NV */ + 734, /* GL_INCR_WRAP */ + 396, /* GL_DECR_WRAP */ + 1180, /* GL_MODELVIEW1_ARB */ + 1238, /* GL_NORMAL_MAP */ + 1562, /* GL_REFLECTION_MAP */ + 2032, /* GL_TEXTURE_CUBE_MAP */ + 1984, /* GL_TEXTURE_BINDING_CUBE_MAP */ + 2044, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ + 2034, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ + 2047, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ + 2037, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ + 2050, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ + 2040, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ + 1509, /* GL_PROXY_TEXTURE_CUBE_MAP */ + 1038, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ + 1216, /* GL_MULTISAMPLE_FILTER_HINT_NV */ + 1452, /* GL_PRIMITIVE_RESTART_NV */ + 1451, /* GL_PRIMITIVE_RESTART_INDEX_NV */ + 591, /* GL_FOG_DISTANCE_MODE_NV */ + 538, /* GL_EYE_RADIAL_NV */ + 537, /* GL_EYE_PLANE_ABSOLUTE_NV */ 273, /* GL_COMBINE */ 280, /* GL_COMBINE_RGB */ 275, /* GL_COMBINE_ALPHA */ - 1686, /* GL_RGB_SCALE */ + 1692, /* GL_RGB_SCALE */ 25, /* GL_ADD_SIGNED */ - 768, /* GL_INTERPOLATE */ + 771, /* GL_INTERPOLATE */ 316, /* GL_CONSTANT */ - 1439, /* GL_PRIMARY_COLOR */ - 1436, /* GL_PREVIOUS */ - 1780, /* GL_SOURCE0_RGB */ - 1786, /* GL_SOURCE1_RGB */ - 1792, /* GL_SOURCE2_RGB */ - 1796, /* GL_SOURCE3_RGB_NV */ - 1777, /* GL_SOURCE0_ALPHA */ - 1783, /* GL_SOURCE1_ALPHA */ - 1789, /* GL_SOURCE2_ALPHA */ - 1795, /* GL_SOURCE3_ALPHA_NV */ - 1275, /* GL_OPERAND0_RGB */ - 1281, /* GL_OPERAND1_RGB */ - 1287, /* GL_OPERAND2_RGB */ - 1291, /* GL_OPERAND3_RGB_NV */ - 1272, /* GL_OPERAND0_ALPHA */ - 1278, /* GL_OPERAND1_ALPHA */ - 1284, /* GL_OPERAND2_ALPHA */ - 1290, /* GL_OPERAND3_ALPHA_NV */ + 1444, /* GL_PRIMARY_COLOR */ + 1441, /* GL_PREVIOUS */ + 1786, /* GL_SOURCE0_RGB */ + 1792, /* GL_SOURCE1_RGB */ + 1798, /* GL_SOURCE2_RGB */ + 1802, /* GL_SOURCE3_RGB_NV */ + 1783, /* GL_SOURCE0_ALPHA */ + 1789, /* GL_SOURCE1_ALPHA */ + 1795, /* GL_SOURCE2_ALPHA */ + 1801, /* GL_SOURCE3_ALPHA_NV */ + 1280, /* GL_OPERAND0_RGB */ + 1286, /* GL_OPERAND1_RGB */ + 1292, /* GL_OPERAND2_RGB */ + 1296, /* GL_OPERAND3_RGB_NV */ + 1277, /* GL_OPERAND0_ALPHA */ + 1283, /* GL_OPERAND1_ALPHA */ + 1289, /* GL_OPERAND2_ALPHA */ + 1295, /* GL_OPERAND3_ALPHA_NV */ 137, /* GL_BUFFER_OBJECT_APPLE */ - 2224, /* GL_VERTEX_ARRAY_BINDING */ - 2091, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ - 2092, /* GL_TEXTURE_RANGE_POINTER_APPLE */ - 2301, /* GL_YCBCR_422_APPLE */ - 2213, /* GL_UNSIGNED_SHORT_8_8_APPLE */ - 2215, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ - 2103, /* GL_TEXTURE_STORAGE_HINT_APPLE */ - 1866, /* GL_STORAGE_PRIVATE_APPLE */ - 1865, /* GL_STORAGE_CACHED_APPLE */ - 1867, /* GL_STORAGE_SHARED_APPLE */ - 1767, /* GL_SLICE_ACCUM_SUN */ - 1515, /* GL_QUAD_MESH_SUN */ - 2150, /* GL_TRIANGLE_MESH_SUN */ - 2266, /* GL_VERTEX_PROGRAM_ARB */ - 2277, /* GL_VERTEX_STATE_PROGRAM_NV */ - 2251, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ - 2259, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ - 2261, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ - 2263, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ - 386, /* GL_CURRENT_VERTEX_ATTRIB */ - 1460, /* GL_PROGRAM_LENGTH_ARB */ - 1476, /* GL_PROGRAM_STRING_ARB */ - 1199, /* GL_MODELVIEW_PROJECTION_NV */ - 725, /* GL_IDENTITY_NV */ - 800, /* GL_INVERSE_NV */ - 2141, /* GL_TRANSPOSE_NV */ - 801, /* GL_INVERSE_TRANSPOSE_NV */ - 1079, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ - 1078, /* GL_MAX_PROGRAM_MATRICES_ARB */ - 960, /* GL_MATRIX0_NV */ - 972, /* GL_MATRIX1_NV */ - 984, /* GL_MATRIX2_NV */ - 988, /* GL_MATRIX3_NV */ - 990, /* GL_MATRIX4_NV */ - 992, /* GL_MATRIX5_NV */ - 994, /* GL_MATRIX6_NV */ - 996, /* GL_MATRIX7_NV */ - 369, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */ - 366, /* GL_CURRENT_MATRIX_ARB */ - 1473, /* GL_PROGRAM_POINT_SIZE */ - 2272, /* GL_VERTEX_PROGRAM_TWO_SIDE */ - 1472, /* GL_PROGRAM_PARAMETER_NV */ - 2257, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ - 1478, /* GL_PROGRAM_TARGET_NV */ - 1475, /* GL_PROGRAM_RESIDENT_NV */ - 2113, /* GL_TRACK_MATRIX_NV */ - 2114, /* GL_TRACK_MATRIX_TRANSFORM_NV */ - 2267, /* GL_VERTEX_PROGRAM_BINDING_NV */ - 1454, /* GL_PROGRAM_ERROR_POSITION_ARB */ - 411, /* GL_DEPTH_CLAMP */ - 2232, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ - 2239, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ - 2240, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ - 2241, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ - 2242, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ - 2243, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ - 2244, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ - 2245, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ - 2246, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ - 2247, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ - 2233, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ - 2234, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ - 2235, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ - 2236, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ - 2237, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ - 2238, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ - 908, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ - 915, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ - 916, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ - 917, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */ - 918, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */ - 919, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */ - 920, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */ - 921, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */ - 922, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */ - 923, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */ - 909, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */ - 910, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */ - 911, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */ - 912, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */ - 913, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */ - 914, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */ - 935, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */ - 942, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */ - 943, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */ - 944, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */ - 945, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */ - 946, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */ - 947, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */ - 1453, /* GL_PROGRAM_BINDING_ARB */ - 949, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */ - 950, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */ - 936, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */ - 937, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */ - 938, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */ - 939, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ - 940, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ - 941, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ - 2014, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ - 2011, /* GL_TEXTURE_COMPRESSED */ - 1240, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ + 2231, /* GL_VERTEX_ARRAY_BINDING */ + 2097, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ + 2098, /* GL_TEXTURE_RANGE_POINTER_APPLE */ + 2308, /* GL_YCBCR_422_APPLE */ + 2220, /* GL_UNSIGNED_SHORT_8_8_APPLE */ + 2222, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ + 2109, /* GL_TEXTURE_STORAGE_HINT_APPLE */ + 1872, /* GL_STORAGE_PRIVATE_APPLE */ + 1871, /* GL_STORAGE_CACHED_APPLE */ + 1873, /* GL_STORAGE_SHARED_APPLE */ + 1773, /* GL_SLICE_ACCUM_SUN */ + 1520, /* GL_QUAD_MESH_SUN */ + 2156, /* GL_TRIANGLE_MESH_SUN */ + 2273, /* GL_VERTEX_PROGRAM_ARB */ + 2284, /* GL_VERTEX_STATE_PROGRAM_NV */ + 2258, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ + 2266, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ + 2268, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ + 2270, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ + 387, /* GL_CURRENT_VERTEX_ATTRIB */ + 1465, /* GL_PROGRAM_LENGTH_ARB */ + 1481, /* GL_PROGRAM_STRING_ARB */ + 1203, /* GL_MODELVIEW_PROJECTION_NV */ + 727, /* GL_IDENTITY_NV */ + 803, /* GL_INVERSE_NV */ + 2147, /* GL_TRANSPOSE_NV */ + 804, /* GL_INVERSE_TRANSPOSE_NV */ + 1083, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ + 1082, /* GL_MAX_PROGRAM_MATRICES_ARB */ + 964, /* GL_MATRIX0_NV */ + 976, /* GL_MATRIX1_NV */ + 988, /* GL_MATRIX2_NV */ + 992, /* GL_MATRIX3_NV */ + 994, /* GL_MATRIX4_NV */ + 996, /* GL_MATRIX5_NV */ + 998, /* GL_MATRIX6_NV */ + 1000, /* GL_MATRIX7_NV */ + 370, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */ + 367, /* GL_CURRENT_MATRIX_ARB */ + 1478, /* GL_PROGRAM_POINT_SIZE */ + 2279, /* GL_VERTEX_PROGRAM_TWO_SIDE */ + 1477, /* GL_PROGRAM_PARAMETER_NV */ + 2264, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ + 1483, /* GL_PROGRAM_TARGET_NV */ + 1480, /* GL_PROGRAM_RESIDENT_NV */ + 2119, /* GL_TRACK_MATRIX_NV */ + 2120, /* GL_TRACK_MATRIX_TRANSFORM_NV */ + 2274, /* GL_VERTEX_PROGRAM_BINDING_NV */ + 1459, /* GL_PROGRAM_ERROR_POSITION_ARB */ + 412, /* GL_DEPTH_CLAMP */ + 2239, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ + 2246, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ + 2247, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ + 2248, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ + 2249, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ + 2250, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ + 2251, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ + 2252, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ + 2253, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ + 2254, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ + 2240, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ + 2241, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ + 2242, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ + 2243, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ + 2244, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ + 2245, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ + 912, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ + 919, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ + 920, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ + 921, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */ + 922, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */ + 923, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */ + 924, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */ + 925, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */ + 926, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */ + 927, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */ + 913, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */ + 914, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */ + 915, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */ + 916, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */ + 917, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */ + 918, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */ + 939, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */ + 946, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */ + 947, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */ + 948, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */ + 949, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */ + 950, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */ + 951, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */ + 1458, /* GL_PROGRAM_BINDING_ARB */ + 953, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */ + 954, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */ + 940, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */ + 941, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */ + 942, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */ + 943, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ + 944, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ + 945, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ + 2020, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ + 2017, /* GL_TEXTURE_COMPRESSED */ + 1245, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ 314, /* GL_COMPRESSED_TEXTURE_FORMATS */ - 1139, /* GL_MAX_VERTEX_UNITS_ARB */ + 1143, /* GL_MAX_VERTEX_UNITS_ARB */ 23, /* GL_ACTIVE_VERTEX_UNITS_ARB */ - 2295, /* GL_WEIGHT_SUM_UNITY_ARB */ - 2265, /* GL_VERTEX_BLEND_ARB */ - 388, /* GL_CURRENT_WEIGHT_ARB */ - 2293, /* GL_WEIGHT_ARRAY_TYPE_ARB */ - 2291, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ - 2289, /* GL_WEIGHT_ARRAY_SIZE_ARB */ - 2287, /* GL_WEIGHT_ARRAY_POINTER_ARB */ - 2282, /* GL_WEIGHT_ARRAY_ARB */ - 445, /* GL_DOT3_RGB */ - 446, /* GL_DOT3_RGBA */ + 2302, /* GL_WEIGHT_SUM_UNITY_ARB */ + 2272, /* GL_VERTEX_BLEND_ARB */ + 389, /* GL_CURRENT_WEIGHT_ARB */ + 2300, /* GL_WEIGHT_ARRAY_TYPE_ARB */ + 2298, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ + 2296, /* GL_WEIGHT_ARRAY_SIZE_ARB */ + 2294, /* GL_WEIGHT_ARRAY_POINTER_ARB */ + 2289, /* GL_WEIGHT_ARRAY_ARB */ + 446, /* GL_DOT3_RGB */ + 447, /* GL_DOT3_RGBA */ 308, /* GL_COMPRESSED_RGB_FXT1_3DFX */ 303, /* GL_COMPRESSED_RGBA_FXT1_3DFX */ - 1207, /* GL_MULTISAMPLE_3DFX */ - 1725, /* GL_SAMPLE_BUFFERS_3DFX */ - 1716, /* GL_SAMPLES_3DFX */ - 1187, /* GL_MODELVIEW2_ARB */ - 1190, /* GL_MODELVIEW3_ARB */ - 1191, /* GL_MODELVIEW4_ARB */ - 1192, /* GL_MODELVIEW5_ARB */ - 1193, /* GL_MODELVIEW6_ARB */ - 1194, /* GL_MODELVIEW7_ARB */ - 1195, /* GL_MODELVIEW8_ARB */ - 1196, /* GL_MODELVIEW9_ARB */ - 1166, /* GL_MODELVIEW10_ARB */ - 1167, /* GL_MODELVIEW11_ARB */ - 1168, /* GL_MODELVIEW12_ARB */ - 1169, /* GL_MODELVIEW13_ARB */ - 1170, /* GL_MODELVIEW14_ARB */ - 1171, /* GL_MODELVIEW15_ARB */ - 1172, /* GL_MODELVIEW16_ARB */ - 1173, /* GL_MODELVIEW17_ARB */ - 1174, /* GL_MODELVIEW18_ARB */ - 1175, /* GL_MODELVIEW19_ARB */ - 1177, /* GL_MODELVIEW20_ARB */ - 1178, /* GL_MODELVIEW21_ARB */ - 1179, /* GL_MODELVIEW22_ARB */ - 1180, /* GL_MODELVIEW23_ARB */ - 1181, /* GL_MODELVIEW24_ARB */ - 1182, /* GL_MODELVIEW25_ARB */ - 1183, /* GL_MODELVIEW26_ARB */ - 1184, /* GL_MODELVIEW27_ARB */ - 1185, /* GL_MODELVIEW28_ARB */ - 1186, /* GL_MODELVIEW29_ARB */ - 1188, /* GL_MODELVIEW30_ARB */ - 1189, /* GL_MODELVIEW31_ARB */ - 450, /* GL_DOT3_RGB_EXT */ - 448, /* GL_DOT3_RGBA_EXT */ - 1160, /* GL_MIRROR_CLAMP_EXT */ - 1163, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ - 1202, /* GL_MODULATE_ADD_ATI */ - 1203, /* GL_MODULATE_SIGNED_ADD_ATI */ - 1204, /* GL_MODULATE_SUBTRACT_ATI */ - 2302, /* GL_YCBCR_MESA */ - 1299, /* GL_PACK_INVERT_MESA */ - 391, /* GL_DEBUG_OBJECT_MESA */ - 392, /* GL_DEBUG_PRINT_MESA */ - 390, /* GL_DEBUG_ASSERT_MESA */ + 1211, /* GL_MULTISAMPLE_3DFX */ + 1731, /* GL_SAMPLE_BUFFERS_3DFX */ + 1722, /* GL_SAMPLES_3DFX */ + 1191, /* GL_MODELVIEW2_ARB */ + 1194, /* GL_MODELVIEW3_ARB */ + 1195, /* GL_MODELVIEW4_ARB */ + 1196, /* GL_MODELVIEW5_ARB */ + 1197, /* GL_MODELVIEW6_ARB */ + 1198, /* GL_MODELVIEW7_ARB */ + 1199, /* GL_MODELVIEW8_ARB */ + 1200, /* GL_MODELVIEW9_ARB */ + 1170, /* GL_MODELVIEW10_ARB */ + 1171, /* GL_MODELVIEW11_ARB */ + 1172, /* GL_MODELVIEW12_ARB */ + 1173, /* GL_MODELVIEW13_ARB */ + 1174, /* GL_MODELVIEW14_ARB */ + 1175, /* GL_MODELVIEW15_ARB */ + 1176, /* GL_MODELVIEW16_ARB */ + 1177, /* GL_MODELVIEW17_ARB */ + 1178, /* GL_MODELVIEW18_ARB */ + 1179, /* GL_MODELVIEW19_ARB */ + 1181, /* GL_MODELVIEW20_ARB */ + 1182, /* GL_MODELVIEW21_ARB */ + 1183, /* GL_MODELVIEW22_ARB */ + 1184, /* GL_MODELVIEW23_ARB */ + 1185, /* GL_MODELVIEW24_ARB */ + 1186, /* GL_MODELVIEW25_ARB */ + 1187, /* GL_MODELVIEW26_ARB */ + 1188, /* GL_MODELVIEW27_ARB */ + 1189, /* GL_MODELVIEW28_ARB */ + 1190, /* GL_MODELVIEW29_ARB */ + 1192, /* GL_MODELVIEW30_ARB */ + 1193, /* GL_MODELVIEW31_ARB */ + 451, /* GL_DOT3_RGB_EXT */ + 449, /* GL_DOT3_RGBA_EXT */ + 1164, /* GL_MIRROR_CLAMP_EXT */ + 1167, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ + 1206, /* GL_MODULATE_ADD_ATI */ + 1207, /* GL_MODULATE_SIGNED_ADD_ATI */ + 1208, /* GL_MODULATE_SUBTRACT_ATI */ + 2309, /* GL_YCBCR_MESA */ + 1304, /* GL_PACK_INVERT_MESA */ + 392, /* GL_DEBUG_OBJECT_MESA */ + 393, /* GL_DEBUG_PRINT_MESA */ + 391, /* GL_DEBUG_ASSERT_MESA */ 139, /* GL_BUFFER_SIZE */ 141, /* GL_BUFFER_USAGE */ 145, /* GL_BUMP_ROT_MATRIX_ATI */ 146, /* GL_BUMP_ROT_MATRIX_SIZE_ATI */ 144, /* GL_BUMP_NUM_TEX_UNITS_ATI */ 148, /* GL_BUMP_TEX_UNITS_ATI */ - 510, /* GL_DUDV_ATI */ - 509, /* GL_DU8DV8_ATI */ + 511, /* GL_DUDV_ATI */ + 510, /* GL_DU8DV8_ATI */ 143, /* GL_BUMP_ENVMAP_ATI */ 147, /* GL_BUMP_TARGET_ATI */ - 1243, /* GL_NUM_PROGRAM_BINARY_FORMATS_OES */ - 1451, /* GL_PROGRAM_BINARY_FORMATS_OES */ - 1829, /* GL_STENCIL_BACK_FUNC */ - 1827, /* GL_STENCIL_BACK_FAIL */ - 1831, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ - 1833, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ - 599, /* GL_FRAGMENT_PROGRAM_ARB */ - 1449, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ - 1481, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ - 1480, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ - 1463, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - 1469, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - 1468, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - 1068, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */ - 1093, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */ - 1092, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */ - 1081, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - 1087, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - 1086, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - 1657, /* GL_RGBA32F */ - 1620, /* GL_RGB32F */ - 1648, /* GL_RGBA16F */ - 1612, /* GL_RGB16F */ - 1676, /* GL_RGBA_FLOAT_MODE_ARB */ - 1037, /* GL_MAX_DRAW_BUFFERS */ - 454, /* GL_DRAW_BUFFER0 */ - 457, /* GL_DRAW_BUFFER1 */ - 478, /* GL_DRAW_BUFFER2 */ - 481, /* GL_DRAW_BUFFER3 */ - 484, /* GL_DRAW_BUFFER4 */ - 487, /* GL_DRAW_BUFFER5 */ - 490, /* GL_DRAW_BUFFER6 */ - 493, /* GL_DRAW_BUFFER7 */ - 496, /* GL_DRAW_BUFFER8 */ - 499, /* GL_DRAW_BUFFER9 */ - 458, /* GL_DRAW_BUFFER10 */ - 461, /* GL_DRAW_BUFFER11 */ - 464, /* GL_DRAW_BUFFER12 */ - 467, /* GL_DRAW_BUFFER13 */ - 470, /* GL_DRAW_BUFFER14 */ - 473, /* GL_DRAW_BUFFER15 */ + 1248, /* GL_NUM_PROGRAM_BINARY_FORMATS_OES */ + 1456, /* GL_PROGRAM_BINARY_FORMATS_OES */ + 1835, /* GL_STENCIL_BACK_FUNC */ + 1833, /* GL_STENCIL_BACK_FAIL */ + 1837, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ + 1839, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ + 600, /* GL_FRAGMENT_PROGRAM_ARB */ + 1454, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ + 1486, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ + 1485, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ + 1468, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ + 1474, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ + 1473, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ + 1072, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */ + 1097, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */ + 1096, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */ + 1085, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ + 1091, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ + 1090, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ + 1663, /* GL_RGBA32F */ + 1626, /* GL_RGB32F */ + 1654, /* GL_RGBA16F */ + 1618, /* GL_RGB16F */ + 1682, /* GL_RGBA_FLOAT_MODE_ARB */ + 1041, /* GL_MAX_DRAW_BUFFERS */ + 455, /* GL_DRAW_BUFFER0 */ + 458, /* GL_DRAW_BUFFER1 */ + 479, /* GL_DRAW_BUFFER2 */ + 482, /* GL_DRAW_BUFFER3 */ + 485, /* GL_DRAW_BUFFER4 */ + 488, /* GL_DRAW_BUFFER5 */ + 491, /* GL_DRAW_BUFFER6 */ + 494, /* GL_DRAW_BUFFER7 */ + 497, /* GL_DRAW_BUFFER8 */ + 500, /* GL_DRAW_BUFFER9 */ + 459, /* GL_DRAW_BUFFER10 */ + 462, /* GL_DRAW_BUFFER11 */ + 465, /* GL_DRAW_BUFFER12 */ + 468, /* GL_DRAW_BUFFER13 */ + 471, /* GL_DRAW_BUFFER14 */ + 474, /* GL_DRAW_BUFFER15 */ 97, /* GL_BLEND_EQUATION_ALPHA */ - 1011, /* GL_MATRIX_PALETTE_ARB */ - 1061, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */ - 1064, /* GL_MAX_PALETTE_MATRICES_ARB */ - 372, /* GL_CURRENT_PALETTE_MATRIX_ARB */ - 999, /* GL_MATRIX_INDEX_ARRAY_ARB */ - 367, /* GL_CURRENT_MATRIX_INDEX_ARB */ - 1004, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */ - 1008, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ - 1006, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ - 1002, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ - 2049, /* GL_TEXTURE_DEPTH_SIZE */ - 438, /* GL_DEPTH_TEXTURE_MODE */ - 2006, /* GL_TEXTURE_COMPARE_MODE */ - 2004, /* GL_TEXTURE_COMPARE_FUNC */ + 1015, /* GL_MATRIX_PALETTE_ARB */ + 1065, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */ + 1068, /* GL_MAX_PALETTE_MATRICES_ARB */ + 373, /* GL_CURRENT_PALETTE_MATRIX_ARB */ + 1003, /* GL_MATRIX_INDEX_ARRAY_ARB */ + 368, /* GL_CURRENT_MATRIX_INDEX_ARB */ + 1008, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */ + 1012, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ + 1010, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ + 1006, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ + 2055, /* GL_TEXTURE_DEPTH_SIZE */ + 439, /* GL_DEPTH_TEXTURE_MODE */ + 2012, /* GL_TEXTURE_COMPARE_MODE */ + 2010, /* GL_TEXTURE_COMPARE_FUNC */ 284, /* GL_COMPARE_REF_TO_TEXTURE */ - 1376, /* GL_POINT_SPRITE */ - 346, /* GL_COORD_REPLACE */ - 1381, /* GL_POINT_SPRITE_R_MODE_NV */ - 1521, /* GL_QUERY_COUNTER_BITS */ - 375, /* GL_CURRENT_QUERY */ - 1525, /* GL_QUERY_RESULT */ - 1527, /* GL_QUERY_RESULT_AVAILABLE */ - 1131, /* GL_MAX_VERTEX_ATTRIBS */ - 2255, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ - 436, /* GL_DEPTH_STENCIL_TO_RGBA_NV */ - 435, /* GL_DEPTH_STENCIL_TO_BGRA_NV */ - 1108, /* GL_MAX_TEXTURE_COORDS */ - 1110, /* GL_MAX_TEXTURE_IMAGE_UNITS */ - 1456, /* GL_PROGRAM_ERROR_STRING_ARB */ - 1458, /* GL_PROGRAM_FORMAT_ASCII_ARB */ - 1457, /* GL_PROGRAM_FORMAT_ARB */ - 2105, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ - 408, /* GL_DEPTH_BOUNDS_TEST_EXT */ - 407, /* GL_DEPTH_BOUNDS_EXT */ + 1381, /* GL_POINT_SPRITE */ + 347, /* GL_COORD_REPLACE */ + 1386, /* GL_POINT_SPRITE_R_MODE_NV */ + 1526, /* GL_QUERY_COUNTER_BITS */ + 376, /* GL_CURRENT_QUERY */ + 1530, /* GL_QUERY_RESULT */ + 1532, /* GL_QUERY_RESULT_AVAILABLE */ + 1135, /* GL_MAX_VERTEX_ATTRIBS */ + 2262, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ + 437, /* GL_DEPTH_STENCIL_TO_RGBA_NV */ + 436, /* GL_DEPTH_STENCIL_TO_BGRA_NV */ + 1112, /* GL_MAX_TEXTURE_COORDS */ + 1114, /* GL_MAX_TEXTURE_IMAGE_UNITS */ + 1461, /* GL_PROGRAM_ERROR_STRING_ARB */ + 1463, /* GL_PROGRAM_FORMAT_ASCII_ARB */ + 1462, /* GL_PROGRAM_FORMAT_ARB */ + 2111, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ + 409, /* GL_DEPTH_BOUNDS_TEST_EXT */ + 408, /* GL_DEPTH_BOUNDS_EXT */ 61, /* GL_ARRAY_BUFFER */ - 523, /* GL_ELEMENT_ARRAY_BUFFER */ + 524, /* GL_ELEMENT_ARRAY_BUFFER */ 62, /* GL_ARRAY_BUFFER_BINDING */ - 524, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */ - 2226, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ - 1229, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ + 525, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */ + 2233, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ + 1233, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ 190, /* GL_COLOR_ARRAY_BUFFER_BINDING */ - 736, /* GL_INDEX_ARRAY_BUFFER_BINDING */ - 2019, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ - 519, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */ - 1737, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ - 577, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ - 2283, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ - 2248, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ - 1459, /* GL_PROGRAM_INSTRUCTIONS_ARB */ - 1074, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ - 1465, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - 1083, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - 1479, /* GL_PROGRAM_TEMPORARIES_ARB */ - 1089, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */ - 1467, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ - 1085, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */ - 1471, /* GL_PROGRAM_PARAMETERS_ARB */ - 1088, /* GL_MAX_PROGRAM_PARAMETERS_ARB */ - 1466, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ - 1084, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */ - 1450, /* GL_PROGRAM_ATTRIBS_ARB */ - 1069, /* GL_MAX_PROGRAM_ATTRIBS_ARB */ - 1464, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ - 1082, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */ - 1448, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ - 1067, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */ - 1462, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - 1080, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - 1075, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ - 1071, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ - 1482, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ - 2138, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ - 1544, /* GL_READ_ONLY */ - 2297, /* GL_WRITE_ONLY */ - 1546, /* GL_READ_WRITE */ + 738, /* GL_INDEX_ARRAY_BUFFER_BINDING */ + 2025, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ + 520, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */ + 1743, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ + 578, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ + 2290, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ + 2255, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ + 1464, /* GL_PROGRAM_INSTRUCTIONS_ARB */ + 1078, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ + 1470, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ + 1087, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ + 1484, /* GL_PROGRAM_TEMPORARIES_ARB */ + 1093, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */ + 1472, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ + 1089, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */ + 1476, /* GL_PROGRAM_PARAMETERS_ARB */ + 1092, /* GL_MAX_PROGRAM_PARAMETERS_ARB */ + 1471, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ + 1088, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */ + 1455, /* GL_PROGRAM_ATTRIBS_ARB */ + 1073, /* GL_MAX_PROGRAM_ATTRIBS_ARB */ + 1469, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ + 1086, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */ + 1453, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ + 1071, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */ + 1467, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ + 1084, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ + 1079, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ + 1075, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ + 1487, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ + 2144, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ + 1549, /* GL_READ_ONLY */ + 2304, /* GL_WRITE_ONLY */ + 1551, /* GL_READ_WRITE */ 124, /* GL_BUFFER_ACCESS */ 129, /* GL_BUFFER_MAPPED */ 134, /* GL_BUFFER_MAP_POINTER */ - 2112, /* GL_TIME_ELAPSED_EXT */ - 959, /* GL_MATRIX0_ARB */ - 971, /* GL_MATRIX1_ARB */ - 983, /* GL_MATRIX2_ARB */ - 987, /* GL_MATRIX3_ARB */ - 989, /* GL_MATRIX4_ARB */ - 991, /* GL_MATRIX5_ARB */ - 993, /* GL_MATRIX6_ARB */ - 995, /* GL_MATRIX7_ARB */ - 997, /* GL_MATRIX8_ARB */ - 998, /* GL_MATRIX9_ARB */ - 961, /* GL_MATRIX10_ARB */ - 962, /* GL_MATRIX11_ARB */ - 963, /* GL_MATRIX12_ARB */ - 964, /* GL_MATRIX13_ARB */ - 965, /* GL_MATRIX14_ARB */ - 966, /* GL_MATRIX15_ARB */ - 967, /* GL_MATRIX16_ARB */ - 968, /* GL_MATRIX17_ARB */ - 969, /* GL_MATRIX18_ARB */ - 970, /* GL_MATRIX19_ARB */ - 973, /* GL_MATRIX20_ARB */ - 974, /* GL_MATRIX21_ARB */ - 975, /* GL_MATRIX22_ARB */ - 976, /* GL_MATRIX23_ARB */ - 977, /* GL_MATRIX24_ARB */ - 978, /* GL_MATRIX25_ARB */ - 979, /* GL_MATRIX26_ARB */ - 980, /* GL_MATRIX27_ARB */ - 981, /* GL_MATRIX28_ARB */ - 982, /* GL_MATRIX29_ARB */ - 985, /* GL_MATRIX30_ARB */ - 986, /* GL_MATRIX31_ARB */ - 1870, /* GL_STREAM_DRAW */ - 1872, /* GL_STREAM_READ */ - 1868, /* GL_STREAM_COPY */ - 1819, /* GL_STATIC_DRAW */ - 1821, /* GL_STATIC_READ */ - 1817, /* GL_STATIC_COPY */ - 513, /* GL_DYNAMIC_DRAW */ - 515, /* GL_DYNAMIC_READ */ - 511, /* GL_DYNAMIC_COPY */ - 1339, /* GL_PIXEL_PACK_BUFFER */ - 1343, /* GL_PIXEL_UNPACK_BUFFER */ - 1340, /* GL_PIXEL_PACK_BUFFER_BINDING */ - 1344, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ - 399, /* GL_DEPTH24_STENCIL8 */ - 2101, /* GL_TEXTURE_STENCIL_SIZE */ - 2047, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ - 1070, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ - 1073, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ - 1077, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ - 1076, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ - 2253, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ - 2250, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ - 1016, /* GL_MAX_ARRAY_TEXTURE_LAYERS */ - 1154, /* GL_MIN_PROGRAM_TEXEL_OFFSET */ - 1090, /* GL_MAX_PROGRAM_TEXEL_OFFSET */ - 1861, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ + 2118, /* GL_TIME_ELAPSED_EXT */ + 963, /* GL_MATRIX0_ARB */ + 975, /* GL_MATRIX1_ARB */ + 987, /* GL_MATRIX2_ARB */ + 991, /* GL_MATRIX3_ARB */ + 993, /* GL_MATRIX4_ARB */ + 995, /* GL_MATRIX5_ARB */ + 997, /* GL_MATRIX6_ARB */ + 999, /* GL_MATRIX7_ARB */ + 1001, /* GL_MATRIX8_ARB */ + 1002, /* GL_MATRIX9_ARB */ + 965, /* GL_MATRIX10_ARB */ + 966, /* GL_MATRIX11_ARB */ + 967, /* GL_MATRIX12_ARB */ + 968, /* GL_MATRIX13_ARB */ + 969, /* GL_MATRIX14_ARB */ + 970, /* GL_MATRIX15_ARB */ + 971, /* GL_MATRIX16_ARB */ + 972, /* GL_MATRIX17_ARB */ + 973, /* GL_MATRIX18_ARB */ + 974, /* GL_MATRIX19_ARB */ + 977, /* GL_MATRIX20_ARB */ + 978, /* GL_MATRIX21_ARB */ + 979, /* GL_MATRIX22_ARB */ + 980, /* GL_MATRIX23_ARB */ + 981, /* GL_MATRIX24_ARB */ + 982, /* GL_MATRIX25_ARB */ + 983, /* GL_MATRIX26_ARB */ + 984, /* GL_MATRIX27_ARB */ + 985, /* GL_MATRIX28_ARB */ + 986, /* GL_MATRIX29_ARB */ + 989, /* GL_MATRIX30_ARB */ + 990, /* GL_MATRIX31_ARB */ + 1876, /* GL_STREAM_DRAW */ + 1878, /* GL_STREAM_READ */ + 1874, /* GL_STREAM_COPY */ + 1825, /* GL_STATIC_DRAW */ + 1827, /* GL_STATIC_READ */ + 1823, /* GL_STATIC_COPY */ + 514, /* GL_DYNAMIC_DRAW */ + 516, /* GL_DYNAMIC_READ */ + 512, /* GL_DYNAMIC_COPY */ + 1344, /* GL_PIXEL_PACK_BUFFER */ + 1348, /* GL_PIXEL_UNPACK_BUFFER */ + 1345, /* GL_PIXEL_PACK_BUFFER_BINDING */ + 1349, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ + 400, /* GL_DEPTH24_STENCIL8 */ + 2107, /* GL_TEXTURE_STENCIL_SIZE */ + 2053, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ + 1074, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ + 1077, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ + 1081, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ + 1080, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ + 2260, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ + 2257, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ + 1020, /* GL_MAX_ARRAY_TEXTURE_LAYERS */ + 1158, /* GL_MIN_PROGRAM_TEXEL_OFFSET */ + 1094, /* GL_MAX_PROGRAM_TEXEL_OFFSET */ + 1867, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ 18, /* GL_ACTIVE_STENCIL_FACE_EXT */ - 1161, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ - 1718, /* GL_SAMPLES_PASSED */ - 692, /* GL_GEOMETRY_VERTICES_OUT */ - 686, /* GL_GEOMETRY_INPUT_TYPE */ - 688, /* GL_GEOMETRY_OUTPUT_TYPE */ - 1709, /* GL_SAMPLER_BINDING */ + 1165, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ + 1724, /* GL_SAMPLES_PASSED */ + 693, /* GL_GEOMETRY_VERTICES_OUT */ + 687, /* GL_GEOMETRY_INPUT_TYPE */ + 689, /* GL_GEOMETRY_OUTPUT_TYPE */ + 1715, /* GL_SAMPLER_BINDING */ 164, /* GL_CLAMP_VERTEX_COLOR_ARB */ 156, /* GL_CLAMP_FRAGMENT_COLOR_ARB */ 157, /* GL_CLAMP_READ_COLOR */ - 549, /* GL_FIXED_ONLY */ - 1363, /* GL_POINT_SIZE_ARRAY_TYPE_OES */ - 1362, /* GL_POINT_SIZE_ARRAY_STRIDE_OES */ - 1361, /* GL_POINT_SIZE_ARRAY_POINTER_OES */ - 1198, /* GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES */ - 1485, /* GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES */ - 2081, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ + 550, /* GL_FIXED_ONLY */ + 1368, /* GL_POINT_SIZE_ARRAY_TYPE_OES */ + 1367, /* GL_POINT_SIZE_ARRAY_STRIDE_OES */ + 1366, /* GL_POINT_SIZE_ARRAY_POINTER_OES */ + 1202, /* GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES */ + 1490, /* GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES */ + 2087, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ 138, /* GL_BUFFER_SERIALIZED_MODIFY_APPLE */ 128, /* GL_BUFFER_FLUSHING_UNMAP_APPLE */ - 1561, /* GL_RELEASED_APPLE */ - 2280, /* GL_VOLATILE_APPLE */ - 1600, /* GL_RETAINED_APPLE */ - 2155, /* GL_UNDEFINED_APPLE */ - 1509, /* GL_PURGEABLE_APPLE */ - 600, /* GL_FRAGMENT_SHADER */ - 2275, /* GL_VERTEX_SHADER */ - 1470, /* GL_PROGRAM_OBJECT_ARB */ - 1754, /* GL_SHADER_OBJECT_ARB */ - 1045, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ - 1136, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ - 1127, /* GL_MAX_VARYING_COMPONENTS */ - 1134, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ - 1028, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ - 1259, /* GL_OBJECT_TYPE_ARB */ - 1756, /* GL_SHADER_TYPE */ - 565, /* GL_FLOAT_VEC2 */ - 567, /* GL_FLOAT_VEC3 */ - 569, /* GL_FLOAT_VEC4 */ - 788, /* GL_INT_VEC2 */ - 790, /* GL_INT_VEC3 */ - 792, /* GL_INT_VEC4 */ + 1566, /* GL_RELEASED_APPLE */ + 2287, /* GL_VOLATILE_APPLE */ + 1606, /* GL_RETAINED_APPLE */ + 2161, /* GL_UNDEFINED_APPLE */ + 1514, /* GL_PURGEABLE_APPLE */ + 601, /* GL_FRAGMENT_SHADER */ + 2282, /* GL_VERTEX_SHADER */ + 1475, /* GL_PROGRAM_OBJECT_ARB */ + 1760, /* GL_SHADER_OBJECT_ARB */ + 1049, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ + 1140, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ + 1131, /* GL_MAX_VARYING_COMPONENTS */ + 1138, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ + 1032, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ + 1264, /* GL_OBJECT_TYPE_ARB */ + 1762, /* GL_SHADER_TYPE */ + 566, /* GL_FLOAT_VEC2 */ + 568, /* GL_FLOAT_VEC3 */ + 570, /* GL_FLOAT_VEC4 */ + 791, /* GL_INT_VEC2 */ + 793, /* GL_INT_VEC3 */ + 795, /* GL_INT_VEC4 */ 116, /* GL_BOOL */ 118, /* GL_BOOL_VEC2 */ 120, /* GL_BOOL_VEC3 */ 122, /* GL_BOOL_VEC4 */ - 553, /* GL_FLOAT_MAT2 */ - 557, /* GL_FLOAT_MAT3 */ - 561, /* GL_FLOAT_MAT4 */ - 1693, /* GL_SAMPLER_1D */ - 1699, /* GL_SAMPLER_2D */ - 1707, /* GL_SAMPLER_3D */ - 1712, /* GL_SAMPLER_CUBE */ - 1698, /* GL_SAMPLER_1D_SHADOW */ - 1706, /* GL_SAMPLER_2D_SHADOW */ - 1704, /* GL_SAMPLER_2D_RECT */ - 1705, /* GL_SAMPLER_2D_RECT_SHADOW */ - 555, /* GL_FLOAT_MAT2x3 */ - 556, /* GL_FLOAT_MAT2x4 */ - 559, /* GL_FLOAT_MAT3x2 */ - 560, /* GL_FLOAT_MAT3x4 */ - 563, /* GL_FLOAT_MAT4x2 */ - 564, /* GL_FLOAT_MAT4x3 */ - 397, /* GL_DELETE_STATUS */ + 554, /* GL_FLOAT_MAT2 */ + 558, /* GL_FLOAT_MAT3 */ + 562, /* GL_FLOAT_MAT4 */ + 1699, /* GL_SAMPLER_1D */ + 1705, /* GL_SAMPLER_2D */ + 1713, /* GL_SAMPLER_3D */ + 1718, /* GL_SAMPLER_CUBE */ + 1704, /* GL_SAMPLER_1D_SHADOW */ + 1712, /* GL_SAMPLER_2D_SHADOW */ + 1710, /* GL_SAMPLER_2D_RECT */ + 1711, /* GL_SAMPLER_2D_RECT_SHADOW */ + 556, /* GL_FLOAT_MAT2x3 */ + 557, /* GL_FLOAT_MAT2x4 */ + 560, /* GL_FLOAT_MAT3x2 */ + 561, /* GL_FLOAT_MAT3x4 */ + 564, /* GL_FLOAT_MAT4x2 */ + 565, /* GL_FLOAT_MAT4x3 */ + 398, /* GL_DELETE_STATUS */ 289, /* GL_COMPILE_STATUS */ - 849, /* GL_LINK_STATUS */ - 2220, /* GL_VALIDATE_STATUS */ - 748, /* GL_INFO_LOG_LENGTH */ + 852, /* GL_LINK_STATUS */ + 2227, /* GL_VALIDATE_STATUS */ + 750, /* GL_INFO_LOG_LENGTH */ 64, /* GL_ATTACHED_SHADERS */ 21, /* GL_ACTIVE_UNIFORMS */ 22, /* GL_ACTIVE_UNIFORM_MAX_LENGTH */ - 1755, /* GL_SHADER_SOURCE_LENGTH */ + 1761, /* GL_SHADER_SOURCE_LENGTH */ 15, /* GL_ACTIVE_ATTRIBUTES */ 16, /* GL_ACTIVE_ATTRIBUTE_MAX_LENGTH */ - 602, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ - 1758, /* GL_SHADING_LANGUAGE_VERSION */ - 374, /* GL_CURRENT_PROGRAM */ - 1308, /* GL_PALETTE4_RGB8_OES */ - 1310, /* GL_PALETTE4_RGBA8_OES */ - 1306, /* GL_PALETTE4_R5_G6_B5_OES */ - 1309, /* GL_PALETTE4_RGBA4_OES */ - 1307, /* GL_PALETTE4_RGB5_A1_OES */ - 1313, /* GL_PALETTE8_RGB8_OES */ - 1315, /* GL_PALETTE8_RGBA8_OES */ - 1311, /* GL_PALETTE8_R5_G6_B5_OES */ - 1314, /* GL_PALETTE8_RGBA4_OES */ - 1312, /* GL_PALETTE8_RGB5_A1_OES */ - 729, /* GL_IMPLEMENTATION_COLOR_READ_TYPE */ - 727, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT */ - 1360, /* GL_POINT_SIZE_ARRAY_OES */ - 2025, /* GL_TEXTURE_CROP_RECT_OES */ - 1000, /* GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES */ - 1359, /* GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES */ - 2203, /* GL_UNSIGNED_NORMALIZED */ - 1958, /* GL_TEXTURE_1D_ARRAY */ - 1495, /* GL_PROXY_TEXTURE_1D_ARRAY */ - 1961, /* GL_TEXTURE_2D_ARRAY */ - 1499, /* GL_PROXY_TEXTURE_2D_ARRAY */ - 1969, /* GL_TEXTURE_BINDING_1D_ARRAY */ - 1972, /* GL_TEXTURE_BINDING_2D_ARRAY */ - 1052, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS */ - 1989, /* GL_TEXTURE_BUFFER */ - 1106, /* GL_MAX_TEXTURE_BUFFER_SIZE */ - 1976, /* GL_TEXTURE_BINDING_BUFFER */ - 1991, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ - 1993, /* GL_TEXTURE_BUFFER_FORMAT */ - 1532, /* GL_R11F_G11F_B10F */ - 2169, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ - 1643, /* GL_RGB9_E5 */ - 2178, /* GL_UNSIGNED_INT_5_9_9_9_REV */ - 2099, /* GL_TEXTURE_SHARED_SIZE */ - 1811, /* GL_SRGB */ - 1812, /* GL_SRGB8 */ - 1814, /* GL_SRGB_ALPHA */ - 1813, /* GL_SRGB8_ALPHA8 */ - 1771, /* GL_SLUMINANCE_ALPHA */ - 1770, /* GL_SLUMINANCE8_ALPHA8 */ - 1768, /* GL_SLUMINANCE */ - 1769, /* GL_SLUMINANCE8 */ + 603, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ + 1764, /* GL_SHADING_LANGUAGE_VERSION */ + 375, /* GL_CURRENT_PROGRAM */ + 1313, /* GL_PALETTE4_RGB8_OES */ + 1315, /* GL_PALETTE4_RGBA8_OES */ + 1311, /* GL_PALETTE4_R5_G6_B5_OES */ + 1314, /* GL_PALETTE4_RGBA4_OES */ + 1312, /* GL_PALETTE4_RGB5_A1_OES */ + 1318, /* GL_PALETTE8_RGB8_OES */ + 1320, /* GL_PALETTE8_RGBA8_OES */ + 1316, /* GL_PALETTE8_R5_G6_B5_OES */ + 1319, /* GL_PALETTE8_RGBA4_OES */ + 1317, /* GL_PALETTE8_RGB5_A1_OES */ + 731, /* GL_IMPLEMENTATION_COLOR_READ_TYPE */ + 729, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT */ + 1365, /* GL_POINT_SIZE_ARRAY_OES */ + 2031, /* GL_TEXTURE_CROP_RECT_OES */ + 1004, /* GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES */ + 1364, /* GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES */ + 2210, /* GL_UNSIGNED_NORMALIZED */ + 1964, /* GL_TEXTURE_1D_ARRAY */ + 1500, /* GL_PROXY_TEXTURE_1D_ARRAY */ + 1967, /* GL_TEXTURE_2D_ARRAY */ + 1504, /* GL_PROXY_TEXTURE_2D_ARRAY */ + 1975, /* GL_TEXTURE_BINDING_1D_ARRAY */ + 1978, /* GL_TEXTURE_BINDING_2D_ARRAY */ + 1056, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS */ + 1995, /* GL_TEXTURE_BUFFER */ + 1110, /* GL_MAX_TEXTURE_BUFFER_SIZE */ + 1982, /* GL_TEXTURE_BINDING_BUFFER */ + 1997, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ + 1999, /* GL_TEXTURE_BUFFER_FORMAT */ + 1537, /* GL_R11F_G11F_B10F */ + 2176, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ + 1649, /* GL_RGB9_E5 */ + 2185, /* GL_UNSIGNED_INT_5_9_9_9_REV */ + 2105, /* GL_TEXTURE_SHARED_SIZE */ + 1817, /* GL_SRGB */ + 1818, /* GL_SRGB8 */ + 1820, /* GL_SRGB_ALPHA */ + 1819, /* GL_SRGB8_ALPHA8 */ + 1777, /* GL_SLUMINANCE_ALPHA */ + 1776, /* GL_SLUMINANCE8_ALPHA8 */ + 1774, /* GL_SLUMINANCE */ + 1775, /* GL_SLUMINANCE8 */ 312, /* GL_COMPRESSED_SRGB */ 313, /* GL_COMPRESSED_SRGB_ALPHA */ 310, /* GL_COMPRESSED_SLUMINANCE */ 311, /* GL_COMPRESSED_SLUMINANCE_ALPHA */ - 2134, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ - 2123, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ - 1125, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS */ - 2132, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ - 2128, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ - 2126, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ - 1442, /* GL_PRIMITIVES_GENERATED */ - 2130, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ - 1536, /* GL_RASTERIZER_DISCARD */ - 1121, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS */ - 1123, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS */ - 766, /* GL_INTERLEAVED_ATTRIBS */ - 1747, /* GL_SEPARATE_ATTRIBS */ - 2118, /* GL_TRANSFORM_FEEDBACK_BUFFER */ - 2120, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ - 1378, /* GL_POINT_SPRITE_COORD_ORIGIN */ - 857, /* GL_LOWER_LEFT */ - 2217, /* GL_UPPER_LEFT */ - 1835, /* GL_STENCIL_BACK_REF */ - 1836, /* GL_STENCIL_BACK_VALUE_MASK */ - 1837, /* GL_STENCIL_BACK_WRITEMASK */ - 503, /* GL_DRAW_FRAMEBUFFER_BINDING */ - 1566, /* GL_RENDERBUFFER_BINDING */ - 1540, /* GL_READ_FRAMEBUFFER */ - 502, /* GL_DRAW_FRAMEBUFFER */ - 1541, /* GL_READ_FRAMEBUFFER_BINDING */ - 1585, /* GL_RENDERBUFFER_SAMPLES */ - 616, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */ - 613, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */ - 628, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */ - 623, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE */ - 626, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */ - 634, /* GL_FRAMEBUFFER_COMPLETE */ - 639, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT */ - 654, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT */ - 648, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */ - 643, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */ - 649, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */ - 645, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER */ - 659, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER */ - 665, /* GL_FRAMEBUFFER_UNSUPPORTED */ - 663, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */ - 1024, /* GL_MAX_COLOR_ATTACHMENTS */ + 2140, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ + 2129, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ + 1129, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS */ + 2138, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ + 2134, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ + 2132, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ + 1447, /* GL_PRIMITIVES_GENERATED */ + 2136, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ + 1541, /* GL_RASTERIZER_DISCARD */ + 1125, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS */ + 1127, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS */ + 769, /* GL_INTERLEAVED_ATTRIBS */ + 1753, /* GL_SEPARATE_ATTRIBS */ + 2124, /* GL_TRANSFORM_FEEDBACK_BUFFER */ + 2126, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ + 1383, /* GL_POINT_SPRITE_COORD_ORIGIN */ + 861, /* GL_LOWER_LEFT */ + 2224, /* GL_UPPER_LEFT */ + 1841, /* GL_STENCIL_BACK_REF */ + 1842, /* GL_STENCIL_BACK_VALUE_MASK */ + 1843, /* GL_STENCIL_BACK_WRITEMASK */ + 504, /* GL_DRAW_FRAMEBUFFER_BINDING */ + 1571, /* GL_RENDERBUFFER_BINDING */ + 1545, /* GL_READ_FRAMEBUFFER */ + 503, /* GL_DRAW_FRAMEBUFFER */ + 1546, /* GL_READ_FRAMEBUFFER_BINDING */ + 1590, /* GL_RENDERBUFFER_SAMPLES */ + 617, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */ + 614, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */ + 629, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */ + 624, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE */ + 627, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */ + 635, /* GL_FRAMEBUFFER_COMPLETE */ + 640, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT */ + 655, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT */ + 649, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */ + 644, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */ + 650, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */ + 646, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER */ + 660, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER */ + 666, /* GL_FRAMEBUFFER_UNSUPPORTED */ + 664, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */ + 1028, /* GL_MAX_COLOR_ATTACHMENTS */ 196, /* GL_COLOR_ATTACHMENT0 */ 199, /* GL_COLOR_ATTACHMENT1 */ 213, /* GL_COLOR_ATTACHMENT2 */ @@ -6034,184 +6054,184 @@ static const unsigned reduced_enums[1556] = 206, /* GL_COLOR_ATTACHMENT13 */ 208, /* GL_COLOR_ATTACHMENT14 */ 210, /* GL_COLOR_ATTACHMENT15 */ - 402, /* GL_DEPTH_ATTACHMENT */ - 1824, /* GL_STENCIL_ATTACHMENT */ - 604, /* GL_FRAMEBUFFER */ - 1563, /* GL_RENDERBUFFER */ - 1589, /* GL_RENDERBUFFER_WIDTH */ - 1576, /* GL_RENDERBUFFER_HEIGHT */ - 1579, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ - 1856, /* GL_STENCIL_INDEX_EXT */ - 1845, /* GL_STENCIL_INDEX1 */ - 1850, /* GL_STENCIL_INDEX4 */ - 1853, /* GL_STENCIL_INDEX8 */ - 1846, /* GL_STENCIL_INDEX16 */ - 1583, /* GL_RENDERBUFFER_RED_SIZE */ - 1574, /* GL_RENDERBUFFER_GREEN_SIZE */ - 1569, /* GL_RENDERBUFFER_BLUE_SIZE */ - 1564, /* GL_RENDERBUFFER_ALPHA_SIZE */ - 1571, /* GL_RENDERBUFFER_DEPTH_SIZE */ - 1587, /* GL_RENDERBUFFER_STENCIL_SIZE */ - 657, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ - 1101, /* GL_MAX_SAMPLES */ - 2061, /* GL_TEXTURE_GEN_STR_OES */ - 703, /* GL_HALF_FLOAT_OES */ - 1630, /* GL_RGB565_OES */ - 1660, /* GL_RGBA32UI */ - 1623, /* GL_RGB32UI */ + 403, /* GL_DEPTH_ATTACHMENT */ + 1830, /* GL_STENCIL_ATTACHMENT */ + 605, /* GL_FRAMEBUFFER */ + 1568, /* GL_RENDERBUFFER */ + 1594, /* GL_RENDERBUFFER_WIDTH */ + 1581, /* GL_RENDERBUFFER_HEIGHT */ + 1584, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ + 1862, /* GL_STENCIL_INDEX_EXT */ + 1851, /* GL_STENCIL_INDEX1 */ + 1856, /* GL_STENCIL_INDEX4 */ + 1859, /* GL_STENCIL_INDEX8 */ + 1852, /* GL_STENCIL_INDEX16 */ + 1588, /* GL_RENDERBUFFER_RED_SIZE */ + 1579, /* GL_RENDERBUFFER_GREEN_SIZE */ + 1574, /* GL_RENDERBUFFER_BLUE_SIZE */ + 1569, /* GL_RENDERBUFFER_ALPHA_SIZE */ + 1576, /* GL_RENDERBUFFER_DEPTH_SIZE */ + 1592, /* GL_RENDERBUFFER_STENCIL_SIZE */ + 658, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ + 1105, /* GL_MAX_SAMPLES */ + 2067, /* GL_TEXTURE_GEN_STR_OES */ + 705, /* GL_HALF_FLOAT_OES */ + 1636, /* GL_RGB565_OES */ + 1666, /* GL_RGBA32UI */ + 1629, /* GL_RGB32UI */ 40, /* GL_ALPHA32UI_EXT */ - 758, /* GL_INTENSITY32UI_EXT */ - 874, /* GL_LUMINANCE32UI_EXT */ - 891, /* GL_LUMINANCE_ALPHA32UI_EXT */ - 1651, /* GL_RGBA16UI */ - 1615, /* GL_RGB16UI */ + 761, /* GL_INTENSITY32UI_EXT */ + 878, /* GL_LUMINANCE32UI_EXT */ + 895, /* GL_LUMINANCE_ALPHA32UI_EXT */ + 1657, /* GL_RGBA16UI */ + 1621, /* GL_RGB16UI */ 37, /* GL_ALPHA16UI_EXT */ - 755, /* GL_INTENSITY16UI_EXT */ - 869, /* GL_LUMINANCE16UI_EXT */ - 889, /* GL_LUMINANCE_ALPHA16UI_EXT */ - 1670, /* GL_RGBA8UI */ - 1638, /* GL_RGB8UI */ + 758, /* GL_INTENSITY16UI_EXT */ + 873, /* GL_LUMINANCE16UI_EXT */ + 893, /* GL_LUMINANCE_ALPHA16UI_EXT */ + 1676, /* GL_RGBA8UI */ + 1644, /* GL_RGB8UI */ 45, /* GL_ALPHA8UI_EXT */ - 763, /* GL_INTENSITY8UI_EXT */ - 883, /* GL_LUMINANCE8UI_EXT */ - 893, /* GL_LUMINANCE_ALPHA8UI_EXT */ - 1658, /* GL_RGBA32I */ - 1621, /* GL_RGB32I */ + 766, /* GL_INTENSITY8UI_EXT */ + 887, /* GL_LUMINANCE8UI_EXT */ + 897, /* GL_LUMINANCE_ALPHA8UI_EXT */ + 1664, /* GL_RGBA32I */ + 1627, /* GL_RGB32I */ 39, /* GL_ALPHA32I_EXT */ - 757, /* GL_INTENSITY32I_EXT */ - 873, /* GL_LUMINANCE32I_EXT */ - 890, /* GL_LUMINANCE_ALPHA32I_EXT */ - 1649, /* GL_RGBA16I */ - 1613, /* GL_RGB16I */ + 760, /* GL_INTENSITY32I_EXT */ + 877, /* GL_LUMINANCE32I_EXT */ + 894, /* GL_LUMINANCE_ALPHA32I_EXT */ + 1655, /* GL_RGBA16I */ + 1619, /* GL_RGB16I */ 36, /* GL_ALPHA16I_EXT */ - 754, /* GL_INTENSITY16I_EXT */ - 868, /* GL_LUMINANCE16I_EXT */ - 888, /* GL_LUMINANCE_ALPHA16I_EXT */ - 1668, /* GL_RGBA8I */ - 1636, /* GL_RGB8I */ + 757, /* GL_INTENSITY16I_EXT */ + 872, /* GL_LUMINANCE16I_EXT */ + 892, /* GL_LUMINANCE_ALPHA16I_EXT */ + 1674, /* GL_RGBA8I */ + 1642, /* GL_RGB8I */ 44, /* GL_ALPHA8I_EXT */ - 762, /* GL_INTENSITY8I_EXT */ - 882, /* GL_LUMINANCE8I_EXT */ - 892, /* GL_LUMINANCE_ALPHA8I_EXT */ - 1553, /* GL_RED_INTEGER */ - 699, /* GL_GREEN_INTEGER */ + 765, /* GL_INTENSITY8I_EXT */ + 886, /* GL_LUMINANCE8I_EXT */ + 896, /* GL_LUMINANCE_ALPHA8I_EXT */ + 1558, /* GL_RED_INTEGER */ + 700, /* GL_GREEN_INTEGER */ 113, /* GL_BLUE_INTEGER */ 49, /* GL_ALPHA_INTEGER_EXT */ - 1683, /* GL_RGB_INTEGER */ - 1677, /* GL_RGBA_INTEGER */ + 1689, /* GL_RGB_INTEGER */ + 1683, /* GL_RGBA_INTEGER */ 84, /* GL_BGR_INTEGER */ 82, /* GL_BGRA_INTEGER */ - 895, /* GL_LUMINANCE_INTEGER_EXT */ - 894, /* GL_LUMINANCE_ALPHA_INTEGER_EXT */ - 1679, /* GL_RGBA_INTEGER_MODE_EXT */ - 611, /* GL_FRAMEBUFFER_ATTACHMENT_LAYERED */ - 652, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS */ - 651, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB */ - 1694, /* GL_SAMPLER_1D_ARRAY */ - 1700, /* GL_SAMPLER_2D_ARRAY */ - 1710, /* GL_SAMPLER_BUFFER */ - 1696, /* GL_SAMPLER_1D_ARRAY_SHADOW */ - 1702, /* GL_SAMPLER_2D_ARRAY_SHADOW */ - 1713, /* GL_SAMPLER_CUBE_SHADOW */ - 2197, /* GL_UNSIGNED_INT_VEC2 */ - 2199, /* GL_UNSIGNED_INT_VEC3 */ - 2201, /* GL_UNSIGNED_INT_VEC4 */ - 772, /* GL_INT_SAMPLER_1D */ - 776, /* GL_INT_SAMPLER_2D */ - 782, /* GL_INT_SAMPLER_3D */ - 786, /* GL_INT_SAMPLER_CUBE */ - 780, /* GL_INT_SAMPLER_2D_RECT */ - 773, /* GL_INT_SAMPLER_1D_ARRAY */ - 777, /* GL_INT_SAMPLER_2D_ARRAY */ - 784, /* GL_INT_SAMPLER_BUFFER */ - 2181, /* GL_UNSIGNED_INT_SAMPLER_1D */ - 2185, /* GL_UNSIGNED_INT_SAMPLER_2D */ - 2191, /* GL_UNSIGNED_INT_SAMPLER_3D */ - 2195, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ - 2189, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ - 2182, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ - 2186, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ - 2193, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ - 690, /* GL_GEOMETRY_SHADER */ - 693, /* GL_GEOMETRY_VERTICES_OUT_ARB */ - 687, /* GL_GEOMETRY_INPUT_TYPE_ARB */ - 689, /* GL_GEOMETRY_OUTPUT_TYPE_ARB */ - 1058, /* GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB */ - 1141, /* GL_MAX_VERTEX_VARYING_COMPONENTS_ARB */ - 1056, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS */ - 1050, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES */ - 1054, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS */ - 858, /* GL_LOW_FLOAT */ - 1143, /* GL_MEDIUM_FLOAT */ - 704, /* GL_HIGH_FLOAT */ - 859, /* GL_LOW_INT */ - 1144, /* GL_MEDIUM_INT */ - 705, /* GL_HIGH_INT */ - 2171, /* GL_UNSIGNED_INT_10_10_10_2_OES */ - 771, /* GL_INT_10_10_10_2_OES */ - 1752, /* GL_SHADER_BINARY_FORMATS */ - 1244, /* GL_NUM_SHADER_BINARY_FORMATS */ - 1753, /* GL_SHADER_COMPILER */ - 1138, /* GL_MAX_VERTEX_UNIFORM_VECTORS */ - 1130, /* GL_MAX_VARYING_VECTORS */ - 1047, /* GL_MAX_FRAGMENT_UNIFORM_VECTORS */ - 1529, /* GL_QUERY_WAIT */ - 1523, /* GL_QUERY_NO_WAIT */ - 1519, /* GL_QUERY_BY_REGION_WAIT */ - 1517, /* GL_QUERY_BY_REGION_NO_WAIT */ - 2116, /* GL_TRANSFORM_FEEDBACK */ - 2125, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ - 2119, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ - 2117, /* GL_TRANSFORM_FEEDBACK_BINDING */ - 1513, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION */ - 545, /* GL_FIRST_VERTEX_CONVENTION */ - 804, /* GL_LAST_VERTEX_CONVENTION */ - 1487, /* GL_PROVOKING_VERTEX */ - 353, /* GL_COPY_READ_BUFFER */ - 354, /* GL_COPY_WRITE_BUFFER */ - 1556, /* GL_RED_SNORM */ - 1690, /* GL_RG_SNORM */ - 1689, /* GL_RGB_SNORM */ - 1682, /* GL_RGBA_SNORM */ - 1535, /* GL_R8_SNORM */ - 1603, /* GL_RG8_SNORM */ - 1642, /* GL_RGB8_SNORM */ - 1674, /* GL_RGBA8_SNORM */ - 1533, /* GL_R16_SNORM */ - 1602, /* GL_RG16_SNORM */ - 1618, /* GL_RGB16_SNORM */ - 1654, /* GL_RGBA16_SNORM */ - 1764, /* GL_SIGNED_NORMALIZED */ - 1444, /* GL_PRIMITIVE_RESTART */ - 1445, /* GL_PRIMITIVE_RESTART_INDEX */ - 1103, /* GL_MAX_SERVER_WAIT_TIMEOUT */ - 1258, /* GL_OBJECT_TYPE */ - 1877, /* GL_SYNC_CONDITION */ - 1882, /* GL_SYNC_STATUS */ - 1879, /* GL_SYNC_FLAGS */ - 1878, /* GL_SYNC_FENCE */ - 1881, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ - 2164, /* GL_UNSIGNALED */ - 1763, /* GL_SIGNALED */ + 899, /* GL_LUMINANCE_INTEGER_EXT */ + 898, /* GL_LUMINANCE_ALPHA_INTEGER_EXT */ + 1685, /* GL_RGBA_INTEGER_MODE_EXT */ + 612, /* GL_FRAMEBUFFER_ATTACHMENT_LAYERED */ + 653, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS */ + 652, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB */ + 1700, /* GL_SAMPLER_1D_ARRAY */ + 1706, /* GL_SAMPLER_2D_ARRAY */ + 1716, /* GL_SAMPLER_BUFFER */ + 1702, /* GL_SAMPLER_1D_ARRAY_SHADOW */ + 1708, /* GL_SAMPLER_2D_ARRAY_SHADOW */ + 1719, /* GL_SAMPLER_CUBE_SHADOW */ + 2204, /* GL_UNSIGNED_INT_VEC2 */ + 2206, /* GL_UNSIGNED_INT_VEC3 */ + 2208, /* GL_UNSIGNED_INT_VEC4 */ + 775, /* GL_INT_SAMPLER_1D */ + 779, /* GL_INT_SAMPLER_2D */ + 785, /* GL_INT_SAMPLER_3D */ + 789, /* GL_INT_SAMPLER_CUBE */ + 783, /* GL_INT_SAMPLER_2D_RECT */ + 776, /* GL_INT_SAMPLER_1D_ARRAY */ + 780, /* GL_INT_SAMPLER_2D_ARRAY */ + 787, /* GL_INT_SAMPLER_BUFFER */ + 2188, /* GL_UNSIGNED_INT_SAMPLER_1D */ + 2192, /* GL_UNSIGNED_INT_SAMPLER_2D */ + 2198, /* GL_UNSIGNED_INT_SAMPLER_3D */ + 2202, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ + 2196, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ + 2189, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ + 2193, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ + 2200, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ + 691, /* GL_GEOMETRY_SHADER */ + 694, /* GL_GEOMETRY_VERTICES_OUT_ARB */ + 688, /* GL_GEOMETRY_INPUT_TYPE_ARB */ + 690, /* GL_GEOMETRY_OUTPUT_TYPE_ARB */ + 1062, /* GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB */ + 1145, /* GL_MAX_VERTEX_VARYING_COMPONENTS_ARB */ + 1060, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS */ + 1054, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES */ + 1058, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS */ + 862, /* GL_LOW_FLOAT */ + 1147, /* GL_MEDIUM_FLOAT */ + 706, /* GL_HIGH_FLOAT */ + 863, /* GL_LOW_INT */ + 1148, /* GL_MEDIUM_INT */ + 707, /* GL_HIGH_INT */ + 2178, /* GL_UNSIGNED_INT_10_10_10_2_OES */ + 774, /* GL_INT_10_10_10_2_OES */ + 1758, /* GL_SHADER_BINARY_FORMATS */ + 1249, /* GL_NUM_SHADER_BINARY_FORMATS */ + 1759, /* GL_SHADER_COMPILER */ + 1142, /* GL_MAX_VERTEX_UNIFORM_VECTORS */ + 1134, /* GL_MAX_VARYING_VECTORS */ + 1051, /* GL_MAX_FRAGMENT_UNIFORM_VECTORS */ + 1534, /* GL_QUERY_WAIT */ + 1528, /* GL_QUERY_NO_WAIT */ + 1524, /* GL_QUERY_BY_REGION_WAIT */ + 1522, /* GL_QUERY_BY_REGION_NO_WAIT */ + 2122, /* GL_TRANSFORM_FEEDBACK */ + 2131, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ + 2125, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ + 2123, /* GL_TRANSFORM_FEEDBACK_BINDING */ + 1518, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION */ + 546, /* GL_FIRST_VERTEX_CONVENTION */ + 807, /* GL_LAST_VERTEX_CONVENTION */ + 1492, /* GL_PROVOKING_VERTEX */ + 354, /* GL_COPY_READ_BUFFER */ + 355, /* GL_COPY_WRITE_BUFFER */ + 1561, /* GL_RED_SNORM */ + 1696, /* GL_RG_SNORM */ + 1695, /* GL_RGB_SNORM */ + 1688, /* GL_RGBA_SNORM */ + 1540, /* GL_R8_SNORM */ + 1609, /* GL_RG8_SNORM */ + 1648, /* GL_RGB8_SNORM */ + 1680, /* GL_RGBA8_SNORM */ + 1538, /* GL_R16_SNORM */ + 1608, /* GL_RG16_SNORM */ + 1624, /* GL_RGB16_SNORM */ + 1660, /* GL_RGBA16_SNORM */ + 1770, /* GL_SIGNED_NORMALIZED */ + 1449, /* GL_PRIMITIVE_RESTART */ + 1450, /* GL_PRIMITIVE_RESTART_INDEX */ + 1107, /* GL_MAX_SERVER_WAIT_TIMEOUT */ + 1263, /* GL_OBJECT_TYPE */ + 1883, /* GL_SYNC_CONDITION */ + 1888, /* GL_SYNC_STATUS */ + 1885, /* GL_SYNC_FLAGS */ + 1884, /* GL_SYNC_FENCE */ + 1887, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ + 2171, /* GL_UNSIGNALED */ + 1769, /* GL_SIGNALED */ 54, /* GL_ALREADY_SIGNALED */ - 2111, /* GL_TIMEOUT_EXPIRED */ + 2117, /* GL_TIMEOUT_EXPIRED */ 315, /* GL_CONDITION_SATISFIED */ - 2281, /* GL_WAIT_FAILED */ + 2288, /* GL_WAIT_FAILED */ 126, /* GL_BUFFER_ACCESS_FLAGS */ 132, /* GL_BUFFER_MAP_LENGTH */ 133, /* GL_BUFFER_MAP_OFFSET */ - 1133, /* GL_MAX_VERTEX_OUTPUT_COMPONENTS */ - 1048, /* GL_MAX_GEOMETRY_INPUT_COMPONENTS */ - 1049, /* GL_MAX_GEOMETRY_OUTPUT_COMPONENTS */ - 1044, /* GL_MAX_FRAGMENT_INPUT_COMPONENTS */ - 329, /* GL_CONTEXT_PROFILE_MASK */ - 530, /* GL_EVAL_BIT */ - 1538, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ - 851, /* GL_LIST_BIT */ - 1984, /* GL_TEXTURE_BIT */ - 1733, /* GL_SCISSOR_BIT */ + 1137, /* GL_MAX_VERTEX_OUTPUT_COMPONENTS */ + 1052, /* GL_MAX_GEOMETRY_INPUT_COMPONENTS */ + 1053, /* GL_MAX_GEOMETRY_OUTPUT_COMPONENTS */ + 1048, /* GL_MAX_FRAGMENT_INPUT_COMPONENTS */ + 330, /* GL_CONTEXT_PROFILE_MASK */ + 531, /* GL_EVAL_BIT */ + 1543, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ + 854, /* GL_LIST_BIT */ + 1990, /* GL_TEXTURE_BIT */ + 1739, /* GL_SCISSOR_BIT */ 30, /* GL_ALL_ATTRIB_BITS */ - 1209, /* GL_MULTISAMPLE_BIT */ + 1213, /* GL_MULTISAMPLE_BIT */ 31, /* GL_ALL_CLIENT_ATTRIB_BITS */ }; diff --git a/src/mesa/main/eval.c b/src/mesa/main/eval.c index 9ab55072f00..e651715f788 100644 --- a/src/mesa/main/eval.c +++ b/src/mesa/main/eval.c @@ -545,7 +545,7 @@ _mesa_Map2d( GLenum target, static void GLAPIENTRY -_mesa_GetMapdv( GLenum target, GLenum query, GLdouble *v ) +_mesa_GetnMapdvARB( GLenum target, GLenum query, GLsizei bufSize, GLdouble *v ) { GET_CURRENT_CONTEXT(ctx); struct gl_1d_map *map1d; @@ -553,6 +553,7 @@ _mesa_GetMapdv( GLenum target, GLenum query, GLdouble *v ) GLint i, n; GLfloat *data; GLuint comps; + GLsizei numBytes; ASSERT_OUTSIDE_BEGIN_END(ctx); @@ -577,6 +578,9 @@ _mesa_GetMapdv( GLenum target, GLenum query, GLdouble *v ) n = map2d->Uorder * map2d->Vorder * comps; } if (data) { + numBytes = n * sizeof *v; + if (bufSize < numBytes) + goto overflow; for (i=0;i<n;i++) { v[i] = data[i]; } @@ -584,19 +588,31 @@ _mesa_GetMapdv( GLenum target, GLenum query, GLdouble *v ) break; case GL_ORDER: if (map1d) { + numBytes = 1 * sizeof *v; + if (bufSize < numBytes) + goto overflow; v[0] = (GLdouble) map1d->Order; } else { + numBytes = 2 * sizeof *v; + if (bufSize < numBytes) + goto overflow; v[0] = (GLdouble) map2d->Uorder; v[1] = (GLdouble) map2d->Vorder; } break; case GL_DOMAIN: if (map1d) { + numBytes = 2 * sizeof *v; + if (bufSize < numBytes) + goto overflow; v[0] = (GLdouble) map1d->u1; v[1] = (GLdouble) map1d->u2; } else { + numBytes = 4 * sizeof *v; + if (bufSize < numBytes) + goto overflow; v[0] = (GLdouble) map2d->u1; v[1] = (GLdouble) map2d->u2; v[2] = (GLdouble) map2d->v1; @@ -606,11 +622,22 @@ _mesa_GetMapdv( GLenum target, GLenum query, GLdouble *v ) default: _mesa_error( ctx, GL_INVALID_ENUM, "glGetMapdv(query)" ); } + return; + +overflow: + _mesa_error( ctx, GL_INVALID_OPERATION, + "glGetnMapdvARB(out of bounds: bufSize is %d," + " but %d bytes are required)", bufSize, numBytes ); } +static void GLAPIENTRY +_mesa_GetMapdv( GLenum target, GLenum query, GLdouble *v ) +{ + _mesa_GetnMapdvARB(target, query, INT_MAX, v); +} static void GLAPIENTRY -_mesa_GetMapfv( GLenum target, GLenum query, GLfloat *v ) +_mesa_GetnMapfvARB( GLenum target, GLenum query, GLsizei bufSize, GLfloat *v ) { GET_CURRENT_CONTEXT(ctx); struct gl_1d_map *map1d; @@ -618,6 +645,7 @@ _mesa_GetMapfv( GLenum target, GLenum query, GLfloat *v ) GLint i, n; GLfloat *data; GLuint comps; + GLsizei numBytes; ASSERT_OUTSIDE_BEGIN_END(ctx); @@ -642,6 +670,9 @@ _mesa_GetMapfv( GLenum target, GLenum query, GLfloat *v ) n = map2d->Uorder * map2d->Vorder * comps; } if (data) { + numBytes = n * sizeof *v; + if (bufSize < numBytes) + goto overflow; for (i=0;i<n;i++) { v[i] = data[i]; } @@ -649,19 +680,31 @@ _mesa_GetMapfv( GLenum target, GLenum query, GLfloat *v ) break; case GL_ORDER: if (map1d) { + numBytes = 1 * sizeof *v; + if (bufSize < numBytes) + goto overflow; v[0] = (GLfloat) map1d->Order; } else { + numBytes = 2 * sizeof *v; + if (bufSize < numBytes) + goto overflow; v[0] = (GLfloat) map2d->Uorder; v[1] = (GLfloat) map2d->Vorder; } break; case GL_DOMAIN: if (map1d) { + numBytes = 2 * sizeof *v; + if (bufSize < numBytes) + goto overflow; v[0] = map1d->u1; v[1] = map1d->u2; } else { + numBytes = 4 * sizeof *v; + if (bufSize < numBytes) + goto overflow; v[0] = map2d->u1; v[1] = map2d->u2; v[2] = map2d->v1; @@ -671,11 +714,24 @@ _mesa_GetMapfv( GLenum target, GLenum query, GLfloat *v ) default: _mesa_error( ctx, GL_INVALID_ENUM, "glGetMapfv(query)" ); } + return; + +overflow: + _mesa_error( ctx, GL_INVALID_OPERATION, + "glGetnMapfvARB(out of bounds: bufSize is %d," + " but %d bytes are required)", bufSize, numBytes ); } static void GLAPIENTRY -_mesa_GetMapiv( GLenum target, GLenum query, GLint *v ) +_mesa_GetMapfv( GLenum target, GLenum query, GLfloat *v ) +{ + _mesa_GetnMapfvARB(target, query, INT_MAX, v); +} + + +static void GLAPIENTRY +_mesa_GetnMapivARB( GLenum target, GLenum query, GLsizei bufSize, GLint *v ) { GET_CURRENT_CONTEXT(ctx); struct gl_1d_map *map1d; @@ -683,6 +739,7 @@ _mesa_GetMapiv( GLenum target, GLenum query, GLint *v ) GLuint i, n; GLfloat *data; GLuint comps; + GLsizei numBytes; ASSERT_OUTSIDE_BEGIN_END(ctx); @@ -707,6 +764,9 @@ _mesa_GetMapiv( GLenum target, GLenum query, GLint *v ) n = map2d->Uorder * map2d->Vorder * comps; } if (data) { + numBytes = n * sizeof *v; + if (bufSize < numBytes) + goto overflow; for (i=0;i<n;i++) { v[i] = IROUND(data[i]); } @@ -714,19 +774,31 @@ _mesa_GetMapiv( GLenum target, GLenum query, GLint *v ) break; case GL_ORDER: if (map1d) { + numBytes = 1 * sizeof *v; + if (bufSize < numBytes) + goto overflow; v[0] = map1d->Order; } else { + numBytes = 2 * sizeof *v; + if (bufSize < numBytes) + goto overflow; v[0] = map2d->Uorder; v[1] = map2d->Vorder; } break; case GL_DOMAIN: if (map1d) { + numBytes = 2 * sizeof *v; + if (bufSize < numBytes) + goto overflow; v[0] = IROUND(map1d->u1); v[1] = IROUND(map1d->u2); } else { + numBytes = 4 * sizeof *v; + if (bufSize < numBytes) + goto overflow; v[0] = IROUND(map2d->u1); v[1] = IROUND(map2d->u2); v[2] = IROUND(map2d->v1); @@ -736,9 +808,21 @@ _mesa_GetMapiv( GLenum target, GLenum query, GLint *v ) default: _mesa_error( ctx, GL_INVALID_ENUM, "glGetMapiv(query)" ); } + return; + +overflow: + _mesa_error( ctx, GL_INVALID_OPERATION, + "glGetnMapivARB(out of bounds: bufSize is %d," + " but %d bytes are required)", bufSize, numBytes ); } +static void GLAPIENTRY +_mesa_GetMapiv( GLenum target, GLenum query, GLint *v ) +{ + _mesa_GetnMapivARB(target, query, INT_MAX, v); +} + static void GLAPIENTRY _mesa_MapGrid1f( GLint un, GLfloat u1, GLfloat u2 ) @@ -832,6 +916,11 @@ _mesa_init_eval_dispatch(struct _glapi_table *disp) SET_MapGrid1f(disp, _mesa_MapGrid1f); SET_MapGrid2d(disp, _mesa_MapGrid2d); SET_MapGrid2f(disp, _mesa_MapGrid2f); + + /* GL_ARB_robustness */ + SET_GetnMapdvARB(disp, _mesa_GetnMapdvARB); + SET_GetnMapfvARB(disp, _mesa_GetnMapfvARB); + SET_GetnMapivARB(disp, _mesa_GetnMapivARB); } diff --git a/src/mesa/main/extensions.c b/src/mesa/main/extensions.c index 8a0ab961523..a9ef8fa4cb7 100644 --- a/src/mesa/main/extensions.c +++ b/src/mesa/main/extensions.c @@ -107,6 +107,7 @@ static const struct extension extension_table[] = { { "GL_ARB_point_parameters", o(EXT_point_parameters), GL, 1997 }, { "GL_ARB_point_sprite", o(ARB_point_sprite), GL, 2003 }, { "GL_ARB_provoking_vertex", o(EXT_provoking_vertex), GL, 2009 }, + { "GL_ARB_robustness", o(dummy_true), GL, 2010 }, { "GL_ARB_sampler_objects", o(ARB_sampler_objects), GL, 2009 }, { "GL_ARB_seamless_cube_map", o(ARB_seamless_cube_map), GL, 2009 }, { "GL_ARB_shader_objects", o(ARB_shader_objects), GL, 2002 }, @@ -258,6 +259,9 @@ static const struct extension extension_table[] = { /* Vendor extensions */ { "GL_3DFX_texture_compression_FXT1", o(TDFX_texture_compression_FXT1), GL, 1999 }, { "GL_AMD_conservative_depth", o(AMD_conservative_depth), GL, 2009 }, + { "GL_AMD_draw_buffers_blend", o(ARB_draw_buffers_blend), GL, 2009 }, + { "GL_AMD_seamless_cubemap_per_texture", o(AMD_seamless_cubemap_per_texture), GL, 2009 }, + { "GL_AMD_shader_stencil_export", o(ARB_shader_stencil_export), GL, 2009 }, { "GL_APPLE_client_storage", o(APPLE_client_storage), GL, 2002 }, { "GL_APPLE_object_purgeable", o(APPLE_object_purgeable), GL, 2006 }, { "GL_APPLE_packed_pixels", o(APPLE_packed_pixels), GL, 2002 }, @@ -501,6 +505,7 @@ _mesa_enable_sw_extensions(struct gl_context *ctx) ctx->Extensions.EXT_texture_env_dot3 = GL_TRUE; ctx->Extensions.EXT_texture_mirror_clamp = GL_TRUE; ctx->Extensions.EXT_texture_lod_bias = GL_TRUE; + ctx->Extensions.EXT_texture_shared_exponent = GL_TRUE; #if FEATURE_EXT_texture_sRGB ctx->Extensions.EXT_texture_sRGB = GL_TRUE; ctx->Extensions.EXT_texture_sRGB_decode = GL_TRUE; diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c index 1edb310ea13..64f135e21dd 100644 --- a/src/mesa/main/fbobject.c +++ b/src/mesa/main/fbobject.c @@ -418,6 +418,15 @@ _mesa_validate_framebuffer(struct gl_context *ctx, struct gl_framebuffer *fb) case GL_RG: fb->_Status = GL_FRAMEBUFFER_UNSUPPORTED; return; + case GL_RGB: + switch (rb->Format) { + case MESA_FORMAT_RGB9_E5_FLOAT: + fb->_Status = GL_FRAMEBUFFER_UNSUPPORTED; + return; + default:; + } + break; + default: /* render buffer format is supported by software rendering */ ; @@ -1175,6 +1184,10 @@ _mesa_base_fbo_format(struct gl_context *ctx, GLenum internalFormat) case GL_INTENSITY32F_ARB: return ctx->Extensions.ARB_texture_float && ctx->Extensions.ARB_framebuffer_object ? GL_INTENSITY : 0; + case GL_RGB9_E5: + return ctx->Extensions.EXT_texture_shared_exponent ? GL_RGB : 0; + case GL_R11F_G11F_B10F: + return ctx->Extensions.EXT_packed_float ? GL_RGB : 0; /* XXX add integer formats eventually */ default: return 0; diff --git a/src/mesa/main/formats.c b/src/mesa/main/formats.c index 4c31ccb763c..60e8ae390a5 100644 --- a/src/mesa/main/formats.c +++ b/src/mesa/main/formats.c @@ -1072,7 +1072,25 @@ static struct gl_format_info format_info[MESA_FORMAT_COUNT] = 0, 0, 0, 0, 0, 16, 0, 0, 0, 1, 1, 2 - } + }, + { + MESA_FORMAT_RGB9_E5_FLOAT, + "MESA_FORMAT_RGB9_E5", + GL_RGB, + GL_FLOAT, + 9, 9, 9, 0, + 0, 0, 0, 0, 0, + 1, 1, 4 + }, + { + MESA_FORMAT_R11_G11_B10_FLOAT, + "MESA_FORMAT_R11_G11_B10_FLOAT", + GL_RGB, + GL_FLOAT, + 11, 11, 10, 0, + 0, 0, 0, 0, 0, + 1, 1, 4 + }, }; @@ -1803,6 +1821,16 @@ _mesa_format_to_type_and_comps(gl_format format, *comps = 4; return; + case MESA_FORMAT_RGB9_E5_FLOAT: + *datatype = GL_UNSIGNED_INT_5_9_9_9_REV; + *comps = 3; + return; + + case MESA_FORMAT_R11_G11_B10_FLOAT: + *datatype = GL_UNSIGNED_INT_10F_11F_11F_REV; + *comps = 3; + return; + case MESA_FORMAT_COUNT: assert(0); return; diff --git a/src/mesa/main/formats.h b/src/mesa/main/formats.h index 15ac62cfef9..df9ed70a3e0 100644 --- a/src/mesa/main/formats.h +++ b/src/mesa/main/formats.h @@ -206,6 +206,9 @@ typedef enum MESA_FORMAT_SIGNED_AL1616, /* AAAA AAAA AAAA AAAA LLLL LLLL LLLL LLLL */ MESA_FORMAT_SIGNED_I16, /* IIII IIII IIII IIII */ + MESA_FORMAT_RGB9_E5_FLOAT, + MESA_FORMAT_R11_G11_B10_FLOAT, + MESA_FORMAT_COUNT } gl_format; diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c index e18803280c1..0492e1585c3 100644 --- a/src/mesa/main/get.c +++ b/src/mesa/main/get.c @@ -1163,7 +1163,7 @@ static const struct value_desc values[] = { /* GL_EXT_provoking_vertex */ { GL_PROVOKING_VERTEX_EXT, - CONTEXT_BOOL(Light.ProvokingVertex), extra_EXT_provoking_vertex }, + CONTEXT_ENUM(Light.ProvokingVertex), extra_EXT_provoking_vertex }, { GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT, CONTEXT_BOOL(Const.QuadsFollowProvokingVertexConvention), extra_EXT_provoking_vertex }, @@ -1281,6 +1281,9 @@ static const struct value_desc values[] = { /* GL 3.2 */ { GL_CONTEXT_PROFILE_MASK, CONTEXT_INT(Const.ProfileMask), extra_version_32 }, + + /* GL_ARB_robustness */ + { GL_RESET_NOTIFICATION_STRATEGY_ARB, CONTEXT_ENUM(Const.ResetStrategy), NO_EXTRA }, #endif /* FEATURE_GL */ }; diff --git a/src/mesa/main/get.h b/src/mesa/main/get.h index 99a004b71dd..9422efec565 100644 --- a/src/mesa/main/get.h +++ b/src/mesa/main/get.h @@ -74,4 +74,8 @@ _mesa_GetStringi(GLenum name, GLuint index); extern GLenum GLAPIENTRY _mesa_GetError( void ); +/* GL_ARB_robustness */ +extern GLenum GLAPIENTRY +_mesa_GetGraphicsResetStatusARB( void ); + #endif diff --git a/src/mesa/main/getstring.c b/src/mesa/main/getstring.c index f8866f68581..c381fb2dfdf 100644 --- a/src/mesa/main/getstring.c +++ b/src/mesa/main/getstring.c @@ -251,3 +251,20 @@ _mesa_GetError( void ) ctx->ErrorDebugCount = 0; return e; } + +/** + * Returns an error code specified by GL_ARB_robustness, or GL_NO_ERROR. + * \return current context status + */ +GLenum GLAPIENTRY +_mesa_GetGraphicsResetStatusARB( void ) +{ + GET_CURRENT_CONTEXT(ctx); + GLenum status = ctx->ResetStatus; + + if (MESA_VERBOSE & VERBOSE_API) + _mesa_debug(ctx, "glGetGraphicsResetStatusARB" + "(always returns GL_NO_ERROR)\n"); + + return status; +} diff --git a/src/mesa/main/glapidispatch.h b/src/mesa/main/glapidispatch.h index c1cc6cb1254..93cc0122df0 100644 --- a/src/mesa/main/glapidispatch.h +++ b/src/mesa/main/glapidispatch.h @@ -59,7 +59,7 @@ } while(0) /* total number of offsets below */ -#define _gloffset_COUNT 908 +#define _gloffset_COUNT 928 #define _gloffset_NewList 0 #define _gloffset_EndList 1 @@ -690,292 +690,312 @@ #define _gloffset_GetShaderPrecisionFormat 623 #define _gloffset_ReleaseShaderCompiler 624 #define _gloffset_ShaderBinary 625 -#define _gloffset_PolygonOffsetEXT 626 -#define _gloffset_GetPixelTexGenParameterfvSGIS 627 -#define _gloffset_GetPixelTexGenParameterivSGIS 628 -#define _gloffset_PixelTexGenParameterfSGIS 629 -#define _gloffset_PixelTexGenParameterfvSGIS 630 -#define _gloffset_PixelTexGenParameteriSGIS 631 -#define _gloffset_PixelTexGenParameterivSGIS 632 -#define _gloffset_SampleMaskSGIS 633 -#define _gloffset_SamplePatternSGIS 634 -#define _gloffset_ColorPointerEXT 635 -#define _gloffset_EdgeFlagPointerEXT 636 -#define _gloffset_IndexPointerEXT 637 -#define _gloffset_NormalPointerEXT 638 -#define _gloffset_TexCoordPointerEXT 639 -#define _gloffset_VertexPointerEXT 640 -#define _gloffset_PointParameterfEXT 641 -#define _gloffset_PointParameterfvEXT 642 -#define _gloffset_LockArraysEXT 643 -#define _gloffset_UnlockArraysEXT 644 -#define _gloffset_SecondaryColor3bEXT 645 -#define _gloffset_SecondaryColor3bvEXT 646 -#define _gloffset_SecondaryColor3dEXT 647 -#define _gloffset_SecondaryColor3dvEXT 648 -#define _gloffset_SecondaryColor3fEXT 649 -#define _gloffset_SecondaryColor3fvEXT 650 -#define _gloffset_SecondaryColor3iEXT 651 -#define _gloffset_SecondaryColor3ivEXT 652 -#define _gloffset_SecondaryColor3sEXT 653 -#define _gloffset_SecondaryColor3svEXT 654 -#define _gloffset_SecondaryColor3ubEXT 655 -#define _gloffset_SecondaryColor3ubvEXT 656 -#define _gloffset_SecondaryColor3uiEXT 657 -#define _gloffset_SecondaryColor3uivEXT 658 -#define _gloffset_SecondaryColor3usEXT 659 -#define _gloffset_SecondaryColor3usvEXT 660 -#define _gloffset_SecondaryColorPointerEXT 661 -#define _gloffset_MultiDrawArraysEXT 662 -#define _gloffset_MultiDrawElementsEXT 663 -#define _gloffset_FogCoordPointerEXT 664 -#define _gloffset_FogCoorddEXT 665 -#define _gloffset_FogCoorddvEXT 666 -#define _gloffset_FogCoordfEXT 667 -#define _gloffset_FogCoordfvEXT 668 -#define _gloffset_PixelTexGenSGIX 669 -#define _gloffset_BlendFuncSeparateEXT 670 -#define _gloffset_FlushVertexArrayRangeNV 671 -#define _gloffset_VertexArrayRangeNV 672 -#define _gloffset_CombinerInputNV 673 -#define _gloffset_CombinerOutputNV 674 -#define _gloffset_CombinerParameterfNV 675 -#define _gloffset_CombinerParameterfvNV 676 -#define _gloffset_CombinerParameteriNV 677 -#define _gloffset_CombinerParameterivNV 678 -#define _gloffset_FinalCombinerInputNV 679 -#define _gloffset_GetCombinerInputParameterfvNV 680 -#define _gloffset_GetCombinerInputParameterivNV 681 -#define _gloffset_GetCombinerOutputParameterfvNV 682 -#define _gloffset_GetCombinerOutputParameterivNV 683 -#define _gloffset_GetFinalCombinerInputParameterfvNV 684 -#define _gloffset_GetFinalCombinerInputParameterivNV 685 -#define _gloffset_ResizeBuffersMESA 686 -#define _gloffset_WindowPos2dMESA 687 -#define _gloffset_WindowPos2dvMESA 688 -#define _gloffset_WindowPos2fMESA 689 -#define _gloffset_WindowPos2fvMESA 690 -#define _gloffset_WindowPos2iMESA 691 -#define _gloffset_WindowPos2ivMESA 692 -#define _gloffset_WindowPos2sMESA 693 -#define _gloffset_WindowPos2svMESA 694 -#define _gloffset_WindowPos3dMESA 695 -#define _gloffset_WindowPos3dvMESA 696 -#define _gloffset_WindowPos3fMESA 697 -#define _gloffset_WindowPos3fvMESA 698 -#define _gloffset_WindowPos3iMESA 699 -#define _gloffset_WindowPos3ivMESA 700 -#define _gloffset_WindowPos3sMESA 701 -#define _gloffset_WindowPos3svMESA 702 -#define _gloffset_WindowPos4dMESA 703 -#define _gloffset_WindowPos4dvMESA 704 -#define _gloffset_WindowPos4fMESA 705 -#define _gloffset_WindowPos4fvMESA 706 -#define _gloffset_WindowPos4iMESA 707 -#define _gloffset_WindowPos4ivMESA 708 -#define _gloffset_WindowPos4sMESA 709 -#define _gloffset_WindowPos4svMESA 710 -#define _gloffset_MultiModeDrawArraysIBM 711 -#define _gloffset_MultiModeDrawElementsIBM 712 -#define _gloffset_DeleteFencesNV 713 -#define _gloffset_FinishFenceNV 714 -#define _gloffset_GenFencesNV 715 -#define _gloffset_GetFenceivNV 716 -#define _gloffset_IsFenceNV 717 -#define _gloffset_SetFenceNV 718 -#define _gloffset_TestFenceNV 719 -#define _gloffset_AreProgramsResidentNV 720 -#define _gloffset_BindProgramNV 721 -#define _gloffset_DeleteProgramsNV 722 -#define _gloffset_ExecuteProgramNV 723 -#define _gloffset_GenProgramsNV 724 -#define _gloffset_GetProgramParameterdvNV 725 -#define _gloffset_GetProgramParameterfvNV 726 -#define _gloffset_GetProgramStringNV 727 -#define _gloffset_GetProgramivNV 728 -#define _gloffset_GetTrackMatrixivNV 729 -#define _gloffset_GetVertexAttribPointervNV 730 -#define _gloffset_GetVertexAttribdvNV 731 -#define _gloffset_GetVertexAttribfvNV 732 -#define _gloffset_GetVertexAttribivNV 733 -#define _gloffset_IsProgramNV 734 -#define _gloffset_LoadProgramNV 735 -#define _gloffset_ProgramParameters4dvNV 736 -#define _gloffset_ProgramParameters4fvNV 737 -#define _gloffset_RequestResidentProgramsNV 738 -#define _gloffset_TrackMatrixNV 739 -#define _gloffset_VertexAttrib1dNV 740 -#define _gloffset_VertexAttrib1dvNV 741 -#define _gloffset_VertexAttrib1fNV 742 -#define _gloffset_VertexAttrib1fvNV 743 -#define _gloffset_VertexAttrib1sNV 744 -#define _gloffset_VertexAttrib1svNV 745 -#define _gloffset_VertexAttrib2dNV 746 -#define _gloffset_VertexAttrib2dvNV 747 -#define _gloffset_VertexAttrib2fNV 748 -#define _gloffset_VertexAttrib2fvNV 749 -#define _gloffset_VertexAttrib2sNV 750 -#define _gloffset_VertexAttrib2svNV 751 -#define _gloffset_VertexAttrib3dNV 752 -#define _gloffset_VertexAttrib3dvNV 753 -#define _gloffset_VertexAttrib3fNV 754 -#define _gloffset_VertexAttrib3fvNV 755 -#define _gloffset_VertexAttrib3sNV 756 -#define _gloffset_VertexAttrib3svNV 757 -#define _gloffset_VertexAttrib4dNV 758 -#define _gloffset_VertexAttrib4dvNV 759 -#define _gloffset_VertexAttrib4fNV 760 -#define _gloffset_VertexAttrib4fvNV 761 -#define _gloffset_VertexAttrib4sNV 762 -#define _gloffset_VertexAttrib4svNV 763 -#define _gloffset_VertexAttrib4ubNV 764 -#define _gloffset_VertexAttrib4ubvNV 765 -#define _gloffset_VertexAttribPointerNV 766 -#define _gloffset_VertexAttribs1dvNV 767 -#define _gloffset_VertexAttribs1fvNV 768 -#define _gloffset_VertexAttribs1svNV 769 -#define _gloffset_VertexAttribs2dvNV 770 -#define _gloffset_VertexAttribs2fvNV 771 -#define _gloffset_VertexAttribs2svNV 772 -#define _gloffset_VertexAttribs3dvNV 773 -#define _gloffset_VertexAttribs3fvNV 774 -#define _gloffset_VertexAttribs3svNV 775 -#define _gloffset_VertexAttribs4dvNV 776 -#define _gloffset_VertexAttribs4fvNV 777 -#define _gloffset_VertexAttribs4svNV 778 -#define _gloffset_VertexAttribs4ubvNV 779 -#define _gloffset_GetTexBumpParameterfvATI 780 -#define _gloffset_GetTexBumpParameterivATI 781 -#define _gloffset_TexBumpParameterfvATI 782 -#define _gloffset_TexBumpParameterivATI 783 -#define _gloffset_AlphaFragmentOp1ATI 784 -#define _gloffset_AlphaFragmentOp2ATI 785 -#define _gloffset_AlphaFragmentOp3ATI 786 -#define _gloffset_BeginFragmentShaderATI 787 -#define _gloffset_BindFragmentShaderATI 788 -#define _gloffset_ColorFragmentOp1ATI 789 -#define _gloffset_ColorFragmentOp2ATI 790 -#define _gloffset_ColorFragmentOp3ATI 791 -#define _gloffset_DeleteFragmentShaderATI 792 -#define _gloffset_EndFragmentShaderATI 793 -#define _gloffset_GenFragmentShadersATI 794 -#define _gloffset_PassTexCoordATI 795 -#define _gloffset_SampleMapATI 796 -#define _gloffset_SetFragmentShaderConstantATI 797 -#define _gloffset_PointParameteriNV 798 -#define _gloffset_PointParameterivNV 799 -#define _gloffset_ActiveStencilFaceEXT 800 -#define _gloffset_BindVertexArrayAPPLE 801 -#define _gloffset_DeleteVertexArraysAPPLE 802 -#define _gloffset_GenVertexArraysAPPLE 803 -#define _gloffset_IsVertexArrayAPPLE 804 -#define _gloffset_GetProgramNamedParameterdvNV 805 -#define _gloffset_GetProgramNamedParameterfvNV 806 -#define _gloffset_ProgramNamedParameter4dNV 807 -#define _gloffset_ProgramNamedParameter4dvNV 808 -#define _gloffset_ProgramNamedParameter4fNV 809 -#define _gloffset_ProgramNamedParameter4fvNV 810 -#define _gloffset_PrimitiveRestartIndexNV 811 -#define _gloffset_PrimitiveRestartNV 812 -#define _gloffset_DepthBoundsEXT 813 -#define _gloffset_BlendEquationSeparateEXT 814 -#define _gloffset_BindFramebufferEXT 815 -#define _gloffset_BindRenderbufferEXT 816 -#define _gloffset_CheckFramebufferStatusEXT 817 -#define _gloffset_DeleteFramebuffersEXT 818 -#define _gloffset_DeleteRenderbuffersEXT 819 -#define _gloffset_FramebufferRenderbufferEXT 820 -#define _gloffset_FramebufferTexture1DEXT 821 -#define _gloffset_FramebufferTexture2DEXT 822 -#define _gloffset_FramebufferTexture3DEXT 823 -#define _gloffset_GenFramebuffersEXT 824 -#define _gloffset_GenRenderbuffersEXT 825 -#define _gloffset_GenerateMipmapEXT 826 -#define _gloffset_GetFramebufferAttachmentParameterivEXT 827 -#define _gloffset_GetRenderbufferParameterivEXT 828 -#define _gloffset_IsFramebufferEXT 829 -#define _gloffset_IsRenderbufferEXT 830 -#define _gloffset_RenderbufferStorageEXT 831 -#define _gloffset_BlitFramebufferEXT 832 -#define _gloffset_BufferParameteriAPPLE 833 -#define _gloffset_FlushMappedBufferRangeAPPLE 834 -#define _gloffset_BindFragDataLocationEXT 835 -#define _gloffset_GetFragDataLocationEXT 836 -#define _gloffset_GetUniformuivEXT 837 -#define _gloffset_GetVertexAttribIivEXT 838 -#define _gloffset_GetVertexAttribIuivEXT 839 -#define _gloffset_Uniform1uiEXT 840 -#define _gloffset_Uniform1uivEXT 841 -#define _gloffset_Uniform2uiEXT 842 -#define _gloffset_Uniform2uivEXT 843 -#define _gloffset_Uniform3uiEXT 844 -#define _gloffset_Uniform3uivEXT 845 -#define _gloffset_Uniform4uiEXT 846 -#define _gloffset_Uniform4uivEXT 847 -#define _gloffset_VertexAttribI1iEXT 848 -#define _gloffset_VertexAttribI1ivEXT 849 -#define _gloffset_VertexAttribI1uiEXT 850 -#define _gloffset_VertexAttribI1uivEXT 851 -#define _gloffset_VertexAttribI2iEXT 852 -#define _gloffset_VertexAttribI2ivEXT 853 -#define _gloffset_VertexAttribI2uiEXT 854 -#define _gloffset_VertexAttribI2uivEXT 855 -#define _gloffset_VertexAttribI3iEXT 856 -#define _gloffset_VertexAttribI3ivEXT 857 -#define _gloffset_VertexAttribI3uiEXT 858 -#define _gloffset_VertexAttribI3uivEXT 859 -#define _gloffset_VertexAttribI4bvEXT 860 -#define _gloffset_VertexAttribI4iEXT 861 -#define _gloffset_VertexAttribI4ivEXT 862 -#define _gloffset_VertexAttribI4svEXT 863 -#define _gloffset_VertexAttribI4ubvEXT 864 -#define _gloffset_VertexAttribI4uiEXT 865 -#define _gloffset_VertexAttribI4uivEXT 866 -#define _gloffset_VertexAttribI4usvEXT 867 -#define _gloffset_VertexAttribIPointerEXT 868 -#define _gloffset_FramebufferTextureLayerEXT 869 -#define _gloffset_ColorMaskIndexedEXT 870 -#define _gloffset_DisableIndexedEXT 871 -#define _gloffset_EnableIndexedEXT 872 -#define _gloffset_GetBooleanIndexedvEXT 873 -#define _gloffset_GetIntegerIndexedvEXT 874 -#define _gloffset_IsEnabledIndexedEXT 875 -#define _gloffset_ClearColorIiEXT 876 -#define _gloffset_ClearColorIuiEXT 877 -#define _gloffset_GetTexParameterIivEXT 878 -#define _gloffset_GetTexParameterIuivEXT 879 -#define _gloffset_TexParameterIivEXT 880 -#define _gloffset_TexParameterIuivEXT 881 -#define _gloffset_BeginConditionalRenderNV 882 -#define _gloffset_EndConditionalRenderNV 883 -#define _gloffset_BeginTransformFeedbackEXT 884 -#define _gloffset_BindBufferBaseEXT 885 -#define _gloffset_BindBufferOffsetEXT 886 -#define _gloffset_BindBufferRangeEXT 887 -#define _gloffset_EndTransformFeedbackEXT 888 -#define _gloffset_GetTransformFeedbackVaryingEXT 889 -#define _gloffset_TransformFeedbackVaryingsEXT 890 -#define _gloffset_ProvokingVertexEXT 891 -#define _gloffset_GetTexParameterPointervAPPLE 892 -#define _gloffset_TextureRangeAPPLE 893 -#define _gloffset_GetObjectParameterivAPPLE 894 -#define _gloffset_ObjectPurgeableAPPLE 895 -#define _gloffset_ObjectUnpurgeableAPPLE 896 -#define _gloffset_ActiveProgramEXT 897 -#define _gloffset_CreateShaderProgramEXT 898 -#define _gloffset_UseShaderProgramEXT 899 -#define _gloffset_TextureBarrierNV 900 -#define _gloffset_StencilFuncSeparateATI 901 -#define _gloffset_ProgramEnvParameters4fvEXT 902 -#define _gloffset_ProgramLocalParameters4fvEXT 903 -#define _gloffset_GetQueryObjecti64vEXT 904 -#define _gloffset_GetQueryObjectui64vEXT 905 -#define _gloffset_EGLImageTargetRenderbufferStorageOES 906 -#define _gloffset_EGLImageTargetTexture2DOES 907 +#define _gloffset_GetGraphicsResetStatusARB 626 +#define _gloffset_GetnColorTableARB 627 +#define _gloffset_GetnCompressedTexImageARB 628 +#define _gloffset_GetnConvolutionFilterARB 629 +#define _gloffset_GetnHistogramARB 630 +#define _gloffset_GetnMapdvARB 631 +#define _gloffset_GetnMapfvARB 632 +#define _gloffset_GetnMapivARB 633 +#define _gloffset_GetnMinmaxARB 634 +#define _gloffset_GetnPixelMapfvARB 635 +#define _gloffset_GetnPixelMapuivARB 636 +#define _gloffset_GetnPixelMapusvARB 637 +#define _gloffset_GetnPolygonStippleARB 638 +#define _gloffset_GetnSeparableFilterARB 639 +#define _gloffset_GetnTexImageARB 640 +#define _gloffset_GetnUniformdvARB 641 +#define _gloffset_GetnUniformfvARB 642 +#define _gloffset_GetnUniformivARB 643 +#define _gloffset_GetnUniformuivARB 644 +#define _gloffset_ReadnPixelsARB 645 +#define _gloffset_PolygonOffsetEXT 646 +#define _gloffset_GetPixelTexGenParameterfvSGIS 647 +#define _gloffset_GetPixelTexGenParameterivSGIS 648 +#define _gloffset_PixelTexGenParameterfSGIS 649 +#define _gloffset_PixelTexGenParameterfvSGIS 650 +#define _gloffset_PixelTexGenParameteriSGIS 651 +#define _gloffset_PixelTexGenParameterivSGIS 652 +#define _gloffset_SampleMaskSGIS 653 +#define _gloffset_SamplePatternSGIS 654 +#define _gloffset_ColorPointerEXT 655 +#define _gloffset_EdgeFlagPointerEXT 656 +#define _gloffset_IndexPointerEXT 657 +#define _gloffset_NormalPointerEXT 658 +#define _gloffset_TexCoordPointerEXT 659 +#define _gloffset_VertexPointerEXT 660 +#define _gloffset_PointParameterfEXT 661 +#define _gloffset_PointParameterfvEXT 662 +#define _gloffset_LockArraysEXT 663 +#define _gloffset_UnlockArraysEXT 664 +#define _gloffset_SecondaryColor3bEXT 665 +#define _gloffset_SecondaryColor3bvEXT 666 +#define _gloffset_SecondaryColor3dEXT 667 +#define _gloffset_SecondaryColor3dvEXT 668 +#define _gloffset_SecondaryColor3fEXT 669 +#define _gloffset_SecondaryColor3fvEXT 670 +#define _gloffset_SecondaryColor3iEXT 671 +#define _gloffset_SecondaryColor3ivEXT 672 +#define _gloffset_SecondaryColor3sEXT 673 +#define _gloffset_SecondaryColor3svEXT 674 +#define _gloffset_SecondaryColor3ubEXT 675 +#define _gloffset_SecondaryColor3ubvEXT 676 +#define _gloffset_SecondaryColor3uiEXT 677 +#define _gloffset_SecondaryColor3uivEXT 678 +#define _gloffset_SecondaryColor3usEXT 679 +#define _gloffset_SecondaryColor3usvEXT 680 +#define _gloffset_SecondaryColorPointerEXT 681 +#define _gloffset_MultiDrawArraysEXT 682 +#define _gloffset_MultiDrawElementsEXT 683 +#define _gloffset_FogCoordPointerEXT 684 +#define _gloffset_FogCoorddEXT 685 +#define _gloffset_FogCoorddvEXT 686 +#define _gloffset_FogCoordfEXT 687 +#define _gloffset_FogCoordfvEXT 688 +#define _gloffset_PixelTexGenSGIX 689 +#define _gloffset_BlendFuncSeparateEXT 690 +#define _gloffset_FlushVertexArrayRangeNV 691 +#define _gloffset_VertexArrayRangeNV 692 +#define _gloffset_CombinerInputNV 693 +#define _gloffset_CombinerOutputNV 694 +#define _gloffset_CombinerParameterfNV 695 +#define _gloffset_CombinerParameterfvNV 696 +#define _gloffset_CombinerParameteriNV 697 +#define _gloffset_CombinerParameterivNV 698 +#define _gloffset_FinalCombinerInputNV 699 +#define _gloffset_GetCombinerInputParameterfvNV 700 +#define _gloffset_GetCombinerInputParameterivNV 701 +#define _gloffset_GetCombinerOutputParameterfvNV 702 +#define _gloffset_GetCombinerOutputParameterivNV 703 +#define _gloffset_GetFinalCombinerInputParameterfvNV 704 +#define _gloffset_GetFinalCombinerInputParameterivNV 705 +#define _gloffset_ResizeBuffersMESA 706 +#define _gloffset_WindowPos2dMESA 707 +#define _gloffset_WindowPos2dvMESA 708 +#define _gloffset_WindowPos2fMESA 709 +#define _gloffset_WindowPos2fvMESA 710 +#define _gloffset_WindowPos2iMESA 711 +#define _gloffset_WindowPos2ivMESA 712 +#define _gloffset_WindowPos2sMESA 713 +#define _gloffset_WindowPos2svMESA 714 +#define _gloffset_WindowPos3dMESA 715 +#define _gloffset_WindowPos3dvMESA 716 +#define _gloffset_WindowPos3fMESA 717 +#define _gloffset_WindowPos3fvMESA 718 +#define _gloffset_WindowPos3iMESA 719 +#define _gloffset_WindowPos3ivMESA 720 +#define _gloffset_WindowPos3sMESA 721 +#define _gloffset_WindowPos3svMESA 722 +#define _gloffset_WindowPos4dMESA 723 +#define _gloffset_WindowPos4dvMESA 724 +#define _gloffset_WindowPos4fMESA 725 +#define _gloffset_WindowPos4fvMESA 726 +#define _gloffset_WindowPos4iMESA 727 +#define _gloffset_WindowPos4ivMESA 728 +#define _gloffset_WindowPos4sMESA 729 +#define _gloffset_WindowPos4svMESA 730 +#define _gloffset_MultiModeDrawArraysIBM 731 +#define _gloffset_MultiModeDrawElementsIBM 732 +#define _gloffset_DeleteFencesNV 733 +#define _gloffset_FinishFenceNV 734 +#define _gloffset_GenFencesNV 735 +#define _gloffset_GetFenceivNV 736 +#define _gloffset_IsFenceNV 737 +#define _gloffset_SetFenceNV 738 +#define _gloffset_TestFenceNV 739 +#define _gloffset_AreProgramsResidentNV 740 +#define _gloffset_BindProgramNV 741 +#define _gloffset_DeleteProgramsNV 742 +#define _gloffset_ExecuteProgramNV 743 +#define _gloffset_GenProgramsNV 744 +#define _gloffset_GetProgramParameterdvNV 745 +#define _gloffset_GetProgramParameterfvNV 746 +#define _gloffset_GetProgramStringNV 747 +#define _gloffset_GetProgramivNV 748 +#define _gloffset_GetTrackMatrixivNV 749 +#define _gloffset_GetVertexAttribPointervNV 750 +#define _gloffset_GetVertexAttribdvNV 751 +#define _gloffset_GetVertexAttribfvNV 752 +#define _gloffset_GetVertexAttribivNV 753 +#define _gloffset_IsProgramNV 754 +#define _gloffset_LoadProgramNV 755 +#define _gloffset_ProgramParameters4dvNV 756 +#define _gloffset_ProgramParameters4fvNV 757 +#define _gloffset_RequestResidentProgramsNV 758 +#define _gloffset_TrackMatrixNV 759 +#define _gloffset_VertexAttrib1dNV 760 +#define _gloffset_VertexAttrib1dvNV 761 +#define _gloffset_VertexAttrib1fNV 762 +#define _gloffset_VertexAttrib1fvNV 763 +#define _gloffset_VertexAttrib1sNV 764 +#define _gloffset_VertexAttrib1svNV 765 +#define _gloffset_VertexAttrib2dNV 766 +#define _gloffset_VertexAttrib2dvNV 767 +#define _gloffset_VertexAttrib2fNV 768 +#define _gloffset_VertexAttrib2fvNV 769 +#define _gloffset_VertexAttrib2sNV 770 +#define _gloffset_VertexAttrib2svNV 771 +#define _gloffset_VertexAttrib3dNV 772 +#define _gloffset_VertexAttrib3dvNV 773 +#define _gloffset_VertexAttrib3fNV 774 +#define _gloffset_VertexAttrib3fvNV 775 +#define _gloffset_VertexAttrib3sNV 776 +#define _gloffset_VertexAttrib3svNV 777 +#define _gloffset_VertexAttrib4dNV 778 +#define _gloffset_VertexAttrib4dvNV 779 +#define _gloffset_VertexAttrib4fNV 780 +#define _gloffset_VertexAttrib4fvNV 781 +#define _gloffset_VertexAttrib4sNV 782 +#define _gloffset_VertexAttrib4svNV 783 +#define _gloffset_VertexAttrib4ubNV 784 +#define _gloffset_VertexAttrib4ubvNV 785 +#define _gloffset_VertexAttribPointerNV 786 +#define _gloffset_VertexAttribs1dvNV 787 +#define _gloffset_VertexAttribs1fvNV 788 +#define _gloffset_VertexAttribs1svNV 789 +#define _gloffset_VertexAttribs2dvNV 790 +#define _gloffset_VertexAttribs2fvNV 791 +#define _gloffset_VertexAttribs2svNV 792 +#define _gloffset_VertexAttribs3dvNV 793 +#define _gloffset_VertexAttribs3fvNV 794 +#define _gloffset_VertexAttribs3svNV 795 +#define _gloffset_VertexAttribs4dvNV 796 +#define _gloffset_VertexAttribs4fvNV 797 +#define _gloffset_VertexAttribs4svNV 798 +#define _gloffset_VertexAttribs4ubvNV 799 +#define _gloffset_GetTexBumpParameterfvATI 800 +#define _gloffset_GetTexBumpParameterivATI 801 +#define _gloffset_TexBumpParameterfvATI 802 +#define _gloffset_TexBumpParameterivATI 803 +#define _gloffset_AlphaFragmentOp1ATI 804 +#define _gloffset_AlphaFragmentOp2ATI 805 +#define _gloffset_AlphaFragmentOp3ATI 806 +#define _gloffset_BeginFragmentShaderATI 807 +#define _gloffset_BindFragmentShaderATI 808 +#define _gloffset_ColorFragmentOp1ATI 809 +#define _gloffset_ColorFragmentOp2ATI 810 +#define _gloffset_ColorFragmentOp3ATI 811 +#define _gloffset_DeleteFragmentShaderATI 812 +#define _gloffset_EndFragmentShaderATI 813 +#define _gloffset_GenFragmentShadersATI 814 +#define _gloffset_PassTexCoordATI 815 +#define _gloffset_SampleMapATI 816 +#define _gloffset_SetFragmentShaderConstantATI 817 +#define _gloffset_PointParameteriNV 818 +#define _gloffset_PointParameterivNV 819 +#define _gloffset_ActiveStencilFaceEXT 820 +#define _gloffset_BindVertexArrayAPPLE 821 +#define _gloffset_DeleteVertexArraysAPPLE 822 +#define _gloffset_GenVertexArraysAPPLE 823 +#define _gloffset_IsVertexArrayAPPLE 824 +#define _gloffset_GetProgramNamedParameterdvNV 825 +#define _gloffset_GetProgramNamedParameterfvNV 826 +#define _gloffset_ProgramNamedParameter4dNV 827 +#define _gloffset_ProgramNamedParameter4dvNV 828 +#define _gloffset_ProgramNamedParameter4fNV 829 +#define _gloffset_ProgramNamedParameter4fvNV 830 +#define _gloffset_PrimitiveRestartIndexNV 831 +#define _gloffset_PrimitiveRestartNV 832 +#define _gloffset_DepthBoundsEXT 833 +#define _gloffset_BlendEquationSeparateEXT 834 +#define _gloffset_BindFramebufferEXT 835 +#define _gloffset_BindRenderbufferEXT 836 +#define _gloffset_CheckFramebufferStatusEXT 837 +#define _gloffset_DeleteFramebuffersEXT 838 +#define _gloffset_DeleteRenderbuffersEXT 839 +#define _gloffset_FramebufferRenderbufferEXT 840 +#define _gloffset_FramebufferTexture1DEXT 841 +#define _gloffset_FramebufferTexture2DEXT 842 +#define _gloffset_FramebufferTexture3DEXT 843 +#define _gloffset_GenFramebuffersEXT 844 +#define _gloffset_GenRenderbuffersEXT 845 +#define _gloffset_GenerateMipmapEXT 846 +#define _gloffset_GetFramebufferAttachmentParameterivEXT 847 +#define _gloffset_GetRenderbufferParameterivEXT 848 +#define _gloffset_IsFramebufferEXT 849 +#define _gloffset_IsRenderbufferEXT 850 +#define _gloffset_RenderbufferStorageEXT 851 +#define _gloffset_BlitFramebufferEXT 852 +#define _gloffset_BufferParameteriAPPLE 853 +#define _gloffset_FlushMappedBufferRangeAPPLE 854 +#define _gloffset_BindFragDataLocationEXT 855 +#define _gloffset_GetFragDataLocationEXT 856 +#define _gloffset_GetUniformuivEXT 857 +#define _gloffset_GetVertexAttribIivEXT 858 +#define _gloffset_GetVertexAttribIuivEXT 859 +#define _gloffset_Uniform1uiEXT 860 +#define _gloffset_Uniform1uivEXT 861 +#define _gloffset_Uniform2uiEXT 862 +#define _gloffset_Uniform2uivEXT 863 +#define _gloffset_Uniform3uiEXT 864 +#define _gloffset_Uniform3uivEXT 865 +#define _gloffset_Uniform4uiEXT 866 +#define _gloffset_Uniform4uivEXT 867 +#define _gloffset_VertexAttribI1iEXT 868 +#define _gloffset_VertexAttribI1ivEXT 869 +#define _gloffset_VertexAttribI1uiEXT 870 +#define _gloffset_VertexAttribI1uivEXT 871 +#define _gloffset_VertexAttribI2iEXT 872 +#define _gloffset_VertexAttribI2ivEXT 873 +#define _gloffset_VertexAttribI2uiEXT 874 +#define _gloffset_VertexAttribI2uivEXT 875 +#define _gloffset_VertexAttribI3iEXT 876 +#define _gloffset_VertexAttribI3ivEXT 877 +#define _gloffset_VertexAttribI3uiEXT 878 +#define _gloffset_VertexAttribI3uivEXT 879 +#define _gloffset_VertexAttribI4bvEXT 880 +#define _gloffset_VertexAttribI4iEXT 881 +#define _gloffset_VertexAttribI4ivEXT 882 +#define _gloffset_VertexAttribI4svEXT 883 +#define _gloffset_VertexAttribI4ubvEXT 884 +#define _gloffset_VertexAttribI4uiEXT 885 +#define _gloffset_VertexAttribI4uivEXT 886 +#define _gloffset_VertexAttribI4usvEXT 887 +#define _gloffset_VertexAttribIPointerEXT 888 +#define _gloffset_FramebufferTextureLayerEXT 889 +#define _gloffset_ColorMaskIndexedEXT 890 +#define _gloffset_DisableIndexedEXT 891 +#define _gloffset_EnableIndexedEXT 892 +#define _gloffset_GetBooleanIndexedvEXT 893 +#define _gloffset_GetIntegerIndexedvEXT 894 +#define _gloffset_IsEnabledIndexedEXT 895 +#define _gloffset_ClearColorIiEXT 896 +#define _gloffset_ClearColorIuiEXT 897 +#define _gloffset_GetTexParameterIivEXT 898 +#define _gloffset_GetTexParameterIuivEXT 899 +#define _gloffset_TexParameterIivEXT 900 +#define _gloffset_TexParameterIuivEXT 901 +#define _gloffset_BeginConditionalRenderNV 902 +#define _gloffset_EndConditionalRenderNV 903 +#define _gloffset_BeginTransformFeedbackEXT 904 +#define _gloffset_BindBufferBaseEXT 905 +#define _gloffset_BindBufferOffsetEXT 906 +#define _gloffset_BindBufferRangeEXT 907 +#define _gloffset_EndTransformFeedbackEXT 908 +#define _gloffset_GetTransformFeedbackVaryingEXT 909 +#define _gloffset_TransformFeedbackVaryingsEXT 910 +#define _gloffset_ProvokingVertexEXT 911 +#define _gloffset_GetTexParameterPointervAPPLE 912 +#define _gloffset_TextureRangeAPPLE 913 +#define _gloffset_GetObjectParameterivAPPLE 914 +#define _gloffset_ObjectPurgeableAPPLE 915 +#define _gloffset_ObjectUnpurgeableAPPLE 916 +#define _gloffset_ActiveProgramEXT 917 +#define _gloffset_CreateShaderProgramEXT 918 +#define _gloffset_UseShaderProgramEXT 919 +#define _gloffset_TextureBarrierNV 920 +#define _gloffset_StencilFuncSeparateATI 921 +#define _gloffset_ProgramEnvParameters4fvEXT 922 +#define _gloffset_ProgramLocalParameters4fvEXT 923 +#define _gloffset_GetQueryObjecti64vEXT 924 +#define _gloffset_GetQueryObjectui64vEXT 925 +#define _gloffset_EGLImageTargetRenderbufferStorageOES 926 +#define _gloffset_EGLImageTargetTexture2DOES 927 #else /* !_GLAPI_USE_REMAP_TABLE */ -#define driDispatchRemapTable_size 500 +#define driDispatchRemapTable_size 520 extern int driDispatchRemapTable[ driDispatchRemapTable_size ]; #define AttachShader_remap_index 0 @@ -1196,288 +1216,308 @@ extern int driDispatchRemapTable[ driDispatchRemapTable_size ]; #define GetShaderPrecisionFormat_remap_index 215 #define ReleaseShaderCompiler_remap_index 216 #define ShaderBinary_remap_index 217 -#define PolygonOffsetEXT_remap_index 218 -#define GetPixelTexGenParameterfvSGIS_remap_index 219 -#define GetPixelTexGenParameterivSGIS_remap_index 220 -#define PixelTexGenParameterfSGIS_remap_index 221 -#define PixelTexGenParameterfvSGIS_remap_index 222 -#define PixelTexGenParameteriSGIS_remap_index 223 -#define PixelTexGenParameterivSGIS_remap_index 224 -#define SampleMaskSGIS_remap_index 225 -#define SamplePatternSGIS_remap_index 226 -#define ColorPointerEXT_remap_index 227 -#define EdgeFlagPointerEXT_remap_index 228 -#define IndexPointerEXT_remap_index 229 -#define NormalPointerEXT_remap_index 230 -#define TexCoordPointerEXT_remap_index 231 -#define VertexPointerEXT_remap_index 232 -#define PointParameterfEXT_remap_index 233 -#define PointParameterfvEXT_remap_index 234 -#define LockArraysEXT_remap_index 235 -#define UnlockArraysEXT_remap_index 236 -#define SecondaryColor3bEXT_remap_index 237 -#define SecondaryColor3bvEXT_remap_index 238 -#define SecondaryColor3dEXT_remap_index 239 -#define SecondaryColor3dvEXT_remap_index 240 -#define SecondaryColor3fEXT_remap_index 241 -#define SecondaryColor3fvEXT_remap_index 242 -#define SecondaryColor3iEXT_remap_index 243 -#define SecondaryColor3ivEXT_remap_index 244 -#define SecondaryColor3sEXT_remap_index 245 -#define SecondaryColor3svEXT_remap_index 246 -#define SecondaryColor3ubEXT_remap_index 247 -#define SecondaryColor3ubvEXT_remap_index 248 -#define SecondaryColor3uiEXT_remap_index 249 -#define SecondaryColor3uivEXT_remap_index 250 -#define SecondaryColor3usEXT_remap_index 251 -#define SecondaryColor3usvEXT_remap_index 252 -#define SecondaryColorPointerEXT_remap_index 253 -#define MultiDrawArraysEXT_remap_index 254 -#define MultiDrawElementsEXT_remap_index 255 -#define FogCoordPointerEXT_remap_index 256 -#define FogCoorddEXT_remap_index 257 -#define FogCoorddvEXT_remap_index 258 -#define FogCoordfEXT_remap_index 259 -#define FogCoordfvEXT_remap_index 260 -#define PixelTexGenSGIX_remap_index 261 -#define BlendFuncSeparateEXT_remap_index 262 -#define FlushVertexArrayRangeNV_remap_index 263 -#define VertexArrayRangeNV_remap_index 264 -#define CombinerInputNV_remap_index 265 -#define CombinerOutputNV_remap_index 266 -#define CombinerParameterfNV_remap_index 267 -#define CombinerParameterfvNV_remap_index 268 -#define CombinerParameteriNV_remap_index 269 -#define CombinerParameterivNV_remap_index 270 -#define FinalCombinerInputNV_remap_index 271 -#define GetCombinerInputParameterfvNV_remap_index 272 -#define GetCombinerInputParameterivNV_remap_index 273 -#define GetCombinerOutputParameterfvNV_remap_index 274 -#define GetCombinerOutputParameterivNV_remap_index 275 -#define GetFinalCombinerInputParameterfvNV_remap_index 276 -#define GetFinalCombinerInputParameterivNV_remap_index 277 -#define ResizeBuffersMESA_remap_index 278 -#define WindowPos2dMESA_remap_index 279 -#define WindowPos2dvMESA_remap_index 280 -#define WindowPos2fMESA_remap_index 281 -#define WindowPos2fvMESA_remap_index 282 -#define WindowPos2iMESA_remap_index 283 -#define WindowPos2ivMESA_remap_index 284 -#define WindowPos2sMESA_remap_index 285 -#define WindowPos2svMESA_remap_index 286 -#define WindowPos3dMESA_remap_index 287 -#define WindowPos3dvMESA_remap_index 288 -#define WindowPos3fMESA_remap_index 289 -#define WindowPos3fvMESA_remap_index 290 -#define WindowPos3iMESA_remap_index 291 -#define WindowPos3ivMESA_remap_index 292 -#define WindowPos3sMESA_remap_index 293 -#define WindowPos3svMESA_remap_index 294 -#define WindowPos4dMESA_remap_index 295 -#define WindowPos4dvMESA_remap_index 296 -#define WindowPos4fMESA_remap_index 297 -#define WindowPos4fvMESA_remap_index 298 -#define WindowPos4iMESA_remap_index 299 -#define WindowPos4ivMESA_remap_index 300 -#define WindowPos4sMESA_remap_index 301 -#define WindowPos4svMESA_remap_index 302 -#define MultiModeDrawArraysIBM_remap_index 303 -#define MultiModeDrawElementsIBM_remap_index 304 -#define DeleteFencesNV_remap_index 305 -#define FinishFenceNV_remap_index 306 -#define GenFencesNV_remap_index 307 -#define GetFenceivNV_remap_index 308 -#define IsFenceNV_remap_index 309 -#define SetFenceNV_remap_index 310 -#define TestFenceNV_remap_index 311 -#define AreProgramsResidentNV_remap_index 312 -#define BindProgramNV_remap_index 313 -#define DeleteProgramsNV_remap_index 314 -#define ExecuteProgramNV_remap_index 315 -#define GenProgramsNV_remap_index 316 -#define GetProgramParameterdvNV_remap_index 317 -#define GetProgramParameterfvNV_remap_index 318 -#define GetProgramStringNV_remap_index 319 -#define GetProgramivNV_remap_index 320 -#define GetTrackMatrixivNV_remap_index 321 -#define GetVertexAttribPointervNV_remap_index 322 -#define GetVertexAttribdvNV_remap_index 323 -#define GetVertexAttribfvNV_remap_index 324 -#define GetVertexAttribivNV_remap_index 325 -#define IsProgramNV_remap_index 326 -#define LoadProgramNV_remap_index 327 -#define ProgramParameters4dvNV_remap_index 328 -#define ProgramParameters4fvNV_remap_index 329 -#define RequestResidentProgramsNV_remap_index 330 -#define TrackMatrixNV_remap_index 331 -#define VertexAttrib1dNV_remap_index 332 -#define VertexAttrib1dvNV_remap_index 333 -#define VertexAttrib1fNV_remap_index 334 -#define VertexAttrib1fvNV_remap_index 335 -#define VertexAttrib1sNV_remap_index 336 -#define VertexAttrib1svNV_remap_index 337 -#define VertexAttrib2dNV_remap_index 338 -#define VertexAttrib2dvNV_remap_index 339 -#define VertexAttrib2fNV_remap_index 340 -#define VertexAttrib2fvNV_remap_index 341 -#define VertexAttrib2sNV_remap_index 342 -#define VertexAttrib2svNV_remap_index 343 -#define VertexAttrib3dNV_remap_index 344 -#define VertexAttrib3dvNV_remap_index 345 -#define VertexAttrib3fNV_remap_index 346 -#define VertexAttrib3fvNV_remap_index 347 -#define VertexAttrib3sNV_remap_index 348 -#define VertexAttrib3svNV_remap_index 349 -#define VertexAttrib4dNV_remap_index 350 -#define VertexAttrib4dvNV_remap_index 351 -#define VertexAttrib4fNV_remap_index 352 -#define VertexAttrib4fvNV_remap_index 353 -#define VertexAttrib4sNV_remap_index 354 -#define VertexAttrib4svNV_remap_index 355 -#define VertexAttrib4ubNV_remap_index 356 -#define VertexAttrib4ubvNV_remap_index 357 -#define VertexAttribPointerNV_remap_index 358 -#define VertexAttribs1dvNV_remap_index 359 -#define VertexAttribs1fvNV_remap_index 360 -#define VertexAttribs1svNV_remap_index 361 -#define VertexAttribs2dvNV_remap_index 362 -#define VertexAttribs2fvNV_remap_index 363 -#define VertexAttribs2svNV_remap_index 364 -#define VertexAttribs3dvNV_remap_index 365 -#define VertexAttribs3fvNV_remap_index 366 -#define VertexAttribs3svNV_remap_index 367 -#define VertexAttribs4dvNV_remap_index 368 -#define VertexAttribs4fvNV_remap_index 369 -#define VertexAttribs4svNV_remap_index 370 -#define VertexAttribs4ubvNV_remap_index 371 -#define GetTexBumpParameterfvATI_remap_index 372 -#define GetTexBumpParameterivATI_remap_index 373 -#define TexBumpParameterfvATI_remap_index 374 -#define TexBumpParameterivATI_remap_index 375 -#define AlphaFragmentOp1ATI_remap_index 376 -#define AlphaFragmentOp2ATI_remap_index 377 -#define AlphaFragmentOp3ATI_remap_index 378 -#define BeginFragmentShaderATI_remap_index 379 -#define BindFragmentShaderATI_remap_index 380 -#define ColorFragmentOp1ATI_remap_index 381 -#define ColorFragmentOp2ATI_remap_index 382 -#define ColorFragmentOp3ATI_remap_index 383 -#define DeleteFragmentShaderATI_remap_index 384 -#define EndFragmentShaderATI_remap_index 385 -#define GenFragmentShadersATI_remap_index 386 -#define PassTexCoordATI_remap_index 387 -#define SampleMapATI_remap_index 388 -#define SetFragmentShaderConstantATI_remap_index 389 -#define PointParameteriNV_remap_index 390 -#define PointParameterivNV_remap_index 391 -#define ActiveStencilFaceEXT_remap_index 392 -#define BindVertexArrayAPPLE_remap_index 393 -#define DeleteVertexArraysAPPLE_remap_index 394 -#define GenVertexArraysAPPLE_remap_index 395 -#define IsVertexArrayAPPLE_remap_index 396 -#define GetProgramNamedParameterdvNV_remap_index 397 -#define GetProgramNamedParameterfvNV_remap_index 398 -#define ProgramNamedParameter4dNV_remap_index 399 -#define ProgramNamedParameter4dvNV_remap_index 400 -#define ProgramNamedParameter4fNV_remap_index 401 -#define ProgramNamedParameter4fvNV_remap_index 402 -#define PrimitiveRestartIndexNV_remap_index 403 -#define PrimitiveRestartNV_remap_index 404 -#define DepthBoundsEXT_remap_index 405 -#define BlendEquationSeparateEXT_remap_index 406 -#define BindFramebufferEXT_remap_index 407 -#define BindRenderbufferEXT_remap_index 408 -#define CheckFramebufferStatusEXT_remap_index 409 -#define DeleteFramebuffersEXT_remap_index 410 -#define DeleteRenderbuffersEXT_remap_index 411 -#define FramebufferRenderbufferEXT_remap_index 412 -#define FramebufferTexture1DEXT_remap_index 413 -#define FramebufferTexture2DEXT_remap_index 414 -#define FramebufferTexture3DEXT_remap_index 415 -#define GenFramebuffersEXT_remap_index 416 -#define GenRenderbuffersEXT_remap_index 417 -#define GenerateMipmapEXT_remap_index 418 -#define GetFramebufferAttachmentParameterivEXT_remap_index 419 -#define GetRenderbufferParameterivEXT_remap_index 420 -#define IsFramebufferEXT_remap_index 421 -#define IsRenderbufferEXT_remap_index 422 -#define RenderbufferStorageEXT_remap_index 423 -#define BlitFramebufferEXT_remap_index 424 -#define BufferParameteriAPPLE_remap_index 425 -#define FlushMappedBufferRangeAPPLE_remap_index 426 -#define BindFragDataLocationEXT_remap_index 427 -#define GetFragDataLocationEXT_remap_index 428 -#define GetUniformuivEXT_remap_index 429 -#define GetVertexAttribIivEXT_remap_index 430 -#define GetVertexAttribIuivEXT_remap_index 431 -#define Uniform1uiEXT_remap_index 432 -#define Uniform1uivEXT_remap_index 433 -#define Uniform2uiEXT_remap_index 434 -#define Uniform2uivEXT_remap_index 435 -#define Uniform3uiEXT_remap_index 436 -#define Uniform3uivEXT_remap_index 437 -#define Uniform4uiEXT_remap_index 438 -#define Uniform4uivEXT_remap_index 439 -#define VertexAttribI1iEXT_remap_index 440 -#define VertexAttribI1ivEXT_remap_index 441 -#define VertexAttribI1uiEXT_remap_index 442 -#define VertexAttribI1uivEXT_remap_index 443 -#define VertexAttribI2iEXT_remap_index 444 -#define VertexAttribI2ivEXT_remap_index 445 -#define VertexAttribI2uiEXT_remap_index 446 -#define VertexAttribI2uivEXT_remap_index 447 -#define VertexAttribI3iEXT_remap_index 448 -#define VertexAttribI3ivEXT_remap_index 449 -#define VertexAttribI3uiEXT_remap_index 450 -#define VertexAttribI3uivEXT_remap_index 451 -#define VertexAttribI4bvEXT_remap_index 452 -#define VertexAttribI4iEXT_remap_index 453 -#define VertexAttribI4ivEXT_remap_index 454 -#define VertexAttribI4svEXT_remap_index 455 -#define VertexAttribI4ubvEXT_remap_index 456 -#define VertexAttribI4uiEXT_remap_index 457 -#define VertexAttribI4uivEXT_remap_index 458 -#define VertexAttribI4usvEXT_remap_index 459 -#define VertexAttribIPointerEXT_remap_index 460 -#define FramebufferTextureLayerEXT_remap_index 461 -#define ColorMaskIndexedEXT_remap_index 462 -#define DisableIndexedEXT_remap_index 463 -#define EnableIndexedEXT_remap_index 464 -#define GetBooleanIndexedvEXT_remap_index 465 -#define GetIntegerIndexedvEXT_remap_index 466 -#define IsEnabledIndexedEXT_remap_index 467 -#define ClearColorIiEXT_remap_index 468 -#define ClearColorIuiEXT_remap_index 469 -#define GetTexParameterIivEXT_remap_index 470 -#define GetTexParameterIuivEXT_remap_index 471 -#define TexParameterIivEXT_remap_index 472 -#define TexParameterIuivEXT_remap_index 473 -#define BeginConditionalRenderNV_remap_index 474 -#define EndConditionalRenderNV_remap_index 475 -#define BeginTransformFeedbackEXT_remap_index 476 -#define BindBufferBaseEXT_remap_index 477 -#define BindBufferOffsetEXT_remap_index 478 -#define BindBufferRangeEXT_remap_index 479 -#define EndTransformFeedbackEXT_remap_index 480 -#define GetTransformFeedbackVaryingEXT_remap_index 481 -#define TransformFeedbackVaryingsEXT_remap_index 482 -#define ProvokingVertexEXT_remap_index 483 -#define GetTexParameterPointervAPPLE_remap_index 484 -#define TextureRangeAPPLE_remap_index 485 -#define GetObjectParameterivAPPLE_remap_index 486 -#define ObjectPurgeableAPPLE_remap_index 487 -#define ObjectUnpurgeableAPPLE_remap_index 488 -#define ActiveProgramEXT_remap_index 489 -#define CreateShaderProgramEXT_remap_index 490 -#define UseShaderProgramEXT_remap_index 491 -#define TextureBarrierNV_remap_index 492 -#define StencilFuncSeparateATI_remap_index 493 -#define ProgramEnvParameters4fvEXT_remap_index 494 -#define ProgramLocalParameters4fvEXT_remap_index 495 -#define GetQueryObjecti64vEXT_remap_index 496 -#define GetQueryObjectui64vEXT_remap_index 497 -#define EGLImageTargetRenderbufferStorageOES_remap_index 498 -#define EGLImageTargetTexture2DOES_remap_index 499 +#define GetGraphicsResetStatusARB_remap_index 218 +#define GetnColorTableARB_remap_index 219 +#define GetnCompressedTexImageARB_remap_index 220 +#define GetnConvolutionFilterARB_remap_index 221 +#define GetnHistogramARB_remap_index 222 +#define GetnMapdvARB_remap_index 223 +#define GetnMapfvARB_remap_index 224 +#define GetnMapivARB_remap_index 225 +#define GetnMinmaxARB_remap_index 226 +#define GetnPixelMapfvARB_remap_index 227 +#define GetnPixelMapuivARB_remap_index 228 +#define GetnPixelMapusvARB_remap_index 229 +#define GetnPolygonStippleARB_remap_index 230 +#define GetnSeparableFilterARB_remap_index 231 +#define GetnTexImageARB_remap_index 232 +#define GetnUniformdvARB_remap_index 233 +#define GetnUniformfvARB_remap_index 234 +#define GetnUniformivARB_remap_index 235 +#define GetnUniformuivARB_remap_index 236 +#define ReadnPixelsARB_remap_index 237 +#define PolygonOffsetEXT_remap_index 238 +#define GetPixelTexGenParameterfvSGIS_remap_index 239 +#define GetPixelTexGenParameterivSGIS_remap_index 240 +#define PixelTexGenParameterfSGIS_remap_index 241 +#define PixelTexGenParameterfvSGIS_remap_index 242 +#define PixelTexGenParameteriSGIS_remap_index 243 +#define PixelTexGenParameterivSGIS_remap_index 244 +#define SampleMaskSGIS_remap_index 245 +#define SamplePatternSGIS_remap_index 246 +#define ColorPointerEXT_remap_index 247 +#define EdgeFlagPointerEXT_remap_index 248 +#define IndexPointerEXT_remap_index 249 +#define NormalPointerEXT_remap_index 250 +#define TexCoordPointerEXT_remap_index 251 +#define VertexPointerEXT_remap_index 252 +#define PointParameterfEXT_remap_index 253 +#define PointParameterfvEXT_remap_index 254 +#define LockArraysEXT_remap_index 255 +#define UnlockArraysEXT_remap_index 256 +#define SecondaryColor3bEXT_remap_index 257 +#define SecondaryColor3bvEXT_remap_index 258 +#define SecondaryColor3dEXT_remap_index 259 +#define SecondaryColor3dvEXT_remap_index 260 +#define SecondaryColor3fEXT_remap_index 261 +#define SecondaryColor3fvEXT_remap_index 262 +#define SecondaryColor3iEXT_remap_index 263 +#define SecondaryColor3ivEXT_remap_index 264 +#define SecondaryColor3sEXT_remap_index 265 +#define SecondaryColor3svEXT_remap_index 266 +#define SecondaryColor3ubEXT_remap_index 267 +#define SecondaryColor3ubvEXT_remap_index 268 +#define SecondaryColor3uiEXT_remap_index 269 +#define SecondaryColor3uivEXT_remap_index 270 +#define SecondaryColor3usEXT_remap_index 271 +#define SecondaryColor3usvEXT_remap_index 272 +#define SecondaryColorPointerEXT_remap_index 273 +#define MultiDrawArraysEXT_remap_index 274 +#define MultiDrawElementsEXT_remap_index 275 +#define FogCoordPointerEXT_remap_index 276 +#define FogCoorddEXT_remap_index 277 +#define FogCoorddvEXT_remap_index 278 +#define FogCoordfEXT_remap_index 279 +#define FogCoordfvEXT_remap_index 280 +#define PixelTexGenSGIX_remap_index 281 +#define BlendFuncSeparateEXT_remap_index 282 +#define FlushVertexArrayRangeNV_remap_index 283 +#define VertexArrayRangeNV_remap_index 284 +#define CombinerInputNV_remap_index 285 +#define CombinerOutputNV_remap_index 286 +#define CombinerParameterfNV_remap_index 287 +#define CombinerParameterfvNV_remap_index 288 +#define CombinerParameteriNV_remap_index 289 +#define CombinerParameterivNV_remap_index 290 +#define FinalCombinerInputNV_remap_index 291 +#define GetCombinerInputParameterfvNV_remap_index 292 +#define GetCombinerInputParameterivNV_remap_index 293 +#define GetCombinerOutputParameterfvNV_remap_index 294 +#define GetCombinerOutputParameterivNV_remap_index 295 +#define GetFinalCombinerInputParameterfvNV_remap_index 296 +#define GetFinalCombinerInputParameterivNV_remap_index 297 +#define ResizeBuffersMESA_remap_index 298 +#define WindowPos2dMESA_remap_index 299 +#define WindowPos2dvMESA_remap_index 300 +#define WindowPos2fMESA_remap_index 301 +#define WindowPos2fvMESA_remap_index 302 +#define WindowPos2iMESA_remap_index 303 +#define WindowPos2ivMESA_remap_index 304 +#define WindowPos2sMESA_remap_index 305 +#define WindowPos2svMESA_remap_index 306 +#define WindowPos3dMESA_remap_index 307 +#define WindowPos3dvMESA_remap_index 308 +#define WindowPos3fMESA_remap_index 309 +#define WindowPos3fvMESA_remap_index 310 +#define WindowPos3iMESA_remap_index 311 +#define WindowPos3ivMESA_remap_index 312 +#define WindowPos3sMESA_remap_index 313 +#define WindowPos3svMESA_remap_index 314 +#define WindowPos4dMESA_remap_index 315 +#define WindowPos4dvMESA_remap_index 316 +#define WindowPos4fMESA_remap_index 317 +#define WindowPos4fvMESA_remap_index 318 +#define WindowPos4iMESA_remap_index 319 +#define WindowPos4ivMESA_remap_index 320 +#define WindowPos4sMESA_remap_index 321 +#define WindowPos4svMESA_remap_index 322 +#define MultiModeDrawArraysIBM_remap_index 323 +#define MultiModeDrawElementsIBM_remap_index 324 +#define DeleteFencesNV_remap_index 325 +#define FinishFenceNV_remap_index 326 +#define GenFencesNV_remap_index 327 +#define GetFenceivNV_remap_index 328 +#define IsFenceNV_remap_index 329 +#define SetFenceNV_remap_index 330 +#define TestFenceNV_remap_index 331 +#define AreProgramsResidentNV_remap_index 332 +#define BindProgramNV_remap_index 333 +#define DeleteProgramsNV_remap_index 334 +#define ExecuteProgramNV_remap_index 335 +#define GenProgramsNV_remap_index 336 +#define GetProgramParameterdvNV_remap_index 337 +#define GetProgramParameterfvNV_remap_index 338 +#define GetProgramStringNV_remap_index 339 +#define GetProgramivNV_remap_index 340 +#define GetTrackMatrixivNV_remap_index 341 +#define GetVertexAttribPointervNV_remap_index 342 +#define GetVertexAttribdvNV_remap_index 343 +#define GetVertexAttribfvNV_remap_index 344 +#define GetVertexAttribivNV_remap_index 345 +#define IsProgramNV_remap_index 346 +#define LoadProgramNV_remap_index 347 +#define ProgramParameters4dvNV_remap_index 348 +#define ProgramParameters4fvNV_remap_index 349 +#define RequestResidentProgramsNV_remap_index 350 +#define TrackMatrixNV_remap_index 351 +#define VertexAttrib1dNV_remap_index 352 +#define VertexAttrib1dvNV_remap_index 353 +#define VertexAttrib1fNV_remap_index 354 +#define VertexAttrib1fvNV_remap_index 355 +#define VertexAttrib1sNV_remap_index 356 +#define VertexAttrib1svNV_remap_index 357 +#define VertexAttrib2dNV_remap_index 358 +#define VertexAttrib2dvNV_remap_index 359 +#define VertexAttrib2fNV_remap_index 360 +#define VertexAttrib2fvNV_remap_index 361 +#define VertexAttrib2sNV_remap_index 362 +#define VertexAttrib2svNV_remap_index 363 +#define VertexAttrib3dNV_remap_index 364 +#define VertexAttrib3dvNV_remap_index 365 +#define VertexAttrib3fNV_remap_index 366 +#define VertexAttrib3fvNV_remap_index 367 +#define VertexAttrib3sNV_remap_index 368 +#define VertexAttrib3svNV_remap_index 369 +#define VertexAttrib4dNV_remap_index 370 +#define VertexAttrib4dvNV_remap_index 371 +#define VertexAttrib4fNV_remap_index 372 +#define VertexAttrib4fvNV_remap_index 373 +#define VertexAttrib4sNV_remap_index 374 +#define VertexAttrib4svNV_remap_index 375 +#define VertexAttrib4ubNV_remap_index 376 +#define VertexAttrib4ubvNV_remap_index 377 +#define VertexAttribPointerNV_remap_index 378 +#define VertexAttribs1dvNV_remap_index 379 +#define VertexAttribs1fvNV_remap_index 380 +#define VertexAttribs1svNV_remap_index 381 +#define VertexAttribs2dvNV_remap_index 382 +#define VertexAttribs2fvNV_remap_index 383 +#define VertexAttribs2svNV_remap_index 384 +#define VertexAttribs3dvNV_remap_index 385 +#define VertexAttribs3fvNV_remap_index 386 +#define VertexAttribs3svNV_remap_index 387 +#define VertexAttribs4dvNV_remap_index 388 +#define VertexAttribs4fvNV_remap_index 389 +#define VertexAttribs4svNV_remap_index 390 +#define VertexAttribs4ubvNV_remap_index 391 +#define GetTexBumpParameterfvATI_remap_index 392 +#define GetTexBumpParameterivATI_remap_index 393 +#define TexBumpParameterfvATI_remap_index 394 +#define TexBumpParameterivATI_remap_index 395 +#define AlphaFragmentOp1ATI_remap_index 396 +#define AlphaFragmentOp2ATI_remap_index 397 +#define AlphaFragmentOp3ATI_remap_index 398 +#define BeginFragmentShaderATI_remap_index 399 +#define BindFragmentShaderATI_remap_index 400 +#define ColorFragmentOp1ATI_remap_index 401 +#define ColorFragmentOp2ATI_remap_index 402 +#define ColorFragmentOp3ATI_remap_index 403 +#define DeleteFragmentShaderATI_remap_index 404 +#define EndFragmentShaderATI_remap_index 405 +#define GenFragmentShadersATI_remap_index 406 +#define PassTexCoordATI_remap_index 407 +#define SampleMapATI_remap_index 408 +#define SetFragmentShaderConstantATI_remap_index 409 +#define PointParameteriNV_remap_index 410 +#define PointParameterivNV_remap_index 411 +#define ActiveStencilFaceEXT_remap_index 412 +#define BindVertexArrayAPPLE_remap_index 413 +#define DeleteVertexArraysAPPLE_remap_index 414 +#define GenVertexArraysAPPLE_remap_index 415 +#define IsVertexArrayAPPLE_remap_index 416 +#define GetProgramNamedParameterdvNV_remap_index 417 +#define GetProgramNamedParameterfvNV_remap_index 418 +#define ProgramNamedParameter4dNV_remap_index 419 +#define ProgramNamedParameter4dvNV_remap_index 420 +#define ProgramNamedParameter4fNV_remap_index 421 +#define ProgramNamedParameter4fvNV_remap_index 422 +#define PrimitiveRestartIndexNV_remap_index 423 +#define PrimitiveRestartNV_remap_index 424 +#define DepthBoundsEXT_remap_index 425 +#define BlendEquationSeparateEXT_remap_index 426 +#define BindFramebufferEXT_remap_index 427 +#define BindRenderbufferEXT_remap_index 428 +#define CheckFramebufferStatusEXT_remap_index 429 +#define DeleteFramebuffersEXT_remap_index 430 +#define DeleteRenderbuffersEXT_remap_index 431 +#define FramebufferRenderbufferEXT_remap_index 432 +#define FramebufferTexture1DEXT_remap_index 433 +#define FramebufferTexture2DEXT_remap_index 434 +#define FramebufferTexture3DEXT_remap_index 435 +#define GenFramebuffersEXT_remap_index 436 +#define GenRenderbuffersEXT_remap_index 437 +#define GenerateMipmapEXT_remap_index 438 +#define GetFramebufferAttachmentParameterivEXT_remap_index 439 +#define GetRenderbufferParameterivEXT_remap_index 440 +#define IsFramebufferEXT_remap_index 441 +#define IsRenderbufferEXT_remap_index 442 +#define RenderbufferStorageEXT_remap_index 443 +#define BlitFramebufferEXT_remap_index 444 +#define BufferParameteriAPPLE_remap_index 445 +#define FlushMappedBufferRangeAPPLE_remap_index 446 +#define BindFragDataLocationEXT_remap_index 447 +#define GetFragDataLocationEXT_remap_index 448 +#define GetUniformuivEXT_remap_index 449 +#define GetVertexAttribIivEXT_remap_index 450 +#define GetVertexAttribIuivEXT_remap_index 451 +#define Uniform1uiEXT_remap_index 452 +#define Uniform1uivEXT_remap_index 453 +#define Uniform2uiEXT_remap_index 454 +#define Uniform2uivEXT_remap_index 455 +#define Uniform3uiEXT_remap_index 456 +#define Uniform3uivEXT_remap_index 457 +#define Uniform4uiEXT_remap_index 458 +#define Uniform4uivEXT_remap_index 459 +#define VertexAttribI1iEXT_remap_index 460 +#define VertexAttribI1ivEXT_remap_index 461 +#define VertexAttribI1uiEXT_remap_index 462 +#define VertexAttribI1uivEXT_remap_index 463 +#define VertexAttribI2iEXT_remap_index 464 +#define VertexAttribI2ivEXT_remap_index 465 +#define VertexAttribI2uiEXT_remap_index 466 +#define VertexAttribI2uivEXT_remap_index 467 +#define VertexAttribI3iEXT_remap_index 468 +#define VertexAttribI3ivEXT_remap_index 469 +#define VertexAttribI3uiEXT_remap_index 470 +#define VertexAttribI3uivEXT_remap_index 471 +#define VertexAttribI4bvEXT_remap_index 472 +#define VertexAttribI4iEXT_remap_index 473 +#define VertexAttribI4ivEXT_remap_index 474 +#define VertexAttribI4svEXT_remap_index 475 +#define VertexAttribI4ubvEXT_remap_index 476 +#define VertexAttribI4uiEXT_remap_index 477 +#define VertexAttribI4uivEXT_remap_index 478 +#define VertexAttribI4usvEXT_remap_index 479 +#define VertexAttribIPointerEXT_remap_index 480 +#define FramebufferTextureLayerEXT_remap_index 481 +#define ColorMaskIndexedEXT_remap_index 482 +#define DisableIndexedEXT_remap_index 483 +#define EnableIndexedEXT_remap_index 484 +#define GetBooleanIndexedvEXT_remap_index 485 +#define GetIntegerIndexedvEXT_remap_index 486 +#define IsEnabledIndexedEXT_remap_index 487 +#define ClearColorIiEXT_remap_index 488 +#define ClearColorIuiEXT_remap_index 489 +#define GetTexParameterIivEXT_remap_index 490 +#define GetTexParameterIuivEXT_remap_index 491 +#define TexParameterIivEXT_remap_index 492 +#define TexParameterIuivEXT_remap_index 493 +#define BeginConditionalRenderNV_remap_index 494 +#define EndConditionalRenderNV_remap_index 495 +#define BeginTransformFeedbackEXT_remap_index 496 +#define BindBufferBaseEXT_remap_index 497 +#define BindBufferOffsetEXT_remap_index 498 +#define BindBufferRangeEXT_remap_index 499 +#define EndTransformFeedbackEXT_remap_index 500 +#define GetTransformFeedbackVaryingEXT_remap_index 501 +#define TransformFeedbackVaryingsEXT_remap_index 502 +#define ProvokingVertexEXT_remap_index 503 +#define GetTexParameterPointervAPPLE_remap_index 504 +#define TextureRangeAPPLE_remap_index 505 +#define GetObjectParameterivAPPLE_remap_index 506 +#define ObjectPurgeableAPPLE_remap_index 507 +#define ObjectUnpurgeableAPPLE_remap_index 508 +#define ActiveProgramEXT_remap_index 509 +#define CreateShaderProgramEXT_remap_index 510 +#define UseShaderProgramEXT_remap_index 511 +#define TextureBarrierNV_remap_index 512 +#define StencilFuncSeparateATI_remap_index 513 +#define ProgramEnvParameters4fvEXT_remap_index 514 +#define ProgramLocalParameters4fvEXT_remap_index 515 +#define GetQueryObjecti64vEXT_remap_index 516 +#define GetQueryObjectui64vEXT_remap_index 517 +#define EGLImageTargetRenderbufferStorageOES_remap_index 518 +#define EGLImageTargetTexture2DOES_remap_index 519 #define _gloffset_AttachShader driDispatchRemapTable[AttachShader_remap_index] #define _gloffset_CreateProgram driDispatchRemapTable[CreateProgram_remap_index] @@ -1697,6 +1737,26 @@ extern int driDispatchRemapTable[ driDispatchRemapTable_size ]; #define _gloffset_GetShaderPrecisionFormat driDispatchRemapTable[GetShaderPrecisionFormat_remap_index] #define _gloffset_ReleaseShaderCompiler driDispatchRemapTable[ReleaseShaderCompiler_remap_index] #define _gloffset_ShaderBinary driDispatchRemapTable[ShaderBinary_remap_index] +#define _gloffset_GetGraphicsResetStatusARB driDispatchRemapTable[GetGraphicsResetStatusARB_remap_index] +#define _gloffset_GetnColorTableARB driDispatchRemapTable[GetnColorTableARB_remap_index] +#define _gloffset_GetnCompressedTexImageARB driDispatchRemapTable[GetnCompressedTexImageARB_remap_index] +#define _gloffset_GetnConvolutionFilterARB driDispatchRemapTable[GetnConvolutionFilterARB_remap_index] +#define _gloffset_GetnHistogramARB driDispatchRemapTable[GetnHistogramARB_remap_index] +#define _gloffset_GetnMapdvARB driDispatchRemapTable[GetnMapdvARB_remap_index] +#define _gloffset_GetnMapfvARB driDispatchRemapTable[GetnMapfvARB_remap_index] +#define _gloffset_GetnMapivARB driDispatchRemapTable[GetnMapivARB_remap_index] +#define _gloffset_GetnMinmaxARB driDispatchRemapTable[GetnMinmaxARB_remap_index] +#define _gloffset_GetnPixelMapfvARB driDispatchRemapTable[GetnPixelMapfvARB_remap_index] +#define _gloffset_GetnPixelMapuivARB driDispatchRemapTable[GetnPixelMapuivARB_remap_index] +#define _gloffset_GetnPixelMapusvARB driDispatchRemapTable[GetnPixelMapusvARB_remap_index] +#define _gloffset_GetnPolygonStippleARB driDispatchRemapTable[GetnPolygonStippleARB_remap_index] +#define _gloffset_GetnSeparableFilterARB driDispatchRemapTable[GetnSeparableFilterARB_remap_index] +#define _gloffset_GetnTexImageARB driDispatchRemapTable[GetnTexImageARB_remap_index] +#define _gloffset_GetnUniformdvARB driDispatchRemapTable[GetnUniformdvARB_remap_index] +#define _gloffset_GetnUniformfvARB driDispatchRemapTable[GetnUniformfvARB_remap_index] +#define _gloffset_GetnUniformivARB driDispatchRemapTable[GetnUniformivARB_remap_index] +#define _gloffset_GetnUniformuivARB driDispatchRemapTable[GetnUniformuivARB_remap_index] +#define _gloffset_ReadnPixelsARB driDispatchRemapTable[ReadnPixelsARB_remap_index] #define _gloffset_PolygonOffsetEXT driDispatchRemapTable[PolygonOffsetEXT_remap_index] #define _gloffset_GetPixelTexGenParameterfvSGIS driDispatchRemapTable[GetPixelTexGenParameterfvSGIS_remap_index] #define _gloffset_GetPixelTexGenParameterivSGIS driDispatchRemapTable[GetPixelTexGenParameterivSGIS_remap_index] @@ -3860,6 +3920,66 @@ extern int driDispatchRemapTable[ driDispatchRemapTable_size ]; #define CALL_ShaderBinary(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *, GLenum, const GLvoid *, GLsizei)), _gloffset_ShaderBinary, parameters) #define GET_ShaderBinary(disp) GET_by_offset(disp, _gloffset_ShaderBinary) #define SET_ShaderBinary(disp, fn) SET_by_offset(disp, _gloffset_ShaderBinary, fn) +#define CALL_GetGraphicsResetStatusARB(disp, parameters) CALL_by_offset(disp, (GLenum (GLAPIENTRYP)(void)), _gloffset_GetGraphicsResetStatusARB, parameters) +#define GET_GetGraphicsResetStatusARB(disp) GET_by_offset(disp, _gloffset_GetGraphicsResetStatusARB) +#define SET_GetGraphicsResetStatusARB(disp, fn) SET_by_offset(disp, _gloffset_GetGraphicsResetStatusARB, fn) +#define CALL_GetnColorTableARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLsizei, GLvoid *)), _gloffset_GetnColorTableARB, parameters) +#define GET_GetnColorTableARB(disp) GET_by_offset(disp, _gloffset_GetnColorTableARB) +#define SET_GetnColorTableARB(disp, fn) SET_by_offset(disp, _gloffset_GetnColorTableARB, fn) +#define CALL_GetnCompressedTexImageARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLsizei, GLvoid *)), _gloffset_GetnCompressedTexImageARB, parameters) +#define GET_GetnCompressedTexImageARB(disp) GET_by_offset(disp, _gloffset_GetnCompressedTexImageARB) +#define SET_GetnCompressedTexImageARB(disp, fn) SET_by_offset(disp, _gloffset_GetnCompressedTexImageARB, fn) +#define CALL_GetnConvolutionFilterARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLsizei, GLvoid *)), _gloffset_GetnConvolutionFilterARB, parameters) +#define GET_GetnConvolutionFilterARB(disp) GET_by_offset(disp, _gloffset_GetnConvolutionFilterARB) +#define SET_GetnConvolutionFilterARB(disp, fn) SET_by_offset(disp, _gloffset_GetnConvolutionFilterARB, fn) +#define CALL_GetnHistogramARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLboolean, GLenum, GLenum, GLsizei, GLvoid *)), _gloffset_GetnHistogramARB, parameters) +#define GET_GetnHistogramARB(disp) GET_by_offset(disp, _gloffset_GetnHistogramARB) +#define SET_GetnHistogramARB(disp, fn) SET_by_offset(disp, _gloffset_GetnHistogramARB, fn) +#define CALL_GetnMapdvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLsizei, GLdouble *)), _gloffset_GetnMapdvARB, parameters) +#define GET_GetnMapdvARB(disp) GET_by_offset(disp, _gloffset_GetnMapdvARB) +#define SET_GetnMapdvARB(disp, fn) SET_by_offset(disp, _gloffset_GetnMapdvARB, fn) +#define CALL_GetnMapfvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLsizei, GLfloat *)), _gloffset_GetnMapfvARB, parameters) +#define GET_GetnMapfvARB(disp) GET_by_offset(disp, _gloffset_GetnMapfvARB) +#define SET_GetnMapfvARB(disp, fn) SET_by_offset(disp, _gloffset_GetnMapfvARB, fn) +#define CALL_GetnMapivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLsizei, GLint *)), _gloffset_GetnMapivARB, parameters) +#define GET_GetnMapivARB(disp) GET_by_offset(disp, _gloffset_GetnMapivARB) +#define SET_GetnMapivARB(disp, fn) SET_by_offset(disp, _gloffset_GetnMapivARB, fn) +#define CALL_GetnMinmaxARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLboolean, GLenum, GLenum, GLsizei, GLvoid *)), _gloffset_GetnMinmaxARB, parameters) +#define GET_GetnMinmaxARB(disp) GET_by_offset(disp, _gloffset_GetnMinmaxARB) +#define SET_GetnMinmaxARB(disp, fn) SET_by_offset(disp, _gloffset_GetnMinmaxARB, fn) +#define CALL_GetnPixelMapfvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLfloat *)), _gloffset_GetnPixelMapfvARB, parameters) +#define GET_GetnPixelMapfvARB(disp) GET_by_offset(disp, _gloffset_GetnPixelMapfvARB) +#define SET_GetnPixelMapfvARB(disp, fn) SET_by_offset(disp, _gloffset_GetnPixelMapfvARB, fn) +#define CALL_GetnPixelMapuivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLuint *)), _gloffset_GetnPixelMapuivARB, parameters) +#define GET_GetnPixelMapuivARB(disp) GET_by_offset(disp, _gloffset_GetnPixelMapuivARB) +#define SET_GetnPixelMapuivARB(disp, fn) SET_by_offset(disp, _gloffset_GetnPixelMapuivARB, fn) +#define CALL_GetnPixelMapusvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLushort *)), _gloffset_GetnPixelMapusvARB, parameters) +#define GET_GetnPixelMapusvARB(disp) GET_by_offset(disp, _gloffset_GetnPixelMapusvARB) +#define SET_GetnPixelMapusvARB(disp, fn) SET_by_offset(disp, _gloffset_GetnPixelMapusvARB, fn) +#define CALL_GetnPolygonStippleARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLubyte *)), _gloffset_GetnPolygonStippleARB, parameters) +#define GET_GetnPolygonStippleARB(disp) GET_by_offset(disp, _gloffset_GetnPolygonStippleARB) +#define SET_GetnPolygonStippleARB(disp, fn) SET_by_offset(disp, _gloffset_GetnPolygonStippleARB, fn) +#define CALL_GetnSeparableFilterARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLsizei, GLvoid *, GLsizei, GLvoid *, GLvoid *)), _gloffset_GetnSeparableFilterARB, parameters) +#define GET_GetnSeparableFilterARB(disp) GET_by_offset(disp, _gloffset_GetnSeparableFilterARB) +#define SET_GetnSeparableFilterARB(disp, fn) SET_by_offset(disp, _gloffset_GetnSeparableFilterARB, fn) +#define CALL_GetnTexImageARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLenum, GLsizei, GLvoid *)), _gloffset_GetnTexImageARB, parameters) +#define GET_GetnTexImageARB(disp) GET_by_offset(disp, _gloffset_GetnTexImageARB) +#define SET_GetnTexImageARB(disp, fn) SET_by_offset(disp, _gloffset_GetnTexImageARB, fn) +#define CALL_GetnUniformdvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLint, GLsizei, GLdouble *)), _gloffset_GetnUniformdvARB, parameters) +#define GET_GetnUniformdvARB(disp) GET_by_offset(disp, _gloffset_GetnUniformdvARB) +#define SET_GetnUniformdvARB(disp, fn) SET_by_offset(disp, _gloffset_GetnUniformdvARB, fn) +#define CALL_GetnUniformfvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLint, GLsizei, GLfloat *)), _gloffset_GetnUniformfvARB, parameters) +#define GET_GetnUniformfvARB(disp) GET_by_offset(disp, _gloffset_GetnUniformfvARB) +#define SET_GetnUniformfvARB(disp, fn) SET_by_offset(disp, _gloffset_GetnUniformfvARB, fn) +#define CALL_GetnUniformivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLint, GLsizei, GLint *)), _gloffset_GetnUniformivARB, parameters) +#define GET_GetnUniformivARB(disp) GET_by_offset(disp, _gloffset_GetnUniformivARB) +#define SET_GetnUniformivARB(disp, fn) SET_by_offset(disp, _gloffset_GetnUniformivARB, fn) +#define CALL_GetnUniformuivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLint, GLsizei, GLuint *)), _gloffset_GetnUniformuivARB, parameters) +#define GET_GetnUniformuivARB(disp) GET_by_offset(disp, _gloffset_GetnUniformuivARB) +#define SET_GetnUniformuivARB(disp, fn) SET_by_offset(disp, _gloffset_GetnUniformuivARB, fn) +#define CALL_ReadnPixelsARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLsizei, GLvoid *)), _gloffset_ReadnPixelsARB, parameters) +#define GET_ReadnPixelsARB(disp) GET_by_offset(disp, _gloffset_ReadnPixelsARB) +#define SET_ReadnPixelsARB(disp, fn) SET_by_offset(disp, _gloffset_ReadnPixelsARB, fn) #define CALL_PolygonOffsetEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat)), _gloffset_PolygonOffsetEXT, parameters) #define GET_PolygonOffsetEXT(disp) GET_by_offset(disp, _gloffset_PolygonOffsetEXT) #define SET_PolygonOffsetEXT(disp, fn) SET_by_offset(disp, _gloffset_PolygonOffsetEXT, fn) diff --git a/src/mesa/main/histogram.c b/src/mesa/main/histogram.c index 75bb9259416..44fc1325ceb 100644 --- a/src/mesa/main/histogram.c +++ b/src/mesa/main/histogram.c @@ -44,7 +44,8 @@ static void GLAPIENTRY _mesa_ResetMinmax(GLenum target); static void GLAPIENTRY -_mesa_GetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values) +_mesa_GetnMinmaxARB(GLenum target, GLboolean reset, GLenum format, + GLenum type, GLsizei bufSize, GLvoid *values) { GET_CURRENT_CONTEXT(ctx); @@ -53,7 +54,16 @@ _mesa_GetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvo static void GLAPIENTRY -_mesa_GetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values) +_mesa_GetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, + GLvoid *values) +{ + _mesa_GetnMinmaxARB(target, reset, format, type, INT_MAX, values); +} + + +static void GLAPIENTRY +_mesa_GetnHistogramARB(GLenum target, GLboolean reset, GLenum format, + GLenum type, GLsizei bufSize, GLvoid *values) { GET_CURRENT_CONTEXT(ctx); @@ -62,6 +72,14 @@ _mesa_GetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, G static void GLAPIENTRY +_mesa_GetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, + GLvoid *values) +{ + _mesa_GetnHistogramARB(target, reset, format, type, INT_MAX, values); +} + + +static void GLAPIENTRY _mesa_GetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params) { GET_CURRENT_CONTEXT(ctx); @@ -146,6 +164,10 @@ _mesa_init_histogram_dispatch(struct _glapi_table *disp) SET_Minmax(disp, _mesa_Minmax); SET_ResetHistogram(disp, _mesa_ResetHistogram); SET_ResetMinmax(disp, _mesa_ResetMinmax); + + /* GL_ARB_robustness */ + SET_GetnHistogramARB(disp, _mesa_GetnHistogramARB); + SET_GetnMinmaxARB(disp, _mesa_GetnMinmaxARB); } #endif /* FEATURE_histogram */ diff --git a/src/mesa/main/image.c b/src/mesa/main/image.c index 28841c25102..6d7bc735887 100644 --- a/src/mesa/main/image.c +++ b/src/mesa/main/image.c @@ -82,6 +82,8 @@ _mesa_type_is_packed(GLenum type) case GL_UNSIGNED_SHORT_8_8_MESA: case GL_UNSIGNED_SHORT_8_8_REV_MESA: case GL_UNSIGNED_INT_24_8_EXT: + case GL_UNSIGNED_INT_5_9_9_9_REV: + case GL_UNSIGNED_INT_10F_11F_11F_REV: return GL_TRUE; } @@ -222,6 +224,10 @@ _mesa_sizeof_packed_type( GLenum type ) return sizeof(GLushort); case GL_UNSIGNED_INT_24_8_EXT: return sizeof(GLuint); + case GL_UNSIGNED_INT_5_9_9_9_REV: + return sizeof(GLuint); + case GL_UNSIGNED_INT_10F_11F_11F_REV: + return sizeof(GLuint); default: return -1; } @@ -363,6 +369,16 @@ _mesa_bytes_per_pixel( GLenum format, GLenum type ) return sizeof(GLuint); else return -1; + case GL_UNSIGNED_INT_5_9_9_9_REV: + if (format == GL_RGB) + return sizeof(GLuint); + else + return -1; + case GL_UNSIGNED_INT_10F_11F_11F_REV: + if (format == GL_RGB) + return sizeof(GLuint); + else + return -1; default: return -1; } @@ -458,6 +474,10 @@ _mesa_is_legal_format_and_type(const struct gl_context *ctx, return GL_TRUE; case GL_HALF_FLOAT_ARB: return ctx->Extensions.ARB_half_float_pixel; + case GL_UNSIGNED_INT_5_9_9_9_REV: + return ctx->Extensions.EXT_texture_shared_exponent; + case GL_UNSIGNED_INT_10F_11F_11F_REV: + return ctx->Extensions.EXT_packed_float; default: return GL_FALSE; } @@ -821,6 +841,8 @@ _mesa_is_color_format(GLenum format) case GL_INTENSITY_SNORM: case GL_INTENSITY8_SNORM: case GL_INTENSITY16_SNORM: + case GL_RGB9_E5: + case GL_R11F_G11F_B10F: return GL_TRUE; case GL_YCBCR_MESA: /* not considered to be RGB */ /* fall-through */ diff --git a/src/mesa/main/macros.h b/src/mesa/main/macros.h index 86a58cc6b43..01e4d20afbf 100644 --- a/src/mesa/main/macros.h +++ b/src/mesa/main/macros.h @@ -669,6 +669,10 @@ do { \ /** Maximum of two values: */ #define MAX2( A, B ) ( (A)>(B) ? (A) : (B) ) +/** Minimum and maximum of three values: */ +#define MIN3( A, B, C ) ((A) < (B) ? MIN2(A, C) : MIN2(B, C)) +#define MAX3( A, B, C ) ((A) > (B) ? MAX2(A, C) : MAX2(B, C)) + /** Dot product of two 2-element vectors */ #define DOT2( a, b ) ( (a)[0]*(b)[0] + (a)[1]*(b)[1] ) diff --git a/src/mesa/main/mipmap.c b/src/mesa/main/mipmap.c index e594160ad9e..e9fcb545a1e 100644 --- a/src/mesa/main/mipmap.c +++ b/src/mesa/main/mipmap.c @@ -34,6 +34,9 @@ #include "teximage.h" #include "texstore.h" #include "image.h" +#include "macros.h" +#include "../../gallium/auxiliary/util/u_format_rgb9e5.h" +#include "../../gallium/auxiliary/util/u_format_r11g11b10f.h" @@ -634,6 +637,75 @@ do_row(GLenum datatype, GLuint comps, GLint srcWidth, } } + else if (datatype == GL_UNSIGNED_INT_2_10_10_10_REV && comps == 4) { + GLuint i, j, k; + const GLuint *rowA = (const GLuint *) srcRowA; + const GLuint *rowB = (const GLuint *) srcRowB; + GLuint *dst = (GLuint *) dstRow; + for (i = j = 0, k = k0; i < (GLuint) dstWidth; + i++, j += colStride, k += colStride) { + const GLint rowAr0 = rowA[j] & 0x3ff; + const GLint rowAr1 = rowA[k] & 0x3ff; + const GLint rowBr0 = rowB[j] & 0x3ff; + const GLint rowBr1 = rowB[k] & 0x3ff; + const GLint rowAg0 = (rowA[j] >> 10) & 0x3ff; + const GLint rowAg1 = (rowA[k] >> 10) & 0x3ff; + const GLint rowBg0 = (rowB[j] >> 10) & 0x3ff; + const GLint rowBg1 = (rowB[k] >> 10) & 0x3ff; + const GLint rowAb0 = (rowA[j] >> 20) & 0x3ff; + const GLint rowAb1 = (rowA[k] >> 20) & 0x3ff; + const GLint rowBb0 = (rowB[j] >> 20) & 0x3ff; + const GLint rowBb1 = (rowB[k] >> 20) & 0x3ff; + const GLint rowAa0 = (rowA[j] >> 30) & 0x3; + const GLint rowAa1 = (rowA[k] >> 30) & 0x3; + const GLint rowBa0 = (rowB[j] >> 30) & 0x3; + const GLint rowBa1 = (rowB[k] >> 30) & 0x3; + const GLint red = (rowAr0 + rowAr1 + rowBr0 + rowBr1) >> 2; + const GLint green = (rowAg0 + rowAg1 + rowBg0 + rowBg1) >> 2; + const GLint blue = (rowAb0 + rowAb1 + rowBb0 + rowBb1) >> 2; + const GLint alpha = (rowAa0 + rowAa1 + rowBa0 + rowBa1) >> 2; + dst[i] = (alpha << 30) | (blue << 20) | (green << 10) | red; + } + } + + else if (datatype == GL_UNSIGNED_INT_5_9_9_9_REV && comps == 3) { + GLuint i, j, k; + const GLuint *rowA = (const GLuint*) srcRowA; + const GLuint *rowB = (const GLuint*) srcRowB; + GLuint *dst = (GLuint*)dstRow; + GLfloat res[3], rowAj[3], rowBj[3], rowAk[3], rowBk[3]; + for (i = j = 0, k = k0; i < (GLuint) dstWidth; + i++, j += colStride, k += colStride) { + rgb9e5_to_float3(rowA[j], rowAj); + rgb9e5_to_float3(rowB[j], rowBj); + rgb9e5_to_float3(rowA[k], rowAk); + rgb9e5_to_float3(rowB[k], rowBk); + res[0] = (rowAj[0] + rowAk[0] + rowBj[0] + rowBk[0]) * 0.25F; + res[1] = (rowAj[1] + rowAk[1] + rowBj[1] + rowBk[1]) * 0.25F; + res[2] = (rowAj[2] + rowAk[2] + rowBj[2] + rowBk[2]) * 0.25F; + dst[i] = float3_to_rgb9e5(res); + } + } + + else if (datatype == GL_UNSIGNED_INT_10F_11F_11F_REV && comps == 3) { + GLuint i, j, k; + const GLuint *rowA = (const GLuint*) srcRowA; + const GLuint *rowB = (const GLuint*) srcRowB; + GLuint *dst = (GLuint*)dstRow; + GLfloat res[3], rowAj[3], rowBj[3], rowAk[3], rowBk[3]; + for (i = j = 0, k = k0; i < (GLuint) dstWidth; + i++, j += colStride, k += colStride) { + r11g11b10f_to_float3(rowA[j], rowAj); + r11g11b10f_to_float3(rowB[j], rowBj); + r11g11b10f_to_float3(rowA[k], rowAk); + r11g11b10f_to_float3(rowB[k], rowBk); + res[0] = (rowAj[0] + rowAk[0] + rowBj[0] + rowBk[0]) * 0.25F; + res[1] = (rowAj[1] + rowAk[1] + rowBj[1] + rowBk[1]) * 0.25F; + res[2] = (rowAj[2] + rowAk[2] + rowBj[2] + rowBk[2]) * 0.25F; + dst[i] = float3_to_r11g11b10f(res); + } + } + else { _mesa_problem(NULL, "bad format in do_row()"); } @@ -1165,6 +1237,110 @@ do_row_3D(GLenum datatype, GLuint comps, GLint srcWidth, dst[i] = (g << 4) | r; } } + else if ((datatype == GL_UNSIGNED_INT_2_10_10_10_REV) && (comps == 4)) { + DECLARE_ROW_POINTERS0(GLuint); + + for (i = j = 0, k = k0; i < (GLuint) dstWidth; + i++, j += colStride, k += colStride) { + const GLint rowAr0 = rowA[j] & 0x3ff; + const GLint rowAr1 = rowA[k] & 0x3ff; + const GLint rowBr0 = rowB[j] & 0x3ff; + const GLint rowBr1 = rowB[k] & 0x3ff; + const GLint rowCr0 = rowC[j] & 0x3ff; + const GLint rowCr1 = rowC[k] & 0x3ff; + const GLint rowDr0 = rowD[j] & 0x3ff; + const GLint rowDr1 = rowD[k] & 0x3ff; + const GLint rowAg0 = (rowA[j] >> 10) & 0x3ff; + const GLint rowAg1 = (rowA[k] >> 10) & 0x3ff; + const GLint rowBg0 = (rowB[j] >> 10) & 0x3ff; + const GLint rowBg1 = (rowB[k] >> 10) & 0x3ff; + const GLint rowCg0 = (rowC[j] >> 10) & 0x3ff; + const GLint rowCg1 = (rowC[k] >> 10) & 0x3ff; + const GLint rowDg0 = (rowD[j] >> 10) & 0x3ff; + const GLint rowDg1 = (rowD[k] >> 10) & 0x3ff; + const GLint rowAb0 = (rowA[j] >> 20) & 0x3ff; + const GLint rowAb1 = (rowA[k] >> 20) & 0x3ff; + const GLint rowBb0 = (rowB[j] >> 20) & 0x3ff; + const GLint rowBb1 = (rowB[k] >> 20) & 0x3ff; + const GLint rowCb0 = (rowC[j] >> 20) & 0x3ff; + const GLint rowCb1 = (rowC[k] >> 20) & 0x3ff; + const GLint rowDb0 = (rowD[j] >> 20) & 0x3ff; + const GLint rowDb1 = (rowD[k] >> 20) & 0x3ff; + const GLint rowAa0 = (rowA[j] >> 30) & 0x3; + const GLint rowAa1 = (rowA[k] >> 30) & 0x3; + const GLint rowBa0 = (rowB[j] >> 30) & 0x3; + const GLint rowBa1 = (rowB[k] >> 30) & 0x3; + const GLint rowCa0 = (rowC[j] >> 30) & 0x3; + const GLint rowCa1 = (rowC[k] >> 30) & 0x3; + const GLint rowDa0 = (rowD[j] >> 30) & 0x3; + const GLint rowDa1 = (rowD[k] >> 30) & 0x3; + const GLint r = FILTER_SUM_3D(rowAr0, rowAr1, rowBr0, rowBr1, + rowCr0, rowCr1, rowDr0, rowDr1); + const GLint g = FILTER_SUM_3D(rowAg0, rowAg1, rowBg0, rowBg1, + rowCg0, rowCg1, rowDg0, rowDg1); + const GLint b = FILTER_SUM_3D(rowAb0, rowAb1, rowBb0, rowBb1, + rowCb0, rowCb1, rowDb0, rowDb1); + const GLint a = FILTER_SUM_3D(rowAa0, rowAa1, rowBa0, rowBa1, + rowCa0, rowCa1, rowDa0, rowDa1); + + dst[i] = (a << 30) | (b << 20) | (g << 10) | r; + } + } + + else if (datatype == GL_UNSIGNED_INT_5_9_9_9_REV && comps == 3) { + DECLARE_ROW_POINTERS0(GLuint); + + GLfloat res[3]; + GLfloat rowAj[3], rowBj[3], rowCj[3], rowDj[3]; + GLfloat rowAk[3], rowBk[3], rowCk[3], rowDk[3]; + + for (i = j = 0, k = k0; i < (GLuint) dstWidth; + i++, j += colStride, k += colStride) { + rgb9e5_to_float3(rowA[j], rowAj); + rgb9e5_to_float3(rowB[j], rowBj); + rgb9e5_to_float3(rowC[j], rowCj); + rgb9e5_to_float3(rowD[j], rowDj); + rgb9e5_to_float3(rowA[k], rowAk); + rgb9e5_to_float3(rowB[k], rowBk); + rgb9e5_to_float3(rowC[k], rowCk); + rgb9e5_to_float3(rowD[k], rowDk); + res[0] = (rowAj[0] + rowAk[0] + rowBj[0] + rowBk[0] + + rowCj[0] + rowCk[0] + rowDj[0] + rowDk[0]) * 0.125F; + res[1] = (rowAj[1] + rowAk[1] + rowBj[1] + rowBk[1] + + rowCj[1] + rowCk[1] + rowDj[1] + rowDk[1]) * 0.125F; + res[2] = (rowAj[2] + rowAk[2] + rowBj[2] + rowBk[2] + + rowCj[2] + rowCk[2] + rowDj[2] + rowDk[2]) * 0.125F; + dst[i] = float3_to_rgb9e5(res); + } + } + + else if (datatype == GL_UNSIGNED_INT_10F_11F_11F_REV && comps == 3) { + DECLARE_ROW_POINTERS0(GLuint); + + GLfloat res[3]; + GLfloat rowAj[3], rowBj[3], rowCj[3], rowDj[3]; + GLfloat rowAk[3], rowBk[3], rowCk[3], rowDk[3]; + + for (i = j = 0, k = k0; i < (GLuint) dstWidth; + i++, j += colStride, k += colStride) { + r11g11b10f_to_float3(rowA[j], rowAj); + r11g11b10f_to_float3(rowB[j], rowBj); + r11g11b10f_to_float3(rowC[j], rowCj); + r11g11b10f_to_float3(rowD[j], rowDj); + r11g11b10f_to_float3(rowA[k], rowAk); + r11g11b10f_to_float3(rowB[k], rowBk); + r11g11b10f_to_float3(rowC[k], rowCk); + r11g11b10f_to_float3(rowD[k], rowDk); + res[0] = (rowAj[0] + rowAk[0] + rowBj[0] + rowBk[0] + + rowCj[0] + rowCk[0] + rowDj[0] + rowDk[0]) * 0.125F; + res[1] = (rowAj[1] + rowAk[1] + rowBj[1] + rowBk[1] + + rowCj[1] + rowCk[1] + rowDj[1] + rowDk[1]) * 0.125F; + res[2] = (rowAj[2] + rowAk[2] + rowBj[2] + rowBk[2] + + rowCj[2] + rowCk[2] + rowDj[2] + rowDk[2]) * 0.125F; + dst[i] = float3_to_r11g11b10f(res); + } + } + else { _mesa_problem(NULL, "bad format in do_row()"); } @@ -1896,7 +2072,6 @@ _mesa_generate_mipmap(struct gl_context *ctx, GLenum target, const GLenum srcFormat = _mesa_get_format_base_format(convertFormat); GLint dstRowStride = _mesa_format_row_stride(dstImage->TexFormat, dstWidth); - ASSERT(srcFormat == GL_RGB || srcFormat == GL_RGBA); _mesa_texstore(ctx, 2, dstImage->_BaseFormat, dstImage->TexFormat, diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index 160ae9d2622..29c8cfd2363 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -376,7 +376,15 @@ typedef enum { FRAG_RESULT_DEPTH = 0, FRAG_RESULT_STENCIL = 1, + /* If a single color should be written to all render targets, this + * register is written. No FRAG_RESULT_DATAn will be written. + */ FRAG_RESULT_COLOR = 2, + + /* FRAG_RESULT_DATAn are the per-render-target (GLSL gl_FragData[n] + * or ARB_fragment_program fragment.color[n]) color results. If + * any are written, FRAG_RESULT_COLOR will not be written. + */ FRAG_RESULT_DATA0 = 3, FRAG_RESULT_MAX = (FRAG_RESULT_DATA0 + MAX_DRAW_BUFFERS) } gl_frag_result; @@ -1331,6 +1339,7 @@ struct gl_sampler_object GLenum CompareFunc; /**< GL_ARB_shadow */ GLfloat CompareFailValue; /**< GL_ARB_shadow_ambient */ GLenum sRGBDecode; /**< GL_DECODE_EXT or GL_SKIP_DECODE_EXT */ + GLboolean CubeMapSeamless; /**< GL_AMD_seamless_cubemap_per_texture */ /* deprecated sampler state */ GLenum DepthMode; /**< GL_ARB_depth_texture */ @@ -2738,6 +2747,9 @@ struct gl_constants /* GL_EXT_framebuffer_sRGB */ GLboolean sRGBCapable; /* can enable sRGB blend/update on FBOs */ + + /* GL_ARB_robustness */ + GLenum ResetStrategy; }; @@ -2874,6 +2886,7 @@ struct gl_extensions GLboolean OES_standard_derivatives; /* vendor extensions */ GLboolean AMD_conservative_depth; + GLboolean AMD_seamless_cubemap_per_texture; GLboolean APPLE_client_storage; GLboolean APPLE_packed_pixels; GLboolean APPLE_vertex_array_object; @@ -3297,6 +3310,9 @@ struct gl_context GLenum ErrorValue; /**< Last error code */ + /* GL_ARB_robustness */ + GLenum ResetStatus; + /** * Recognize and silence repeated error debug messages in buggy apps. */ diff --git a/src/mesa/main/pack.c b/src/mesa/main/pack.c index 4bb0a90045e..d6470e351b8 100644 --- a/src/mesa/main/pack.c +++ b/src/mesa/main/pack.c @@ -38,6 +38,8 @@ #include "pack.h" #include "pixeltransfer.h" #include "imports.h" +#include "../../gallium/auxiliary/util/u_format_rgb9e5.h" +#include "../../gallium/auxiliary/util/u_format_r11g11b10f.h" /** @@ -1893,6 +1895,22 @@ _mesa_pack_rgba_span_float(struct gl_context *ctx, GLuint n, GLfloat rgba[][4], } } break; + case GL_UNSIGNED_INT_5_9_9_9_REV: + { + GLuint *dst = (GLuint *) dstAddr; + for (i = 0; i < n; i++) { + dst[i] = float3_to_rgb9e5(rgba[i]); + } + } + break; + case GL_UNSIGNED_INT_10F_11F_11F_REV: + { + GLuint *dst = (GLuint *) dstAddr; + for (i = 0; i < n; i++) { + dst[i] = float3_to_r11g11b10f(rgba[i]); + } + } + break; default: _mesa_problem(ctx, "bad type in _mesa_pack_rgba_span_float"); return; @@ -2331,7 +2349,9 @@ extract_float_rgba(GLuint n, GLfloat rgba[][4], srcType == GL_UNSIGNED_INT_8_8_8_8 || srcType == GL_UNSIGNED_INT_8_8_8_8_REV || srcType == GL_UNSIGNED_INT_10_10_10_2 || - srcType == GL_UNSIGNED_INT_2_10_10_10_REV); + srcType == GL_UNSIGNED_INT_2_10_10_10_REV || + srcType == GL_UNSIGNED_INT_5_9_9_9_REV || + srcType == GL_UNSIGNED_INT_10F_11F_11F_REV); get_component_mapping(srcFormat, &rSrc, &gSrc, &bSrc, &aSrc, @@ -2801,6 +2821,62 @@ extract_float_rgba(GLuint n, GLfloat rgba[][4], } } break; + case GL_UNSIGNED_INT_5_9_9_9_REV: + if (swapBytes) { + const GLuint *uisrc = (const GLuint *) src; + GLuint i; + GLfloat f[3]; + for (i = 0; i < n; i ++) { + GLuint p = uisrc[i]; + SWAP4BYTE(p); + rgb9e5_to_float3(p, f); + rgba[i][rDst] = f[0]; + rgba[i][gDst] = f[1]; + rgba[i][bDst] = f[2]; + rgba[i][aDst] = 1.0F; + } + } + else { + const GLuint *uisrc = (const GLuint *) src; + GLuint i; + GLfloat f[3]; + for (i = 0; i < n; i ++) { + rgb9e5_to_float3(uisrc[i], f); + rgba[i][rDst] = f[0]; + rgba[i][gDst] = f[1]; + rgba[i][bDst] = f[2]; + rgba[i][aDst] = 1.0F; + } + } + break; + case GL_UNSIGNED_INT_10F_11F_11F_REV: + if (swapBytes) { + const GLuint *uisrc = (const GLuint *) src; + GLuint i; + GLfloat f[3]; + for (i = 0; i < n; i ++) { + GLuint p = uisrc[i]; + SWAP4BYTE(p); + r11g11b10f_to_float3(p, f); + rgba[i][rDst] = f[0]; + rgba[i][gDst] = f[1]; + rgba[i][bDst] = f[2]; + rgba[i][aDst] = 1.0F; + } + } + else { + const GLuint *uisrc = (const GLuint *) src; + GLuint i; + GLfloat f[3]; + for (i = 0; i < n; i ++) { + r11g11b10f_to_float3(uisrc[i], f); + rgba[i][rDst] = f[0]; + rgba[i][gDst] = f[1]; + rgba[i][bDst] = f[2]; + rgba[i][aDst] = 1.0F; + } + } + break; default: _mesa_problem(NULL, "bad srcType in extract float data"); break; @@ -2856,7 +2932,6 @@ extract_uint_rgba(GLuint n, GLuint rgba[][4], GLint rSrc, gSrc, bSrc, aSrc; GLint stride; GLint rDst, bDst, gDst, aDst; - GLboolean intFormat; ASSERT(srcFormat == GL_RED || srcFormat == GL_GREEN || @@ -2903,7 +2978,9 @@ extract_uint_rgba(GLuint n, GLuint rgba[][4], srcType == GL_UNSIGNED_INT_8_8_8_8 || srcType == GL_UNSIGNED_INT_8_8_8_8_REV || srcType == GL_UNSIGNED_INT_10_10_10_2 || - srcType == GL_UNSIGNED_INT_2_10_10_10_REV); + srcType == GL_UNSIGNED_INT_2_10_10_10_REV || + srcType == GL_UNSIGNED_INT_5_9_9_9_REV || + srcType == GL_UNSIGNED_INT_10F_11F_11F_REV); get_component_mapping(srcFormat, &rSrc, &gSrc, &bSrc, &aSrc, @@ -2911,8 +2988,6 @@ extract_uint_rgba(GLuint n, GLuint rgba[][4], stride = _mesa_components_in_format(srcFormat); - intFormat = _mesa_is_integer_format(srcFormat); - #define PROCESS(SRC_INDEX, DST_INDEX, DEFAULT, TYPE, CONVERSION) \ if ((SRC_INDEX) < 0) { \ GLuint i; \ @@ -3267,6 +3342,64 @@ extract_uint_rgba(GLuint n, GLuint rgba[][4], } } break; + case GL_UNSIGNED_INT_5_9_9_9_REV: + if (swapBytes) { + const GLuint *uisrc = (const GLuint *) src; + GLuint i; + float f[3]; + for (i = 0; i < n; i ++) { + GLuint p = uisrc[i]; + SWAP4BYTE(p); + rgb9e5_to_float3(p, f); + rgba[i][rDst] = clamp_float_to_uint(f[0]); + rgba[i][gDst] = clamp_float_to_uint(f[1]); + rgba[i][bDst] = clamp_float_to_uint(f[2]); + rgba[i][aDst] = 1; + } + } + else { + const GLuint *uisrc = (const GLuint *) src; + GLuint i; + float f[3]; + for (i = 0; i < n; i ++) { + GLuint p = uisrc[i]; + rgb9e5_to_float3(p, f); + rgba[i][rDst] = clamp_float_to_uint(f[0]); + rgba[i][gDst] = clamp_float_to_uint(f[1]); + rgba[i][bDst] = clamp_float_to_uint(f[2]); + rgba[i][aDst] = 1; + } + } + break; + case GL_UNSIGNED_INT_10F_11F_11F_REV: + if (swapBytes) { + const GLuint *uisrc = (const GLuint *) src; + GLuint i; + float f[3]; + for (i = 0; i < n; i ++) { + GLuint p = uisrc[i]; + SWAP4BYTE(p); + r11g11b10f_to_float3(p, f); + rgba[i][rDst] = clamp_float_to_uint(f[0]); + rgba[i][gDst] = clamp_float_to_uint(f[1]); + rgba[i][bDst] = clamp_float_to_uint(f[2]); + rgba[i][aDst] = 1; + } + } + else { + const GLuint *uisrc = (const GLuint *) src; + GLuint i; + float f[3]; + for (i = 0; i < n; i ++) { + GLuint p = uisrc[i]; + r11g11b10f_to_float3(p, f); + rgba[i][rDst] = clamp_float_to_uint(f[0]); + rgba[i][gDst] = clamp_float_to_uint(f[1]); + rgba[i][bDst] = clamp_float_to_uint(f[2]); + rgba[i][aDst] = 1; + } + } + break; default: _mesa_problem(NULL, "bad srcType in extract uint data"); break; @@ -3346,7 +3479,9 @@ _mesa_unpack_color_span_chan( struct gl_context *ctx, srcType == GL_UNSIGNED_INT_8_8_8_8 || srcType == GL_UNSIGNED_INT_8_8_8_8_REV || srcType == GL_UNSIGNED_INT_10_10_10_2 || - srcType == GL_UNSIGNED_INT_2_10_10_10_REV); + srcType == GL_UNSIGNED_INT_2_10_10_10_REV || + srcType == GL_UNSIGNED_INT_5_9_9_9_REV || + srcType == GL_UNSIGNED_INT_10F_11F_11F_REV); /* Try simple cases first */ if (transferOps == 0) { @@ -3668,7 +3803,9 @@ _mesa_unpack_color_span_float( struct gl_context *ctx, srcType == GL_UNSIGNED_INT_8_8_8_8 || srcType == GL_UNSIGNED_INT_8_8_8_8_REV || srcType == GL_UNSIGNED_INT_10_10_10_2 || - srcType == GL_UNSIGNED_INT_2_10_10_10_REV); + srcType == GL_UNSIGNED_INT_2_10_10_10_REV || + srcType == GL_UNSIGNED_INT_5_9_9_9_REV || + srcType == GL_UNSIGNED_INT_10F_11F_11F_REV); /* general solution, no special cases, yet */ { @@ -3874,7 +4011,9 @@ _mesa_unpack_color_span_uint(struct gl_context *ctx, srcType == GL_UNSIGNED_INT_8_8_8_8 || srcType == GL_UNSIGNED_INT_8_8_8_8_REV || srcType == GL_UNSIGNED_INT_10_10_10_2 || - srcType == GL_UNSIGNED_INT_2_10_10_10_REV); + srcType == GL_UNSIGNED_INT_2_10_10_10_REV || + srcType == GL_UNSIGNED_INT_5_9_9_9_REV || + srcType == GL_UNSIGNED_INT_10F_11F_11F_REV); /* Extract image data as uint[4] pixels */ diff --git a/src/mesa/main/pbo.c b/src/mesa/main/pbo.c index 56b26a954bd..15e0480e9f1 100644 --- a/src/mesa/main/pbo.c +++ b/src/mesa/main/pbo.c @@ -43,7 +43,7 @@ * When we're about to read pixel data out of a PBO (via glDrawPixels, * glTexImage, etc) or write data into a PBO (via glReadPixels, * glGetTexImage, etc) we call this function to check that we're not - * going to read out of bounds. + * going to read/write out of bounds. * * XXX This would also be a convenient time to check that the PBO isn't * currently mapped. Whoever calls this function should check for that. @@ -56,43 +56,52 @@ * \param depth depth of image to read/write * \param format format of image to read/write * \param type datatype of image to read/write + * \param clientMemSize the maximum number of bytes to read/write * \param ptr the user-provided pointer/offset - * \return GL_TRUE if the PBO access is OK, GL_FALSE if the access would + * \return GL_TRUE if the buffer access is OK, GL_FALSE if the access would * go out of bounds. */ GLboolean _mesa_validate_pbo_access(GLuint dimensions, const struct gl_pixelstore_attrib *pack, GLsizei width, GLsizei height, GLsizei depth, - GLenum format, GLenum type, const GLvoid *ptr) + GLenum format, GLenum type, GLsizei clientMemSize, + const GLvoid *ptr) { - GLvoid *start, *end; + const GLvoid *start, *end, *offset; const GLubyte *sizeAddr; /* buffer size, cast to a pointer */ - if (!_mesa_is_bufferobj(pack->BufferObj)) - return GL_TRUE; /* no PBO, OK */ + /* If no PBO is bound, 'ptr' is a pointer to client memory containing + 'clientMemSize' bytes. + If a PBO is bound, 'ptr' is an offset into the bound PBO. + In that case 'clientMemSize' is ignored: we just use the PBO's size. + */ + if (!_mesa_is_bufferobj(pack->BufferObj)) { + offset = 0; + sizeAddr = ((const GLubyte *) 0) + clientMemSize; + } else { + offset = ptr; + sizeAddr = ((const GLubyte *) 0) + pack->BufferObj->Size; + } - if (pack->BufferObj->Size == 0) + if (sizeAddr == 0) /* no buffer! */ return GL_FALSE; - /* get address of first pixel we'll read */ - start = _mesa_image_address(dimensions, pack, ptr, width, height, + /* get the offset to the first pixel we'll read/write */ + start = _mesa_image_address(dimensions, pack, offset, width, height, format, type, 0, 0, 0); - /* get address just past the last pixel we'll read */ - end = _mesa_image_address(dimensions, pack, ptr, width, height, - format, type, depth-1, height-1, width); - - - sizeAddr = ((const GLubyte *) 0) + pack->BufferObj->Size; + /* get the offset to just past the last pixel we'll read/write */ + end = _mesa_image_address(dimensions, pack, offset, width, height, + format, type, depth-1, height-1, width); if ((const GLubyte *) start > sizeAddr) { /* This will catch negative values / wrap-around */ return GL_FALSE; } if ((const GLubyte *) end > sizeAddr) { - /* Image read goes beyond end of buffer */ + /* Image read/write goes beyond end of buffer */ return GL_FALSE; } @@ -146,24 +155,30 @@ _mesa_map_pbo_source(struct gl_context *ctx, */ const GLvoid * _mesa_map_validate_pbo_source(struct gl_context *ctx, - GLuint dimensions, - const struct gl_pixelstore_attrib *unpack, - GLsizei width, GLsizei height, GLsizei depth, - GLenum format, GLenum type, const GLvoid *ptr, - const char *where) + GLuint dimensions, + const struct gl_pixelstore_attrib *unpack, + GLsizei width, GLsizei height, GLsizei depth, + GLenum format, GLenum type, GLsizei clientMemSize, + const GLvoid *ptr, const char *where) { ASSERT(dimensions == 1 || dimensions == 2 || dimensions == 3); - if (!_mesa_is_bufferobj(unpack->BufferObj)) { - /* non-PBO access: no validation to be done */ - return ptr; + if (!_mesa_validate_pbo_access(dimensions, unpack, width, height, depth, + format, type, clientMemSize, ptr)) { + if (_mesa_is_bufferobj(unpack->BufferObj)) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "%s(out of bounds PBO access)", where); + } else { + _mesa_error(ctx, GL_INVALID_OPERATION, + "%s(out of bounds access: bufSize (%d) is too small)", + where, clientMemSize); + } + return NULL; } - if (!_mesa_validate_pbo_access(dimensions, unpack, - width, height, depth, format, type, ptr)) { - _mesa_error(ctx, GL_INVALID_OPERATION, - "%s(out of bounds PBO access)", where); - return NULL; + if (!_mesa_is_bufferobj(unpack->BufferObj)) { + /* non-PBO access: no further validation to be done */ + return ptr; } if (_mesa_bufferobj_mapped(unpack->BufferObj)) { @@ -236,24 +251,30 @@ _mesa_map_pbo_dest(struct gl_context *ctx, */ GLvoid * _mesa_map_validate_pbo_dest(struct gl_context *ctx, - GLuint dimensions, - const struct gl_pixelstore_attrib *unpack, - GLsizei width, GLsizei height, GLsizei depth, - GLenum format, GLenum type, GLvoid *ptr, - const char *where) + GLuint dimensions, + const struct gl_pixelstore_attrib *unpack, + GLsizei width, GLsizei height, GLsizei depth, + GLenum format, GLenum type, GLsizei clientMemSize, + GLvoid *ptr, const char *where) { ASSERT(dimensions == 1 || dimensions == 2 || dimensions == 3); - if (!_mesa_is_bufferobj(unpack->BufferObj)) { - /* non-PBO access: no validation to be done */ - return ptr; + if (!_mesa_validate_pbo_access(dimensions, unpack, width, height, depth, + format, type, clientMemSize, ptr)) { + if (_mesa_is_bufferobj(unpack->BufferObj)) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "%s(out of bounds PBO access)", where); + } else { + _mesa_error(ctx, GL_INVALID_OPERATION, + "%s(out of bounds access: bufSize (%d) is too small)", + where, clientMemSize); + } + return NULL; } - if (!_mesa_validate_pbo_access(dimensions, unpack, - width, height, depth, format, type, ptr)) { - _mesa_error(ctx, GL_INVALID_OPERATION, - "%s(out of bounds PBO access)", where); - return NULL; + if (!_mesa_is_bufferobj(unpack->BufferObj)) { + /* non-PBO access: no further validation to be done */ + return ptr; } if (_mesa_bufferobj_mapped(unpack->BufferObj)) { @@ -281,7 +302,6 @@ _mesa_unmap_pbo_dest(struct gl_context *ctx, } - /** * Check if an unpack PBO is active prior to fetching a texture image. * If so, do bounds checking and map the buffer into main memory. @@ -302,7 +322,7 @@ _mesa_validate_pbo_teximage(struct gl_context *ctx, GLuint dimensions, return pixels; } if (!_mesa_validate_pbo_access(dimensions, unpack, width, height, depth, - format, type, pixels)) { + format, type, INT_MAX, pixels)) { _mesa_error(ctx, GL_INVALID_OPERATION, funcName, "(invalid PBO access)"); return NULL; } diff --git a/src/mesa/main/pbo.h b/src/mesa/main/pbo.h index 0cddd72ba7f..00a6e617f22 100644 --- a/src/mesa/main/pbo.h +++ b/src/mesa/main/pbo.h @@ -34,7 +34,8 @@ extern GLboolean _mesa_validate_pbo_access(GLuint dimensions, const struct gl_pixelstore_attrib *pack, GLsizei width, GLsizei height, GLsizei depth, - GLenum format, GLenum type, const GLvoid *ptr); + GLenum format, GLenum type, GLsizei clientMemSize, + const GLvoid *ptr); extern const GLvoid * _mesa_map_pbo_source(struct gl_context *ctx, @@ -46,8 +47,8 @@ _mesa_map_validate_pbo_source(struct gl_context *ctx, GLuint dimensions, const struct gl_pixelstore_attrib *unpack, GLsizei width, GLsizei height, GLsizei depth, - GLenum format, GLenum type, const GLvoid *ptr, - const char *where); + GLenum format, GLenum type, GLsizei clientMemSize, + const GLvoid *ptr, const char *where); extern void _mesa_unmap_pbo_source(struct gl_context *ctx, @@ -63,8 +64,8 @@ _mesa_map_validate_pbo_dest(struct gl_context *ctx, GLuint dimensions, const struct gl_pixelstore_attrib *unpack, GLsizei width, GLsizei height, GLsizei depth, - GLenum format, GLenum type, GLvoid *ptr, - const char *where); + GLenum format, GLenum type, GLsizei clientMemSize, + GLvoid *ptr, const char *where); extern void _mesa_unmap_pbo_dest(struct gl_context *ctx, diff --git a/src/mesa/main/pixel.c b/src/mesa/main/pixel.c index da99c9b6f35..775746270d1 100644 --- a/src/mesa/main/pixel.c +++ b/src/mesa/main/pixel.c @@ -145,8 +145,9 @@ store_pixelmap(struct gl_context *ctx, GLenum map, GLsizei mapsize, * Convenience wrapper for _mesa_validate_pbo_access() for gl[Get]PixelMap(). */ static GLboolean -validate_pbo_access(struct gl_context *ctx, struct gl_pixelstore_attrib *pack, - GLsizei mapsize, GLenum format, GLenum type, +validate_pbo_access(struct gl_context *ctx, + struct gl_pixelstore_attrib *pack, GLsizei mapsize, + GLenum format, GLenum type, GLsizei clientMemSize, const GLvoid *ptr) { GLboolean ok; @@ -157,7 +158,7 @@ validate_pbo_access(struct gl_context *ctx, struct gl_pixelstore_attrib *pack, pack->BufferObj); ok = _mesa_validate_pbo_access(1, &ctx->DefaultPacking, mapsize, 1, 1, - format, type, ptr); + format, type, clientMemSize, ptr); /* restore */ _mesa_reference_buffer_object(ctx, @@ -165,8 +166,14 @@ validate_pbo_access(struct gl_context *ctx, struct gl_pixelstore_attrib *pack, ctx->Shared->NullBufferObj); if (!ok) { - _mesa_error(ctx, GL_INVALID_OPERATION, - "glPixelMap(invalid PBO access)"); + if (_mesa_is_bufferobj(pack->BufferObj)) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "gl[Get]PixelMap*v(out of bounds PBO access)"); + } else { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glGetnPixelMap*vARB(out of bounds access:" + " bufSize (%d) is too small)", clientMemSize); + } } return ok; } @@ -194,8 +201,8 @@ _mesa_PixelMapfv( GLenum map, GLsizei mapsize, const GLfloat *values ) FLUSH_VERTICES(ctx, _NEW_PIXEL); - if (!validate_pbo_access(ctx, &ctx->Unpack, mapsize, - GL_INTENSITY, GL_FLOAT, values)) { + if (!validate_pbo_access(ctx, &ctx->Unpack, mapsize, GL_INTENSITY, + GL_FLOAT, INT_MAX, values)) { return; } @@ -236,8 +243,8 @@ _mesa_PixelMapuiv(GLenum map, GLsizei mapsize, const GLuint *values ) FLUSH_VERTICES(ctx, _NEW_PIXEL); - if (!validate_pbo_access(ctx, &ctx->Unpack, mapsize, - GL_INTENSITY, GL_UNSIGNED_INT, values)) { + if (!validate_pbo_access(ctx, &ctx->Unpack, mapsize, GL_INTENSITY, + GL_UNSIGNED_INT, INT_MAX, values)) { return; } @@ -292,8 +299,8 @@ _mesa_PixelMapusv(GLenum map, GLsizei mapsize, const GLushort *values ) FLUSH_VERTICES(ctx, _NEW_PIXEL); - if (!validate_pbo_access(ctx, &ctx->Unpack, mapsize, - GL_INTENSITY, GL_UNSIGNED_SHORT, values)) { + if (!validate_pbo_access(ctx, &ctx->Unpack, mapsize, GL_INTENSITY, + GL_UNSIGNED_SHORT, INT_MAX, values)) { return; } @@ -327,10 +334,10 @@ _mesa_PixelMapusv(GLenum map, GLsizei mapsize, const GLushort *values ) static void GLAPIENTRY -_mesa_GetPixelMapfv( GLenum map, GLfloat *values ) +_mesa_GetnPixelMapfvARB( GLenum map, GLsizei bufSize, GLfloat *values ) { GET_CURRENT_CONTEXT(ctx); - GLuint mapsize, i; + GLint mapsize, i; const struct gl_pixelmap *pm; ASSERT_OUTSIDE_BEGIN_END(ctx); @@ -343,8 +350,8 @@ _mesa_GetPixelMapfv( GLenum map, GLfloat *values ) mapsize = pm->Size; - if (!validate_pbo_access(ctx, &ctx->Pack, mapsize, - GL_INTENSITY, GL_FLOAT, values)) { + if (!validate_pbo_access(ctx, &ctx->Pack, mapsize, GL_INTENSITY, + GL_FLOAT, bufSize, values)) { return; } @@ -372,7 +379,13 @@ _mesa_GetPixelMapfv( GLenum map, GLfloat *values ) static void GLAPIENTRY -_mesa_GetPixelMapuiv( GLenum map, GLuint *values ) +_mesa_GetPixelMapfv( GLenum map, GLfloat *values ) +{ + _mesa_GetnPixelMapfvARB(map, INT_MAX, values); +} + +static void GLAPIENTRY +_mesa_GetnPixelMapuivARB( GLenum map, GLsizei bufSize, GLuint *values ) { GET_CURRENT_CONTEXT(ctx); GLint mapsize, i; @@ -385,10 +398,11 @@ _mesa_GetPixelMapuiv( GLenum map, GLuint *values ) _mesa_error(ctx, GL_INVALID_ENUM, "glGetPixelMapuiv(map)"); return; } + mapsize = pm->Size; - if (!validate_pbo_access(ctx, &ctx->Pack, mapsize, - GL_INTENSITY, GL_UNSIGNED_INT, values)) { + if (!validate_pbo_access(ctx, &ctx->Pack, mapsize, GL_INTENSITY, + GL_UNSIGNED_INT, bufSize, values)) { return; } @@ -416,7 +430,13 @@ _mesa_GetPixelMapuiv( GLenum map, GLuint *values ) static void GLAPIENTRY -_mesa_GetPixelMapusv( GLenum map, GLushort *values ) +_mesa_GetPixelMapuiv( GLenum map, GLuint *values ) +{ + _mesa_GetnPixelMapuivARB(map, INT_MAX, values); +} + +static void GLAPIENTRY +_mesa_GetnPixelMapusvARB( GLenum map, GLsizei bufSize, GLushort *values ) { GET_CURRENT_CONTEXT(ctx); GLint mapsize, i; @@ -429,10 +449,11 @@ _mesa_GetPixelMapusv( GLenum map, GLushort *values ) _mesa_error(ctx, GL_INVALID_ENUM, "glGetPixelMapusv(map)"); return; } + mapsize = pm->Size; - if (!validate_pbo_access(ctx, &ctx->Pack, mapsize, - GL_INTENSITY, GL_UNSIGNED_SHORT, values)) { + if (!validate_pbo_access(ctx, &ctx->Pack, mapsize, GL_INTENSITY, + GL_UNSIGNED_SHORT, bufSize, values)) { return; } @@ -467,6 +488,12 @@ _mesa_GetPixelMapusv( GLenum map, GLushort *values ) } +static void GLAPIENTRY +_mesa_GetPixelMapusv( GLenum map, GLushort *values ) +{ + _mesa_GetnPixelMapusvARB(map, INT_MAX, values); +} + /**********************************************************************/ /***** glPixelTransfer *****/ @@ -634,6 +661,11 @@ _mesa_init_pixel_dispatch(struct _glapi_table *disp) SET_PixelTransferf(disp, _mesa_PixelTransferf); SET_PixelTransferi(disp, _mesa_PixelTransferi); SET_PixelZoom(disp, _mesa_PixelZoom); + + /* GL_ARB_robustness */ + SET_GetnPixelMapfvARB(disp, _mesa_GetnPixelMapfvARB); + SET_GetnPixelMapuivARB(disp, _mesa_GetnPixelMapuivARB); + SET_GetnPixelMapusvARB(disp, _mesa_GetnPixelMapusvARB); } diff --git a/src/mesa/main/polygon.c b/src/mesa/main/polygon.c index ff4232ecc39..addca0228d5 100644 --- a/src/mesa/main/polygon.c +++ b/src/mesa/main/polygon.c @@ -195,7 +195,8 @@ _mesa_polygon_stipple(struct gl_context *ctx, const GLubyte *pattern) { pattern = _mesa_map_validate_pbo_source(ctx, 2, &ctx->Unpack, 32, 32, 1, - GL_COLOR_INDEX, GL_BITMAP, pattern, + GL_COLOR_INDEX, GL_BITMAP, + INT_MAX, pattern, "glPolygonStipple"); if (!pattern) return; @@ -231,7 +232,7 @@ _mesa_PolygonStipple( const GLubyte *pattern ) * Called by glPolygonStipple. */ void GLAPIENTRY -_mesa_GetPolygonStipple( GLubyte *dest ) +_mesa_GetnPolygonStippleARB( GLsizei bufSize, GLubyte *dest ) { GET_CURRENT_CONTEXT(ctx); ASSERT_OUTSIDE_BEGIN_END(ctx); @@ -241,8 +242,8 @@ _mesa_GetPolygonStipple( GLubyte *dest ) dest = _mesa_map_validate_pbo_dest(ctx, 2, &ctx->Pack, 32, 32, 1, - GL_COLOR_INDEX, GL_BITMAP, dest, - "glGetPolygonStipple"); + GL_COLOR_INDEX, GL_BITMAP, + bufSize, dest, "glGetPolygonStipple"); if (!dest) return; @@ -253,6 +254,13 @@ _mesa_GetPolygonStipple( GLubyte *dest ) void GLAPIENTRY +_mesa_GetPolygonStipple( GLubyte *dest ) +{ + _mesa_GetnPolygonStippleARB(INT_MAX, dest); +} + + +void GLAPIENTRY _mesa_PolygonOffset( GLfloat factor, GLfloat units ) { GET_CURRENT_CONTEXT(ctx); diff --git a/src/mesa/main/polygon.h b/src/mesa/main/polygon.h index 13f7c91ed07..35f222f269d 100644 --- a/src/mesa/main/polygon.h +++ b/src/mesa/main/polygon.h @@ -36,6 +36,9 @@ struct gl_context; +extern void GLAPIENTRY +_mesa_GetnPolygonStippleARB( GLsizei bufSize, GLubyte *dest ); + extern void _mesa_polygon_stipple(struct gl_context *ctx, const GLubyte *pattern); diff --git a/src/mesa/main/readpix.c b/src/mesa/main/readpix.c index a172a0000f5..0331a8ca2fe 100644 --- a/src/mesa/main/readpix.c +++ b/src/mesa/main/readpix.c @@ -167,8 +167,9 @@ _mesa_error_check_format_type(struct gl_context *ctx, GLenum format, void GLAPIENTRY -_mesa_ReadPixels( GLint x, GLint y, GLsizei width, GLsizei height, - GLenum format, GLenum type, GLvoid *pixels ) +_mesa_ReadnPixelsARB( GLint x, GLint y, GLsizei width, GLsizei height, + GLenum format, GLenum type, GLsizei bufSize, + GLvoid *pixels ) { GET_CURRENT_CONTEXT(ctx); ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); @@ -224,21 +225,33 @@ _mesa_ReadPixels( GLint x, GLint y, GLsizei width, GLsizei height, if (width == 0 || height == 0) return; /* nothing to do */ - if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { - if (!_mesa_validate_pbo_access(2, &ctx->Pack, width, height, 1, - format, type, pixels)) { + if (!_mesa_validate_pbo_access(2, &ctx->Pack, width, height, 1, + format, type, bufSize, pixels)) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { _mesa_error(ctx, GL_INVALID_OPERATION, - "glReadPixels(invalid PBO access)"); - return; + "glReadPixels(out of bounds PBO access)"); + } else { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glReadnPixelsARB(out of bounds access:" + " bufSize (%d) is too small)", bufSize); } + return; + } - if (_mesa_bufferobj_mapped(ctx->Pack.BufferObj)) { - /* buffer is mapped - that's an error */ - _mesa_error(ctx, GL_INVALID_OPERATION, "glReadPixels(PBO is mapped)"); - return; - } + if (_mesa_is_bufferobj(ctx->Pack.BufferObj) && + _mesa_bufferobj_mapped(ctx->Pack.BufferObj)) { + /* buffer is mapped - that's an error */ + _mesa_error(ctx, GL_INVALID_OPERATION, "glReadPixels(PBO is mapped)"); + return; } ctx->Driver.ReadPixels(ctx, x, y, width, height, format, type, &ctx->Pack, pixels); } + +void GLAPIENTRY +_mesa_ReadPixels( GLint x, GLint y, GLsizei width, GLsizei height, + GLenum format, GLenum type, GLvoid *pixels ) +{ + _mesa_ReadnPixelsARB(x, y, width, height, format, type, INT_MAX, pixels); +} diff --git a/src/mesa/main/readpix.h b/src/mesa/main/readpix.h index fd25e703e04..f6bb3d6e273 100644 --- a/src/mesa/main/readpix.h +++ b/src/mesa/main/readpix.h @@ -39,5 +39,9 @@ extern void GLAPIENTRY _mesa_ReadPixels( GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels ); +extern void GLAPIENTRY +_mesa_ReadnPixelsARB( GLint x, GLint y, GLsizei width, GLsizei height, + GLenum format, GLenum type, GLsizei bufSize, + GLvoid *pixels ); #endif diff --git a/src/mesa/main/remap_helper.h b/src/mesa/main/remap_helper.h index 72a2f1e0b81..fdb86d3e38a 100644 --- a/src/mesa/main/remap_helper.h +++ b/src/mesa/main/remap_helper.h @@ -70,4774 +70,4858 @@ static const char _mesa_function_pool[] = "\0" "glLoadIdentity\0" "\0" - /* _mesa_function_pool[216]: SampleCoverageARB (will be remapped) */ + /* _mesa_function_pool[216]: GetCombinerOutputParameterfvNV (will be remapped) */ + "iiip\0" + "glGetCombinerOutputParameterfvNV\0" + "\0" + /* _mesa_function_pool[255]: SampleCoverageARB (will be remapped) */ "fi\0" "glSampleCoverage\0" "glSampleCoverageARB\0" "\0" - /* _mesa_function_pool[257]: ConvolutionFilter1D (offset 348) */ + /* _mesa_function_pool[296]: ConvolutionFilter1D (offset 348) */ "iiiiip\0" "glConvolutionFilter1D\0" "glConvolutionFilter1DEXT\0" "\0" - /* _mesa_function_pool[312]: BeginQueryARB (will be remapped) */ + /* _mesa_function_pool[351]: BeginQueryARB (will be remapped) */ "ii\0" "glBeginQuery\0" "glBeginQueryARB\0" "\0" - /* _mesa_function_pool[345]: RasterPos3dv (offset 71) */ + /* _mesa_function_pool[384]: RasterPos3dv (offset 71) */ "p\0" "glRasterPos3dv\0" "\0" - /* _mesa_function_pool[363]: PointParameteriNV (will be remapped) */ + /* _mesa_function_pool[402]: PointParameteriNV (will be remapped) */ "ii\0" "glPointParameteri\0" "glPointParameteriNV\0" "\0" - /* _mesa_function_pool[405]: GetProgramiv (will be remapped) */ + /* _mesa_function_pool[444]: GetProgramiv (will be remapped) */ "iip\0" "glGetProgramiv\0" "\0" - /* _mesa_function_pool[425]: MultiTexCoord3sARB (offset 398) */ + /* _mesa_function_pool[464]: MultiTexCoord3sARB (offset 398) */ "iiii\0" "glMultiTexCoord3s\0" "glMultiTexCoord3sARB\0" "\0" - /* _mesa_function_pool[470]: SecondaryColor3iEXT (will be remapped) */ + /* _mesa_function_pool[509]: SecondaryColor3iEXT (will be remapped) */ "iii\0" "glSecondaryColor3i\0" "glSecondaryColor3iEXT\0" "\0" - /* _mesa_function_pool[516]: WindowPos3fMESA (will be remapped) */ + /* _mesa_function_pool[555]: WindowPos3fMESA (will be remapped) */ "fff\0" "glWindowPos3f\0" "glWindowPos3fARB\0" "glWindowPos3fMESA\0" "\0" - /* _mesa_function_pool[570]: TexCoord1iv (offset 99) */ + /* _mesa_function_pool[609]: TexCoord1iv (offset 99) */ "p\0" "glTexCoord1iv\0" "\0" - /* _mesa_function_pool[587]: TexCoord4sv (offset 125) */ + /* _mesa_function_pool[626]: TexCoord4sv (offset 125) */ "p\0" "glTexCoord4sv\0" "\0" - /* _mesa_function_pool[604]: RasterPos4s (offset 84) */ + /* _mesa_function_pool[643]: RasterPos4s (offset 84) */ "iiii\0" "glRasterPos4s\0" "\0" - /* _mesa_function_pool[624]: PixelTexGenParameterfvSGIS (will be remapped) */ + /* _mesa_function_pool[663]: PixelTexGenParameterfvSGIS (will be remapped) */ "ip\0" "glPixelTexGenParameterfvSGIS\0" "\0" - /* _mesa_function_pool[657]: ActiveTextureARB (offset 374) */ + /* _mesa_function_pool[696]: ActiveTextureARB (offset 374) */ "i\0" "glActiveTexture\0" "glActiveTextureARB\0" "\0" - /* _mesa_function_pool[695]: BlitFramebufferEXT (will be remapped) */ + /* _mesa_function_pool[734]: BlitFramebufferEXT (will be remapped) */ "iiiiiiiiii\0" "glBlitFramebuffer\0" "glBlitFramebufferEXT\0" "\0" - /* _mesa_function_pool[746]: TexCoord1f (offset 96) */ + /* _mesa_function_pool[785]: TexCoord1f (offset 96) */ "f\0" "glTexCoord1f\0" "\0" - /* _mesa_function_pool[762]: TexCoord1d (offset 94) */ + /* _mesa_function_pool[801]: TexCoord1d (offset 94) */ "d\0" "glTexCoord1d\0" "\0" - /* _mesa_function_pool[778]: VertexAttrib4ubvNV (will be remapped) */ + /* _mesa_function_pool[817]: VertexAttrib4ubvNV (will be remapped) */ "ip\0" "glVertexAttrib4ubvNV\0" "\0" - /* _mesa_function_pool[803]: TexCoord1i (offset 98) */ + /* _mesa_function_pool[842]: TexCoord1i (offset 98) */ "i\0" "glTexCoord1i\0" "\0" - /* _mesa_function_pool[819]: GetProgramNamedParameterdvNV (will be remapped) */ + /* _mesa_function_pool[858]: GetProgramNamedParameterdvNV (will be remapped) */ "iipp\0" "glGetProgramNamedParameterdvNV\0" "\0" - /* _mesa_function_pool[856]: Histogram (offset 367) */ + /* _mesa_function_pool[895]: Histogram (offset 367) */ "iiii\0" "glHistogram\0" "glHistogramEXT\0" "\0" - /* _mesa_function_pool[889]: TexCoord1s (offset 100) */ + /* _mesa_function_pool[928]: TexCoord1s (offset 100) */ "i\0" "glTexCoord1s\0" "\0" - /* _mesa_function_pool[905]: GetMapfv (offset 267) */ + /* _mesa_function_pool[944]: GetMapfv (offset 267) */ "iip\0" "glGetMapfv\0" "\0" - /* _mesa_function_pool[921]: EvalCoord1f (offset 230) */ + /* _mesa_function_pool[960]: EvalCoord1f (offset 230) */ "f\0" "glEvalCoord1f\0" "\0" - /* _mesa_function_pool[938]: FramebufferTexture (will be remapped) */ + /* _mesa_function_pool[977]: FramebufferTexture (will be remapped) */ "iiii\0" "glFramebufferTexture\0" "\0" - /* _mesa_function_pool[965]: VertexAttribI1ivEXT (will be remapped) */ - "ip\0" - "glVertexAttribI1ivEXT\0" - "glVertexAttribI1iv\0" + /* _mesa_function_pool[1004]: GetGraphicsResetStatusARB (will be remapped) */ "\0" - /* _mesa_function_pool[1010]: TexImage4DSGIS (dynamic) */ + "glGetGraphicsResetStatusARB\0" + "\0" + /* _mesa_function_pool[1034]: TexImage4DSGIS (dynamic) */ "iiiiiiiiiip\0" "glTexImage4DSGIS\0" "\0" - /* _mesa_function_pool[1040]: PolygonStipple (offset 175) */ + /* _mesa_function_pool[1064]: PolygonStipple (offset 175) */ "p\0" "glPolygonStipple\0" "\0" - /* _mesa_function_pool[1060]: WindowPos2dvMESA (will be remapped) */ + /* _mesa_function_pool[1084]: WindowPos2dvMESA (will be remapped) */ "p\0" "glWindowPos2dv\0" "glWindowPos2dvARB\0" "glWindowPos2dvMESA\0" "\0" - /* _mesa_function_pool[1115]: ReplacementCodeuiColor3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[1139]: ReplacementCodeuiColor3fVertex3fvSUN (dynamic) */ "ppp\0" "glReplacementCodeuiColor3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[1159]: BlendEquationSeparateEXT (will be remapped) */ + /* _mesa_function_pool[1183]: BlendEquationSeparateEXT (will be remapped) */ "ii\0" "glBlendEquationSeparate\0" "glBlendEquationSeparateEXT\0" "glBlendEquationSeparateATI\0" "\0" - /* _mesa_function_pool[1241]: ListParameterfSGIX (dynamic) */ + /* _mesa_function_pool[1265]: ListParameterfSGIX (dynamic) */ "iif\0" "glListParameterfSGIX\0" "\0" - /* _mesa_function_pool[1267]: SecondaryColor3bEXT (will be remapped) */ + /* _mesa_function_pool[1291]: SecondaryColor3bEXT (will be remapped) */ "iii\0" "glSecondaryColor3b\0" "glSecondaryColor3bEXT\0" "\0" - /* _mesa_function_pool[1313]: TexCoord4fColor4fNormal3fVertex4fvSUN (dynamic) */ + /* _mesa_function_pool[1337]: TexCoord4fColor4fNormal3fVertex4fvSUN (dynamic) */ "pppp\0" "glTexCoord4fColor4fNormal3fVertex4fvSUN\0" "\0" - /* _mesa_function_pool[1359]: GetPixelMapfv (offset 271) */ + /* _mesa_function_pool[1383]: GetnPolygonStippleARB (will be remapped) */ + "ip\0" + "glGetnPolygonStippleARB\0" + "\0" + /* _mesa_function_pool[1411]: GetPixelMapfv (offset 271) */ "ip\0" "glGetPixelMapfv\0" "\0" - /* _mesa_function_pool[1379]: Color3uiv (offset 22) */ + /* _mesa_function_pool[1431]: Color3uiv (offset 22) */ "p\0" "glColor3uiv\0" "\0" - /* _mesa_function_pool[1394]: IsEnabled (offset 286) */ + /* _mesa_function_pool[1446]: IsEnabled (offset 286) */ "i\0" "glIsEnabled\0" "\0" - /* _mesa_function_pool[1409]: VertexAttrib4svNV (will be remapped) */ + /* _mesa_function_pool[1461]: VertexAttrib4svNV (will be remapped) */ "ip\0" "glVertexAttrib4svNV\0" "\0" - /* _mesa_function_pool[1433]: EvalCoord2fv (offset 235) */ + /* _mesa_function_pool[1485]: EvalCoord2fv (offset 235) */ "p\0" "glEvalCoord2fv\0" "\0" - /* _mesa_function_pool[1451]: GetBufferSubDataARB (will be remapped) */ + /* _mesa_function_pool[1503]: GetBufferSubDataARB (will be remapped) */ "iiip\0" "glGetBufferSubData\0" "glGetBufferSubDataARB\0" "\0" - /* _mesa_function_pool[1498]: BufferSubDataARB (will be remapped) */ + /* _mesa_function_pool[1550]: BufferSubDataARB (will be remapped) */ "iiip\0" "glBufferSubData\0" "glBufferSubDataARB\0" "\0" - /* _mesa_function_pool[1539]: TexCoord2fColor4ubVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[1591]: TexCoord2fColor4ubVertex3fvSUN (dynamic) */ "ppp\0" "glTexCoord2fColor4ubVertex3fvSUN\0" "\0" - /* _mesa_function_pool[1577]: AttachShader (will be remapped) */ + /* _mesa_function_pool[1629]: AttachShader (will be remapped) */ "ii\0" "glAttachShader\0" "\0" - /* _mesa_function_pool[1596]: VertexAttrib2fARB (will be remapped) */ + /* _mesa_function_pool[1648]: GetCombinerInputParameterfvNV (will be remapped) */ + "iiiip\0" + "glGetCombinerInputParameterfvNV\0" + "\0" + /* _mesa_function_pool[1687]: VertexAttrib2fARB (will be remapped) */ "iff\0" "glVertexAttrib2f\0" "glVertexAttrib2fARB\0" "\0" - /* _mesa_function_pool[1638]: GetDebugLogLengthMESA (dynamic) */ + /* _mesa_function_pool[1729]: GetDebugLogLengthMESA (dynamic) */ "iii\0" "glGetDebugLogLengthMESA\0" "\0" - /* _mesa_function_pool[1667]: GetMapiv (offset 268) */ + /* _mesa_function_pool[1758]: GetMapiv (offset 268) */ "iip\0" "glGetMapiv\0" "\0" - /* _mesa_function_pool[1683]: VertexAttrib3fARB (will be remapped) */ + /* _mesa_function_pool[1774]: VertexAttrib3fARB (will be remapped) */ "ifff\0" "glVertexAttrib3f\0" "glVertexAttrib3fARB\0" "\0" - /* _mesa_function_pool[1726]: Indexubv (offset 316) */ + /* _mesa_function_pool[1817]: Indexubv (offset 316) */ "p\0" "glIndexubv\0" "\0" - /* _mesa_function_pool[1740]: GetQueryivARB (will be remapped) */ + /* _mesa_function_pool[1831]: GetQueryivARB (will be remapped) */ "iip\0" "glGetQueryiv\0" "glGetQueryivARB\0" "\0" - /* _mesa_function_pool[1774]: TexImage3D (offset 371) */ + /* _mesa_function_pool[1865]: TexImage3D (offset 371) */ "iiiiiiiiip\0" "glTexImage3D\0" "glTexImage3DEXT\0" "\0" - /* _mesa_function_pool[1815]: BindFragDataLocationEXT (will be remapped) */ + /* _mesa_function_pool[1906]: BindFragDataLocationEXT (will be remapped) */ "iip\0" "glBindFragDataLocationEXT\0" "glBindFragDataLocation\0" "\0" - /* _mesa_function_pool[1869]: ReplacementCodeuiVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[1960]: ReplacementCodeuiVertex3fvSUN (dynamic) */ "pp\0" "glReplacementCodeuiVertex3fvSUN\0" "\0" - /* _mesa_function_pool[1905]: EdgeFlagPointer (offset 312) */ + /* _mesa_function_pool[1996]: EdgeFlagPointer (offset 312) */ "ip\0" "glEdgeFlagPointer\0" "\0" - /* _mesa_function_pool[1927]: Color3ubv (offset 20) */ + /* _mesa_function_pool[2018]: Color3ubv (offset 20) */ "p\0" "glColor3ubv\0" "\0" - /* _mesa_function_pool[1942]: GetQueryObjectivARB (will be remapped) */ + /* _mesa_function_pool[2033]: GetQueryObjectivARB (will be remapped) */ "iip\0" "glGetQueryObjectiv\0" "glGetQueryObjectivARB\0" "\0" - /* _mesa_function_pool[1988]: Vertex3dv (offset 135) */ + /* _mesa_function_pool[2079]: Vertex3dv (offset 135) */ "p\0" "glVertex3dv\0" "\0" - /* _mesa_function_pool[2003]: ReplacementCodeuiTexCoord2fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[2094]: ReplacementCodeuiTexCoord2fVertex3fvSUN (dynamic) */ "ppp\0" "glReplacementCodeuiTexCoord2fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[2050]: CompressedTexSubImage2DARB (will be remapped) */ + /* _mesa_function_pool[2141]: CompressedTexSubImage2DARB (will be remapped) */ "iiiiiiiip\0" "glCompressedTexSubImage2D\0" "glCompressedTexSubImage2DARB\0" "\0" - /* _mesa_function_pool[2116]: CombinerOutputNV (will be remapped) */ + /* _mesa_function_pool[2207]: CombinerOutputNV (will be remapped) */ "iiiiiiiiii\0" "glCombinerOutputNV\0" "\0" - /* _mesa_function_pool[2147]: VertexAttribs3fvNV (will be remapped) */ + /* _mesa_function_pool[2238]: VertexAttribs3fvNV (will be remapped) */ "iip\0" "glVertexAttribs3fvNV\0" "\0" - /* _mesa_function_pool[2173]: Uniform2fARB (will be remapped) */ + /* _mesa_function_pool[2264]: GetnMapivARB (will be remapped) */ + "iiip\0" + "glGetnMapivARB\0" + "\0" + /* _mesa_function_pool[2285]: Uniform2fARB (will be remapped) */ "iff\0" "glUniform2f\0" "glUniform2fARB\0" "\0" - /* _mesa_function_pool[2205]: LightModeliv (offset 166) */ + /* _mesa_function_pool[2317]: LightModeliv (offset 166) */ "ip\0" "glLightModeliv\0" "\0" - /* _mesa_function_pool[2224]: VertexAttrib1svARB (will be remapped) */ + /* _mesa_function_pool[2336]: VertexAttrib1svARB (will be remapped) */ "ip\0" "glVertexAttrib1sv\0" "glVertexAttrib1svARB\0" "\0" - /* _mesa_function_pool[2267]: VertexAttribs1dvNV (will be remapped) */ + /* _mesa_function_pool[2379]: VertexAttribs1dvNV (will be remapped) */ "iip\0" "glVertexAttribs1dvNV\0" "\0" - /* _mesa_function_pool[2293]: Uniform2ivARB (will be remapped) */ + /* _mesa_function_pool[2405]: Uniform2ivARB (will be remapped) */ "iip\0" "glUniform2iv\0" "glUniform2ivARB\0" "\0" - /* _mesa_function_pool[2327]: GetImageTransformParameterfvHP (dynamic) */ + /* _mesa_function_pool[2439]: GetImageTransformParameterfvHP (dynamic) */ "iip\0" "glGetImageTransformParameterfvHP\0" "\0" - /* _mesa_function_pool[2365]: Normal3bv (offset 53) */ + /* _mesa_function_pool[2477]: Normal3bv (offset 53) */ "p\0" "glNormal3bv\0" "\0" - /* _mesa_function_pool[2380]: TexGeniv (offset 193) */ + /* _mesa_function_pool[2492]: TexGeniv (offset 193) */ "iip\0" "glTexGeniv\0" "\0" - /* _mesa_function_pool[2396]: WeightubvARB (dynamic) */ + /* _mesa_function_pool[2508]: WeightubvARB (dynamic) */ "ip\0" "glWeightubvARB\0" "\0" - /* _mesa_function_pool[2415]: VertexAttrib1fvNV (will be remapped) */ + /* _mesa_function_pool[2527]: VertexAttrib1fvNV (will be remapped) */ "ip\0" "glVertexAttrib1fvNV\0" "\0" - /* _mesa_function_pool[2439]: Vertex3iv (offset 139) */ + /* _mesa_function_pool[2551]: Vertex3iv (offset 139) */ "p\0" "glVertex3iv\0" "\0" - /* _mesa_function_pool[2454]: CopyConvolutionFilter1D (offset 354) */ + /* _mesa_function_pool[2566]: CopyConvolutionFilter1D (offset 354) */ "iiiii\0" "glCopyConvolutionFilter1D\0" "glCopyConvolutionFilter1DEXT\0" "\0" - /* _mesa_function_pool[2516]: VertexAttribI1uiEXT (will be remapped) */ + /* _mesa_function_pool[2628]: VertexAttribI1uiEXT (will be remapped) */ "ii\0" "glVertexAttribI1uiEXT\0" "glVertexAttribI1ui\0" "\0" - /* _mesa_function_pool[2561]: ReplacementCodeuiNormal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[2673]: ReplacementCodeuiNormal3fVertex3fSUN (dynamic) */ "iffffff\0" "glReplacementCodeuiNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[2609]: DeleteSync (will be remapped) */ + /* _mesa_function_pool[2721]: DeleteSync (will be remapped) */ "i\0" "glDeleteSync\0" "\0" - /* _mesa_function_pool[2625]: FragmentMaterialfvSGIX (dynamic) */ + /* _mesa_function_pool[2737]: FragmentMaterialfvSGIX (dynamic) */ "iip\0" "glFragmentMaterialfvSGIX\0" "\0" - /* _mesa_function_pool[2655]: BlendColor (offset 336) */ + /* _mesa_function_pool[2767]: BlendColor (offset 336) */ "ffff\0" "glBlendColor\0" "glBlendColorEXT\0" "\0" - /* _mesa_function_pool[2690]: UniformMatrix4fvARB (will be remapped) */ + /* _mesa_function_pool[2802]: UniformMatrix4fvARB (will be remapped) */ "iiip\0" "glUniformMatrix4fv\0" "glUniformMatrix4fvARB\0" "\0" - /* _mesa_function_pool[2737]: DeleteVertexArraysAPPLE (will be remapped) */ + /* _mesa_function_pool[2849]: DeleteVertexArraysAPPLE (will be remapped) */ "ip\0" "glDeleteVertexArrays\0" "glDeleteVertexArraysAPPLE\0" "\0" - /* _mesa_function_pool[2788]: TexBuffer (will be remapped) */ + /* _mesa_function_pool[2900]: TexBuffer (will be remapped) */ "iii\0" "glTexBuffer\0" "\0" - /* _mesa_function_pool[2805]: ReadInstrumentsSGIX (dynamic) */ + /* _mesa_function_pool[2917]: ReadInstrumentsSGIX (dynamic) */ "i\0" "glReadInstrumentsSGIX\0" "\0" - /* _mesa_function_pool[2830]: CallLists (offset 3) */ + /* _mesa_function_pool[2942]: CallLists (offset 3) */ "iip\0" "glCallLists\0" "\0" - /* _mesa_function_pool[2847]: UniformMatrix2x4fv (will be remapped) */ + /* _mesa_function_pool[2959]: DeformationMap3dSGIX (dynamic) */ + "iddiiddiiddiip\0" + "glDeformationMap3dSGIX\0" + "\0" + /* _mesa_function_pool[2998]: UniformMatrix2x4fv (will be remapped) */ "iiip\0" "glUniformMatrix2x4fv\0" "\0" - /* _mesa_function_pool[2874]: Color4ubVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[3025]: ReadnPixelsARB (will be remapped) */ + "iiiiiiip\0" + "glReadnPixelsARB\0" + "\0" + /* _mesa_function_pool[3052]: Color4ubVertex3fvSUN (dynamic) */ "pp\0" "glColor4ubVertex3fvSUN\0" "\0" - /* _mesa_function_pool[2901]: Normal3iv (offset 59) */ + /* _mesa_function_pool[3079]: Normal3iv (offset 59) */ "p\0" "glNormal3iv\0" "\0" - /* _mesa_function_pool[2916]: PassThrough (offset 199) */ + /* _mesa_function_pool[3094]: PassThrough (offset 199) */ "f\0" "glPassThrough\0" "\0" - /* _mesa_function_pool[2933]: GetVertexAttribIivEXT (will be remapped) */ + /* _mesa_function_pool[3111]: GetnPixelMapusvARB (will be remapped) */ "iip\0" - "glGetVertexAttribIivEXT\0" - "glGetVertexAttribIiv\0" + "glGetnPixelMapusvARB\0" "\0" - /* _mesa_function_pool[2983]: TexParameterIivEXT (will be remapped) */ + /* _mesa_function_pool[3137]: TexParameterIivEXT (will be remapped) */ "iip\0" "glTexParameterIivEXT\0" "glTexParameterIiv\0" "\0" - /* _mesa_function_pool[3027]: FramebufferTextureLayerEXT (will be remapped) */ + /* _mesa_function_pool[3181]: FramebufferTextureLayerEXT (will be remapped) */ "iiiii\0" "glFramebufferTextureLayer\0" "glFramebufferTextureLayerEXT\0" "\0" - /* _mesa_function_pool[3089]: GetListParameterfvSGIX (dynamic) */ + /* _mesa_function_pool[3243]: GetListParameterfvSGIX (dynamic) */ "iip\0" "glGetListParameterfvSGIX\0" "\0" - /* _mesa_function_pool[3119]: Viewport (offset 305) */ + /* _mesa_function_pool[3273]: Viewport (offset 305) */ "iiii\0" "glViewport\0" "\0" - /* _mesa_function_pool[3136]: VertexAttrib4NusvARB (will be remapped) */ + /* _mesa_function_pool[3290]: VertexAttrib4NusvARB (will be remapped) */ "ip\0" "glVertexAttrib4Nusv\0" "glVertexAttrib4NusvARB\0" "\0" - /* _mesa_function_pool[3183]: WindowPos4svMESA (will be remapped) */ + /* _mesa_function_pool[3337]: WindowPos4svMESA (will be remapped) */ "p\0" "glWindowPos4svMESA\0" "\0" - /* _mesa_function_pool[3205]: CreateProgramObjectARB (will be remapped) */ + /* _mesa_function_pool[3359]: CreateProgramObjectARB (will be remapped) */ "\0" "glCreateProgramObjectARB\0" "\0" - /* _mesa_function_pool[3232]: DeleteTransformFeedbacks (will be remapped) */ + /* _mesa_function_pool[3386]: DeleteTransformFeedbacks (will be remapped) */ "ip\0" "glDeleteTransformFeedbacks\0" "\0" - /* _mesa_function_pool[3263]: UniformMatrix4x3fv (will be remapped) */ + /* _mesa_function_pool[3417]: UniformMatrix4x3fv (will be remapped) */ "iiip\0" "glUniformMatrix4x3fv\0" "\0" - /* _mesa_function_pool[3290]: PrioritizeTextures (offset 331) */ + /* _mesa_function_pool[3444]: PrioritizeTextures (offset 331) */ "ipp\0" "glPrioritizeTextures\0" "glPrioritizeTexturesEXT\0" "\0" - /* _mesa_function_pool[3340]: VertexAttribI3uiEXT (will be remapped) */ + /* _mesa_function_pool[3494]: VertexAttribI3uiEXT (will be remapped) */ "iiii\0" "glVertexAttribI3uiEXT\0" "glVertexAttribI3ui\0" "\0" - /* _mesa_function_pool[3387]: AsyncMarkerSGIX (dynamic) */ + /* _mesa_function_pool[3541]: AsyncMarkerSGIX (dynamic) */ "i\0" "glAsyncMarkerSGIX\0" "\0" - /* _mesa_function_pool[3408]: GlobalAlphaFactorubSUN (dynamic) */ + /* _mesa_function_pool[3562]: GlobalAlphaFactorubSUN (dynamic) */ "i\0" "glGlobalAlphaFactorubSUN\0" "\0" - /* _mesa_function_pool[3436]: ClearColorIuiEXT (will be remapped) */ + /* _mesa_function_pool[3590]: ClearColorIuiEXT (will be remapped) */ "iiii\0" "glClearColorIuiEXT\0" "\0" - /* _mesa_function_pool[3461]: ClearDebugLogMESA (dynamic) */ + /* _mesa_function_pool[3615]: ClearDebugLogMESA (dynamic) */ "iii\0" "glClearDebugLogMESA\0" "\0" - /* _mesa_function_pool[3486]: Uniform4uiEXT (will be remapped) */ + /* _mesa_function_pool[3640]: Uniform4uiEXT (will be remapped) */ "iiiii\0" "glUniform4uiEXT\0" "glUniform4ui\0" "\0" - /* _mesa_function_pool[3522]: ResetHistogram (offset 369) */ + /* _mesa_function_pool[3676]: ResetHistogram (offset 369) */ "i\0" "glResetHistogram\0" "glResetHistogramEXT\0" "\0" - /* _mesa_function_pool[3562]: GetProgramNamedParameterfvNV (will be remapped) */ + /* _mesa_function_pool[3716]: GetProgramNamedParameterfvNV (will be remapped) */ "iipp\0" "glGetProgramNamedParameterfvNV\0" "\0" - /* _mesa_function_pool[3599]: PointParameterfEXT (will be remapped) */ + /* _mesa_function_pool[3753]: PointParameterfEXT (will be remapped) */ "if\0" "glPointParameterf\0" "glPointParameterfARB\0" "glPointParameterfEXT\0" "glPointParameterfSGIS\0" "\0" - /* _mesa_function_pool[3685]: LoadIdentityDeformationMapSGIX (dynamic) */ + /* _mesa_function_pool[3839]: LoadIdentityDeformationMapSGIX (dynamic) */ "i\0" "glLoadIdentityDeformationMapSGIX\0" "\0" - /* _mesa_function_pool[3721]: GenFencesNV (will be remapped) */ + /* _mesa_function_pool[3875]: GenFencesNV (will be remapped) */ "ip\0" "glGenFencesNV\0" "\0" - /* _mesa_function_pool[3739]: ImageTransformParameterfHP (dynamic) */ + /* _mesa_function_pool[3893]: ImageTransformParameterfHP (dynamic) */ "iif\0" "glImageTransformParameterfHP\0" "\0" - /* _mesa_function_pool[3773]: MatrixIndexusvARB (dynamic) */ + /* _mesa_function_pool[3927]: MatrixIndexusvARB (dynamic) */ "ip\0" "glMatrixIndexusvARB\0" "\0" - /* _mesa_function_pool[3797]: DrawElementsBaseVertex (will be remapped) */ + /* _mesa_function_pool[3951]: DrawElementsBaseVertex (will be remapped) */ "iiipi\0" "glDrawElementsBaseVertex\0" "\0" - /* _mesa_function_pool[3829]: DisableVertexAttribArrayARB (will be remapped) */ + /* _mesa_function_pool[3983]: DisableVertexAttribArrayARB (will be remapped) */ "i\0" "glDisableVertexAttribArray\0" "glDisableVertexAttribArrayARB\0" "\0" - /* _mesa_function_pool[3889]: TexCoord2sv (offset 109) */ + /* _mesa_function_pool[4043]: VertexAttribI4ubvEXT (will be remapped) */ + "ip\0" + "glVertexAttribI4ubvEXT\0" + "glVertexAttribI4ubv\0" + "\0" + /* _mesa_function_pool[4090]: GetnConvolutionFilterARB (will be remapped) */ + "iiiip\0" + "glGetnConvolutionFilterARB\0" + "\0" + /* _mesa_function_pool[4124]: TexCoord2sv (offset 109) */ "p\0" "glTexCoord2sv\0" "\0" - /* _mesa_function_pool[3906]: Vertex4dv (offset 143) */ + /* _mesa_function_pool[4141]: Vertex4dv (offset 143) */ "p\0" "glVertex4dv\0" "\0" - /* _mesa_function_pool[3921]: StencilMaskSeparate (will be remapped) */ + /* _mesa_function_pool[4156]: StencilMaskSeparate (will be remapped) */ "ii\0" "glStencilMaskSeparate\0" "\0" - /* _mesa_function_pool[3947]: ProgramLocalParameter4dARB (will be remapped) */ + /* _mesa_function_pool[4182]: ProgramLocalParameter4dARB (will be remapped) */ "iidddd\0" "glProgramLocalParameter4dARB\0" "\0" - /* _mesa_function_pool[3984]: CompressedTexImage3DARB (will be remapped) */ + /* _mesa_function_pool[4219]: CompressedTexImage3DARB (will be remapped) */ "iiiiiiiip\0" "glCompressedTexImage3D\0" "glCompressedTexImage3DARB\0" "\0" - /* _mesa_function_pool[4044]: Color3sv (offset 18) */ + /* _mesa_function_pool[4279]: Color3sv (offset 18) */ "p\0" "glColor3sv\0" "\0" - /* _mesa_function_pool[4058]: GetConvolutionParameteriv (offset 358) */ + /* _mesa_function_pool[4293]: GetConvolutionParameteriv (offset 358) */ "iip\0" "glGetConvolutionParameteriv\0" "glGetConvolutionParameterivEXT\0" "\0" - /* _mesa_function_pool[4122]: DeleteSamplers (will be remapped) */ + /* _mesa_function_pool[4357]: DeleteSamplers (will be remapped) */ "ip\0" "glDeleteSamplers\0" "\0" - /* _mesa_function_pool[4143]: VertexAttrib1fARB (will be remapped) */ + /* _mesa_function_pool[4378]: VertexAttrib1fARB (will be remapped) */ "if\0" "glVertexAttrib1f\0" "glVertexAttrib1fARB\0" "\0" - /* _mesa_function_pool[4184]: Vertex2dv (offset 127) */ + /* _mesa_function_pool[4419]: Vertex2dv (offset 127) */ "p\0" "glVertex2dv\0" "\0" - /* _mesa_function_pool[4199]: TestFenceNV (will be remapped) */ + /* _mesa_function_pool[4434]: TestFenceNV (will be remapped) */ "i\0" "glTestFenceNV\0" "\0" - /* _mesa_function_pool[4216]: GetVertexAttribIuivEXT (will be remapped) */ - "iip\0" - "glGetVertexAttribIuivEXT\0" - "glGetVertexAttribIuiv\0" - "\0" - /* _mesa_function_pool[4268]: MultiTexCoord1fvARB (offset 379) */ + /* _mesa_function_pool[4451]: MultiTexCoord1fvARB (offset 379) */ "ip\0" "glMultiTexCoord1fv\0" "glMultiTexCoord1fvARB\0" "\0" - /* _mesa_function_pool[4313]: TexCoord3iv (offset 115) */ + /* _mesa_function_pool[4496]: TexCoord3iv (offset 115) */ "p\0" "glTexCoord3iv\0" "\0" - /* _mesa_function_pool[4330]: Uniform2uivEXT (will be remapped) */ + /* _mesa_function_pool[4513]: Uniform2uivEXT (will be remapped) */ "iip\0" "glUniform2uivEXT\0" "glUniform2uiv\0" "\0" - /* _mesa_function_pool[4366]: ColorFragmentOp2ATI (will be remapped) */ + /* _mesa_function_pool[4549]: ColorFragmentOp2ATI (will be remapped) */ "iiiiiiiiii\0" "glColorFragmentOp2ATI\0" "\0" - /* _mesa_function_pool[4400]: SecondaryColorPointerListIBM (dynamic) */ + /* _mesa_function_pool[4583]: SecondaryColorPointerListIBM (dynamic) */ "iiipi\0" "glSecondaryColorPointerListIBM\0" "\0" - /* _mesa_function_pool[4438]: GetPixelTexGenParameterivSGIS (will be remapped) */ + /* _mesa_function_pool[4621]: GetPixelTexGenParameterivSGIS (will be remapped) */ "ip\0" "glGetPixelTexGenParameterivSGIS\0" "\0" - /* _mesa_function_pool[4474]: Color3fv (offset 14) */ + /* _mesa_function_pool[4657]: Color3fv (offset 14) */ "p\0" "glColor3fv\0" "\0" - /* _mesa_function_pool[4488]: VertexAttrib4fNV (will be remapped) */ - "iffff\0" - "glVertexAttrib4fNV\0" + /* _mesa_function_pool[4671]: GetnPixelMapfvARB (will be remapped) */ + "iip\0" + "glGetnPixelMapfvARB\0" "\0" - /* _mesa_function_pool[4514]: ReplacementCodeubSUN (dynamic) */ + /* _mesa_function_pool[4696]: ReplacementCodeubSUN (dynamic) */ "i\0" "glReplacementCodeubSUN\0" "\0" - /* _mesa_function_pool[4540]: FinishAsyncSGIX (dynamic) */ + /* _mesa_function_pool[4722]: FinishAsyncSGIX (dynamic) */ "p\0" "glFinishAsyncSGIX\0" "\0" - /* _mesa_function_pool[4561]: GetDebugLogMESA (dynamic) */ + /* _mesa_function_pool[4743]: GetnUniformfvARB (will be remapped) */ + "iiip\0" + "glGetnUniformfvARB\0" + "\0" + /* _mesa_function_pool[4768]: GetDebugLogMESA (dynamic) */ "iiiipp\0" "glGetDebugLogMESA\0" "\0" - /* _mesa_function_pool[4587]: FogCoorddEXT (will be remapped) */ + /* _mesa_function_pool[4794]: FogCoorddEXT (will be remapped) */ "d\0" "glFogCoordd\0" "glFogCoorddEXT\0" "\0" - /* _mesa_function_pool[4617]: BeginConditionalRenderNV (will be remapped) */ + /* _mesa_function_pool[4824]: BeginConditionalRenderNV (will be remapped) */ "ii\0" "glBeginConditionalRenderNV\0" "glBeginConditionalRender\0" "\0" - /* _mesa_function_pool[4673]: Color4ubVertex3fSUN (dynamic) */ + /* _mesa_function_pool[4880]: Color4ubVertex3fSUN (dynamic) */ "iiiifff\0" "glColor4ubVertex3fSUN\0" "\0" - /* _mesa_function_pool[4704]: FogCoordfEXT (will be remapped) */ + /* _mesa_function_pool[4911]: FogCoordfEXT (will be remapped) */ "f\0" "glFogCoordf\0" "glFogCoordfEXT\0" "\0" - /* _mesa_function_pool[4734]: PointSize (offset 173) */ + /* _mesa_function_pool[4941]: PointSize (offset 173) */ "f\0" "glPointSize\0" "\0" - /* _mesa_function_pool[4749]: VertexAttribI2uivEXT (will be remapped) */ + /* _mesa_function_pool[4956]: VertexAttribI2uivEXT (will be remapped) */ "ip\0" "glVertexAttribI2uivEXT\0" "glVertexAttribI2uiv\0" "\0" - /* _mesa_function_pool[4796]: TexCoord2fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[5003]: TexCoord2fVertex3fSUN (dynamic) */ "fffff\0" "glTexCoord2fVertex3fSUN\0" "\0" - /* _mesa_function_pool[4827]: PopName (offset 200) */ + /* _mesa_function_pool[5034]: PopName (offset 200) */ "\0" "glPopName\0" "\0" - /* _mesa_function_pool[4839]: GetSamplerParameterfv (will be remapped) */ + /* _mesa_function_pool[5046]: GetSamplerParameterfv (will be remapped) */ "iip\0" "glGetSamplerParameterfv\0" "\0" - /* _mesa_function_pool[4868]: GlobalAlphaFactoriSUN (dynamic) */ + /* _mesa_function_pool[5075]: GlobalAlphaFactoriSUN (dynamic) */ "i\0" "glGlobalAlphaFactoriSUN\0" "\0" - /* _mesa_function_pool[4895]: VertexAttrib2dNV (will be remapped) */ + /* _mesa_function_pool[5102]: VertexAttrib2dNV (will be remapped) */ "idd\0" "glVertexAttrib2dNV\0" "\0" - /* _mesa_function_pool[4919]: GetProgramInfoLog (will be remapped) */ + /* _mesa_function_pool[5126]: GetProgramInfoLog (will be remapped) */ "iipp\0" "glGetProgramInfoLog\0" "\0" - /* _mesa_function_pool[4945]: VertexAttrib4NbvARB (will be remapped) */ + /* _mesa_function_pool[5152]: VertexAttrib4NbvARB (will be remapped) */ "ip\0" "glVertexAttrib4Nbv\0" "glVertexAttrib4NbvARB\0" "\0" - /* _mesa_function_pool[4990]: GetActiveAttribARB (will be remapped) */ + /* _mesa_function_pool[5197]: GetActiveAttribARB (will be remapped) */ "iiipppp\0" "glGetActiveAttrib\0" "glGetActiveAttribARB\0" "\0" - /* _mesa_function_pool[5038]: Vertex4sv (offset 149) */ + /* _mesa_function_pool[5245]: Vertex4sv (offset 149) */ "p\0" "glVertex4sv\0" "\0" - /* _mesa_function_pool[5053]: VertexAttrib4ubNV (will be remapped) */ + /* _mesa_function_pool[5260]: VertexAttrib4ubNV (will be remapped) */ "iiiii\0" "glVertexAttrib4ubNV\0" "\0" - /* _mesa_function_pool[5080]: ClampColor (will be remapped) */ + /* _mesa_function_pool[5287]: VertexAttribI1ivEXT (will be remapped) */ + "ip\0" + "glVertexAttribI1ivEXT\0" + "glVertexAttribI1iv\0" + "\0" + /* _mesa_function_pool[5332]: ClampColor (will be remapped) */ "ii\0" "glClampColor\0" "\0" - /* _mesa_function_pool[5097]: TextureRangeAPPLE (will be remapped) */ + /* _mesa_function_pool[5349]: TextureRangeAPPLE (will be remapped) */ "iip\0" "glTextureRangeAPPLE\0" "\0" - /* _mesa_function_pool[5122]: GetTexEnvfv (offset 276) */ + /* _mesa_function_pool[5374]: GetTexEnvfv (offset 276) */ "iip\0" "glGetTexEnvfv\0" "\0" - /* _mesa_function_pool[5141]: BindTransformFeedback (will be remapped) */ + /* _mesa_function_pool[5393]: BindTransformFeedback (will be remapped) */ "ii\0" "glBindTransformFeedback\0" "\0" - /* _mesa_function_pool[5169]: TexCoord2fColor4fNormal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[5421]: TexCoord2fColor4fNormal3fVertex3fSUN (dynamic) */ "ffffffffffff\0" "glTexCoord2fColor4fNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[5222]: Indexub (offset 315) */ + /* _mesa_function_pool[5474]: Indexub (offset 315) */ "i\0" "glIndexub\0" "\0" - /* _mesa_function_pool[5235]: TexEnvi (offset 186) */ + /* _mesa_function_pool[5487]: VertexAttrib4fNV (will be remapped) */ + "iffff\0" + "glVertexAttrib4fNV\0" + "\0" + /* _mesa_function_pool[5513]: TexEnvi (offset 186) */ "iii\0" "glTexEnvi\0" "\0" - /* _mesa_function_pool[5250]: GetClipPlane (offset 259) */ + /* _mesa_function_pool[5528]: GetClipPlane (offset 259) */ "ip\0" "glGetClipPlane\0" "\0" - /* _mesa_function_pool[5269]: CombinerParameterfvNV (will be remapped) */ + /* _mesa_function_pool[5547]: CombinerParameterfvNV (will be remapped) */ "ip\0" "glCombinerParameterfvNV\0" "\0" - /* _mesa_function_pool[5297]: VertexAttribs3dvNV (will be remapped) */ + /* _mesa_function_pool[5575]: VertexAttribs3dvNV (will be remapped) */ "iip\0" "glVertexAttribs3dvNV\0" "\0" - /* _mesa_function_pool[5323]: VertexAttribI2uiEXT (will be remapped) */ + /* _mesa_function_pool[5601]: VertexAttribI2uiEXT (will be remapped) */ "iii\0" "glVertexAttribI2uiEXT\0" "glVertexAttribI2ui\0" "\0" - /* _mesa_function_pool[5369]: VertexAttribs4fvNV (will be remapped) */ + /* _mesa_function_pool[5647]: VertexAttribs4fvNV (will be remapped) */ "iip\0" "glVertexAttribs4fvNV\0" "\0" - /* _mesa_function_pool[5395]: VertexArrayRangeNV (will be remapped) */ + /* _mesa_function_pool[5673]: VertexArrayRangeNV (will be remapped) */ "ip\0" "glVertexArrayRangeNV\0" "\0" - /* _mesa_function_pool[5420]: FragmentLightiSGIX (dynamic) */ + /* _mesa_function_pool[5698]: FragmentLightiSGIX (dynamic) */ "iii\0" "glFragmentLightiSGIX\0" "\0" - /* _mesa_function_pool[5446]: PolygonOffsetEXT (will be remapped) */ + /* _mesa_function_pool[5724]: PolygonOffsetEXT (will be remapped) */ "ff\0" "glPolygonOffsetEXT\0" "\0" - /* _mesa_function_pool[5469]: VertexAttribI4uivEXT (will be remapped) */ + /* _mesa_function_pool[5747]: VertexAttribI4uivEXT (will be remapped) */ "ip\0" "glVertexAttribI4uivEXT\0" "glVertexAttribI4uiv\0" "\0" - /* _mesa_function_pool[5516]: PollAsyncSGIX (dynamic) */ + /* _mesa_function_pool[5794]: PollAsyncSGIX (dynamic) */ "p\0" "glPollAsyncSGIX\0" "\0" - /* _mesa_function_pool[5535]: DeleteFragmentShaderATI (will be remapped) */ + /* _mesa_function_pool[5813]: DeleteFragmentShaderATI (will be remapped) */ "i\0" "glDeleteFragmentShaderATI\0" "\0" - /* _mesa_function_pool[5564]: Scaled (offset 301) */ + /* _mesa_function_pool[5842]: Scaled (offset 301) */ "ddd\0" "glScaled\0" "\0" - /* _mesa_function_pool[5578]: ResumeTransformFeedback (will be remapped) */ + /* _mesa_function_pool[5856]: ResumeTransformFeedback (will be remapped) */ "\0" "glResumeTransformFeedback\0" "\0" - /* _mesa_function_pool[5606]: Scalef (offset 302) */ + /* _mesa_function_pool[5884]: Scalef (offset 302) */ "fff\0" "glScalef\0" "\0" - /* _mesa_function_pool[5620]: TexCoord2fNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[5898]: TexCoord2fNormal3fVertex3fvSUN (dynamic) */ "ppp\0" "glTexCoord2fNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[5658]: ProgramEnvParameters4fvEXT (will be remapped) */ + /* _mesa_function_pool[5936]: ProgramEnvParameters4fvEXT (will be remapped) */ "iiip\0" "glProgramEnvParameters4fvEXT\0" "\0" - /* _mesa_function_pool[5693]: MultTransposeMatrixdARB (will be remapped) */ + /* _mesa_function_pool[5971]: MultTransposeMatrixdARB (will be remapped) */ "p\0" "glMultTransposeMatrixd\0" "glMultTransposeMatrixdARB\0" "\0" - /* _mesa_function_pool[5745]: ColorMaskIndexedEXT (will be remapped) */ - "iiiii\0" - "glColorMaskIndexedEXT\0" - "glColorMaski\0" - "\0" - /* _mesa_function_pool[5787]: ObjectUnpurgeableAPPLE (will be remapped) */ + /* _mesa_function_pool[6023]: ObjectUnpurgeableAPPLE (will be remapped) */ "iii\0" "glObjectUnpurgeableAPPLE\0" "\0" - /* _mesa_function_pool[5817]: AlphaFunc (offset 240) */ + /* _mesa_function_pool[6053]: AlphaFunc (offset 240) */ "if\0" "glAlphaFunc\0" "\0" - /* _mesa_function_pool[5833]: WindowPos2svMESA (will be remapped) */ + /* _mesa_function_pool[6069]: WindowPos2svMESA (will be remapped) */ "p\0" "glWindowPos2sv\0" "glWindowPos2svARB\0" "glWindowPos2svMESA\0" "\0" - /* _mesa_function_pool[5888]: EdgeFlag (offset 41) */ + /* _mesa_function_pool[6124]: EdgeFlag (offset 41) */ "i\0" "glEdgeFlag\0" "\0" - /* _mesa_function_pool[5902]: TexCoord2iv (offset 107) */ + /* _mesa_function_pool[6138]: TexCoord2iv (offset 107) */ "p\0" "glTexCoord2iv\0" "\0" - /* _mesa_function_pool[5919]: CompressedTexImage1DARB (will be remapped) */ + /* _mesa_function_pool[6155]: CompressedTexImage1DARB (will be remapped) */ "iiiiiip\0" "glCompressedTexImage1D\0" "glCompressedTexImage1DARB\0" "\0" - /* _mesa_function_pool[5977]: Rotated (offset 299) */ + /* _mesa_function_pool[6213]: Rotated (offset 299) */ "dddd\0" "glRotated\0" "\0" - /* _mesa_function_pool[5993]: GetTexParameterIuivEXT (will be remapped) */ + /* _mesa_function_pool[6229]: GetTexParameterIuivEXT (will be remapped) */ "iip\0" "glGetTexParameterIuivEXT\0" "glGetTexParameterIuiv\0" "\0" - /* _mesa_function_pool[6045]: VertexAttrib2sNV (will be remapped) */ + /* _mesa_function_pool[6281]: VertexAttrib2sNV (will be remapped) */ "iii\0" "glVertexAttrib2sNV\0" "\0" - /* _mesa_function_pool[6069]: ReadPixels (offset 256) */ + /* _mesa_function_pool[6305]: ReadPixels (offset 256) */ "iiiiiip\0" "glReadPixels\0" "\0" - /* _mesa_function_pool[6091]: EdgeFlagv (offset 42) */ + /* _mesa_function_pool[6327]: VertexAttribDivisorARB (will be remapped) */ + "ii\0" + "glVertexAttribDivisorARB\0" + "\0" + /* _mesa_function_pool[6356]: EdgeFlagv (offset 42) */ "p\0" "glEdgeFlagv\0" "\0" - /* _mesa_function_pool[6106]: NormalPointerListIBM (dynamic) */ + /* _mesa_function_pool[6371]: NormalPointerListIBM (dynamic) */ "iipi\0" "glNormalPointerListIBM\0" "\0" - /* _mesa_function_pool[6135]: IndexPointerEXT (will be remapped) */ + /* _mesa_function_pool[6400]: IndexPointerEXT (will be remapped) */ "iiip\0" "glIndexPointerEXT\0" "\0" - /* _mesa_function_pool[6159]: Color4iv (offset 32) */ + /* _mesa_function_pool[6424]: Color4iv (offset 32) */ "p\0" "glColor4iv\0" "\0" - /* _mesa_function_pool[6173]: TexParameterf (offset 178) */ + /* _mesa_function_pool[6438]: TexParameterf (offset 178) */ "iif\0" "glTexParameterf\0" "\0" - /* _mesa_function_pool[6194]: TexParameteri (offset 180) */ + /* _mesa_function_pool[6459]: TexParameteri (offset 180) */ "iii\0" "glTexParameteri\0" "\0" - /* _mesa_function_pool[6215]: NormalPointerEXT (will be remapped) */ + /* _mesa_function_pool[6480]: NormalPointerEXT (will be remapped) */ "iiip\0" "glNormalPointerEXT\0" "\0" - /* _mesa_function_pool[6240]: MultiTexCoord3dARB (offset 392) */ + /* _mesa_function_pool[6505]: MultiTexCoord3dARB (offset 392) */ "iddd\0" "glMultiTexCoord3d\0" "glMultiTexCoord3dARB\0" "\0" - /* _mesa_function_pool[6285]: MultiTexCoord2iARB (offset 388) */ + /* _mesa_function_pool[6550]: MultiTexCoord2iARB (offset 388) */ "iii\0" "glMultiTexCoord2i\0" "glMultiTexCoord2iARB\0" "\0" - /* _mesa_function_pool[6329]: DrawPixels (offset 257) */ + /* _mesa_function_pool[6594]: DrawPixels (offset 257) */ "iiiip\0" "glDrawPixels\0" "\0" - /* _mesa_function_pool[6349]: ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[6614]: ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN (dynamic) */ "iffffffff\0" "glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[6409]: MultiTexCoord2svARB (offset 391) */ + /* _mesa_function_pool[6674]: MultiTexCoord2svARB (offset 391) */ "ip\0" "glMultiTexCoord2sv\0" "glMultiTexCoord2svARB\0" "\0" - /* _mesa_function_pool[6454]: ReplacementCodeubvSUN (dynamic) */ + /* _mesa_function_pool[6719]: ReplacementCodeubvSUN (dynamic) */ "p\0" "glReplacementCodeubvSUN\0" "\0" - /* _mesa_function_pool[6481]: Uniform3iARB (will be remapped) */ + /* _mesa_function_pool[6746]: Uniform3iARB (will be remapped) */ "iiii\0" "glUniform3i\0" "glUniform3iARB\0" "\0" - /* _mesa_function_pool[6514]: DrawTransformFeedback (will be remapped) */ + /* _mesa_function_pool[6779]: DrawTransformFeedback (will be remapped) */ "ii\0" "glDrawTransformFeedback\0" "\0" - /* _mesa_function_pool[6542]: DrawElementsInstancedARB (will be remapped) */ + /* _mesa_function_pool[6807]: DrawElementsInstancedARB (will be remapped) */ "iiipi\0" "glDrawElementsInstancedARB\0" "glDrawElementsInstancedEXT\0" "glDrawElementsInstanced\0" "\0" - /* _mesa_function_pool[6627]: GetShaderInfoLog (will be remapped) */ + /* _mesa_function_pool[6892]: GetShaderInfoLog (will be remapped) */ "iipp\0" "glGetShaderInfoLog\0" "\0" - /* _mesa_function_pool[6652]: WeightivARB (dynamic) */ + /* _mesa_function_pool[6917]: WeightivARB (dynamic) */ "ip\0" "glWeightivARB\0" "\0" - /* _mesa_function_pool[6670]: PollInstrumentsSGIX (dynamic) */ + /* _mesa_function_pool[6935]: PollInstrumentsSGIX (dynamic) */ "p\0" "glPollInstrumentsSGIX\0" "\0" - /* _mesa_function_pool[6695]: GlobalAlphaFactordSUN (dynamic) */ + /* _mesa_function_pool[6960]: GlobalAlphaFactordSUN (dynamic) */ "d\0" "glGlobalAlphaFactordSUN\0" "\0" - /* _mesa_function_pool[6722]: GetFinalCombinerInputParameterfvNV (will be remapped) */ + /* _mesa_function_pool[6987]: GetFinalCombinerInputParameterfvNV (will be remapped) */ "iip\0" "glGetFinalCombinerInputParameterfvNV\0" "\0" - /* _mesa_function_pool[6764]: GenerateMipmapEXT (will be remapped) */ + /* _mesa_function_pool[7029]: GenerateMipmapEXT (will be remapped) */ "i\0" "glGenerateMipmap\0" "glGenerateMipmapEXT\0" "\0" - /* _mesa_function_pool[6804]: GenLists (offset 5) */ + /* _mesa_function_pool[7069]: GenLists (offset 5) */ "i\0" "glGenLists\0" "\0" - /* _mesa_function_pool[6818]: DepthRangef (will be remapped) */ + /* _mesa_function_pool[7083]: DepthRangef (will be remapped) */ "ff\0" "glDepthRangef\0" "\0" - /* _mesa_function_pool[6836]: GetMapAttribParameterivNV (dynamic) */ + /* _mesa_function_pool[7101]: GetMapAttribParameterivNV (dynamic) */ "iiip\0" "glGetMapAttribParameterivNV\0" "\0" - /* _mesa_function_pool[6870]: CreateShaderObjectARB (will be remapped) */ + /* _mesa_function_pool[7135]: CreateShaderObjectARB (will be remapped) */ "i\0" "glCreateShaderObjectARB\0" "\0" - /* _mesa_function_pool[6897]: GetSharpenTexFuncSGIS (dynamic) */ + /* _mesa_function_pool[7162]: GetSharpenTexFuncSGIS (dynamic) */ "ip\0" "glGetSharpenTexFuncSGIS\0" "\0" - /* _mesa_function_pool[6925]: BufferDataARB (will be remapped) */ + /* _mesa_function_pool[7190]: BufferDataARB (will be remapped) */ "iipi\0" "glBufferData\0" "glBufferDataARB\0" "\0" - /* _mesa_function_pool[6960]: FlushVertexArrayRangeNV (will be remapped) */ + /* _mesa_function_pool[7225]: FlushVertexArrayRangeNV (will be remapped) */ "\0" "glFlushVertexArrayRangeNV\0" "\0" - /* _mesa_function_pool[6988]: MapGrid2d (offset 226) */ + /* _mesa_function_pool[7253]: MapGrid2d (offset 226) */ "iddidd\0" "glMapGrid2d\0" "\0" - /* _mesa_function_pool[7008]: MapGrid2f (offset 227) */ + /* _mesa_function_pool[7273]: MapGrid2f (offset 227) */ "iffiff\0" "glMapGrid2f\0" "\0" - /* _mesa_function_pool[7028]: SampleMapATI (will be remapped) */ + /* _mesa_function_pool[7293]: SampleMapATI (will be remapped) */ "iii\0" "glSampleMapATI\0" "\0" - /* _mesa_function_pool[7048]: VertexPointerEXT (will be remapped) */ + /* _mesa_function_pool[7313]: VertexPointerEXT (will be remapped) */ "iiiip\0" "glVertexPointerEXT\0" "\0" - /* _mesa_function_pool[7074]: GetTexFilterFuncSGIS (dynamic) */ + /* _mesa_function_pool[7339]: GetTexFilterFuncSGIS (dynamic) */ "iip\0" "glGetTexFilterFuncSGIS\0" "\0" - /* _mesa_function_pool[7102]: Scissor (offset 176) */ + /* _mesa_function_pool[7367]: Scissor (offset 176) */ "iiii\0" "glScissor\0" "\0" - /* _mesa_function_pool[7118]: Fogf (offset 153) */ + /* _mesa_function_pool[7383]: Fogf (offset 153) */ "if\0" "glFogf\0" "\0" - /* _mesa_function_pool[7129]: ReplacementCodeuiColor4ubVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[7394]: ReplacementCodeuiColor4ubVertex3fvSUN (dynamic) */ "ppp\0" "glReplacementCodeuiColor4ubVertex3fvSUN\0" "\0" - /* _mesa_function_pool[7174]: TexSubImage1D (offset 332) */ + /* _mesa_function_pool[7439]: TexSubImage1D (offset 332) */ "iiiiiip\0" "glTexSubImage1D\0" "glTexSubImage1DEXT\0" "\0" - /* _mesa_function_pool[7218]: VertexAttrib1sARB (will be remapped) */ + /* _mesa_function_pool[7483]: VertexAttrib1sARB (will be remapped) */ "ii\0" "glVertexAttrib1s\0" "glVertexAttrib1sARB\0" "\0" - /* _mesa_function_pool[7259]: FenceSync (will be remapped) */ + /* _mesa_function_pool[7524]: FenceSync (will be remapped) */ "ii\0" "glFenceSync\0" "\0" - /* _mesa_function_pool[7275]: Color4usv (offset 40) */ + /* _mesa_function_pool[7540]: Color4usv (offset 40) */ "p\0" "glColor4usv\0" "\0" - /* _mesa_function_pool[7290]: Fogi (offset 155) */ + /* _mesa_function_pool[7555]: Fogi (offset 155) */ "ii\0" "glFogi\0" "\0" - /* _mesa_function_pool[7301]: DepthRange (offset 288) */ + /* _mesa_function_pool[7566]: DepthRange (offset 288) */ "dd\0" "glDepthRange\0" "\0" - /* _mesa_function_pool[7318]: RasterPos3iv (offset 75) */ + /* _mesa_function_pool[7583]: RasterPos3iv (offset 75) */ "p\0" "glRasterPos3iv\0" "\0" - /* _mesa_function_pool[7336]: FinalCombinerInputNV (will be remapped) */ + /* _mesa_function_pool[7601]: FinalCombinerInputNV (will be remapped) */ "iiii\0" "glFinalCombinerInputNV\0" "\0" - /* _mesa_function_pool[7365]: TexCoord2i (offset 106) */ + /* _mesa_function_pool[7630]: TexCoord2i (offset 106) */ "ii\0" "glTexCoord2i\0" "\0" - /* _mesa_function_pool[7382]: PixelMapfv (offset 251) */ + /* _mesa_function_pool[7647]: PixelMapfv (offset 251) */ "iip\0" "glPixelMapfv\0" "\0" - /* _mesa_function_pool[7400]: Color4ui (offset 37) */ + /* _mesa_function_pool[7665]: Color4ui (offset 37) */ "iiii\0" "glColor4ui\0" "\0" - /* _mesa_function_pool[7417]: RasterPos3s (offset 76) */ + /* _mesa_function_pool[7682]: RasterPos3s (offset 76) */ "iii\0" "glRasterPos3s\0" "\0" - /* _mesa_function_pool[7436]: Color3usv (offset 24) */ + /* _mesa_function_pool[7701]: Color3usv (offset 24) */ "p\0" "glColor3usv\0" "\0" - /* _mesa_function_pool[7451]: FlushRasterSGIX (dynamic) */ + /* _mesa_function_pool[7716]: FlushRasterSGIX (dynamic) */ "\0" "glFlushRasterSGIX\0" "\0" - /* _mesa_function_pool[7471]: TexCoord2f (offset 104) */ + /* _mesa_function_pool[7736]: TexCoord2f (offset 104) */ "ff\0" "glTexCoord2f\0" "\0" - /* _mesa_function_pool[7488]: ReplacementCodeuiTexCoord2fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[7753]: ReplacementCodeuiTexCoord2fVertex3fSUN (dynamic) */ "ifffff\0" "glReplacementCodeuiTexCoord2fVertex3fSUN\0" "\0" - /* _mesa_function_pool[7537]: TexCoord2d (offset 102) */ + /* _mesa_function_pool[7802]: TexCoord2d (offset 102) */ "dd\0" "glTexCoord2d\0" "\0" - /* _mesa_function_pool[7554]: RasterPos3d (offset 70) */ + /* _mesa_function_pool[7819]: RasterPos3d (offset 70) */ "ddd\0" "glRasterPos3d\0" "\0" - /* _mesa_function_pool[7573]: RasterPos3f (offset 72) */ + /* _mesa_function_pool[7838]: RasterPos3f (offset 72) */ "fff\0" "glRasterPos3f\0" "\0" - /* _mesa_function_pool[7592]: Uniform1fARB (will be remapped) */ + /* _mesa_function_pool[7857]: Uniform1fARB (will be remapped) */ "if\0" "glUniform1f\0" "glUniform1fARB\0" "\0" - /* _mesa_function_pool[7623]: AreTexturesResident (offset 322) */ + /* _mesa_function_pool[7888]: AreTexturesResident (offset 322) */ "ipp\0" "glAreTexturesResident\0" "glAreTexturesResidentEXT\0" "\0" - /* _mesa_function_pool[7675]: TexCoord2s (offset 108) */ + /* _mesa_function_pool[7940]: TexCoord2s (offset 108) */ "ii\0" "glTexCoord2s\0" "\0" - /* _mesa_function_pool[7692]: StencilOpSeparate (will be remapped) */ + /* _mesa_function_pool[7957]: StencilOpSeparate (will be remapped) */ "iiii\0" "glStencilOpSeparate\0" "glStencilOpSeparateATI\0" "\0" - /* _mesa_function_pool[7741]: ColorTableParameteriv (offset 341) */ + /* _mesa_function_pool[8006]: ColorTableParameteriv (offset 341) */ "iip\0" "glColorTableParameteriv\0" "glColorTableParameterivSGI\0" "\0" - /* _mesa_function_pool[7797]: FogCoordPointerListIBM (dynamic) */ + /* _mesa_function_pool[8062]: FogCoordPointerListIBM (dynamic) */ "iipi\0" "glFogCoordPointerListIBM\0" "\0" - /* _mesa_function_pool[7828]: WindowPos3dMESA (will be remapped) */ + /* _mesa_function_pool[8093]: WindowPos3dMESA (will be remapped) */ "ddd\0" "glWindowPos3d\0" "glWindowPos3dARB\0" "glWindowPos3dMESA\0" "\0" - /* _mesa_function_pool[7882]: Color4us (offset 39) */ + /* _mesa_function_pool[8147]: Color4us (offset 39) */ "iiii\0" "glColor4us\0" "\0" - /* _mesa_function_pool[7899]: PointParameterfvEXT (will be remapped) */ + /* _mesa_function_pool[8164]: PointParameterfvEXT (will be remapped) */ "ip\0" "glPointParameterfv\0" "glPointParameterfvARB\0" "glPointParameterfvEXT\0" "glPointParameterfvSGIS\0" "\0" - /* _mesa_function_pool[7989]: Color3bv (offset 10) */ + /* _mesa_function_pool[8254]: Color3bv (offset 10) */ "p\0" "glColor3bv\0" "\0" - /* _mesa_function_pool[8003]: WindowPos2fvMESA (will be remapped) */ + /* _mesa_function_pool[8268]: GetnCompressedTexImageARB (will be remapped) */ + "iiip\0" + "glGetnCompressedTexImageARB\0" + "\0" + /* _mesa_function_pool[8302]: WindowPos2fvMESA (will be remapped) */ "p\0" "glWindowPos2fv\0" "glWindowPos2fvARB\0" "glWindowPos2fvMESA\0" "\0" - /* _mesa_function_pool[8058]: SecondaryColor3bvEXT (will be remapped) */ + /* _mesa_function_pool[8357]: SecondaryColor3bvEXT (will be remapped) */ "p\0" "glSecondaryColor3bv\0" "glSecondaryColor3bvEXT\0" "\0" - /* _mesa_function_pool[8104]: VertexPointerListIBM (dynamic) */ + /* _mesa_function_pool[8403]: VertexPointerListIBM (dynamic) */ "iiipi\0" "glVertexPointerListIBM\0" "\0" - /* _mesa_function_pool[8134]: GetProgramLocalParameterfvARB (will be remapped) */ + /* _mesa_function_pool[8433]: GetProgramLocalParameterfvARB (will be remapped) */ "iip\0" "glGetProgramLocalParameterfvARB\0" "\0" - /* _mesa_function_pool[8171]: FragmentMaterialfSGIX (dynamic) */ + /* _mesa_function_pool[8470]: FragmentMaterialfSGIX (dynamic) */ "iif\0" "glFragmentMaterialfSGIX\0" "\0" - /* _mesa_function_pool[8200]: BindSampler (will be remapped) */ + /* _mesa_function_pool[8499]: BindSampler (will be remapped) */ "ii\0" "glBindSampler\0" "\0" - /* _mesa_function_pool[8218]: RenderbufferStorageEXT (will be remapped) */ + /* _mesa_function_pool[8517]: RenderbufferStorageEXT (will be remapped) */ "iiii\0" "glRenderbufferStorage\0" "glRenderbufferStorageEXT\0" "\0" - /* _mesa_function_pool[8271]: IsFenceNV (will be remapped) */ + /* _mesa_function_pool[8570]: IsFenceNV (will be remapped) */ "i\0" "glIsFenceNV\0" "\0" - /* _mesa_function_pool[8286]: AttachObjectARB (will be remapped) */ + /* _mesa_function_pool[8585]: AttachObjectARB (will be remapped) */ "ii\0" "glAttachObjectARB\0" "\0" - /* _mesa_function_pool[8308]: GetFragmentLightivSGIX (dynamic) */ + /* _mesa_function_pool[8607]: GetFragmentLightivSGIX (dynamic) */ "iip\0" "glGetFragmentLightivSGIX\0" "\0" - /* _mesa_function_pool[8338]: UniformMatrix2fvARB (will be remapped) */ + /* _mesa_function_pool[8637]: UniformMatrix2fvARB (will be remapped) */ "iiip\0" "glUniformMatrix2fv\0" "glUniformMatrix2fvARB\0" "\0" - /* _mesa_function_pool[8385]: MultiTexCoord2fARB (offset 386) */ + /* _mesa_function_pool[8684]: MultiTexCoord2fARB (offset 386) */ "iff\0" "glMultiTexCoord2f\0" "glMultiTexCoord2fARB\0" "\0" - /* _mesa_function_pool[8429]: ColorTable (offset 339) */ + /* _mesa_function_pool[8728]: ColorTable (offset 339) */ "iiiiip\0" "glColorTable\0" "glColorTableSGI\0" "glColorTableEXT\0" "\0" - /* _mesa_function_pool[8482]: IndexPointer (offset 314) */ + /* _mesa_function_pool[8781]: IndexPointer (offset 314) */ "iip\0" "glIndexPointer\0" "\0" - /* _mesa_function_pool[8502]: Accum (offset 213) */ + /* _mesa_function_pool[8801]: Accum (offset 213) */ "if\0" "glAccum\0" "\0" - /* _mesa_function_pool[8514]: GetTexImage (offset 281) */ + /* _mesa_function_pool[8813]: GetTexImage (offset 281) */ "iiiip\0" "glGetTexImage\0" "\0" - /* _mesa_function_pool[8535]: MapControlPointsNV (dynamic) */ + /* _mesa_function_pool[8834]: MapControlPointsNV (dynamic) */ "iiiiiiiip\0" "glMapControlPointsNV\0" "\0" - /* _mesa_function_pool[8567]: ConvolutionFilter2D (offset 349) */ + /* _mesa_function_pool[8866]: ConvolutionFilter2D (offset 349) */ "iiiiiip\0" "glConvolutionFilter2D\0" "glConvolutionFilter2DEXT\0" "\0" - /* _mesa_function_pool[8623]: Finish (offset 216) */ + /* _mesa_function_pool[8922]: Finish (offset 216) */ "\0" "glFinish\0" "\0" - /* _mesa_function_pool[8634]: MapParameterfvNV (dynamic) */ + /* _mesa_function_pool[8933]: MapParameterfvNV (dynamic) */ "iip\0" "glMapParameterfvNV\0" "\0" - /* _mesa_function_pool[8658]: ClearStencil (offset 207) */ + /* _mesa_function_pool[8957]: ClearStencil (offset 207) */ "i\0" "glClearStencil\0" "\0" - /* _mesa_function_pool[8676]: VertexAttrib3dvARB (will be remapped) */ + /* _mesa_function_pool[8975]: VertexAttrib3dvARB (will be remapped) */ "ip\0" "glVertexAttrib3dv\0" "glVertexAttrib3dvARB\0" "\0" - /* _mesa_function_pool[8719]: Uniform4uivEXT (will be remapped) */ + /* _mesa_function_pool[9018]: Uniform4uivEXT (will be remapped) */ "iip\0" "glUniform4uivEXT\0" "glUniform4uiv\0" "\0" - /* _mesa_function_pool[8755]: HintPGI (dynamic) */ + /* _mesa_function_pool[9054]: HintPGI (dynamic) */ "ii\0" "glHintPGI\0" "\0" - /* _mesa_function_pool[8769]: ConvolutionParameteriv (offset 353) */ + /* _mesa_function_pool[9068]: ConvolutionParameteriv (offset 353) */ "iip\0" "glConvolutionParameteriv\0" "glConvolutionParameterivEXT\0" "\0" - /* _mesa_function_pool[8827]: Color4s (offset 33) */ + /* _mesa_function_pool[9126]: Color4s (offset 33) */ "iiii\0" "glColor4s\0" "\0" - /* _mesa_function_pool[8843]: InterleavedArrays (offset 317) */ + /* _mesa_function_pool[9142]: InterleavedArrays (offset 317) */ "iip\0" "glInterleavedArrays\0" "\0" - /* _mesa_function_pool[8868]: RasterPos2fv (offset 65) */ + /* _mesa_function_pool[9167]: RasterPos2fv (offset 65) */ "p\0" "glRasterPos2fv\0" "\0" - /* _mesa_function_pool[8886]: TexCoord1fv (offset 97) */ + /* _mesa_function_pool[9185]: TexCoord1fv (offset 97) */ "p\0" "glTexCoord1fv\0" "\0" - /* _mesa_function_pool[8903]: Vertex2d (offset 126) */ + /* _mesa_function_pool[9202]: Vertex2d (offset 126) */ "dd\0" "glVertex2d\0" "\0" - /* _mesa_function_pool[8918]: CullParameterdvEXT (dynamic) */ + /* _mesa_function_pool[9217]: CullParameterdvEXT (dynamic) */ "ip\0" "glCullParameterdvEXT\0" "\0" - /* _mesa_function_pool[8943]: ProgramNamedParameter4fNV (will be remapped) */ + /* _mesa_function_pool[9242]: ProgramNamedParameter4fNV (will be remapped) */ "iipffff\0" "glProgramNamedParameter4fNV\0" "\0" - /* _mesa_function_pool[8980]: Color3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[9279]: Color3fVertex3fSUN (dynamic) */ "ffffff\0" "glColor3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[9009]: ProgramEnvParameter4fvARB (will be remapped) */ + /* _mesa_function_pool[9308]: ProgramEnvParameter4fvARB (will be remapped) */ "iip\0" "glProgramEnvParameter4fvARB\0" "glProgramParameter4fvNV\0" "\0" - /* _mesa_function_pool[9066]: Color4i (offset 31) */ + /* _mesa_function_pool[9365]: Color4i (offset 31) */ "iiii\0" "glColor4i\0" "\0" - /* _mesa_function_pool[9082]: Color4f (offset 29) */ + /* _mesa_function_pool[9381]: Color4f (offset 29) */ "ffff\0" "glColor4f\0" "\0" - /* _mesa_function_pool[9098]: RasterPos4fv (offset 81) */ + /* _mesa_function_pool[9397]: RasterPos4fv (offset 81) */ "p\0" "glRasterPos4fv\0" "\0" - /* _mesa_function_pool[9116]: Color4d (offset 27) */ + /* _mesa_function_pool[9415]: Color4d (offset 27) */ "dddd\0" "glColor4d\0" "\0" - /* _mesa_function_pool[9132]: ClearIndex (offset 205) */ + /* _mesa_function_pool[9431]: ClearIndex (offset 205) */ "f\0" "glClearIndex\0" "\0" - /* _mesa_function_pool[9148]: Color4b (offset 25) */ + /* _mesa_function_pool[9447]: Color4b (offset 25) */ "iiii\0" "glColor4b\0" "\0" - /* _mesa_function_pool[9164]: LoadMatrixd (offset 292) */ + /* _mesa_function_pool[9463]: LoadMatrixd (offset 292) */ "p\0" "glLoadMatrixd\0" "\0" - /* _mesa_function_pool[9181]: FragmentLightModeliSGIX (dynamic) */ + /* _mesa_function_pool[9480]: FragmentLightModeliSGIX (dynamic) */ "ii\0" "glFragmentLightModeliSGIX\0" "\0" - /* _mesa_function_pool[9211]: RasterPos2dv (offset 63) */ + /* _mesa_function_pool[9510]: RasterPos2dv (offset 63) */ "p\0" "glRasterPos2dv\0" "\0" - /* _mesa_function_pool[9229]: ConvolutionParameterfv (offset 351) */ + /* _mesa_function_pool[9528]: ConvolutionParameterfv (offset 351) */ "iip\0" "glConvolutionParameterfv\0" "glConvolutionParameterfvEXT\0" "\0" - /* _mesa_function_pool[9287]: TbufferMask3DFX (dynamic) */ + /* _mesa_function_pool[9586]: TbufferMask3DFX (dynamic) */ "i\0" "glTbufferMask3DFX\0" "\0" - /* _mesa_function_pool[9308]: GetTexGendv (offset 278) */ + /* _mesa_function_pool[9607]: GetTexGendv (offset 278) */ "iip\0" "glGetTexGendv\0" "\0" - /* _mesa_function_pool[9327]: GetVertexAttribfvNV (will be remapped) */ + /* _mesa_function_pool[9626]: GetVertexAttribfvNV (will be remapped) */ "iip\0" "glGetVertexAttribfvNV\0" "\0" - /* _mesa_function_pool[9354]: BeginTransformFeedbackEXT (will be remapped) */ + /* _mesa_function_pool[9653]: BeginTransformFeedbackEXT (will be remapped) */ "i\0" "glBeginTransformFeedbackEXT\0" "glBeginTransformFeedback\0" "\0" - /* _mesa_function_pool[9410]: LoadProgramNV (will be remapped) */ + /* _mesa_function_pool[9709]: LoadProgramNV (will be remapped) */ "iiip\0" "glLoadProgramNV\0" "\0" - /* _mesa_function_pool[9432]: WaitSync (will be remapped) */ + /* _mesa_function_pool[9731]: WaitSync (will be remapped) */ "iii\0" "glWaitSync\0" "\0" - /* _mesa_function_pool[9448]: EndList (offset 1) */ + /* _mesa_function_pool[9747]: EndList (offset 1) */ "\0" "glEndList\0" "\0" - /* _mesa_function_pool[9460]: VertexAttrib4fvNV (will be remapped) */ + /* _mesa_function_pool[9759]: VertexAttrib4fvNV (will be remapped) */ "ip\0" "glVertexAttrib4fvNV\0" "\0" - /* _mesa_function_pool[9484]: GetAttachedObjectsARB (will be remapped) */ + /* _mesa_function_pool[9783]: GetAttachedObjectsARB (will be remapped) */ "iipp\0" "glGetAttachedObjectsARB\0" "\0" - /* _mesa_function_pool[9514]: Uniform3fvARB (will be remapped) */ + /* _mesa_function_pool[9813]: Uniform3fvARB (will be remapped) */ "iip\0" "glUniform3fv\0" "glUniform3fvARB\0" "\0" - /* _mesa_function_pool[9548]: EvalCoord1fv (offset 231) */ + /* _mesa_function_pool[9847]: EvalCoord1fv (offset 231) */ "p\0" "glEvalCoord1fv\0" "\0" - /* _mesa_function_pool[9566]: DrawRangeElements (offset 338) */ + /* _mesa_function_pool[9865]: DrawRangeElements (offset 338) */ "iiiiip\0" "glDrawRangeElements\0" "glDrawRangeElementsEXT\0" "\0" - /* _mesa_function_pool[9617]: EvalMesh2 (offset 238) */ + /* _mesa_function_pool[9916]: EvalMesh2 (offset 238) */ "iiiii\0" "glEvalMesh2\0" "\0" - /* _mesa_function_pool[9636]: Vertex4fv (offset 145) */ + /* _mesa_function_pool[9935]: Vertex4fv (offset 145) */ "p\0" "glVertex4fv\0" "\0" - /* _mesa_function_pool[9651]: GenTransformFeedbacks (will be remapped) */ + /* _mesa_function_pool[9950]: GenTransformFeedbacks (will be remapped) */ "ip\0" "glGenTransformFeedbacks\0" "\0" - /* _mesa_function_pool[9679]: SpriteParameterfvSGIX (dynamic) */ + /* _mesa_function_pool[9978]: SpriteParameterfvSGIX (dynamic) */ "ip\0" "glSpriteParameterfvSGIX\0" "\0" - /* _mesa_function_pool[9707]: CheckFramebufferStatusEXT (will be remapped) */ + /* _mesa_function_pool[10006]: CheckFramebufferStatusEXT (will be remapped) */ "i\0" "glCheckFramebufferStatus\0" "glCheckFramebufferStatusEXT\0" "\0" - /* _mesa_function_pool[9763]: GlobalAlphaFactoruiSUN (dynamic) */ + /* _mesa_function_pool[10062]: GlobalAlphaFactoruiSUN (dynamic) */ "i\0" "glGlobalAlphaFactoruiSUN\0" "\0" - /* _mesa_function_pool[9791]: GetHandleARB (will be remapped) */ + /* _mesa_function_pool[10090]: GetHandleARB (will be remapped) */ "i\0" "glGetHandleARB\0" "\0" - /* _mesa_function_pool[9809]: GetVertexAttribivARB (will be remapped) */ + /* _mesa_function_pool[10108]: GetVertexAttribivARB (will be remapped) */ "iip\0" "glGetVertexAttribiv\0" "glGetVertexAttribivARB\0" "\0" - /* _mesa_function_pool[9857]: BlendFunciARB (will be remapped) */ + /* _mesa_function_pool[10156]: BlendFunciARB (will be remapped) */ "iii\0" "glBlendFunciARB\0" + "glBlendFuncIndexedAMD\0" "\0" - /* _mesa_function_pool[9878]: GetCombinerInputParameterfvNV (will be remapped) */ - "iiiip\0" - "glGetCombinerInputParameterfvNV\0" + /* _mesa_function_pool[10199]: GetnUniformivARB (will be remapped) */ + "iiip\0" + "glGetnUniformivARB\0" "\0" - /* _mesa_function_pool[9917]: GetTexParameterIivEXT (will be remapped) */ + /* _mesa_function_pool[10224]: GetTexParameterIivEXT (will be remapped) */ "iip\0" "glGetTexParameterIivEXT\0" "glGetTexParameterIiv\0" "\0" - /* _mesa_function_pool[9967]: CreateProgram (will be remapped) */ + /* _mesa_function_pool[10274]: CreateProgram (will be remapped) */ "\0" "glCreateProgram\0" "\0" - /* _mesa_function_pool[9985]: LoadTransposeMatrixdARB (will be remapped) */ + /* _mesa_function_pool[10292]: LoadTransposeMatrixdARB (will be remapped) */ "p\0" "glLoadTransposeMatrixd\0" "glLoadTransposeMatrixdARB\0" "\0" - /* _mesa_function_pool[10037]: ReleaseShaderCompiler (will be remapped) */ + /* _mesa_function_pool[10344]: ReleaseShaderCompiler (will be remapped) */ "\0" "glReleaseShaderCompiler\0" "\0" - /* _mesa_function_pool[10063]: GetMinmax (offset 364) */ + /* _mesa_function_pool[10370]: GetMinmax (offset 364) */ "iiiip\0" "glGetMinmax\0" "glGetMinmaxEXT\0" "\0" - /* _mesa_function_pool[10097]: StencilFuncSeparate (will be remapped) */ + /* _mesa_function_pool[10404]: StencilFuncSeparate (will be remapped) */ "iiii\0" "glStencilFuncSeparate\0" "\0" - /* _mesa_function_pool[10125]: SecondaryColor3sEXT (will be remapped) */ + /* _mesa_function_pool[10432]: SecondaryColor3sEXT (will be remapped) */ "iii\0" "glSecondaryColor3s\0" "glSecondaryColor3sEXT\0" "\0" - /* _mesa_function_pool[10171]: Color3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[10478]: Color3fVertex3fvSUN (dynamic) */ "pp\0" "glColor3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[10197]: GetInteger64i_v (will be remapped) */ + /* _mesa_function_pool[10504]: GetInteger64i_v (will be remapped) */ "iip\0" "glGetInteger64i_v\0" "\0" - /* _mesa_function_pool[10220]: Normal3fv (offset 57) */ + /* _mesa_function_pool[10527]: GetVertexAttribdvNV (will be remapped) */ + "iip\0" + "glGetVertexAttribdvNV\0" + "\0" + /* _mesa_function_pool[10554]: Normal3fv (offset 57) */ "p\0" "glNormal3fv\0" "\0" - /* _mesa_function_pool[10235]: GlobalAlphaFactorbSUN (dynamic) */ + /* _mesa_function_pool[10569]: GlobalAlphaFactorbSUN (dynamic) */ "i\0" "glGlobalAlphaFactorbSUN\0" "\0" - /* _mesa_function_pool[10262]: Color3us (offset 23) */ + /* _mesa_function_pool[10596]: Color3us (offset 23) */ "iii\0" "glColor3us\0" "\0" - /* _mesa_function_pool[10278]: ImageTransformParameterfvHP (dynamic) */ + /* _mesa_function_pool[10612]: ImageTransformParameterfvHP (dynamic) */ "iip\0" "glImageTransformParameterfvHP\0" "\0" - /* _mesa_function_pool[10313]: VertexAttrib4ivARB (will be remapped) */ + /* _mesa_function_pool[10647]: VertexAttrib4ivARB (will be remapped) */ "ip\0" "glVertexAttrib4iv\0" "glVertexAttrib4ivARB\0" "\0" - /* _mesa_function_pool[10356]: End (offset 43) */ + /* _mesa_function_pool[10690]: End (offset 43) */ "\0" "glEnd\0" "\0" - /* _mesa_function_pool[10364]: VertexAttrib3fNV (will be remapped) */ + /* _mesa_function_pool[10698]: VertexAttrib3fNV (will be remapped) */ "ifff\0" "glVertexAttrib3fNV\0" "\0" - /* _mesa_function_pool[10389]: VertexAttribs2dvNV (will be remapped) */ + /* _mesa_function_pool[10723]: VertexAttribs2dvNV (will be remapped) */ "iip\0" "glVertexAttribs2dvNV\0" "\0" - /* _mesa_function_pool[10415]: GetQueryObjectui64vEXT (will be remapped) */ + /* _mesa_function_pool[10749]: GetQueryObjectui64vEXT (will be remapped) */ "iip\0" "glGetQueryObjectui64vEXT\0" "\0" - /* _mesa_function_pool[10445]: MultiTexCoord3fvARB (offset 395) */ + /* _mesa_function_pool[10779]: MultiTexCoord3fvARB (offset 395) */ "ip\0" "glMultiTexCoord3fv\0" "glMultiTexCoord3fvARB\0" "\0" - /* _mesa_function_pool[10490]: SecondaryColor3dEXT (will be remapped) */ + /* _mesa_function_pool[10824]: SecondaryColor3dEXT (will be remapped) */ "ddd\0" "glSecondaryColor3d\0" "glSecondaryColor3dEXT\0" "\0" - /* _mesa_function_pool[10536]: Color3ub (offset 19) */ + /* _mesa_function_pool[10870]: Color3ub (offset 19) */ "iii\0" "glColor3ub\0" "\0" - /* _mesa_function_pool[10552]: GetProgramParameterfvNV (will be remapped) */ + /* _mesa_function_pool[10886]: GetProgramParameterfvNV (will be remapped) */ "iiip\0" "glGetProgramParameterfvNV\0" "\0" - /* _mesa_function_pool[10584]: TangentPointerEXT (dynamic) */ + /* _mesa_function_pool[10918]: TangentPointerEXT (dynamic) */ "iip\0" "glTangentPointerEXT\0" "\0" - /* _mesa_function_pool[10609]: Color4fNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[10943]: Color4fNormal3fVertex3fvSUN (dynamic) */ "ppp\0" "glColor4fNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[10644]: GetInstrumentsSGIX (dynamic) */ + /* _mesa_function_pool[10978]: GetInstrumentsSGIX (dynamic) */ "\0" "glGetInstrumentsSGIX\0" "\0" - /* _mesa_function_pool[10667]: GetUniformuivEXT (will be remapped) */ + /* _mesa_function_pool[11001]: GetUniformuivEXT (will be remapped) */ "iip\0" "glGetUniformuivEXT\0" "glGetUniformuiv\0" "\0" - /* _mesa_function_pool[10707]: Color3ui (offset 21) */ + /* _mesa_function_pool[11041]: Color3ui (offset 21) */ "iii\0" "glColor3ui\0" "\0" - /* _mesa_function_pool[10723]: EvalMapsNV (dynamic) */ + /* _mesa_function_pool[11057]: EvalMapsNV (dynamic) */ "ii\0" "glEvalMapsNV\0" "\0" - /* _mesa_function_pool[10740]: TexSubImage2D (offset 333) */ + /* _mesa_function_pool[11074]: TexSubImage2D (offset 333) */ "iiiiiiiip\0" "glTexSubImage2D\0" "glTexSubImage2DEXT\0" "\0" - /* _mesa_function_pool[10786]: FragmentLightivSGIX (dynamic) */ + /* _mesa_function_pool[11120]: FragmentLightivSGIX (dynamic) */ "iip\0" "glFragmentLightivSGIX\0" "\0" - /* _mesa_function_pool[10813]: GetTexParameterPointervAPPLE (will be remapped) */ + /* _mesa_function_pool[11147]: GetTexParameterPointervAPPLE (will be remapped) */ "iip\0" "glGetTexParameterPointervAPPLE\0" "\0" - /* _mesa_function_pool[10849]: TexGenfv (offset 191) */ + /* _mesa_function_pool[11183]: TexGenfv (offset 191) */ "iip\0" "glTexGenfv\0" "\0" - /* _mesa_function_pool[10865]: GetTransformFeedbackVaryingEXT (will be remapped) */ + /* _mesa_function_pool[11199]: GetTransformFeedbackVaryingEXT (will be remapped) */ "iiipppp\0" "glGetTransformFeedbackVaryingEXT\0" "glGetTransformFeedbackVarying\0" "\0" - /* _mesa_function_pool[10937]: VertexAttrib4bvARB (will be remapped) */ + /* _mesa_function_pool[11271]: VertexAttrib4bvARB (will be remapped) */ "ip\0" "glVertexAttrib4bv\0" "glVertexAttrib4bvARB\0" "\0" - /* _mesa_function_pool[10980]: ShaderBinary (will be remapped) */ + /* _mesa_function_pool[11314]: ShaderBinary (will be remapped) */ "ipipi\0" "glShaderBinary\0" "\0" - /* _mesa_function_pool[11002]: GetIntegerIndexedvEXT (will be remapped) */ + /* _mesa_function_pool[11336]: GetIntegerIndexedvEXT (will be remapped) */ "iip\0" "glGetIntegerIndexedvEXT\0" "glGetIntegeri_v\0" "\0" - /* _mesa_function_pool[11047]: MultiTexCoord4sARB (offset 406) */ + /* _mesa_function_pool[11381]: MultiTexCoord4sARB (offset 406) */ "iiiii\0" "glMultiTexCoord4s\0" "glMultiTexCoord4sARB\0" "\0" - /* _mesa_function_pool[11093]: GetFragmentMaterialivSGIX (dynamic) */ + /* _mesa_function_pool[11427]: GetFragmentMaterialivSGIX (dynamic) */ "iip\0" "glGetFragmentMaterialivSGIX\0" "\0" - /* _mesa_function_pool[11126]: WindowPos4dMESA (will be remapped) */ + /* _mesa_function_pool[11460]: WindowPos4dMESA (will be remapped) */ "dddd\0" "glWindowPos4dMESA\0" "\0" - /* _mesa_function_pool[11150]: WeightPointerARB (dynamic) */ + /* _mesa_function_pool[11484]: WeightPointerARB (dynamic) */ "iiip\0" "glWeightPointerARB\0" "\0" - /* _mesa_function_pool[11175]: WindowPos2dMESA (will be remapped) */ + /* _mesa_function_pool[11509]: WindowPos2dMESA (will be remapped) */ "dd\0" "glWindowPos2d\0" "glWindowPos2dARB\0" "glWindowPos2dMESA\0" "\0" - /* _mesa_function_pool[11228]: FramebufferTexture3DEXT (will be remapped) */ + /* _mesa_function_pool[11562]: FramebufferTexture3DEXT (will be remapped) */ "iiiiii\0" "glFramebufferTexture3D\0" "glFramebufferTexture3DEXT\0" "\0" - /* _mesa_function_pool[11285]: BlendEquation (offset 337) */ + /* _mesa_function_pool[11619]: BlendEquation (offset 337) */ "i\0" "glBlendEquation\0" "glBlendEquationEXT\0" "\0" - /* _mesa_function_pool[11323]: VertexAttrib3dNV (will be remapped) */ + /* _mesa_function_pool[11657]: VertexAttrib3dNV (will be remapped) */ "iddd\0" "glVertexAttrib3dNV\0" "\0" - /* _mesa_function_pool[11348]: VertexAttrib3dARB (will be remapped) */ + /* _mesa_function_pool[11682]: VertexAttrib3dARB (will be remapped) */ "iddd\0" "glVertexAttrib3d\0" "glVertexAttrib3dARB\0" "\0" - /* _mesa_function_pool[11391]: VertexAttribI4usvEXT (will be remapped) */ + /* _mesa_function_pool[11725]: VertexAttribI4usvEXT (will be remapped) */ "ip\0" "glVertexAttribI4usvEXT\0" "glVertexAttribI4usv\0" "\0" - /* _mesa_function_pool[11438]: ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[11772]: ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN (dynamic) */ "ppppp\0" "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[11502]: VertexAttrib4fARB (will be remapped) */ + /* _mesa_function_pool[11836]: VertexAttrib4fARB (will be remapped) */ "iffff\0" "glVertexAttrib4f\0" "glVertexAttrib4fARB\0" "\0" - /* _mesa_function_pool[11546]: GetError (offset 261) */ + /* _mesa_function_pool[11880]: GetError (offset 261) */ "\0" "glGetError\0" "\0" - /* _mesa_function_pool[11559]: IndexFuncEXT (dynamic) */ + /* _mesa_function_pool[11893]: IndexFuncEXT (dynamic) */ "if\0" "glIndexFuncEXT\0" "\0" - /* _mesa_function_pool[11578]: TexCoord3dv (offset 111) */ + /* _mesa_function_pool[11912]: TexCoord3dv (offset 111) */ "p\0" "glTexCoord3dv\0" "\0" - /* _mesa_function_pool[11595]: Indexdv (offset 45) */ + /* _mesa_function_pool[11929]: Indexdv (offset 45) */ "p\0" "glIndexdv\0" "\0" - /* _mesa_function_pool[11608]: FramebufferTexture2DEXT (will be remapped) */ + /* _mesa_function_pool[11942]: FramebufferTexture2DEXT (will be remapped) */ "iiiii\0" "glFramebufferTexture2D\0" "glFramebufferTexture2DEXT\0" "\0" - /* _mesa_function_pool[11664]: Normal3s (offset 60) */ + /* _mesa_function_pool[11998]: Normal3s (offset 60) */ "iii\0" "glNormal3s\0" "\0" - /* _mesa_function_pool[11680]: GetObjectParameterivAPPLE (will be remapped) */ + /* _mesa_function_pool[12014]: GetObjectParameterivAPPLE (will be remapped) */ "iiip\0" "glGetObjectParameterivAPPLE\0" "\0" - /* _mesa_function_pool[11714]: PushName (offset 201) */ + /* _mesa_function_pool[12048]: PushName (offset 201) */ "i\0" "glPushName\0" "\0" - /* _mesa_function_pool[11728]: MultiTexCoord2dvARB (offset 385) */ + /* _mesa_function_pool[12062]: MultiTexCoord2dvARB (offset 385) */ "ip\0" "glMultiTexCoord2dv\0" "glMultiTexCoord2dvARB\0" "\0" - /* _mesa_function_pool[11773]: CullParameterfvEXT (dynamic) */ + /* _mesa_function_pool[12107]: CullParameterfvEXT (dynamic) */ "ip\0" "glCullParameterfvEXT\0" "\0" - /* _mesa_function_pool[11798]: Normal3i (offset 58) */ + /* _mesa_function_pool[12132]: Normal3i (offset 58) */ "iii\0" "glNormal3i\0" "\0" - /* _mesa_function_pool[11814]: ProgramNamedParameter4fvNV (will be remapped) */ + /* _mesa_function_pool[12148]: ProgramNamedParameter4fvNV (will be remapped) */ "iipp\0" "glProgramNamedParameter4fvNV\0" "\0" - /* _mesa_function_pool[11849]: SecondaryColorPointerEXT (will be remapped) */ + /* _mesa_function_pool[12183]: SecondaryColorPointerEXT (will be remapped) */ "iiip\0" "glSecondaryColorPointer\0" "glSecondaryColorPointerEXT\0" "\0" - /* _mesa_function_pool[11906]: VertexAttrib4fvARB (will be remapped) */ + /* _mesa_function_pool[12240]: VertexAttrib4fvARB (will be remapped) */ "ip\0" "glVertexAttrib4fv\0" "glVertexAttrib4fvARB\0" "\0" - /* _mesa_function_pool[11949]: PixelTexGenSGIX (will be remapped) */ + /* _mesa_function_pool[12283]: PixelTexGenSGIX (will be remapped) */ "i\0" "glPixelTexGenSGIX\0" "\0" - /* _mesa_function_pool[11970]: GetActiveUniformARB (will be remapped) */ + /* _mesa_function_pool[12304]: GetActiveUniformARB (will be remapped) */ "iiipppp\0" "glGetActiveUniform\0" "glGetActiveUniformARB\0" "\0" - /* _mesa_function_pool[12020]: ImageTransformParameteriHP (dynamic) */ + /* _mesa_function_pool[12354]: ImageTransformParameteriHP (dynamic) */ "iii\0" "glImageTransformParameteriHP\0" "\0" - /* _mesa_function_pool[12054]: Normal3b (offset 52) */ + /* _mesa_function_pool[12388]: Normal3b (offset 52) */ "iii\0" "glNormal3b\0" "\0" - /* _mesa_function_pool[12070]: Normal3d (offset 54) */ + /* _mesa_function_pool[12404]: Normal3d (offset 54) */ "ddd\0" "glNormal3d\0" "\0" - /* _mesa_function_pool[12086]: Uniform1uiEXT (will be remapped) */ + /* _mesa_function_pool[12420]: Uniform1uiEXT (will be remapped) */ "ii\0" "glUniform1uiEXT\0" "glUniform1ui\0" "\0" - /* _mesa_function_pool[12119]: Normal3f (offset 56) */ + /* _mesa_function_pool[12453]: Normal3f (offset 56) */ "fff\0" "glNormal3f\0" "\0" - /* _mesa_function_pool[12135]: MultiTexCoord1svARB (offset 383) */ + /* _mesa_function_pool[12469]: MultiTexCoord1svARB (offset 383) */ "ip\0" "glMultiTexCoord1sv\0" "glMultiTexCoord1svARB\0" "\0" - /* _mesa_function_pool[12180]: Indexi (offset 48) */ + /* _mesa_function_pool[12514]: Indexi (offset 48) */ "i\0" "glIndexi\0" "\0" - /* _mesa_function_pool[12192]: EGLImageTargetTexture2DOES (will be remapped) */ + /* _mesa_function_pool[12526]: EGLImageTargetTexture2DOES (will be remapped) */ "ip\0" "glEGLImageTargetTexture2DOES\0" "\0" - /* _mesa_function_pool[12225]: EndQueryARB (will be remapped) */ + /* _mesa_function_pool[12559]: EndQueryARB (will be remapped) */ "i\0" "glEndQuery\0" "glEndQueryARB\0" "\0" - /* _mesa_function_pool[12253]: DeleteFencesNV (will be remapped) */ + /* _mesa_function_pool[12587]: DeleteFencesNV (will be remapped) */ "ip\0" "glDeleteFencesNV\0" "\0" - /* _mesa_function_pool[12274]: ColorPointerListIBM (dynamic) */ + /* _mesa_function_pool[12608]: ColorPointerListIBM (dynamic) */ "iiipi\0" "glColorPointerListIBM\0" "\0" - /* _mesa_function_pool[12303]: BindBufferRangeEXT (will be remapped) */ + /* _mesa_function_pool[12637]: BindBufferRangeEXT (will be remapped) */ "iiiii\0" "glBindBufferRangeEXT\0" "glBindBufferRange\0" "\0" - /* _mesa_function_pool[12349]: DepthMask (offset 211) */ + /* _mesa_function_pool[12683]: DepthMask (offset 211) */ "i\0" "glDepthMask\0" "\0" - /* _mesa_function_pool[12364]: IsShader (will be remapped) */ + /* _mesa_function_pool[12698]: IsShader (will be remapped) */ "i\0" "glIsShader\0" "\0" - /* _mesa_function_pool[12378]: Indexf (offset 46) */ + /* _mesa_function_pool[12712]: Indexf (offset 46) */ "f\0" "glIndexf\0" "\0" - /* _mesa_function_pool[12390]: GetImageTransformParameterivHP (dynamic) */ + /* _mesa_function_pool[12724]: GetImageTransformParameterivHP (dynamic) */ "iip\0" "glGetImageTransformParameterivHP\0" "\0" - /* _mesa_function_pool[12428]: Indexd (offset 44) */ + /* _mesa_function_pool[12762]: Indexd (offset 44) */ "d\0" "glIndexd\0" "\0" - /* _mesa_function_pool[12440]: GetMaterialiv (offset 270) */ + /* _mesa_function_pool[12774]: GetMaterialiv (offset 270) */ "iip\0" "glGetMaterialiv\0" "\0" - /* _mesa_function_pool[12461]: StencilOp (offset 244) */ + /* _mesa_function_pool[12795]: StencilOp (offset 244) */ "iii\0" "glStencilOp\0" "\0" - /* _mesa_function_pool[12478]: WindowPos4ivMESA (will be remapped) */ + /* _mesa_function_pool[12812]: WindowPos4ivMESA (will be remapped) */ "p\0" "glWindowPos4ivMESA\0" "\0" - /* _mesa_function_pool[12500]: FramebufferTextureLayer (dynamic) */ + /* _mesa_function_pool[12834]: FramebufferTextureLayer (dynamic) */ "iiiii\0" "glFramebufferTextureLayerARB\0" "\0" - /* _mesa_function_pool[12536]: MultiTexCoord3svARB (offset 399) */ + /* _mesa_function_pool[12870]: MultiTexCoord3svARB (offset 399) */ "ip\0" "glMultiTexCoord3sv\0" "glMultiTexCoord3svARB\0" "\0" - /* _mesa_function_pool[12581]: TexEnvfv (offset 185) */ + /* _mesa_function_pool[12915]: TexEnvfv (offset 185) */ "iip\0" "glTexEnvfv\0" "\0" - /* _mesa_function_pool[12597]: MultiTexCoord4iARB (offset 404) */ + /* _mesa_function_pool[12931]: MultiTexCoord4iARB (offset 404) */ "iiiii\0" "glMultiTexCoord4i\0" "glMultiTexCoord4iARB\0" "\0" - /* _mesa_function_pool[12643]: Indexs (offset 50) */ + /* _mesa_function_pool[12977]: Indexs (offset 50) */ "i\0" "glIndexs\0" "\0" - /* _mesa_function_pool[12655]: Binormal3ivEXT (dynamic) */ + /* _mesa_function_pool[12989]: Binormal3ivEXT (dynamic) */ "p\0" "glBinormal3ivEXT\0" "\0" - /* _mesa_function_pool[12675]: ResizeBuffersMESA (will be remapped) */ + /* _mesa_function_pool[13009]: ResizeBuffersMESA (will be remapped) */ "\0" "glResizeBuffersMESA\0" "\0" - /* _mesa_function_pool[12697]: BlendFuncSeparateiARB (will be remapped) */ + /* _mesa_function_pool[13031]: BlendFuncSeparateiARB (will be remapped) */ "iiiii\0" "glBlendFuncSeparateiARB\0" + "glBlendFuncSeparateIndexedAMD\0" "\0" - /* _mesa_function_pool[12728]: GetUniformivARB (will be remapped) */ + /* _mesa_function_pool[13092]: GetUniformivARB (will be remapped) */ "iip\0" "glGetUniformiv\0" "glGetUniformivARB\0" "\0" - /* _mesa_function_pool[12766]: PixelTexGenParameteriSGIS (will be remapped) */ + /* _mesa_function_pool[13130]: PixelTexGenParameteriSGIS (will be remapped) */ "ii\0" "glPixelTexGenParameteriSGIS\0" "\0" - /* _mesa_function_pool[12798]: VertexPointervINTEL (dynamic) */ + /* _mesa_function_pool[13162]: VertexPointervINTEL (dynamic) */ "iip\0" "glVertexPointervINTEL\0" "\0" - /* _mesa_function_pool[12825]: Vertex2i (offset 130) */ + /* _mesa_function_pool[13189]: Vertex2i (offset 130) */ "ii\0" "glVertex2i\0" "\0" - /* _mesa_function_pool[12840]: LoadMatrixf (offset 291) */ + /* _mesa_function_pool[13204]: LoadMatrixf (offset 291) */ "p\0" "glLoadMatrixf\0" "\0" - /* _mesa_function_pool[12857]: VertexAttribI1uivEXT (will be remapped) */ + /* _mesa_function_pool[13221]: VertexAttribI1uivEXT (will be remapped) */ "ip\0" "glVertexAttribI1uivEXT\0" "glVertexAttribI1uiv\0" "\0" - /* _mesa_function_pool[12904]: Vertex2f (offset 128) */ + /* _mesa_function_pool[13268]: Vertex2f (offset 128) */ "ff\0" "glVertex2f\0" "\0" - /* _mesa_function_pool[12919]: ReplacementCodeuiColor4fNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[13283]: ReplacementCodeuiColor4fNormal3fVertex3fvSUN (dynamic) */ "pppp\0" "glReplacementCodeuiColor4fNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[12972]: Color4bv (offset 26) */ + /* _mesa_function_pool[13336]: Color4bv (offset 26) */ "p\0" "glColor4bv\0" "\0" - /* _mesa_function_pool[12986]: VertexPointer (offset 321) */ + /* _mesa_function_pool[13350]: VertexPointer (offset 321) */ "iiip\0" "glVertexPointer\0" "\0" - /* _mesa_function_pool[13008]: SecondaryColor3uiEXT (will be remapped) */ + /* _mesa_function_pool[13372]: SecondaryColor3uiEXT (will be remapped) */ "iii\0" "glSecondaryColor3ui\0" "glSecondaryColor3uiEXT\0" "\0" - /* _mesa_function_pool[13056]: StartInstrumentsSGIX (dynamic) */ + /* _mesa_function_pool[13420]: StartInstrumentsSGIX (dynamic) */ "\0" "glStartInstrumentsSGIX\0" "\0" - /* _mesa_function_pool[13081]: SecondaryColor3usvEXT (will be remapped) */ + /* _mesa_function_pool[13445]: SecondaryColor3usvEXT (will be remapped) */ "p\0" "glSecondaryColor3usv\0" "glSecondaryColor3usvEXT\0" "\0" - /* _mesa_function_pool[13129]: VertexAttrib2fvNV (will be remapped) */ + /* _mesa_function_pool[13493]: VertexAttrib2fvNV (will be remapped) */ "ip\0" "glVertexAttrib2fvNV\0" "\0" - /* _mesa_function_pool[13153]: ProgramLocalParameter4dvARB (will be remapped) */ + /* _mesa_function_pool[13517]: ProgramLocalParameter4dvARB (will be remapped) */ "iip\0" "glProgramLocalParameter4dvARB\0" "\0" - /* _mesa_function_pool[13188]: DeleteLists (offset 4) */ + /* _mesa_function_pool[13552]: DeleteLists (offset 4) */ "ii\0" "glDeleteLists\0" "\0" - /* _mesa_function_pool[13206]: LogicOp (offset 242) */ + /* _mesa_function_pool[13570]: LogicOp (offset 242) */ "i\0" "glLogicOp\0" "\0" - /* _mesa_function_pool[13219]: MatrixIndexuivARB (dynamic) */ + /* _mesa_function_pool[13583]: MatrixIndexuivARB (dynamic) */ "ip\0" "glMatrixIndexuivARB\0" "\0" - /* _mesa_function_pool[13243]: Vertex2s (offset 132) */ + /* _mesa_function_pool[13607]: Vertex2s (offset 132) */ "ii\0" "glVertex2s\0" "\0" - /* _mesa_function_pool[13258]: RenderbufferStorageMultisample (will be remapped) */ + /* _mesa_function_pool[13622]: RenderbufferStorageMultisample (will be remapped) */ "iiiii\0" "glRenderbufferStorageMultisample\0" "glRenderbufferStorageMultisampleEXT\0" "\0" - /* _mesa_function_pool[13334]: TexCoord4fv (offset 121) */ + /* _mesa_function_pool[13698]: TexCoord4fv (offset 121) */ "p\0" "glTexCoord4fv\0" "\0" - /* _mesa_function_pool[13351]: Tangent3sEXT (dynamic) */ + /* _mesa_function_pool[13715]: Tangent3sEXT (dynamic) */ "iii\0" "glTangent3sEXT\0" "\0" - /* _mesa_function_pool[13371]: GlobalAlphaFactorfSUN (dynamic) */ + /* _mesa_function_pool[13735]: GlobalAlphaFactorfSUN (dynamic) */ "f\0" "glGlobalAlphaFactorfSUN\0" "\0" - /* _mesa_function_pool[13398]: MultiTexCoord3iARB (offset 396) */ + /* _mesa_function_pool[13762]: MultiTexCoord3iARB (offset 396) */ "iiii\0" "glMultiTexCoord3i\0" "glMultiTexCoord3iARB\0" "\0" - /* _mesa_function_pool[13443]: IsProgram (will be remapped) */ + /* _mesa_function_pool[13807]: IsProgram (will be remapped) */ "i\0" "glIsProgram\0" "\0" - /* _mesa_function_pool[13458]: TexCoordPointerListIBM (dynamic) */ + /* _mesa_function_pool[13822]: TexCoordPointerListIBM (dynamic) */ "iiipi\0" "glTexCoordPointerListIBM\0" "\0" - /* _mesa_function_pool[13490]: VertexAttribI4svEXT (will be remapped) */ + /* _mesa_function_pool[13854]: VertexAttribI4svEXT (will be remapped) */ "ip\0" "glVertexAttribI4svEXT\0" "glVertexAttribI4sv\0" "\0" - /* _mesa_function_pool[13535]: GlobalAlphaFactorusSUN (dynamic) */ + /* _mesa_function_pool[13899]: GlobalAlphaFactorusSUN (dynamic) */ "i\0" "glGlobalAlphaFactorusSUN\0" "\0" - /* _mesa_function_pool[13563]: VertexAttrib2dvNV (will be remapped) */ + /* _mesa_function_pool[13927]: VertexAttrib2dvNV (will be remapped) */ "ip\0" "glVertexAttrib2dvNV\0" "\0" - /* _mesa_function_pool[13587]: FramebufferRenderbufferEXT (will be remapped) */ + /* _mesa_function_pool[13951]: FramebufferRenderbufferEXT (will be remapped) */ "iiii\0" "glFramebufferRenderbuffer\0" "glFramebufferRenderbufferEXT\0" "\0" - /* _mesa_function_pool[13648]: ClearBufferuiv (will be remapped) */ + /* _mesa_function_pool[14012]: ClearBufferuiv (will be remapped) */ "iip\0" "glClearBufferuiv\0" "\0" - /* _mesa_function_pool[13670]: VertexAttrib1dvNV (will be remapped) */ + /* _mesa_function_pool[14034]: VertexAttrib1dvNV (will be remapped) */ "ip\0" "glVertexAttrib1dvNV\0" "\0" - /* _mesa_function_pool[13694]: GenTextures (offset 328) */ + /* _mesa_function_pool[14058]: GenTextures (offset 328) */ "ip\0" "glGenTextures\0" "glGenTexturesEXT\0" "\0" - /* _mesa_function_pool[13729]: FramebufferTextureARB (will be remapped) */ + /* _mesa_function_pool[14093]: FramebufferTextureARB (will be remapped) */ "iiii\0" "glFramebufferTextureARB\0" "\0" - /* _mesa_function_pool[13759]: SetFenceNV (will be remapped) */ + /* _mesa_function_pool[14123]: SetFenceNV (will be remapped) */ "ii\0" "glSetFenceNV\0" "\0" - /* _mesa_function_pool[13776]: FramebufferTexture1DEXT (will be remapped) */ + /* _mesa_function_pool[14140]: FramebufferTexture1DEXT (will be remapped) */ "iiiii\0" "glFramebufferTexture1D\0" "glFramebufferTexture1DEXT\0" "\0" - /* _mesa_function_pool[13832]: GetCombinerOutputParameterivNV (will be remapped) */ + /* _mesa_function_pool[14196]: GetCombinerOutputParameterivNV (will be remapped) */ "iiip\0" "glGetCombinerOutputParameterivNV\0" "\0" - /* _mesa_function_pool[13871]: MultiModeDrawArraysIBM (will be remapped) */ - "pppii\0" - "glMultiModeDrawArraysIBM\0" - "\0" - /* _mesa_function_pool[13903]: PixelTexGenParameterivSGIS (will be remapped) */ + /* _mesa_function_pool[14235]: PixelTexGenParameterivSGIS (will be remapped) */ "ip\0" "glPixelTexGenParameterivSGIS\0" "\0" - /* _mesa_function_pool[13936]: TextureNormalEXT (dynamic) */ + /* _mesa_function_pool[14268]: TextureNormalEXT (dynamic) */ "i\0" "glTextureNormalEXT\0" "\0" - /* _mesa_function_pool[13958]: IndexPointerListIBM (dynamic) */ + /* _mesa_function_pool[14290]: IndexPointerListIBM (dynamic) */ "iipi\0" "glIndexPointerListIBM\0" "\0" - /* _mesa_function_pool[13986]: WeightfvARB (dynamic) */ + /* _mesa_function_pool[14318]: WeightfvARB (dynamic) */ "ip\0" "glWeightfvARB\0" "\0" - /* _mesa_function_pool[14004]: GetCombinerOutputParameterfvNV (will be remapped) */ - "iiip\0" - "glGetCombinerOutputParameterfvNV\0" - "\0" - /* _mesa_function_pool[14043]: RasterPos2sv (offset 69) */ + /* _mesa_function_pool[14336]: RasterPos2sv (offset 69) */ "p\0" "glRasterPos2sv\0" "\0" - /* _mesa_function_pool[14061]: Color4ubv (offset 36) */ + /* _mesa_function_pool[14354]: Color4ubv (offset 36) */ "p\0" "glColor4ubv\0" "\0" - /* _mesa_function_pool[14076]: DrawBuffer (offset 202) */ + /* _mesa_function_pool[14369]: DrawBuffer (offset 202) */ "i\0" "glDrawBuffer\0" "\0" - /* _mesa_function_pool[14092]: TexCoord2fv (offset 105) */ + /* _mesa_function_pool[14385]: TexCoord2fv (offset 105) */ "p\0" "glTexCoord2fv\0" "\0" - /* _mesa_function_pool[14109]: WindowPos4fMESA (will be remapped) */ + /* _mesa_function_pool[14402]: WindowPos4fMESA (will be remapped) */ "ffff\0" "glWindowPos4fMESA\0" "\0" - /* _mesa_function_pool[14133]: TexCoord1sv (offset 101) */ + /* _mesa_function_pool[14426]: TexCoord1sv (offset 101) */ "p\0" "glTexCoord1sv\0" "\0" - /* _mesa_function_pool[14150]: WindowPos3dvMESA (will be remapped) */ + /* _mesa_function_pool[14443]: WindowPos3dvMESA (will be remapped) */ "p\0" "glWindowPos3dv\0" "glWindowPos3dvARB\0" "glWindowPos3dvMESA\0" "\0" - /* _mesa_function_pool[14205]: DepthFunc (offset 245) */ + /* _mesa_function_pool[14498]: DepthFunc (offset 245) */ "i\0" "glDepthFunc\0" "\0" - /* _mesa_function_pool[14220]: PixelMapusv (offset 253) */ + /* _mesa_function_pool[14513]: PixelMapusv (offset 253) */ "iip\0" "glPixelMapusv\0" "\0" - /* _mesa_function_pool[14239]: GetQueryObjecti64vEXT (will be remapped) */ + /* _mesa_function_pool[14532]: GetQueryObjecti64vEXT (will be remapped) */ "iip\0" "glGetQueryObjecti64vEXT\0" "\0" - /* _mesa_function_pool[14268]: MultiTexCoord1dARB (offset 376) */ + /* _mesa_function_pool[14561]: MultiTexCoord1dARB (offset 376) */ "id\0" "glMultiTexCoord1d\0" "glMultiTexCoord1dARB\0" "\0" - /* _mesa_function_pool[14311]: PointParameterivNV (will be remapped) */ + /* _mesa_function_pool[14604]: PointParameterivNV (will be remapped) */ "ip\0" "glPointParameteriv\0" "glPointParameterivNV\0" "\0" - /* _mesa_function_pool[14355]: IsSampler (will be remapped) */ + /* _mesa_function_pool[14648]: IsSampler (will be remapped) */ "i\0" "glIsSampler\0" "\0" - /* _mesa_function_pool[14370]: BlendFunc (offset 241) */ + /* _mesa_function_pool[14663]: BlendFunc (offset 241) */ "ii\0" "glBlendFunc\0" "\0" - /* _mesa_function_pool[14386]: EndTransformFeedbackEXT (will be remapped) */ + /* _mesa_function_pool[14679]: EndTransformFeedbackEXT (will be remapped) */ "\0" "glEndTransformFeedbackEXT\0" "glEndTransformFeedback\0" "\0" - /* _mesa_function_pool[14437]: Uniform2fvARB (will be remapped) */ + /* _mesa_function_pool[14730]: Uniform2fvARB (will be remapped) */ "iip\0" "glUniform2fv\0" "glUniform2fvARB\0" "\0" - /* _mesa_function_pool[14471]: BufferParameteriAPPLE (will be remapped) */ + /* _mesa_function_pool[14764]: BufferParameteriAPPLE (will be remapped) */ "iii\0" "glBufferParameteriAPPLE\0" "\0" - /* _mesa_function_pool[14500]: MultiTexCoord3dvARB (offset 393) */ + /* _mesa_function_pool[14793]: MultiTexCoord3dvARB (offset 393) */ "ip\0" "glMultiTexCoord3dv\0" "glMultiTexCoord3dvARB\0" "\0" - /* _mesa_function_pool[14545]: ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[14838]: ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN (dynamic) */ "pppp\0" "glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[14601]: DeleteObjectARB (will be remapped) */ + /* _mesa_function_pool[14894]: DeleteObjectARB (will be remapped) */ "i\0" "glDeleteObjectARB\0" "\0" - /* _mesa_function_pool[14622]: GetShaderPrecisionFormat (will be remapped) */ + /* _mesa_function_pool[14915]: GetShaderPrecisionFormat (will be remapped) */ "iipp\0" "glGetShaderPrecisionFormat\0" "\0" - /* _mesa_function_pool[14655]: MatrixIndexPointerARB (dynamic) */ + /* _mesa_function_pool[14948]: MatrixIndexPointerARB (dynamic) */ "iiip\0" "glMatrixIndexPointerARB\0" "\0" - /* _mesa_function_pool[14685]: ProgramNamedParameter4dvNV (will be remapped) */ + /* _mesa_function_pool[14978]: ProgramNamedParameter4dvNV (will be remapped) */ "iipp\0" "glProgramNamedParameter4dvNV\0" "\0" - /* _mesa_function_pool[14720]: Tangent3fvEXT (dynamic) */ + /* _mesa_function_pool[15013]: Tangent3fvEXT (dynamic) */ "p\0" "glTangent3fvEXT\0" "\0" - /* _mesa_function_pool[14739]: Flush (offset 217) */ + /* _mesa_function_pool[15032]: Flush (offset 217) */ "\0" "glFlush\0" "\0" - /* _mesa_function_pool[14749]: Color4uiv (offset 38) */ + /* _mesa_function_pool[15042]: Color4uiv (offset 38) */ "p\0" "glColor4uiv\0" "\0" - /* _mesa_function_pool[14764]: VertexAttribI4iEXT (will be remapped) */ + /* _mesa_function_pool[15057]: VertexAttribI4iEXT (will be remapped) */ "iiiii\0" "glVertexAttribI4iEXT\0" "glVertexAttribI4i\0" "\0" - /* _mesa_function_pool[14810]: GenVertexArrays (will be remapped) */ + /* _mesa_function_pool[15103]: GenVertexArrays (will be remapped) */ "ip\0" "glGenVertexArrays\0" "\0" - /* _mesa_function_pool[14832]: Uniform3uivEXT (will be remapped) */ + /* _mesa_function_pool[15125]: Uniform3uivEXT (will be remapped) */ "iip\0" "glUniform3uivEXT\0" "glUniform3uiv\0" "\0" - /* _mesa_function_pool[14868]: RasterPos3sv (offset 77) */ + /* _mesa_function_pool[15161]: RasterPos3sv (offset 77) */ "p\0" "glRasterPos3sv\0" "\0" - /* _mesa_function_pool[14886]: BindFramebufferEXT (will be remapped) */ + /* _mesa_function_pool[15179]: BindFramebufferEXT (will be remapped) */ "ii\0" "glBindFramebuffer\0" "glBindFramebufferEXT\0" "\0" - /* _mesa_function_pool[14929]: ReferencePlaneSGIX (dynamic) */ + /* _mesa_function_pool[15222]: ReferencePlaneSGIX (dynamic) */ "p\0" "glReferencePlaneSGIX\0" "\0" - /* _mesa_function_pool[14953]: PushAttrib (offset 219) */ + /* _mesa_function_pool[15246]: PushAttrib (offset 219) */ "i\0" "glPushAttrib\0" "\0" - /* _mesa_function_pool[14969]: RasterPos2i (offset 66) */ + /* _mesa_function_pool[15262]: RasterPos2i (offset 66) */ "ii\0" "glRasterPos2i\0" "\0" - /* _mesa_function_pool[14987]: ValidateProgramARB (will be remapped) */ + /* _mesa_function_pool[15280]: ValidateProgramARB (will be remapped) */ "i\0" "glValidateProgram\0" "glValidateProgramARB\0" "\0" - /* _mesa_function_pool[15029]: TexParameteriv (offset 181) */ + /* _mesa_function_pool[15322]: TexParameteriv (offset 181) */ "iip\0" "glTexParameteriv\0" "\0" - /* _mesa_function_pool[15051]: UnlockArraysEXT (will be remapped) */ + /* _mesa_function_pool[15344]: UnlockArraysEXT (will be remapped) */ "\0" "glUnlockArraysEXT\0" "\0" - /* _mesa_function_pool[15071]: TexCoord2fColor3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[15364]: TexCoord2fColor3fVertex3fSUN (dynamic) */ "ffffffff\0" "glTexCoord2fColor3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[15112]: WindowPos3fvMESA (will be remapped) */ + /* _mesa_function_pool[15405]: WindowPos3fvMESA (will be remapped) */ "p\0" "glWindowPos3fv\0" "glWindowPos3fvARB\0" "glWindowPos3fvMESA\0" "\0" - /* _mesa_function_pool[15167]: RasterPos2f (offset 64) */ + /* _mesa_function_pool[15460]: RasterPos2f (offset 64) */ "ff\0" "glRasterPos2f\0" "\0" - /* _mesa_function_pool[15185]: VertexAttrib1svNV (will be remapped) */ + /* _mesa_function_pool[15478]: VertexAttrib1svNV (will be remapped) */ "ip\0" "glVertexAttrib1svNV\0" "\0" - /* _mesa_function_pool[15209]: RasterPos2d (offset 62) */ + /* _mesa_function_pool[15502]: RasterPos2d (offset 62) */ "dd\0" "glRasterPos2d\0" "\0" - /* _mesa_function_pool[15227]: RasterPos3fv (offset 73) */ + /* _mesa_function_pool[15520]: RasterPos3fv (offset 73) */ "p\0" "glRasterPos3fv\0" "\0" - /* _mesa_function_pool[15245]: CopyTexSubImage3D (offset 373) */ + /* _mesa_function_pool[15538]: CopyTexSubImage3D (offset 373) */ "iiiiiiiii\0" "glCopyTexSubImage3D\0" "glCopyTexSubImage3DEXT\0" "\0" - /* _mesa_function_pool[15299]: VertexAttrib2dARB (will be remapped) */ + /* _mesa_function_pool[15592]: VertexAttrib2dARB (will be remapped) */ "idd\0" "glVertexAttrib2d\0" "glVertexAttrib2dARB\0" "\0" - /* _mesa_function_pool[15341]: Color4ub (offset 35) */ + /* _mesa_function_pool[15634]: Color4ub (offset 35) */ "iiii\0" "glColor4ub\0" "\0" - /* _mesa_function_pool[15358]: GetInteger64v (will be remapped) */ + /* _mesa_function_pool[15651]: GetInteger64v (will be remapped) */ "ip\0" "glGetInteger64v\0" "\0" - /* _mesa_function_pool[15378]: TextureColorMaskSGIS (dynamic) */ + /* _mesa_function_pool[15671]: TextureColorMaskSGIS (dynamic) */ "iiii\0" "glTextureColorMaskSGIS\0" "\0" - /* _mesa_function_pool[15407]: RasterPos2s (offset 68) */ + /* _mesa_function_pool[15700]: RasterPos2s (offset 68) */ "ii\0" "glRasterPos2s\0" "\0" - /* _mesa_function_pool[15425]: GetColorTable (offset 343) */ + /* _mesa_function_pool[15718]: GetColorTable (offset 343) */ "iiip\0" "glGetColorTable\0" "glGetColorTableSGI\0" "glGetColorTableEXT\0" "\0" - /* _mesa_function_pool[15485]: SelectBuffer (offset 195) */ + /* _mesa_function_pool[15778]: SelectBuffer (offset 195) */ "ip\0" "glSelectBuffer\0" "\0" - /* _mesa_function_pool[15504]: Indexiv (offset 49) */ + /* _mesa_function_pool[15797]: Indexiv (offset 49) */ "p\0" "glIndexiv\0" "\0" - /* _mesa_function_pool[15517]: TexCoord3i (offset 114) */ + /* _mesa_function_pool[15810]: TexCoord3i (offset 114) */ "iii\0" "glTexCoord3i\0" "\0" - /* _mesa_function_pool[15535]: CopyColorTable (offset 342) */ + /* _mesa_function_pool[15828]: CopyColorTable (offset 342) */ "iiiii\0" "glCopyColorTable\0" "glCopyColorTableSGI\0" "\0" - /* _mesa_function_pool[15579]: GetHistogramParameterfv (offset 362) */ + /* _mesa_function_pool[15872]: GetHistogramParameterfv (offset 362) */ "iip\0" "glGetHistogramParameterfv\0" "glGetHistogramParameterfvEXT\0" "\0" - /* _mesa_function_pool[15639]: Frustum (offset 289) */ + /* _mesa_function_pool[15932]: Frustum (offset 289) */ "dddddd\0" "glFrustum\0" "\0" - /* _mesa_function_pool[15657]: GetString (offset 275) */ + /* _mesa_function_pool[15950]: GetString (offset 275) */ "i\0" "glGetString\0" "\0" - /* _mesa_function_pool[15672]: ColorPointervINTEL (dynamic) */ + /* _mesa_function_pool[15965]: ColorPointervINTEL (dynamic) */ "iip\0" "glColorPointervINTEL\0" "\0" - /* _mesa_function_pool[15698]: TexEnvf (offset 184) */ + /* _mesa_function_pool[15991]: TexEnvf (offset 184) */ "iif\0" "glTexEnvf\0" "\0" - /* _mesa_function_pool[15713]: TexCoord3d (offset 110) */ + /* _mesa_function_pool[16006]: TexCoord3d (offset 110) */ "ddd\0" "glTexCoord3d\0" "\0" - /* _mesa_function_pool[15731]: AlphaFragmentOp1ATI (will be remapped) */ + /* _mesa_function_pool[16024]: AlphaFragmentOp1ATI (will be remapped) */ "iiiiii\0" "glAlphaFragmentOp1ATI\0" "\0" - /* _mesa_function_pool[15761]: TexCoord3f (offset 112) */ + /* _mesa_function_pool[16054]: TexCoord3f (offset 112) */ "fff\0" "glTexCoord3f\0" "\0" - /* _mesa_function_pool[15779]: MultiTexCoord3ivARB (offset 397) */ + /* _mesa_function_pool[16072]: MultiTexCoord3ivARB (offset 397) */ "ip\0" "glMultiTexCoord3iv\0" "glMultiTexCoord3ivARB\0" "\0" - /* _mesa_function_pool[15824]: MultiTexCoord2sARB (offset 390) */ + /* _mesa_function_pool[16117]: MultiTexCoord2sARB (offset 390) */ "iii\0" "glMultiTexCoord2s\0" "glMultiTexCoord2sARB\0" "\0" - /* _mesa_function_pool[15868]: VertexAttrib1dvARB (will be remapped) */ + /* _mesa_function_pool[16161]: VertexAttrib1dvARB (will be remapped) */ "ip\0" "glVertexAttrib1dv\0" "glVertexAttrib1dvARB\0" "\0" - /* _mesa_function_pool[15911]: DeleteTextures (offset 327) */ + /* _mesa_function_pool[16204]: GetnHistogramARB (will be remapped) */ + "iiiiip\0" + "glGetnHistogramARB\0" + "\0" + /* _mesa_function_pool[16231]: DeleteTextures (offset 327) */ "ip\0" "glDeleteTextures\0" "glDeleteTexturesEXT\0" "\0" - /* _mesa_function_pool[15952]: TexCoordPointerEXT (will be remapped) */ + /* _mesa_function_pool[16272]: TexCoordPointerEXT (will be remapped) */ "iiiip\0" "glTexCoordPointerEXT\0" "\0" - /* _mesa_function_pool[15980]: TexSubImage4DSGIS (dynamic) */ + /* _mesa_function_pool[16300]: TexSubImage4DSGIS (dynamic) */ "iiiiiiiiiiiip\0" "glTexSubImage4DSGIS\0" "\0" - /* _mesa_function_pool[16015]: TexCoord3s (offset 116) */ + /* _mesa_function_pool[16335]: TexCoord3s (offset 116) */ "iii\0" "glTexCoord3s\0" "\0" - /* _mesa_function_pool[16033]: GetTexLevelParameteriv (offset 285) */ + /* _mesa_function_pool[16353]: GetTexLevelParameteriv (offset 285) */ "iiip\0" "glGetTexLevelParameteriv\0" "\0" - /* _mesa_function_pool[16064]: CombinerStageParameterfvNV (dynamic) */ + /* _mesa_function_pool[16384]: CombinerStageParameterfvNV (dynamic) */ "iip\0" "glCombinerStageParameterfvNV\0" "\0" - /* _mesa_function_pool[16098]: StopInstrumentsSGIX (dynamic) */ + /* _mesa_function_pool[16418]: StopInstrumentsSGIX (dynamic) */ "i\0" "glStopInstrumentsSGIX\0" "\0" - /* _mesa_function_pool[16123]: TexCoord4fColor4fNormal3fVertex4fSUN (dynamic) */ + /* _mesa_function_pool[16443]: TexCoord4fColor4fNormal3fVertex4fSUN (dynamic) */ "fffffffffffffff\0" "glTexCoord4fColor4fNormal3fVertex4fSUN\0" "\0" - /* _mesa_function_pool[16179]: ClearAccum (offset 204) */ + /* _mesa_function_pool[16499]: ClearAccum (offset 204) */ "ffff\0" "glClearAccum\0" "\0" - /* _mesa_function_pool[16198]: DeformSGIX (dynamic) */ + /* _mesa_function_pool[16518]: DeformSGIX (dynamic) */ "i\0" "glDeformSGIX\0" "\0" - /* _mesa_function_pool[16214]: GetVertexAttribfvARB (will be remapped) */ + /* _mesa_function_pool[16534]: GetVertexAttribfvARB (will be remapped) */ "iip\0" "glGetVertexAttribfv\0" "glGetVertexAttribfvARB\0" "\0" - /* _mesa_function_pool[16262]: SecondaryColor3ivEXT (will be remapped) */ + /* _mesa_function_pool[16582]: SecondaryColor3ivEXT (will be remapped) */ "p\0" "glSecondaryColor3iv\0" "glSecondaryColor3ivEXT\0" "\0" - /* _mesa_function_pool[16308]: TexCoord4iv (offset 123) */ + /* _mesa_function_pool[16628]: TexCoord4iv (offset 123) */ "p\0" "glTexCoord4iv\0" "\0" - /* _mesa_function_pool[16325]: VertexAttribI4uiEXT (will be remapped) */ + /* _mesa_function_pool[16645]: VertexAttribI4uiEXT (will be remapped) */ "iiiii\0" "glVertexAttribI4uiEXT\0" "glVertexAttribI4ui\0" "\0" - /* _mesa_function_pool[16373]: GetFragmentMaterialfvSGIX (dynamic) */ + /* _mesa_function_pool[16693]: GetFragmentMaterialfvSGIX (dynamic) */ "iip\0" "glGetFragmentMaterialfvSGIX\0" "\0" - /* _mesa_function_pool[16406]: UniformMatrix4x2fv (will be remapped) */ + /* _mesa_function_pool[16726]: UniformMatrix4x2fv (will be remapped) */ "iiip\0" "glUniformMatrix4x2fv\0" "\0" - /* _mesa_function_pool[16433]: GetDetailTexFuncSGIS (dynamic) */ + /* _mesa_function_pool[16753]: GetDetailTexFuncSGIS (dynamic) */ "ip\0" "glGetDetailTexFuncSGIS\0" "\0" - /* _mesa_function_pool[16460]: GetCombinerStageParameterfvNV (dynamic) */ + /* _mesa_function_pool[16780]: GetCombinerStageParameterfvNV (dynamic) */ "iip\0" "glGetCombinerStageParameterfvNV\0" "\0" - /* _mesa_function_pool[16497]: SamplerParameterIiv (will be remapped) */ + /* _mesa_function_pool[16817]: SamplerParameterIiv (will be remapped) */ "iip\0" "glSamplerParameterIiv\0" "\0" - /* _mesa_function_pool[16524]: PolygonOffset (offset 319) */ + /* _mesa_function_pool[16844]: PolygonOffset (offset 319) */ "ff\0" "glPolygonOffset\0" "\0" - /* _mesa_function_pool[16544]: BindVertexArray (will be remapped) */ + /* _mesa_function_pool[16864]: BindVertexArray (will be remapped) */ "i\0" "glBindVertexArray\0" "\0" - /* _mesa_function_pool[16565]: Color4ubVertex2fvSUN (dynamic) */ + /* _mesa_function_pool[16885]: Color4ubVertex2fvSUN (dynamic) */ "pp\0" "glColor4ubVertex2fvSUN\0" "\0" - /* _mesa_function_pool[16592]: Rectd (offset 86) */ + /* _mesa_function_pool[16912]: Rectd (offset 86) */ "dddd\0" "glRectd\0" "\0" - /* _mesa_function_pool[16606]: TexFilterFuncSGIS (dynamic) */ + /* _mesa_function_pool[16926]: TexFilterFuncSGIS (dynamic) */ "iiip\0" "glTexFilterFuncSGIS\0" "\0" - /* _mesa_function_pool[16632]: TextureBarrierNV (will be remapped) */ + /* _mesa_function_pool[16952]: TextureBarrierNV (will be remapped) */ "\0" "glTextureBarrierNV\0" "\0" - /* _mesa_function_pool[16653]: SamplerParameterfv (will be remapped) */ + /* _mesa_function_pool[16973]: SamplerParameterfv (will be remapped) */ "iip\0" "glSamplerParameterfv\0" "\0" - /* _mesa_function_pool[16679]: VertexAttribI4ubvEXT (will be remapped) */ - "ip\0" - "glVertexAttribI4ubvEXT\0" - "glVertexAttribI4ubv\0" + /* _mesa_function_pool[16999]: ColorMaskIndexedEXT (will be remapped) */ + "iiiii\0" + "glColorMaskIndexedEXT\0" + "glColorMaski\0" "\0" - /* _mesa_function_pool[16726]: GetAttribLocationARB (will be remapped) */ + /* _mesa_function_pool[17041]: GetAttribLocationARB (will be remapped) */ "ip\0" "glGetAttribLocation\0" "glGetAttribLocationARB\0" "\0" - /* _mesa_function_pool[16773]: RasterPos3i (offset 74) */ + /* _mesa_function_pool[17088]: RasterPos3i (offset 74) */ "iii\0" "glRasterPos3i\0" "\0" - /* _mesa_function_pool[16792]: BlendEquationSeparateiARB (will be remapped) */ - "iii\0" - "glBlendEquationSeparateiARB\0" - "\0" - /* _mesa_function_pool[16825]: VertexAttrib4ubvARB (will be remapped) */ + /* _mesa_function_pool[17107]: VertexAttrib4ubvARB (will be remapped) */ "ip\0" "glVertexAttrib4ubv\0" "glVertexAttrib4ubvARB\0" "\0" - /* _mesa_function_pool[16870]: DetailTexFuncSGIS (dynamic) */ + /* _mesa_function_pool[17152]: DetailTexFuncSGIS (dynamic) */ "iip\0" "glDetailTexFuncSGIS\0" "\0" - /* _mesa_function_pool[16895]: Normal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[17177]: Normal3fVertex3fSUN (dynamic) */ "ffffff\0" "glNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[16925]: CopyTexImage2D (offset 324) */ + /* _mesa_function_pool[17207]: CopyTexImage2D (offset 324) */ "iiiiiiii\0" "glCopyTexImage2D\0" "glCopyTexImage2DEXT\0" "\0" - /* _mesa_function_pool[16972]: GetBufferPointervARB (will be remapped) */ + /* _mesa_function_pool[17254]: GetBufferPointervARB (will be remapped) */ "iip\0" "glGetBufferPointerv\0" "glGetBufferPointervARB\0" "\0" - /* _mesa_function_pool[17020]: ProgramEnvParameter4fARB (will be remapped) */ + /* _mesa_function_pool[17302]: ProgramEnvParameter4fARB (will be remapped) */ "iiffff\0" "glProgramEnvParameter4fARB\0" "glProgramParameter4fNV\0" "\0" - /* _mesa_function_pool[17078]: Uniform3ivARB (will be remapped) */ + /* _mesa_function_pool[17360]: Uniform3ivARB (will be remapped) */ "iip\0" "glUniform3iv\0" "glUniform3ivARB\0" "\0" - /* _mesa_function_pool[17112]: Lightfv (offset 160) */ + /* _mesa_function_pool[17394]: Lightfv (offset 160) */ "iip\0" "glLightfv\0" "\0" - /* _mesa_function_pool[17127]: PrimitiveRestartIndexNV (will be remapped) */ + /* _mesa_function_pool[17409]: PrimitiveRestartIndexNV (will be remapped) */ "i\0" "glPrimitiveRestartIndexNV\0" "glPrimitiveRestartIndex\0" "\0" - /* _mesa_function_pool[17180]: ClearDepth (offset 208) */ + /* _mesa_function_pool[17462]: ClearDepth (offset 208) */ "d\0" "glClearDepth\0" "\0" - /* _mesa_function_pool[17196]: GetFenceivNV (will be remapped) */ + /* _mesa_function_pool[17478]: GetFenceivNV (will be remapped) */ "iip\0" "glGetFenceivNV\0" "\0" - /* _mesa_function_pool[17216]: WindowPos4dvMESA (will be remapped) */ + /* _mesa_function_pool[17498]: WindowPos4dvMESA (will be remapped) */ "p\0" "glWindowPos4dvMESA\0" "\0" - /* _mesa_function_pool[17238]: ColorSubTable (offset 346) */ + /* _mesa_function_pool[17520]: ColorSubTable (offset 346) */ "iiiiip\0" "glColorSubTable\0" "glColorSubTableEXT\0" "\0" - /* _mesa_function_pool[17281]: Color4fv (offset 30) */ + /* _mesa_function_pool[17563]: Color4fv (offset 30) */ "p\0" "glColor4fv\0" "\0" - /* _mesa_function_pool[17295]: MultiTexCoord4ivARB (offset 405) */ + /* _mesa_function_pool[17577]: MultiTexCoord4ivARB (offset 405) */ "ip\0" "glMultiTexCoord4iv\0" "glMultiTexCoord4ivARB\0" "\0" - /* _mesa_function_pool[17340]: ProgramLocalParameters4fvEXT (will be remapped) */ + /* _mesa_function_pool[17622]: GetnMinmaxARB (will be remapped) */ + "iiiiip\0" + "glGetnMinmaxARB\0" + "\0" + /* _mesa_function_pool[17646]: ProgramLocalParameters4fvEXT (will be remapped) */ "iiip\0" "glProgramLocalParameters4fvEXT\0" "\0" - /* _mesa_function_pool[17377]: ColorPointer (offset 308) */ + /* _mesa_function_pool[17683]: ColorPointer (offset 308) */ "iiip\0" "glColorPointer\0" "\0" - /* _mesa_function_pool[17398]: Rects (offset 92) */ + /* _mesa_function_pool[17704]: Rects (offset 92) */ "iiii\0" "glRects\0" "\0" - /* _mesa_function_pool[17412]: GetMapAttribParameterfvNV (dynamic) */ + /* _mesa_function_pool[17718]: GetMapAttribParameterfvNV (dynamic) */ "iiip\0" "glGetMapAttribParameterfvNV\0" "\0" - /* _mesa_function_pool[17446]: CreateShaderProgramEXT (will be remapped) */ + /* _mesa_function_pool[17752]: CreateShaderProgramEXT (will be remapped) */ "ip\0" "glCreateShaderProgramEXT\0" "\0" - /* _mesa_function_pool[17475]: ActiveProgramEXT (will be remapped) */ + /* _mesa_function_pool[17781]: ActiveProgramEXT (will be remapped) */ "i\0" "glActiveProgramEXT\0" "\0" - /* _mesa_function_pool[17497]: Lightiv (offset 162) */ + /* _mesa_function_pool[17803]: Lightiv (offset 162) */ "iip\0" "glLightiv\0" "\0" - /* _mesa_function_pool[17512]: VertexAttrib4sARB (will be remapped) */ + /* _mesa_function_pool[17818]: VertexAttrib4sARB (will be remapped) */ "iiiii\0" "glVertexAttrib4s\0" "glVertexAttrib4sARB\0" "\0" - /* _mesa_function_pool[17556]: GetQueryObjectuivARB (will be remapped) */ + /* _mesa_function_pool[17862]: GetQueryObjectuivARB (will be remapped) */ "iip\0" "glGetQueryObjectuiv\0" "glGetQueryObjectuivARB\0" "\0" - /* _mesa_function_pool[17604]: GetTexParameteriv (offset 283) */ + /* _mesa_function_pool[17910]: GetTexParameteriv (offset 283) */ "iip\0" "glGetTexParameteriv\0" "\0" - /* _mesa_function_pool[17629]: MapParameterivNV (dynamic) */ + /* _mesa_function_pool[17935]: MapParameterivNV (dynamic) */ "iip\0" "glMapParameterivNV\0" "\0" - /* _mesa_function_pool[17653]: GenRenderbuffersEXT (will be remapped) */ + /* _mesa_function_pool[17959]: GenRenderbuffersEXT (will be remapped) */ "ip\0" "glGenRenderbuffers\0" "glGenRenderbuffersEXT\0" "\0" - /* _mesa_function_pool[17698]: ClearBufferfv (will be remapped) */ + /* _mesa_function_pool[18004]: ClearBufferfv (will be remapped) */ "iip\0" "glClearBufferfv\0" "\0" - /* _mesa_function_pool[17719]: VertexAttrib2dvARB (will be remapped) */ + /* _mesa_function_pool[18025]: VertexAttrib2dvARB (will be remapped) */ "ip\0" "glVertexAttrib2dv\0" "glVertexAttrib2dvARB\0" "\0" - /* _mesa_function_pool[17762]: EdgeFlagPointerEXT (will be remapped) */ + /* _mesa_function_pool[18068]: EdgeFlagPointerEXT (will be remapped) */ "iip\0" "glEdgeFlagPointerEXT\0" "\0" - /* _mesa_function_pool[17788]: VertexAttribs2svNV (will be remapped) */ + /* _mesa_function_pool[18094]: VertexAttribs2svNV (will be remapped) */ "iip\0" "glVertexAttribs2svNV\0" "\0" - /* _mesa_function_pool[17814]: WeightbvARB (dynamic) */ + /* _mesa_function_pool[18120]: WeightbvARB (dynamic) */ "ip\0" "glWeightbvARB\0" "\0" - /* _mesa_function_pool[17832]: VertexAttrib2fvARB (will be remapped) */ + /* _mesa_function_pool[18138]: VertexAttrib2fvARB (will be remapped) */ "ip\0" "glVertexAttrib2fv\0" "glVertexAttrib2fvARB\0" "\0" - /* _mesa_function_pool[17875]: GetBufferParameterivARB (will be remapped) */ + /* _mesa_function_pool[18181]: GetBufferParameterivARB (will be remapped) */ "iip\0" "glGetBufferParameteriv\0" "glGetBufferParameterivARB\0" "\0" - /* _mesa_function_pool[17929]: Rectdv (offset 87) */ + /* _mesa_function_pool[18235]: Rectdv (offset 87) */ "pp\0" "glRectdv\0" "\0" - /* _mesa_function_pool[17942]: ListParameteriSGIX (dynamic) */ + /* _mesa_function_pool[18248]: ListParameteriSGIX (dynamic) */ "iii\0" "glListParameteriSGIX\0" "\0" - /* _mesa_function_pool[17968]: BlendEquationiARB (will be remapped) */ + /* _mesa_function_pool[18274]: BlendEquationiARB (will be remapped) */ "ii\0" "glBlendEquationiARB\0" + "glBlendEquationIndexedAMD\0" "\0" - /* _mesa_function_pool[17992]: ReplacementCodeuiColor4fNormal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[18324]: ReplacementCodeuiColor4fNormal3fVertex3fSUN (dynamic) */ "iffffffffff\0" "glReplacementCodeuiColor4fNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[18051]: InstrumentsBufferSGIX (dynamic) */ + /* _mesa_function_pool[18383]: InstrumentsBufferSGIX (dynamic) */ "ip\0" "glInstrumentsBufferSGIX\0" "\0" - /* _mesa_function_pool[18079]: VertexAttrib4NivARB (will be remapped) */ + /* _mesa_function_pool[18411]: VertexAttrib4NivARB (will be remapped) */ "ip\0" "glVertexAttrib4Niv\0" "glVertexAttrib4NivARB\0" "\0" - /* _mesa_function_pool[18124]: DrawArraysInstancedARB (will be remapped) */ + /* _mesa_function_pool[18456]: DrawArraysInstancedARB (will be remapped) */ "iiii\0" "glDrawArraysInstancedARB\0" "glDrawArraysInstancedEXT\0" "glDrawArraysInstanced\0" "\0" - /* _mesa_function_pool[18202]: GetAttachedShaders (will be remapped) */ + /* _mesa_function_pool[18534]: GetAttachedShaders (will be remapped) */ "iipp\0" "glGetAttachedShaders\0" "\0" - /* _mesa_function_pool[18229]: GenVertexArraysAPPLE (will be remapped) */ + /* _mesa_function_pool[18561]: GenVertexArraysAPPLE (will be remapped) */ "ip\0" "glGenVertexArraysAPPLE\0" "\0" - /* _mesa_function_pool[18256]: ClearBufferfi (will be remapped) */ + /* _mesa_function_pool[18588]: ClearBufferfi (will be remapped) */ "iifi\0" "glClearBufferfi\0" "\0" - /* _mesa_function_pool[18278]: Materialiv (offset 172) */ + /* _mesa_function_pool[18610]: Materialiv (offset 172) */ "iip\0" "glMaterialiv\0" "\0" - /* _mesa_function_pool[18296]: PushClientAttrib (offset 335) */ + /* _mesa_function_pool[18628]: PushClientAttrib (offset 335) */ "i\0" "glPushClientAttrib\0" "\0" - /* _mesa_function_pool[18318]: SamplerParameteriv (will be remapped) */ + /* _mesa_function_pool[18650]: SamplerParameteriv (will be remapped) */ "iip\0" "glSamplerParameteriv\0" "\0" - /* _mesa_function_pool[18344]: TexCoord2fColor4fNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[18676]: TexCoord2fColor4fNormal3fVertex3fvSUN (dynamic) */ "pppp\0" "glTexCoord2fColor4fNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[18390]: WindowPos2iMESA (will be remapped) */ + /* _mesa_function_pool[18722]: WindowPos2iMESA (will be remapped) */ "ii\0" "glWindowPos2i\0" "glWindowPos2iARB\0" "glWindowPos2iMESA\0" "\0" - /* _mesa_function_pool[18443]: SampleMaskSGIS (will be remapped) */ + /* _mesa_function_pool[18775]: SampleMaskSGIS (will be remapped) */ "fi\0" "glSampleMaskSGIS\0" "glSampleMaskEXT\0" "\0" - /* _mesa_function_pool[18480]: SecondaryColor3fvEXT (will be remapped) */ + /* _mesa_function_pool[18812]: SecondaryColor3fvEXT (will be remapped) */ "p\0" "glSecondaryColor3fv\0" "glSecondaryColor3fvEXT\0" "\0" - /* _mesa_function_pool[18526]: PolygonMode (offset 174) */ + /* _mesa_function_pool[18858]: PolygonMode (offset 174) */ "ii\0" "glPolygonMode\0" "\0" - /* _mesa_function_pool[18544]: CompressedTexSubImage1DARB (will be remapped) */ + /* _mesa_function_pool[18876]: CompressedTexSubImage1DARB (will be remapped) */ "iiiiiip\0" "glCompressedTexSubImage1D\0" "glCompressedTexSubImage1DARB\0" "\0" - /* _mesa_function_pool[18608]: VertexAttribI1iEXT (will be remapped) */ + /* _mesa_function_pool[18940]: VertexAttribI1iEXT (will be remapped) */ "ii\0" "glVertexAttribI1iEXT\0" "glVertexAttribI1i\0" "\0" - /* _mesa_function_pool[18651]: TexCoord2fNormal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[18983]: TexCoord2fNormal3fVertex3fSUN (dynamic) */ "ffffffff\0" "glTexCoord2fNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[18693]: GetVertexAttribivNV (will be remapped) */ + /* _mesa_function_pool[19025]: GetVertexAttribivNV (will be remapped) */ "iip\0" "glGetVertexAttribivNV\0" "\0" - /* _mesa_function_pool[18720]: GetProgramStringARB (will be remapped) */ + /* _mesa_function_pool[19052]: GetProgramStringARB (will be remapped) */ "iip\0" "glGetProgramStringARB\0" "\0" - /* _mesa_function_pool[18747]: VertexAttribIPointerEXT (will be remapped) */ + /* _mesa_function_pool[19079]: GetnUniformdvARB (will be remapped) */ + "iiip\0" + "glGetnUniformdvARB\0" + "\0" + /* _mesa_function_pool[19104]: VertexAttribIPointerEXT (will be remapped) */ "iiiip\0" "glVertexAttribIPointerEXT\0" "glVertexAttribIPointer\0" "\0" - /* _mesa_function_pool[18803]: TexBumpParameterfvATI (will be remapped) */ + /* _mesa_function_pool[19160]: TexBumpParameterfvATI (will be remapped) */ "ip\0" "glTexBumpParameterfvATI\0" "\0" - /* _mesa_function_pool[18831]: Tangent3ivEXT (dynamic) */ + /* _mesa_function_pool[19188]: Tangent3ivEXT (dynamic) */ "p\0" "glTangent3ivEXT\0" "\0" - /* _mesa_function_pool[18850]: CompileShaderARB (will be remapped) */ + /* _mesa_function_pool[19207]: CompileShaderARB (will be remapped) */ "i\0" "glCompileShader\0" "glCompileShaderARB\0" "\0" - /* _mesa_function_pool[18888]: DeleteShader (will be remapped) */ + /* _mesa_function_pool[19245]: DeleteShader (will be remapped) */ "i\0" "glDeleteShader\0" "\0" - /* _mesa_function_pool[18906]: DisableClientState (offset 309) */ + /* _mesa_function_pool[19263]: DisableClientState (offset 309) */ "i\0" "glDisableClientState\0" "\0" - /* _mesa_function_pool[18930]: TexGeni (offset 192) */ + /* _mesa_function_pool[19287]: TexGeni (offset 192) */ "iii\0" "glTexGeni\0" "\0" - /* _mesa_function_pool[18945]: TexGenf (offset 190) */ + /* _mesa_function_pool[19302]: TexGenf (offset 190) */ "iif\0" "glTexGenf\0" "\0" - /* _mesa_function_pool[18960]: Uniform3fARB (will be remapped) */ + /* _mesa_function_pool[19317]: Uniform3fARB (will be remapped) */ "ifff\0" "glUniform3f\0" "glUniform3fARB\0" "\0" - /* _mesa_function_pool[18993]: TexGend (offset 188) */ + /* _mesa_function_pool[19350]: TexGend (offset 188) */ "iid\0" "glTexGend\0" "\0" - /* _mesa_function_pool[19008]: ListParameterfvSGIX (dynamic) */ + /* _mesa_function_pool[19365]: ListParameterfvSGIX (dynamic) */ "iip\0" "glListParameterfvSGIX\0" "\0" - /* _mesa_function_pool[19035]: GetPolygonStipple (offset 274) */ + /* _mesa_function_pool[19392]: GetPolygonStipple (offset 274) */ "p\0" "glGetPolygonStipple\0" "\0" - /* _mesa_function_pool[19058]: Tangent3dvEXT (dynamic) */ + /* _mesa_function_pool[19415]: Tangent3dvEXT (dynamic) */ "p\0" "glTangent3dvEXT\0" "\0" - /* _mesa_function_pool[19077]: BindBufferOffsetEXT (will be remapped) */ + /* _mesa_function_pool[19434]: BindBufferOffsetEXT (will be remapped) */ "iiii\0" "glBindBufferOffsetEXT\0" "\0" - /* _mesa_function_pool[19105]: WindowPos3sMESA (will be remapped) */ + /* _mesa_function_pool[19462]: WindowPos3sMESA (will be remapped) */ "iii\0" "glWindowPos3s\0" "glWindowPos3sARB\0" "glWindowPos3sMESA\0" "\0" - /* _mesa_function_pool[19159]: VertexAttrib2svNV (will be remapped) */ + /* _mesa_function_pool[19516]: VertexAttrib2svNV (will be remapped) */ "ip\0" "glVertexAttrib2svNV\0" "\0" - /* _mesa_function_pool[19183]: DisableIndexedEXT (will be remapped) */ + /* _mesa_function_pool[19540]: DisableIndexedEXT (will be remapped) */ "ii\0" "glDisableIndexedEXT\0" "glDisablei\0" "\0" - /* _mesa_function_pool[19218]: BindBufferBaseEXT (will be remapped) */ + /* _mesa_function_pool[19575]: BindBufferBaseEXT (will be remapped) */ "iii\0" "glBindBufferBaseEXT\0" "glBindBufferBase\0" "\0" - /* _mesa_function_pool[19260]: TexCoord2fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[19617]: TexCoord2fVertex3fvSUN (dynamic) */ "pp\0" "glTexCoord2fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[19289]: WindowPos4sMESA (will be remapped) */ + /* _mesa_function_pool[19646]: WindowPos4sMESA (will be remapped) */ "iiii\0" "glWindowPos4sMESA\0" "\0" - /* _mesa_function_pool[19313]: VertexAttrib4NuivARB (will be remapped) */ + /* _mesa_function_pool[19670]: GetnPixelMapuivARB (will be remapped) */ + "iip\0" + "glGetnPixelMapuivARB\0" + "\0" + /* _mesa_function_pool[19696]: VertexAttrib4NuivARB (will be remapped) */ "ip\0" "glVertexAttrib4Nuiv\0" "glVertexAttrib4NuivARB\0" "\0" - /* _mesa_function_pool[19360]: ClientActiveTextureARB (offset 375) */ + /* _mesa_function_pool[19743]: ClientActiveTextureARB (offset 375) */ "i\0" "glClientActiveTexture\0" "glClientActiveTextureARB\0" "\0" - /* _mesa_function_pool[19410]: GetSamplerParameterIuiv (will be remapped) */ + /* _mesa_function_pool[19793]: GetSamplerParameterIuiv (will be remapped) */ "iip\0" "glGetSamplerParameterIuiv\0" "\0" - /* _mesa_function_pool[19441]: ReplacementCodeusvSUN (dynamic) */ + /* _mesa_function_pool[19824]: ReplacementCodeusvSUN (dynamic) */ "p\0" "glReplacementCodeusvSUN\0" "\0" - /* _mesa_function_pool[19468]: Uniform4fARB (will be remapped) */ + /* _mesa_function_pool[19851]: Uniform4fARB (will be remapped) */ "iffff\0" "glUniform4f\0" "glUniform4fARB\0" "\0" - /* _mesa_function_pool[19502]: Color4sv (offset 34) */ + /* _mesa_function_pool[19885]: Color4sv (offset 34) */ "p\0" "glColor4sv\0" "\0" - /* _mesa_function_pool[19516]: FlushMappedBufferRange (will be remapped) */ + /* _mesa_function_pool[19899]: FlushMappedBufferRange (will be remapped) */ "iii\0" "glFlushMappedBufferRange\0" "\0" - /* _mesa_function_pool[19546]: IsProgramNV (will be remapped) */ + /* _mesa_function_pool[19929]: IsProgramNV (will be remapped) */ "i\0" "glIsProgramARB\0" "glIsProgramNV\0" "\0" - /* _mesa_function_pool[19578]: FlushMappedBufferRangeAPPLE (will be remapped) */ + /* _mesa_function_pool[19961]: FlushMappedBufferRangeAPPLE (will be remapped) */ "iii\0" "glFlushMappedBufferRangeAPPLE\0" "\0" - /* _mesa_function_pool[19613]: PixelZoom (offset 246) */ + /* _mesa_function_pool[19996]: PixelZoom (offset 246) */ "ff\0" "glPixelZoom\0" "\0" - /* _mesa_function_pool[19629]: ReplacementCodePointerSUN (dynamic) */ + /* _mesa_function_pool[20012]: ReplacementCodePointerSUN (dynamic) */ "iip\0" "glReplacementCodePointerSUN\0" "\0" - /* _mesa_function_pool[19662]: ProgramEnvParameter4dARB (will be remapped) */ + /* _mesa_function_pool[20045]: ProgramEnvParameter4dARB (will be remapped) */ "iidddd\0" "glProgramEnvParameter4dARB\0" "glProgramParameter4dNV\0" "\0" - /* _mesa_function_pool[19720]: ColorTableParameterfv (offset 340) */ + /* _mesa_function_pool[20103]: ColorTableParameterfv (offset 340) */ "iip\0" "glColorTableParameterfv\0" "glColorTableParameterfvSGI\0" "\0" - /* _mesa_function_pool[19776]: FragmentLightModelfSGIX (dynamic) */ + /* _mesa_function_pool[20159]: FragmentLightModelfSGIX (dynamic) */ "if\0" "glFragmentLightModelfSGIX\0" "\0" - /* _mesa_function_pool[19806]: Binormal3bvEXT (dynamic) */ + /* _mesa_function_pool[20189]: Binormal3bvEXT (dynamic) */ "p\0" "glBinormal3bvEXT\0" "\0" - /* _mesa_function_pool[19826]: PixelMapuiv (offset 252) */ + /* _mesa_function_pool[20209]: PixelMapuiv (offset 252) */ "iip\0" "glPixelMapuiv\0" "\0" - /* _mesa_function_pool[19845]: Color3dv (offset 12) */ + /* _mesa_function_pool[20228]: Color3dv (offset 12) */ "p\0" "glColor3dv\0" "\0" - /* _mesa_function_pool[19859]: IsTexture (offset 330) */ + /* _mesa_function_pool[20242]: IsTexture (offset 330) */ "i\0" "glIsTexture\0" "glIsTextureEXT\0" "\0" - /* _mesa_function_pool[19889]: GenSamplers (will be remapped) */ + /* _mesa_function_pool[20272]: GenSamplers (will be remapped) */ "ip\0" "glGenSamplers\0" "\0" - /* _mesa_function_pool[19907]: VertexWeightfvEXT (dynamic) */ + /* _mesa_function_pool[20290]: VertexWeightfvEXT (dynamic) */ "p\0" "glVertexWeightfvEXT\0" "\0" - /* _mesa_function_pool[19930]: VertexAttrib1dARB (will be remapped) */ + /* _mesa_function_pool[20313]: VertexAttrib1dARB (will be remapped) */ "id\0" "glVertexAttrib1d\0" "glVertexAttrib1dARB\0" "\0" - /* _mesa_function_pool[19971]: ImageTransformParameterivHP (dynamic) */ + /* _mesa_function_pool[20354]: ImageTransformParameterivHP (dynamic) */ "iip\0" "glImageTransformParameterivHP\0" "\0" - /* _mesa_function_pool[20006]: TexCoord4i (offset 122) */ + /* _mesa_function_pool[20389]: TexCoord4i (offset 122) */ "iiii\0" "glTexCoord4i\0" "\0" - /* _mesa_function_pool[20025]: DeleteQueriesARB (will be remapped) */ + /* _mesa_function_pool[20408]: DeleteQueriesARB (will be remapped) */ "ip\0" "glDeleteQueries\0" "glDeleteQueriesARB\0" "\0" - /* _mesa_function_pool[20064]: Color4ubVertex2fSUN (dynamic) */ + /* _mesa_function_pool[20447]: Color4ubVertex2fSUN (dynamic) */ "iiiiff\0" "glColor4ubVertex2fSUN\0" "\0" - /* _mesa_function_pool[20094]: FragmentColorMaterialSGIX (dynamic) */ + /* _mesa_function_pool[20477]: FragmentColorMaterialSGIX (dynamic) */ "ii\0" "glFragmentColorMaterialSGIX\0" "\0" - /* _mesa_function_pool[20126]: CurrentPaletteMatrixARB (dynamic) */ + /* _mesa_function_pool[20509]: CurrentPaletteMatrixARB (dynamic) */ "i\0" "glCurrentPaletteMatrixARB\0" "\0" - /* _mesa_function_pool[20155]: GetMapdv (offset 266) */ + /* _mesa_function_pool[20538]: GetMapdv (offset 266) */ "iip\0" "glGetMapdv\0" "\0" - /* _mesa_function_pool[20171]: ObjectPurgeableAPPLE (will be remapped) */ + /* _mesa_function_pool[20554]: ObjectPurgeableAPPLE (will be remapped) */ "iii\0" "glObjectPurgeableAPPLE\0" "\0" - /* _mesa_function_pool[20199]: GetStringi (will be remapped) */ + /* _mesa_function_pool[20582]: GetStringi (will be remapped) */ "ii\0" "glGetStringi\0" "\0" - /* _mesa_function_pool[20216]: SamplePatternSGIS (will be remapped) */ + /* _mesa_function_pool[20599]: SamplePatternSGIS (will be remapped) */ "i\0" "glSamplePatternSGIS\0" "glSamplePatternEXT\0" "\0" - /* _mesa_function_pool[20258]: PixelStoref (offset 249) */ + /* _mesa_function_pool[20641]: PixelStoref (offset 249) */ "if\0" "glPixelStoref\0" "\0" - /* _mesa_function_pool[20276]: IsQueryARB (will be remapped) */ + /* _mesa_function_pool[20659]: IsQueryARB (will be remapped) */ "i\0" "glIsQuery\0" "glIsQueryARB\0" "\0" - /* _mesa_function_pool[20302]: ReplacementCodeuiColor4ubVertex3fSUN (dynamic) */ + /* _mesa_function_pool[20685]: ReplacementCodeuiColor4ubVertex3fSUN (dynamic) */ "iiiiifff\0" "glReplacementCodeuiColor4ubVertex3fSUN\0" "\0" - /* _mesa_function_pool[20351]: PixelStorei (offset 250) */ + /* _mesa_function_pool[20734]: PixelStorei (offset 250) */ "ii\0" "glPixelStorei\0" "\0" - /* _mesa_function_pool[20369]: VertexAttrib4usvARB (will be remapped) */ + /* _mesa_function_pool[20752]: VertexAttrib4usvARB (will be remapped) */ "ip\0" "glVertexAttrib4usv\0" "glVertexAttrib4usvARB\0" "\0" - /* _mesa_function_pool[20414]: LinkProgramARB (will be remapped) */ + /* _mesa_function_pool[20797]: LinkProgramARB (will be remapped) */ "i\0" "glLinkProgram\0" "glLinkProgramARB\0" "\0" - /* _mesa_function_pool[20448]: VertexAttrib2fNV (will be remapped) */ + /* _mesa_function_pool[20831]: VertexAttrib2fNV (will be remapped) */ "iff\0" "glVertexAttrib2fNV\0" "\0" - /* _mesa_function_pool[20472]: ShaderSourceARB (will be remapped) */ + /* _mesa_function_pool[20855]: ShaderSourceARB (will be remapped) */ "iipp\0" "glShaderSource\0" "glShaderSourceARB\0" "\0" - /* _mesa_function_pool[20511]: FragmentMaterialiSGIX (dynamic) */ + /* _mesa_function_pool[20894]: FragmentMaterialiSGIX (dynamic) */ "iii\0" "glFragmentMaterialiSGIX\0" "\0" - /* _mesa_function_pool[20540]: EvalCoord2dv (offset 233) */ + /* _mesa_function_pool[20923]: EvalCoord2dv (offset 233) */ "p\0" "glEvalCoord2dv\0" "\0" - /* _mesa_function_pool[20558]: VertexAttrib3svARB (will be remapped) */ + /* _mesa_function_pool[20941]: VertexAttrib3svARB (will be remapped) */ "ip\0" "glVertexAttrib3sv\0" "glVertexAttrib3svARB\0" "\0" - /* _mesa_function_pool[20601]: ColorMaterial (offset 151) */ + /* _mesa_function_pool[20984]: ColorMaterial (offset 151) */ "ii\0" "glColorMaterial\0" "\0" - /* _mesa_function_pool[20621]: CompressedTexSubImage3DARB (will be remapped) */ + /* _mesa_function_pool[21004]: CompressedTexSubImage3DARB (will be remapped) */ "iiiiiiiiiip\0" "glCompressedTexSubImage3D\0" "glCompressedTexSubImage3DARB\0" "\0" - /* _mesa_function_pool[20689]: WindowPos2ivMESA (will be remapped) */ + /* _mesa_function_pool[21072]: WindowPos2ivMESA (will be remapped) */ "p\0" "glWindowPos2iv\0" "glWindowPos2ivARB\0" "glWindowPos2ivMESA\0" "\0" - /* _mesa_function_pool[20744]: IsFramebufferEXT (will be remapped) */ + /* _mesa_function_pool[21127]: IsFramebufferEXT (will be remapped) */ "i\0" "glIsFramebuffer\0" "glIsFramebufferEXT\0" "\0" - /* _mesa_function_pool[20782]: Uniform4ivARB (will be remapped) */ + /* _mesa_function_pool[21165]: Uniform4ivARB (will be remapped) */ "iip\0" "glUniform4iv\0" "glUniform4ivARB\0" "\0" - /* _mesa_function_pool[20816]: GetVertexAttribdvARB (will be remapped) */ + /* _mesa_function_pool[21199]: GetVertexAttribdvARB (will be remapped) */ "iip\0" "glGetVertexAttribdv\0" "glGetVertexAttribdvARB\0" "\0" - /* _mesa_function_pool[20864]: TexBumpParameterivATI (will be remapped) */ + /* _mesa_function_pool[21247]: TexBumpParameterivATI (will be remapped) */ "ip\0" "glTexBumpParameterivATI\0" "\0" - /* _mesa_function_pool[20892]: GetSeparableFilter (offset 359) */ + /* _mesa_function_pool[21275]: GetSeparableFilter (offset 359) */ "iiippp\0" "glGetSeparableFilter\0" "glGetSeparableFilterEXT\0" "\0" - /* _mesa_function_pool[20945]: Binormal3dEXT (dynamic) */ + /* _mesa_function_pool[21328]: Binormal3dEXT (dynamic) */ "ddd\0" "glBinormal3dEXT\0" "\0" - /* _mesa_function_pool[20966]: SpriteParameteriSGIX (dynamic) */ + /* _mesa_function_pool[21349]: SpriteParameteriSGIX (dynamic) */ "ii\0" "glSpriteParameteriSGIX\0" "\0" - /* _mesa_function_pool[20993]: RequestResidentProgramsNV (will be remapped) */ + /* _mesa_function_pool[21376]: RequestResidentProgramsNV (will be remapped) */ "ip\0" "glRequestResidentProgramsNV\0" "\0" - /* _mesa_function_pool[21025]: TagSampleBufferSGIX (dynamic) */ + /* _mesa_function_pool[21408]: TagSampleBufferSGIX (dynamic) */ "\0" "glTagSampleBufferSGIX\0" "\0" - /* _mesa_function_pool[21049]: TransformFeedbackVaryingsEXT (will be remapped) */ + /* _mesa_function_pool[21432]: TransformFeedbackVaryingsEXT (will be remapped) */ "iipi\0" "glTransformFeedbackVaryingsEXT\0" "glTransformFeedbackVaryings\0" "\0" - /* _mesa_function_pool[21114]: FeedbackBuffer (offset 194) */ + /* _mesa_function_pool[21497]: FeedbackBuffer (offset 194) */ "iip\0" "glFeedbackBuffer\0" "\0" - /* _mesa_function_pool[21136]: RasterPos2iv (offset 67) */ + /* _mesa_function_pool[21519]: RasterPos2iv (offset 67) */ "p\0" "glRasterPos2iv\0" "\0" - /* _mesa_function_pool[21154]: TexImage1D (offset 182) */ + /* _mesa_function_pool[21537]: TexImage1D (offset 182) */ "iiiiiiip\0" "glTexImage1D\0" "\0" - /* _mesa_function_pool[21177]: ListParameterivSGIX (dynamic) */ + /* _mesa_function_pool[21560]: ListParameterivSGIX (dynamic) */ "iip\0" "glListParameterivSGIX\0" "\0" - /* _mesa_function_pool[21204]: MultiDrawElementsEXT (will be remapped) */ + /* _mesa_function_pool[21587]: MultiDrawElementsEXT (will be remapped) */ "ipipi\0" "glMultiDrawElements\0" "glMultiDrawElementsEXT\0" "\0" - /* _mesa_function_pool[21254]: Color3s (offset 17) */ + /* _mesa_function_pool[21637]: Color3s (offset 17) */ "iii\0" "glColor3s\0" "\0" - /* _mesa_function_pool[21269]: Uniform1ivARB (will be remapped) */ + /* _mesa_function_pool[21652]: Uniform1ivARB (will be remapped) */ "iip\0" "glUniform1iv\0" "glUniform1ivARB\0" "\0" - /* _mesa_function_pool[21303]: WindowPos2sMESA (will be remapped) */ + /* _mesa_function_pool[21686]: WindowPos2sMESA (will be remapped) */ "ii\0" "glWindowPos2s\0" "glWindowPos2sARB\0" "glWindowPos2sMESA\0" "\0" - /* _mesa_function_pool[21356]: WeightusvARB (dynamic) */ + /* _mesa_function_pool[21739]: WeightusvARB (dynamic) */ "ip\0" "glWeightusvARB\0" "\0" - /* _mesa_function_pool[21375]: TexCoordPointer (offset 320) */ + /* _mesa_function_pool[21758]: TexCoordPointer (offset 320) */ "iiip\0" "glTexCoordPointer\0" "\0" - /* _mesa_function_pool[21399]: FogCoordPointerEXT (will be remapped) */ + /* _mesa_function_pool[21782]: FogCoordPointerEXT (will be remapped) */ "iip\0" "glFogCoordPointer\0" "glFogCoordPointerEXT\0" "\0" - /* _mesa_function_pool[21443]: IndexMaterialEXT (dynamic) */ + /* _mesa_function_pool[21826]: GetnSeparableFilterARB (will be remapped) */ + "iiiipipp\0" + "glGetnSeparableFilterARB\0" + "\0" + /* _mesa_function_pool[21861]: IndexMaterialEXT (dynamic) */ "ii\0" "glIndexMaterialEXT\0" "\0" - /* _mesa_function_pool[21466]: Color3i (offset 15) */ + /* _mesa_function_pool[21884]: Color3i (offset 15) */ "iii\0" "glColor3i\0" "\0" - /* _mesa_function_pool[21481]: FrontFace (offset 157) */ + /* _mesa_function_pool[21899]: FrontFace (offset 157) */ "i\0" "glFrontFace\0" "\0" - /* _mesa_function_pool[21496]: EvalCoord2d (offset 232) */ + /* _mesa_function_pool[21914]: EvalCoord2d (offset 232) */ "dd\0" "glEvalCoord2d\0" "\0" - /* _mesa_function_pool[21514]: SecondaryColor3ubvEXT (will be remapped) */ + /* _mesa_function_pool[21932]: SecondaryColor3ubvEXT (will be remapped) */ "p\0" "glSecondaryColor3ubv\0" "glSecondaryColor3ubvEXT\0" "\0" - /* _mesa_function_pool[21562]: EvalCoord2f (offset 234) */ + /* _mesa_function_pool[21980]: EvalCoord2f (offset 234) */ "ff\0" "glEvalCoord2f\0" "\0" - /* _mesa_function_pool[21580]: VertexAttrib4dvARB (will be remapped) */ + /* _mesa_function_pool[21998]: VertexAttrib4dvARB (will be remapped) */ "ip\0" "glVertexAttrib4dv\0" "glVertexAttrib4dvARB\0" "\0" - /* _mesa_function_pool[21623]: BindAttribLocationARB (will be remapped) */ + /* _mesa_function_pool[22041]: BindAttribLocationARB (will be remapped) */ "iip\0" "glBindAttribLocation\0" "glBindAttribLocationARB\0" "\0" - /* _mesa_function_pool[21673]: Color3b (offset 9) */ + /* _mesa_function_pool[22091]: Color3b (offset 9) */ "iii\0" "glColor3b\0" "\0" - /* _mesa_function_pool[21688]: MultiTexCoord2dARB (offset 384) */ + /* _mesa_function_pool[22106]: MultiTexCoord2dARB (offset 384) */ "idd\0" "glMultiTexCoord2d\0" "glMultiTexCoord2dARB\0" "\0" - /* _mesa_function_pool[21732]: ExecuteProgramNV (will be remapped) */ + /* _mesa_function_pool[22150]: ExecuteProgramNV (will be remapped) */ "iip\0" "glExecuteProgramNV\0" "\0" - /* _mesa_function_pool[21756]: Color3f (offset 13) */ + /* _mesa_function_pool[22174]: Color3f (offset 13) */ "fff\0" "glColor3f\0" "\0" - /* _mesa_function_pool[21771]: LightEnviSGIX (dynamic) */ + /* _mesa_function_pool[22189]: LightEnviSGIX (dynamic) */ "ii\0" "glLightEnviSGIX\0" "\0" - /* _mesa_function_pool[21791]: Color3d (offset 11) */ + /* _mesa_function_pool[22209]: Color3d (offset 11) */ "ddd\0" "glColor3d\0" "\0" - /* _mesa_function_pool[21806]: Normal3dv (offset 55) */ + /* _mesa_function_pool[22224]: Normal3dv (offset 55) */ "p\0" "glNormal3dv\0" "\0" - /* _mesa_function_pool[21821]: Lightf (offset 159) */ + /* _mesa_function_pool[22239]: Lightf (offset 159) */ "iif\0" "glLightf\0" "\0" - /* _mesa_function_pool[21835]: ReplacementCodeuiSUN (dynamic) */ + /* _mesa_function_pool[22253]: ReplacementCodeuiSUN (dynamic) */ "i\0" "glReplacementCodeuiSUN\0" "\0" - /* _mesa_function_pool[21861]: MatrixMode (offset 293) */ + /* _mesa_function_pool[22279]: MatrixMode (offset 293) */ "i\0" "glMatrixMode\0" "\0" - /* _mesa_function_pool[21877]: GetPixelMapusv (offset 273) */ + /* _mesa_function_pool[22295]: GetPixelMapusv (offset 273) */ "ip\0" "glGetPixelMapusv\0" "\0" - /* _mesa_function_pool[21898]: Lighti (offset 161) */ + /* _mesa_function_pool[22316]: Lighti (offset 161) */ "iii\0" "glLighti\0" "\0" - /* _mesa_function_pool[21912]: VertexAttribPointerNV (will be remapped) */ + /* _mesa_function_pool[22330]: VertexAttribPointerNV (will be remapped) */ "iiiip\0" "glVertexAttribPointerNV\0" "\0" - /* _mesa_function_pool[21943]: ClearDepthf (will be remapped) */ + /* _mesa_function_pool[22361]: ClearDepthf (will be remapped) */ "f\0" "glClearDepthf\0" "\0" - /* _mesa_function_pool[21960]: GetBooleanIndexedvEXT (will be remapped) */ + /* _mesa_function_pool[22378]: GetBooleanIndexedvEXT (will be remapped) */ "iip\0" "glGetBooleanIndexedvEXT\0" "glGetBooleani_v\0" "\0" - /* _mesa_function_pool[22005]: GetFramebufferAttachmentParameterivEXT (will be remapped) */ + /* _mesa_function_pool[22423]: GetFramebufferAttachmentParameterivEXT (will be remapped) */ "iiip\0" "glGetFramebufferAttachmentParameteriv\0" "glGetFramebufferAttachmentParameterivEXT\0" "\0" - /* _mesa_function_pool[22090]: PixelTransformParameterfEXT (dynamic) */ + /* _mesa_function_pool[22508]: PixelTransformParameterfEXT (dynamic) */ "iif\0" "glPixelTransformParameterfEXT\0" "\0" - /* _mesa_function_pool[22125]: MultiTexCoord4dvARB (offset 401) */ + /* _mesa_function_pool[22543]: MultiTexCoord4dvARB (offset 401) */ "ip\0" "glMultiTexCoord4dv\0" "glMultiTexCoord4dvARB\0" "\0" - /* _mesa_function_pool[22170]: PixelTransformParameteriEXT (dynamic) */ + /* _mesa_function_pool[22588]: PixelTransformParameteriEXT (dynamic) */ "iii\0" "glPixelTransformParameteriEXT\0" "\0" - /* _mesa_function_pool[22205]: GetDoublev (offset 260) */ + /* _mesa_function_pool[22623]: GetDoublev (offset 260) */ "ip\0" "glGetDoublev\0" "\0" - /* _mesa_function_pool[22222]: MultMatrixd (offset 295) */ + /* _mesa_function_pool[22640]: MultMatrixd (offset 295) */ "p\0" "glMultMatrixd\0" "\0" - /* _mesa_function_pool[22239]: MultMatrixf (offset 294) */ + /* _mesa_function_pool[22657]: MultMatrixf (offset 294) */ "p\0" "glMultMatrixf\0" "\0" - /* _mesa_function_pool[22256]: VertexAttribI4bvEXT (will be remapped) */ + /* _mesa_function_pool[22674]: VertexAttribI4bvEXT (will be remapped) */ "ip\0" "glVertexAttribI4bvEXT\0" "glVertexAttribI4bv\0" "\0" - /* _mesa_function_pool[22301]: TexCoord2fColor4ubVertex3fSUN (dynamic) */ + /* _mesa_function_pool[22719]: TexCoord2fColor4ubVertex3fSUN (dynamic) */ "ffiiiifff\0" "glTexCoord2fColor4ubVertex3fSUN\0" "\0" - /* _mesa_function_pool[22344]: Uniform1iARB (will be remapped) */ + /* _mesa_function_pool[22762]: Uniform1iARB (will be remapped) */ "ii\0" "glUniform1i\0" "glUniform1iARB\0" "\0" - /* _mesa_function_pool[22375]: VertexAttribPointerARB (will be remapped) */ + /* _mesa_function_pool[22793]: GetnMapfvARB (will be remapped) */ + "iiip\0" + "glGetnMapfvARB\0" + "\0" + /* _mesa_function_pool[22814]: VertexAttribPointerARB (will be remapped) */ "iiiiip\0" "glVertexAttribPointer\0" "glVertexAttribPointerARB\0" "\0" - /* _mesa_function_pool[22430]: VertexAttrib3sNV (will be remapped) */ + /* _mesa_function_pool[22869]: VertexAttrib3sNV (will be remapped) */ "iiii\0" "glVertexAttrib3sNV\0" "\0" - /* _mesa_function_pool[22455]: SharpenTexFuncSGIS (dynamic) */ + /* _mesa_function_pool[22894]: SharpenTexFuncSGIS (dynamic) */ "iip\0" "glSharpenTexFuncSGIS\0" "\0" - /* _mesa_function_pool[22481]: MultiTexCoord4fvARB (offset 403) */ + /* _mesa_function_pool[22920]: MultiTexCoord4fvARB (offset 403) */ "ip\0" "glMultiTexCoord4fv\0" "glMultiTexCoord4fvARB\0" "\0" - /* _mesa_function_pool[22526]: Uniform2uiEXT (will be remapped) */ + /* _mesa_function_pool[22965]: Uniform2uiEXT (will be remapped) */ "iii\0" "glUniform2uiEXT\0" "glUniform2ui\0" "\0" - /* _mesa_function_pool[22560]: UniformMatrix2x3fv (will be remapped) */ + /* _mesa_function_pool[22999]: UniformMatrix2x3fv (will be remapped) */ "iiip\0" "glUniformMatrix2x3fv\0" "\0" - /* _mesa_function_pool[22587]: SamplerParameteri (will be remapped) */ + /* _mesa_function_pool[23026]: SamplerParameteri (will be remapped) */ "iii\0" "glSamplerParameteri\0" "\0" - /* _mesa_function_pool[22612]: SamplerParameterf (will be remapped) */ + /* _mesa_function_pool[23051]: SamplerParameterf (will be remapped) */ "iif\0" "glSamplerParameterf\0" "\0" - /* _mesa_function_pool[22637]: CombinerParameteriNV (will be remapped) */ + /* _mesa_function_pool[23076]: CombinerParameteriNV (will be remapped) */ "ii\0" "glCombinerParameteriNV\0" "\0" - /* _mesa_function_pool[22664]: DeleteAsyncMarkersSGIX (dynamic) */ + /* _mesa_function_pool[23103]: DeleteAsyncMarkersSGIX (dynamic) */ "ii\0" "glDeleteAsyncMarkersSGIX\0" "\0" - /* _mesa_function_pool[22693]: ReplacementCodeusSUN (dynamic) */ + /* _mesa_function_pool[23132]: ReplacementCodeusSUN (dynamic) */ "i\0" "glReplacementCodeusSUN\0" "\0" - /* _mesa_function_pool[22719]: IsAsyncMarkerSGIX (dynamic) */ + /* _mesa_function_pool[23158]: IsAsyncMarkerSGIX (dynamic) */ "i\0" "glIsAsyncMarkerSGIX\0" "\0" - /* _mesa_function_pool[22742]: FrameZoomSGIX (dynamic) */ + /* _mesa_function_pool[23181]: FrameZoomSGIX (dynamic) */ "i\0" "glFrameZoomSGIX\0" "\0" - /* _mesa_function_pool[22761]: Normal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[23200]: Normal3fVertex3fvSUN (dynamic) */ "pp\0" "glNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[22788]: RasterPos4sv (offset 85) */ + /* _mesa_function_pool[23227]: GetnUniformuivARB (will be remapped) */ + "iiip\0" + "glGetnUniformuivARB\0" + "\0" + /* _mesa_function_pool[23253]: RasterPos4sv (offset 85) */ "p\0" "glRasterPos4sv\0" "\0" - /* _mesa_function_pool[22806]: VertexAttrib4NsvARB (will be remapped) */ + /* _mesa_function_pool[23271]: VertexAttrib4NsvARB (will be remapped) */ "ip\0" "glVertexAttrib4Nsv\0" "glVertexAttrib4NsvARB\0" "\0" - /* _mesa_function_pool[22851]: VertexAttrib3fvARB (will be remapped) */ + /* _mesa_function_pool[23316]: VertexAttrib3fvARB (will be remapped) */ "ip\0" "glVertexAttrib3fv\0" "glVertexAttrib3fvARB\0" "\0" - /* _mesa_function_pool[22894]: ClearColor (offset 206) */ + /* _mesa_function_pool[23359]: ClearColor (offset 206) */ "ffff\0" "glClearColor\0" "\0" - /* _mesa_function_pool[22913]: GetSynciv (will be remapped) */ + /* _mesa_function_pool[23378]: GetSynciv (will be remapped) */ "iiipp\0" "glGetSynciv\0" "\0" - /* _mesa_function_pool[22932]: ClearColorIiEXT (will be remapped) */ + /* _mesa_function_pool[23397]: ClearColorIiEXT (will be remapped) */ "iiii\0" "glClearColorIiEXT\0" "\0" - /* _mesa_function_pool[22956]: DeleteFramebuffersEXT (will be remapped) */ + /* _mesa_function_pool[23421]: DeleteFramebuffersEXT (will be remapped) */ "ip\0" "glDeleteFramebuffers\0" "glDeleteFramebuffersEXT\0" "\0" - /* _mesa_function_pool[23005]: GlobalAlphaFactorsSUN (dynamic) */ + /* _mesa_function_pool[23470]: GlobalAlphaFactorsSUN (dynamic) */ "i\0" "glGlobalAlphaFactorsSUN\0" "\0" - /* _mesa_function_pool[23032]: IsEnabledIndexedEXT (will be remapped) */ + /* _mesa_function_pool[23497]: IsEnabledIndexedEXT (will be remapped) */ "ii\0" "glIsEnabledIndexedEXT\0" "glIsEnabledi\0" "\0" - /* _mesa_function_pool[23071]: TexEnviv (offset 187) */ + /* _mesa_function_pool[23536]: TexEnviv (offset 187) */ "iip\0" "glTexEnviv\0" "\0" - /* _mesa_function_pool[23087]: TexSubImage3D (offset 372) */ + /* _mesa_function_pool[23552]: TexSubImage3D (offset 372) */ "iiiiiiiiiip\0" "glTexSubImage3D\0" "glTexSubImage3DEXT\0" "\0" - /* _mesa_function_pool[23135]: Tangent3fEXT (dynamic) */ + /* _mesa_function_pool[23600]: Tangent3fEXT (dynamic) */ "fff\0" "glTangent3fEXT\0" "\0" - /* _mesa_function_pool[23155]: SecondaryColor3uivEXT (will be remapped) */ + /* _mesa_function_pool[23620]: SecondaryColor3uivEXT (will be remapped) */ "p\0" "glSecondaryColor3uiv\0" "glSecondaryColor3uivEXT\0" "\0" - /* _mesa_function_pool[23203]: MatrixIndexubvARB (dynamic) */ + /* _mesa_function_pool[23668]: MatrixIndexubvARB (dynamic) */ "ip\0" "glMatrixIndexubvARB\0" "\0" - /* _mesa_function_pool[23227]: Color4fNormal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[23692]: Color4fNormal3fVertex3fSUN (dynamic) */ "ffffffffff\0" "glColor4fNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[23268]: PixelTexGenParameterfSGIS (will be remapped) */ + /* _mesa_function_pool[23733]: PixelTexGenParameterfSGIS (will be remapped) */ "if\0" "glPixelTexGenParameterfSGIS\0" "\0" - /* _mesa_function_pool[23300]: CreateShader (will be remapped) */ + /* _mesa_function_pool[23765]: CreateShader (will be remapped) */ "i\0" "glCreateShader\0" "\0" - /* _mesa_function_pool[23318]: GetColorTableParameterfv (offset 344) */ + /* _mesa_function_pool[23783]: GetColorTableParameterfv (offset 344) */ "iip\0" "glGetColorTableParameterfv\0" "glGetColorTableParameterfvSGI\0" "glGetColorTableParameterfvEXT\0" "\0" - /* _mesa_function_pool[23410]: FragmentLightModelfvSGIX (dynamic) */ + /* _mesa_function_pool[23875]: FragmentLightModelfvSGIX (dynamic) */ "ip\0" "glFragmentLightModelfvSGIX\0" "\0" - /* _mesa_function_pool[23441]: Bitmap (offset 8) */ + /* _mesa_function_pool[23906]: Bitmap (offset 8) */ "iiffffp\0" "glBitmap\0" "\0" - /* _mesa_function_pool[23459]: MultiTexCoord3fARB (offset 394) */ + /* _mesa_function_pool[23924]: MultiTexCoord3fARB (offset 394) */ "ifff\0" "glMultiTexCoord3f\0" "glMultiTexCoord3fARB\0" "\0" - /* _mesa_function_pool[23504]: GetTexLevelParameterfv (offset 284) */ + /* _mesa_function_pool[23969]: GetTexLevelParameterfv (offset 284) */ "iiip\0" "glGetTexLevelParameterfv\0" "\0" - /* _mesa_function_pool[23535]: GetPixelTexGenParameterfvSGIS (will be remapped) */ + /* _mesa_function_pool[24000]: GetPixelTexGenParameterfvSGIS (will be remapped) */ "ip\0" "glGetPixelTexGenParameterfvSGIS\0" "\0" - /* _mesa_function_pool[23571]: GenFramebuffersEXT (will be remapped) */ + /* _mesa_function_pool[24036]: GenFramebuffersEXT (will be remapped) */ "ip\0" "glGenFramebuffers\0" "glGenFramebuffersEXT\0" "\0" - /* _mesa_function_pool[23614]: VertexAttribDivisor (will be remapped) */ + /* _mesa_function_pool[24079]: VertexAttribDivisor (will be remapped) */ "ii\0" "glVertexAttribDivisor\0" "\0" - /* _mesa_function_pool[23640]: GetProgramParameterdvNV (will be remapped) */ + /* _mesa_function_pool[24105]: GetProgramParameterdvNV (will be remapped) */ "iiip\0" "glGetProgramParameterdvNV\0" "\0" - /* _mesa_function_pool[23672]: Vertex2sv (offset 133) */ + /* _mesa_function_pool[24137]: Vertex2sv (offset 133) */ "p\0" "glVertex2sv\0" "\0" - /* _mesa_function_pool[23687]: GetIntegerv (offset 263) */ + /* _mesa_function_pool[24152]: GetIntegerv (offset 263) */ "ip\0" "glGetIntegerv\0" "\0" - /* _mesa_function_pool[23705]: IsVertexArrayAPPLE (will be remapped) */ + /* _mesa_function_pool[24170]: IsVertexArrayAPPLE (will be remapped) */ "i\0" "glIsVertexArray\0" "glIsVertexArrayAPPLE\0" "\0" - /* _mesa_function_pool[23745]: FragmentLightfvSGIX (dynamic) */ + /* _mesa_function_pool[24210]: FragmentLightfvSGIX (dynamic) */ "iip\0" "glFragmentLightfvSGIX\0" "\0" - /* _mesa_function_pool[23772]: VertexAttribDivisorARB (will be remapped) */ - "ii\0" - "glVertexAttribDivisorARB\0" + /* _mesa_function_pool[24237]: GetnMapdvARB (will be remapped) */ + "iiip\0" + "glGetnMapdvARB\0" "\0" - /* _mesa_function_pool[23801]: DetachShader (will be remapped) */ + /* _mesa_function_pool[24258]: DetachShader (will be remapped) */ "ii\0" "glDetachShader\0" "\0" - /* _mesa_function_pool[23820]: VertexAttrib4NubARB (will be remapped) */ + /* _mesa_function_pool[24277]: VertexAttrib4NubARB (will be remapped) */ "iiiii\0" "glVertexAttrib4Nub\0" "glVertexAttrib4NubARB\0" "\0" - /* _mesa_function_pool[23868]: GetProgramEnvParameterfvARB (will be remapped) */ + /* _mesa_function_pool[24325]: GetProgramEnvParameterfvARB (will be remapped) */ "iip\0" "glGetProgramEnvParameterfvARB\0" "\0" - /* _mesa_function_pool[23903]: GetTrackMatrixivNV (will be remapped) */ + /* _mesa_function_pool[24360]: GetTrackMatrixivNV (will be remapped) */ "iiip\0" "glGetTrackMatrixivNV\0" "\0" - /* _mesa_function_pool[23930]: VertexAttrib3svNV (will be remapped) */ + /* _mesa_function_pool[24387]: VertexAttrib3svNV (will be remapped) */ "ip\0" "glVertexAttrib3svNV\0" "\0" - /* _mesa_function_pool[23954]: Uniform4fvARB (will be remapped) */ + /* _mesa_function_pool[24411]: Uniform4fvARB (will be remapped) */ "iip\0" "glUniform4fv\0" "glUniform4fvARB\0" "\0" - /* _mesa_function_pool[23988]: MultTransposeMatrixfARB (will be remapped) */ + /* _mesa_function_pool[24445]: MultTransposeMatrixfARB (will be remapped) */ "p\0" "glMultTransposeMatrixf\0" "glMultTransposeMatrixfARB\0" "\0" - /* _mesa_function_pool[24040]: GetTexEnviv (offset 277) */ + /* _mesa_function_pool[24497]: GetTexEnviv (offset 277) */ "iip\0" "glGetTexEnviv\0" "\0" - /* _mesa_function_pool[24059]: ColorFragmentOp1ATI (will be remapped) */ + /* _mesa_function_pool[24516]: ColorFragmentOp1ATI (will be remapped) */ "iiiiiii\0" "glColorFragmentOp1ATI\0" "\0" - /* _mesa_function_pool[24090]: GetUniformfvARB (will be remapped) */ + /* _mesa_function_pool[24547]: GetUniformfvARB (will be remapped) */ "iip\0" "glGetUniformfv\0" "glGetUniformfvARB\0" "\0" - /* _mesa_function_pool[24128]: EGLImageTargetRenderbufferStorageOES (will be remapped) */ + /* _mesa_function_pool[24585]: EGLImageTargetRenderbufferStorageOES (will be remapped) */ "ip\0" "glEGLImageTargetRenderbufferStorageOES\0" "\0" - /* _mesa_function_pool[24171]: VertexAttribI2ivEXT (will be remapped) */ + /* _mesa_function_pool[24628]: VertexAttribI2ivEXT (will be remapped) */ "ip\0" "glVertexAttribI2ivEXT\0" "glVertexAttribI2iv\0" "\0" - /* _mesa_function_pool[24216]: PopClientAttrib (offset 334) */ + /* _mesa_function_pool[24673]: PopClientAttrib (offset 334) */ "\0" "glPopClientAttrib\0" "\0" - /* _mesa_function_pool[24236]: ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[24693]: ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN (dynamic) */ "iffffffffffff\0" "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[24307]: DetachObjectARB (will be remapped) */ + /* _mesa_function_pool[24764]: DetachObjectARB (will be remapped) */ "ii\0" "glDetachObjectARB\0" "\0" - /* _mesa_function_pool[24329]: VertexBlendARB (dynamic) */ + /* _mesa_function_pool[24786]: VertexBlendARB (dynamic) */ "i\0" "glVertexBlendARB\0" "\0" - /* _mesa_function_pool[24349]: WindowPos3iMESA (will be remapped) */ + /* _mesa_function_pool[24806]: WindowPos3iMESA (will be remapped) */ "iii\0" "glWindowPos3i\0" "glWindowPos3iARB\0" "glWindowPos3iMESA\0" "\0" - /* _mesa_function_pool[24403]: SeparableFilter2D (offset 360) */ + /* _mesa_function_pool[24860]: SeparableFilter2D (offset 360) */ "iiiiiipp\0" "glSeparableFilter2D\0" "glSeparableFilter2DEXT\0" "\0" - /* _mesa_function_pool[24456]: ProgramParameteriARB (will be remapped) */ + /* _mesa_function_pool[24913]: ProgramParameteriARB (will be remapped) */ "iii\0" "glProgramParameteriARB\0" "\0" - /* _mesa_function_pool[24484]: Map1d (offset 220) */ + /* _mesa_function_pool[24941]: Map1d (offset 220) */ "iddiip\0" "glMap1d\0" "\0" - /* _mesa_function_pool[24500]: Map1f (offset 221) */ + /* _mesa_function_pool[24957]: Map1f (offset 221) */ "iffiip\0" "glMap1f\0" "\0" - /* _mesa_function_pool[24516]: CompressedTexImage2DARB (will be remapped) */ + /* _mesa_function_pool[24973]: CompressedTexImage2DARB (will be remapped) */ "iiiiiiip\0" "glCompressedTexImage2D\0" "glCompressedTexImage2DARB\0" "\0" - /* _mesa_function_pool[24575]: ArrayElement (offset 306) */ + /* _mesa_function_pool[25032]: ArrayElement (offset 306) */ "i\0" "glArrayElement\0" "glArrayElementEXT\0" "\0" - /* _mesa_function_pool[24611]: TexImage2D (offset 183) */ + /* _mesa_function_pool[25068]: TexImage2D (offset 183) */ "iiiiiiiip\0" "glTexImage2D\0" "\0" - /* _mesa_function_pool[24635]: DepthBoundsEXT (will be remapped) */ + /* _mesa_function_pool[25092]: DepthBoundsEXT (will be remapped) */ "dd\0" "glDepthBoundsEXT\0" "\0" - /* _mesa_function_pool[24656]: ProgramParameters4fvNV (will be remapped) */ + /* _mesa_function_pool[25113]: ProgramParameters4fvNV (will be remapped) */ "iiip\0" "glProgramParameters4fvNV\0" "\0" - /* _mesa_function_pool[24687]: DeformationMap3fSGIX (dynamic) */ + /* _mesa_function_pool[25144]: DeformationMap3fSGIX (dynamic) */ "iffiiffiiffiip\0" "glDeformationMap3fSGIX\0" "\0" - /* _mesa_function_pool[24726]: GetProgramivNV (will be remapped) */ + /* _mesa_function_pool[25183]: GetProgramivNV (will be remapped) */ "iip\0" "glGetProgramivNV\0" "\0" - /* _mesa_function_pool[24748]: GetFragDataLocationEXT (will be remapped) */ + /* _mesa_function_pool[25205]: GetFragDataLocationEXT (will be remapped) */ "ip\0" "glGetFragDataLocationEXT\0" "glGetFragDataLocation\0" "\0" - /* _mesa_function_pool[24799]: GetMinmaxParameteriv (offset 366) */ + /* _mesa_function_pool[25256]: GetMinmaxParameteriv (offset 366) */ "iip\0" "glGetMinmaxParameteriv\0" "glGetMinmaxParameterivEXT\0" "\0" - /* _mesa_function_pool[24853]: PixelTransferf (offset 247) */ + /* _mesa_function_pool[25310]: PixelTransferf (offset 247) */ "if\0" "glPixelTransferf\0" "\0" - /* _mesa_function_pool[24874]: CopyTexImage1D (offset 323) */ + /* _mesa_function_pool[25331]: CopyTexImage1D (offset 323) */ "iiiiiii\0" "glCopyTexImage1D\0" "glCopyTexImage1DEXT\0" "\0" - /* _mesa_function_pool[24920]: PushMatrix (offset 298) */ + /* _mesa_function_pool[25377]: PushMatrix (offset 298) */ "\0" "glPushMatrix\0" "\0" - /* _mesa_function_pool[24935]: Fogiv (offset 156) */ + /* _mesa_function_pool[25392]: Fogiv (offset 156) */ "ip\0" "glFogiv\0" "\0" - /* _mesa_function_pool[24947]: TexCoord1dv (offset 95) */ + /* _mesa_function_pool[25404]: TexCoord1dv (offset 95) */ "p\0" "glTexCoord1dv\0" "\0" - /* _mesa_function_pool[24964]: AlphaFragmentOp3ATI (will be remapped) */ + /* _mesa_function_pool[25421]: AlphaFragmentOp3ATI (will be remapped) */ "iiiiiiiiiiii\0" "glAlphaFragmentOp3ATI\0" "\0" - /* _mesa_function_pool[25000]: PixelTransferi (offset 248) */ + /* _mesa_function_pool[25457]: PixelTransferi (offset 248) */ "ii\0" "glPixelTransferi\0" "\0" - /* _mesa_function_pool[25021]: GetVertexAttribdvNV (will be remapped) */ - "iip\0" - "glGetVertexAttribdvNV\0" + /* _mesa_function_pool[25478]: GetnColorTableARB (will be remapped) */ + "iiiip\0" + "glGetnColorTableARB\0" "\0" - /* _mesa_function_pool[25048]: VertexAttrib3fvNV (will be remapped) */ + /* _mesa_function_pool[25505]: VertexAttrib3fvNV (will be remapped) */ "ip\0" "glVertexAttrib3fvNV\0" "\0" - /* _mesa_function_pool[25072]: Rotatef (offset 300) */ + /* _mesa_function_pool[25529]: Rotatef (offset 300) */ "ffff\0" "glRotatef\0" "\0" - /* _mesa_function_pool[25088]: GetFinalCombinerInputParameterivNV (will be remapped) */ + /* _mesa_function_pool[25545]: GetFinalCombinerInputParameterivNV (will be remapped) */ "iip\0" "glGetFinalCombinerInputParameterivNV\0" "\0" - /* _mesa_function_pool[25130]: Vertex3i (offset 138) */ + /* _mesa_function_pool[25587]: Vertex3i (offset 138) */ "iii\0" "glVertex3i\0" "\0" - /* _mesa_function_pool[25146]: Vertex3f (offset 136) */ + /* _mesa_function_pool[25603]: Vertex3f (offset 136) */ "fff\0" "glVertex3f\0" "\0" - /* _mesa_function_pool[25162]: Clear (offset 203) */ + /* _mesa_function_pool[25619]: Clear (offset 203) */ "i\0" "glClear\0" "\0" - /* _mesa_function_pool[25173]: Vertex3d (offset 134) */ + /* _mesa_function_pool[25630]: Vertex3d (offset 134) */ "ddd\0" "glVertex3d\0" "\0" - /* _mesa_function_pool[25189]: GetMapParameterivNV (dynamic) */ + /* _mesa_function_pool[25646]: GetMapParameterivNV (dynamic) */ "iip\0" "glGetMapParameterivNV\0" "\0" - /* _mesa_function_pool[25216]: Uniform4iARB (will be remapped) */ + /* _mesa_function_pool[25673]: Uniform4iARB (will be remapped) */ "iiiii\0" "glUniform4i\0" "glUniform4iARB\0" "\0" - /* _mesa_function_pool[25250]: ReadBuffer (offset 254) */ + /* _mesa_function_pool[25707]: ReadBuffer (offset 254) */ "i\0" "glReadBuffer\0" "\0" - /* _mesa_function_pool[25266]: ConvolutionParameteri (offset 352) */ + /* _mesa_function_pool[25723]: ConvolutionParameteri (offset 352) */ "iii\0" "glConvolutionParameteri\0" "glConvolutionParameteriEXT\0" "\0" - /* _mesa_function_pool[25322]: Ortho (offset 296) */ + /* _mesa_function_pool[25779]: Ortho (offset 296) */ "dddddd\0" "glOrtho\0" "\0" - /* _mesa_function_pool[25338]: Binormal3sEXT (dynamic) */ + /* _mesa_function_pool[25795]: Binormal3sEXT (dynamic) */ "iii\0" "glBinormal3sEXT\0" "\0" - /* _mesa_function_pool[25359]: ListBase (offset 6) */ + /* _mesa_function_pool[25816]: ListBase (offset 6) */ "i\0" "glListBase\0" "\0" - /* _mesa_function_pool[25373]: VertexAttribI3ivEXT (will be remapped) */ + /* _mesa_function_pool[25830]: VertexAttribI3ivEXT (will be remapped) */ "ip\0" "glVertexAttribI3ivEXT\0" "glVertexAttribI3iv\0" "\0" - /* _mesa_function_pool[25418]: Vertex3s (offset 140) */ + /* _mesa_function_pool[25875]: Vertex3s (offset 140) */ "iii\0" "glVertex3s\0" "\0" - /* _mesa_function_pool[25434]: ConvolutionParameterf (offset 350) */ + /* _mesa_function_pool[25891]: ConvolutionParameterf (offset 350) */ "iif\0" "glConvolutionParameterf\0" "glConvolutionParameterfEXT\0" "\0" - /* _mesa_function_pool[25490]: GetColorTableParameteriv (offset 345) */ + /* _mesa_function_pool[25947]: GetColorTableParameteriv (offset 345) */ "iip\0" "glGetColorTableParameteriv\0" "glGetColorTableParameterivSGI\0" "glGetColorTableParameterivEXT\0" "\0" - /* _mesa_function_pool[25582]: ProgramEnvParameter4dvARB (will be remapped) */ + /* _mesa_function_pool[26039]: ProgramEnvParameter4dvARB (will be remapped) */ "iip\0" "glProgramEnvParameter4dvARB\0" "glProgramParameter4dvNV\0" "\0" - /* _mesa_function_pool[25639]: ShadeModel (offset 177) */ + /* _mesa_function_pool[26096]: ShadeModel (offset 177) */ "i\0" "glShadeModel\0" "\0" - /* _mesa_function_pool[25655]: VertexAttribs2fvNV (will be remapped) */ + /* _mesa_function_pool[26112]: VertexAttribs2fvNV (will be remapped) */ "iip\0" "glVertexAttribs2fvNV\0" "\0" - /* _mesa_function_pool[25681]: Rectiv (offset 91) */ + /* _mesa_function_pool[26138]: Rectiv (offset 91) */ "pp\0" "glRectiv\0" "\0" - /* _mesa_function_pool[25694]: UseProgramObjectARB (will be remapped) */ + /* _mesa_function_pool[26151]: UseProgramObjectARB (will be remapped) */ "i\0" "glUseProgram\0" "glUseProgramObjectARB\0" "\0" - /* _mesa_function_pool[25732]: GetMapParameterfvNV (dynamic) */ + /* _mesa_function_pool[26189]: GetMapParameterfvNV (dynamic) */ "iip\0" "glGetMapParameterfvNV\0" "\0" - /* _mesa_function_pool[25759]: EndConditionalRenderNV (will be remapped) */ + /* _mesa_function_pool[26216]: EndConditionalRenderNV (will be remapped) */ "\0" "glEndConditionalRenderNV\0" "glEndConditionalRender\0" "\0" - /* _mesa_function_pool[25809]: PassTexCoordATI (will be remapped) */ + /* _mesa_function_pool[26266]: PassTexCoordATI (will be remapped) */ "iii\0" "glPassTexCoordATI\0" "\0" - /* _mesa_function_pool[25832]: DeleteProgram (will be remapped) */ + /* _mesa_function_pool[26289]: DeleteProgram (will be remapped) */ "i\0" "glDeleteProgram\0" "\0" - /* _mesa_function_pool[25851]: GetSamplerParameteriv (will be remapped) */ + /* _mesa_function_pool[26308]: GetSamplerParameteriv (will be remapped) */ "iip\0" "glGetSamplerParameteriv\0" "\0" - /* _mesa_function_pool[25880]: Tangent3dEXT (dynamic) */ + /* _mesa_function_pool[26337]: Tangent3dEXT (dynamic) */ "ddd\0" "glTangent3dEXT\0" "\0" - /* _mesa_function_pool[25900]: SecondaryColor3dvEXT (will be remapped) */ + /* _mesa_function_pool[26357]: SecondaryColor3dvEXT (will be remapped) */ "p\0" "glSecondaryColor3dv\0" "glSecondaryColor3dvEXT\0" "\0" - /* _mesa_function_pool[25946]: AlphaFragmentOp2ATI (will be remapped) */ + /* _mesa_function_pool[26403]: AlphaFragmentOp2ATI (will be remapped) */ "iiiiiiiii\0" "glAlphaFragmentOp2ATI\0" "\0" - /* _mesa_function_pool[25979]: Vertex2fv (offset 129) */ + /* _mesa_function_pool[26436]: Vertex2fv (offset 129) */ "p\0" "glVertex2fv\0" "\0" - /* _mesa_function_pool[25994]: MultiDrawArraysEXT (will be remapped) */ + /* _mesa_function_pool[26451]: MultiDrawArraysEXT (will be remapped) */ "ippi\0" "glMultiDrawArrays\0" "glMultiDrawArraysEXT\0" "\0" - /* _mesa_function_pool[26039]: BindRenderbufferEXT (will be remapped) */ + /* _mesa_function_pool[26496]: BindRenderbufferEXT (will be remapped) */ "ii\0" "glBindRenderbuffer\0" "glBindRenderbufferEXT\0" "\0" - /* _mesa_function_pool[26084]: MultiTexCoord4dARB (offset 400) */ + /* _mesa_function_pool[26541]: MultiTexCoord4dARB (offset 400) */ "idddd\0" "glMultiTexCoord4d\0" "glMultiTexCoord4dARB\0" "\0" - /* _mesa_function_pool[26130]: FramebufferTextureFaceARB (will be remapped) */ + /* _mesa_function_pool[26587]: FramebufferTextureFaceARB (will be remapped) */ "iiiii\0" "glFramebufferTextureFaceARB\0" "\0" - /* _mesa_function_pool[26165]: Vertex3sv (offset 141) */ + /* _mesa_function_pool[26622]: Vertex3sv (offset 141) */ "p\0" "glVertex3sv\0" "\0" - /* _mesa_function_pool[26180]: SecondaryColor3usEXT (will be remapped) */ + /* _mesa_function_pool[26637]: SecondaryColor3usEXT (will be remapped) */ "iii\0" "glSecondaryColor3us\0" "glSecondaryColor3usEXT\0" "\0" - /* _mesa_function_pool[26228]: ProgramLocalParameter4fvARB (will be remapped) */ + /* _mesa_function_pool[26685]: ProgramLocalParameter4fvARB (will be remapped) */ "iip\0" "glProgramLocalParameter4fvARB\0" "\0" - /* _mesa_function_pool[26263]: DeleteProgramsNV (will be remapped) */ + /* _mesa_function_pool[26720]: DeleteProgramsNV (will be remapped) */ "ip\0" "glDeleteProgramsARB\0" "glDeleteProgramsNV\0" "\0" - /* _mesa_function_pool[26306]: EvalMesh1 (offset 236) */ + /* _mesa_function_pool[26763]: EvalMesh1 (offset 236) */ "iii\0" "glEvalMesh1\0" "\0" - /* _mesa_function_pool[26323]: PauseTransformFeedback (will be remapped) */ + /* _mesa_function_pool[26780]: PauseTransformFeedback (will be remapped) */ "\0" "glPauseTransformFeedback\0" "\0" - /* _mesa_function_pool[26350]: MultiTexCoord1sARB (offset 382) */ + /* _mesa_function_pool[26807]: MultiTexCoord1sARB (offset 382) */ "ii\0" "glMultiTexCoord1s\0" "glMultiTexCoord1sARB\0" "\0" - /* _mesa_function_pool[26393]: ReplacementCodeuiColor3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[26850]: ReplacementCodeuiColor3fVertex3fSUN (dynamic) */ "iffffff\0" "glReplacementCodeuiColor3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[26440]: GetVertexAttribPointervNV (will be remapped) */ + /* _mesa_function_pool[26897]: GetVertexAttribPointervNV (will be remapped) */ "iip\0" "glGetVertexAttribPointerv\0" "glGetVertexAttribPointervARB\0" "glGetVertexAttribPointervNV\0" "\0" - /* _mesa_function_pool[26528]: VertexAttribs1fvNV (will be remapped) */ + /* _mesa_function_pool[26985]: VertexAttribs1fvNV (will be remapped) */ "iip\0" "glVertexAttribs1fvNV\0" "\0" - /* _mesa_function_pool[26554]: MultiTexCoord1dvARB (offset 377) */ + /* _mesa_function_pool[27011]: MultiTexCoord1dvARB (offset 377) */ "ip\0" "glMultiTexCoord1dv\0" "glMultiTexCoord1dvARB\0" "\0" - /* _mesa_function_pool[26599]: Uniform2iARB (will be remapped) */ + /* _mesa_function_pool[27056]: Uniform2iARB (will be remapped) */ "iii\0" "glUniform2i\0" "glUniform2iARB\0" "\0" - /* _mesa_function_pool[26631]: Vertex2iv (offset 131) */ + /* _mesa_function_pool[27088]: Vertex2iv (offset 131) */ "p\0" "glVertex2iv\0" "\0" - /* _mesa_function_pool[26646]: GetProgramStringNV (will be remapped) */ + /* _mesa_function_pool[27103]: GetProgramStringNV (will be remapped) */ "iip\0" "glGetProgramStringNV\0" "\0" - /* _mesa_function_pool[26672]: ColorPointerEXT (will be remapped) */ + /* _mesa_function_pool[27129]: ColorPointerEXT (will be remapped) */ "iiiip\0" "glColorPointerEXT\0" "\0" - /* _mesa_function_pool[26697]: LineWidth (offset 168) */ + /* _mesa_function_pool[27154]: LineWidth (offset 168) */ "f\0" "glLineWidth\0" "\0" - /* _mesa_function_pool[26712]: MapBufferARB (will be remapped) */ + /* _mesa_function_pool[27169]: MapBufferARB (will be remapped) */ "ii\0" "glMapBuffer\0" "glMapBufferARB\0" "\0" - /* _mesa_function_pool[26743]: MultiDrawElementsBaseVertex (will be remapped) */ + /* _mesa_function_pool[27200]: MultiDrawElementsBaseVertex (will be remapped) */ "ipipip\0" "glMultiDrawElementsBaseVertex\0" "\0" - /* _mesa_function_pool[26781]: TexParameterIuivEXT (will be remapped) */ + /* _mesa_function_pool[27238]: TexParameterIuivEXT (will be remapped) */ "iip\0" "glTexParameterIuivEXT\0" "glTexParameterIuiv\0" "\0" - /* _mesa_function_pool[26827]: Binormal3svEXT (dynamic) */ + /* _mesa_function_pool[27284]: Binormal3svEXT (dynamic) */ "p\0" "glBinormal3svEXT\0" "\0" - /* _mesa_function_pool[26847]: ApplyTextureEXT (dynamic) */ + /* _mesa_function_pool[27304]: ApplyTextureEXT (dynamic) */ "i\0" "glApplyTextureEXT\0" "\0" - /* _mesa_function_pool[26868]: GetBufferParameteri64v (will be remapped) */ + /* _mesa_function_pool[27325]: GetBufferParameteri64v (will be remapped) */ "iip\0" "glGetBufferParameteri64v\0" "\0" - /* _mesa_function_pool[26898]: TexGendv (offset 189) */ + /* _mesa_function_pool[27355]: TexGendv (offset 189) */ "iip\0" "glTexGendv\0" "\0" - /* _mesa_function_pool[26914]: VertexAttribI3iEXT (will be remapped) */ + /* _mesa_function_pool[27371]: VertexAttribI3iEXT (will be remapped) */ "iiii\0" "glVertexAttribI3iEXT\0" "glVertexAttribI3i\0" "\0" - /* _mesa_function_pool[26959]: EnableIndexedEXT (will be remapped) */ + /* _mesa_function_pool[27416]: EnableIndexedEXT (will be remapped) */ "ii\0" "glEnableIndexedEXT\0" "glEnablei\0" "\0" - /* _mesa_function_pool[26992]: TextureMaterialEXT (dynamic) */ + /* _mesa_function_pool[27449]: TextureMaterialEXT (dynamic) */ "ii\0" "glTextureMaterialEXT\0" "\0" - /* _mesa_function_pool[27017]: TextureLightEXT (dynamic) */ + /* _mesa_function_pool[27474]: TextureLightEXT (dynamic) */ "i\0" "glTextureLightEXT\0" "\0" - /* _mesa_function_pool[27038]: ResetMinmax (offset 370) */ + /* _mesa_function_pool[27495]: ResetMinmax (offset 370) */ "i\0" "glResetMinmax\0" "glResetMinmaxEXT\0" "\0" - /* _mesa_function_pool[27072]: SpriteParameterfSGIX (dynamic) */ + /* _mesa_function_pool[27529]: SpriteParameterfSGIX (dynamic) */ "if\0" "glSpriteParameterfSGIX\0" "\0" - /* _mesa_function_pool[27099]: EnableClientState (offset 313) */ + /* _mesa_function_pool[27556]: EnableClientState (offset 313) */ "i\0" "glEnableClientState\0" "\0" - /* _mesa_function_pool[27122]: VertexAttrib4sNV (will be remapped) */ + /* _mesa_function_pool[27579]: VertexAttrib4sNV (will be remapped) */ "iiiii\0" "glVertexAttrib4sNV\0" "\0" - /* _mesa_function_pool[27148]: GetConvolutionParameterfv (offset 357) */ + /* _mesa_function_pool[27605]: GetConvolutionParameterfv (offset 357) */ "iip\0" "glGetConvolutionParameterfv\0" "glGetConvolutionParameterfvEXT\0" "\0" - /* _mesa_function_pool[27212]: VertexAttribs4dvNV (will be remapped) */ + /* _mesa_function_pool[27669]: VertexAttribs4dvNV (will be remapped) */ "iip\0" "glVertexAttribs4dvNV\0" "\0" - /* _mesa_function_pool[27238]: VertexAttrib4dARB (will be remapped) */ + /* _mesa_function_pool[27695]: MultiModeDrawArraysIBM (will be remapped) */ + "pppii\0" + "glMultiModeDrawArraysIBM\0" + "\0" + /* _mesa_function_pool[27727]: VertexAttrib4dARB (will be remapped) */ "idddd\0" "glVertexAttrib4d\0" "glVertexAttrib4dARB\0" "\0" - /* _mesa_function_pool[27282]: GetTexBumpParameterfvATI (will be remapped) */ + /* _mesa_function_pool[27771]: GetTexBumpParameterfvATI (will be remapped) */ "ip\0" "glGetTexBumpParameterfvATI\0" "\0" - /* _mesa_function_pool[27313]: ProgramNamedParameter4dNV (will be remapped) */ + /* _mesa_function_pool[27802]: ProgramNamedParameter4dNV (will be remapped) */ "iipdddd\0" "glProgramNamedParameter4dNV\0" "\0" - /* _mesa_function_pool[27350]: GetMaterialfv (offset 269) */ + /* _mesa_function_pool[27839]: GetMaterialfv (offset 269) */ "iip\0" "glGetMaterialfv\0" "\0" - /* _mesa_function_pool[27371]: VertexWeightfEXT (dynamic) */ + /* _mesa_function_pool[27860]: VertexWeightfEXT (dynamic) */ "f\0" "glVertexWeightfEXT\0" "\0" - /* _mesa_function_pool[27393]: SetFragmentShaderConstantATI (will be remapped) */ + /* _mesa_function_pool[27882]: SetFragmentShaderConstantATI (will be remapped) */ "ip\0" "glSetFragmentShaderConstantATI\0" "\0" - /* _mesa_function_pool[27428]: Binormal3fEXT (dynamic) */ + /* _mesa_function_pool[27917]: Binormal3fEXT (dynamic) */ "fff\0" "glBinormal3fEXT\0" "\0" - /* _mesa_function_pool[27449]: CallList (offset 2) */ + /* _mesa_function_pool[27938]: CallList (offset 2) */ "i\0" "glCallList\0" "\0" - /* _mesa_function_pool[27463]: Materialfv (offset 170) */ + /* _mesa_function_pool[27952]: Materialfv (offset 170) */ "iip\0" "glMaterialfv\0" "\0" - /* _mesa_function_pool[27481]: TexCoord3fv (offset 113) */ + /* _mesa_function_pool[27970]: TexCoord3fv (offset 113) */ "p\0" "glTexCoord3fv\0" "\0" - /* _mesa_function_pool[27498]: FogCoordfvEXT (will be remapped) */ + /* _mesa_function_pool[27987]: FogCoordfvEXT (will be remapped) */ "p\0" "glFogCoordfv\0" "glFogCoordfvEXT\0" "\0" - /* _mesa_function_pool[27530]: MultiTexCoord1ivARB (offset 381) */ + /* _mesa_function_pool[28019]: MultiTexCoord1ivARB (offset 381) */ "ip\0" "glMultiTexCoord1iv\0" "glMultiTexCoord1ivARB\0" "\0" - /* _mesa_function_pool[27575]: SecondaryColor3ubEXT (will be remapped) */ + /* _mesa_function_pool[28064]: SecondaryColor3ubEXT (will be remapped) */ "iii\0" "glSecondaryColor3ub\0" "glSecondaryColor3ubEXT\0" "\0" - /* _mesa_function_pool[27623]: MultiTexCoord2ivARB (offset 389) */ + /* _mesa_function_pool[28112]: MultiTexCoord2ivARB (offset 389) */ "ip\0" "glMultiTexCoord2iv\0" "glMultiTexCoord2ivARB\0" "\0" - /* _mesa_function_pool[27668]: FogFuncSGIS (dynamic) */ + /* _mesa_function_pool[28157]: FogFuncSGIS (dynamic) */ "ip\0" "glFogFuncSGIS\0" "\0" - /* _mesa_function_pool[27686]: CopyTexSubImage2D (offset 326) */ + /* _mesa_function_pool[28175]: CopyTexSubImage2D (offset 326) */ "iiiiiiii\0" "glCopyTexSubImage2D\0" "glCopyTexSubImage2DEXT\0" "\0" - /* _mesa_function_pool[27739]: GetObjectParameterivARB (will be remapped) */ + /* _mesa_function_pool[28228]: GetObjectParameterivARB (will be remapped) */ "iip\0" "glGetObjectParameterivARB\0" "\0" - /* _mesa_function_pool[27770]: Color3iv (offset 16) */ + /* _mesa_function_pool[28259]: Color3iv (offset 16) */ "p\0" "glColor3iv\0" "\0" - /* _mesa_function_pool[27784]: TexCoord4fVertex4fSUN (dynamic) */ + /* _mesa_function_pool[28273]: TexCoord4fVertex4fSUN (dynamic) */ "ffffffff\0" "glTexCoord4fVertex4fSUN\0" "\0" - /* _mesa_function_pool[27818]: DrawElements (offset 311) */ + /* _mesa_function_pool[28307]: DrawElements (offset 311) */ "iiip\0" "glDrawElements\0" "\0" - /* _mesa_function_pool[27839]: BindVertexArrayAPPLE (will be remapped) */ + /* _mesa_function_pool[28328]: BindVertexArrayAPPLE (will be remapped) */ "i\0" "glBindVertexArrayAPPLE\0" "\0" - /* _mesa_function_pool[27865]: GetProgramLocalParameterdvARB (will be remapped) */ + /* _mesa_function_pool[28354]: GetProgramLocalParameterdvARB (will be remapped) */ "iip\0" "glGetProgramLocalParameterdvARB\0" "\0" - /* _mesa_function_pool[27902]: GetHistogramParameteriv (offset 363) */ + /* _mesa_function_pool[28391]: GetHistogramParameteriv (offset 363) */ "iip\0" "glGetHistogramParameteriv\0" "glGetHistogramParameterivEXT\0" "\0" - /* _mesa_function_pool[27962]: MultiTexCoord1iARB (offset 380) */ + /* _mesa_function_pool[28451]: MultiTexCoord1iARB (offset 380) */ "ii\0" "glMultiTexCoord1i\0" "glMultiTexCoord1iARB\0" "\0" - /* _mesa_function_pool[28005]: GetConvolutionFilter (offset 356) */ + /* _mesa_function_pool[28494]: GetConvolutionFilter (offset 356) */ "iiip\0" "glGetConvolutionFilter\0" "glGetConvolutionFilterEXT\0" "\0" - /* _mesa_function_pool[28060]: GetProgramivARB (will be remapped) */ + /* _mesa_function_pool[28549]: GetProgramivARB (will be remapped) */ "iip\0" "glGetProgramivARB\0" "\0" - /* _mesa_function_pool[28083]: TexBufferARB (will be remapped) */ + /* _mesa_function_pool[28572]: TexBufferARB (will be remapped) */ "iii\0" "glTexBufferARB\0" "\0" - /* _mesa_function_pool[28103]: BlendFuncSeparateEXT (will be remapped) */ + /* _mesa_function_pool[28592]: BlendFuncSeparateEXT (will be remapped) */ "iiii\0" "glBlendFuncSeparate\0" "glBlendFuncSeparateEXT\0" "glBlendFuncSeparateINGR\0" "\0" - /* _mesa_function_pool[28176]: MapBufferRange (will be remapped) */ + /* _mesa_function_pool[28665]: MapBufferRange (will be remapped) */ "iiii\0" "glMapBufferRange\0" "\0" - /* _mesa_function_pool[28199]: ProgramParameters4dvNV (will be remapped) */ + /* _mesa_function_pool[28688]: ProgramParameters4dvNV (will be remapped) */ "iiip\0" "glProgramParameters4dvNV\0" "\0" - /* _mesa_function_pool[28230]: TexCoord2fColor3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[28719]: TexCoord2fColor3fVertex3fvSUN (dynamic) */ "ppp\0" "glTexCoord2fColor3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[28267]: EvalPoint2 (offset 239) */ + /* _mesa_function_pool[28756]: EvalPoint2 (offset 239) */ "ii\0" "glEvalPoint2\0" "\0" - /* _mesa_function_pool[28284]: Uniform1uivEXT (will be remapped) */ + /* _mesa_function_pool[28773]: Uniform1uivEXT (will be remapped) */ "iip\0" "glUniform1uivEXT\0" "glUniform1uiv\0" "\0" - /* _mesa_function_pool[28320]: EvalPoint1 (offset 237) */ + /* _mesa_function_pool[28809]: EvalPoint1 (offset 237) */ "i\0" "glEvalPoint1\0" "\0" - /* _mesa_function_pool[28336]: Binormal3dvEXT (dynamic) */ + /* _mesa_function_pool[28825]: Binormal3dvEXT (dynamic) */ "p\0" "glBinormal3dvEXT\0" "\0" - /* _mesa_function_pool[28356]: PopMatrix (offset 297) */ + /* _mesa_function_pool[28845]: PopMatrix (offset 297) */ "\0" "glPopMatrix\0" "\0" - /* _mesa_function_pool[28370]: FinishFenceNV (will be remapped) */ + /* _mesa_function_pool[28859]: GetVertexAttribIuivEXT (will be remapped) */ + "iip\0" + "glGetVertexAttribIuivEXT\0" + "glGetVertexAttribIuiv\0" + "\0" + /* _mesa_function_pool[28911]: FinishFenceNV (will be remapped) */ "i\0" "glFinishFenceNV\0" "\0" - /* _mesa_function_pool[28389]: GetFogFuncSGIS (dynamic) */ + /* _mesa_function_pool[28930]: GetFogFuncSGIS (dynamic) */ "p\0" "glGetFogFuncSGIS\0" "\0" - /* _mesa_function_pool[28409]: GetUniformLocationARB (will be remapped) */ + /* _mesa_function_pool[28950]: GetUniformLocationARB (will be remapped) */ "ip\0" "glGetUniformLocation\0" "glGetUniformLocationARB\0" "\0" - /* _mesa_function_pool[28458]: SecondaryColor3fEXT (will be remapped) */ + /* _mesa_function_pool[28999]: SecondaryColor3fEXT (will be remapped) */ "fff\0" "glSecondaryColor3f\0" "glSecondaryColor3fEXT\0" "\0" - /* _mesa_function_pool[28504]: GetTexGeniv (offset 280) */ + /* _mesa_function_pool[29045]: GetTexGeniv (offset 280) */ "iip\0" "glGetTexGeniv\0" "\0" - /* _mesa_function_pool[28523]: CombinerInputNV (will be remapped) */ + /* _mesa_function_pool[29064]: CombinerInputNV (will be remapped) */ "iiiiii\0" "glCombinerInputNV\0" "\0" - /* _mesa_function_pool[28549]: VertexAttrib3sARB (will be remapped) */ + /* _mesa_function_pool[29090]: VertexAttrib3sARB (will be remapped) */ "iiii\0" "glVertexAttrib3s\0" "glVertexAttrib3sARB\0" "\0" - /* _mesa_function_pool[28592]: IsTransformFeedback (will be remapped) */ + /* _mesa_function_pool[29133]: IsTransformFeedback (will be remapped) */ "i\0" "glIsTransformFeedback\0" "\0" - /* _mesa_function_pool[28617]: ReplacementCodeuiNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[29158]: ReplacementCodeuiNormal3fVertex3fvSUN (dynamic) */ "ppp\0" "glReplacementCodeuiNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[28662]: Map2d (offset 222) */ + /* _mesa_function_pool[29203]: Map2d (offset 222) */ "iddiiddiip\0" "glMap2d\0" "\0" - /* _mesa_function_pool[28682]: Map2f (offset 223) */ + /* _mesa_function_pool[29223]: Map2f (offset 223) */ "iffiiffiip\0" "glMap2f\0" "\0" - /* _mesa_function_pool[28702]: ProgramStringARB (will be remapped) */ + /* _mesa_function_pool[29243]: ProgramStringARB (will be remapped) */ "iiip\0" "glProgramStringARB\0" "\0" - /* _mesa_function_pool[28727]: Vertex4s (offset 148) */ + /* _mesa_function_pool[29268]: Vertex4s (offset 148) */ "iiii\0" "glVertex4s\0" "\0" - /* _mesa_function_pool[28744]: TexCoord4fVertex4fvSUN (dynamic) */ + /* _mesa_function_pool[29285]: TexCoord4fVertex4fvSUN (dynamic) */ "pp\0" "glTexCoord4fVertex4fvSUN\0" "\0" - /* _mesa_function_pool[28773]: FragmentLightModelivSGIX (dynamic) */ + /* _mesa_function_pool[29314]: FragmentLightModelivSGIX (dynamic) */ "ip\0" "glFragmentLightModelivSGIX\0" "\0" - /* _mesa_function_pool[28804]: VertexAttrib1fNV (will be remapped) */ + /* _mesa_function_pool[29345]: VertexAttrib1fNV (will be remapped) */ "if\0" "glVertexAttrib1fNV\0" "\0" - /* _mesa_function_pool[28827]: Vertex4f (offset 144) */ + /* _mesa_function_pool[29368]: Vertex4f (offset 144) */ "ffff\0" "glVertex4f\0" "\0" - /* _mesa_function_pool[28844]: EvalCoord1d (offset 228) */ + /* _mesa_function_pool[29385]: EvalCoord1d (offset 228) */ "d\0" "glEvalCoord1d\0" "\0" - /* _mesa_function_pool[28861]: Vertex4d (offset 142) */ + /* _mesa_function_pool[29402]: Vertex4d (offset 142) */ "dddd\0" "glVertex4d\0" "\0" - /* _mesa_function_pool[28878]: RasterPos4dv (offset 79) */ + /* _mesa_function_pool[29419]: RasterPos4dv (offset 79) */ "p\0" "glRasterPos4dv\0" "\0" - /* _mesa_function_pool[28896]: UseShaderProgramEXT (will be remapped) */ + /* _mesa_function_pool[29437]: UseShaderProgramEXT (will be remapped) */ "ii\0" "glUseShaderProgramEXT\0" "\0" - /* _mesa_function_pool[28922]: FragmentLightfSGIX (dynamic) */ + /* _mesa_function_pool[29463]: FragmentLightfSGIX (dynamic) */ "iif\0" "glFragmentLightfSGIX\0" "\0" - /* _mesa_function_pool[28948]: GetCompressedTexImageARB (will be remapped) */ + /* _mesa_function_pool[29489]: GetCompressedTexImageARB (will be remapped) */ "iip\0" "glGetCompressedTexImage\0" "glGetCompressedTexImageARB\0" "\0" - /* _mesa_function_pool[29004]: GetTexGenfv (offset 279) */ + /* _mesa_function_pool[29545]: GetTexGenfv (offset 279) */ "iip\0" "glGetTexGenfv\0" "\0" - /* _mesa_function_pool[29023]: Vertex4i (offset 146) */ + /* _mesa_function_pool[29564]: Vertex4i (offset 146) */ "iiii\0" "glVertex4i\0" "\0" - /* _mesa_function_pool[29040]: VertexWeightPointerEXT (dynamic) */ + /* _mesa_function_pool[29581]: VertexWeightPointerEXT (dynamic) */ "iiip\0" "glVertexWeightPointerEXT\0" "\0" - /* _mesa_function_pool[29071]: GetHistogram (offset 361) */ + /* _mesa_function_pool[29612]: GetHistogram (offset 361) */ "iiiip\0" "glGetHistogram\0" "glGetHistogramEXT\0" "\0" - /* _mesa_function_pool[29111]: ActiveStencilFaceEXT (will be remapped) */ + /* _mesa_function_pool[29652]: ActiveStencilFaceEXT (will be remapped) */ "i\0" "glActiveStencilFaceEXT\0" "\0" - /* _mesa_function_pool[29137]: StencilFuncSeparateATI (will be remapped) */ + /* _mesa_function_pool[29678]: StencilFuncSeparateATI (will be remapped) */ "iiii\0" "glStencilFuncSeparateATI\0" "\0" - /* _mesa_function_pool[29168]: Materialf (offset 169) */ + /* _mesa_function_pool[29709]: Materialf (offset 169) */ "iif\0" "glMaterialf\0" "\0" - /* _mesa_function_pool[29185]: GetShaderSourceARB (will be remapped) */ + /* _mesa_function_pool[29726]: GetShaderSourceARB (will be remapped) */ "iipp\0" "glGetShaderSource\0" "glGetShaderSourceARB\0" "\0" - /* _mesa_function_pool[29230]: IglooInterfaceSGIX (dynamic) */ + /* _mesa_function_pool[29771]: IglooInterfaceSGIX (dynamic) */ "ip\0" "glIglooInterfaceSGIX\0" "\0" - /* _mesa_function_pool[29255]: Materiali (offset 171) */ + /* _mesa_function_pool[29796]: Materiali (offset 171) */ "iii\0" "glMateriali\0" "\0" - /* _mesa_function_pool[29272]: VertexAttrib4dNV (will be remapped) */ + /* _mesa_function_pool[29813]: VertexAttrib4dNV (will be remapped) */ "idddd\0" "glVertexAttrib4dNV\0" "\0" - /* _mesa_function_pool[29298]: MultiModeDrawElementsIBM (will be remapped) */ + /* _mesa_function_pool[29839]: MultiModeDrawElementsIBM (will be remapped) */ "ppipii\0" "glMultiModeDrawElementsIBM\0" "\0" - /* _mesa_function_pool[29333]: Indexsv (offset 51) */ + /* _mesa_function_pool[29874]: Indexsv (offset 51) */ "p\0" "glIndexsv\0" "\0" - /* _mesa_function_pool[29346]: MultiTexCoord4svARB (offset 407) */ + /* _mesa_function_pool[29887]: MultiTexCoord4svARB (offset 407) */ "ip\0" "glMultiTexCoord4sv\0" "glMultiTexCoord4svARB\0" "\0" - /* _mesa_function_pool[29391]: LightModelfv (offset 164) */ + /* _mesa_function_pool[29932]: LightModelfv (offset 164) */ "ip\0" "glLightModelfv\0" "\0" - /* _mesa_function_pool[29410]: TexCoord2dv (offset 103) */ + /* _mesa_function_pool[29951]: TexCoord2dv (offset 103) */ "p\0" "glTexCoord2dv\0" "\0" - /* _mesa_function_pool[29427]: GenQueriesARB (will be remapped) */ + /* _mesa_function_pool[29968]: GenQueriesARB (will be remapped) */ "ip\0" "glGenQueries\0" "glGenQueriesARB\0" "\0" - /* _mesa_function_pool[29460]: EvalCoord1dv (offset 229) */ + /* _mesa_function_pool[30001]: EvalCoord1dv (offset 229) */ "p\0" "glEvalCoord1dv\0" "\0" - /* _mesa_function_pool[29478]: ReplacementCodeuiVertex3fSUN (dynamic) */ + /* _mesa_function_pool[30019]: ReplacementCodeuiVertex3fSUN (dynamic) */ "ifff\0" "glReplacementCodeuiVertex3fSUN\0" "\0" - /* _mesa_function_pool[29515]: Translated (offset 303) */ + /* _mesa_function_pool[30056]: Translated (offset 303) */ "ddd\0" "glTranslated\0" "\0" - /* _mesa_function_pool[29533]: Translatef (offset 304) */ + /* _mesa_function_pool[30074]: Translatef (offset 304) */ "fff\0" "glTranslatef\0" "\0" - /* _mesa_function_pool[29551]: Uniform3uiEXT (will be remapped) */ + /* _mesa_function_pool[30092]: Uniform3uiEXT (will be remapped) */ "iiii\0" "glUniform3uiEXT\0" "glUniform3ui\0" "\0" - /* _mesa_function_pool[29586]: StencilMask (offset 209) */ + /* _mesa_function_pool[30127]: StencilMask (offset 209) */ "i\0" "glStencilMask\0" "\0" - /* _mesa_function_pool[29603]: Tangent3iEXT (dynamic) */ + /* _mesa_function_pool[30144]: Tangent3iEXT (dynamic) */ "iii\0" "glTangent3iEXT\0" "\0" - /* _mesa_function_pool[29623]: ClampColorARB (will be remapped) */ + /* _mesa_function_pool[30164]: ClampColorARB (will be remapped) */ "ii\0" "glClampColorARB\0" "\0" - /* _mesa_function_pool[29643]: GetLightiv (offset 265) */ + /* _mesa_function_pool[30184]: GetLightiv (offset 265) */ "iip\0" "glGetLightiv\0" "\0" - /* _mesa_function_pool[29661]: GetSamplerParameterIiv (will be remapped) */ + /* _mesa_function_pool[30202]: GetSamplerParameterIiv (will be remapped) */ "iip\0" "glGetSamplerParameterIiv\0" "\0" - /* _mesa_function_pool[29691]: DrawMeshArraysSUN (dynamic) */ + /* _mesa_function_pool[30232]: DrawMeshArraysSUN (dynamic) */ "iiii\0" "glDrawMeshArraysSUN\0" "\0" - /* _mesa_function_pool[29717]: IsList (offset 287) */ + /* _mesa_function_pool[30258]: IsList (offset 287) */ "i\0" "glIsList\0" "\0" - /* _mesa_function_pool[29729]: IsSync (will be remapped) */ + /* _mesa_function_pool[30270]: IsSync (will be remapped) */ "i\0" "glIsSync\0" "\0" - /* _mesa_function_pool[29741]: RenderMode (offset 196) */ + /* _mesa_function_pool[30282]: RenderMode (offset 196) */ "i\0" "glRenderMode\0" "\0" - /* _mesa_function_pool[29757]: GetMapControlPointsNV (dynamic) */ + /* _mesa_function_pool[30298]: GetMapControlPointsNV (dynamic) */ "iiiiiip\0" "glGetMapControlPointsNV\0" "\0" - /* _mesa_function_pool[29790]: DrawBuffersARB (will be remapped) */ + /* _mesa_function_pool[30331]: DrawBuffersARB (will be remapped) */ "ip\0" "glDrawBuffers\0" "glDrawBuffersARB\0" "glDrawBuffersATI\0" "\0" - /* _mesa_function_pool[29842]: ClearBufferiv (will be remapped) */ + /* _mesa_function_pool[30383]: ClearBufferiv (will be remapped) */ "iip\0" "glClearBufferiv\0" "\0" - /* _mesa_function_pool[29863]: ProgramLocalParameter4fARB (will be remapped) */ + /* _mesa_function_pool[30404]: ProgramLocalParameter4fARB (will be remapped) */ "iiffff\0" "glProgramLocalParameter4fARB\0" "\0" - /* _mesa_function_pool[29900]: SpriteParameterivSGIX (dynamic) */ + /* _mesa_function_pool[30441]: SpriteParameterivSGIX (dynamic) */ "ip\0" "glSpriteParameterivSGIX\0" "\0" - /* _mesa_function_pool[29928]: ProvokingVertexEXT (will be remapped) */ + /* _mesa_function_pool[30469]: ProvokingVertexEXT (will be remapped) */ "i\0" "glProvokingVertexEXT\0" "glProvokingVertex\0" "\0" - /* _mesa_function_pool[29970]: MultiTexCoord1fARB (offset 378) */ + /* _mesa_function_pool[30511]: MultiTexCoord1fARB (offset 378) */ "if\0" "glMultiTexCoord1f\0" "glMultiTexCoord1fARB\0" "\0" - /* _mesa_function_pool[30013]: LoadName (offset 198) */ + /* _mesa_function_pool[30554]: LoadName (offset 198) */ "i\0" "glLoadName\0" "\0" - /* _mesa_function_pool[30027]: VertexAttribs4ubvNV (will be remapped) */ + /* _mesa_function_pool[30568]: VertexAttribs4ubvNV (will be remapped) */ "iip\0" "glVertexAttribs4ubvNV\0" "\0" - /* _mesa_function_pool[30054]: WeightsvARB (dynamic) */ + /* _mesa_function_pool[30595]: WeightsvARB (dynamic) */ "ip\0" "glWeightsvARB\0" "\0" - /* _mesa_function_pool[30072]: Uniform1fvARB (will be remapped) */ + /* _mesa_function_pool[30613]: Uniform1fvARB (will be remapped) */ "iip\0" "glUniform1fv\0" "glUniform1fvARB\0" "\0" - /* _mesa_function_pool[30106]: CopyTexSubImage1D (offset 325) */ + /* _mesa_function_pool[30647]: CopyTexSubImage1D (offset 325) */ "iiiiii\0" "glCopyTexSubImage1D\0" "glCopyTexSubImage1DEXT\0" "\0" - /* _mesa_function_pool[30157]: CullFace (offset 152) */ + /* _mesa_function_pool[30698]: CullFace (offset 152) */ "i\0" "glCullFace\0" "\0" - /* _mesa_function_pool[30171]: BindTexture (offset 307) */ + /* _mesa_function_pool[30712]: BindTexture (offset 307) */ "ii\0" "glBindTexture\0" "glBindTextureEXT\0" "\0" - /* _mesa_function_pool[30206]: BeginFragmentShaderATI (will be remapped) */ + /* _mesa_function_pool[30747]: BeginFragmentShaderATI (will be remapped) */ "\0" "glBeginFragmentShaderATI\0" "\0" - /* _mesa_function_pool[30233]: MultiTexCoord4fARB (offset 402) */ + /* _mesa_function_pool[30774]: MultiTexCoord4fARB (offset 402) */ "iffff\0" "glMultiTexCoord4f\0" "glMultiTexCoord4fARB\0" "\0" - /* _mesa_function_pool[30279]: VertexAttribs3svNV (will be remapped) */ + /* _mesa_function_pool[30820]: VertexAttribs3svNV (will be remapped) */ "iip\0" "glVertexAttribs3svNV\0" "\0" - /* _mesa_function_pool[30305]: StencilFunc (offset 243) */ + /* _mesa_function_pool[30846]: StencilFunc (offset 243) */ "iii\0" "glStencilFunc\0" "\0" - /* _mesa_function_pool[30324]: CopyPixels (offset 255) */ + /* _mesa_function_pool[30865]: CopyPixels (offset 255) */ "iiiii\0" "glCopyPixels\0" "\0" - /* _mesa_function_pool[30344]: Rectsv (offset 93) */ + /* _mesa_function_pool[30885]: Rectsv (offset 93) */ "pp\0" "glRectsv\0" "\0" - /* _mesa_function_pool[30357]: ReplacementCodeuivSUN (dynamic) */ + /* _mesa_function_pool[30898]: ReplacementCodeuivSUN (dynamic) */ "p\0" "glReplacementCodeuivSUN\0" "\0" - /* _mesa_function_pool[30384]: EnableVertexAttribArrayARB (will be remapped) */ + /* _mesa_function_pool[30925]: EnableVertexAttribArrayARB (will be remapped) */ "i\0" "glEnableVertexAttribArray\0" "glEnableVertexAttribArrayARB\0" "\0" - /* _mesa_function_pool[30442]: NormalPointervINTEL (dynamic) */ + /* _mesa_function_pool[30983]: NormalPointervINTEL (dynamic) */ "ip\0" "glNormalPointervINTEL\0" "\0" - /* _mesa_function_pool[30468]: CopyConvolutionFilter2D (offset 355) */ + /* _mesa_function_pool[31009]: CopyConvolutionFilter2D (offset 355) */ "iiiiii\0" "glCopyConvolutionFilter2D\0" "glCopyConvolutionFilter2DEXT\0" "\0" - /* _mesa_function_pool[30531]: WindowPos3ivMESA (will be remapped) */ + /* _mesa_function_pool[31072]: WindowPos3ivMESA (will be remapped) */ "p\0" "glWindowPos3iv\0" "glWindowPos3ivARB\0" "glWindowPos3ivMESA\0" "\0" - /* _mesa_function_pool[30586]: CopyBufferSubData (will be remapped) */ + /* _mesa_function_pool[31127]: CopyBufferSubData (will be remapped) */ "iiiii\0" "glCopyBufferSubData\0" "\0" - /* _mesa_function_pool[30613]: NormalPointer (offset 318) */ + /* _mesa_function_pool[31154]: NormalPointer (offset 318) */ "iip\0" "glNormalPointer\0" "\0" - /* _mesa_function_pool[30634]: TexParameterfv (offset 179) */ + /* _mesa_function_pool[31175]: TexParameterfv (offset 179) */ "iip\0" "glTexParameterfv\0" "\0" - /* _mesa_function_pool[30656]: IsBufferARB (will be remapped) */ + /* _mesa_function_pool[31197]: IsBufferARB (will be remapped) */ "i\0" "glIsBuffer\0" "glIsBufferARB\0" "\0" - /* _mesa_function_pool[30684]: WindowPos4iMESA (will be remapped) */ + /* _mesa_function_pool[31225]: WindowPos4iMESA (will be remapped) */ "iiii\0" "glWindowPos4iMESA\0" "\0" - /* _mesa_function_pool[30708]: VertexAttrib4uivARB (will be remapped) */ + /* _mesa_function_pool[31249]: VertexAttrib4uivARB (will be remapped) */ "ip\0" "glVertexAttrib4uiv\0" "glVertexAttrib4uivARB\0" "\0" - /* _mesa_function_pool[30753]: Tangent3bvEXT (dynamic) */ + /* _mesa_function_pool[31294]: Tangent3bvEXT (dynamic) */ "p\0" "glTangent3bvEXT\0" "\0" - /* _mesa_function_pool[30772]: VertexAttribI3uivEXT (will be remapped) */ + /* _mesa_function_pool[31313]: VertexAttribI3uivEXT (will be remapped) */ "ip\0" "glVertexAttribI3uivEXT\0" "glVertexAttribI3uiv\0" "\0" - /* _mesa_function_pool[30819]: UniformMatrix3x4fv (will be remapped) */ + /* _mesa_function_pool[31360]: UniformMatrix3x4fv (will be remapped) */ "iiip\0" "glUniformMatrix3x4fv\0" "\0" - /* _mesa_function_pool[30846]: ClipPlane (offset 150) */ + /* _mesa_function_pool[31387]: ClipPlane (offset 150) */ "ip\0" "glClipPlane\0" "\0" - /* _mesa_function_pool[30862]: Recti (offset 90) */ + /* _mesa_function_pool[31403]: Recti (offset 90) */ "iiii\0" "glRecti\0" "\0" - /* _mesa_function_pool[30876]: TrackMatrixNV (will be remapped) */ + /* _mesa_function_pool[31417]: TrackMatrixNV (will be remapped) */ "iiii\0" "glTrackMatrixNV\0" "\0" - /* _mesa_function_pool[30898]: DrawRangeElementsBaseVertex (will be remapped) */ + /* _mesa_function_pool[31439]: DrawRangeElementsBaseVertex (will be remapped) */ "iiiiipi\0" "glDrawRangeElementsBaseVertex\0" "\0" - /* _mesa_function_pool[30937]: SamplerParameterIuiv (will be remapped) */ + /* _mesa_function_pool[31478]: SamplerParameterIuiv (will be remapped) */ "iip\0" "glSamplerParameterIuiv\0" "\0" - /* _mesa_function_pool[30965]: TexCoordPointervINTEL (dynamic) */ + /* _mesa_function_pool[31506]: TexCoordPointervINTEL (dynamic) */ "iip\0" "glTexCoordPointervINTEL\0" "\0" - /* _mesa_function_pool[30994]: DeleteBuffersARB (will be remapped) */ + /* _mesa_function_pool[31535]: DeleteBuffersARB (will be remapped) */ "ip\0" "glDeleteBuffers\0" "glDeleteBuffersARB\0" "\0" - /* _mesa_function_pool[31033]: PixelTransformParameterfvEXT (dynamic) */ + /* _mesa_function_pool[31574]: PixelTransformParameterfvEXT (dynamic) */ "iip\0" "glPixelTransformParameterfvEXT\0" "\0" - /* _mesa_function_pool[31069]: PrimitiveRestartNV (will be remapped) */ + /* _mesa_function_pool[31610]: PrimitiveRestartNV (will be remapped) */ "\0" "glPrimitiveRestartNV\0" "\0" - /* _mesa_function_pool[31092]: WindowPos4fvMESA (will be remapped) */ + /* _mesa_function_pool[31633]: WindowPos4fvMESA (will be remapped) */ "p\0" "glWindowPos4fvMESA\0" "\0" - /* _mesa_function_pool[31114]: GetPixelMapuiv (offset 272) */ + /* _mesa_function_pool[31655]: GetPixelMapuiv (offset 272) */ "ip\0" "glGetPixelMapuiv\0" "\0" - /* _mesa_function_pool[31135]: Rectf (offset 88) */ + /* _mesa_function_pool[31676]: Rectf (offset 88) */ "ffff\0" "glRectf\0" "\0" - /* _mesa_function_pool[31149]: VertexAttrib1sNV (will be remapped) */ + /* _mesa_function_pool[31690]: VertexAttrib1sNV (will be remapped) */ "ii\0" "glVertexAttrib1sNV\0" "\0" - /* _mesa_function_pool[31172]: Indexfv (offset 47) */ + /* _mesa_function_pool[31713]: Indexfv (offset 47) */ "p\0" "glIndexfv\0" "\0" - /* _mesa_function_pool[31185]: SecondaryColor3svEXT (will be remapped) */ + /* _mesa_function_pool[31726]: SecondaryColor3svEXT (will be remapped) */ "p\0" "glSecondaryColor3sv\0" "glSecondaryColor3svEXT\0" "\0" - /* _mesa_function_pool[31231]: LoadTransposeMatrixfARB (will be remapped) */ + /* _mesa_function_pool[31772]: LoadTransposeMatrixfARB (will be remapped) */ "p\0" "glLoadTransposeMatrixf\0" "glLoadTransposeMatrixfARB\0" "\0" - /* _mesa_function_pool[31283]: GetPointerv (offset 329) */ + /* _mesa_function_pool[31824]: GetPointerv (offset 329) */ "ip\0" "glGetPointerv\0" "glGetPointervEXT\0" "\0" - /* _mesa_function_pool[31318]: Tangent3bEXT (dynamic) */ + /* _mesa_function_pool[31859]: Tangent3bEXT (dynamic) */ "iii\0" "glTangent3bEXT\0" "\0" - /* _mesa_function_pool[31338]: CombinerParameterfNV (will be remapped) */ + /* _mesa_function_pool[31879]: CombinerParameterfNV (will be remapped) */ "if\0" "glCombinerParameterfNV\0" "\0" - /* _mesa_function_pool[31365]: IndexMask (offset 212) */ + /* _mesa_function_pool[31906]: IndexMask (offset 212) */ "i\0" "glIndexMask\0" "\0" - /* _mesa_function_pool[31380]: BindProgramNV (will be remapped) */ + /* _mesa_function_pool[31921]: BindProgramNV (will be remapped) */ "ii\0" "glBindProgramARB\0" "glBindProgramNV\0" "\0" - /* _mesa_function_pool[31417]: VertexAttrib4svARB (will be remapped) */ + /* _mesa_function_pool[31958]: VertexAttrib4svARB (will be remapped) */ "ip\0" "glVertexAttrib4sv\0" "glVertexAttrib4svARB\0" "\0" - /* _mesa_function_pool[31460]: GetFloatv (offset 262) */ + /* _mesa_function_pool[32001]: GetFloatv (offset 262) */ "ip\0" "glGetFloatv\0" "\0" - /* _mesa_function_pool[31476]: CreateDebugObjectMESA (dynamic) */ + /* _mesa_function_pool[32017]: CreateDebugObjectMESA (dynamic) */ "\0" "glCreateDebugObjectMESA\0" "\0" - /* _mesa_function_pool[31502]: GetShaderiv (will be remapped) */ + /* _mesa_function_pool[32043]: GetShaderiv (will be remapped) */ "iip\0" "glGetShaderiv\0" "\0" - /* _mesa_function_pool[31521]: ClientWaitSync (will be remapped) */ + /* _mesa_function_pool[32062]: ClientWaitSync (will be remapped) */ "iii\0" "glClientWaitSync\0" "\0" - /* _mesa_function_pool[31543]: TexCoord4s (offset 124) */ + /* _mesa_function_pool[32084]: TexCoord4s (offset 124) */ "iiii\0" "glTexCoord4s\0" "\0" - /* _mesa_function_pool[31562]: TexCoord3sv (offset 117) */ + /* _mesa_function_pool[32103]: TexCoord3sv (offset 117) */ "p\0" "glTexCoord3sv\0" "\0" - /* _mesa_function_pool[31579]: BindFragmentShaderATI (will be remapped) */ + /* _mesa_function_pool[32120]: BindFragmentShaderATI (will be remapped) */ "i\0" "glBindFragmentShaderATI\0" "\0" - /* _mesa_function_pool[31606]: PopAttrib (offset 218) */ + /* _mesa_function_pool[32147]: PopAttrib (offset 218) */ "\0" "glPopAttrib\0" "\0" - /* _mesa_function_pool[31620]: Fogfv (offset 154) */ + /* _mesa_function_pool[32161]: Fogfv (offset 154) */ "ip\0" "glFogfv\0" "\0" - /* _mesa_function_pool[31632]: UnmapBufferARB (will be remapped) */ + /* _mesa_function_pool[32173]: UnmapBufferARB (will be remapped) */ "i\0" "glUnmapBuffer\0" "glUnmapBufferARB\0" "\0" - /* _mesa_function_pool[31666]: InitNames (offset 197) */ + /* _mesa_function_pool[32207]: InitNames (offset 197) */ "\0" "glInitNames\0" "\0" - /* _mesa_function_pool[31680]: Normal3sv (offset 61) */ + /* _mesa_function_pool[32221]: Normal3sv (offset 61) */ "p\0" "glNormal3sv\0" "\0" - /* _mesa_function_pool[31695]: Minmax (offset 368) */ + /* _mesa_function_pool[32236]: Minmax (offset 368) */ "iii\0" "glMinmax\0" "glMinmaxEXT\0" "\0" - /* _mesa_function_pool[31721]: TexCoord4d (offset 118) */ + /* _mesa_function_pool[32262]: TexCoord4d (offset 118) */ "dddd\0" "glTexCoord4d\0" "\0" - /* _mesa_function_pool[31740]: DeformationMap3dSGIX (dynamic) */ - "iddiiddiiddiip\0" - "glDeformationMap3dSGIX\0" - "\0" - /* _mesa_function_pool[31779]: TexCoord4f (offset 120) */ + /* _mesa_function_pool[32281]: TexCoord4f (offset 120) */ "ffff\0" "glTexCoord4f\0" "\0" - /* _mesa_function_pool[31798]: FogCoorddvEXT (will be remapped) */ + /* _mesa_function_pool[32300]: FogCoorddvEXT (will be remapped) */ "p\0" "glFogCoorddv\0" "glFogCoorddvEXT\0" "\0" - /* _mesa_function_pool[31830]: FinishTextureSUNX (dynamic) */ + /* _mesa_function_pool[32332]: FinishTextureSUNX (dynamic) */ "\0" "glFinishTextureSUNX\0" "\0" - /* _mesa_function_pool[31852]: GetFragmentLightfvSGIX (dynamic) */ + /* _mesa_function_pool[32354]: GetFragmentLightfvSGIX (dynamic) */ "iip\0" "glGetFragmentLightfvSGIX\0" "\0" - /* _mesa_function_pool[31882]: Binormal3fvEXT (dynamic) */ + /* _mesa_function_pool[32384]: Binormal3fvEXT (dynamic) */ "p\0" "glBinormal3fvEXT\0" "\0" - /* _mesa_function_pool[31902]: GetBooleanv (offset 258) */ + /* _mesa_function_pool[32404]: GetBooleanv (offset 258) */ "ip\0" "glGetBooleanv\0" "\0" - /* _mesa_function_pool[31920]: ColorFragmentOp3ATI (will be remapped) */ + /* _mesa_function_pool[32422]: ColorFragmentOp3ATI (will be remapped) */ "iiiiiiiiiiiii\0" "glColorFragmentOp3ATI\0" "\0" - /* _mesa_function_pool[31957]: Hint (offset 158) */ + /* _mesa_function_pool[32459]: Hint (offset 158) */ "ii\0" "glHint\0" "\0" - /* _mesa_function_pool[31968]: Color4dv (offset 28) */ + /* _mesa_function_pool[32470]: Color4dv (offset 28) */ "p\0" "glColor4dv\0" "\0" - /* _mesa_function_pool[31982]: VertexAttrib2svARB (will be remapped) */ + /* _mesa_function_pool[32484]: VertexAttrib2svARB (will be remapped) */ "ip\0" "glVertexAttrib2sv\0" "glVertexAttrib2svARB\0" "\0" - /* _mesa_function_pool[32025]: AreProgramsResidentNV (will be remapped) */ + /* _mesa_function_pool[32527]: AreProgramsResidentNV (will be remapped) */ "ipp\0" "glAreProgramsResidentNV\0" "\0" - /* _mesa_function_pool[32054]: WindowPos3svMESA (will be remapped) */ + /* _mesa_function_pool[32556]: WindowPos3svMESA (will be remapped) */ "p\0" "glWindowPos3sv\0" "glWindowPos3svARB\0" "glWindowPos3svMESA\0" "\0" - /* _mesa_function_pool[32109]: CopyColorSubTable (offset 347) */ + /* _mesa_function_pool[32611]: CopyColorSubTable (offset 347) */ "iiiii\0" "glCopyColorSubTable\0" "glCopyColorSubTableEXT\0" "\0" - /* _mesa_function_pool[32159]: WeightdvARB (dynamic) */ + /* _mesa_function_pool[32661]: WeightdvARB (dynamic) */ "ip\0" "glWeightdvARB\0" "\0" - /* _mesa_function_pool[32177]: DeleteRenderbuffersEXT (will be remapped) */ + /* _mesa_function_pool[32679]: DeleteRenderbuffersEXT (will be remapped) */ "ip\0" "glDeleteRenderbuffers\0" "glDeleteRenderbuffersEXT\0" "\0" - /* _mesa_function_pool[32228]: VertexAttrib4NubvARB (will be remapped) */ + /* _mesa_function_pool[32730]: VertexAttrib4NubvARB (will be remapped) */ "ip\0" "glVertexAttrib4Nubv\0" "glVertexAttrib4NubvARB\0" "\0" - /* _mesa_function_pool[32275]: VertexAttrib3dvNV (will be remapped) */ + /* _mesa_function_pool[32777]: VertexAttrib3dvNV (will be remapped) */ "ip\0" "glVertexAttrib3dvNV\0" "\0" - /* _mesa_function_pool[32299]: GetObjectParameterfvARB (will be remapped) */ + /* _mesa_function_pool[32801]: GetObjectParameterfvARB (will be remapped) */ "iip\0" "glGetObjectParameterfvARB\0" "\0" - /* _mesa_function_pool[32330]: Vertex4iv (offset 147) */ + /* _mesa_function_pool[32832]: Vertex4iv (offset 147) */ "p\0" "glVertex4iv\0" "\0" - /* _mesa_function_pool[32345]: GetProgramEnvParameterdvARB (will be remapped) */ + /* _mesa_function_pool[32847]: GetProgramEnvParameterdvARB (will be remapped) */ "iip\0" "glGetProgramEnvParameterdvARB\0" "\0" - /* _mesa_function_pool[32380]: TexCoord4dv (offset 119) */ + /* _mesa_function_pool[32882]: TexCoord4dv (offset 119) */ "p\0" "glTexCoord4dv\0" "\0" - /* _mesa_function_pool[32397]: LockArraysEXT (will be remapped) */ + /* _mesa_function_pool[32899]: LockArraysEXT (will be remapped) */ "ii\0" "glLockArraysEXT\0" "\0" - /* _mesa_function_pool[32417]: Begin (offset 7) */ + /* _mesa_function_pool[32919]: Begin (offset 7) */ "i\0" "glBegin\0" "\0" - /* _mesa_function_pool[32428]: LightModeli (offset 165) */ + /* _mesa_function_pool[32930]: LightModeli (offset 165) */ "ii\0" "glLightModeli\0" "\0" - /* _mesa_function_pool[32446]: VertexAttribI4ivEXT (will be remapped) */ + /* _mesa_function_pool[32948]: VertexAttribI4ivEXT (will be remapped) */ "ip\0" "glVertexAttribI4ivEXT\0" "glVertexAttribI4iv\0" "\0" - /* _mesa_function_pool[32491]: Rectfv (offset 89) */ + /* _mesa_function_pool[32993]: Rectfv (offset 89) */ "pp\0" "glRectfv\0" "\0" - /* _mesa_function_pool[32504]: LightModelf (offset 163) */ + /* _mesa_function_pool[33006]: BlendEquationSeparateiARB (will be remapped) */ + "iii\0" + "glBlendEquationSeparateiARB\0" + "glBlendEquationSeparateIndexedAMD\0" + "\0" + /* _mesa_function_pool[33073]: LightModelf (offset 163) */ "if\0" "glLightModelf\0" "\0" - /* _mesa_function_pool[32522]: GetTexParameterfv (offset 282) */ + /* _mesa_function_pool[33091]: GetTexParameterfv (offset 282) */ "iip\0" "glGetTexParameterfv\0" "\0" - /* _mesa_function_pool[32547]: GetLightfv (offset 264) */ + /* _mesa_function_pool[33116]: GetLightfv (offset 264) */ "iip\0" "glGetLightfv\0" "\0" - /* _mesa_function_pool[32565]: PixelTransformParameterivEXT (dynamic) */ + /* _mesa_function_pool[33134]: PixelTransformParameterivEXT (dynamic) */ "iip\0" "glPixelTransformParameterivEXT\0" "\0" - /* _mesa_function_pool[32601]: BinormalPointerEXT (dynamic) */ + /* _mesa_function_pool[33170]: BinormalPointerEXT (dynamic) */ "iip\0" "glBinormalPointerEXT\0" "\0" - /* _mesa_function_pool[32627]: VertexAttrib1dNV (will be remapped) */ + /* _mesa_function_pool[33196]: VertexAttrib1dNV (will be remapped) */ "id\0" "glVertexAttrib1dNV\0" "\0" - /* _mesa_function_pool[32650]: GetCombinerInputParameterivNV (will be remapped) */ + /* _mesa_function_pool[33219]: GetCombinerInputParameterivNV (will be remapped) */ "iiiip\0" "glGetCombinerInputParameterivNV\0" "\0" - /* _mesa_function_pool[32689]: Disable (offset 214) */ + /* _mesa_function_pool[33258]: Disable (offset 214) */ "i\0" "glDisable\0" "\0" - /* _mesa_function_pool[32702]: MultiTexCoord2fvARB (offset 387) */ + /* _mesa_function_pool[33271]: MultiTexCoord2fvARB (offset 387) */ "ip\0" "glMultiTexCoord2fv\0" "glMultiTexCoord2fvARB\0" "\0" - /* _mesa_function_pool[32747]: GetRenderbufferParameterivEXT (will be remapped) */ + /* _mesa_function_pool[33316]: GetRenderbufferParameterivEXT (will be remapped) */ "iip\0" "glGetRenderbufferParameteriv\0" "glGetRenderbufferParameterivEXT\0" "\0" - /* _mesa_function_pool[32813]: CombinerParameterivNV (will be remapped) */ + /* _mesa_function_pool[33382]: CombinerParameterivNV (will be remapped) */ "ip\0" "glCombinerParameterivNV\0" "\0" - /* _mesa_function_pool[32841]: GenFragmentShadersATI (will be remapped) */ + /* _mesa_function_pool[33410]: GenFragmentShadersATI (will be remapped) */ "i\0" "glGenFragmentShadersATI\0" "\0" - /* _mesa_function_pool[32868]: DrawArrays (offset 310) */ + /* _mesa_function_pool[33437]: DrawArrays (offset 310) */ "iii\0" "glDrawArrays\0" "glDrawArraysEXT\0" "\0" - /* _mesa_function_pool[32902]: WeightuivARB (dynamic) */ + /* _mesa_function_pool[33471]: WeightuivARB (dynamic) */ "ip\0" "glWeightuivARB\0" "\0" - /* _mesa_function_pool[32921]: VertexAttrib2sARB (will be remapped) */ + /* _mesa_function_pool[33490]: GetVertexAttribIivEXT (will be remapped) */ + "iip\0" + "glGetVertexAttribIivEXT\0" + "glGetVertexAttribIiv\0" + "\0" + /* _mesa_function_pool[33540]: VertexAttrib2sARB (will be remapped) */ "iii\0" "glVertexAttrib2s\0" "glVertexAttrib2sARB\0" "\0" - /* _mesa_function_pool[32963]: ColorMask (offset 210) */ + /* _mesa_function_pool[33582]: GetnTexImageARB (will be remapped) */ + "iiiiip\0" + "glGetnTexImageARB\0" + "\0" + /* _mesa_function_pool[33608]: ColorMask (offset 210) */ "iiii\0" "glColorMask\0" "\0" - /* _mesa_function_pool[32981]: GenAsyncMarkersSGIX (dynamic) */ + /* _mesa_function_pool[33626]: GenAsyncMarkersSGIX (dynamic) */ "i\0" "glGenAsyncMarkersSGIX\0" "\0" - /* _mesa_function_pool[33006]: Tangent3svEXT (dynamic) */ + /* _mesa_function_pool[33651]: Tangent3svEXT (dynamic) */ "p\0" "glTangent3svEXT\0" "\0" - /* _mesa_function_pool[33025]: GetListParameterivSGIX (dynamic) */ + /* _mesa_function_pool[33670]: GetListParameterivSGIX (dynamic) */ "iip\0" "glGetListParameterivSGIX\0" "\0" - /* _mesa_function_pool[33055]: BindBufferARB (will be remapped) */ + /* _mesa_function_pool[33700]: BindBufferARB (will be remapped) */ "ii\0" "glBindBuffer\0" "glBindBufferARB\0" "\0" - /* _mesa_function_pool[33088]: GetInfoLogARB (will be remapped) */ + /* _mesa_function_pool[33733]: GetInfoLogARB (will be remapped) */ "iipp\0" "glGetInfoLogARB\0" "\0" - /* _mesa_function_pool[33110]: RasterPos4iv (offset 83) */ + /* _mesa_function_pool[33755]: RasterPos4iv (offset 83) */ "p\0" "glRasterPos4iv\0" "\0" - /* _mesa_function_pool[33128]: Enable (offset 215) */ + /* _mesa_function_pool[33773]: Enable (offset 215) */ "i\0" "glEnable\0" "\0" - /* _mesa_function_pool[33140]: LineStipple (offset 167) */ + /* _mesa_function_pool[33785]: LineStipple (offset 167) */ "ii\0" "glLineStipple\0" "\0" - /* _mesa_function_pool[33158]: VertexAttribs4svNV (will be remapped) */ + /* _mesa_function_pool[33803]: VertexAttribs4svNV (will be remapped) */ "iip\0" "glVertexAttribs4svNV\0" "\0" - /* _mesa_function_pool[33184]: EdgeFlagPointerListIBM (dynamic) */ + /* _mesa_function_pool[33829]: EdgeFlagPointerListIBM (dynamic) */ "ipi\0" "glEdgeFlagPointerListIBM\0" "\0" - /* _mesa_function_pool[33214]: UniformMatrix3x2fv (will be remapped) */ + /* _mesa_function_pool[33859]: UniformMatrix3x2fv (will be remapped) */ "iiip\0" "glUniformMatrix3x2fv\0" "\0" - /* _mesa_function_pool[33241]: GetMinmaxParameterfv (offset 365) */ + /* _mesa_function_pool[33886]: GetMinmaxParameterfv (offset 365) */ "iip\0" "glGetMinmaxParameterfv\0" "glGetMinmaxParameterfvEXT\0" "\0" - /* _mesa_function_pool[33295]: VertexAttrib1fvARB (will be remapped) */ + /* _mesa_function_pool[33940]: VertexAttrib1fvARB (will be remapped) */ "ip\0" "glVertexAttrib1fv\0" "glVertexAttrib1fvARB\0" "\0" - /* _mesa_function_pool[33338]: GenBuffersARB (will be remapped) */ + /* _mesa_function_pool[33983]: GenBuffersARB (will be remapped) */ "ip\0" "glGenBuffers\0" "glGenBuffersARB\0" "\0" - /* _mesa_function_pool[33371]: VertexAttribs1svNV (will be remapped) */ + /* _mesa_function_pool[34016]: VertexAttribs1svNV (will be remapped) */ "iip\0" "glVertexAttribs1svNV\0" "\0" - /* _mesa_function_pool[33397]: Vertex3fv (offset 137) */ + /* _mesa_function_pool[34042]: Vertex3fv (offset 137) */ "p\0" "glVertex3fv\0" "\0" - /* _mesa_function_pool[33412]: GetTexBumpParameterivATI (will be remapped) */ + /* _mesa_function_pool[34057]: GetTexBumpParameterivATI (will be remapped) */ "ip\0" "glGetTexBumpParameterivATI\0" "\0" - /* _mesa_function_pool[33443]: Binormal3bEXT (dynamic) */ + /* _mesa_function_pool[34088]: Binormal3bEXT (dynamic) */ "iii\0" "glBinormal3bEXT\0" "\0" - /* _mesa_function_pool[33464]: FragmentMaterialivSGIX (dynamic) */ + /* _mesa_function_pool[34109]: FragmentMaterialivSGIX (dynamic) */ "iip\0" "glFragmentMaterialivSGIX\0" "\0" - /* _mesa_function_pool[33494]: IsRenderbufferEXT (will be remapped) */ + /* _mesa_function_pool[34139]: IsRenderbufferEXT (will be remapped) */ "i\0" "glIsRenderbuffer\0" "glIsRenderbufferEXT\0" "\0" - /* _mesa_function_pool[33534]: GenProgramsNV (will be remapped) */ + /* _mesa_function_pool[34179]: GenProgramsNV (will be remapped) */ "ip\0" "glGenProgramsARB\0" "glGenProgramsNV\0" "\0" - /* _mesa_function_pool[33571]: VertexAttrib4dvNV (will be remapped) */ + /* _mesa_function_pool[34216]: VertexAttrib4dvNV (will be remapped) */ "ip\0" "glVertexAttrib4dvNV\0" "\0" - /* _mesa_function_pool[33595]: EndFragmentShaderATI (will be remapped) */ + /* _mesa_function_pool[34240]: EndFragmentShaderATI (will be remapped) */ "\0" "glEndFragmentShaderATI\0" "\0" - /* _mesa_function_pool[33620]: Binormal3iEXT (dynamic) */ + /* _mesa_function_pool[34265]: Binormal3iEXT (dynamic) */ "iii\0" "glBinormal3iEXT\0" "\0" - /* _mesa_function_pool[33641]: WindowPos2fMESA (will be remapped) */ + /* _mesa_function_pool[34286]: WindowPos2fMESA (will be remapped) */ "ff\0" "glWindowPos2f\0" "glWindowPos2fARB\0" @@ -4847,616 +4931,636 @@ static const char _mesa_function_pool[] = /* these functions need to be remapped */ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { - { 1577, AttachShader_remap_index }, - { 9967, CreateProgram_remap_index }, - { 23300, CreateShader_remap_index }, - { 25832, DeleteProgram_remap_index }, - { 18888, DeleteShader_remap_index }, - { 23801, DetachShader_remap_index }, - { 18202, GetAttachedShaders_remap_index }, - { 4919, GetProgramInfoLog_remap_index }, - { 405, GetProgramiv_remap_index }, - { 6627, GetShaderInfoLog_remap_index }, - { 31502, GetShaderiv_remap_index }, - { 13443, IsProgram_remap_index }, - { 12364, IsShader_remap_index }, - { 10097, StencilFuncSeparate_remap_index }, - { 3921, StencilMaskSeparate_remap_index }, - { 7692, StencilOpSeparate_remap_index }, - { 22560, UniformMatrix2x3fv_remap_index }, - { 2847, UniformMatrix2x4fv_remap_index }, - { 33214, UniformMatrix3x2fv_remap_index }, - { 30819, UniformMatrix3x4fv_remap_index }, - { 16406, UniformMatrix4x2fv_remap_index }, - { 3263, UniformMatrix4x3fv_remap_index }, - { 5080, ClampColor_remap_index }, - { 18256, ClearBufferfi_remap_index }, - { 17698, ClearBufferfv_remap_index }, - { 29842, ClearBufferiv_remap_index }, - { 13648, ClearBufferuiv_remap_index }, - { 20199, GetStringi_remap_index }, - { 2788, TexBuffer_remap_index }, - { 938, FramebufferTexture_remap_index }, - { 26868, GetBufferParameteri64v_remap_index }, - { 10197, GetInteger64i_v_remap_index }, - { 23614, VertexAttribDivisor_remap_index }, - { 9985, LoadTransposeMatrixdARB_remap_index }, - { 31231, LoadTransposeMatrixfARB_remap_index }, - { 5693, MultTransposeMatrixdARB_remap_index }, - { 23988, MultTransposeMatrixfARB_remap_index }, - { 216, SampleCoverageARB_remap_index }, - { 5919, CompressedTexImage1DARB_remap_index }, - { 24516, CompressedTexImage2DARB_remap_index }, - { 3984, CompressedTexImage3DARB_remap_index }, - { 18544, CompressedTexSubImage1DARB_remap_index }, - { 2050, CompressedTexSubImage2DARB_remap_index }, - { 20621, CompressedTexSubImage3DARB_remap_index }, - { 28948, GetCompressedTexImageARB_remap_index }, - { 3829, DisableVertexAttribArrayARB_remap_index }, - { 30384, EnableVertexAttribArrayARB_remap_index }, - { 32345, GetProgramEnvParameterdvARB_remap_index }, - { 23868, GetProgramEnvParameterfvARB_remap_index }, - { 27865, GetProgramLocalParameterdvARB_remap_index }, - { 8134, GetProgramLocalParameterfvARB_remap_index }, - { 18720, GetProgramStringARB_remap_index }, - { 28060, GetProgramivARB_remap_index }, - { 20816, GetVertexAttribdvARB_remap_index }, - { 16214, GetVertexAttribfvARB_remap_index }, - { 9809, GetVertexAttribivARB_remap_index }, - { 19662, ProgramEnvParameter4dARB_remap_index }, - { 25582, ProgramEnvParameter4dvARB_remap_index }, - { 17020, ProgramEnvParameter4fARB_remap_index }, - { 9009, ProgramEnvParameter4fvARB_remap_index }, - { 3947, ProgramLocalParameter4dARB_remap_index }, - { 13153, ProgramLocalParameter4dvARB_remap_index }, - { 29863, ProgramLocalParameter4fARB_remap_index }, - { 26228, ProgramLocalParameter4fvARB_remap_index }, - { 28702, ProgramStringARB_remap_index }, - { 19930, VertexAttrib1dARB_remap_index }, - { 15868, VertexAttrib1dvARB_remap_index }, - { 4143, VertexAttrib1fARB_remap_index }, - { 33295, VertexAttrib1fvARB_remap_index }, - { 7218, VertexAttrib1sARB_remap_index }, - { 2224, VertexAttrib1svARB_remap_index }, - { 15299, VertexAttrib2dARB_remap_index }, - { 17719, VertexAttrib2dvARB_remap_index }, - { 1596, VertexAttrib2fARB_remap_index }, - { 17832, VertexAttrib2fvARB_remap_index }, - { 32921, VertexAttrib2sARB_remap_index }, - { 31982, VertexAttrib2svARB_remap_index }, - { 11348, VertexAttrib3dARB_remap_index }, - { 8676, VertexAttrib3dvARB_remap_index }, - { 1683, VertexAttrib3fARB_remap_index }, - { 22851, VertexAttrib3fvARB_remap_index }, - { 28549, VertexAttrib3sARB_remap_index }, - { 20558, VertexAttrib3svARB_remap_index }, - { 4945, VertexAttrib4NbvARB_remap_index }, - { 18079, VertexAttrib4NivARB_remap_index }, - { 22806, VertexAttrib4NsvARB_remap_index }, - { 23820, VertexAttrib4NubARB_remap_index }, - { 32228, VertexAttrib4NubvARB_remap_index }, - { 19313, VertexAttrib4NuivARB_remap_index }, - { 3136, VertexAttrib4NusvARB_remap_index }, - { 10937, VertexAttrib4bvARB_remap_index }, - { 27238, VertexAttrib4dARB_remap_index }, - { 21580, VertexAttrib4dvARB_remap_index }, - { 11502, VertexAttrib4fARB_remap_index }, - { 11906, VertexAttrib4fvARB_remap_index }, - { 10313, VertexAttrib4ivARB_remap_index }, - { 17512, VertexAttrib4sARB_remap_index }, - { 31417, VertexAttrib4svARB_remap_index }, - { 16825, VertexAttrib4ubvARB_remap_index }, - { 30708, VertexAttrib4uivARB_remap_index }, - { 20369, VertexAttrib4usvARB_remap_index }, - { 22375, VertexAttribPointerARB_remap_index }, - { 33055, BindBufferARB_remap_index }, - { 6925, BufferDataARB_remap_index }, - { 1498, BufferSubDataARB_remap_index }, - { 30994, DeleteBuffersARB_remap_index }, - { 33338, GenBuffersARB_remap_index }, - { 17875, GetBufferParameterivARB_remap_index }, - { 16972, GetBufferPointervARB_remap_index }, - { 1451, GetBufferSubDataARB_remap_index }, - { 30656, IsBufferARB_remap_index }, - { 26712, MapBufferARB_remap_index }, - { 31632, UnmapBufferARB_remap_index }, - { 312, BeginQueryARB_remap_index }, - { 20025, DeleteQueriesARB_remap_index }, - { 12225, EndQueryARB_remap_index }, - { 29427, GenQueriesARB_remap_index }, - { 1942, GetQueryObjectivARB_remap_index }, - { 17556, GetQueryObjectuivARB_remap_index }, - { 1740, GetQueryivARB_remap_index }, - { 20276, IsQueryARB_remap_index }, - { 8286, AttachObjectARB_remap_index }, - { 18850, CompileShaderARB_remap_index }, - { 3205, CreateProgramObjectARB_remap_index }, - { 6870, CreateShaderObjectARB_remap_index }, - { 14601, DeleteObjectARB_remap_index }, - { 24307, DetachObjectARB_remap_index }, - { 11970, GetActiveUniformARB_remap_index }, - { 9484, GetAttachedObjectsARB_remap_index }, - { 9791, GetHandleARB_remap_index }, - { 33088, GetInfoLogARB_remap_index }, - { 32299, GetObjectParameterfvARB_remap_index }, - { 27739, GetObjectParameterivARB_remap_index }, - { 29185, GetShaderSourceARB_remap_index }, - { 28409, GetUniformLocationARB_remap_index }, - { 24090, GetUniformfvARB_remap_index }, - { 12728, GetUniformivARB_remap_index }, - { 20414, LinkProgramARB_remap_index }, - { 20472, ShaderSourceARB_remap_index }, - { 7592, Uniform1fARB_remap_index }, - { 30072, Uniform1fvARB_remap_index }, - { 22344, Uniform1iARB_remap_index }, - { 21269, Uniform1ivARB_remap_index }, - { 2173, Uniform2fARB_remap_index }, - { 14437, Uniform2fvARB_remap_index }, - { 26599, Uniform2iARB_remap_index }, - { 2293, Uniform2ivARB_remap_index }, - { 18960, Uniform3fARB_remap_index }, - { 9514, Uniform3fvARB_remap_index }, - { 6481, Uniform3iARB_remap_index }, - { 17078, Uniform3ivARB_remap_index }, - { 19468, Uniform4fARB_remap_index }, - { 23954, Uniform4fvARB_remap_index }, - { 25216, Uniform4iARB_remap_index }, - { 20782, Uniform4ivARB_remap_index }, - { 8338, UniformMatrix2fvARB_remap_index }, + { 1629, AttachShader_remap_index }, + { 10274, CreateProgram_remap_index }, + { 23765, CreateShader_remap_index }, + { 26289, DeleteProgram_remap_index }, + { 19245, DeleteShader_remap_index }, + { 24258, DetachShader_remap_index }, + { 18534, GetAttachedShaders_remap_index }, + { 5126, GetProgramInfoLog_remap_index }, + { 444, GetProgramiv_remap_index }, + { 6892, GetShaderInfoLog_remap_index }, + { 32043, GetShaderiv_remap_index }, + { 13807, IsProgram_remap_index }, + { 12698, IsShader_remap_index }, + { 10404, StencilFuncSeparate_remap_index }, + { 4156, StencilMaskSeparate_remap_index }, + { 7957, StencilOpSeparate_remap_index }, + { 22999, UniformMatrix2x3fv_remap_index }, + { 2998, UniformMatrix2x4fv_remap_index }, + { 33859, UniformMatrix3x2fv_remap_index }, + { 31360, UniformMatrix3x4fv_remap_index }, + { 16726, UniformMatrix4x2fv_remap_index }, + { 3417, UniformMatrix4x3fv_remap_index }, + { 5332, ClampColor_remap_index }, + { 18588, ClearBufferfi_remap_index }, + { 18004, ClearBufferfv_remap_index }, + { 30383, ClearBufferiv_remap_index }, + { 14012, ClearBufferuiv_remap_index }, + { 20582, GetStringi_remap_index }, + { 2900, TexBuffer_remap_index }, + { 977, FramebufferTexture_remap_index }, + { 27325, GetBufferParameteri64v_remap_index }, + { 10504, GetInteger64i_v_remap_index }, + { 24079, VertexAttribDivisor_remap_index }, + { 10292, LoadTransposeMatrixdARB_remap_index }, + { 31772, LoadTransposeMatrixfARB_remap_index }, + { 5971, MultTransposeMatrixdARB_remap_index }, + { 24445, MultTransposeMatrixfARB_remap_index }, + { 255, SampleCoverageARB_remap_index }, + { 6155, CompressedTexImage1DARB_remap_index }, + { 24973, CompressedTexImage2DARB_remap_index }, + { 4219, CompressedTexImage3DARB_remap_index }, + { 18876, CompressedTexSubImage1DARB_remap_index }, + { 2141, CompressedTexSubImage2DARB_remap_index }, + { 21004, CompressedTexSubImage3DARB_remap_index }, + { 29489, GetCompressedTexImageARB_remap_index }, + { 3983, DisableVertexAttribArrayARB_remap_index }, + { 30925, EnableVertexAttribArrayARB_remap_index }, + { 32847, GetProgramEnvParameterdvARB_remap_index }, + { 24325, GetProgramEnvParameterfvARB_remap_index }, + { 28354, GetProgramLocalParameterdvARB_remap_index }, + { 8433, GetProgramLocalParameterfvARB_remap_index }, + { 19052, GetProgramStringARB_remap_index }, + { 28549, GetProgramivARB_remap_index }, + { 21199, GetVertexAttribdvARB_remap_index }, + { 16534, GetVertexAttribfvARB_remap_index }, + { 10108, GetVertexAttribivARB_remap_index }, + { 20045, ProgramEnvParameter4dARB_remap_index }, + { 26039, ProgramEnvParameter4dvARB_remap_index }, + { 17302, ProgramEnvParameter4fARB_remap_index }, + { 9308, ProgramEnvParameter4fvARB_remap_index }, + { 4182, ProgramLocalParameter4dARB_remap_index }, + { 13517, ProgramLocalParameter4dvARB_remap_index }, + { 30404, ProgramLocalParameter4fARB_remap_index }, + { 26685, ProgramLocalParameter4fvARB_remap_index }, + { 29243, ProgramStringARB_remap_index }, + { 20313, VertexAttrib1dARB_remap_index }, + { 16161, VertexAttrib1dvARB_remap_index }, + { 4378, VertexAttrib1fARB_remap_index }, + { 33940, VertexAttrib1fvARB_remap_index }, + { 7483, VertexAttrib1sARB_remap_index }, + { 2336, VertexAttrib1svARB_remap_index }, + { 15592, VertexAttrib2dARB_remap_index }, + { 18025, VertexAttrib2dvARB_remap_index }, + { 1687, VertexAttrib2fARB_remap_index }, + { 18138, VertexAttrib2fvARB_remap_index }, + { 33540, VertexAttrib2sARB_remap_index }, + { 32484, VertexAttrib2svARB_remap_index }, + { 11682, VertexAttrib3dARB_remap_index }, + { 8975, VertexAttrib3dvARB_remap_index }, + { 1774, VertexAttrib3fARB_remap_index }, + { 23316, VertexAttrib3fvARB_remap_index }, + { 29090, VertexAttrib3sARB_remap_index }, + { 20941, VertexAttrib3svARB_remap_index }, + { 5152, VertexAttrib4NbvARB_remap_index }, + { 18411, VertexAttrib4NivARB_remap_index }, + { 23271, VertexAttrib4NsvARB_remap_index }, + { 24277, VertexAttrib4NubARB_remap_index }, + { 32730, VertexAttrib4NubvARB_remap_index }, + { 19696, VertexAttrib4NuivARB_remap_index }, + { 3290, VertexAttrib4NusvARB_remap_index }, + { 11271, VertexAttrib4bvARB_remap_index }, + { 27727, VertexAttrib4dARB_remap_index }, + { 21998, VertexAttrib4dvARB_remap_index }, + { 11836, VertexAttrib4fARB_remap_index }, + { 12240, VertexAttrib4fvARB_remap_index }, + { 10647, VertexAttrib4ivARB_remap_index }, + { 17818, VertexAttrib4sARB_remap_index }, + { 31958, VertexAttrib4svARB_remap_index }, + { 17107, VertexAttrib4ubvARB_remap_index }, + { 31249, VertexAttrib4uivARB_remap_index }, + { 20752, VertexAttrib4usvARB_remap_index }, + { 22814, VertexAttribPointerARB_remap_index }, + { 33700, BindBufferARB_remap_index }, + { 7190, BufferDataARB_remap_index }, + { 1550, BufferSubDataARB_remap_index }, + { 31535, DeleteBuffersARB_remap_index }, + { 33983, GenBuffersARB_remap_index }, + { 18181, GetBufferParameterivARB_remap_index }, + { 17254, GetBufferPointervARB_remap_index }, + { 1503, GetBufferSubDataARB_remap_index }, + { 31197, IsBufferARB_remap_index }, + { 27169, MapBufferARB_remap_index }, + { 32173, UnmapBufferARB_remap_index }, + { 351, BeginQueryARB_remap_index }, + { 20408, DeleteQueriesARB_remap_index }, + { 12559, EndQueryARB_remap_index }, + { 29968, GenQueriesARB_remap_index }, + { 2033, GetQueryObjectivARB_remap_index }, + { 17862, GetQueryObjectuivARB_remap_index }, + { 1831, GetQueryivARB_remap_index }, + { 20659, IsQueryARB_remap_index }, + { 8585, AttachObjectARB_remap_index }, + { 19207, CompileShaderARB_remap_index }, + { 3359, CreateProgramObjectARB_remap_index }, + { 7135, CreateShaderObjectARB_remap_index }, + { 14894, DeleteObjectARB_remap_index }, + { 24764, DetachObjectARB_remap_index }, + { 12304, GetActiveUniformARB_remap_index }, + { 9783, GetAttachedObjectsARB_remap_index }, + { 10090, GetHandleARB_remap_index }, + { 33733, GetInfoLogARB_remap_index }, + { 32801, GetObjectParameterfvARB_remap_index }, + { 28228, GetObjectParameterivARB_remap_index }, + { 29726, GetShaderSourceARB_remap_index }, + { 28950, GetUniformLocationARB_remap_index }, + { 24547, GetUniformfvARB_remap_index }, + { 13092, GetUniformivARB_remap_index }, + { 20797, LinkProgramARB_remap_index }, + { 20855, ShaderSourceARB_remap_index }, + { 7857, Uniform1fARB_remap_index }, + { 30613, Uniform1fvARB_remap_index }, + { 22762, Uniform1iARB_remap_index }, + { 21652, Uniform1ivARB_remap_index }, + { 2285, Uniform2fARB_remap_index }, + { 14730, Uniform2fvARB_remap_index }, + { 27056, Uniform2iARB_remap_index }, + { 2405, Uniform2ivARB_remap_index }, + { 19317, Uniform3fARB_remap_index }, + { 9813, Uniform3fvARB_remap_index }, + { 6746, Uniform3iARB_remap_index }, + { 17360, Uniform3ivARB_remap_index }, + { 19851, Uniform4fARB_remap_index }, + { 24411, Uniform4fvARB_remap_index }, + { 25673, Uniform4iARB_remap_index }, + { 21165, Uniform4ivARB_remap_index }, + { 8637, UniformMatrix2fvARB_remap_index }, { 17, UniformMatrix3fvARB_remap_index }, - { 2690, UniformMatrix4fvARB_remap_index }, - { 25694, UseProgramObjectARB_remap_index }, - { 14987, ValidateProgramARB_remap_index }, - { 21623, BindAttribLocationARB_remap_index }, - { 4990, GetActiveAttribARB_remap_index }, - { 16726, GetAttribLocationARB_remap_index }, - { 29790, DrawBuffersARB_remap_index }, - { 29623, ClampColorARB_remap_index }, - { 18124, DrawArraysInstancedARB_remap_index }, - { 6542, DrawElementsInstancedARB_remap_index }, - { 13258, RenderbufferStorageMultisample_remap_index }, - { 13729, FramebufferTextureARB_remap_index }, - { 26130, FramebufferTextureFaceARB_remap_index }, - { 24456, ProgramParameteriARB_remap_index }, - { 23772, VertexAttribDivisorARB_remap_index }, - { 19516, FlushMappedBufferRange_remap_index }, - { 28176, MapBufferRange_remap_index }, - { 28083, TexBufferARB_remap_index }, - { 16544, BindVertexArray_remap_index }, - { 14810, GenVertexArrays_remap_index }, - { 30586, CopyBufferSubData_remap_index }, - { 31521, ClientWaitSync_remap_index }, - { 2609, DeleteSync_remap_index }, - { 7259, FenceSync_remap_index }, - { 15358, GetInteger64v_remap_index }, - { 22913, GetSynciv_remap_index }, - { 29729, IsSync_remap_index }, - { 9432, WaitSync_remap_index }, - { 3797, DrawElementsBaseVertex_remap_index }, - { 30898, DrawRangeElementsBaseVertex_remap_index }, - { 26743, MultiDrawElementsBaseVertex_remap_index }, - { 16792, BlendEquationSeparateiARB_remap_index }, - { 17968, BlendEquationiARB_remap_index }, - { 12697, BlendFuncSeparateiARB_remap_index }, - { 9857, BlendFunciARB_remap_index }, - { 8200, BindSampler_remap_index }, - { 4122, DeleteSamplers_remap_index }, - { 19889, GenSamplers_remap_index }, - { 29661, GetSamplerParameterIiv_remap_index }, - { 19410, GetSamplerParameterIuiv_remap_index }, - { 4839, GetSamplerParameterfv_remap_index }, - { 25851, GetSamplerParameteriv_remap_index }, - { 14355, IsSampler_remap_index }, - { 16497, SamplerParameterIiv_remap_index }, - { 30937, SamplerParameterIuiv_remap_index }, - { 22612, SamplerParameterf_remap_index }, - { 16653, SamplerParameterfv_remap_index }, - { 22587, SamplerParameteri_remap_index }, - { 18318, SamplerParameteriv_remap_index }, - { 5141, BindTransformFeedback_remap_index }, - { 3232, DeleteTransformFeedbacks_remap_index }, - { 6514, DrawTransformFeedback_remap_index }, - { 9651, GenTransformFeedbacks_remap_index }, - { 28592, IsTransformFeedback_remap_index }, - { 26323, PauseTransformFeedback_remap_index }, - { 5578, ResumeTransformFeedback_remap_index }, - { 21943, ClearDepthf_remap_index }, - { 6818, DepthRangef_remap_index }, - { 14622, GetShaderPrecisionFormat_remap_index }, - { 10037, ReleaseShaderCompiler_remap_index }, - { 10980, ShaderBinary_remap_index }, - { 5446, PolygonOffsetEXT_remap_index }, - { 23535, GetPixelTexGenParameterfvSGIS_remap_index }, - { 4438, GetPixelTexGenParameterivSGIS_remap_index }, - { 23268, PixelTexGenParameterfSGIS_remap_index }, - { 624, PixelTexGenParameterfvSGIS_remap_index }, - { 12766, PixelTexGenParameteriSGIS_remap_index }, - { 13903, PixelTexGenParameterivSGIS_remap_index }, - { 18443, SampleMaskSGIS_remap_index }, - { 20216, SamplePatternSGIS_remap_index }, - { 26672, ColorPointerEXT_remap_index }, - { 17762, EdgeFlagPointerEXT_remap_index }, - { 6135, IndexPointerEXT_remap_index }, - { 6215, NormalPointerEXT_remap_index }, - { 15952, TexCoordPointerEXT_remap_index }, - { 7048, VertexPointerEXT_remap_index }, - { 3599, PointParameterfEXT_remap_index }, - { 7899, PointParameterfvEXT_remap_index }, - { 32397, LockArraysEXT_remap_index }, - { 15051, UnlockArraysEXT_remap_index }, - { 1267, SecondaryColor3bEXT_remap_index }, - { 8058, SecondaryColor3bvEXT_remap_index }, - { 10490, SecondaryColor3dEXT_remap_index }, - { 25900, SecondaryColor3dvEXT_remap_index }, - { 28458, SecondaryColor3fEXT_remap_index }, - { 18480, SecondaryColor3fvEXT_remap_index }, - { 470, SecondaryColor3iEXT_remap_index }, - { 16262, SecondaryColor3ivEXT_remap_index }, - { 10125, SecondaryColor3sEXT_remap_index }, - { 31185, SecondaryColor3svEXT_remap_index }, - { 27575, SecondaryColor3ubEXT_remap_index }, - { 21514, SecondaryColor3ubvEXT_remap_index }, - { 13008, SecondaryColor3uiEXT_remap_index }, - { 23155, SecondaryColor3uivEXT_remap_index }, - { 26180, SecondaryColor3usEXT_remap_index }, - { 13081, SecondaryColor3usvEXT_remap_index }, - { 11849, SecondaryColorPointerEXT_remap_index }, - { 25994, MultiDrawArraysEXT_remap_index }, - { 21204, MultiDrawElementsEXT_remap_index }, - { 21399, FogCoordPointerEXT_remap_index }, - { 4587, FogCoorddEXT_remap_index }, - { 31798, FogCoorddvEXT_remap_index }, - { 4704, FogCoordfEXT_remap_index }, - { 27498, FogCoordfvEXT_remap_index }, - { 11949, PixelTexGenSGIX_remap_index }, - { 28103, BlendFuncSeparateEXT_remap_index }, - { 6960, FlushVertexArrayRangeNV_remap_index }, - { 5395, VertexArrayRangeNV_remap_index }, - { 28523, CombinerInputNV_remap_index }, - { 2116, CombinerOutputNV_remap_index }, - { 31338, CombinerParameterfNV_remap_index }, - { 5269, CombinerParameterfvNV_remap_index }, - { 22637, CombinerParameteriNV_remap_index }, - { 32813, CombinerParameterivNV_remap_index }, - { 7336, FinalCombinerInputNV_remap_index }, - { 9878, GetCombinerInputParameterfvNV_remap_index }, - { 32650, GetCombinerInputParameterivNV_remap_index }, - { 14004, GetCombinerOutputParameterfvNV_remap_index }, - { 13832, GetCombinerOutputParameterivNV_remap_index }, - { 6722, GetFinalCombinerInputParameterfvNV_remap_index }, - { 25088, GetFinalCombinerInputParameterivNV_remap_index }, - { 12675, ResizeBuffersMESA_remap_index }, - { 11175, WindowPos2dMESA_remap_index }, - { 1060, WindowPos2dvMESA_remap_index }, - { 33641, WindowPos2fMESA_remap_index }, - { 8003, WindowPos2fvMESA_remap_index }, - { 18390, WindowPos2iMESA_remap_index }, - { 20689, WindowPos2ivMESA_remap_index }, - { 21303, WindowPos2sMESA_remap_index }, - { 5833, WindowPos2svMESA_remap_index }, - { 7828, WindowPos3dMESA_remap_index }, - { 14150, WindowPos3dvMESA_remap_index }, - { 516, WindowPos3fMESA_remap_index }, - { 15112, WindowPos3fvMESA_remap_index }, - { 24349, WindowPos3iMESA_remap_index }, - { 30531, WindowPos3ivMESA_remap_index }, - { 19105, WindowPos3sMESA_remap_index }, - { 32054, WindowPos3svMESA_remap_index }, - { 11126, WindowPos4dMESA_remap_index }, - { 17216, WindowPos4dvMESA_remap_index }, - { 14109, WindowPos4fMESA_remap_index }, - { 31092, WindowPos4fvMESA_remap_index }, - { 30684, WindowPos4iMESA_remap_index }, - { 12478, WindowPos4ivMESA_remap_index }, - { 19289, WindowPos4sMESA_remap_index }, - { 3183, WindowPos4svMESA_remap_index }, - { 13871, MultiModeDrawArraysIBM_remap_index }, - { 29298, MultiModeDrawElementsIBM_remap_index }, - { 12253, DeleteFencesNV_remap_index }, - { 28370, FinishFenceNV_remap_index }, - { 3721, GenFencesNV_remap_index }, - { 17196, GetFenceivNV_remap_index }, - { 8271, IsFenceNV_remap_index }, - { 13759, SetFenceNV_remap_index }, - { 4199, TestFenceNV_remap_index }, - { 32025, AreProgramsResidentNV_remap_index }, - { 31380, BindProgramNV_remap_index }, - { 26263, DeleteProgramsNV_remap_index }, - { 21732, ExecuteProgramNV_remap_index }, - { 33534, GenProgramsNV_remap_index }, - { 23640, GetProgramParameterdvNV_remap_index }, - { 10552, GetProgramParameterfvNV_remap_index }, - { 26646, GetProgramStringNV_remap_index }, - { 24726, GetProgramivNV_remap_index }, - { 23903, GetTrackMatrixivNV_remap_index }, - { 26440, GetVertexAttribPointervNV_remap_index }, - { 25021, GetVertexAttribdvNV_remap_index }, - { 9327, GetVertexAttribfvNV_remap_index }, - { 18693, GetVertexAttribivNV_remap_index }, - { 19546, IsProgramNV_remap_index }, - { 9410, LoadProgramNV_remap_index }, - { 28199, ProgramParameters4dvNV_remap_index }, - { 24656, ProgramParameters4fvNV_remap_index }, - { 20993, RequestResidentProgramsNV_remap_index }, - { 30876, TrackMatrixNV_remap_index }, - { 32627, VertexAttrib1dNV_remap_index }, - { 13670, VertexAttrib1dvNV_remap_index }, - { 28804, VertexAttrib1fNV_remap_index }, - { 2415, VertexAttrib1fvNV_remap_index }, - { 31149, VertexAttrib1sNV_remap_index }, - { 15185, VertexAttrib1svNV_remap_index }, - { 4895, VertexAttrib2dNV_remap_index }, - { 13563, VertexAttrib2dvNV_remap_index }, - { 20448, VertexAttrib2fNV_remap_index }, - { 13129, VertexAttrib2fvNV_remap_index }, - { 6045, VertexAttrib2sNV_remap_index }, - { 19159, VertexAttrib2svNV_remap_index }, - { 11323, VertexAttrib3dNV_remap_index }, - { 32275, VertexAttrib3dvNV_remap_index }, - { 10364, VertexAttrib3fNV_remap_index }, - { 25048, VertexAttrib3fvNV_remap_index }, - { 22430, VertexAttrib3sNV_remap_index }, - { 23930, VertexAttrib3svNV_remap_index }, - { 29272, VertexAttrib4dNV_remap_index }, - { 33571, VertexAttrib4dvNV_remap_index }, - { 4488, VertexAttrib4fNV_remap_index }, - { 9460, VertexAttrib4fvNV_remap_index }, - { 27122, VertexAttrib4sNV_remap_index }, - { 1409, VertexAttrib4svNV_remap_index }, - { 5053, VertexAttrib4ubNV_remap_index }, - { 778, VertexAttrib4ubvNV_remap_index }, - { 21912, VertexAttribPointerNV_remap_index }, - { 2267, VertexAttribs1dvNV_remap_index }, - { 26528, VertexAttribs1fvNV_remap_index }, - { 33371, VertexAttribs1svNV_remap_index }, - { 10389, VertexAttribs2dvNV_remap_index }, - { 25655, VertexAttribs2fvNV_remap_index }, - { 17788, VertexAttribs2svNV_remap_index }, - { 5297, VertexAttribs3dvNV_remap_index }, - { 2147, VertexAttribs3fvNV_remap_index }, - { 30279, VertexAttribs3svNV_remap_index }, - { 27212, VertexAttribs4dvNV_remap_index }, - { 5369, VertexAttribs4fvNV_remap_index }, - { 33158, VertexAttribs4svNV_remap_index }, - { 30027, VertexAttribs4ubvNV_remap_index }, - { 27282, GetTexBumpParameterfvATI_remap_index }, - { 33412, GetTexBumpParameterivATI_remap_index }, - { 18803, TexBumpParameterfvATI_remap_index }, - { 20864, TexBumpParameterivATI_remap_index }, - { 15731, AlphaFragmentOp1ATI_remap_index }, - { 25946, AlphaFragmentOp2ATI_remap_index }, - { 24964, AlphaFragmentOp3ATI_remap_index }, - { 30206, BeginFragmentShaderATI_remap_index }, - { 31579, BindFragmentShaderATI_remap_index }, - { 24059, ColorFragmentOp1ATI_remap_index }, - { 4366, ColorFragmentOp2ATI_remap_index }, - { 31920, ColorFragmentOp3ATI_remap_index }, - { 5535, DeleteFragmentShaderATI_remap_index }, - { 33595, EndFragmentShaderATI_remap_index }, - { 32841, GenFragmentShadersATI_remap_index }, - { 25809, PassTexCoordATI_remap_index }, - { 7028, SampleMapATI_remap_index }, - { 27393, SetFragmentShaderConstantATI_remap_index }, - { 363, PointParameteriNV_remap_index }, - { 14311, PointParameterivNV_remap_index }, - { 29111, ActiveStencilFaceEXT_remap_index }, - { 27839, BindVertexArrayAPPLE_remap_index }, - { 2737, DeleteVertexArraysAPPLE_remap_index }, - { 18229, GenVertexArraysAPPLE_remap_index }, - { 23705, IsVertexArrayAPPLE_remap_index }, - { 819, GetProgramNamedParameterdvNV_remap_index }, - { 3562, GetProgramNamedParameterfvNV_remap_index }, - { 27313, ProgramNamedParameter4dNV_remap_index }, - { 14685, ProgramNamedParameter4dvNV_remap_index }, - { 8943, ProgramNamedParameter4fNV_remap_index }, - { 11814, ProgramNamedParameter4fvNV_remap_index }, - { 17127, PrimitiveRestartIndexNV_remap_index }, - { 31069, PrimitiveRestartNV_remap_index }, - { 24635, DepthBoundsEXT_remap_index }, - { 1159, BlendEquationSeparateEXT_remap_index }, - { 14886, BindFramebufferEXT_remap_index }, - { 26039, BindRenderbufferEXT_remap_index }, - { 9707, CheckFramebufferStatusEXT_remap_index }, - { 22956, DeleteFramebuffersEXT_remap_index }, - { 32177, DeleteRenderbuffersEXT_remap_index }, - { 13587, FramebufferRenderbufferEXT_remap_index }, - { 13776, FramebufferTexture1DEXT_remap_index }, - { 11608, FramebufferTexture2DEXT_remap_index }, - { 11228, FramebufferTexture3DEXT_remap_index }, - { 23571, GenFramebuffersEXT_remap_index }, - { 17653, GenRenderbuffersEXT_remap_index }, - { 6764, GenerateMipmapEXT_remap_index }, - { 22005, GetFramebufferAttachmentParameterivEXT_remap_index }, - { 32747, GetRenderbufferParameterivEXT_remap_index }, - { 20744, IsFramebufferEXT_remap_index }, - { 33494, IsRenderbufferEXT_remap_index }, - { 8218, RenderbufferStorageEXT_remap_index }, - { 695, BlitFramebufferEXT_remap_index }, - { 14471, BufferParameteriAPPLE_remap_index }, - { 19578, FlushMappedBufferRangeAPPLE_remap_index }, - { 1815, BindFragDataLocationEXT_remap_index }, - { 24748, GetFragDataLocationEXT_remap_index }, - { 10667, GetUniformuivEXT_remap_index }, - { 2933, GetVertexAttribIivEXT_remap_index }, - { 4216, GetVertexAttribIuivEXT_remap_index }, - { 12086, Uniform1uiEXT_remap_index }, - { 28284, Uniform1uivEXT_remap_index }, - { 22526, Uniform2uiEXT_remap_index }, - { 4330, Uniform2uivEXT_remap_index }, - { 29551, Uniform3uiEXT_remap_index }, - { 14832, Uniform3uivEXT_remap_index }, - { 3486, Uniform4uiEXT_remap_index }, - { 8719, Uniform4uivEXT_remap_index }, - { 18608, VertexAttribI1iEXT_remap_index }, - { 965, VertexAttribI1ivEXT_remap_index }, - { 2516, VertexAttribI1uiEXT_remap_index }, - { 12857, VertexAttribI1uivEXT_remap_index }, + { 2802, UniformMatrix4fvARB_remap_index }, + { 26151, UseProgramObjectARB_remap_index }, + { 15280, ValidateProgramARB_remap_index }, + { 22041, BindAttribLocationARB_remap_index }, + { 5197, GetActiveAttribARB_remap_index }, + { 17041, GetAttribLocationARB_remap_index }, + { 30331, DrawBuffersARB_remap_index }, + { 30164, ClampColorARB_remap_index }, + { 18456, DrawArraysInstancedARB_remap_index }, + { 6807, DrawElementsInstancedARB_remap_index }, + { 13622, RenderbufferStorageMultisample_remap_index }, + { 14093, FramebufferTextureARB_remap_index }, + { 26587, FramebufferTextureFaceARB_remap_index }, + { 24913, ProgramParameteriARB_remap_index }, + { 6327, VertexAttribDivisorARB_remap_index }, + { 19899, FlushMappedBufferRange_remap_index }, + { 28665, MapBufferRange_remap_index }, + { 28572, TexBufferARB_remap_index }, + { 16864, BindVertexArray_remap_index }, + { 15103, GenVertexArrays_remap_index }, + { 31127, CopyBufferSubData_remap_index }, + { 32062, ClientWaitSync_remap_index }, + { 2721, DeleteSync_remap_index }, + { 7524, FenceSync_remap_index }, + { 15651, GetInteger64v_remap_index }, + { 23378, GetSynciv_remap_index }, + { 30270, IsSync_remap_index }, + { 9731, WaitSync_remap_index }, + { 3951, DrawElementsBaseVertex_remap_index }, + { 31439, DrawRangeElementsBaseVertex_remap_index }, + { 27200, MultiDrawElementsBaseVertex_remap_index }, + { 33006, BlendEquationSeparateiARB_remap_index }, + { 18274, BlendEquationiARB_remap_index }, + { 13031, BlendFuncSeparateiARB_remap_index }, + { 10156, BlendFunciARB_remap_index }, + { 8499, BindSampler_remap_index }, + { 4357, DeleteSamplers_remap_index }, + { 20272, GenSamplers_remap_index }, + { 30202, GetSamplerParameterIiv_remap_index }, + { 19793, GetSamplerParameterIuiv_remap_index }, + { 5046, GetSamplerParameterfv_remap_index }, + { 26308, GetSamplerParameteriv_remap_index }, + { 14648, IsSampler_remap_index }, + { 16817, SamplerParameterIiv_remap_index }, + { 31478, SamplerParameterIuiv_remap_index }, + { 23051, SamplerParameterf_remap_index }, + { 16973, SamplerParameterfv_remap_index }, + { 23026, SamplerParameteri_remap_index }, + { 18650, SamplerParameteriv_remap_index }, + { 5393, BindTransformFeedback_remap_index }, + { 3386, DeleteTransformFeedbacks_remap_index }, + { 6779, DrawTransformFeedback_remap_index }, + { 9950, GenTransformFeedbacks_remap_index }, + { 29133, IsTransformFeedback_remap_index }, + { 26780, PauseTransformFeedback_remap_index }, + { 5856, ResumeTransformFeedback_remap_index }, + { 22361, ClearDepthf_remap_index }, + { 7083, DepthRangef_remap_index }, + { 14915, GetShaderPrecisionFormat_remap_index }, + { 10344, ReleaseShaderCompiler_remap_index }, + { 11314, ShaderBinary_remap_index }, + { 1004, GetGraphicsResetStatusARB_remap_index }, + { 25478, GetnColorTableARB_remap_index }, + { 8268, GetnCompressedTexImageARB_remap_index }, + { 4090, GetnConvolutionFilterARB_remap_index }, + { 16204, GetnHistogramARB_remap_index }, + { 24237, GetnMapdvARB_remap_index }, + { 22793, GetnMapfvARB_remap_index }, + { 2264, GetnMapivARB_remap_index }, + { 17622, GetnMinmaxARB_remap_index }, + { 4671, GetnPixelMapfvARB_remap_index }, + { 19670, GetnPixelMapuivARB_remap_index }, + { 3111, GetnPixelMapusvARB_remap_index }, + { 1383, GetnPolygonStippleARB_remap_index }, + { 21826, GetnSeparableFilterARB_remap_index }, + { 33582, GetnTexImageARB_remap_index }, + { 19079, GetnUniformdvARB_remap_index }, + { 4743, GetnUniformfvARB_remap_index }, + { 10199, GetnUniformivARB_remap_index }, + { 23227, GetnUniformuivARB_remap_index }, + { 3025, ReadnPixelsARB_remap_index }, + { 5724, PolygonOffsetEXT_remap_index }, + { 24000, GetPixelTexGenParameterfvSGIS_remap_index }, + { 4621, GetPixelTexGenParameterivSGIS_remap_index }, + { 23733, PixelTexGenParameterfSGIS_remap_index }, + { 663, PixelTexGenParameterfvSGIS_remap_index }, + { 13130, PixelTexGenParameteriSGIS_remap_index }, + { 14235, PixelTexGenParameterivSGIS_remap_index }, + { 18775, SampleMaskSGIS_remap_index }, + { 20599, SamplePatternSGIS_remap_index }, + { 27129, ColorPointerEXT_remap_index }, + { 18068, EdgeFlagPointerEXT_remap_index }, + { 6400, IndexPointerEXT_remap_index }, + { 6480, NormalPointerEXT_remap_index }, + { 16272, TexCoordPointerEXT_remap_index }, + { 7313, VertexPointerEXT_remap_index }, + { 3753, PointParameterfEXT_remap_index }, + { 8164, PointParameterfvEXT_remap_index }, + { 32899, LockArraysEXT_remap_index }, + { 15344, UnlockArraysEXT_remap_index }, + { 1291, SecondaryColor3bEXT_remap_index }, + { 8357, SecondaryColor3bvEXT_remap_index }, + { 10824, SecondaryColor3dEXT_remap_index }, + { 26357, SecondaryColor3dvEXT_remap_index }, + { 28999, SecondaryColor3fEXT_remap_index }, + { 18812, SecondaryColor3fvEXT_remap_index }, + { 509, SecondaryColor3iEXT_remap_index }, + { 16582, SecondaryColor3ivEXT_remap_index }, + { 10432, SecondaryColor3sEXT_remap_index }, + { 31726, SecondaryColor3svEXT_remap_index }, + { 28064, SecondaryColor3ubEXT_remap_index }, + { 21932, SecondaryColor3ubvEXT_remap_index }, + { 13372, SecondaryColor3uiEXT_remap_index }, + { 23620, SecondaryColor3uivEXT_remap_index }, + { 26637, SecondaryColor3usEXT_remap_index }, + { 13445, SecondaryColor3usvEXT_remap_index }, + { 12183, SecondaryColorPointerEXT_remap_index }, + { 26451, MultiDrawArraysEXT_remap_index }, + { 21587, MultiDrawElementsEXT_remap_index }, + { 21782, FogCoordPointerEXT_remap_index }, + { 4794, FogCoorddEXT_remap_index }, + { 32300, FogCoorddvEXT_remap_index }, + { 4911, FogCoordfEXT_remap_index }, + { 27987, FogCoordfvEXT_remap_index }, + { 12283, PixelTexGenSGIX_remap_index }, + { 28592, BlendFuncSeparateEXT_remap_index }, + { 7225, FlushVertexArrayRangeNV_remap_index }, + { 5673, VertexArrayRangeNV_remap_index }, + { 29064, CombinerInputNV_remap_index }, + { 2207, CombinerOutputNV_remap_index }, + { 31879, CombinerParameterfNV_remap_index }, + { 5547, CombinerParameterfvNV_remap_index }, + { 23076, CombinerParameteriNV_remap_index }, + { 33382, CombinerParameterivNV_remap_index }, + { 7601, FinalCombinerInputNV_remap_index }, + { 1648, GetCombinerInputParameterfvNV_remap_index }, + { 33219, GetCombinerInputParameterivNV_remap_index }, + { 216, GetCombinerOutputParameterfvNV_remap_index }, + { 14196, GetCombinerOutputParameterivNV_remap_index }, + { 6987, GetFinalCombinerInputParameterfvNV_remap_index }, + { 25545, GetFinalCombinerInputParameterivNV_remap_index }, + { 13009, ResizeBuffersMESA_remap_index }, + { 11509, WindowPos2dMESA_remap_index }, + { 1084, WindowPos2dvMESA_remap_index }, + { 34286, WindowPos2fMESA_remap_index }, + { 8302, WindowPos2fvMESA_remap_index }, + { 18722, WindowPos2iMESA_remap_index }, + { 21072, WindowPos2ivMESA_remap_index }, + { 21686, WindowPos2sMESA_remap_index }, + { 6069, WindowPos2svMESA_remap_index }, + { 8093, WindowPos3dMESA_remap_index }, + { 14443, WindowPos3dvMESA_remap_index }, + { 555, WindowPos3fMESA_remap_index }, + { 15405, WindowPos3fvMESA_remap_index }, + { 24806, WindowPos3iMESA_remap_index }, + { 31072, WindowPos3ivMESA_remap_index }, + { 19462, WindowPos3sMESA_remap_index }, + { 32556, WindowPos3svMESA_remap_index }, + { 11460, WindowPos4dMESA_remap_index }, + { 17498, WindowPos4dvMESA_remap_index }, + { 14402, WindowPos4fMESA_remap_index }, + { 31633, WindowPos4fvMESA_remap_index }, + { 31225, WindowPos4iMESA_remap_index }, + { 12812, WindowPos4ivMESA_remap_index }, + { 19646, WindowPos4sMESA_remap_index }, + { 3337, WindowPos4svMESA_remap_index }, + { 27695, MultiModeDrawArraysIBM_remap_index }, + { 29839, MultiModeDrawElementsIBM_remap_index }, + { 12587, DeleteFencesNV_remap_index }, + { 28911, FinishFenceNV_remap_index }, + { 3875, GenFencesNV_remap_index }, + { 17478, GetFenceivNV_remap_index }, + { 8570, IsFenceNV_remap_index }, + { 14123, SetFenceNV_remap_index }, + { 4434, TestFenceNV_remap_index }, + { 32527, AreProgramsResidentNV_remap_index }, + { 31921, BindProgramNV_remap_index }, + { 26720, DeleteProgramsNV_remap_index }, + { 22150, ExecuteProgramNV_remap_index }, + { 34179, GenProgramsNV_remap_index }, + { 24105, GetProgramParameterdvNV_remap_index }, + { 10886, GetProgramParameterfvNV_remap_index }, + { 27103, GetProgramStringNV_remap_index }, + { 25183, GetProgramivNV_remap_index }, + { 24360, GetTrackMatrixivNV_remap_index }, + { 26897, GetVertexAttribPointervNV_remap_index }, + { 10527, GetVertexAttribdvNV_remap_index }, + { 9626, GetVertexAttribfvNV_remap_index }, + { 19025, GetVertexAttribivNV_remap_index }, + { 19929, IsProgramNV_remap_index }, + { 9709, LoadProgramNV_remap_index }, + { 28688, ProgramParameters4dvNV_remap_index }, + { 25113, ProgramParameters4fvNV_remap_index }, + { 21376, RequestResidentProgramsNV_remap_index }, + { 31417, TrackMatrixNV_remap_index }, + { 33196, VertexAttrib1dNV_remap_index }, + { 14034, VertexAttrib1dvNV_remap_index }, + { 29345, VertexAttrib1fNV_remap_index }, + { 2527, VertexAttrib1fvNV_remap_index }, + { 31690, VertexAttrib1sNV_remap_index }, + { 15478, VertexAttrib1svNV_remap_index }, + { 5102, VertexAttrib2dNV_remap_index }, + { 13927, VertexAttrib2dvNV_remap_index }, + { 20831, VertexAttrib2fNV_remap_index }, + { 13493, VertexAttrib2fvNV_remap_index }, + { 6281, VertexAttrib2sNV_remap_index }, + { 19516, VertexAttrib2svNV_remap_index }, + { 11657, VertexAttrib3dNV_remap_index }, + { 32777, VertexAttrib3dvNV_remap_index }, + { 10698, VertexAttrib3fNV_remap_index }, + { 25505, VertexAttrib3fvNV_remap_index }, + { 22869, VertexAttrib3sNV_remap_index }, + { 24387, VertexAttrib3svNV_remap_index }, + { 29813, VertexAttrib4dNV_remap_index }, + { 34216, VertexAttrib4dvNV_remap_index }, + { 5487, VertexAttrib4fNV_remap_index }, + { 9759, VertexAttrib4fvNV_remap_index }, + { 27579, VertexAttrib4sNV_remap_index }, + { 1461, VertexAttrib4svNV_remap_index }, + { 5260, VertexAttrib4ubNV_remap_index }, + { 817, VertexAttrib4ubvNV_remap_index }, + { 22330, VertexAttribPointerNV_remap_index }, + { 2379, VertexAttribs1dvNV_remap_index }, + { 26985, VertexAttribs1fvNV_remap_index }, + { 34016, VertexAttribs1svNV_remap_index }, + { 10723, VertexAttribs2dvNV_remap_index }, + { 26112, VertexAttribs2fvNV_remap_index }, + { 18094, VertexAttribs2svNV_remap_index }, + { 5575, VertexAttribs3dvNV_remap_index }, + { 2238, VertexAttribs3fvNV_remap_index }, + { 30820, VertexAttribs3svNV_remap_index }, + { 27669, VertexAttribs4dvNV_remap_index }, + { 5647, VertexAttribs4fvNV_remap_index }, + { 33803, VertexAttribs4svNV_remap_index }, + { 30568, VertexAttribs4ubvNV_remap_index }, + { 27771, GetTexBumpParameterfvATI_remap_index }, + { 34057, GetTexBumpParameterivATI_remap_index }, + { 19160, TexBumpParameterfvATI_remap_index }, + { 21247, TexBumpParameterivATI_remap_index }, + { 16024, AlphaFragmentOp1ATI_remap_index }, + { 26403, AlphaFragmentOp2ATI_remap_index }, + { 25421, AlphaFragmentOp3ATI_remap_index }, + { 30747, BeginFragmentShaderATI_remap_index }, + { 32120, BindFragmentShaderATI_remap_index }, + { 24516, ColorFragmentOp1ATI_remap_index }, + { 4549, ColorFragmentOp2ATI_remap_index }, + { 32422, ColorFragmentOp3ATI_remap_index }, + { 5813, DeleteFragmentShaderATI_remap_index }, + { 34240, EndFragmentShaderATI_remap_index }, + { 33410, GenFragmentShadersATI_remap_index }, + { 26266, PassTexCoordATI_remap_index }, + { 7293, SampleMapATI_remap_index }, + { 27882, SetFragmentShaderConstantATI_remap_index }, + { 402, PointParameteriNV_remap_index }, + { 14604, PointParameterivNV_remap_index }, + { 29652, ActiveStencilFaceEXT_remap_index }, + { 28328, BindVertexArrayAPPLE_remap_index }, + { 2849, DeleteVertexArraysAPPLE_remap_index }, + { 18561, GenVertexArraysAPPLE_remap_index }, + { 24170, IsVertexArrayAPPLE_remap_index }, + { 858, GetProgramNamedParameterdvNV_remap_index }, + { 3716, GetProgramNamedParameterfvNV_remap_index }, + { 27802, ProgramNamedParameter4dNV_remap_index }, + { 14978, ProgramNamedParameter4dvNV_remap_index }, + { 9242, ProgramNamedParameter4fNV_remap_index }, + { 12148, ProgramNamedParameter4fvNV_remap_index }, + { 17409, PrimitiveRestartIndexNV_remap_index }, + { 31610, PrimitiveRestartNV_remap_index }, + { 25092, DepthBoundsEXT_remap_index }, + { 1183, BlendEquationSeparateEXT_remap_index }, + { 15179, BindFramebufferEXT_remap_index }, + { 26496, BindRenderbufferEXT_remap_index }, + { 10006, CheckFramebufferStatusEXT_remap_index }, + { 23421, DeleteFramebuffersEXT_remap_index }, + { 32679, DeleteRenderbuffersEXT_remap_index }, + { 13951, FramebufferRenderbufferEXT_remap_index }, + { 14140, FramebufferTexture1DEXT_remap_index }, + { 11942, FramebufferTexture2DEXT_remap_index }, + { 11562, FramebufferTexture3DEXT_remap_index }, + { 24036, GenFramebuffersEXT_remap_index }, + { 17959, GenRenderbuffersEXT_remap_index }, + { 7029, GenerateMipmapEXT_remap_index }, + { 22423, GetFramebufferAttachmentParameterivEXT_remap_index }, + { 33316, GetRenderbufferParameterivEXT_remap_index }, + { 21127, IsFramebufferEXT_remap_index }, + { 34139, IsRenderbufferEXT_remap_index }, + { 8517, RenderbufferStorageEXT_remap_index }, + { 734, BlitFramebufferEXT_remap_index }, + { 14764, BufferParameteriAPPLE_remap_index }, + { 19961, FlushMappedBufferRangeAPPLE_remap_index }, + { 1906, BindFragDataLocationEXT_remap_index }, + { 25205, GetFragDataLocationEXT_remap_index }, + { 11001, GetUniformuivEXT_remap_index }, + { 33490, GetVertexAttribIivEXT_remap_index }, + { 28859, GetVertexAttribIuivEXT_remap_index }, + { 12420, Uniform1uiEXT_remap_index }, + { 28773, Uniform1uivEXT_remap_index }, + { 22965, Uniform2uiEXT_remap_index }, + { 4513, Uniform2uivEXT_remap_index }, + { 30092, Uniform3uiEXT_remap_index }, + { 15125, Uniform3uivEXT_remap_index }, + { 3640, Uniform4uiEXT_remap_index }, + { 9018, Uniform4uivEXT_remap_index }, + { 18940, VertexAttribI1iEXT_remap_index }, + { 5287, VertexAttribI1ivEXT_remap_index }, + { 2628, VertexAttribI1uiEXT_remap_index }, + { 13221, VertexAttribI1uivEXT_remap_index }, { 81, VertexAttribI2iEXT_remap_index }, - { 24171, VertexAttribI2ivEXT_remap_index }, - { 5323, VertexAttribI2uiEXT_remap_index }, - { 4749, VertexAttribI2uivEXT_remap_index }, - { 26914, VertexAttribI3iEXT_remap_index }, - { 25373, VertexAttribI3ivEXT_remap_index }, - { 3340, VertexAttribI3uiEXT_remap_index }, - { 30772, VertexAttribI3uivEXT_remap_index }, - { 22256, VertexAttribI4bvEXT_remap_index }, - { 14764, VertexAttribI4iEXT_remap_index }, - { 32446, VertexAttribI4ivEXT_remap_index }, - { 13490, VertexAttribI4svEXT_remap_index }, - { 16679, VertexAttribI4ubvEXT_remap_index }, - { 16325, VertexAttribI4uiEXT_remap_index }, - { 5469, VertexAttribI4uivEXT_remap_index }, - { 11391, VertexAttribI4usvEXT_remap_index }, - { 18747, VertexAttribIPointerEXT_remap_index }, - { 3027, FramebufferTextureLayerEXT_remap_index }, - { 5745, ColorMaskIndexedEXT_remap_index }, - { 19183, DisableIndexedEXT_remap_index }, - { 26959, EnableIndexedEXT_remap_index }, - { 21960, GetBooleanIndexedvEXT_remap_index }, - { 11002, GetIntegerIndexedvEXT_remap_index }, - { 23032, IsEnabledIndexedEXT_remap_index }, - { 22932, ClearColorIiEXT_remap_index }, - { 3436, ClearColorIuiEXT_remap_index }, - { 9917, GetTexParameterIivEXT_remap_index }, - { 5993, GetTexParameterIuivEXT_remap_index }, - { 2983, TexParameterIivEXT_remap_index }, - { 26781, TexParameterIuivEXT_remap_index }, - { 4617, BeginConditionalRenderNV_remap_index }, - { 25759, EndConditionalRenderNV_remap_index }, - { 9354, BeginTransformFeedbackEXT_remap_index }, - { 19218, BindBufferBaseEXT_remap_index }, - { 19077, BindBufferOffsetEXT_remap_index }, - { 12303, BindBufferRangeEXT_remap_index }, - { 14386, EndTransformFeedbackEXT_remap_index }, - { 10865, GetTransformFeedbackVaryingEXT_remap_index }, - { 21049, TransformFeedbackVaryingsEXT_remap_index }, - { 29928, ProvokingVertexEXT_remap_index }, - { 10813, GetTexParameterPointervAPPLE_remap_index }, - { 5097, TextureRangeAPPLE_remap_index }, - { 11680, GetObjectParameterivAPPLE_remap_index }, - { 20171, ObjectPurgeableAPPLE_remap_index }, - { 5787, ObjectUnpurgeableAPPLE_remap_index }, - { 17475, ActiveProgramEXT_remap_index }, - { 17446, CreateShaderProgramEXT_remap_index }, - { 28896, UseShaderProgramEXT_remap_index }, - { 16632, TextureBarrierNV_remap_index }, - { 29137, StencilFuncSeparateATI_remap_index }, - { 5658, ProgramEnvParameters4fvEXT_remap_index }, - { 17340, ProgramLocalParameters4fvEXT_remap_index }, - { 14239, GetQueryObjecti64vEXT_remap_index }, - { 10415, GetQueryObjectui64vEXT_remap_index }, - { 24128, EGLImageTargetRenderbufferStorageOES_remap_index }, - { 12192, EGLImageTargetTexture2DOES_remap_index }, + { 24628, VertexAttribI2ivEXT_remap_index }, + { 5601, VertexAttribI2uiEXT_remap_index }, + { 4956, VertexAttribI2uivEXT_remap_index }, + { 27371, VertexAttribI3iEXT_remap_index }, + { 25830, VertexAttribI3ivEXT_remap_index }, + { 3494, VertexAttribI3uiEXT_remap_index }, + { 31313, VertexAttribI3uivEXT_remap_index }, + { 22674, VertexAttribI4bvEXT_remap_index }, + { 15057, VertexAttribI4iEXT_remap_index }, + { 32948, VertexAttribI4ivEXT_remap_index }, + { 13854, VertexAttribI4svEXT_remap_index }, + { 4043, VertexAttribI4ubvEXT_remap_index }, + { 16645, VertexAttribI4uiEXT_remap_index }, + { 5747, VertexAttribI4uivEXT_remap_index }, + { 11725, VertexAttribI4usvEXT_remap_index }, + { 19104, VertexAttribIPointerEXT_remap_index }, + { 3181, FramebufferTextureLayerEXT_remap_index }, + { 16999, ColorMaskIndexedEXT_remap_index }, + { 19540, DisableIndexedEXT_remap_index }, + { 27416, EnableIndexedEXT_remap_index }, + { 22378, GetBooleanIndexedvEXT_remap_index }, + { 11336, GetIntegerIndexedvEXT_remap_index }, + { 23497, IsEnabledIndexedEXT_remap_index }, + { 23397, ClearColorIiEXT_remap_index }, + { 3590, ClearColorIuiEXT_remap_index }, + { 10224, GetTexParameterIivEXT_remap_index }, + { 6229, GetTexParameterIuivEXT_remap_index }, + { 3137, TexParameterIivEXT_remap_index }, + { 27238, TexParameterIuivEXT_remap_index }, + { 4824, BeginConditionalRenderNV_remap_index }, + { 26216, EndConditionalRenderNV_remap_index }, + { 9653, BeginTransformFeedbackEXT_remap_index }, + { 19575, BindBufferBaseEXT_remap_index }, + { 19434, BindBufferOffsetEXT_remap_index }, + { 12637, BindBufferRangeEXT_remap_index }, + { 14679, EndTransformFeedbackEXT_remap_index }, + { 11199, GetTransformFeedbackVaryingEXT_remap_index }, + { 21432, TransformFeedbackVaryingsEXT_remap_index }, + { 30469, ProvokingVertexEXT_remap_index }, + { 11147, GetTexParameterPointervAPPLE_remap_index }, + { 5349, TextureRangeAPPLE_remap_index }, + { 12014, GetObjectParameterivAPPLE_remap_index }, + { 20554, ObjectPurgeableAPPLE_remap_index }, + { 6023, ObjectUnpurgeableAPPLE_remap_index }, + { 17781, ActiveProgramEXT_remap_index }, + { 17752, CreateShaderProgramEXT_remap_index }, + { 29437, UseShaderProgramEXT_remap_index }, + { 16952, TextureBarrierNV_remap_index }, + { 29678, StencilFuncSeparateATI_remap_index }, + { 5936, ProgramEnvParameters4fvEXT_remap_index }, + { 17646, ProgramLocalParameters4fvEXT_remap_index }, + { 14532, GetQueryObjecti64vEXT_remap_index }, + { 10749, GetQueryObjectui64vEXT_remap_index }, + { 24585, EGLImageTargetRenderbufferStorageOES_remap_index }, + { 12526, EGLImageTargetTexture2DOES_remap_index }, { -1, -1 } }; /* these functions are in the ABI, but have alternative names */ static const struct gl_function_remap MESA_alt_functions[] = { /* from GL_EXT_blend_color */ - { 2655, _gloffset_BlendColor }, + { 2767, _gloffset_BlendColor }, /* from GL_EXT_blend_minmax */ - { 11285, _gloffset_BlendEquation }, + { 11619, _gloffset_BlendEquation }, /* from GL_EXT_color_subtable */ - { 17238, _gloffset_ColorSubTable }, - { 32109, _gloffset_CopyColorSubTable }, + { 17520, _gloffset_ColorSubTable }, + { 32611, _gloffset_CopyColorSubTable }, /* from GL_EXT_convolution */ - { 257, _gloffset_ConvolutionFilter1D }, - { 2454, _gloffset_CopyConvolutionFilter1D }, - { 4058, _gloffset_GetConvolutionParameteriv }, - { 8567, _gloffset_ConvolutionFilter2D }, - { 8769, _gloffset_ConvolutionParameteriv }, - { 9229, _gloffset_ConvolutionParameterfv }, - { 20892, _gloffset_GetSeparableFilter }, - { 24403, _gloffset_SeparableFilter2D }, - { 25266, _gloffset_ConvolutionParameteri }, - { 25434, _gloffset_ConvolutionParameterf }, - { 27148, _gloffset_GetConvolutionParameterfv }, - { 28005, _gloffset_GetConvolutionFilter }, - { 30468, _gloffset_CopyConvolutionFilter2D }, + { 296, _gloffset_ConvolutionFilter1D }, + { 2566, _gloffset_CopyConvolutionFilter1D }, + { 4293, _gloffset_GetConvolutionParameteriv }, + { 8866, _gloffset_ConvolutionFilter2D }, + { 9068, _gloffset_ConvolutionParameteriv }, + { 9528, _gloffset_ConvolutionParameterfv }, + { 21275, _gloffset_GetSeparableFilter }, + { 24860, _gloffset_SeparableFilter2D }, + { 25723, _gloffset_ConvolutionParameteri }, + { 25891, _gloffset_ConvolutionParameterf }, + { 27605, _gloffset_GetConvolutionParameterfv }, + { 28494, _gloffset_GetConvolutionFilter }, + { 31009, _gloffset_CopyConvolutionFilter2D }, /* from GL_EXT_copy_texture */ - { 15245, _gloffset_CopyTexSubImage3D }, - { 16925, _gloffset_CopyTexImage2D }, - { 24874, _gloffset_CopyTexImage1D }, - { 27686, _gloffset_CopyTexSubImage2D }, - { 30106, _gloffset_CopyTexSubImage1D }, + { 15538, _gloffset_CopyTexSubImage3D }, + { 17207, _gloffset_CopyTexImage2D }, + { 25331, _gloffset_CopyTexImage1D }, + { 28175, _gloffset_CopyTexSubImage2D }, + { 30647, _gloffset_CopyTexSubImage1D }, /* from GL_EXT_draw_range_elements */ - { 9566, _gloffset_DrawRangeElements }, + { 9865, _gloffset_DrawRangeElements }, /* from GL_EXT_histogram */ - { 856, _gloffset_Histogram }, - { 3522, _gloffset_ResetHistogram }, - { 10063, _gloffset_GetMinmax }, - { 15579, _gloffset_GetHistogramParameterfv }, - { 24799, _gloffset_GetMinmaxParameteriv }, - { 27038, _gloffset_ResetMinmax }, - { 27902, _gloffset_GetHistogramParameteriv }, - { 29071, _gloffset_GetHistogram }, - { 31695, _gloffset_Minmax }, - { 33241, _gloffset_GetMinmaxParameterfv }, + { 895, _gloffset_Histogram }, + { 3676, _gloffset_ResetHistogram }, + { 10370, _gloffset_GetMinmax }, + { 15872, _gloffset_GetHistogramParameterfv }, + { 25256, _gloffset_GetMinmaxParameteriv }, + { 27495, _gloffset_ResetMinmax }, + { 28391, _gloffset_GetHistogramParameteriv }, + { 29612, _gloffset_GetHistogram }, + { 32236, _gloffset_Minmax }, + { 33886, _gloffset_GetMinmaxParameterfv }, /* from GL_EXT_paletted_texture */ - { 8429, _gloffset_ColorTable }, - { 15425, _gloffset_GetColorTable }, - { 23318, _gloffset_GetColorTableParameterfv }, - { 25490, _gloffset_GetColorTableParameteriv }, + { 8728, _gloffset_ColorTable }, + { 15718, _gloffset_GetColorTable }, + { 23783, _gloffset_GetColorTableParameterfv }, + { 25947, _gloffset_GetColorTableParameteriv }, /* from GL_EXT_subtexture */ - { 7174, _gloffset_TexSubImage1D }, - { 10740, _gloffset_TexSubImage2D }, + { 7439, _gloffset_TexSubImage1D }, + { 11074, _gloffset_TexSubImage2D }, /* from GL_EXT_texture3D */ - { 1774, _gloffset_TexImage3D }, - { 23087, _gloffset_TexSubImage3D }, + { 1865, _gloffset_TexImage3D }, + { 23552, _gloffset_TexSubImage3D }, /* from GL_EXT_texture_object */ - { 3290, _gloffset_PrioritizeTextures }, - { 7623, _gloffset_AreTexturesResident }, - { 13694, _gloffset_GenTextures }, - { 15911, _gloffset_DeleteTextures }, - { 19859, _gloffset_IsTexture }, - { 30171, _gloffset_BindTexture }, + { 3444, _gloffset_PrioritizeTextures }, + { 7888, _gloffset_AreTexturesResident }, + { 14058, _gloffset_GenTextures }, + { 16231, _gloffset_DeleteTextures }, + { 20242, _gloffset_IsTexture }, + { 30712, _gloffset_BindTexture }, /* from GL_EXT_vertex_array */ - { 24575, _gloffset_ArrayElement }, - { 31283, _gloffset_GetPointerv }, - { 32868, _gloffset_DrawArrays }, + { 25032, _gloffset_ArrayElement }, + { 31824, _gloffset_GetPointerv }, + { 33437, _gloffset_DrawArrays }, /* from GL_SGI_color_table */ - { 7741, _gloffset_ColorTableParameteriv }, - { 8429, _gloffset_ColorTable }, - { 15425, _gloffset_GetColorTable }, - { 15535, _gloffset_CopyColorTable }, - { 19720, _gloffset_ColorTableParameterfv }, - { 23318, _gloffset_GetColorTableParameterfv }, - { 25490, _gloffset_GetColorTableParameteriv }, + { 8006, _gloffset_ColorTableParameteriv }, + { 8728, _gloffset_ColorTable }, + { 15718, _gloffset_GetColorTable }, + { 15828, _gloffset_CopyColorTable }, + { 20103, _gloffset_ColorTableParameterfv }, + { 23783, _gloffset_GetColorTableParameterfv }, + { 25947, _gloffset_GetColorTableParameteriv }, /* from GL_VERSION_1_3 */ - { 425, _gloffset_MultiTexCoord3sARB }, - { 657, _gloffset_ActiveTextureARB }, - { 4268, _gloffset_MultiTexCoord1fvARB }, - { 6240, _gloffset_MultiTexCoord3dARB }, - { 6285, _gloffset_MultiTexCoord2iARB }, - { 6409, _gloffset_MultiTexCoord2svARB }, - { 8385, _gloffset_MultiTexCoord2fARB }, - { 10445, _gloffset_MultiTexCoord3fvARB }, - { 11047, _gloffset_MultiTexCoord4sARB }, - { 11728, _gloffset_MultiTexCoord2dvARB }, - { 12135, _gloffset_MultiTexCoord1svARB }, - { 12536, _gloffset_MultiTexCoord3svARB }, - { 12597, _gloffset_MultiTexCoord4iARB }, - { 13398, _gloffset_MultiTexCoord3iARB }, - { 14268, _gloffset_MultiTexCoord1dARB }, - { 14500, _gloffset_MultiTexCoord3dvARB }, - { 15779, _gloffset_MultiTexCoord3ivARB }, - { 15824, _gloffset_MultiTexCoord2sARB }, - { 17295, _gloffset_MultiTexCoord4ivARB }, - { 19360, _gloffset_ClientActiveTextureARB }, - { 21688, _gloffset_MultiTexCoord2dARB }, - { 22125, _gloffset_MultiTexCoord4dvARB }, - { 22481, _gloffset_MultiTexCoord4fvARB }, - { 23459, _gloffset_MultiTexCoord3fARB }, - { 26084, _gloffset_MultiTexCoord4dARB }, - { 26350, _gloffset_MultiTexCoord1sARB }, - { 26554, _gloffset_MultiTexCoord1dvARB }, - { 27530, _gloffset_MultiTexCoord1ivARB }, - { 27623, _gloffset_MultiTexCoord2ivARB }, - { 27962, _gloffset_MultiTexCoord1iARB }, - { 29346, _gloffset_MultiTexCoord4svARB }, - { 29970, _gloffset_MultiTexCoord1fARB }, - { 30233, _gloffset_MultiTexCoord4fARB }, - { 32702, _gloffset_MultiTexCoord2fvARB }, + { 464, _gloffset_MultiTexCoord3sARB }, + { 696, _gloffset_ActiveTextureARB }, + { 4451, _gloffset_MultiTexCoord1fvARB }, + { 6505, _gloffset_MultiTexCoord3dARB }, + { 6550, _gloffset_MultiTexCoord2iARB }, + { 6674, _gloffset_MultiTexCoord2svARB }, + { 8684, _gloffset_MultiTexCoord2fARB }, + { 10779, _gloffset_MultiTexCoord3fvARB }, + { 11381, _gloffset_MultiTexCoord4sARB }, + { 12062, _gloffset_MultiTexCoord2dvARB }, + { 12469, _gloffset_MultiTexCoord1svARB }, + { 12870, _gloffset_MultiTexCoord3svARB }, + { 12931, _gloffset_MultiTexCoord4iARB }, + { 13762, _gloffset_MultiTexCoord3iARB }, + { 14561, _gloffset_MultiTexCoord1dARB }, + { 14793, _gloffset_MultiTexCoord3dvARB }, + { 16072, _gloffset_MultiTexCoord3ivARB }, + { 16117, _gloffset_MultiTexCoord2sARB }, + { 17577, _gloffset_MultiTexCoord4ivARB }, + { 19743, _gloffset_ClientActiveTextureARB }, + { 22106, _gloffset_MultiTexCoord2dARB }, + { 22543, _gloffset_MultiTexCoord4dvARB }, + { 22920, _gloffset_MultiTexCoord4fvARB }, + { 23924, _gloffset_MultiTexCoord3fARB }, + { 26541, _gloffset_MultiTexCoord4dARB }, + { 26807, _gloffset_MultiTexCoord1sARB }, + { 27011, _gloffset_MultiTexCoord1dvARB }, + { 28019, _gloffset_MultiTexCoord1ivARB }, + { 28112, _gloffset_MultiTexCoord2ivARB }, + { 28451, _gloffset_MultiTexCoord1iARB }, + { 29887, _gloffset_MultiTexCoord4svARB }, + { 30511, _gloffset_MultiTexCoord1fARB }, + { 30774, _gloffset_MultiTexCoord4fARB }, + { 33271, _gloffset_MultiTexCoord2fvARB }, { -1, -1 } }; @@ -5464,7 +5568,14 @@ static const struct gl_function_remap MESA_alt_functions[] = { #if defined(need_GL_3DFX_tbuffer) static const struct gl_function_remap GL_3DFX_tbuffer_functions[] = { - { 9287, -1 }, /* TbufferMask3DFX */ + { 9586, -1 }, /* TbufferMask3DFX */ + { -1, -1 } +}; +#endif + +#if defined(need_GL_AMD_draw_buffers_blend) +/* functions defined in MESA_remap_table_functions are excluded */ +static const struct gl_function_remap GL_AMD_draw_buffers_blend_functions[] = { { -1, -1 } }; #endif @@ -5556,7 +5667,7 @@ static const struct gl_function_remap GL_ARB_framebuffer_object_functions[] = { #if defined(need_GL_ARB_geometry_shader4) /* functions defined in MESA_remap_table_functions are excluded */ static const struct gl_function_remap GL_ARB_geometry_shader4_functions[] = { - { 12500, -1 }, /* FramebufferTextureLayer */ + { 12834, -1 }, /* FramebufferTextureLayer */ { -1, -1 } }; #endif @@ -5577,11 +5688,11 @@ static const struct gl_function_remap GL_ARB_map_buffer_range_functions[] = { #if defined(need_GL_ARB_matrix_palette) static const struct gl_function_remap GL_ARB_matrix_palette_functions[] = { - { 3773, -1 }, /* MatrixIndexusvARB */ - { 13219, -1 }, /* MatrixIndexuivARB */ - { 14655, -1 }, /* MatrixIndexPointerARB */ - { 20126, -1 }, /* CurrentPaletteMatrixARB */ - { 23203, -1 }, /* MatrixIndexubvARB */ + { 3927, -1 }, /* MatrixIndexusvARB */ + { 13583, -1 }, /* MatrixIndexuivARB */ + { 14948, -1 }, /* MatrixIndexPointerARB */ + { 20509, -1 }, /* CurrentPaletteMatrixARB */ + { 23668, -1 }, /* MatrixIndexubvARB */ { -1, -1 } }; #endif @@ -5614,6 +5725,13 @@ static const struct gl_function_remap GL_ARB_provoking_vertex_functions[] = { }; #endif +#if defined(need_GL_ARB_robustness) +/* functions defined in MESA_remap_table_functions are excluded */ +static const struct gl_function_remap GL_ARB_robustness_functions[] = { + { -1, -1 } +}; +#endif + #if defined(need_GL_ARB_sampler_objects) /* functions defined in MESA_remap_table_functions are excluded */ static const struct gl_function_remap GL_ARB_sampler_objects_functions[] = { @@ -5672,16 +5790,16 @@ static const struct gl_function_remap GL_ARB_vertex_array_object_functions[] = { #if defined(need_GL_ARB_vertex_blend) static const struct gl_function_remap GL_ARB_vertex_blend_functions[] = { - { 2396, -1 }, /* WeightubvARB */ - { 6652, -1 }, /* WeightivARB */ - { 11150, -1 }, /* WeightPointerARB */ - { 13986, -1 }, /* WeightfvARB */ - { 17814, -1 }, /* WeightbvARB */ - { 21356, -1 }, /* WeightusvARB */ - { 24329, -1 }, /* VertexBlendARB */ - { 30054, -1 }, /* WeightsvARB */ - { 32159, -1 }, /* WeightdvARB */ - { 32902, -1 }, /* WeightuivARB */ + { 2508, -1 }, /* WeightubvARB */ + { 6917, -1 }, /* WeightivARB */ + { 11484, -1 }, /* WeightPointerARB */ + { 14318, -1 }, /* WeightfvARB */ + { 18120, -1 }, /* WeightbvARB */ + { 21739, -1 }, /* WeightusvARB */ + { 24786, -1 }, /* VertexBlendARB */ + { 30595, -1 }, /* WeightsvARB */ + { 32661, -1 }, /* WeightdvARB */ + { 33471, -1 }, /* WeightuivARB */ { -1, -1 } }; #endif @@ -5751,7 +5869,7 @@ static const struct gl_function_remap GL_ATI_separate_stencil_functions[] = { #if defined(need_GL_EXT_blend_color) static const struct gl_function_remap GL_EXT_blend_color_functions[] = { - { 2655, _gloffset_BlendColor }, + { 2767, _gloffset_BlendColor }, { -1, -1 } }; #endif @@ -5772,15 +5890,15 @@ static const struct gl_function_remap GL_EXT_blend_func_separate_functions[] = { #if defined(need_GL_EXT_blend_minmax) static const struct gl_function_remap GL_EXT_blend_minmax_functions[] = { - { 11285, _gloffset_BlendEquation }, + { 11619, _gloffset_BlendEquation }, { -1, -1 } }; #endif #if defined(need_GL_EXT_color_subtable) static const struct gl_function_remap GL_EXT_color_subtable_functions[] = { - { 17238, _gloffset_ColorSubTable }, - { 32109, _gloffset_CopyColorSubTable }, + { 17520, _gloffset_ColorSubTable }, + { 32611, _gloffset_CopyColorSubTable }, { -1, -1 } }; #endif @@ -5794,66 +5912,66 @@ static const struct gl_function_remap GL_EXT_compiled_vertex_array_functions[] = #if defined(need_GL_EXT_convolution) static const struct gl_function_remap GL_EXT_convolution_functions[] = { - { 257, _gloffset_ConvolutionFilter1D }, - { 2454, _gloffset_CopyConvolutionFilter1D }, - { 4058, _gloffset_GetConvolutionParameteriv }, - { 8567, _gloffset_ConvolutionFilter2D }, - { 8769, _gloffset_ConvolutionParameteriv }, - { 9229, _gloffset_ConvolutionParameterfv }, - { 20892, _gloffset_GetSeparableFilter }, - { 24403, _gloffset_SeparableFilter2D }, - { 25266, _gloffset_ConvolutionParameteri }, - { 25434, _gloffset_ConvolutionParameterf }, - { 27148, _gloffset_GetConvolutionParameterfv }, - { 28005, _gloffset_GetConvolutionFilter }, - { 30468, _gloffset_CopyConvolutionFilter2D }, + { 296, _gloffset_ConvolutionFilter1D }, + { 2566, _gloffset_CopyConvolutionFilter1D }, + { 4293, _gloffset_GetConvolutionParameteriv }, + { 8866, _gloffset_ConvolutionFilter2D }, + { 9068, _gloffset_ConvolutionParameteriv }, + { 9528, _gloffset_ConvolutionParameterfv }, + { 21275, _gloffset_GetSeparableFilter }, + { 24860, _gloffset_SeparableFilter2D }, + { 25723, _gloffset_ConvolutionParameteri }, + { 25891, _gloffset_ConvolutionParameterf }, + { 27605, _gloffset_GetConvolutionParameterfv }, + { 28494, _gloffset_GetConvolutionFilter }, + { 31009, _gloffset_CopyConvolutionFilter2D }, { -1, -1 } }; #endif #if defined(need_GL_EXT_coordinate_frame) static const struct gl_function_remap GL_EXT_coordinate_frame_functions[] = { - { 10584, -1 }, /* TangentPointerEXT */ - { 12655, -1 }, /* Binormal3ivEXT */ - { 13351, -1 }, /* Tangent3sEXT */ - { 14720, -1 }, /* Tangent3fvEXT */ - { 18831, -1 }, /* Tangent3ivEXT */ - { 19058, -1 }, /* Tangent3dvEXT */ - { 19806, -1 }, /* Binormal3bvEXT */ - { 20945, -1 }, /* Binormal3dEXT */ - { 23135, -1 }, /* Tangent3fEXT */ - { 25338, -1 }, /* Binormal3sEXT */ - { 25880, -1 }, /* Tangent3dEXT */ - { 26827, -1 }, /* Binormal3svEXT */ - { 27428, -1 }, /* Binormal3fEXT */ - { 28336, -1 }, /* Binormal3dvEXT */ - { 29603, -1 }, /* Tangent3iEXT */ - { 30753, -1 }, /* Tangent3bvEXT */ - { 31318, -1 }, /* Tangent3bEXT */ - { 31882, -1 }, /* Binormal3fvEXT */ - { 32601, -1 }, /* BinormalPointerEXT */ - { 33006, -1 }, /* Tangent3svEXT */ - { 33443, -1 }, /* Binormal3bEXT */ - { 33620, -1 }, /* Binormal3iEXT */ + { 10918, -1 }, /* TangentPointerEXT */ + { 12989, -1 }, /* Binormal3ivEXT */ + { 13715, -1 }, /* Tangent3sEXT */ + { 15013, -1 }, /* Tangent3fvEXT */ + { 19188, -1 }, /* Tangent3ivEXT */ + { 19415, -1 }, /* Tangent3dvEXT */ + { 20189, -1 }, /* Binormal3bvEXT */ + { 21328, -1 }, /* Binormal3dEXT */ + { 23600, -1 }, /* Tangent3fEXT */ + { 25795, -1 }, /* Binormal3sEXT */ + { 26337, -1 }, /* Tangent3dEXT */ + { 27284, -1 }, /* Binormal3svEXT */ + { 27917, -1 }, /* Binormal3fEXT */ + { 28825, -1 }, /* Binormal3dvEXT */ + { 30144, -1 }, /* Tangent3iEXT */ + { 31294, -1 }, /* Tangent3bvEXT */ + { 31859, -1 }, /* Tangent3bEXT */ + { 32384, -1 }, /* Binormal3fvEXT */ + { 33170, -1 }, /* BinormalPointerEXT */ + { 33651, -1 }, /* Tangent3svEXT */ + { 34088, -1 }, /* Binormal3bEXT */ + { 34265, -1 }, /* Binormal3iEXT */ { -1, -1 } }; #endif #if defined(need_GL_EXT_copy_texture) static const struct gl_function_remap GL_EXT_copy_texture_functions[] = { - { 15245, _gloffset_CopyTexSubImage3D }, - { 16925, _gloffset_CopyTexImage2D }, - { 24874, _gloffset_CopyTexImage1D }, - { 27686, _gloffset_CopyTexSubImage2D }, - { 30106, _gloffset_CopyTexSubImage1D }, + { 15538, _gloffset_CopyTexSubImage3D }, + { 17207, _gloffset_CopyTexImage2D }, + { 25331, _gloffset_CopyTexImage1D }, + { 28175, _gloffset_CopyTexSubImage2D }, + { 30647, _gloffset_CopyTexSubImage1D }, { -1, -1 } }; #endif #if defined(need_GL_EXT_cull_vertex) static const struct gl_function_remap GL_EXT_cull_vertex_functions[] = { - { 8918, -1 }, /* CullParameterdvEXT */ - { 11773, -1 }, /* CullParameterfvEXT */ + { 9217, -1 }, /* CullParameterdvEXT */ + { 12107, -1 }, /* CullParameterfvEXT */ { -1, -1 } }; #endif @@ -5881,7 +5999,7 @@ static const struct gl_function_remap GL_EXT_draw_instanced_functions[] = { #if defined(need_GL_EXT_draw_range_elements) static const struct gl_function_remap GL_EXT_draw_range_elements_functions[] = { - { 9566, _gloffset_DrawRangeElements }, + { 9865, _gloffset_DrawRangeElements }, { -1, -1 } }; #endif @@ -5930,39 +6048,39 @@ static const struct gl_function_remap GL_EXT_gpu_shader4_functions[] = { #if defined(need_GL_EXT_histogram) static const struct gl_function_remap GL_EXT_histogram_functions[] = { - { 856, _gloffset_Histogram }, - { 3522, _gloffset_ResetHistogram }, - { 10063, _gloffset_GetMinmax }, - { 15579, _gloffset_GetHistogramParameterfv }, - { 24799, _gloffset_GetMinmaxParameteriv }, - { 27038, _gloffset_ResetMinmax }, - { 27902, _gloffset_GetHistogramParameteriv }, - { 29071, _gloffset_GetHistogram }, - { 31695, _gloffset_Minmax }, - { 33241, _gloffset_GetMinmaxParameterfv }, + { 895, _gloffset_Histogram }, + { 3676, _gloffset_ResetHistogram }, + { 10370, _gloffset_GetMinmax }, + { 15872, _gloffset_GetHistogramParameterfv }, + { 25256, _gloffset_GetMinmaxParameteriv }, + { 27495, _gloffset_ResetMinmax }, + { 28391, _gloffset_GetHistogramParameteriv }, + { 29612, _gloffset_GetHistogram }, + { 32236, _gloffset_Minmax }, + { 33886, _gloffset_GetMinmaxParameterfv }, { -1, -1 } }; #endif #if defined(need_GL_EXT_index_func) static const struct gl_function_remap GL_EXT_index_func_functions[] = { - { 11559, -1 }, /* IndexFuncEXT */ + { 11893, -1 }, /* IndexFuncEXT */ { -1, -1 } }; #endif #if defined(need_GL_EXT_index_material) static const struct gl_function_remap GL_EXT_index_material_functions[] = { - { 21443, -1 }, /* IndexMaterialEXT */ + { 21861, -1 }, /* IndexMaterialEXT */ { -1, -1 } }; #endif #if defined(need_GL_EXT_light_texture) static const struct gl_function_remap GL_EXT_light_texture_functions[] = { - { 26847, -1 }, /* ApplyTextureEXT */ - { 26992, -1 }, /* TextureMaterialEXT */ - { 27017, -1 }, /* TextureLightEXT */ + { 27304, -1 }, /* ApplyTextureEXT */ + { 27449, -1 }, /* TextureMaterialEXT */ + { 27474, -1 }, /* TextureLightEXT */ { -1, -1 } }; #endif @@ -5983,20 +6101,20 @@ static const struct gl_function_remap GL_EXT_multisample_functions[] = { #if defined(need_GL_EXT_paletted_texture) static const struct gl_function_remap GL_EXT_paletted_texture_functions[] = { - { 8429, _gloffset_ColorTable }, - { 15425, _gloffset_GetColorTable }, - { 23318, _gloffset_GetColorTableParameterfv }, - { 25490, _gloffset_GetColorTableParameteriv }, + { 8728, _gloffset_ColorTable }, + { 15718, _gloffset_GetColorTable }, + { 23783, _gloffset_GetColorTableParameterfv }, + { 25947, _gloffset_GetColorTableParameteriv }, { -1, -1 } }; #endif #if defined(need_GL_EXT_pixel_transform) static const struct gl_function_remap GL_EXT_pixel_transform_functions[] = { - { 22090, -1 }, /* PixelTransformParameterfEXT */ - { 22170, -1 }, /* PixelTransformParameteriEXT */ - { 31033, -1 }, /* PixelTransformParameterfvEXT */ - { 32565, -1 }, /* PixelTransformParameterivEXT */ + { 22508, -1 }, /* PixelTransformParameterfEXT */ + { 22588, -1 }, /* PixelTransformParameteriEXT */ + { 31574, -1 }, /* PixelTransformParameterfvEXT */ + { 33134, -1 }, /* PixelTransformParameterivEXT */ { -1, -1 } }; #endif @@ -6045,16 +6163,16 @@ static const struct gl_function_remap GL_EXT_stencil_two_side_functions[] = { #if defined(need_GL_EXT_subtexture) static const struct gl_function_remap GL_EXT_subtexture_functions[] = { - { 7174, _gloffset_TexSubImage1D }, - { 10740, _gloffset_TexSubImage2D }, + { 7439, _gloffset_TexSubImage1D }, + { 11074, _gloffset_TexSubImage2D }, { -1, -1 } }; #endif #if defined(need_GL_EXT_texture3D) static const struct gl_function_remap GL_EXT_texture3D_functions[] = { - { 1774, _gloffset_TexImage3D }, - { 23087, _gloffset_TexSubImage3D }, + { 1865, _gloffset_TexImage3D }, + { 23552, _gloffset_TexSubImage3D }, { -1, -1 } }; #endif @@ -6075,19 +6193,19 @@ static const struct gl_function_remap GL_EXT_texture_integer_functions[] = { #if defined(need_GL_EXT_texture_object) static const struct gl_function_remap GL_EXT_texture_object_functions[] = { - { 3290, _gloffset_PrioritizeTextures }, - { 7623, _gloffset_AreTexturesResident }, - { 13694, _gloffset_GenTextures }, - { 15911, _gloffset_DeleteTextures }, - { 19859, _gloffset_IsTexture }, - { 30171, _gloffset_BindTexture }, + { 3444, _gloffset_PrioritizeTextures }, + { 7888, _gloffset_AreTexturesResident }, + { 14058, _gloffset_GenTextures }, + { 16231, _gloffset_DeleteTextures }, + { 20242, _gloffset_IsTexture }, + { 30712, _gloffset_BindTexture }, { -1, -1 } }; #endif #if defined(need_GL_EXT_texture_perturb_normal) static const struct gl_function_remap GL_EXT_texture_perturb_normal_functions[] = { - { 13936, -1 }, /* TextureNormalEXT */ + { 14268, -1 }, /* TextureNormalEXT */ { -1, -1 } }; #endif @@ -6109,30 +6227,30 @@ static const struct gl_function_remap GL_EXT_transform_feedback_functions[] = { #if defined(need_GL_EXT_vertex_array) /* functions defined in MESA_remap_table_functions are excluded */ static const struct gl_function_remap GL_EXT_vertex_array_functions[] = { - { 24575, _gloffset_ArrayElement }, - { 31283, _gloffset_GetPointerv }, - { 32868, _gloffset_DrawArrays }, + { 25032, _gloffset_ArrayElement }, + { 31824, _gloffset_GetPointerv }, + { 33437, _gloffset_DrawArrays }, { -1, -1 } }; #endif #if defined(need_GL_EXT_vertex_weighting) static const struct gl_function_remap GL_EXT_vertex_weighting_functions[] = { - { 19907, -1 }, /* VertexWeightfvEXT */ - { 27371, -1 }, /* VertexWeightfEXT */ - { 29040, -1 }, /* VertexWeightPointerEXT */ + { 20290, -1 }, /* VertexWeightfvEXT */ + { 27860, -1 }, /* VertexWeightfEXT */ + { 29581, -1 }, /* VertexWeightPointerEXT */ { -1, -1 } }; #endif #if defined(need_GL_HP_image_transform) static const struct gl_function_remap GL_HP_image_transform_functions[] = { - { 2327, -1 }, /* GetImageTransformParameterfvHP */ - { 3739, -1 }, /* ImageTransformParameterfHP */ - { 10278, -1 }, /* ImageTransformParameterfvHP */ - { 12020, -1 }, /* ImageTransformParameteriHP */ - { 12390, -1 }, /* GetImageTransformParameterivHP */ - { 19971, -1 }, /* ImageTransformParameterivHP */ + { 2439, -1 }, /* GetImageTransformParameterfvHP */ + { 3893, -1 }, /* ImageTransformParameterfHP */ + { 10612, -1 }, /* ImageTransformParameterfvHP */ + { 12354, -1 }, /* ImageTransformParameteriHP */ + { 12724, -1 }, /* GetImageTransformParameterivHP */ + { 20354, -1 }, /* ImageTransformParameterivHP */ { -1, -1 } }; #endif @@ -6146,14 +6264,14 @@ static const struct gl_function_remap GL_IBM_multimode_draw_arrays_functions[] = #if defined(need_GL_IBM_vertex_array_lists) static const struct gl_function_remap GL_IBM_vertex_array_lists_functions[] = { - { 4400, -1 }, /* SecondaryColorPointerListIBM */ - { 6106, -1 }, /* NormalPointerListIBM */ - { 7797, -1 }, /* FogCoordPointerListIBM */ - { 8104, -1 }, /* VertexPointerListIBM */ - { 12274, -1 }, /* ColorPointerListIBM */ - { 13458, -1 }, /* TexCoordPointerListIBM */ - { 13958, -1 }, /* IndexPointerListIBM */ - { 33184, -1 }, /* EdgeFlagPointerListIBM */ + { 4583, -1 }, /* SecondaryColorPointerListIBM */ + { 6371, -1 }, /* NormalPointerListIBM */ + { 8062, -1 }, /* FogCoordPointerListIBM */ + { 8403, -1 }, /* VertexPointerListIBM */ + { 12608, -1 }, /* ColorPointerListIBM */ + { 13822, -1 }, /* TexCoordPointerListIBM */ + { 14290, -1 }, /* IndexPointerListIBM */ + { 33829, -1 }, /* EdgeFlagPointerListIBM */ { -1, -1 } }; #endif @@ -6167,10 +6285,10 @@ static const struct gl_function_remap GL_INGR_blend_func_separate_functions[] = #if defined(need_GL_INTEL_parallel_arrays) static const struct gl_function_remap GL_INTEL_parallel_arrays_functions[] = { - { 12798, -1 }, /* VertexPointervINTEL */ - { 15672, -1 }, /* ColorPointervINTEL */ - { 30442, -1 }, /* NormalPointervINTEL */ - { 30965, -1 }, /* TexCoordPointervINTEL */ + { 13162, -1 }, /* VertexPointervINTEL */ + { 15965, -1 }, /* ColorPointervINTEL */ + { 30983, -1 }, /* NormalPointervINTEL */ + { 31506, -1 }, /* TexCoordPointervINTEL */ { -1, -1 } }; #endif @@ -6184,10 +6302,10 @@ static const struct gl_function_remap GL_MESA_resize_buffers_functions[] = { #if defined(need_GL_MESA_shader_debug) static const struct gl_function_remap GL_MESA_shader_debug_functions[] = { - { 1638, -1 }, /* GetDebugLogLengthMESA */ - { 3461, -1 }, /* ClearDebugLogMESA */ - { 4561, -1 }, /* GetDebugLogMESA */ - { 31476, -1 }, /* CreateDebugObjectMESA */ + { 1729, -1 }, /* GetDebugLogLengthMESA */ + { 3615, -1 }, /* ClearDebugLogMESA */ + { 4768, -1 }, /* GetDebugLogMESA */ + { 32017, -1 }, /* CreateDebugObjectMESA */ { -1, -1 } }; #endif @@ -6208,15 +6326,15 @@ static const struct gl_function_remap GL_NV_condtitional_render_functions[] = { #if defined(need_GL_NV_evaluators) static const struct gl_function_remap GL_NV_evaluators_functions[] = { - { 6836, -1 }, /* GetMapAttribParameterivNV */ - { 8535, -1 }, /* MapControlPointsNV */ - { 8634, -1 }, /* MapParameterfvNV */ - { 10723, -1 }, /* EvalMapsNV */ - { 17412, -1 }, /* GetMapAttribParameterfvNV */ - { 17629, -1 }, /* MapParameterivNV */ - { 25189, -1 }, /* GetMapParameterivNV */ - { 25732, -1 }, /* GetMapParameterfvNV */ - { 29757, -1 }, /* GetMapControlPointsNV */ + { 7101, -1 }, /* GetMapAttribParameterivNV */ + { 8834, -1 }, /* MapControlPointsNV */ + { 8933, -1 }, /* MapParameterfvNV */ + { 11057, -1 }, /* EvalMapsNV */ + { 17718, -1 }, /* GetMapAttribParameterfvNV */ + { 17935, -1 }, /* MapParameterivNV */ + { 25646, -1 }, /* GetMapParameterivNV */ + { 26189, -1 }, /* GetMapParameterfvNV */ + { 30298, -1 }, /* GetMapControlPointsNV */ { -1, -1 } }; #endif @@ -6258,8 +6376,8 @@ static const struct gl_function_remap GL_NV_register_combiners_functions[] = { #if defined(need_GL_NV_register_combiners2) static const struct gl_function_remap GL_NV_register_combiners2_functions[] = { - { 16064, -1 }, /* CombinerStageParameterfvNV */ - { 16460, -1 }, /* GetCombinerStageParameterfvNV */ + { 16384, -1 }, /* CombinerStageParameterfvNV */ + { 16780, -1 }, /* GetCombinerStageParameterfvNV */ { -1, -1 } }; #endif @@ -6294,23 +6412,23 @@ static const struct gl_function_remap GL_OES_EGL_image_functions[] = { #if defined(need_GL_PGI_misc_hints) static const struct gl_function_remap GL_PGI_misc_hints_functions[] = { - { 8755, -1 }, /* HintPGI */ + { 9054, -1 }, /* HintPGI */ { -1, -1 } }; #endif #if defined(need_GL_SGIS_detail_texture) static const struct gl_function_remap GL_SGIS_detail_texture_functions[] = { - { 16433, -1 }, /* GetDetailTexFuncSGIS */ - { 16870, -1 }, /* DetailTexFuncSGIS */ + { 16753, -1 }, /* GetDetailTexFuncSGIS */ + { 17152, -1 }, /* DetailTexFuncSGIS */ { -1, -1 } }; #endif #if defined(need_GL_SGIS_fog_function) static const struct gl_function_remap GL_SGIS_fog_function_functions[] = { - { 27668, -1 }, /* FogFuncSGIS */ - { 28389, -1 }, /* GetFogFuncSGIS */ + { 28157, -1 }, /* FogFuncSGIS */ + { 28930, -1 }, /* GetFogFuncSGIS */ { -1, -1 } }; #endif @@ -6338,112 +6456,112 @@ static const struct gl_function_remap GL_SGIS_point_parameters_functions[] = { #if defined(need_GL_SGIS_sharpen_texture) static const struct gl_function_remap GL_SGIS_sharpen_texture_functions[] = { - { 6897, -1 }, /* GetSharpenTexFuncSGIS */ - { 22455, -1 }, /* SharpenTexFuncSGIS */ + { 7162, -1 }, /* GetSharpenTexFuncSGIS */ + { 22894, -1 }, /* SharpenTexFuncSGIS */ { -1, -1 } }; #endif #if defined(need_GL_SGIS_texture4D) static const struct gl_function_remap GL_SGIS_texture4D_functions[] = { - { 1010, -1 }, /* TexImage4DSGIS */ - { 15980, -1 }, /* TexSubImage4DSGIS */ + { 1034, -1 }, /* TexImage4DSGIS */ + { 16300, -1 }, /* TexSubImage4DSGIS */ { -1, -1 } }; #endif #if defined(need_GL_SGIS_texture_color_mask) static const struct gl_function_remap GL_SGIS_texture_color_mask_functions[] = { - { 15378, -1 }, /* TextureColorMaskSGIS */ + { 15671, -1 }, /* TextureColorMaskSGIS */ { -1, -1 } }; #endif #if defined(need_GL_SGIS_texture_filter4) static const struct gl_function_remap GL_SGIS_texture_filter4_functions[] = { - { 7074, -1 }, /* GetTexFilterFuncSGIS */ - { 16606, -1 }, /* TexFilterFuncSGIS */ + { 7339, -1 }, /* GetTexFilterFuncSGIS */ + { 16926, -1 }, /* TexFilterFuncSGIS */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_async) static const struct gl_function_remap GL_SGIX_async_functions[] = { - { 3387, -1 }, /* AsyncMarkerSGIX */ - { 4540, -1 }, /* FinishAsyncSGIX */ - { 5516, -1 }, /* PollAsyncSGIX */ - { 22664, -1 }, /* DeleteAsyncMarkersSGIX */ - { 22719, -1 }, /* IsAsyncMarkerSGIX */ - { 32981, -1 }, /* GenAsyncMarkersSGIX */ + { 3541, -1 }, /* AsyncMarkerSGIX */ + { 4722, -1 }, /* FinishAsyncSGIX */ + { 5794, -1 }, /* PollAsyncSGIX */ + { 23103, -1 }, /* DeleteAsyncMarkersSGIX */ + { 23158, -1 }, /* IsAsyncMarkerSGIX */ + { 33626, -1 }, /* GenAsyncMarkersSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_flush_raster) static const struct gl_function_remap GL_SGIX_flush_raster_functions[] = { - { 7451, -1 }, /* FlushRasterSGIX */ + { 7716, -1 }, /* FlushRasterSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_fragment_lighting) static const struct gl_function_remap GL_SGIX_fragment_lighting_functions[] = { - { 2625, -1 }, /* FragmentMaterialfvSGIX */ - { 5420, -1 }, /* FragmentLightiSGIX */ - { 8171, -1 }, /* FragmentMaterialfSGIX */ - { 8308, -1 }, /* GetFragmentLightivSGIX */ - { 9181, -1 }, /* FragmentLightModeliSGIX */ - { 10786, -1 }, /* FragmentLightivSGIX */ - { 11093, -1 }, /* GetFragmentMaterialivSGIX */ - { 16373, -1 }, /* GetFragmentMaterialfvSGIX */ - { 19776, -1 }, /* FragmentLightModelfSGIX */ - { 20094, -1 }, /* FragmentColorMaterialSGIX */ - { 20511, -1 }, /* FragmentMaterialiSGIX */ - { 21771, -1 }, /* LightEnviSGIX */ - { 23410, -1 }, /* FragmentLightModelfvSGIX */ - { 23745, -1 }, /* FragmentLightfvSGIX */ - { 28773, -1 }, /* FragmentLightModelivSGIX */ - { 28922, -1 }, /* FragmentLightfSGIX */ - { 31852, -1 }, /* GetFragmentLightfvSGIX */ - { 33464, -1 }, /* FragmentMaterialivSGIX */ + { 2737, -1 }, /* FragmentMaterialfvSGIX */ + { 5698, -1 }, /* FragmentLightiSGIX */ + { 8470, -1 }, /* FragmentMaterialfSGIX */ + { 8607, -1 }, /* GetFragmentLightivSGIX */ + { 9480, -1 }, /* FragmentLightModeliSGIX */ + { 11120, -1 }, /* FragmentLightivSGIX */ + { 11427, -1 }, /* GetFragmentMaterialivSGIX */ + { 16693, -1 }, /* GetFragmentMaterialfvSGIX */ + { 20159, -1 }, /* FragmentLightModelfSGIX */ + { 20477, -1 }, /* FragmentColorMaterialSGIX */ + { 20894, -1 }, /* FragmentMaterialiSGIX */ + { 22189, -1 }, /* LightEnviSGIX */ + { 23875, -1 }, /* FragmentLightModelfvSGIX */ + { 24210, -1 }, /* FragmentLightfvSGIX */ + { 29314, -1 }, /* FragmentLightModelivSGIX */ + { 29463, -1 }, /* FragmentLightfSGIX */ + { 32354, -1 }, /* GetFragmentLightfvSGIX */ + { 34109, -1 }, /* FragmentMaterialivSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_framezoom) static const struct gl_function_remap GL_SGIX_framezoom_functions[] = { - { 22742, -1 }, /* FrameZoomSGIX */ + { 23181, -1 }, /* FrameZoomSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_igloo_interface) static const struct gl_function_remap GL_SGIX_igloo_interface_functions[] = { - { 29230, -1 }, /* IglooInterfaceSGIX */ + { 29771, -1 }, /* IglooInterfaceSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_instruments) static const struct gl_function_remap GL_SGIX_instruments_functions[] = { - { 2805, -1 }, /* ReadInstrumentsSGIX */ - { 6670, -1 }, /* PollInstrumentsSGIX */ - { 10644, -1 }, /* GetInstrumentsSGIX */ - { 13056, -1 }, /* StartInstrumentsSGIX */ - { 16098, -1 }, /* StopInstrumentsSGIX */ - { 18051, -1 }, /* InstrumentsBufferSGIX */ + { 2917, -1 }, /* ReadInstrumentsSGIX */ + { 6935, -1 }, /* PollInstrumentsSGIX */ + { 10978, -1 }, /* GetInstrumentsSGIX */ + { 13420, -1 }, /* StartInstrumentsSGIX */ + { 16418, -1 }, /* StopInstrumentsSGIX */ + { 18383, -1 }, /* InstrumentsBufferSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_list_priority) static const struct gl_function_remap GL_SGIX_list_priority_functions[] = { - { 1241, -1 }, /* ListParameterfSGIX */ - { 3089, -1 }, /* GetListParameterfvSGIX */ - { 17942, -1 }, /* ListParameteriSGIX */ - { 19008, -1 }, /* ListParameterfvSGIX */ - { 21177, -1 }, /* ListParameterivSGIX */ - { 33025, -1 }, /* GetListParameterivSGIX */ + { 1265, -1 }, /* ListParameterfSGIX */ + { 3243, -1 }, /* GetListParameterfvSGIX */ + { 18248, -1 }, /* ListParameteriSGIX */ + { 19365, -1 }, /* ListParameterfvSGIX */ + { 21560, -1 }, /* ListParameterivSGIX */ + { 33670, -1 }, /* GetListParameterivSGIX */ { -1, -1 } }; #endif @@ -6457,134 +6575,134 @@ static const struct gl_function_remap GL_SGIX_pixel_texture_functions[] = { #if defined(need_GL_SGIX_polynomial_ffd) static const struct gl_function_remap GL_SGIX_polynomial_ffd_functions[] = { - { 3685, -1 }, /* LoadIdentityDeformationMapSGIX */ - { 16198, -1 }, /* DeformSGIX */ - { 24687, -1 }, /* DeformationMap3fSGIX */ - { 31740, -1 }, /* DeformationMap3dSGIX */ + { 2959, -1 }, /* DeformationMap3dSGIX */ + { 3839, -1 }, /* LoadIdentityDeformationMapSGIX */ + { 16518, -1 }, /* DeformSGIX */ + { 25144, -1 }, /* DeformationMap3fSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_reference_plane) static const struct gl_function_remap GL_SGIX_reference_plane_functions[] = { - { 14929, -1 }, /* ReferencePlaneSGIX */ + { 15222, -1 }, /* ReferencePlaneSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_sprite) static const struct gl_function_remap GL_SGIX_sprite_functions[] = { - { 9679, -1 }, /* SpriteParameterfvSGIX */ - { 20966, -1 }, /* SpriteParameteriSGIX */ - { 27072, -1 }, /* SpriteParameterfSGIX */ - { 29900, -1 }, /* SpriteParameterivSGIX */ + { 9978, -1 }, /* SpriteParameterfvSGIX */ + { 21349, -1 }, /* SpriteParameteriSGIX */ + { 27529, -1 }, /* SpriteParameterfSGIX */ + { 30441, -1 }, /* SpriteParameterivSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_tag_sample_buffer) static const struct gl_function_remap GL_SGIX_tag_sample_buffer_functions[] = { - { 21025, -1 }, /* TagSampleBufferSGIX */ + { 21408, -1 }, /* TagSampleBufferSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGI_color_table) static const struct gl_function_remap GL_SGI_color_table_functions[] = { - { 7741, _gloffset_ColorTableParameteriv }, - { 8429, _gloffset_ColorTable }, - { 15425, _gloffset_GetColorTable }, - { 15535, _gloffset_CopyColorTable }, - { 19720, _gloffset_ColorTableParameterfv }, - { 23318, _gloffset_GetColorTableParameterfv }, - { 25490, _gloffset_GetColorTableParameteriv }, + { 8006, _gloffset_ColorTableParameteriv }, + { 8728, _gloffset_ColorTable }, + { 15718, _gloffset_GetColorTable }, + { 15828, _gloffset_CopyColorTable }, + { 20103, _gloffset_ColorTableParameterfv }, + { 23783, _gloffset_GetColorTableParameterfv }, + { 25947, _gloffset_GetColorTableParameteriv }, { -1, -1 } }; #endif #if defined(need_GL_SUNX_constant_data) static const struct gl_function_remap GL_SUNX_constant_data_functions[] = { - { 31830, -1 }, /* FinishTextureSUNX */ + { 32332, -1 }, /* FinishTextureSUNX */ { -1, -1 } }; #endif #if defined(need_GL_SUN_global_alpha) static const struct gl_function_remap GL_SUN_global_alpha_functions[] = { - { 3408, -1 }, /* GlobalAlphaFactorubSUN */ - { 4868, -1 }, /* GlobalAlphaFactoriSUN */ - { 6695, -1 }, /* GlobalAlphaFactordSUN */ - { 9763, -1 }, /* GlobalAlphaFactoruiSUN */ - { 10235, -1 }, /* GlobalAlphaFactorbSUN */ - { 13371, -1 }, /* GlobalAlphaFactorfSUN */ - { 13535, -1 }, /* GlobalAlphaFactorusSUN */ - { 23005, -1 }, /* GlobalAlphaFactorsSUN */ + { 3562, -1 }, /* GlobalAlphaFactorubSUN */ + { 5075, -1 }, /* GlobalAlphaFactoriSUN */ + { 6960, -1 }, /* GlobalAlphaFactordSUN */ + { 10062, -1 }, /* GlobalAlphaFactoruiSUN */ + { 10569, -1 }, /* GlobalAlphaFactorbSUN */ + { 13735, -1 }, /* GlobalAlphaFactorfSUN */ + { 13899, -1 }, /* GlobalAlphaFactorusSUN */ + { 23470, -1 }, /* GlobalAlphaFactorsSUN */ { -1, -1 } }; #endif #if defined(need_GL_SUN_mesh_array) static const struct gl_function_remap GL_SUN_mesh_array_functions[] = { - { 29691, -1 }, /* DrawMeshArraysSUN */ + { 30232, -1 }, /* DrawMeshArraysSUN */ { -1, -1 } }; #endif #if defined(need_GL_SUN_triangle_list) static const struct gl_function_remap GL_SUN_triangle_list_functions[] = { - { 4514, -1 }, /* ReplacementCodeubSUN */ - { 6454, -1 }, /* ReplacementCodeubvSUN */ - { 19441, -1 }, /* ReplacementCodeusvSUN */ - { 19629, -1 }, /* ReplacementCodePointerSUN */ - { 21835, -1 }, /* ReplacementCodeuiSUN */ - { 22693, -1 }, /* ReplacementCodeusSUN */ - { 30357, -1 }, /* ReplacementCodeuivSUN */ + { 4696, -1 }, /* ReplacementCodeubSUN */ + { 6719, -1 }, /* ReplacementCodeubvSUN */ + { 19824, -1 }, /* ReplacementCodeusvSUN */ + { 20012, -1 }, /* ReplacementCodePointerSUN */ + { 22253, -1 }, /* ReplacementCodeuiSUN */ + { 23132, -1 }, /* ReplacementCodeusSUN */ + { 30898, -1 }, /* ReplacementCodeuivSUN */ { -1, -1 } }; #endif #if defined(need_GL_SUN_vertex) static const struct gl_function_remap GL_SUN_vertex_functions[] = { - { 1115, -1 }, /* ReplacementCodeuiColor3fVertex3fvSUN */ - { 1313, -1 }, /* TexCoord4fColor4fNormal3fVertex4fvSUN */ - { 1539, -1 }, /* TexCoord2fColor4ubVertex3fvSUN */ - { 1869, -1 }, /* ReplacementCodeuiVertex3fvSUN */ - { 2003, -1 }, /* ReplacementCodeuiTexCoord2fVertex3fvSUN */ - { 2561, -1 }, /* ReplacementCodeuiNormal3fVertex3fSUN */ - { 2874, -1 }, /* Color4ubVertex3fvSUN */ - { 4673, -1 }, /* Color4ubVertex3fSUN */ - { 4796, -1 }, /* TexCoord2fVertex3fSUN */ - { 5169, -1 }, /* TexCoord2fColor4fNormal3fVertex3fSUN */ - { 5620, -1 }, /* TexCoord2fNormal3fVertex3fvSUN */ - { 6349, -1 }, /* ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN */ - { 7129, -1 }, /* ReplacementCodeuiColor4ubVertex3fvSUN */ - { 7488, -1 }, /* ReplacementCodeuiTexCoord2fVertex3fSUN */ - { 8980, -1 }, /* Color3fVertex3fSUN */ - { 10171, -1 }, /* Color3fVertex3fvSUN */ - { 10609, -1 }, /* Color4fNormal3fVertex3fvSUN */ - { 11438, -1 }, /* ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN */ - { 12919, -1 }, /* ReplacementCodeuiColor4fNormal3fVertex3fvSUN */ - { 14545, -1 }, /* ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN */ - { 15071, -1 }, /* TexCoord2fColor3fVertex3fSUN */ - { 16123, -1 }, /* TexCoord4fColor4fNormal3fVertex4fSUN */ - { 16565, -1 }, /* Color4ubVertex2fvSUN */ - { 16895, -1 }, /* Normal3fVertex3fSUN */ - { 17992, -1 }, /* ReplacementCodeuiColor4fNormal3fVertex3fSUN */ - { 18344, -1 }, /* TexCoord2fColor4fNormal3fVertex3fvSUN */ - { 18651, -1 }, /* TexCoord2fNormal3fVertex3fSUN */ - { 19260, -1 }, /* TexCoord2fVertex3fvSUN */ - { 20064, -1 }, /* Color4ubVertex2fSUN */ - { 20302, -1 }, /* ReplacementCodeuiColor4ubVertex3fSUN */ - { 22301, -1 }, /* TexCoord2fColor4ubVertex3fSUN */ - { 22761, -1 }, /* Normal3fVertex3fvSUN */ - { 23227, -1 }, /* Color4fNormal3fVertex3fSUN */ - { 24236, -1 }, /* ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN */ - { 26393, -1 }, /* ReplacementCodeuiColor3fVertex3fSUN */ - { 27784, -1 }, /* TexCoord4fVertex4fSUN */ - { 28230, -1 }, /* TexCoord2fColor3fVertex3fvSUN */ - { 28617, -1 }, /* ReplacementCodeuiNormal3fVertex3fvSUN */ - { 28744, -1 }, /* TexCoord4fVertex4fvSUN */ - { 29478, -1 }, /* ReplacementCodeuiVertex3fSUN */ + { 1139, -1 }, /* ReplacementCodeuiColor3fVertex3fvSUN */ + { 1337, -1 }, /* TexCoord4fColor4fNormal3fVertex4fvSUN */ + { 1591, -1 }, /* TexCoord2fColor4ubVertex3fvSUN */ + { 1960, -1 }, /* ReplacementCodeuiVertex3fvSUN */ + { 2094, -1 }, /* ReplacementCodeuiTexCoord2fVertex3fvSUN */ + { 2673, -1 }, /* ReplacementCodeuiNormal3fVertex3fSUN */ + { 3052, -1 }, /* Color4ubVertex3fvSUN */ + { 4880, -1 }, /* Color4ubVertex3fSUN */ + { 5003, -1 }, /* TexCoord2fVertex3fSUN */ + { 5421, -1 }, /* TexCoord2fColor4fNormal3fVertex3fSUN */ + { 5898, -1 }, /* TexCoord2fNormal3fVertex3fvSUN */ + { 6614, -1 }, /* ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN */ + { 7394, -1 }, /* ReplacementCodeuiColor4ubVertex3fvSUN */ + { 7753, -1 }, /* ReplacementCodeuiTexCoord2fVertex3fSUN */ + { 9279, -1 }, /* Color3fVertex3fSUN */ + { 10478, -1 }, /* Color3fVertex3fvSUN */ + { 10943, -1 }, /* Color4fNormal3fVertex3fvSUN */ + { 11772, -1 }, /* ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN */ + { 13283, -1 }, /* ReplacementCodeuiColor4fNormal3fVertex3fvSUN */ + { 14838, -1 }, /* ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN */ + { 15364, -1 }, /* TexCoord2fColor3fVertex3fSUN */ + { 16443, -1 }, /* TexCoord4fColor4fNormal3fVertex4fSUN */ + { 16885, -1 }, /* Color4ubVertex2fvSUN */ + { 17177, -1 }, /* Normal3fVertex3fSUN */ + { 18324, -1 }, /* ReplacementCodeuiColor4fNormal3fVertex3fSUN */ + { 18676, -1 }, /* TexCoord2fColor4fNormal3fVertex3fvSUN */ + { 18983, -1 }, /* TexCoord2fNormal3fVertex3fSUN */ + { 19617, -1 }, /* TexCoord2fVertex3fvSUN */ + { 20447, -1 }, /* Color4ubVertex2fSUN */ + { 20685, -1 }, /* ReplacementCodeuiColor4ubVertex3fSUN */ + { 22719, -1 }, /* TexCoord2fColor4ubVertex3fSUN */ + { 23200, -1 }, /* Normal3fVertex3fvSUN */ + { 23692, -1 }, /* Color4fNormal3fVertex3fSUN */ + { 24693, -1 }, /* ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN */ + { 26850, -1 }, /* ReplacementCodeuiColor3fVertex3fSUN */ + { 28273, -1 }, /* TexCoord4fVertex4fSUN */ + { 28719, -1 }, /* TexCoord2fColor3fVertex3fvSUN */ + { 29158, -1 }, /* ReplacementCodeuiNormal3fVertex3fvSUN */ + { 29285, -1 }, /* TexCoord4fVertex4fvSUN */ + { 30019, -1 }, /* ReplacementCodeuiVertex3fSUN */ { -1, -1 } }; #endif @@ -6592,40 +6710,40 @@ static const struct gl_function_remap GL_SUN_vertex_functions[] = { #if defined(need_GL_VERSION_1_3) /* functions defined in MESA_remap_table_functions are excluded */ static const struct gl_function_remap GL_VERSION_1_3_functions[] = { - { 425, _gloffset_MultiTexCoord3sARB }, - { 657, _gloffset_ActiveTextureARB }, - { 4268, _gloffset_MultiTexCoord1fvARB }, - { 6240, _gloffset_MultiTexCoord3dARB }, - { 6285, _gloffset_MultiTexCoord2iARB }, - { 6409, _gloffset_MultiTexCoord2svARB }, - { 8385, _gloffset_MultiTexCoord2fARB }, - { 10445, _gloffset_MultiTexCoord3fvARB }, - { 11047, _gloffset_MultiTexCoord4sARB }, - { 11728, _gloffset_MultiTexCoord2dvARB }, - { 12135, _gloffset_MultiTexCoord1svARB }, - { 12536, _gloffset_MultiTexCoord3svARB }, - { 12597, _gloffset_MultiTexCoord4iARB }, - { 13398, _gloffset_MultiTexCoord3iARB }, - { 14268, _gloffset_MultiTexCoord1dARB }, - { 14500, _gloffset_MultiTexCoord3dvARB }, - { 15779, _gloffset_MultiTexCoord3ivARB }, - { 15824, _gloffset_MultiTexCoord2sARB }, - { 17295, _gloffset_MultiTexCoord4ivARB }, - { 19360, _gloffset_ClientActiveTextureARB }, - { 21688, _gloffset_MultiTexCoord2dARB }, - { 22125, _gloffset_MultiTexCoord4dvARB }, - { 22481, _gloffset_MultiTexCoord4fvARB }, - { 23459, _gloffset_MultiTexCoord3fARB }, - { 26084, _gloffset_MultiTexCoord4dARB }, - { 26350, _gloffset_MultiTexCoord1sARB }, - { 26554, _gloffset_MultiTexCoord1dvARB }, - { 27530, _gloffset_MultiTexCoord1ivARB }, - { 27623, _gloffset_MultiTexCoord2ivARB }, - { 27962, _gloffset_MultiTexCoord1iARB }, - { 29346, _gloffset_MultiTexCoord4svARB }, - { 29970, _gloffset_MultiTexCoord1fARB }, - { 30233, _gloffset_MultiTexCoord4fARB }, - { 32702, _gloffset_MultiTexCoord2fvARB }, + { 464, _gloffset_MultiTexCoord3sARB }, + { 696, _gloffset_ActiveTextureARB }, + { 4451, _gloffset_MultiTexCoord1fvARB }, + { 6505, _gloffset_MultiTexCoord3dARB }, + { 6550, _gloffset_MultiTexCoord2iARB }, + { 6674, _gloffset_MultiTexCoord2svARB }, + { 8684, _gloffset_MultiTexCoord2fARB }, + { 10779, _gloffset_MultiTexCoord3fvARB }, + { 11381, _gloffset_MultiTexCoord4sARB }, + { 12062, _gloffset_MultiTexCoord2dvARB }, + { 12469, _gloffset_MultiTexCoord1svARB }, + { 12870, _gloffset_MultiTexCoord3svARB }, + { 12931, _gloffset_MultiTexCoord4iARB }, + { 13762, _gloffset_MultiTexCoord3iARB }, + { 14561, _gloffset_MultiTexCoord1dARB }, + { 14793, _gloffset_MultiTexCoord3dvARB }, + { 16072, _gloffset_MultiTexCoord3ivARB }, + { 16117, _gloffset_MultiTexCoord2sARB }, + { 17577, _gloffset_MultiTexCoord4ivARB }, + { 19743, _gloffset_ClientActiveTextureARB }, + { 22106, _gloffset_MultiTexCoord2dARB }, + { 22543, _gloffset_MultiTexCoord4dvARB }, + { 22920, _gloffset_MultiTexCoord4fvARB }, + { 23924, _gloffset_MultiTexCoord3fARB }, + { 26541, _gloffset_MultiTexCoord4dARB }, + { 26807, _gloffset_MultiTexCoord1sARB }, + { 27011, _gloffset_MultiTexCoord1dvARB }, + { 28019, _gloffset_MultiTexCoord1ivARB }, + { 28112, _gloffset_MultiTexCoord2ivARB }, + { 28451, _gloffset_MultiTexCoord1iARB }, + { 29887, _gloffset_MultiTexCoord4svARB }, + { 30511, _gloffset_MultiTexCoord1fARB }, + { 30774, _gloffset_MultiTexCoord4fARB }, + { 33271, _gloffset_MultiTexCoord2fvARB }, { -1, -1 } }; #endif diff --git a/src/mesa/main/restart.c b/src/mesa/main/restart.c deleted file mode 100644 index ff366496f0a..00000000000 --- a/src/mesa/main/restart.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Mesa 3-D graphics library - * Version: 7.9 - * - * Copyright (C) 2010 VMware, Inc. All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, - * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER - * DEALINGS IN THE SOFTWARE. - */ - - -#include "glheader.h" -#include "imports.h" -#include "context.h" -#include "restart.h" - - -/** - */ -void GLAPIENTRY -_mesa_PrimitiveRestart(void) -{ - GET_CURRENT_CONTEXT(ctx); - - if (ctx->VersionMajor * 10 + ctx->VersionMinor < 31) { - _mesa_error(ctx, GL_INVALID_OPERATION, "glPrimitiveRestart()"); - return; - } - - /* XXX call into vbo module */ -} - - - -/** - */ -void GLAPIENTRY -_mesa_PrimitiveRestartIndex(GLuint index) -{ - GET_CURRENT_CONTEXT(ctx); - - if (ctx->VersionMajor * 10 + ctx->VersionMinor < 31) { - _mesa_error(ctx, GL_INVALID_OPERATION, "glPrimitiveRestartIndex()"); - return; - } - - ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); - - FLUSH_VERTICES(ctx, _NEW_TRANSFORM); - - ctx->Array.RestartIndex = index; -} diff --git a/src/mesa/main/restart.h b/src/mesa/main/restart.h deleted file mode 100644 index 25f58f24c35..00000000000 --- a/src/mesa/main/restart.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Mesa 3-D graphics library - * Version: 7.9 - * - * Copyright (C) 2010 VMware, Inc. All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, - * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER - * DEALINGS IN THE SOFTWARE. - */ - - -#ifndef RESTART_H -#define RESTART_H - -#include "glheader.h" - -extern void GLAPIENTRY -_mesa_PrimitiveRestart(void); - - -extern void GLAPIENTRY -_mesa_PrimitiveRestartIndex(GLuint index); - - -#endif diff --git a/src/mesa/main/samplerobj.c b/src/mesa/main/samplerobj.c index 4a28c917cd7..229267f8c94 100644 --- a/src/mesa/main/samplerobj.c +++ b/src/mesa/main/samplerobj.c @@ -133,6 +133,7 @@ _mesa_init_sampler_object(struct gl_sampler_object *sampObj, GLuint name) sampObj->CompareFunc = GL_LEQUAL; sampObj->CompareFailValue = 0.0; sampObj->sRGBDecode = GL_FALSE; + sampObj->CubeMapSeamless = GL_FALSE; sampObj->DepthMode = 0; } @@ -567,6 +568,25 @@ set_sampler_max_anisotropy(struct gl_context *ctx, } +static GLuint +set_sampler_cube_map_seamless(struct gl_context *ctx, + struct gl_sampler_object *samp, GLboolean param) +{ + if (!ctx->Extensions.AMD_seamless_cubemap_per_texture) + return INVALID_PNAME; + + if (samp->CubeMapSeamless == param) + return GL_FALSE; + + if (param != GL_TRUE && param != GL_FALSE) + return INVALID_VALUE; + + flush(ctx); + samp->CubeMapSeamless = param; + return GL_TRUE; +} + + static void GLAPIENTRY _mesa_SamplerParameteri(GLuint sampler, GLenum pname, GLint param) { @@ -615,6 +635,9 @@ _mesa_SamplerParameteri(GLuint sampler, GLenum pname, GLint param) case GL_TEXTURE_MAX_ANISOTROPY_EXT: res = set_sampler_max_anisotropy(ctx, sampObj, (GLfloat) param); break; + case GL_TEXTURE_CUBE_MAP_SEAMLESS: + res = set_sampler_cube_map_seamless(ctx, sampObj, param); + break; case GL_TEXTURE_BORDER_COLOR: /* fall-through */ default: @@ -696,6 +719,9 @@ _mesa_SamplerParameterf(GLuint sampler, GLenum pname, GLfloat param) case GL_TEXTURE_MAX_ANISOTROPY_EXT: res = set_sampler_max_anisotropy(ctx, sampObj, param); break; + case GL_TEXTURE_CUBE_MAP_SEAMLESS: + res = set_sampler_cube_map_seamless(ctx, sampObj, (GLboolean) param); + break; case GL_TEXTURE_BORDER_COLOR: /* fall-through */ default: @@ -774,6 +800,9 @@ _mesa_SamplerParameteriv(GLuint sampler, GLenum pname, const GLint *params) case GL_TEXTURE_MAX_ANISOTROPY_EXT: res = set_sampler_max_anisotropy(ctx, sampObj, (GLfloat) params[0]); break; + case GL_TEXTURE_CUBE_MAP_SEAMLESS: + res = set_sampler_cube_map_seamless(ctx, sampObj, params[0]); + break; case GL_TEXTURE_BORDER_COLOR: { GLfloat c[4]; @@ -862,6 +891,9 @@ _mesa_SamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *params) case GL_TEXTURE_MAX_ANISOTROPY_EXT: res = set_sampler_max_anisotropy(ctx, sampObj, params[0]); break; + case GL_TEXTURE_CUBE_MAP_SEAMLESS: + res = set_sampler_cube_map_seamless(ctx, sampObj, (GLboolean) params[0]); + break; case GL_TEXTURE_BORDER_COLOR: res = set_sampler_border_colorf(ctx, sampObj, params); break; @@ -941,6 +973,9 @@ _mesa_SamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *params) case GL_TEXTURE_MAX_ANISOTROPY_EXT: res = set_sampler_max_anisotropy(ctx, sampObj, (GLfloat) params[0]); break; + case GL_TEXTURE_CUBE_MAP_SEAMLESS: + res = set_sampler_cube_map_seamless(ctx, sampObj, params[0]); + break; case GL_TEXTURE_BORDER_COLOR: res = set_sampler_border_colori(ctx, sampObj, params); break; @@ -1021,6 +1056,9 @@ _mesa_SamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *params) case GL_TEXTURE_MAX_ANISOTROPY_EXT: res = set_sampler_max_anisotropy(ctx, sampObj, (GLfloat) params[0]); break; + case GL_TEXTURE_CUBE_MAP_SEAMLESS: + res = set_sampler_cube_map_seamless(ctx, sampObj, params[0]); + break; case GL_TEXTURE_BORDER_COLOR: res = set_sampler_border_colorui(ctx, sampObj, params); break; @@ -1110,6 +1148,11 @@ _mesa_GetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params) params[2] = FLOAT_TO_INT(sampObj->BorderColor.f[2]); params[3] = FLOAT_TO_INT(sampObj->BorderColor.f[3]); break; + case GL_TEXTURE_CUBE_MAP_SEAMLESS: + if (!ctx->Extensions.AMD_seamless_cubemap_per_texture) + goto invalid_pname; + *params = sampObj->CubeMapSeamless; + break; default: goto invalid_pname; } @@ -1178,6 +1221,11 @@ _mesa_GetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params) params[2] = sampObj->BorderColor.f[2]; params[3] = sampObj->BorderColor.f[3]; break; + case GL_TEXTURE_CUBE_MAP_SEAMLESS: + if (!ctx->Extensions.AMD_seamless_cubemap_per_texture) + goto invalid_pname; + *params = (GLfloat) sampObj->CubeMapSeamless; + break; default: goto invalid_pname; } @@ -1247,6 +1295,11 @@ _mesa_GetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params) params[2] = sampObj->BorderColor.i[2]; params[3] = sampObj->BorderColor.i[3]; break; + case GL_TEXTURE_CUBE_MAP_SEAMLESS: + if (!ctx->Extensions.AMD_seamless_cubemap_per_texture) + goto invalid_pname; + *params = sampObj->CubeMapSeamless; + break; default: goto invalid_pname; } @@ -1316,6 +1369,11 @@ _mesa_GetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params) params[2] = sampObj->BorderColor.ui[2]; params[3] = sampObj->BorderColor.ui[3]; break; + case GL_TEXTURE_CUBE_MAP_SEAMLESS: + if (!ctx->Extensions.AMD_seamless_cubemap_per_texture) + goto invalid_pname; + *params = sampObj->CubeMapSeamless; + break; default: goto invalid_pname; } diff --git a/src/mesa/main/samplerobj.h b/src/mesa/main/samplerobj.h index ed495c3760b..a839010b7b9 100644 --- a/src/mesa/main/samplerobj.h +++ b/src/mesa/main/samplerobj.h @@ -28,6 +28,14 @@ struct dd_function_table; +static INLINE struct gl_sampler_object * +_mesa_get_samplerobj(struct gl_context *ctx, GLuint unit) +{ + if (ctx->Texture.Unit[unit].Sampler) + return ctx->Texture.Unit[unit].Sampler; + else + return &ctx->Texture.Unit[unit]._Current->Sampler; +} extern void _mesa_reference_sampler_object(struct gl_context *ctx, diff --git a/src/mesa/main/shaderapi.c b/src/mesa/main/shaderapi.c index 451735faf76..514eed5d0b1 100644 --- a/src/mesa/main/shaderapi.c +++ b/src/mesa/main/shaderapi.c @@ -362,7 +362,7 @@ bind_attrib_location(struct gl_context *ctx, GLuint program, GLuint index, { struct gl_shader_program *shProg; const GLint size = -1; /* unknown size */ - GLint i, oldIndex; + GLint i; GLenum datatype = GL_FLOAT_VEC4; shProg = _mesa_lookup_shader_program_err(ctx, program, @@ -385,14 +385,6 @@ bind_attrib_location(struct gl_context *ctx, GLuint program, GLuint index, return; } - if (shProg->LinkStatus) { - /* get current index/location for the attribute */ - oldIndex = get_attrib_location(ctx, program, name); - } - else { - oldIndex = -1; - } - /* this will replace the current value if it's already in the list */ i = _mesa_add_attribute(shProg->Attributes, name, size, datatype, index); if (i < 0) { diff --git a/src/mesa/main/texcompress_s3tc.c b/src/mesa/main/texcompress_s3tc.c index 25257ecc3d3..86f962e9890 100644 --- a/src/mesa/main/texcompress_s3tc.c +++ b/src/mesa/main/texcompress_s3tc.c @@ -163,7 +163,6 @@ GLboolean _mesa_texstore_rgb_dxt1(TEXSTORE_PARAMS) { const GLchan *pixels; - GLint srcRowStride; GLubyte *dst; const GLint texWidth = dstRowStride * 4 / 8; /* a bit of a hack */ const GLchan *tempImage = NULL; @@ -190,13 +189,10 @@ _mesa_texstore_rgb_dxt1(TEXSTORE_PARAMS) if (!tempImage) return GL_FALSE; /* out of memory */ pixels = tempImage; - srcRowStride = 3 * srcWidth; srcFormat = GL_RGB; } else { pixels = (const GLchan *) srcAddr; - srcRowStride = _mesa_image_row_stride(srcPacking, srcWidth, srcFormat, - srcType) / sizeof(GLchan); } dst = _mesa_compressed_image_address(dstXoffset, dstYoffset, 0, @@ -226,7 +222,6 @@ GLboolean _mesa_texstore_rgba_dxt1(TEXSTORE_PARAMS) { const GLchan *pixels; - GLint srcRowStride; GLubyte *dst; const GLint texWidth = dstRowStride * 4 / 8; /* a bit of a hack */ const GLchan *tempImage = NULL; @@ -253,13 +248,10 @@ _mesa_texstore_rgba_dxt1(TEXSTORE_PARAMS) if (!tempImage) return GL_FALSE; /* out of memory */ pixels = tempImage; - srcRowStride = 4 * srcWidth; srcFormat = GL_RGBA; } else { pixels = (const GLchan *) srcAddr; - srcRowStride = _mesa_image_row_stride(srcPacking, srcWidth, srcFormat, - srcType) / sizeof(GLchan); } dst = _mesa_compressed_image_address(dstXoffset, dstYoffset, 0, @@ -288,7 +280,6 @@ GLboolean _mesa_texstore_rgba_dxt3(TEXSTORE_PARAMS) { const GLchan *pixels; - GLint srcRowStride; GLubyte *dst; const GLint texWidth = dstRowStride * 4 / 16; /* a bit of a hack */ const GLchan *tempImage = NULL; @@ -315,12 +306,9 @@ _mesa_texstore_rgba_dxt3(TEXSTORE_PARAMS) if (!tempImage) return GL_FALSE; /* out of memory */ pixels = tempImage; - srcRowStride = 4 * srcWidth; } else { pixels = (const GLchan *) srcAddr; - srcRowStride = _mesa_image_row_stride(srcPacking, srcWidth, srcFormat, - srcType) / sizeof(GLchan); } dst = _mesa_compressed_image_address(dstXoffset, dstYoffset, 0, @@ -349,7 +337,6 @@ GLboolean _mesa_texstore_rgba_dxt5(TEXSTORE_PARAMS) { const GLchan *pixels; - GLint srcRowStride; GLubyte *dst; const GLint texWidth = dstRowStride * 4 / 16; /* a bit of a hack */ const GLchan *tempImage = NULL; @@ -376,12 +363,9 @@ _mesa_texstore_rgba_dxt5(TEXSTORE_PARAMS) if (!tempImage) return GL_FALSE; /* out of memory */ pixels = tempImage; - srcRowStride = 4 * srcWidth; } else { pixels = (const GLchan *) srcAddr; - srcRowStride = _mesa_image_row_stride(srcPacking, srcWidth, srcFormat, - srcType) / sizeof(GLchan); } dst = _mesa_compressed_image_address(dstXoffset, dstYoffset, 0, diff --git a/src/mesa/main/texfetch.c b/src/mesa/main/texfetch.c index d091789ff16..6716ce1b071 100644 --- a/src/mesa/main/texfetch.c +++ b/src/mesa/main/texfetch.c @@ -41,6 +41,8 @@ #include "texcompress_rgtc.h" #include "texfetch.h" #include "teximage.h" +#include "../../gallium/auxiliary/util/u_format_rgb9e5.h" +#include "../../gallium/auxiliary/util/u_format_r11g11b10f.h" /** @@ -898,6 +900,20 @@ texfetch_funcs[MESA_FORMAT_COUNT] = fetch_texel_3d_signed_i16, store_texel_signed_i16 }, + { + MESA_FORMAT_RGB9_E5_FLOAT, + fetch_texel_1d_rgb9_e5, + fetch_texel_2d_rgb9_e5, + fetch_texel_3d_rgb9_e5, + store_texel_rgb9_e5 + }, + { + MESA_FORMAT_R11_G11_B10_FLOAT, + fetch_texel_1d_r11_g11_b10f, + fetch_texel_2d_r11_g11_b10f, + fetch_texel_3d_r11_g11_b10f, + store_texel_r11_g11_b10f + } }; diff --git a/src/mesa/main/texfetch_tmp.h b/src/mesa/main/texfetch_tmp.h index 0b9d5da07e8..e6fd81d4d57 100644 --- a/src/mesa/main/texfetch_tmp.h +++ b/src/mesa/main/texfetch_tmp.h @@ -2332,6 +2332,48 @@ static void store_texel_s8_z24(struct gl_texture_image *texImage, #endif +/* MESA_FORMAT_RGB9_E5 ******************************************************/ + +static void FETCH(rgb9_e5)( const struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, GLfloat *texel ) +{ + const GLuint *src = TEXEL_ADDR(GLuint, texImage, i, j, k, 1); + rgb9e5_to_float3(*src, texel); + texel[ACOMP] = 1.0F; +} + +#if DIM == 3 +static void store_texel_rgb9_e5(struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, const void *texel) +{ + const GLfloat *src = (const GLfloat *) texel; + GLuint *dst = TEXEL_ADDR(GLuint, texImage, i, j, k, 1); + *dst = float3_to_rgb9e5(src); +} +#endif + + +/* MESA_FORMAT_R11_G11_B10_FLOAT *********************************************/ + +static void FETCH(r11_g11_b10f)( const struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, GLfloat *texel ) +{ + const GLuint *src = TEXEL_ADDR(GLuint, texImage, i, j, k, 1); + r11g11b10f_to_float3(*src, texel); + texel[ACOMP] = 1.0F; +} + +#if DIM == 3 +static void store_texel_r11_g11_b10f(struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, const void *texel) +{ + const GLfloat *src = (const GLfloat *) texel; + GLuint *dst = TEXEL_ADDR(GLuint, texImage, i, j, k, 1); + *dst = float3_to_r11g11b10f(src); +} +#endif + + #undef TEXEL_ADDR #undef DIM #undef FETCH diff --git a/src/mesa/main/texformat.c b/src/mesa/main/texformat.c index c85a7c05030..456687b0c5c 100644 --- a/src/mesa/main/texformat.c +++ b/src/mesa/main/texformat.c @@ -382,6 +382,26 @@ _mesa_choose_tex_format( struct gl_context *ctx, GLint internalFormat, } } + if (ctx->Extensions.EXT_texture_shared_exponent) { + switch (internalFormat) { + case GL_RGB9_E5: + ASSERT(ctx->TextureFormatSupported[MESA_FORMAT_RGB9_E5_FLOAT]); + return MESA_FORMAT_RGB9_E5_FLOAT; + default: + ; /* fallthrough */ + } + } + + if (ctx->Extensions.EXT_packed_float) { + switch (internalFormat) { + case GL_R11F_G11F_B10F: + ASSERT(ctx->TextureFormatSupported[MESA_FORMAT_R11_G11_B10_FLOAT]); + return MESA_FORMAT_R11_G11_B10_FLOAT; + default: + ; /* fallthrough */ + } + } + if (ctx->Extensions.EXT_packed_depth_stencil) { switch (internalFormat) { case GL_DEPTH_STENCIL_EXT: @@ -621,7 +641,11 @@ _mesa_choose_tex_format( struct gl_context *ctx, GLint internalFormat, switch (internalFormat) { case GL_R8: case GL_RED: + RETURN_IF_SUPPORTED(MESA_FORMAT_R8); + break; + case GL_COMPRESSED_RED: + RETURN_IF_SUPPORTED(MESA_FORMAT_RED_RGTC1); RETURN_IF_SUPPORTED(MESA_FORMAT_R8); break; @@ -631,7 +655,11 @@ _mesa_choose_tex_format( struct gl_context *ctx, GLint internalFormat, case GL_RG: case GL_RG8: + RETURN_IF_SUPPORTED(MESA_FORMAT_RG88); + break; + case GL_COMPRESSED_RG: + RETURN_IF_SUPPORTED(MESA_FORMAT_RG_RGTC2); RETURN_IF_SUPPORTED(MESA_FORMAT_RG88); break; diff --git a/src/mesa/main/texgetimage.c b/src/mesa/main/texgetimage.c index 7070a29fb9d..467baa20af4 100644 --- a/src/mesa/main/texgetimage.c +++ b/src/mesa/main/texgetimage.c @@ -623,11 +623,13 @@ _mesa_get_compressed_teximage(struct gl_context *ctx, GLenum target, GLint level */ static GLboolean getteximage_error_check(struct gl_context *ctx, GLenum target, GLint level, - GLenum format, GLenum type, GLvoid *pixels ) + GLenum format, GLenum type, GLsizei clientMemSize, + GLvoid *pixels ) { struct gl_texture_object *texObj; struct gl_texture_image *texImage; const GLint maxLevels = _mesa_max_texture_levels(ctx, target); + const GLuint dimensions = (target == GL_TEXTURE_3D) ? 3 : 2; GLenum baseFormat; if (maxLevels == 0) { @@ -730,17 +732,21 @@ getteximage_error_check(struct gl_context *ctx, GLenum target, GLint level, return GL_TRUE; } - if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { - /* packing texture image into a PBO */ - const GLuint dimensions = (target == GL_TEXTURE_3D) ? 3 : 2; - if (!_mesa_validate_pbo_access(dimensions, &ctx->Pack, texImage->Width, - texImage->Height, texImage->Depth, - format, type, pixels)) { + if (!_mesa_validate_pbo_access(dimensions, &ctx->Pack, texImage->Width, + texImage->Height, texImage->Depth, + format, type, clientMemSize, pixels)) { + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { _mesa_error(ctx, GL_INVALID_OPERATION, - "glGetTexImage(out of bounds PBO write)"); - return GL_TRUE; + "glGetTexImage(out of bounds PBO access)"); + } else { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glGetnTexImageARB(out of bounds access:" + " bufSize (%d) is too small)", clientMemSize); } + return GL_TRUE; + } + if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { /* PBO should not be mapped */ if (_mesa_bufferobj_mapped(ctx->Pack.BufferObj)) { _mesa_error(ctx, GL_INVALID_OPERATION, @@ -761,18 +767,20 @@ getteximage_error_check(struct gl_context *ctx, GLenum target, GLint level, * \param level image level. * \param format pixel data format for returned image. * \param type pixel data type for returned image. + * \param bufSize size of the pixels data buffer. * \param pixels returned pixel data. */ void GLAPIENTRY -_mesa_GetTexImage( GLenum target, GLint level, GLenum format, - GLenum type, GLvoid *pixels ) +_mesa_GetnTexImageARB( GLenum target, GLint level, GLenum format, + GLenum type, GLsizei bufSize, GLvoid *pixels ) { struct gl_texture_object *texObj; struct gl_texture_image *texImage; GET_CURRENT_CONTEXT(ctx); ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); - if (getteximage_error_check(ctx, target, level, format, type, pixels)) { + if (getteximage_error_check(ctx, target, level, format, type, + bufSize, pixels)) { return; } @@ -802,6 +810,13 @@ _mesa_GetTexImage( GLenum target, GLint level, GLenum format, } +void GLAPIENTRY +_mesa_GetTexImage( GLenum target, GLint level, GLenum format, + GLenum type, GLvoid *pixels ) +{ + _mesa_GetnTexImageARB(target, level, format, type, INT_MAX, pixels); +} + /** * Do error checking for a glGetCompressedTexImage() call. @@ -809,11 +824,12 @@ _mesa_GetTexImage( GLenum target, GLint level, GLenum format, */ static GLboolean getcompressedteximage_error_check(struct gl_context *ctx, GLenum target, - GLint level, GLvoid *img) + GLint level, GLsizei clientMemSize, GLvoid *img) { struct gl_texture_object *texObj; struct gl_texture_image *texImage; const GLint maxLevels = _mesa_max_texture_levels(ctx, target); + GLuint compressedSize; if (maxLevels == 0) { _mesa_error(ctx, GL_INVALID_ENUM, "glGetCompressedTexImage(target=0x%x)", @@ -855,26 +871,31 @@ getcompressedteximage_error_check(struct gl_context *ctx, GLenum target, return GL_TRUE; } - if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) { - GLuint compressedSize; + compressedSize = _mesa_format_image_size(texImage->TexFormat, + texImage->Width, + texImage->Height, + texImage->Depth); - /* make sure PBO is not mapped */ - if (_mesa_bufferobj_mapped(ctx->Pack.BufferObj)) { + if (!_mesa_is_bufferobj(ctx->Pack.BufferObj)) { + /* do bounds checking on writing to client memory */ + if (clientMemSize < compressedSize) { _mesa_error(ctx, GL_INVALID_OPERATION, - "glGetCompressedTexImage(PBO is mapped)"); - return GL_TRUE; + "glGetnCompressedTexImageARB(out of bounds access:" + " bufSize (%d) is too small)", clientMemSize); } - - compressedSize = _mesa_format_image_size(texImage->TexFormat, - texImage->Width, - texImage->Height, - texImage->Depth); - + } else { /* do bounds checking on PBO write */ if ((const GLubyte *) img + compressedSize > (const GLubyte *) ctx->Pack.BufferObj->Size) { _mesa_error(ctx, GL_INVALID_OPERATION, - "glGetCompressedTexImage(out of bounds PBO write)"); + "glGetCompressedTexImage(out of bounds PBO access)"); + return GL_TRUE; + } + + /* make sure PBO is not mapped */ + if (_mesa_bufferobj_mapped(ctx->Pack.BufferObj)) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glGetCompressedTexImage(PBO is mapped)"); return GL_TRUE; } } @@ -884,14 +905,15 @@ getcompressedteximage_error_check(struct gl_context *ctx, GLenum target, void GLAPIENTRY -_mesa_GetCompressedTexImageARB(GLenum target, GLint level, GLvoid *img) +_mesa_GetnCompressedTexImageARB(GLenum target, GLint level, GLsizei bufSize, + GLvoid *img) { struct gl_texture_object *texObj; struct gl_texture_image *texImage; GET_CURRENT_CONTEXT(ctx); ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); - if (getcompressedteximage_error_check(ctx, target, level, img)) { + if (getcompressedteximage_error_check(ctx, target, level, bufSize, img)) { return; } @@ -918,3 +940,9 @@ _mesa_GetCompressedTexImageARB(GLenum target, GLint level, GLvoid *img) } _mesa_unlock_texture(ctx, texObj); } + +void GLAPIENTRY +_mesa_GetCompressedTexImageARB(GLenum target, GLint level, GLvoid *img) +{ + _mesa_GetnCompressedTexImageARB(target, level, INT_MAX, img); +} diff --git a/src/mesa/main/texgetimage.h b/src/mesa/main/texgetimage.h index ef420ddabf5..8612705ca88 100644 --- a/src/mesa/main/texgetimage.h +++ b/src/mesa/main/texgetimage.h @@ -51,10 +51,15 @@ _mesa_get_compressed_teximage(struct gl_context *ctx, GLenum target, GLint level extern void GLAPIENTRY _mesa_GetTexImage( GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels ); - +extern void GLAPIENTRY +_mesa_GetnTexImageARB( GLenum target, GLint level, GLenum format, + GLenum type, GLsizei bufSize, GLvoid *pixels ); extern void GLAPIENTRY _mesa_GetCompressedTexImageARB(GLenum target, GLint lod, GLvoid *img); +extern void GLAPIENTRY +_mesa_GetnCompressedTexImageARB(GLenum target, GLint level, GLsizei bufSize, + GLvoid *img); #endif /* TEXGETIMAGE_H */ diff --git a/src/mesa/main/texobj.c b/src/mesa/main/texobj.c index 43d6e52dfe9..f2d214f931b 100644 --- a/src/mesa/main/texobj.c +++ b/src/mesa/main/texobj.c @@ -141,6 +141,7 @@ _mesa_initialize_texture_object( struct gl_texture_object *obj, obj->Sampler.CompareFunc = GL_LEQUAL; /* ARB_shadow */ obj->Sampler.CompareFailValue = 0.0F; /* ARB_shadow_ambient */ obj->Sampler.DepthMode = GL_LUMINANCE; /* ARB_depth_texture */ + obj->Sampler.CubeMapSeamless = GL_FALSE; obj->Swizzle[0] = GL_RED; obj->Swizzle[1] = GL_GREEN; obj->Swizzle[2] = GL_BLUE; @@ -251,6 +252,7 @@ _mesa_copy_texture_object( struct gl_texture_object *dest, dest->Sampler.CompareMode = src->Sampler.CompareMode; dest->Sampler.CompareFunc = src->Sampler.CompareFunc; dest->Sampler.CompareFailValue = src->Sampler.CompareFailValue; + dest->Sampler.CubeMapSeamless = src->Sampler.CubeMapSeamless; dest->Sampler.DepthMode = src->Sampler.DepthMode; dest->_MaxLevel = src->_MaxLevel; dest->_MaxLambda = src->_MaxLambda; diff --git a/src/mesa/main/texparam.c b/src/mesa/main/texparam.c index 3d56dac3f91..4b9dcb5d3b5 100644 --- a/src/mesa/main/texparam.c +++ b/src/mesa/main/texparam.c @@ -439,6 +439,20 @@ set_tex_parameteri(struct gl_context *ctx, } goto invalid_pname; + case GL_TEXTURE_CUBE_MAP_SEAMLESS: + if (ctx->Extensions.AMD_seamless_cubemap_per_texture) { + GLenum param = params[0]; + if (param != GL_TRUE && param != GL_FALSE) { + goto invalid_param; + } + if (param != texObj->Sampler.CubeMapSeamless) { + flush(ctx); + texObj->Sampler.CubeMapSeamless = param; + } + return GL_TRUE; + } + goto invalid_pname; + default: goto invalid_pname; } @@ -580,6 +594,7 @@ _mesa_TexParameterf(GLenum target, GLenum pname, GLfloat param) case GL_TEXTURE_COMPARE_FUNC_ARB: case GL_DEPTH_TEXTURE_MODE_ARB: case GL_TEXTURE_SRGB_DECODE_EXT: + case GL_TEXTURE_CUBE_MAP_SEAMLESS: { /* convert float param to int */ GLint p[4]; @@ -629,6 +644,7 @@ _mesa_TexParameterfv(GLenum target, GLenum pname, const GLfloat *params) case GL_TEXTURE_COMPARE_FUNC_ARB: case GL_DEPTH_TEXTURE_MODE_ARB: case GL_TEXTURE_SRGB_DECODE_EXT: + case GL_TEXTURE_CUBE_MAP_SEAMLESS: { /* convert float param to int */ GLint p[4]; @@ -979,11 +995,9 @@ _mesa_GetTexLevelParameteriv( GLenum target, GLint level, } break; case GL_TEXTURE_SHARED_SIZE: - if (ctx->VersionMajor >= 3) { - /* XXX return number of exponent bits for shared exponent texture - * formats, like GL_RGB9_E5. - */ - *params = 0; + if (ctx->VersionMajor >= 3 || + ctx->Extensions.EXT_texture_shared_exponent) { + *params = texFormat == MESA_FORMAT_RGB9_E5_FLOAT ? 5 : 0; } else { goto invalid_pname; @@ -1237,6 +1251,14 @@ _mesa_GetTexParameterfv( GLenum target, GLenum pname, GLfloat *params ) } break; + case GL_TEXTURE_CUBE_MAP_SEAMLESS: + if (ctx->Extensions.AMD_seamless_cubemap_per_texture) { + *params = (GLfloat) obj->Sampler.CubeMapSeamless; + } + else { + error = GL_TRUE; + } + default: error = GL_TRUE; break; @@ -1398,6 +1420,14 @@ _mesa_GetTexParameteriv( GLenum target, GLenum pname, GLint *params ) } break; + case GL_TEXTURE_CUBE_MAP_SEAMLESS: + if (ctx->Extensions.AMD_seamless_cubemap_per_texture) { + *params = (GLint) obj->Sampler.CubeMapSeamless; + } + else { + error = GL_TRUE; + } + default: ; /* silence warnings */ } diff --git a/src/mesa/main/texrender.c b/src/mesa/main/texrender.c index a7641a5f9a4..8ba78b8b477 100644 --- a/src/mesa/main/texrender.c +++ b/src/mesa/main/texrender.c @@ -530,6 +530,7 @@ update_wrapper(struct gl_context *ctx, struct gl_renderbuffer_attachment *att) { struct texture_renderbuffer *trb = (struct texture_renderbuffer *) att->Renderbuffer; + GLuint unused; (void) ctx; ASSERT(trb); @@ -602,8 +603,10 @@ update_wrapper(struct gl_context *ctx, struct gl_renderbuffer_attachment *att) trb->Base._BaseFormat = GL_RGBA; break; default: - trb->Base.DataType = CHAN_TYPE; - trb->Base._BaseFormat = GL_RGBA; + _mesa_format_to_type_and_comps(trb->TexImage->TexFormat, + &trb->Base.DataType, &unused); + trb->Base._BaseFormat = + _mesa_base_fbo_format(ctx, trb->TexImage->InternalFormat); } trb->Base.Data = trb->TexImage->Data; } diff --git a/src/mesa/main/texstore.c b/src/mesa/main/texstore.c index 9a690529a83..6da3e4eb7b4 100644 --- a/src/mesa/main/texstore.c +++ b/src/mesa/main/texstore.c @@ -63,7 +63,6 @@ #include "pack.h" #include "pbo.h" #include "imports.h" -#include "pack.h" #include "texcompress.h" #include "texcompress_fxt1.h" #include "texcompress_rgtc.h" @@ -71,6 +70,8 @@ #include "teximage.h" #include "texstore.h" #include "enums.h" +#include "../../gallium/auxiliary/util/u_format_rgb9e5.h" +#include "../../gallium/auxiliary/util/u_format_r11g11b10f.h" enum { @@ -3551,6 +3552,7 @@ _mesa_texstore_rgba_float32(TEXSTORE_PARAMS) if (!ctx->_ImageTransferState && !srcPacking->SwapBytes && baseInternalFormat == srcFormat && + baseInternalFormat == baseFormat && srcType == GL_FLOAT) { /* simple memcpy path */ memcpy_texture(ctx, dims, @@ -3625,6 +3627,7 @@ _mesa_texstore_rgba_float16(TEXSTORE_PARAMS) if (!ctx->_ImageTransferState && !srcPacking->SwapBytes && baseInternalFormat == srcFormat && + baseInternalFormat == baseFormat && srcType == GL_HALF_FLOAT_ARB) { /* simple memcpy path */ memcpy_texture(ctx, dims, @@ -4175,6 +4178,111 @@ _mesa_texstore_sla8(TEXSTORE_PARAMS) #endif /* FEATURE_EXT_texture_sRGB */ +static GLboolean +_mesa_texstore_rgb9_e5(TEXSTORE_PARAMS) +{ + const GLenum baseFormat = _mesa_get_format_base_format(dstFormat); + + ASSERT(dstFormat == MESA_FORMAT_RGB9_E5_FLOAT); + ASSERT(baseInternalFormat == GL_RGB); + + if (!ctx->_ImageTransferState && + !srcPacking->SwapBytes && + srcFormat == GL_RGB && + srcType == GL_UNSIGNED_INT_5_9_9_9_REV) { + /* simple memcpy path */ + memcpy_texture(ctx, dims, + dstFormat, dstAddr, dstXoffset, dstYoffset, dstZoffset, + dstRowStride, + dstImageOffsets, + srcWidth, srcHeight, srcDepth, srcFormat, srcType, + srcAddr, srcPacking); + } + else { + /* general path */ + const GLfloat *tempImage = _mesa_make_temp_float_image(ctx, dims, + baseInternalFormat, + baseFormat, + srcWidth, srcHeight, srcDepth, + srcFormat, srcType, srcAddr, + srcPacking, + ctx->_ImageTransferState); + const GLfloat *srcRow = tempImage; + GLint img, row, col; + if (!tempImage) + return GL_FALSE; + for (img = 0; img < srcDepth; img++) { + GLubyte *dstRow = (GLubyte *) dstAddr + + dstImageOffsets[dstZoffset + img] * 4 + + dstYoffset * dstRowStride + + dstXoffset * 4; + for (row = 0; row < srcHeight; row++) { + GLuint *dstUI = (GLuint*)dstRow; + for (col = 0; col < srcWidth; col++) { + dstUI[col] = float3_to_rgb9e5(&srcRow[col * 3]); + } + dstRow += dstRowStride; + srcRow += srcWidth * 3; + } + } + + free((void *) tempImage); + } + return GL_TRUE; +} + +static GLboolean +_mesa_texstore_r11_g11_b10f(TEXSTORE_PARAMS) +{ + const GLenum baseFormat = _mesa_get_format_base_format(dstFormat); + + ASSERT(dstFormat == MESA_FORMAT_R11_G11_B10_FLOAT); + ASSERT(baseInternalFormat == GL_RGB); + + if (!ctx->_ImageTransferState && + !srcPacking->SwapBytes && + srcFormat == GL_RGB && + srcType == GL_UNSIGNED_INT_10F_11F_11F_REV) { + /* simple memcpy path */ + memcpy_texture(ctx, dims, + dstFormat, dstAddr, dstXoffset, dstYoffset, dstZoffset, + dstRowStride, + dstImageOffsets, + srcWidth, srcHeight, srcDepth, srcFormat, srcType, + srcAddr, srcPacking); + } + else { + /* general path */ + const GLfloat *tempImage = _mesa_make_temp_float_image(ctx, dims, + baseInternalFormat, + baseFormat, + srcWidth, srcHeight, srcDepth, + srcFormat, srcType, srcAddr, + srcPacking, + ctx->_ImageTransferState); + const GLfloat *srcRow = tempImage; + GLint img, row, col; + if (!tempImage) + return GL_FALSE; + for (img = 0; img < srcDepth; img++) { + GLubyte *dstRow = (GLubyte *) dstAddr + + dstImageOffsets[dstZoffset + img] * 4 + + dstYoffset * dstRowStride + + dstXoffset * 4; + for (row = 0; row < srcHeight; row++) { + GLuint *dstUI = (GLuint*)dstRow; + for (col = 0; col < srcWidth; col++) { + dstUI[col] = float3_to_r11g11b10f(&srcRow[col * 3]); + } + dstRow += dstRowStride; + srcRow += srcWidth * 3; + } + } + + free((void *) tempImage); + } + return GL_TRUE; +} @@ -4308,6 +4416,9 @@ texstore_funcs[MESA_FORMAT_COUNT] = { MESA_FORMAT_SIGNED_L16, _mesa_texstore_snorm16 }, { MESA_FORMAT_SIGNED_AL1616, _mesa_texstore_snorm1616 }, { MESA_FORMAT_SIGNED_I16, _mesa_texstore_snorm16 }, + + { MESA_FORMAT_RGB9_E5_FLOAT, _mesa_texstore_rgb9_e5 }, + { MESA_FORMAT_R11_G11_B10_FLOAT, _mesa_texstore_r11_g11_b10f }, }; diff --git a/src/mesa/main/transformfeedback.c b/src/mesa/main/transformfeedback.c index fbd70d56ca9..47efad12109 100644 --- a/src/mesa/main/transformfeedback.c +++ b/src/mesa/main/transformfeedback.c @@ -42,7 +42,6 @@ #include "main/dispatch.h" #include "program/prog_parameter.h" -//#include "program/shader_api.h" #if FEATURE_EXT_transform_feedback @@ -507,7 +506,7 @@ _mesa_BindBufferBase(GLenum target, GLuint index, GLuint buffer) if (obj->Active) { _mesa_error(ctx, GL_INVALID_OPERATION, - "glBindBufferRange(transform feedback active)"); + "glBindBufferBase(transform feedback active)"); return; } @@ -555,7 +554,7 @@ _mesa_BindBufferOffsetEXT(GLenum target, GLuint index, GLuint buffer, if (obj->Active) { _mesa_error(ctx, GL_INVALID_OPERATION, - "glBindBufferRange(transform feedback active)"); + "glBindBufferOffsetEXT(transform feedback active)"); return; } @@ -885,7 +884,7 @@ _mesa_ResumeTransformFeedback(void) if (!obj->Active || !obj->Paused) { _mesa_error(ctx, GL_INVALID_OPERATION, - "glPauseTransformFeedback(feedback not active or not paused)"); + "glResumeTransformFeedback(feedback not active or not paused)"); return; } @@ -932,15 +931,4 @@ _mesa_DrawTransformFeedback(GLenum mode, GLuint name) } -/* -XXX misc to do: - -glGet*() for - -GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED -GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE -GL_TRANSFORM_FEEDBACK_BINDING -*/ - - #endif /* FEATURE_EXT_transform_feedback */ diff --git a/src/mesa/main/uniforms.c b/src/mesa/main/uniforms.c index f984ce3bc56..12fe7b5e226 100644 --- a/src/mesa/main/uniforms.c +++ b/src/mesa/main/uniforms.c @@ -412,11 +412,10 @@ split_location_offset(GLint *location, GLint *offset) */ static void _mesa_get_uniformfv(struct gl_context *ctx, GLuint program, GLint location, - GLfloat *params) + GLsizei bufSize, GLfloat *params) { struct gl_program *prog; - GLint paramPos; - GLint offset; + GLint paramPos, offset; split_location_offset(&location, &offset); @@ -426,9 +425,18 @@ _mesa_get_uniformfv(struct gl_context *ctx, GLuint program, GLint location, const struct gl_program_parameter *p = &prog->Parameters->Parameters[paramPos]; GLint rows, cols, i, j, k; + GLsizei numBytes; get_uniform_rows_cols(p, &rows, &cols); + numBytes = rows * cols * sizeof *params; + if (bufSize < numBytes) { + _mesa_error( ctx, GL_INVALID_OPERATION, + "glGetnUniformfvARB(out of bounds: bufSize is %d," + " but %d bytes are required)", bufSize, numBytes ); + return; + } + k = 0; for (i = 0; i < rows; i++) { const int base = paramPos + offset + i; @@ -447,11 +455,10 @@ _mesa_get_uniformfv(struct gl_context *ctx, GLuint program, GLint location, */ static void _mesa_get_uniformiv(struct gl_context *ctx, GLuint program, GLint location, - GLint *params) + GLsizei bufSize, GLint *params) { struct gl_program *prog; - GLint paramPos; - GLint offset; + GLint paramPos, offset; split_location_offset(&location, &offset); @@ -461,9 +468,18 @@ _mesa_get_uniformiv(struct gl_context *ctx, GLuint program, GLint location, const struct gl_program_parameter *p = &prog->Parameters->Parameters[paramPos]; GLint rows, cols, i, j, k; + GLsizei numBytes; get_uniform_rows_cols(p, &rows, &cols); + numBytes = rows * cols * sizeof *params; + if (bufSize < numBytes) { + _mesa_error( ctx, GL_INVALID_OPERATION, + "glGetnUniformivARB(out of bounds: bufSize is %d," + " but %d bytes are required)", bufSize, numBytes ); + return; + } + k = 0; for (i = 0; i < rows; i++) { const int base = paramPos + offset + i; @@ -483,11 +499,10 @@ _mesa_get_uniformiv(struct gl_context *ctx, GLuint program, GLint location, */ static void _mesa_get_uniformuiv(struct gl_context *ctx, GLuint program, GLint location, - GLuint *params) + GLsizei bufSize, GLuint *params) { struct gl_program *prog; - GLint paramPos; - GLint offset; + GLint paramPos, offset; split_location_offset(&location, &offset); @@ -497,9 +512,18 @@ _mesa_get_uniformuiv(struct gl_context *ctx, GLuint program, GLint location, const struct gl_program_parameter *p = &prog->Parameters->Parameters[paramPos]; GLint rows, cols, i, j, k; + GLsizei numBytes; get_uniform_rows_cols(p, &rows, &cols); + numBytes = rows * cols * sizeof *params; + if (bufSize < numBytes) { + _mesa_error( ctx, GL_INVALID_OPERATION, + "glGetnUniformuivARB(out of bounds: bufSize is %d," + " but %d bytes are required)", bufSize, numBytes ); + return; + } + k = 0; for (i = 0; i < rows; i++) { const int base = paramPos + offset + i; @@ -513,6 +537,19 @@ _mesa_get_uniformuiv(struct gl_context *ctx, GLuint program, GLint location, /** + * Called via glGetUniformdv(). + * New in GL_ARB_gpu_shader_fp64, OpenGL 4.0 + */ +static void +_mesa_get_uniformdv(struct gl_context *ctx, GLuint program, GLint location, + GLsizei bufSize, GLdouble *params) +{ + _mesa_error(ctx, GL_INVALID_OPERATION, "glGetUniformdvARB" + "(GL_ARB_gpu_shader_fp64 not implemented)"); +} + + +/** * Called via glGetUniformLocation(). * * The return value will encode two values, the uniform location and an @@ -1350,29 +1387,65 @@ _mesa_UniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, void GLAPIENTRY -_mesa_GetUniformfvARB(GLhandleARB program, GLint location, GLfloat *params) +_mesa_GetnUniformfvARB(GLhandleARB program, GLint location, + GLsizei bufSize, GLfloat *params) { GET_CURRENT_CONTEXT(ctx); - _mesa_get_uniformfv(ctx, program, location, params); + _mesa_get_uniformfv(ctx, program, location, bufSize, params); +} + +void GLAPIENTRY +_mesa_GetUniformfvARB(GLhandleARB program, GLint location, GLfloat *params) +{ + _mesa_GetnUniformfvARB(program, location, INT_MAX, params); } void GLAPIENTRY -_mesa_GetUniformivARB(GLhandleARB program, GLint location, GLint *params) +_mesa_GetnUniformivARB(GLhandleARB program, GLint location, + GLsizei bufSize, GLint *params) { GET_CURRENT_CONTEXT(ctx); - _mesa_get_uniformiv(ctx, program, location, params); + _mesa_get_uniformiv(ctx, program, location, bufSize, params); +} + +void GLAPIENTRY +_mesa_GetUniformivARB(GLhandleARB program, GLint location, GLint *params) +{ + _mesa_GetnUniformivARB(program, location, INT_MAX, params); } /* GL3 */ void GLAPIENTRY +_mesa_GetnUniformuivARB(GLhandleARB program, GLint location, + GLsizei bufSize, GLuint *params) +{ + GET_CURRENT_CONTEXT(ctx); + _mesa_get_uniformuiv(ctx, program, location, bufSize, params); +} + +void GLAPIENTRY _mesa_GetUniformuiv(GLhandleARB program, GLint location, GLuint *params) { + _mesa_GetnUniformuivARB(program, location, INT_MAX, params); +} + + +/* GL4 */ +void GLAPIENTRY +_mesa_GetnUniformdvARB(GLhandleARB program, GLint location, + GLsizei bufSize, GLdouble *params) +{ GET_CURRENT_CONTEXT(ctx); - _mesa_get_uniformuiv(ctx, program, location, params); + _mesa_get_uniformdv(ctx, program, location, bufSize, params); } +void GLAPIENTRY +_mesa_GetUniformdv(GLhandleARB program, GLint location, GLdouble *params) +{ + _mesa_GetnUniformdvARB(program, location, INT_MAX, params); +} GLint GLAPIENTRY @@ -1454,6 +1527,11 @@ _mesa_init_shader_uniform_dispatch(struct _glapi_table *exec) SET_Uniform4uivEXT(exec, _mesa_Uniform4uiv); SET_GetUniformuivEXT(exec, _mesa_GetUniformuiv); + /* GL_ARB_robustness */ + SET_GetnUniformfvARB(exec, _mesa_GetnUniformfvARB); + SET_GetnUniformivARB(exec, _mesa_GetnUniformivARB); + SET_GetnUniformuivARB(exec, _mesa_GetnUniformuivARB); + SET_GetnUniformdvARB(exec, _mesa_GetnUniformdvARB); /* GL 4.0 */ #endif /* FEATURE_GL */ } diff --git a/src/mesa/main/uniforms.h b/src/mesa/main/uniforms.h index 54abb08ba59..b024cb30ba5 100644 --- a/src/mesa/main/uniforms.h +++ b/src/mesa/main/uniforms.h @@ -146,10 +146,25 @@ extern void GLAPIENTRY _mesa_GetUniformfvARB(GLhandleARB, GLint, GLfloat *); extern void GLAPIENTRY +_mesa_GetnUniformfvARB(GLhandleARB, GLint, GLsizei, GLfloat *); + +extern void GLAPIENTRY _mesa_GetUniformivARB(GLhandleARB, GLint, GLint *); extern void GLAPIENTRY -_mesa_GetUniformuiv(GLhandleARB program, GLint location, GLuint *params); +_mesa_GetnUniformivARB(GLhandleARB, GLint, GLsizei, GLint *); + +extern void GLAPIENTRY +_mesa_GetUniformuiv(GLhandleARB, GLint, GLuint *); + +extern void GLAPIENTRY +_mesa_GetnUniformuivARB(GLhandleARB, GLint, GLsizei, GLuint *); + +extern void GLAPIENTRY +_mesa_GetUniformdv(GLhandleARB, GLint, GLdouble *); + +extern void GLAPIENTRY +_mesa_GetnUniformdvARB(GLhandleARB, GLint, GLsizei, GLdouble *); extern GLint GLAPIENTRY _mesa_GetUniformLocationARB(GLhandleARB, const GLcharARB *); diff --git a/src/mesa/main/varray.c b/src/mesa/main/varray.c index d20e2c7193e..29a345f9425 100644 --- a/src/mesa/main/varray.c +++ b/src/mesa/main/varray.c @@ -57,8 +57,8 @@ #define HALF_BIT 0x80 #define FLOAT_BIT 0x100 #define DOUBLE_BIT 0x200 -#define FIXED_BIT 0x400 - +#define FIXED_ES_BIT 0x400 +#define FIXED_GL_BIT 0x800 /** Convert GL datatype enum into a <type>_BIT value seen above */ @@ -90,7 +90,7 @@ type_to_bit(const struct gl_context *ctx, GLenum type) case GL_DOUBLE: return DOUBLE_BIT; case GL_FIXED: - return FIXED_BIT; + return ctx->API == API_OPENGL ? FIXED_GL_BIT : FIXED_ES_BIT; default: return 0; } @@ -130,7 +130,10 @@ update_array(struct gl_context *ctx, if (ctx->API != API_OPENGLES && ctx->API != API_OPENGLES2) { /* fixed point arrays / data is only allowed with OpenGL ES 1.x/2.0 */ - legalTypesMask &= ~FIXED_BIT; + legalTypesMask &= ~FIXED_ES_BIT; + } + if (!ctx->Extensions.ARB_ES2_compatibility) { + legalTypesMask &= ~FIXED_GL_BIT; } typeBit = type_to_bit(ctx, type); @@ -198,7 +201,7 @@ void GLAPIENTRY _mesa_VertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr) { GLbitfield legalTypes = (SHORT_BIT | INT_BIT | FLOAT_BIT | - DOUBLE_BIT | HALF_BIT | FIXED_BIT); + DOUBLE_BIT | HALF_BIT | FIXED_ES_BIT); GET_CURRENT_CONTEXT(ctx); ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); @@ -217,7 +220,7 @@ _mesa_NormalPointer(GLenum type, GLsizei stride, const GLvoid *ptr ) { const GLbitfield legalTypes = (BYTE_BIT | SHORT_BIT | INT_BIT | HALF_BIT | FLOAT_BIT | DOUBLE_BIT | - FIXED_BIT); + FIXED_ES_BIT); GET_CURRENT_CONTEXT(ctx); ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); @@ -235,7 +238,7 @@ _mesa_ColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr) SHORT_BIT | UNSIGNED_SHORT_BIT | INT_BIT | UNSIGNED_INT_BIT | HALF_BIT | FLOAT_BIT | DOUBLE_BIT | - FIXED_BIT); + FIXED_ES_BIT); GET_CURRENT_CONTEXT(ctx); ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); @@ -299,7 +302,7 @@ _mesa_TexCoordPointer(GLint size, GLenum type, GLsizei stride, { GLbitfield legalTypes = (SHORT_BIT | INT_BIT | HALF_BIT | FLOAT_BIT | DOUBLE_BIT | - FIXED_BIT); + FIXED_ES_BIT); GET_CURRENT_CONTEXT(ctx); const GLuint unit = ctx->Array.ActiveTexture; ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); @@ -337,7 +340,7 @@ _mesa_EdgeFlagPointer(GLsizei stride, const GLvoid *ptr) void GLAPIENTRY _mesa_PointSizePointer(GLenum type, GLsizei stride, const GLvoid *ptr) { - const GLbitfield legalTypes = (FLOAT_BIT | FIXED_BIT); + const GLbitfield legalTypes = (FLOAT_BIT | FIXED_ES_BIT); GET_CURRENT_CONTEXT(ctx); ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); @@ -405,7 +408,7 @@ _mesa_VertexAttribPointerARB(GLuint index, GLint size, GLenum type, SHORT_BIT | UNSIGNED_SHORT_BIT | INT_BIT | UNSIGNED_INT_BIT | HALF_BIT | FLOAT_BIT | DOUBLE_BIT | - FIXED_BIT); + FIXED_ES_BIT | FIXED_GL_BIT); GET_CURRENT_CONTEXT(ctx); ASSERT_OUTSIDE_BEGIN_END(ctx); diff --git a/src/mesa/program/hash_table.c b/src/mesa/program/hash_table.c index f7ef366c1a0..877a9e2ffc3 100644 --- a/src/mesa/program/hash_table.c +++ b/src/mesa/program/hash_table.c @@ -160,6 +160,25 @@ hash_table_remove(struct hash_table *ht, const void *key) } } +void +hash_table_call_foreach(struct hash_table *ht, + void (*callback)(const void *key, + void *data, + void *closure), + void *closure) +{ + int bucket; + + for (bucket = 0; bucket < ht->num_buckets; bucket++) { + struct node *node, *temp; + foreach_s(node, temp, &ht->buckets[bucket]) { + struct hash_node *hn = (struct hash_node *) node; + + callback(hn->key, hn->data, closure); + } + } +} + unsigned hash_table_string_hash(const void *key) { diff --git a/src/mesa/program/hash_table.h b/src/mesa/program/hash_table.h index f1c4fdcd1fa..e715bb1cc62 100644 --- a/src/mesa/program/hash_table.h +++ b/src/mesa/program/hash_table.h @@ -144,6 +144,13 @@ hash_table_pointer_hash(const void *key); int hash_table_pointer_compare(const void *key1, const void *key2); +void +hash_table_call_foreach(struct hash_table *ht, + void (*callback)(const void *key, + void *data, + void *closure), + void *closure); + #ifdef __cplusplus } #endif diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp index 3c9b9733832..bc10b455b8b 100644 --- a/src/mesa/program/ir_to_mesa.cpp +++ b/src/mesa/program/ir_to_mesa.cpp @@ -1481,7 +1481,6 @@ ir_to_mesa_visitor::visit(ir_dereference_array *ir) if (index) { src.index += index->value.i[0] * element_size; } else { - src_reg array_base = this->result; /* Variable index array dereference. It eats the "vec4" of the * base of the array and an index that offsets the Mesa register * index. @@ -2163,7 +2162,7 @@ ir_to_mesa_visitor::visit(ir_discard *ir) void ir_to_mesa_visitor::visit(ir_if *ir) { - ir_to_mesa_instruction *cond_inst, *if_inst, *else_inst = NULL; + ir_to_mesa_instruction *cond_inst, *if_inst; ir_to_mesa_instruction *prev_inst; prev_inst = (ir_to_mesa_instruction *)this->instructions.get_tail(); @@ -2195,7 +2194,7 @@ ir_to_mesa_visitor::visit(ir_if *ir) visit_exec_list(&ir->then_instructions, this); if (!ir->else_instructions.is_empty()) { - else_inst = emit(ir->condition, OPCODE_ELSE); + emit(ir->condition, OPCODE_ELSE); visit_exec_list(&ir->else_instructions, this); } diff --git a/src/mesa/program/prog_print.c b/src/mesa/program/prog_print.c index 484596af760..7c3b4909e73 100644 --- a/src/mesa/program/prog_print.c +++ b/src/mesa/program/prog_print.c @@ -647,6 +647,7 @@ _mesa_fprint_instruction_opt(FILE *f, case OPCODE_TXP: case OPCODE_TXL: case OPCODE_TXB: + case OPCODE_TXD: fprintf(f, "%s", _mesa_opcode_string(inst->Opcode)); if (inst->SaturateMode == SATURATE_ZERO_ONE) fprintf(f, "_SAT"); @@ -654,6 +655,12 @@ _mesa_fprint_instruction_opt(FILE *f, fprint_dst_reg(f, &inst->DstReg, mode, prog); fprintf(f, ", "); fprint_src_reg(f, &inst->SrcReg[0], mode, prog); + if (inst->Opcode == OPCODE_TXD) { + fprintf(f, ", "); + fprint_src_reg(f, &inst->SrcReg[1], mode, prog); + fprintf(f, ", "); + fprint_src_reg(f, &inst->SrcReg[2], mode, prog); + } fprintf(f, ", texture[%d], ", inst->TexSrcUnit); switch (inst->TexSrcTarget) { case TEXTURE_1D_INDEX: fprintf(f, "1D"); break; diff --git a/src/mesa/program/prog_statevars.c b/src/mesa/program/prog_statevars.c index 1fd26f44d56..d94d7fe5dfb 100644 --- a/src/mesa/program/prog_statevars.c +++ b/src/mesa/program/prog_statevars.c @@ -602,11 +602,11 @@ _mesa_fetch_state(struct gl_context *ctx, const gl_state_index state[], value[0] = 1.0F; value[1] = 0.0F; value[2] = -1.0F; - value[3] = (GLfloat) (ctx->DrawBuffer->Height - 1); + value[3] = (GLfloat) ctx->DrawBuffer->Height; } else { /* Flipping Y upside down (XY) followed by identity (ZW). */ value[0] = -1.0F; - value[1] = (GLfloat) (ctx->DrawBuffer->Height - 1); + value[1] = (GLfloat) ctx->DrawBuffer->Height; value[2] = 1.0F; value[3] = 0.0F; } diff --git a/src/mesa/program/prog_statevars.h b/src/mesa/program/prog_statevars.h index 9fe8d81b3dd..04af3f4cf3a 100644 --- a/src/mesa/program/prog_statevars.h +++ b/src/mesa/program/prog_statevars.h @@ -120,7 +120,7 @@ typedef enum gl_state_index_ { STATE_PT_BIAS, /**< Pixel transfer RGBA bias */ STATE_SHADOW_AMBIENT, /**< ARB_shadow_ambient fail value; token[2] is texture unit index */ STATE_FB_SIZE, /**< (width-1, height-1, 0, 0) */ - STATE_FB_WPOS_Y_TRANSFORM, /**< (1, 0, -1, height-1) if a FBO is bound, (-1, height-1, 1, 0) otherwise */ + STATE_FB_WPOS_Y_TRANSFORM, /**< (1, 0, -1, height) if a FBO is bound, (-1, height, 1, 0) otherwise */ STATE_ROT_MATRIX_0, /**< ATI_envmap_bumpmap, rot matrix row 0 */ STATE_ROT_MATRIX_1, /**< ATI_envmap_bumpmap, rot matrix row 1 */ STATE_INTERNAL_DRIVER /* first available state index for drivers (must be last) */ diff --git a/src/mesa/program/program_parse.y b/src/mesa/program/program_parse.y index b35bc5a7cae..dbf5abaa617 100644 --- a/src/mesa/program/program_parse.y +++ b/src/mesa/program/program_parse.y @@ -1258,7 +1258,11 @@ optArraySize: | INTEGER { if (($1 < 1) || ((unsigned) $1 > state->limits->MaxParameters)) { - yyerror(& @1, state, "invalid parameter array size"); + char msg[100]; + _mesa_snprintf(msg, sizeof(msg), + "invalid parameter array size (size=%d max=%u)", + $1, state->limits->MaxParameters); + yyerror(& @1, state, msg); YYERROR; } else { $$ = $1; @@ -2060,9 +2064,14 @@ resultColBinding: COLOR optResultFaceType optResultColorType optResultFaceType: { - $$ = (state->mode == ARB_vertex) - ? VERT_RESULT_COL0 - : FRAG_RESULT_COLOR; + if (state->mode == ARB_vertex) { + $$ = VERT_RESULT_COL0; + } else { + if (state->option.DrawBuffers) + $$ = FRAG_RESULT_DATA0; + else + $$ = FRAG_RESULT_COLOR; + } } | '[' INTEGER ']' { diff --git a/src/mesa/program/register_allocate.c b/src/mesa/program/register_allocate.c index 95a9bde401a..de96eb42c9b 100644 --- a/src/mesa/program/register_allocate.c +++ b/src/mesa/program/register_allocate.c @@ -28,6 +28,46 @@ /** @file register_allocate.c * * Graph-coloring register allocator. + * + * The basic idea of graph coloring is to make a node in a graph for + * every thing that needs a register (color) number assigned, and make + * edges in the graph between nodes that interfere (can't be allocated + * to the same register at the same time). + * + * During the "simplify" process, any any node with fewer edges than + * there are registers means that that edge can get assigned a + * register regardless of what its neighbors choose, so that node is + * pushed on a stack and removed (with its edges) from the graph. + * That likely causes other nodes to become trivially colorable as well. + * + * Then during the "select" process, nodes are popped off of that + * stack, their edges restored, and assigned a color different from + * their neighbors. Because they were pushed on the stack only when + * they were trivially colorable, any color chosen won't interfere + * with the registers to be popped later. + * + * The downside to most graph coloring is that real hardware often has + * limitations, like registers that need to be allocated to a node in + * pairs, or aligned on some boundary. This implementation follows + * the paper "Retargetable Graph-Coloring Register Allocation for + * Irregular Architectures" by Johan Runeson and Sven-Olof Nyström. + * + * In this system, there are register classes each containing various + * registers, and registers may interfere with other registers. For + * example, one might have a class of base registers, and a class of + * aligned register pairs that would each interfere with their pair of + * the base registers. Each node has a register class it needs to be + * assigned to. Define p(B) to be the size of register class B, and + * q(B,C) to be the number of registers in B that the worst choice + * register in C could conflict with. Then, this system replaces the + * basic graph coloring test of "fewer edges from this node than there + * are registers" with "For this node of class B, the sum of q(B,C) + * for each neighbor node of class C is less than pB". + * + * A nice feature of the pq test is that q(B,C) can be computed once + * up front and stored in a 2-dimensional array, so that the cost of + * coloring a node is constant with the number of registers. We do + * this during ra_set_finalize(). */ #include <ralloc.h> @@ -37,6 +77,8 @@ #include "main/mtypes.h" #include "register_allocate.h" +#define NO_REG ~0 + struct ra_reg { GLboolean *conflicts; unsigned int *conflict_list; @@ -56,25 +98,47 @@ struct ra_class { GLboolean *regs; /** - * p_B in Runeson/Nyström paper. + * p(B) in Runeson/Nyström paper. * * This is "how many regs are in the set." */ unsigned int p; /** - * q_B,C in Runeson/Nyström paper. + * q(B,C) (indexed by C, B is this register class) in + * Runeson/Nyström paper. This is "how many registers of B could + * the worst choice register from C conflict with". */ unsigned int *q; }; struct ra_node { + /** @{ + * + * List of which nodes this node interferes with. This should be + * symmetric with the other node. + */ GLboolean *adjacency; unsigned int *adjacency_list; - unsigned int class; unsigned int adjacency_count; + /** @} */ + + unsigned int class; + + /* Register, if assigned, or NO_REG. */ unsigned int reg; + + /** + * Set when the node is in the trivially colorable stack. When + * set, the adjacency to this node is ignored, to implement the + * "remove the edge from the graph" in simplification without + * having to actually modify the adjacency_list. + */ GLboolean in_stack; + + /* For an implementation that needs register spilling, this is the + * approximate cost of spilling this node. + */ float spill_cost; }; @@ -227,7 +291,7 @@ ra_alloc_interference_graph(struct ra_regs *regs, unsigned int count) g->nodes[i].adjacency_list = ralloc_array(g, unsigned int, count); g->nodes[i].adjacency_count = 0; ra_add_node_adjacency(g, i, i); - g->nodes[i].reg = ~0; + g->nodes[i].reg = NO_REG; } return g; @@ -287,7 +351,7 @@ ra_simplify(struct ra_graph *g) progress = GL_FALSE; for (i = g->count - 1; i >= 0; i--) { - if (g->nodes[i].in_stack) + if (g->nodes[i].in_stack || g->nodes[i].reg != NO_REG) continue; if (pq_test(g, i)) { @@ -367,7 +431,7 @@ ra_optimistic_color(struct ra_graph *g) unsigned int i; for (i = 0; i < g->count; i++) { - if (g->nodes[i].in_stack) + if (g->nodes[i].in_stack || g->nodes[i].reg != NO_REG) continue; g->stack[g->stack_count] = i; @@ -391,6 +455,24 @@ ra_get_node_reg(struct ra_graph *g, unsigned int n) return g->nodes[n].reg; } +/** + * Forces a node to a specific register. This can be used to avoid + * creating a register class containing one node when handling data + * that must live in a fixed location and is known to not conflict + * with other forced register assignment (as is common with shader + * input data). These nodes do not end up in the stack during + * ra_simplify(), and thus at ra_select() time it is as if they were + * the first popped off the stack and assigned their fixed locations. + * + * Must be called before ra_simplify(). + */ +void +ra_set_node_reg(struct ra_graph *g, unsigned int n, unsigned int reg) +{ + g->nodes[n].reg = reg; + g->nodes[n].in_stack = GL_FALSE; +} + static float ra_get_spill_benefit(struct ra_graph *g, unsigned int n) { diff --git a/src/mesa/program/register_allocate.h b/src/mesa/program/register_allocate.h index 198b89f2d7d..5b95833f394 100644 --- a/src/mesa/program/register_allocate.h +++ b/src/mesa/program/register_allocate.h @@ -65,6 +65,7 @@ GLboolean ra_select(struct ra_graph *g); GLboolean ra_allocate_no_spills(struct ra_graph *g); unsigned int ra_get_node_reg(struct ra_graph *g, unsigned int n); +void ra_set_node_reg(struct ra_graph * g, unsigned int n, unsigned int reg); void ra_set_node_spill_cost(struct ra_graph *g, unsigned int n, float cost); int ra_get_best_spill_node(struct ra_graph *g); /** @} */ diff --git a/src/mesa/state_tracker/st_atom_pixeltransfer.c b/src/mesa/state_tracker/st_atom_pixeltransfer.c index 9557adc2d8b..57430b36f8d 100644 --- a/src/mesa/state_tracker/st_atom_pixeltransfer.c +++ b/src/mesa/state_tracker/st_atom_pixeltransfer.c @@ -195,18 +195,8 @@ get_pixel_transfer_program(struct gl_context *ctx, const struct state_key *key) { STATE_INTERNAL, STATE_PT_SCALE, 0, 0, 0 }; static const gl_state_index bias_state[STATE_LENGTH] = { STATE_INTERNAL, STATE_PT_BIAS, 0, 0, 0 }; - GLfloat scale[4], bias[4]; GLint scale_p, bias_p; - scale[0] = ctx->Pixel.RedScale; - scale[1] = ctx->Pixel.GreenScale; - scale[2] = ctx->Pixel.BlueScale; - scale[3] = ctx->Pixel.AlphaScale; - bias[0] = ctx->Pixel.RedBias; - bias[1] = ctx->Pixel.GreenBias; - bias[2] = ctx->Pixel.BlueBias; - bias[3] = ctx->Pixel.AlphaBias; - scale_p = _mesa_add_state_reference(params, scale_state); bias_p = _mesa_add_state_reference(params, bias_state); diff --git a/src/mesa/state_tracker/st_atom_sampler.c b/src/mesa/state_tracker/st_atom_sampler.c index 808aa73a083..e3d6cbb8e12 100644 --- a/src/mesa/state_tracker/st_atom_sampler.c +++ b/src/mesa/state_tracker/st_atom_sampler.c @@ -33,6 +33,8 @@ #include "main/macros.h" +#include "main/mtypes.h" +#include "main/samplerobj.h" #include "st_context.h" #include "st_cb_texture.h" @@ -154,7 +156,7 @@ update_samplers(struct st_context *st) teximg = texobj->Image[0][texobj->BaseLevel]; - msamp = st_get_mesa_sampler(st->ctx, texUnit); + msamp = _mesa_get_samplerobj(st->ctx, texUnit); sampler->wrap_s = gl_wrap_xlate(msamp->WrapS); sampler->wrap_t = gl_wrap_xlate(msamp->WrapT); @@ -199,6 +201,9 @@ update_samplers(struct st_context *st) = st_compare_func_to_pipe(msamp->CompareFunc); } + sampler->seamless_cube_map = + st->ctx->Texture.CubeMapSeamless || msamp->CubeMapSeamless; + st->state.num_samplers = su + 1; /*printf("%s su=%u non-null\n", __FUNCTION__, su);*/ diff --git a/src/mesa/state_tracker/st_atom_texture.c b/src/mesa/state_tracker/st_atom_texture.c index 19ad2e8cc4a..9d437ad086f 100644 --- a/src/mesa/state_tracker/st_atom_texture.c +++ b/src/mesa/state_tracker/st_atom_texture.c @@ -33,6 +33,8 @@ #include "main/macros.h" +#include "main/mtypes.h" +#include "main/samplerobj.h" #include "program/prog_instruction.h" #include "st_context.h" @@ -209,7 +211,7 @@ update_textures(struct st_context *st) else texUnit = vprog->Base.SamplerUnits[su]; - samp = st_get_mesa_sampler(st->ctx, texUnit); + samp = _mesa_get_samplerobj(st->ctx, texUnit); texObj = st->ctx->Texture.Unit[texUnit]._Current; diff --git a/src/mesa/state_tracker/st_cb_drawpixels.c b/src/mesa/state_tracker/st_cb_drawpixels.c index 1707f827cc8..e377861b8d2 100644 --- a/src/mesa/state_tracker/st_cb_drawpixels.c +++ b/src/mesa/state_tracker/st_cb_drawpixels.c @@ -372,6 +372,14 @@ internal_format(struct gl_context *ctx, GLenum format, GLenum type) return ctx->Extensions.ARB_texture_float ? GL_RGBA32F : ctx->Extensions.EXT_texture_snorm ? GL_RGBA16_SNORM : GL_RGBA16; + + case GL_UNSIGNED_INT_5_9_9_9_REV: + assert(ctx->Extensions.EXT_texture_shared_exponent); + return GL_RGB9_E5; + + case GL_UNSIGNED_INT_10F_11F_11F_REV: + assert(ctx->Extensions.EXT_packed_float); + return GL_R11F_G11F_B10F; } } } @@ -411,7 +419,6 @@ make_texture(struct st_context *st, gl_format mformat; struct pipe_resource *pt; enum pipe_format pipeFormat; - GLuint cpp; GLenum baseFormat, intFormat; baseFormat = base_format(format); @@ -423,7 +430,6 @@ make_texture(struct st_context *st, pipeFormat = st_mesa_format_to_pipe_format(mformat); assert(pipeFormat); - cpp = util_format_get_blocksize(pipeFormat); pixels = _mesa_map_pbo_source(ctx, unpack, pixels); if (!pixels) diff --git a/src/mesa/state_tracker/st_cb_texture.c b/src/mesa/state_tracker/st_cb_texture.c index ab7f6a51684..a27c30e51fe 100644 --- a/src/mesa/state_tracker/st_cb_texture.c +++ b/src/mesa/state_tracker/st_cb_texture.c @@ -1843,9 +1843,9 @@ st_finalize_texture(struct gl_context *ctx, /* Need to import images in main memory or held in other textures. */ if (stImage && stObj->pt != stImage->pt) { - if (stImage->base.Width == u_minify(stObj->width0, level) && + if (level == 0 || (stImage->base.Width == u_minify(stObj->width0, level) && stImage->base.Height == u_minify(stObj->height0, level) && - stImage->base.Depth == u_minify(stObj->depth0, level)) { + stImage->base.Depth == u_minify(stObj->depth0, level))) { /* src image fits expected dest mipmap level size */ copy_image_data_to_texture(st, stObj, level, stImage); } diff --git a/src/mesa/state_tracker/st_draw.c b/src/mesa/state_tracker/st_draw.c index d27043ec296..46a4f9cf8c5 100644 --- a/src/mesa/state_tracker/st_draw.c +++ b/src/mesa/state_tracker/st_draw.c @@ -247,7 +247,7 @@ is_interleaved_arrays(const struct st_vertex_program *vp, const struct gl_buffer_object *firstBufObj = NULL; GLint firstStride = -1; const GLubyte *client_addr = NULL; - GLboolean user_memory; + GLboolean user_memory = GL_FALSE; for (attr = 0; attr < vpv->num_inputs; attr++) { const GLuint mesaAttr = vp->index_to_input[attr]; diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c index bdc08949dd4..ad8e6bb9ec9 100644 --- a/src/mesa/state_tracker/st_extensions.c +++ b/src/mesa/state_tracker/st_extensions.c @@ -167,6 +167,8 @@ void st_init_limits(struct st_context *st) pc->MaxNativeAddressRegs = screen->get_shader_param(screen, sh, PIPE_SHADER_CAP_MAX_ADDRS); pc->MaxNativeParameters = screen->get_shader_param(screen, sh, PIPE_SHADER_CAP_MAX_CONSTS); pc->MaxUniformComponents = 4 * MIN2(pc->MaxNativeParameters, MAX_UNIFORMS); + /* raise MaxParameters if native support is higher */ + pc->MaxParameters = MAX2(pc->MaxParameters, pc->MaxNativeParameters); options->EmitNoNoise = TRUE; @@ -187,7 +189,7 @@ void st_init_limits(struct st_context *st) options->EmitNoIndirectUniform = !screen->get_shader_param(screen, sh, PIPE_SHADER_CAP_INDIRECT_CONST_ADDR); - if(options->EmitNoLoops) + if (options->EmitNoLoops) options->MaxUnrollIterations = MIN2(screen->get_shader_param(screen, sh, PIPE_SHADER_CAP_MAX_INSTRUCTIONS), 65536); } @@ -513,6 +515,12 @@ void st_init_extensions(struct st_context *st) ctx->Extensions.ARB_half_float_vertex = GL_TRUE; } + if (screen->is_format_supported(screen, PIPE_FORMAT_R32G32B32A32_FIXED, + PIPE_BUFFER, 0, + PIPE_BIND_VERTEX_BUFFER)) { + ctx->Extensions.ARB_ES2_compatibility = GL_TRUE; + } + if (screen->get_shader_param(screen, PIPE_SHADER_GEOMETRY, PIPE_SHADER_CAP_MAX_INSTRUCTIONS) > 0) { #if 0 /* XXX re-enable when GLSL compiler again supports geometry shaders */ ctx->Extensions.ARB_geometry_shader4 = GL_TRUE; @@ -539,8 +547,8 @@ void st_init_extensions(struct st_context *st) PIPE_TEXTURE_2D, 0, PIPE_BIND_RENDER_TARGET) && !screen->is_format_supported(screen, PIPE_FORMAT_R16G16B16A16_SNORM, - PIPE_TEXTURE_2D, 0, - PIPE_BIND_RENDER_TARGET) && + PIPE_TEXTURE_2D, 0, + PIPE_BIND_RENDER_TARGET) && !screen->is_format_supported(screen, PIPE_FORMAT_R16G16B16A16_FLOAT, PIPE_TEXTURE_2D, 0, PIPE_BIND_RENDER_TARGET) && @@ -574,4 +582,25 @@ void st_init_extensions(struct st_context *st) if (st->pipe->texture_barrier) { ctx->Extensions.NV_texture_barrier = GL_TRUE; } + + if (screen->is_format_supported(screen, PIPE_FORMAT_R9G9B9E5_FLOAT, + PIPE_TEXTURE_2D, 0, + PIPE_BIND_SAMPLER_VIEW)) { + ctx->Extensions.EXT_texture_shared_exponent = GL_TRUE; + } + + if (screen->is_format_supported(screen, PIPE_FORMAT_R11G11B10_FLOAT, + PIPE_TEXTURE_2D, 0, + PIPE_BIND_RENDER_TARGET | + PIPE_BIND_SAMPLER_VIEW)) { + ctx->Extensions.EXT_packed_float = GL_TRUE; + } + + if (screen->get_param(screen, PIPE_CAP_SEAMLESS_CUBE_MAP_PER_TEXTURE)) { + ctx->Extensions.ARB_seamless_cube_map = GL_TRUE; + ctx->Extensions.AMD_seamless_cubemap_per_texture = GL_TRUE; + } + else if (screen->get_param(screen, PIPE_CAP_SEAMLESS_CUBE_MAP)) { + ctx->Extensions.ARB_seamless_cube_map = GL_TRUE; + } } diff --git a/src/mesa/state_tracker/st_format.c b/src/mesa/state_tracker/st_format.c index bbaa84d7fdf..acfafe351d2 100644 --- a/src/mesa/state_tracker/st_format.c +++ b/src/mesa/state_tracker/st_format.c @@ -325,6 +325,11 @@ st_mesa_format_to_pipe_format(gl_format mesaFormat) case MESA_FORMAT_SIGNED_I16: return PIPE_FORMAT_I16_SNORM; + case MESA_FORMAT_RGB9_E5_FLOAT: + return PIPE_FORMAT_R9G9B9E5_FLOAT; + case MESA_FORMAT_R11_G11_B10_FLOAT: + return PIPE_FORMAT_R11G11B10_FLOAT; + default: assert(0); return PIPE_FORMAT_NONE; @@ -545,6 +550,11 @@ st_pipe_format_to_mesa_format(enum pipe_format format) case PIPE_FORMAT_I16_SNORM: return MESA_FORMAT_SIGNED_I16; + case PIPE_FORMAT_R9G9B9E5_FLOAT: + return MESA_FORMAT_RGB9_E5_FLOAT; + case PIPE_FORMAT_R11G11B10_FLOAT: + return MESA_FORMAT_R11_G11_B10_FLOAT; + default: assert(0); return MESA_FORMAT_NONE; @@ -954,14 +964,24 @@ st_choose_format(struct pipe_screen *screen, GLenum internalFormat, /* prefer formats in order of data size, choosing 16-bit ones if equal sized */ case GL_RGBA16F_ARB: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_R16G16B16A16_FLOAT, + PIPE_FORMAT_R32G32B32A32_FLOAT + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } case GL_RGB16F_ARB: { static const enum pipe_format formats[] = { + PIPE_FORMAT_R16G16B16_FLOAT, PIPE_FORMAT_R16G16B16A16_FLOAT, + PIPE_FORMAT_R32G32B32_FLOAT, PIPE_FORMAT_R32G32B32A32_FLOAT }; return find_supported_format(screen, formats, Elements(formats), - target, sample_count, bindings); + target, sample_count, bindings); } case GL_LUMINANCE_ALPHA16F_ARB: { @@ -1040,14 +1060,23 @@ st_choose_format(struct pipe_screen *screen, GLenum internalFormat, /* try a 32-bit format if available, otherwise fallback to a 16-bit one */ case GL_RGBA32F_ARB: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_R32G32B32A32_FLOAT, + PIPE_FORMAT_R16G16B16A16_FLOAT + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } case GL_RGB32F_ARB: { static const enum pipe_format formats[] = { + PIPE_FORMAT_R32G32B32_FLOAT, PIPE_FORMAT_R32G32B32A32_FLOAT, PIPE_FORMAT_R16G16B16A16_FLOAT }; return find_supported_format(screen, formats, Elements(formats), - target, sample_count, bindings); + target, sample_count, bindings); } case GL_LUMINANCE_ALPHA32F_ARB: { @@ -1464,6 +1493,20 @@ st_choose_format(struct pipe_screen *screen, GLenum internalFormat, target, sample_count, bindings); } + case GL_RGB9_E5: + if (screen->is_format_supported(screen, PIPE_FORMAT_R9G9B9E5_FLOAT, target, + sample_count, bindings)) { + return PIPE_FORMAT_R9G9B9E5_FLOAT; + } + return PIPE_FORMAT_NONE; + + case GL_R11F_G11F_B10F: + if (screen->is_format_supported(screen, PIPE_FORMAT_R11G11B10_FLOAT, target, + sample_count, bindings)) { + return PIPE_FORMAT_R11G11B10_FLOAT; + } + return PIPE_FORMAT_NONE; + default: return PIPE_FORMAT_NONE; } diff --git a/src/mesa/state_tracker/st_mesa_to_tgsi.c b/src/mesa/state_tracker/st_mesa_to_tgsi.c index c07739f9d53..a41e5b16a85 100644 --- a/src/mesa/state_tracker/st_mesa_to_tgsi.c +++ b/src/mesa/state_tracker/st_mesa_to_tgsi.c @@ -752,37 +752,15 @@ compile_instruction( /** - * Emit the TGSI instructions to adjust the WPOS pixel center convention - * Basically, add (adjX, adjY) to the fragment position. - */ -static void -emit_adjusted_wpos( struct st_translate *t, - const struct gl_program *program, - GLfloat adjX, GLfloat adjY) -{ - struct ureg_program *ureg = t->ureg; - struct ureg_dst wpos_temp = ureg_DECL_temporary(ureg); - struct ureg_src wpos_input = t->inputs[t->inputMapping[FRAG_ATTRIB_WPOS]]; - - /* Note that we bias X and Y and pass Z and W through unchanged. - * The shader might also use gl_FragCoord.w and .z. - */ - ureg_ADD(ureg, wpos_temp, wpos_input, - ureg_imm4f(ureg, adjX, adjY, 0.0f, 0.0f)); - - t->inputs[t->inputMapping[FRAG_ATTRIB_WPOS]] = ureg_src(wpos_temp); -} - - -/** - * Emit the TGSI instructions for inverting the WPOS y coordinate. + * Emit the TGSI instructions for inverting and adjusting WPOS. * This code is unavoidable because it also depends on whether * a FBO is bound (STATE_FB_WPOS_Y_TRANSFORM). */ static void -emit_wpos_inversion( struct st_translate *t, - const struct gl_program *program, - boolean invert) +emit_wpos_adjustment( struct st_translate *t, + const struct gl_program *program, + boolean invert, + GLfloat adjX, GLfloat adjY[2]) { struct ureg_program *ureg = t->ureg; @@ -801,18 +779,38 @@ emit_wpos_inversion( struct st_translate *t, wposTransformState); struct ureg_src wpostrans = ureg_DECL_constant( ureg, wposTransConst ); - struct ureg_dst wpos_temp; + struct ureg_dst wpos_temp = ureg_DECL_temporary( ureg ); struct ureg_src wpos_input = t->inputs[t->inputMapping[FRAG_ATTRIB_WPOS]]; - /* MOV wpos_temp, input[wpos] - */ - if (wpos_input.File == TGSI_FILE_TEMPORARY) - wpos_temp = ureg_dst(wpos_input); - else { - wpos_temp = ureg_DECL_temporary( ureg ); + /* First, apply the coordinate shift: */ + if (adjX || adjY[0] || adjY[1]) { + if (adjY[0] != adjY[1]) { + /* Adjust the y coordinate by adjY[1] or adjY[0] respectively + * depending on whether inversion is actually going to be applied + * or not, which is determined by testing against the inversion + * state variable used below, which will be either +1 or -1. + */ + struct ureg_dst adj_temp = ureg_DECL_temporary(ureg); + + ureg_CMP(ureg, adj_temp, + ureg_scalar(wpostrans, invert ? 2 : 0), + ureg_imm4f(ureg, adjX, adjY[0], 0.0f, 0.0f), + ureg_imm4f(ureg, adjX, adjY[1], 0.0f, 0.0f)); + ureg_ADD(ureg, wpos_temp, wpos_input, ureg_src(adj_temp)); + } else { + ureg_ADD(ureg, wpos_temp, wpos_input, + ureg_imm4f(ureg, adjX, adjY[0], 0.0f, 0.0f)); + } + wpos_input = ureg_src(wpos_temp); + } else { + /* MOV wpos_temp, input[wpos] + */ ureg_MOV( ureg, wpos_temp, wpos_input ); } + /* Now the conditional y flip: STATE_FB_WPOS_Y_TRANSFORM.xy/zw will be + * inversion/identity, or the other way around if we're drawing to an FBO. + */ if (invert) { /* MAD wpos_temp.y, wpos_input, wpostrans.xxxx, wpostrans.yyyy */ @@ -849,8 +847,37 @@ emit_wpos(struct st_context *st, const struct gl_fragment_program *fp = (const struct gl_fragment_program *) program; struct pipe_screen *pscreen = st->pipe->screen; + GLfloat adjX = 0.0f; + GLfloat adjY[2] = { 0.0f, 0.0f }; boolean invert = FALSE; + /* Query the pixel center conventions supported by the pipe driver and set + * adjX, adjY to help out if it cannot handle the requested one internally. + * + * The bias of the y-coordinate depends on whether y-inversion takes place + * (adjY[1]) or not (adjY[0]), which is in turn dependent on whether we are + * drawing to an FBO (causes additional inversion), and whether the the pipe + * driver origin and the requested origin differ (the latter condition is + * stored in the 'invert' variable). + * + * For height = 100 (i = integer, h = half-integer, l = lower, u = upper): + * + * center shift only: + * i -> h: +0.5 + * h -> i: -0.5 + * + * inversion only: + * l,i -> u,i: ( 0.0 + 1.0) * -1 + 100 = 99 + * l,h -> u,h: ( 0.5 + 0.0) * -1 + 100 = 99.5 + * u,i -> l,i: (99.0 + 1.0) * -1 + 100 = 0 + * u,h -> l,h: (99.5 + 0.0) * -1 + 100 = 0.5 + * + * inversion and center shift: + * l,i -> u,h: ( 0.0 + 0.5) * -1 + 100 = 99.5 + * l,h -> u,i: ( 0.5 + 0.5) * -1 + 100 = 99 + * u,i -> l,h: (99.0 + 0.5) * -1 + 100 = 0.5 + * u,h -> l,i: (99.5 + 0.5) * -1 + 100 = 0 + */ if (fp->OriginUpperLeft) { /* Fragment shader wants origin in upper-left */ if (pscreen->get_param(pscreen, PIPE_CAP_TGSI_FS_COORD_ORIGIN_UPPER_LEFT)) { @@ -878,12 +905,17 @@ emit_wpos(struct st_context *st, if (fp->PixelCenterInteger) { /* Fragment shader wants pixel center integer */ - if (pscreen->get_param(pscreen, PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_INTEGER)) + if (pscreen->get_param(pscreen, PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_INTEGER)) { /* the driver supports pixel center integer */ + adjY[1] = 1.0f; ureg_property_fs_coord_pixel_center(ureg, TGSI_FS_COORD_PIXEL_CENTER_INTEGER); - else if (pscreen->get_param(pscreen, PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_HALF_INTEGER)) + } + else if (pscreen->get_param(pscreen, PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_HALF_INTEGER)) { /* the driver supports pixel center half integer, need to bias X,Y */ - emit_adjusted_wpos(t, program, 0.5f, invert ? 0.5f : -0.5f); + adjX = -0.5f; + adjY[0] = -0.5f; + adjY[1] = 0.5f; + } else assert(0); } @@ -894,8 +926,8 @@ emit_wpos(struct st_context *st, } else if (pscreen->get_param(pscreen, PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_INTEGER)) { /* the driver supports pixel center integer, need to bias X,Y */ + adjX = adjY[0] = adjY[1] = 0.5f; ureg_property_fs_coord_pixel_center(ureg, TGSI_FS_COORD_PIXEL_CENTER_INTEGER); - emit_adjusted_wpos(t, program, 0.5f, invert ? -0.5f : 0.5f); } else assert(0); @@ -903,7 +935,7 @@ emit_wpos(struct st_context *st, /* we invert after adjustment so that we avoid the MOV to temporary, * and reuse the adjustment ADD instead */ - emit_wpos_inversion(t, program, invert); + emit_wpos_adjustment(t, program, invert, adjX, adjY); } diff --git a/src/mesa/state_tracker/st_texture.h b/src/mesa/state_tracker/st_texture.h index 903e30df52f..d50c3c9af79 100644 --- a/src/mesa/state_tracker/st_texture.h +++ b/src/mesa/state_tracker/st_texture.h @@ -163,21 +163,6 @@ st_get_texture_sampler_view(struct st_texture_object *stObj, } -/** - * Get pointer to the active sampler object for the given texture unit. - * This will either be a user-defined sampler object or the texture - * object's own sampler state. - */ -static INLINE struct gl_sampler_object * -st_get_mesa_sampler(const struct gl_context *ctx, GLuint unit) -{ - if (ctx->Texture.Unit[unit].Sampler) - return ctx->Texture.Unit[unit].Sampler; - else - return &ctx->Texture.Unit[unit]._Current->Sampler; -} - - extern struct pipe_resource * st_texture_create(struct st_context *st, enum pipe_texture_target target, diff --git a/src/mesa/swrast/s_accum.c b/src/mesa/swrast/s_accum.c index 88d107a17da..0ec907d7979 100644 --- a/src/mesa/swrast/s_accum.c +++ b/src/mesa/swrast/s_accum.c @@ -24,6 +24,7 @@ #include "main/glheader.h" +#include "main/condrender.h" #include "main/context.h" #include "main/macros.h" #include "main/imports.h" @@ -553,6 +554,9 @@ _swrast_Accum(struct gl_context *ctx, GLenum op, GLfloat value) return; } + if (!_mesa_check_conditional_render(ctx)) + return; + swrast_render_start(ctx); /* Compute region after calling swrast_render_start() so that we know the diff --git a/src/mesa/swrast/s_context.c b/src/mesa/swrast/s_context.c index b3e39689cfa..def1531d7ff 100644 --- a/src/mesa/swrast/s_context.c +++ b/src/mesa/swrast/s_context.c @@ -252,7 +252,6 @@ _swrast_update_fog_state( struct gl_context *ctx ) /* determine if fog is needed, and if so, which fog mode */ swrast->_FogEnabled = (fp == NULL && ctx->Fog.Enabled); - swrast->_FogMode = ctx->Fog.Mode; } diff --git a/src/mesa/swrast/s_context.h b/src/mesa/swrast/s_context.h index 5dbdd609adb..8d7458c2dd9 100644 --- a/src/mesa/swrast/s_context.h +++ b/src/mesa/swrast/s_context.h @@ -135,7 +135,6 @@ typedef struct GLboolean _TextureCombinePrimary; GLboolean _FogEnabled; GLboolean _DeferredTexture; - GLenum _FogMode; /* either GL_FOG_MODE or fragment program's fog mode */ /** List/array of the fragment attributes to interpolate */ GLuint _ActiveAttribs[FRAG_ATTRIB_MAX]; diff --git a/src/mesa/swrast/s_fog.c b/src/mesa/swrast/s_fog.c index d808e2b2a2b..ea59de16020 100644 --- a/src/mesa/swrast/s_fog.c +++ b/src/mesa/swrast/s_fog.c @@ -158,7 +158,7 @@ _swrast_fog_rgba_span( const struct gl_context *ctx, SWspan *span ) /* The span's fog values are fog coordinates, now compute blend factors * and blend the fragment colors with the fog color. */ - switch (swrast->_FogMode) { + switch (ctx->Fog.Mode) { case GL_LINEAR: { const GLfloat fogEnd = ctx->Fog.End; |