diff options
author | Jonathan Gray <jsg@cvs.openbsd.org> | 2017-12-31 06:39:08 +0000 |
---|---|---|
committer | Jonathan Gray <jsg@cvs.openbsd.org> | 2017-12-31 06:39:08 +0000 |
commit | 2dae6fe6f74cf7fb9fd65285302c0331d9786b00 (patch) | |
tree | 04651e732331dc50a34e063cbaa0c394ccfcd327 /lib/mesa/src/mapi | |
parent | b90fb74e3c85f2799d21d1e07bf91c5fb8359eb8 (diff) |
Import Mesa 17.2.8
Diffstat (limited to 'lib/mesa/src/mapi')
32 files changed, 576 insertions, 108 deletions
diff --git a/lib/mesa/src/mapi/entry.c b/lib/mesa/src/mapi/entry.c index 27d0db40e..1e250122c 100644 --- a/lib/mesa/src/mapi/entry.c +++ b/lib/mesa/src/mapi/entry.c @@ -25,8 +25,12 @@ * Chia-I Wu <olv@lunarg.com> */ +#include <stdlib.h> +#include <stdint.h> + #include "entry.h" #include "u_current.h" +#include "util/u_endian.h" #define _U_STRINGIFY(x) #x #define U_STRINGIFY(x) _U_STRINGIFY(x) @@ -49,11 +53,15 @@ # endif #elif defined(USE_X86_64_ASM) && defined(__GNUC__) && defined(GLX_USE_TLS) # include "entry_x86-64_tls.h" +#elif defined(USE_PPC64LE_ASM) && defined(__GNUC__) && defined(PIPE_ARCH_LITTLE_ENDIAN) +# ifdef GLX_USE_TLS +# include "entry_ppc64le_tls.h" +# else +# include "entry_ppc64le_tsd.h" +# endif #else -#include <stdlib.h> - -static inline const struct mapi_table * +static inline const struct _glapi_table * entry_current_get(void) { #ifdef MAPI_MODE_BRIDGE diff --git a/lib/mesa/src/mapi/entry_ppc64le_tls.h b/lib/mesa/src/mapi/entry_ppc64le_tls.h new file mode 100644 index 000000000..e09a1178a --- /dev/null +++ b/lib/mesa/src/mapi/entry_ppc64le_tls.h @@ -0,0 +1,152 @@ +/* + * Mesa 3-D graphics library + * + * Copyright (C) 2017 Red Hat + * + * 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. + * + * Authors: + * Ben Crocker <bcrocker@redhat.com> + */ + +#ifdef HAVE_FUNC_ATTRIBUTE_VISIBILITY +#define HIDDEN __attribute__((visibility("hidden"))) +#else +#define HIDDEN +#endif + +// NOTE: These must be powers of two: +#define PPC64LE_ENTRY_SIZE 64 +#define PPC64LE_PAGE_ALIGN 65536 +#if ((PPC64LE_ENTRY_SIZE & (PPC64LE_ENTRY_SIZE - 1)) != 0) +#error PPC64LE_ENTRY_SIZE must be a power of two! +#endif +#if ((PPC64LE_PAGE_ALIGN & (PPC64LE_PAGE_ALIGN - 1)) != 0) +#error PPC64LE_PAGE_ALIGN must be a power of two! +#endif + +__asm__(".text\n" + ".balign " U_STRINGIFY(PPC64LE_ENTRY_SIZE) "\n" + "ppc64le_entry_start:"); + +#define STUB_ASM_ENTRY(func) \ + ".globl " func "\n" \ + ".type " func ", @function\n" \ + ".balign " U_STRINGIFY(PPC64LE_ENTRY_SIZE) "\n" \ + func ":\n\t" \ + " addis 2, 12, .TOC.-" func "@ha\n\t" \ + " addi 2, 2, .TOC.-" func "@l\n\t" \ + " .localentry " func ", .-" func "\n\t" + +#define STUB_ASM_CODE(slot) \ + " addis 11, 2, " ENTRY_CURRENT_TABLE "@got@tprel@ha\n\t" \ + " ld 11, " ENTRY_CURRENT_TABLE "@got@tprel@l(11)\n\t" \ + " add 11, 11," ENTRY_CURRENT_TABLE "@tls\n\t" \ + " ld 11, 0(11)\n\t" \ + " ld 12, " slot "*8(11)\n\t" \ + " mtctr 12\n\t" \ + " bctr\n" \ + +#define MAPI_TMP_STUB_ASM_GCC +#include "mapi_tmp.h" + +#ifndef MAPI_MODE_BRIDGE + +#include <string.h> +#include "u_execmem.h" + +void +entry_patch_public(void) +{ +} + +extern char +ppc64le_entry_start[] HIDDEN; + +mapi_func +entry_get_public(int slot) +{ + return (mapi_func) (ppc64le_entry_start + slot * PPC64LE_ENTRY_SIZE); +} + +__asm__(".text\n"); + +__asm__("ppc64le_dispatch_tls:\n\t" + " addis 3, 2, " ENTRY_CURRENT_TABLE "@got@tprel@ha\n\t" + " ld 3, " ENTRY_CURRENT_TABLE "@got@tprel@l(3)\n\t" + " blr\n" + ); + +extern uint64_t ppc64le_dispatch_tls(); + +static const uint32_t code_templ[] = { + // This should be functionally the same code as would be generated from + // the STUB_ASM_CODE macro, but defined as a buffer. + // This is used to generate new dispatch stubs. Mesa will copy this + // data to the dispatch stub, and then it will patch the slot number and + // any addresses that it needs to. + // NOTE!!! NOTE!!! NOTE!!! + // This representation is correct for both little- and big-endian systems. + // However, more work needs to be done for big-endian Linux because it + // adheres to an older, AIX-compatible ABI that uses function descriptors. + // 1000: + 0x7C0802A6, // <ENTRY+00>: mflr 0 + 0xF8010010, // <ENTRY+04>: std 0, 16(1) + 0xE96C0028, // <ENTRY+08>: ld 11, 9000f-1000b+0(12) + 0x7D6B6A14, // <ENTRY+12>: add 11, 11, 13 + 0xE96B0000, // <ENTRY+16>: ld 11, 0(11) + 0xE80C0030, // <ENTRY+20>: ld 0, 9000f-1000b+8(12) + 0x7D8B002A, // <ENTRY+24>: ldx 12, 11, 0 + 0x7D8903A6, // <ENTRY+28>: mtctr 12 + 0x4E800420, // <ENTRY+32>: bctr + 0x60000000, // <ENTRY+36>: nop + // 9000: + 0, 0, // <ENTRY+40>: .quad _glapi_tls_Dispatch + 0, 0 // <ENTRY+48>: .quad <slot>*8 +}; +static const uint64_t TEMPLATE_OFFSET_TLS_ADDR = sizeof(code_templ) - 2*8; +static const uint64_t TEMPLATE_OFFSET_SLOT = sizeof(code_templ) - 1*8; + +void +entry_patch(mapi_func entry, int slot) +{ + char *code = (char *) entry; + *((uint64_t *) (code + TEMPLATE_OFFSET_TLS_ADDR)) = ppc64le_dispatch_tls(); + *((uint64_t *) (code + TEMPLATE_OFFSET_SLOT)) = slot * sizeof(mapi_func); +} + +mapi_func +entry_generate(int slot) +{ + char *code; + mapi_func entry; + + code = u_execmem_alloc(sizeof(code_templ)); + if (!code) + return NULL; + + memcpy(code, code_templ, sizeof(code_templ)); + + entry = (mapi_func) code; + entry_patch(entry, slot); + + return entry; +} + +#endif /* MAPI_MODE_BRIDGE */ diff --git a/lib/mesa/src/mapi/entry_ppc64le_tsd.h b/lib/mesa/src/mapi/entry_ppc64le_tsd.h new file mode 100644 index 000000000..a583b93e5 --- /dev/null +++ b/lib/mesa/src/mapi/entry_ppc64le_tsd.h @@ -0,0 +1,210 @@ +/* + * Mesa 3-D graphics library + * + * Copyright (C) 2017 Red Hat + * + * 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. + * + * Authors: + * Ben Crocker <bcrocker@redhat.com> + */ + +#ifdef HAVE_FUNC_ATTRIBUTE_VISIBILITY +#define HIDDEN __attribute__((visibility("hidden"))) +#else +#define HIDDEN +#endif + +// NOTE: These must be powers of two: +#define PPC64LE_ENTRY_SIZE 256 +#define PPC64LE_PAGE_ALIGN 65536 +#if ((PPC64LE_ENTRY_SIZE & (PPC64LE_ENTRY_SIZE - 1)) != 0) +#error PPC64LE_ENTRY_SIZE must be a power of two! +#endif +#if ((PPC64LE_PAGE_ALIGN & (PPC64LE_PAGE_ALIGN - 1)) != 0) +#error PPC64LE_PAGE_ALIGN must be a power of two! +#endif + +__asm__(".text\n" + ".balign " U_STRINGIFY(PPC64LE_ENTRY_SIZE) "\n" + "ppc64le_entry_start:"); + +#define STUB_ASM_ENTRY(func) \ + ".globl " func "\n" \ + ".type " func ", @function\n" \ + ".balign " U_STRINGIFY(PPC64LE_ENTRY_SIZE) "\n" \ + func ":\n\t" \ + " addis 2, 12, .TOC.-" func "@ha\n\t" \ + " addi 2, 2, .TOC.-" func "@l\n\t" \ + " .localentry " func ", .-" func "\n\t" + +#define STUB_ASM_CODE(slot) \ + " addis 11, 2, " ENTRY_CURRENT_TABLE "@got@ha\n\t" \ + " ld 11, " ENTRY_CURRENT_TABLE "@got@l(11)\n\t" \ + " ld 11, 0(11)\n\t" \ + " cmpldi 11, 0\n\t" \ + " beq 2000f\n" \ + "1050:\n\t" \ + " ld 12, " slot "*8(11)\n\t" \ + " mtctr 12\n\t" \ + " bctr\n" \ + "2000:\n\t" \ + " mflr 0\n\t" \ + " std 0, 16(1)\n\t" \ + " std 2, 40(1)\n\t" \ + " stdu 1, -144(1)\n\t" \ + " std 3, 56(1)\n\t" \ + " std 4, 64(1)\n\t" \ + " std 5, 72(1)\n\t" \ + " std 6, 80(1)\n\t" \ + " std 7, 88(1)\n\t" \ + " std 8, 96(1)\n\t" \ + " std 9, 104(1)\n\t" \ + " std 10, 112(1)\n\t" \ + " std 12, 128(1)\n\t" \ + " addis 12, 2, " ENTRY_CURRENT_TABLE_GET "@got@ha\n\t" \ + " ld 12, " ENTRY_CURRENT_TABLE_GET "@got@l(12)\n\t" \ + " mtctr 12\n\t" \ + " bctrl\n\t" \ + " ld 2, 144+40(1)\n\t" \ + " mr 11, 3\n\t" \ + " ld 3, 56(1)\n\t" \ + " ld 4, 64(1)\n\t" \ + " ld 5, 72(1)\n\t" \ + " ld 6, 80(1)\n\t" \ + " ld 7, 88(1)\n\t" \ + " ld 8, 96(1)\n\t" \ + " ld 9, 104(1)\n\t" \ + " ld 10, 112(1)\n\t" \ + " ld 12, 128(1)\n\t" \ + " addi 1, 1, 144\n\t" \ + " ld 0, 16(1)\n\t" \ + " mtlr 0\n\t" \ + " b 1050b\n" + +#define MAPI_TMP_STUB_ASM_GCC +#include "mapi_tmp.h" + +#ifndef MAPI_MODE_BRIDGE + +#include <string.h> +#include "u_execmem.h" + +void +entry_patch_public(void) +{ +} + +extern char +ppc64le_entry_start[] HIDDEN; + +mapi_func +entry_get_public(int slot) +{ + return (mapi_func) (ppc64le_entry_start + slot * PPC64LE_ENTRY_SIZE); +} + +static const uint32_t code_templ[] = { + // This should be functionally the same code as would be generated from + // the STUB_ASM_CODE macro, but defined as a buffer. + // This is used to generate new dispatch stubs. Mesa will copy this + // data to the dispatch stub, and then it will patch the slot number and + // any addresses that it needs to. + // NOTE!!! NOTE!!! NOTE!!! + // This representation is correct for both little- and big-endian systems. + // However, more work needs to be done for big-endian Linux because it + // adheres to an older, AIX-compatible ABI that uses function descriptors. + // 1000: + 0x7C0802A6, // <ENTRY+000>: mflr 0 + 0xF8010010, // <ENTRY+004>: std 0, 16(1) + 0xE96C0098, // <ENTRY+008>: ld 11, 9000f-1000b+0(12) + 0xE96B0000, // <ENTRY+012>: ld 11, 0(11) + 0x282B0000, // <ENTRY+016>: cmpldi 11, 0 + 0x41820014, // <ENTRY+020>: beq 2000f + // 1050: + 0xE80C00A8, // <ENTRY+024>: ld 0, 9000f-1000b+16(12) + 0x7D8B002A, // <ENTRY+028>: ldx 12, 11, 0 + 0x7D8903A6, // <ENTRY+032>: mtctr 12 + 0x4E800420, // <ENTRY+036>: bctr + // 2000: + 0xF8410028, // <ENTRY+040>: std 2, 40(1) + 0xF821FF71, // <ENTRY+044>: stdu 1, -144(1) + 0xF8610038, // <ENTRY+048>: std 3, 56(1) + 0xF8810040, // <ENTRY+052>: std 4, 64(1) + 0xF8A10048, // <ENTRY+056>: std 5, 72(1) + 0xF8C10050, // <ENTRY+060>: std 6, 80(1) + 0xF8E10058, // <ENTRY+064>: std 7, 88(1) + 0xF9010060, // <ENTRY+068>: std 8, 96(1) + 0xF9210068, // <ENTRY+072>: std 9, 104(1) + 0xF9410070, // <ENTRY+076>: std 10, 112(1) + 0xF9810080, // <ENTRY+080>: std 12, 128(1) + 0xE98C00A0, // <ENTRY+084>: ld 12, 9000f-1000b+8(12) + 0x7D8903A6, // <ENTRY+088>: mtctr 12 + 0x4E800421, // <ENTRY+092>: bctrl + 0x7C6B1B78, // <ENTRY+096>: mr 11, 3 + 0xE8610038, // <ENTRY+100>: ld 3, 56(1) + 0xE8810040, // <ENTRY+104>: ld 4, 64(1) + 0xE8A10048, // <ENTRY+108>: ld 5, 72(1) + 0xE8C10050, // <ENTRY+112>: ld 6, 80(1) + 0xE8E10058, // <ENTRY+116>: ld 7, 88(1) + 0xE9010060, // <ENTRY+120>: ld 8, 96(1) + 0xE9210068, // <ENTRY+124>: ld 9, 104(1) + 0xE9410070, // <ENTRY+128>: ld 10, 112(1) + 0xE9810080, // <ENTRY+132>: ld 12, 128(1) + 0x38210090, // <ENTRY+136>: addi 1, 1, 144 + 0xE8010010, // <ENTRY+140>: ld 0, 16(1) + 0x7C0803A6, // <ENTRY+144>: mtlr 0 + 0x4BFFFF84, // <ENTRY+148>: b 1050b + // 9000: + 0, 0, // <ENTRY+152>: .quad ENTRY_CURRENT_TABLE + 0, 0, // <ENTRY+160>: .quad ENTRY_CURRENT_TABLE_GET + 0, 0 // <ENTRY+168>: .quad <slot>*8 +}; +static const uint64_t TEMPLATE_OFFSET_CURRENT_TABLE = sizeof(code_templ) - 3*8; +static const uint64_t TEMPLATE_OFFSET_CURRENT_TABLE_GET = sizeof(code_templ) - 2*8; +static const uint64_t TEMPLATE_OFFSET_SLOT = sizeof(code_templ) - 1*8; + +void +entry_patch(mapi_func entry, int slot) +{ + char *code = (char *) entry; + *((uint64_t *) (code + TEMPLATE_OFFSET_CURRENT_TABLE)) = (uint64_t) ENTRY_CURRENT_TABLE; + *((uint64_t *) (code + TEMPLATE_OFFSET_CURRENT_TABLE_GET)) = (uint64_t) ENTRY_CURRENT_TABLE_GET; + *((uint64_t *) (code + TEMPLATE_OFFSET_SLOT)) = slot * sizeof(mapi_func); +} + +mapi_func +entry_generate(int slot) +{ + char *code; + mapi_func entry; + + code = u_execmem_alloc(sizeof(code_templ)); + if (!code) + return NULL; + + memcpy(code, code_templ, sizeof(code_templ)); + + entry = (mapi_func) code; + entry_patch(entry, slot); + + return entry; +} + +#endif /* MAPI_MODE_BRIDGE */ diff --git a/lib/mesa/src/mapi/glapi/gen/APPLE_vertex_array_object.xml b/lib/mesa/src/mapi/glapi/gen/APPLE_vertex_array_object.xml index 7312f9b35..daf6990ea 100644 --- a/lib/mesa/src/mapi/glapi/gen/APPLE_vertex_array_object.xml +++ b/lib/mesa/src/mapi/glapi/gen/APPLE_vertex_array_object.xml @@ -5,21 +5,21 @@ <category name="GL_APPLE_vertex_array_object" number="273"> <enum name="VERTEX_ARRAY_BINDING_APPLE" value="0x85B5"/> - <function name="BindVertexArrayAPPLE" deprecated="3.1"> + <function name="BindVertexArrayAPPLE" deprecated="3.1" exec="skip"> <param name="array" type="GLuint"/> </function> - <function name="DeleteVertexArraysAPPLE" alias="DeleteVertexArrays"> + <function name="DeleteVertexArraysAPPLE" exec="skip"> <param name="n" type="GLsizei"/> <param name="arrays" type="const GLuint *"/> </function> - <function name="GenVertexArraysAPPLE" deprecated="3.1"> + <function name="GenVertexArraysAPPLE" deprecated="3.1" exec="skip"> <param name="n" type="GLsizei"/> <param name="arrays" type="GLuint *" count="n" output="true"/> </function> - <function name="IsVertexArrayAPPLE" alias="IsVertexArray"> + <function name="IsVertexArrayAPPLE" exec="skip"> <param name="array" type="GLuint"/> <return type="GLboolean"/> </function> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_bindless_texture.xml b/lib/mesa/src/mapi/glapi/gen/ARB_bindless_texture.xml new file mode 100644 index 000000000..762cadf6f --- /dev/null +++ b/lib/mesa/src/mapi/glapi/gen/ARB_bindless_texture.xml @@ -0,0 +1,100 @@ +<?xml version="1.0"?> +<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd"> + +<OpenGLAPI> + +<category name="GL_ARB_bindless_texture" number="152"> + + <enum name="UNSIGNED_INT64_ARB" value="0x140F" /> + <type name="uint64EXT" unsigned="true" size="8"/> + + <function name="GetTextureHandleARB" no_error="true"> + <return type="GLuint64"/> + <param name="texture" type="GLuint" /> + </function> + + <function name="GetTextureSamplerHandleARB" no_error="true"> + <return type="GLuint64"/> + <param name="texture" type="GLuint" /> + <param name="sampler" type="GLuint" /> + </function> + + <function name="MakeTextureHandleResidentARB" no_error="true"> + <param name="handle" type="GLuint64" /> + </function> + + <function name="MakeTextureHandleNonResidentARB" no_error="true"> + <param name="handle" type="GLuint64" /> + </function> + + <function name="GetImageHandleARB" no_error="true"> + <return type="GLuint64"/> + <param name="texture" type="GLuint" /> + <param name="level" type="GLint" /> + <param name="layered" type="GLboolean" /> + <param name="layer" type="GLint" /> + <param name="format" type="GLenum" /> + </function> + + <function name="MakeImageHandleResidentARB" no_error="true"> + <param name="handle" type="GLuint64" /> + <param name="access" type="GLenum" /> + </function> + + <function name="MakeImageHandleNonResidentARB" no_error="true"> + <param name="handle" type="GLuint64" /> + </function> + + <function name="UniformHandleui64ARB"> + <param name="location" type="GLint" /> + <param name="value" type="GLuint64" /> + </function> + + <function name="UniformHandleui64vARB"> + <param name="location" type="GLint" /> + <param name="count" type="GLsizei" /> + <param name="value" type="const GLuint64 *" /> + </function> + + <function name="ProgramUniformHandleui64ARB"> + <param name="program" type="GLuint" /> + <param name="location" type="GLint" /> + <param name="value" type="GLuint64" /> + </function> + + <function name="ProgramUniformHandleui64vARB"> + <param name="program" type="GLuint" /> + <param name="location" type="GLint" /> + <param name="count" type="GLsizei" /> + <param name="value" type="const GLuint64 *" /> + </function> + + <function name="IsTextureHandleResidentARB" no_error="true"> + <return type="GLboolean"/> + <param name="handle" type="GLuint64" /> + </function> + + <function name="IsImageHandleResidentARB" no_error="true"> + <return type="GLboolean"/> + <param name="handle" type="GLuint64" /> + </function> + + <function name="VertexAttribL1ui64ARB" exec="dynamic"> + <param name="index" type="GLuint" /> + <param name="x" type="GLuint64EXT" /> + </function> + + <function name="VertexAttribL1ui64vARB" exec="dynamic"> + <param name="index" type="GLuint" /> + <param name="v" type="const GLuint64EXT *" /> + </function> + + <function name="GetVertexAttribLui64vARB"> + <param name="index" type="GLuint" /> + <param name="pname" type="GLenum" /> + <param name="params" type="GLuint64EXT *" /> + </function> + +</category> + +</OpenGLAPI> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_blend_func_extended.xml b/lib/mesa/src/mapi/glapi/gen/ARB_blend_func_extended.xml index 406140f7d..10d85a766 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_blend_func_extended.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_blend_func_extended.xml @@ -8,7 +8,7 @@ <category name="GL_ARB_blend_func_extended" number="78"> - <function name="BindFragDataLocationIndexed"> + <function name="BindFragDataLocationIndexed" no_error="true"> <param name="program" type="GLuint"/> <param name="colorNumber" type="GLuint"/> <param name="index" type="GLuint"/> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_clip_control.xml b/lib/mesa/src/mapi/glapi/gen/ARB_clip_control.xml index ecce133bb..051a64808 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_clip_control.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_clip_control.xml @@ -14,7 +14,7 @@ <enum name="CLIP_ORIGIN" value = "0x935C"/> <enum name="CLIP_DEPTH_MODE" value = "0x935D"/> - <function name="ClipControl"> + <function name="ClipControl" no_error="true"> <param name="origin" type="GLenum"/> <param name="depth" type="GLenum"/> <!-- <glx rop="1340"/> --> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_compute_shader.xml b/lib/mesa/src/mapi/glapi/gen/ARB_compute_shader.xml index c2ec842ef..84cbdf396 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_compute_shader.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_compute_shader.xml @@ -26,13 +26,13 @@ <enum name="DISPATCH_INDIRECT_BUFFER_BINDING" value="0x90EF"/> <enum name="COMPUTE_SHADER_BIT" value="0x00000020"/> - <function name="DispatchCompute" es2="3.1"> + <function name="DispatchCompute" es2="3.1" no_error="true"> <param name="num_groups_x" type="GLuint"/> <param name="num_groups_y" type="GLuint"/> <param name="num_groups_z" type="GLuint"/> </function> - <function name="DispatchComputeIndirect" es2="3.1"> + <function name="DispatchComputeIndirect" es2="3.1" no_error="true"> <param name="indirect" type="GLintptr"/> </function> </category> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_compute_variable_group_size.xml b/lib/mesa/src/mapi/glapi/gen/ARB_compute_variable_group_size.xml index b21c52fa1..a54c591a8 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_compute_variable_group_size.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_compute_variable_group_size.xml @@ -12,7 +12,7 @@ <enum name="MAX_COMPUTE_VARIABLE_GROUP_SIZE_ARB" value="0x9345"/> <enum name="MAX_COMPUTE_FIXED_GROUP_SIZE_ARB" value="0x91BF"/> - <function name="DispatchComputeGroupSizeARB"> + <function name="DispatchComputeGroupSizeARB" no_error="true"> <param name="num_groups_x" type="GLuint"/> <param name="num_groups_y" type="GLuint"/> <param name="num_groups_z" type="GLuint"/> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_copy_buffer.xml b/lib/mesa/src/mapi/glapi/gen/ARB_copy_buffer.xml index d1c6f1fec..12e0c195d 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_copy_buffer.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_copy_buffer.xml @@ -11,7 +11,7 @@ <enum name="COPY_READ_BUFFER" value="0x8F36"/> <enum name="COPY_WRITE_BUFFER" value="0x8F37"/> - <function name="CopyBufferSubData" es2="3.0"> + <function name="CopyBufferSubData" es2="3.0" no_error="true"> <param name="readTarget" type="GLenum"/> <param name="writeTarget" type="GLenum"/> <param name="readOffset" type="GLintptr"/> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_copy_image.xml b/lib/mesa/src/mapi/glapi/gen/ARB_copy_image.xml index 9ee2ba304..fb4c9b1c2 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_copy_image.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_copy_image.xml @@ -5,7 +5,7 @@ <category name="GL_ARB_copy_image" number="123"> - <function name="CopyImageSubData" es2="3.2"> + <function name="CopyImageSubData" es2="3.2" no_error="true"> <param name="srcName" type="GLuint"/> <param name="srcTarget" type="GLenum"/> <param name="srcLevel" type="GLint"/> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_direct_state_access.xml b/lib/mesa/src/mapi/glapi/gen/ARB_direct_state_access.xml index 43841bb6c..0c34b6385 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_direct_state_access.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_direct_state_access.xml @@ -49,33 +49,33 @@ <!-- Buffer object functions --> - <function name="CreateBuffers"> + <function name="CreateBuffers" no_error="true"> <param name="n" type="GLsizei" /> <param name="buffers" type="GLuint *" /> </function> - <function name="NamedBufferStorage"> + <function name="NamedBufferStorage" no_error="true"> <param name="buffer" type="GLuint" /> <param name="size" type="GLsizeiptr" /> <param name="data" type="const GLvoid *" /> <param name="flags" type="GLbitfield" /> </function> - <function name="NamedBufferData"> + <function name="NamedBufferData" marshal="custom"> <param name="buffer" type="GLuint" /> <param name="size" type="GLsizeiptr" /> <param name="data" type="const GLvoid *" /> <param name="usage" type="GLenum" /> </function> - <function name="NamedBufferSubData"> + <function name="NamedBufferSubData" no_error="true" marshal="custom"> <param name="buffer" type="GLuint" /> <param name="offset" type="GLintptr" /> <param name="size" type="GLsizeiptr" /> <param name="data" type="const GLvoid *" /> </function> - <function name="CopyNamedBufferSubData"> + <function name="CopyNamedBufferSubData" no_error="true"> <param name="readBuffer" type="GLuint" /> <param name="writeBuffer" type="GLuint" /> <param name="readOffset" type="GLintptr" /> @@ -101,13 +101,13 @@ <param name="data" type="const GLvoid *" /> </function> - <function name="MapNamedBuffer"> + <function name="MapNamedBuffer" no_error="true"> <return type="GLvoid *" /> <param name="buffer" type="GLuint" /> <param name="access" type="GLenum" /> </function> - <function name="MapNamedBufferRange"> + <function name="MapNamedBufferRange" no_error="true"> <return type="GLvoid *" /> <param name="buffer" type="GLuint" /> <param name="offset" type="GLintptr" /> @@ -115,12 +115,12 @@ <param name="access" type="GLbitfield" /> </function> - <function name="UnmapNamedBuffer"> + <function name="UnmapNamedBuffer" no_error="true"> <return type="GLboolean" /> <param name="buffer" type="GLuint" /> </function> - <function name="FlushMappedNamedBufferRange"> + <function name="FlushMappedNamedBufferRange" no_error="true"> <param name="buffer" type="GLuint" /> <param name="offset" type="GLintptr" /> <param name="length" type="GLsizeiptr" /> @@ -171,14 +171,14 @@ <param name="param" type="GLint" /> </function> - <function name="NamedFramebufferTexture"> + <function name="NamedFramebufferTexture" no_error="true"> <param name="framebuffer" type="GLuint" /> <param name="attachment" type="GLenum" /> <param name="texture" type="GLuint" /> <param name="level" type="GLint" /> </function> - <function name="NamedFramebufferTextureLayer"> + <function name="NamedFramebufferTextureLayer" no_error="true"> <param name="framebuffer" type="GLuint" /> <param name="attachment" type="GLenum" /> <param name="texture" type="GLuint" /> @@ -197,7 +197,7 @@ <param name="bufs" type="const GLenum *" /> </function> - <function name="NamedFramebufferReadBuffer"> + <function name="NamedFramebufferReadBuffer" no_error="true"> <param name="framebuffer" type="GLuint" /> <param name="buf" type="GLenum" /> </function> @@ -247,7 +247,7 @@ <param name="stencil" type="GLint" /> </function> - <function name="BlitNamedFramebuffer"> + <function name="BlitNamedFramebuffer" no_error="true"> <param name="readFramebuffer" type="GLuint" /> <param name="drawFramebuffer" type="GLuint" /> <param name="srcX0" type="GLint" /> @@ -283,7 +283,7 @@ <!-- Renderbuffer object functions --> - <function name="CreateRenderbuffers"> + <function name="CreateRenderbuffers" no_error="true"> <param name="n" type="GLsizei" /> <param name="renderbuffers" type="GLuint *" /> </function> @@ -311,7 +311,7 @@ <!-- Texture object functions --> - <function name="CreateTextures"> + <function name="CreateTextures" no_error="true"> <param name="target" type="GLenum" /> <param name="n" type="GLsizei" /> <param name="textures" type="GLuint *" /> @@ -410,7 +410,7 @@ <param name="pixels" type="const GLvoid *" /> </function> - <function name="CompressedTextureSubImage1D"> + <function name="CompressedTextureSubImage1D" no_error="true"> <param name="texture" type="GLuint" /> <param name="level" type="GLint" /> <param name="xoffset" type="GLint" /> @@ -420,7 +420,7 @@ <param name="data" type="const GLvoid *" /> </function> - <function name="CompressedTextureSubImage2D"> + <function name="CompressedTextureSubImage2D" no_error="true"> <param name="texture" type="GLuint" /> <param name="level" type="GLint" /> <param name="xoffset" type="GLint" /> @@ -432,7 +432,7 @@ <param name="data" type="const GLvoid *" /> </function> - <function name="CompressedTextureSubImage3D"> + <function name="CompressedTextureSubImage3D" no_error="true"> <param name="texture" type="GLuint" /> <param name="level" type="GLint" /> <param name="xoffset" type="GLint" /> @@ -446,7 +446,7 @@ <param name="data" type="const GLvoid *" /> </function> - <function name="CopyTextureSubImage1D"> + <function name="CopyTextureSubImage1D" no_error="true"> <param name="texture" type="GLuint" /> <param name="level" type="GLint" /> <param name="xoffset" type="GLint" /> @@ -455,7 +455,7 @@ <param name="width" type="GLsizei" /> </function> - <function name="CopyTextureSubImage2D"> + <function name="CopyTextureSubImage2D" no_error="true"> <param name="texture" type="GLuint" /> <param name="level" type="GLint" /> <param name="xoffset" type="GLint" /> @@ -466,7 +466,7 @@ <param name="height" type="GLsizei" /> </function> - <function name="CopyTextureSubImage3D"> + <function name="CopyTextureSubImage3D" no_error="true"> <param name="texture" type="GLuint" /> <param name="level" type="GLint" /> <param name="xoffset" type="GLint" /> @@ -518,7 +518,7 @@ <param name="texture" type="GLuint" /> </function> - <function name="BindTextureUnit"> + <function name="BindTextureUnit" no_error="true"> <param name="unit" type="GLuint" /> <param name="texture" type="GLuint" /> </function> @@ -584,12 +584,12 @@ <param name="arrays" type="GLuint *" /> </function> - <function name="DisableVertexArrayAttrib"> + <function name="DisableVertexArrayAttrib" no_error="true"> <param name="vaobj" type="GLuint" /> <param name="index" type="GLuint" /> </function> - <function name="EnableVertexArrayAttrib"> + <function name="EnableVertexArrayAttrib" no_error="true"> <param name="vaobj" type="GLuint" /> <param name="index" type="GLuint" /> </function> @@ -599,7 +599,7 @@ <param name="buffer" type="GLuint" /> </function> - <function name="VertexArrayVertexBuffer"> + <function name="VertexArrayVertexBuffer" no_error="true"> <param name="vaobj" type="GLuint" /> <param name="bindingindex" type="GLuint" /> <param name="buffer" type="GLuint" /> @@ -607,7 +607,7 @@ <param name="stride" type="GLsizei" /> </function> - <function name="VertexArrayVertexBuffers"> + <function name="VertexArrayVertexBuffers" no_error="true"> <param name="vaobj" type="GLuint" /> <param name="first" type="GLuint" /> <param name="count" type="GLsizei" /> @@ -641,7 +641,7 @@ <param name="relativeoffset" type="GLuint" /> </function> - <function name="VertexArrayAttribBinding"> + <function name="VertexArrayAttribBinding" no_error="true"> <param name="vaobj" type="GLuint" /> <param name="attribindex" type="GLuint" /> <param name="bindingindex" type="GLuint" /> @@ -675,14 +675,14 @@ <!-- Sampler object functions --> - <function name="CreateSamplers"> + <function name="CreateSamplers" no_error="true"> <param name="n" type="GLsizei" /> <param name="samplers" type="GLuint *" /> </function> <!-- Program Pipeline object functions --> - <function name="CreateProgramPipelines"> + <function name="CreateProgramPipelines" no_error="true"> <param name="n" type="GLsizei" /> <param name="pipelines" type="GLuint *" /> </function> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_draw_buffers_blend.xml b/lib/mesa/src/mapi/glapi/gen/ARB_draw_buffers_blend.xml index 8c33fbf89..1a44f38d1 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_draw_buffers_blend.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_draw_buffers_blend.xml @@ -13,19 +13,19 @@ <param name="mode" type="GLenum"/> </function> - <function name="BlendEquationSeparateiARB"> + <function name="BlendEquationSeparateiARB" no_error="true"> <param name="buf" type="GLuint"/> <param name="modeRGB" type="GLenum"/> <param name="modeA" type="GLenum"/> </function> - <function name="BlendFunciARB"> + <function name="BlendFunciARB" no_error="true"> <param name="buf" type="GLuint"/> <param name="src" type="GLenum"/> <param name="dst" type="GLenum"/> </function> - <function name="BlendFuncSeparateiARB"> + <function name="BlendFuncSeparateiARB" no_error="true"> <param name="buf" type="GLuint"/> <param name="srcRGB" type="GLenum"/> <param name="dstRGB" type="GLenum"/> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_framebuffer_object.xml b/lib/mesa/src/mapi/glapi/gen/ARB_framebuffer_object.xml index 1573e7e96..b8fff9262 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_framebuffer_object.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_framebuffer_object.xml @@ -158,7 +158,7 @@ <glx rop="4317"/> </function> - <function name="GenRenderbuffers" es2="2.0"> + <function name="GenRenderbuffers" es2="2.0" no_error="true"> <param name="n" type="GLsizei" counter="true"/> <param name="renderbuffers" type="GLuint *" count="n" output="true"/> <glx vendorpriv="1423" always_array="true"/> @@ -212,13 +212,13 @@ <glx vendorpriv="1426" always_array="true"/> </function> - <function name="CheckFramebufferStatus" es2="2.0"> + <function name="CheckFramebufferStatus" es2="2.0" no_error="true"> <param name="target" type="GLenum"/> <return type="GLenum"/> <glx vendorpriv="1427"/> </function> - <function name="FramebufferTexture1D"> + <function name="FramebufferTexture1D" no_error="true"> <param name="target" type="GLenum"/> <param name="attachment" type="GLenum"/> <param name="textarget" type="GLenum"/> @@ -227,7 +227,7 @@ <glx rop="4321"/> </function> - <function name="FramebufferTexture2D" es2="2.0"> + <function name="FramebufferTexture2D" es2="2.0" no_error="true"> <param name="target" type="GLenum"/> <param name="attachment" type="GLenum"/> <param name="textarget" type="GLenum"/> @@ -236,7 +236,7 @@ <glx rop="4322"/> </function> - <function name="FramebufferTexture3D"> + <function name="FramebufferTexture3D" no_error="true"> <param name="target" type="GLenum"/> <param name="attachment" type="GLenum"/> <param name="textarget" type="GLenum"/> @@ -246,7 +246,7 @@ <glx rop="4323"/> </function> - <function name="FramebufferTextureLayer" es2="3.0"> + <function name="FramebufferTextureLayer" es2="3.0" no_error="true"> <param name="target" type="GLenum"/> <param name="attachment" type="GLenum"/> <param name="texture" type="GLuint"/> @@ -271,7 +271,7 @@ <glx vendorpriv="1428"/> </function> - <function name="BlitFramebuffer" es2="3.0"> + <function name="BlitFramebuffer" es2="3.0" no_error="true"> <param name="srcX0" type="GLint"/> <param name="srcY0" type="GLint"/> <param name="srcX1" type="GLint"/> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_invalidate_subdata.xml b/lib/mesa/src/mapi/glapi/gen/ARB_invalidate_subdata.xml index 052816ad7..2cbc4f63b 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_invalidate_subdata.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_invalidate_subdata.xml @@ -19,13 +19,13 @@ <param name="level" type="GLint"/> </function> - <function name="InvalidateBufferSubData"> + <function name="InvalidateBufferSubData" no_error="true"> <param name="buffer" type="GLuint"/> <param name="offset" type="GLintptr"/> <param name="length" type="GLsizeiptr"/> </function> - <function name="InvalidateBufferData"> + <function name="InvalidateBufferData" no_error="true"> <param name="buffer" type="GLuint"/> </function> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_map_buffer_range.xml b/lib/mesa/src/mapi/glapi/gen/ARB_map_buffer_range.xml index cf7b21148..35a20bea6 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_map_buffer_range.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_map_buffer_range.xml @@ -15,7 +15,7 @@ <enum name="MAP_FLUSH_EXPLICIT_BIT" value="0x0010"/> <enum name="MAP_UNSYNCHRONIZED_BIT" value="0x0020"/> - <function name="MapBufferRange" es2="3.0"> + <function name="MapBufferRange" es2="3.0" no_error="true"> <param name="target" type="GLenum"/> <param name="offset" type="GLintptr"/> <param name="length" type="GLsizeiptr"/> @@ -23,7 +23,7 @@ <return type="GLvoid *"/> </function> - <function name="FlushMappedBufferRange" es2="3.0"> + <function name="FlushMappedBufferRange" es2="3.0" no_error="true"> <param name="target" type="GLenum"/> <param name="offset" type="GLintptr"/> <param name="length" type="GLsizeiptr"/> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_multi_bind.xml b/lib/mesa/src/mapi/glapi/gen/ARB_multi_bind.xml index f42eaa28e..601680f30 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_multi_bind.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_multi_bind.xml @@ -35,13 +35,13 @@ <param name="samplers" type="const GLuint *"/> </function> - <function name="BindImageTextures"> + <function name="BindImageTextures" no_error="true"> <param name="first" type="GLuint"/> <param name="count" type="GLsizei"/> <param name="textures" type="const GLuint *"/> </function> - <function name="BindVertexBuffers"> + <function name="BindVertexBuffers" no_error="true"> <param name="first" type="GLuint"/> <param name="count" type="GLsizei"/> <param name="buffers" type="const GLuint *"/> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_sampler_objects.xml b/lib/mesa/src/mapi/glapi/gen/ARB_sampler_objects.xml index 20363f70b..9fe6c41c8 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_sampler_objects.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_sampler_objects.xml @@ -7,7 +7,7 @@ <category name="GL_ARB_sampler_objects" number="81"> - <function name="GenSamplers" es2="3.0"> + <function name="GenSamplers" es2="3.0" no_error="true"> <param name="count" type="GLsizei"/> <param name="samplers" type="GLuint *"/> </function> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_shader_image_load_store.xml b/lib/mesa/src/mapi/glapi/gen/ARB_shader_image_load_store.xml index 178e930f1..6e9ee1fff 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_shader_image_load_store.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_shader_image_load_store.xml @@ -70,7 +70,7 @@ <enum name="MAX_FRAGMENT_IMAGE_UNIFORMS" value="0x90CE"/> <enum name="MAX_COMBINED_IMAGE_UNIFORMS" value="0x90CF"/> -<function name="BindImageTexture" es2="3.1"> +<function name="BindImageTexture" es2="3.1" no_error="true"> <param name="unit" type="GLuint"/> <param name="texture" type="GLuint"/> <param name="level" type="GLint"/> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_shader_storage_buffer_object.xml b/lib/mesa/src/mapi/glapi/gen/ARB_shader_storage_buffer_object.xml index 6901bdf6d..4d2288227 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_shader_storage_buffer_object.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_shader_storage_buffer_object.xml @@ -25,7 +25,7 @@ <!-- Duplicated with GL3x.xml: BindBufferRange, BindBufferBase, GetIntegeri_v --> -<function name="ShaderStorageBlockBinding"> +<function name="ShaderStorageBlockBinding" no_error="true"> <param name="program" type="GLuint" /> <param name="shaderStorageBlockIndex" type="GLuint" /> <param name="shaderStorageBlockBinding" type="GLuint" /> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_sync.xml b/lib/mesa/src/mapi/glapi/gen/ARB_sync.xml index d8a1c34e0..f1463f11a 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_sync.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_sync.xml @@ -39,7 +39,7 @@ --> - <function name="FenceSync" es2="3.0"> + <function name="FenceSync" es2="3.0" no_error="true"> <param name="condition" type="GLenum"/> <param name="flags" type="GLbitfield"/> <return type="GLsync"/> @@ -54,7 +54,7 @@ <param name="sync" type="GLsync"/> </function> - <function name="ClientWaitSync" es2="3.0"> + <function name="ClientWaitSync" es2="3.0" no_error="true"> <param name="sync" type="GLsync"/> <param name="flags" type="GLbitfield"/> <param name="timeout" type="GLuint64"/> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_uniform_buffer_object.xml b/lib/mesa/src/mapi/glapi/gen/ARB_uniform_buffer_object.xml index cf86bbb2f..47bb04725 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_uniform_buffer_object.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_uniform_buffer_object.xml @@ -86,7 +86,7 @@ <!-- Duplicated with GL3x.xml: BindBufferRange, BindBufferBase, GetIntegeri_v --> -<function name="UniformBlockBinding" es2="3.0"> +<function name="UniformBlockBinding" es2="3.0" no_error="true"> <param name="program" type="GLuint" /> <param name="uniformBlockIndex" type="GLuint" /> <param name="uniformBlockBinding" type="GLuint" /> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_vertex_attrib_64bit.xml b/lib/mesa/src/mapi/glapi/gen/ARB_vertex_attrib_64bit.xml index 211642fc3..6d76003fe 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_vertex_attrib_64bit.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_vertex_attrib_64bit.xml @@ -51,7 +51,7 @@ <param name="v" type="const GLdouble *"/> </function> - <function name="VertexAttribLPointer"> + <function name="VertexAttribLPointer" no_error="true"> <param name="index" type="GLuint"/> <param name="size" type="GLint"/> <param name="type" type="GLenum"/> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_vertex_attrib_binding.xml b/lib/mesa/src/mapi/glapi/gen/ARB_vertex_attrib_binding.xml index ba9ca57bb..d1f8db90a 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_vertex_attrib_binding.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_vertex_attrib_binding.xml @@ -7,7 +7,7 @@ <category name="GL_ARB_vertex_attrib_binding" number="125"> - <function name="BindVertexBuffer" es2="3.1"> + <function name="BindVertexBuffer" es2="3.1" no_error="true"> <param name="bindingindex" type="GLuint"/> <param name="buffer" type="GLuint"/> <param name="offset" type="GLintptr"/> @@ -36,7 +36,7 @@ <param name="relativeoffset" type="GLuint"/> </function> - <function name="VertexAttribBinding" es2="3.1"> + <function name="VertexAttribBinding" es2="3.1" no_error="true"> <param name="attribindex" type="GLuint"/> <param name="bindingindex" type="GLuint"/> </function> diff --git a/lib/mesa/src/mapi/glapi/gen/ARB_viewport_array.xml b/lib/mesa/src/mapi/glapi/gen/ARB_viewport_array.xml index ebd5b99c8..30c4bca31 100644 --- a/lib/mesa/src/mapi/glapi/gen/ARB_viewport_array.xml +++ b/lib/mesa/src/mapi/glapi/gen/ARB_viewport_array.xml @@ -29,44 +29,44 @@ <enum name="PROVOKING_VERTEX" value="0x8E4F"/> <enum name="UNDEFINED_VERTEX" value="0x8260"/> - <function name="ViewportArrayv"> + <function name="ViewportArrayv" no_error="true"> <param name="first" type="GLuint"/> <param name="count" type="GLsizei"/> - <param name="v" type="const GLfloat *"/> + <param name="v" type="const GLfloat *" count="count" count_scale="4"/> </function> - <function name="ViewportIndexedf"> + <function name="ViewportIndexedf" no_error="true"> <param name="index" type="GLuint"/> <param name="x" type="GLfloat"/> <param name="y" type="GLfloat"/> <param name="w" type="GLfloat"/> <param name="h" type="GLfloat"/> </function> - <function name="ViewportIndexedfv"> + <function name="ViewportIndexedfv" no_error="true"> <param name="index" type="GLuint"/> - <param name="v" type="const GLfloat *"/> + <param name="v" type="const GLfloat *" count="4"/> </function> - <function name="ScissorArrayv"> + <function name="ScissorArrayv" no_error="true"> <param name="first" type="GLuint"/> <param name="count" type="GLsizei"/> - <param name="v" type="const int *"/> + <param name="v" type="const int *" count="count" count_scale="4"/> </function> - <function name="ScissorIndexed"> + <function name="ScissorIndexed" no_error="true"> <param name="index" type="GLuint"/> <param name="left" type="GLint"/> <param name="bottom" type="GLint"/> <param name="width" type="GLsizei"/> <param name="height" type="GLsizei"/> </function> - <function name="ScissorIndexedv"> + <function name="ScissorIndexedv" no_error="true"> <param name="index" type="GLuint"/> - <param name="v" type="const GLint *"/> + <param name="v" type="const GLint *" count="4"/> </function> <function name="DepthRangeArrayv"> <param name="first" type="GLuint"/> <param name="count" type="GLsizei"/> - <param name="v" type="const GLclampd *"/> + <param name="v" type="const GLclampd *" count="count" count_scale="2"/> </function> - <function name="DepthRangeIndexed"> + <function name="DepthRangeIndexed" no_error="true"> <param name="index" type="GLuint"/> <param name="n" type="GLclampd"/> <param name="f" type="GLclampd"/> diff --git a/lib/mesa/src/mapi/glapi/gen/es_EXT.xml b/lib/mesa/src/mapi/glapi/gen/es_EXT.xml index 3e705eb40..271f0c09c 100644 --- a/lib/mesa/src/mapi/glapi/gen/es_EXT.xml +++ b/lib/mesa/src/mapi/glapi/gen/es_EXT.xml @@ -318,7 +318,8 @@ <enum name="POINT_SIZE_ARRAY_OES" value="0x8B9C"/> <enum name="POINT_SIZE_ARRAY_BUFFER_BINDING_OES" value="0x8B9F"/> - <function name="PointSizePointerOES" es1="1.0" desktop="false"> + <function name="PointSizePointerOES" es1="1.0" desktop="false" + no_error="true"> <param name="type" type="GLenum"/> <param name="stride" type="GLsizei"/> <param name="pointer" type="const GLvoid *"/> diff --git a/lib/mesa/src/mapi/glapi/glapi.c b/lib/mesa/src/mapi/glapi/glapi.c index 194b9ee86..55258a476 100644 --- a/lib/mesa/src/mapi/glapi/glapi.c +++ b/lib/mesa/src/mapi/glapi/glapi.c @@ -60,5 +60,5 @@ _glapi_set_context(void *context) void _glapi_set_dispatch(struct _glapi_table *dispatch) { - u_current_set_table((const struct mapi_table *) dispatch); + u_current_set_table((const struct _glapi_table *) dispatch); } diff --git a/lib/mesa/src/mapi/mapi_glapi.c b/lib/mesa/src/mapi/mapi_glapi.c index 9f02edb7c..3a376e81b 100644 --- a/lib/mesa/src/mapi/mapi_glapi.c +++ b/lib/mesa/src/mapi/mapi_glapi.c @@ -65,7 +65,7 @@ _glapi_set_context(void *context) void _glapi_set_dispatch(struct _glapi_table *dispatch) { - u_current_set_table((const struct mapi_table *) dispatch); + u_current_set_table((const struct _glapi_table *) dispatch); } /** diff --git a/lib/mesa/src/mapi/shared-glapi/SConscript b/lib/mesa/src/mapi/shared-glapi/SConscript index e5d45db59..5d74bd681 100644 --- a/lib/mesa/src/mapi/shared-glapi/SConscript +++ b/lib/mesa/src/mapi/shared-glapi/SConscript @@ -32,7 +32,7 @@ def mapi_objects(env, printer, mode): script = '../mapi_abi.py', source = [GLAPI + 'gen/gl_and_es_API.xml'] + env.Glob(GLAPI + 'gen/*.xml'), command = python_cmd + ' $SCRIPT ' + \ - '--printer %s --mode lib $SOURCE > $TARGET' % (printer), + '--printer %s $SOURCE > $TARGET' % (printer), ) cpppath = [ diff --git a/lib/mesa/src/mapi/table.h b/lib/mesa/src/mapi/table.h index a1af40c6f..f488b6d8a 100644 --- a/lib/mesa/src/mapi/table.h +++ b/lib/mesa/src/mapi/table.h @@ -37,7 +37,7 @@ #define MAPI_TABLE_NUM_SLOTS (MAPI_TABLE_NUM_STATIC + MAPI_TABLE_NUM_DYNAMIC) #define MAPI_TABLE_SIZE (MAPI_TABLE_NUM_SLOTS * sizeof(mapi_func)) -struct mapi_table; +struct _glapi_table; extern const mapi_func table_noop_array[]; @@ -52,17 +52,17 @@ table_set_noop_handler(nop_handler_proc func); /** * Get the no-op dispatch table. */ -static inline const struct mapi_table * +static inline const struct _glapi_table * table_get_noop(void) { - return (const struct mapi_table *) table_noop_array; + return (const struct _glapi_table *) table_noop_array; } /** * Set the function of a slot. */ static inline void -table_set_func(struct mapi_table *tbl, int slot, mapi_func func) +table_set_func(struct _glapi_table *tbl, int slot, mapi_func func) { mapi_func *funcs = (mapi_func *) tbl; funcs[slot] = func; @@ -72,7 +72,7 @@ table_set_func(struct mapi_table *tbl, int slot, mapi_func func) * Return the function of a slot. */ static inline mapi_func -table_get_func(const struct mapi_table *tbl, int slot) +table_get_func(const struct _glapi_table *tbl, int slot) { const mapi_func *funcs = (const mapi_func *) tbl; return funcs[slot]; diff --git a/lib/mesa/src/mapi/u_current.c b/lib/mesa/src/mapi/u_current.c index 7e7e275f2..1402cea45 100644 --- a/lib/mesa/src/mapi/u_current.c +++ b/lib/mesa/src/mapi/u_current.c @@ -99,17 +99,17 @@ extern void (*__glapi_noop_table[])(void); /*@{*/ #if defined(GLX_USE_TLS) -__thread struct mapi_table *u_current_table +__thread struct _glapi_table *u_current_table __attribute__((tls_model("initial-exec"))) - = (struct mapi_table *) table_noop_array; + = (struct _glapi_table *) table_noop_array; __thread void *u_current_context __attribute__((tls_model("initial-exec"))); #else -struct mapi_table *u_current_table = - (struct mapi_table *) table_noop_array; +struct _glapi_table *u_current_table = + (struct _glapi_table *) table_noop_array; void *u_current_context; tss_t u_current_table_tsd; @@ -259,17 +259,17 @@ u_current_get_context_internal(void) * table (__glapi_noop_table). */ void -u_current_set_table(const struct mapi_table *tbl) +u_current_set_table(const struct _glapi_table *tbl) { u_current_init(); stub_init_once(); if (!tbl) - tbl = (const struct mapi_table *) table_noop_array; + tbl = (const struct _glapi_table *) table_noop_array; #if defined(GLX_USE_TLS) - u_current_table = (struct mapi_table *) tbl; + u_current_table = (struct _glapi_table *) tbl; #else tss_set(u_current_table_tsd, (void *) tbl); u_current_table = (ThreadSafe) ? NULL : (void *) tbl; @@ -279,15 +279,15 @@ u_current_set_table(const struct mapi_table *tbl) /** * Return pointer to current dispatch table for calling thread. */ -struct mapi_table * +struct _glapi_table * u_current_get_table_internal(void) { #if defined(GLX_USE_TLS) return u_current_table; #else if (ThreadSafe) - return (struct mapi_table *) tss_get(u_current_table_tsd); + return (struct _glapi_table *) tss_get(u_current_table_tsd); else - return (struct mapi_table *) u_current_table; + return (struct _glapi_table *) u_current_table; #endif } diff --git a/lib/mesa/src/mapi/u_current.h b/lib/mesa/src/mapi/u_current.h index ea4f81723..3c9a414ee 100644 --- a/lib/mesa/src/mapi/u_current.h +++ b/lib/mesa/src/mapi/u_current.h @@ -10,9 +10,6 @@ #include "glapi/glapi.h" -/* ugly renames to match glapi.h */ -#define mapi_table _glapi_table - #ifdef GLX_USE_TLS #define u_current_table _glapi_tls_Dispatch #define u_current_context _glapi_tls_Context @@ -28,11 +25,11 @@ #else /* MAPI_MODE_UTIL || MAPI_MODE_GLAPI || MAPI_MODE_BRIDGE */ -struct mapi_table; +struct _glapi_table; #ifdef GLX_USE_TLS -extern __thread struct mapi_table *u_current_table +extern __thread struct _glapi_table *u_current_table __attribute__((tls_model("initial-exec"))); extern __thread void *u_current_context @@ -40,7 +37,7 @@ extern __thread void *u_current_context #else /* GLX_USE_TLS */ -extern struct mapi_table *u_current_table; +extern struct _glapi_table *u_current_table; extern void *u_current_context; #endif /* GLX_USE_TLS */ @@ -54,9 +51,9 @@ void u_current_destroy(void); void -u_current_set_table(const struct mapi_table *tbl); +u_current_set_table(const struct _glapi_table *tbl); -struct mapi_table * +struct _glapi_table * u_current_get_table_internal(void); void @@ -65,7 +62,7 @@ u_current_set_context(const void *ptr); void * u_current_get_context_internal(void); -static inline const struct mapi_table * +static inline const struct _glapi_table * u_current_get_table(void) { #ifdef GLX_USE_TLS |