summaryrefslogtreecommitdiff
path: root/src/mesa/main/mtypes.h
AgeCommit message (Collapse)Author
2010-09-10mesa: Remove unused Emit flags from gl_shader_compiler_optionsIan Romanick
2010-09-09Revert "glapi: Implement optional dispatch logging"Kristian Høgsberg
This reverts commit b9abc6139a310677a37754ea7172d976dbf56979 and the follow on fixes (7aae704 and 6fe1b47). It's changing the glapi/driver ABI and causes a number of problems for debug/non-debug builds.
2010-09-09glsl2: Add EmitNoNoise flag, use it to remove noise opcodesIan Romanick
2010-09-09glapi: Implement optional dispatch loggingKristian Høgsberg
There's a useful feature buried in glapi to log all API calls to stderr. Unfortunately it requires editing the code and then it's enabled unconditionally for that build. This patch builds in API logging for debug builds and makes it run-time switchable by setting MESA_DEBUG=dispatch.
2010-09-08glsl: add several EmitNo* options, and MaxUnrollIterationsLuca Barbieri
This increases the chance that GLSL programs will actually work. Note that continues and returns are not yet lowered, so linking will just fail if not supported. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2010-09-08glsl: make compiler options per-targetLuca Barbieri
This allows us to specify different options, especially useful for chips without unified shaders. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2010-09-08mesa: add PIPE_SHADER_* like constants and conversions to/from enums (v2)Luca Barbieri
Changes in v2: - No longer adds tessellation enums
2010-09-03mesa: fix up a commentBrian Paul
2010-08-24mesa: Add core.h.Chia-I Wu
core.h is the public header of core mesa. GLX, WGL, and GLSL are supposed to include this header file. It should be noted that headers included by core.h must not perform feature tests (#if FEATURE_xxx). Otherwise, we cannot, for example, mix a FEATURE_ES2 libmesagallium.a with a FEATURE_GL libglsl.a.
2010-08-16Merge branch 'glsl2'Ian Romanick
Conflicts: src/mesa/program/prog_optimize.c
2010-08-13Merge branch 'master' into glsl2Ian Romanick
2010-08-10mesa: remove obsolete commentsBrian Paul
2010-07-31mesa: Remove inclusion of compiler.h from mtypes.h.Vinson Lee
mtypes.h does not use any symbols from compiler.h. Also add the required headers for files that depended on symbols from compiler.h but were indirectly including compiler.h through mtypes.h.
2010-07-30mesa: added gl_program::IndirectRegisterFiles fieldBrian Paul
Now drivers, etc. can know which register files are accessed with indirect addressing. Before we just checked gl_program::NumAddressRegs but didn't know if that was the constant buffer, temp regs, or what. The only user of this new field so far will be the gallium state tracker.
2010-07-26Merge remote branch 'origin/master' into glsl2Eric Anholt
This pulls in multiple i965 driver fixes which will help ensure better testing coverage during development, and also gets past the conflicts of the src/mesa/shader -> src/mesa/program move. Conflicts: src/mesa/Makefile src/mesa/main/shaderapi.c src/mesa/main/shaderobj.h
2010-07-21linker: Link built-in functions instead of including them in every shaderIan Romanick
This is an invasive set of changes. Each user shader tracks a set of other shaders that contain built-in functions. During compilation, function prototypes are imported from these shaders. During linking, the shaders are linked with these built-in-function shaders just like with any other shader.
2010-07-19linker: Track and validate GLSL versions used in shadersIan Romanick
2010-07-19i915: Ask the compiler to flatten out all the if statements that it can.Eric Anholt
2010-07-08gs: inject const int gl_VerticesIn at link timeZack Rusin
2010-07-07mesa: initial support for new GL 3.0 texture formatsBrian Paul
2010-07-02mesa: add geometry shader fields to gl_shader_programBrian Paul
These 3 fields are per shader-program. Copy them into the geometry program at link time for convenient access later. Also, add some missing glGetProgramiv() queries.
2010-07-02main: change some GS field types, added commentsBrian Paul
2010-07-01mesa: extension flags and version testing for GL 3.x featuresBrian Paul
2010-06-30linker: Don't dynamically allocate slots for linked shadersIan Romanick
The can be at most one shader per stage. There are currently only two stages. There is zero reason to dynamically size this array.
2010-06-30glsl2: Use Mesa's gl_shader_program instead of our own struct glsl_program.Eric Anholt
This avoids more allocation and shuffling of data around.
2010-06-30glsl2: Move our data from a glsl_shader* on the side to the main gl_shader *.Eric Anholt
This saves recompiling at link time. gl_shader->ir is made a pointer so that we don't have to bring exec_list into mtypes.h.
2010-06-28mesa: initial support for ARB_geometry_shader4Zack Rusin
laying down the foundation for everything and implementing most of the stuff. linking, gl_VerticesIn and multidimensional inputs are left.
2010-05-10mesa: more transform feedback infrastructureBrian Paul
Includes GL_ARB_transform_feedback2 which encapsulates transform feedback state in objects.
2010-05-04mesa: remove trailing comma in enum listBrian Paul
Some compilers complain about this.
2010-04-28mesa: Handle GL_TEXTURE_GEN_STR_OES in _mesa_Enable()Kristian Høgsberg
2010-04-22mesa: Track the OpenGL API we're implementing in the contextKristian Høgsberg
This introduces a new way to create or initialize a context: _mesa_create_context_for_api and _mesa_initialize_context_for_api which in addition to the current arguments take an api enum to indicate which OpenGL API the context should implement. At this point the API field in GLcontext isn't used anywhere, but later commits will key certain functionality off of it. The _mesa_create_context and _mesa_initialize_context functions are kept in place as wrappers around the *_for_api versions, passing in API_OPENGL to get the same behavior as before.
2010-04-20mesa: API and state for GL 3.1 primitive restartBrian Paul
2010-04-20mesa: add GL 3.2 GL_CONTEXT_PROFILE_MASK queryBrian Paul
2010-04-06mesa: Add OES_EGL_image to extension list.Chia-I Wu
2010-04-04mesa: new extension flag for GL_EXT/ARB_draw_instancedBrian Paul
2010-03-30mesa: initial data structures for transform feedbackBrian Paul
2010-03-20mesa: added GL3 ContextFlags field and query codeBrian Paul
2010-03-05APPLE_object_purgeable: coreChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2010-03-03mesa: Remove unused RasterIndex fieldIan Romanick
With the preceeding changes, gl_current_attrib::RasterIndex is not used. Remove it. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2010-02-25mesa: added new extension flag for GL_EXT_texture_arrayBrian Paul
2010-02-09mesa: Protect buffer objects reference counting with a mutex.Michal Krol
2010-02-03mesa: increase number of texture units to MAX_COMBINED_TEXTURE_IMAGE_UNITSBrian Paul
We were misinterpretting GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS previously. It's the number of texture units for which we need to keep state; not just the total number of texture units addressable by the vertex shader plus fragment shader. Since sw Mesa independently supports 16 texture units in vertex shaders and 16 texture units in fragment shaders, the max combined units is 32. Note that the docs for glActiveTexture() indicate the max legal unit is MAX(GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS, MAX_TEXTURE_COORDS) - 1. A new piglit test (texunits.c) tests the various texture unit limits. I'm pretty sure I've got this all right now, but additional reviews are welcome...
2010-02-03mesa: re-dimension RasterTexCoords and CoordReplaceBrian Paul
These are limited to the number of texture coordinate units.
2010-01-23mesa: add core support for ARB_half_float_vertex.Dave Airlie
Adds the extension to the list + support to the APIs. also add t_draw.c support to convert for sw rast. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-01-21mesa: support for GL_ARB_fragment_coord_conventionsLuca Barbieri
Signed-off-by: Brian Paul <brianp@vmware.com>
2010-01-12Merge branch 'master' into opengl-es-v2Chia-I Wu
Conflicts: src/mesa/main/dd.h
2010-01-05mesa: added version fields to GLcontextBrian Paul
2010-01-04mesa: make texture BorderColor a union of float/int/uintBrian Paul
When we have integer-valued texture formats, the texture border color must also store integer and uint values. With GL 3.0, the new glTexParameterIiv() and glTexParameterIuiv() functions can set the border color to int or uint values.
2009-12-31mesa: add flag for GL_NV_conditional_render extensionBrian Paul
2009-12-31mesa: _mesa_Begin/EndConditionalRender() functionsBrian Paul
For GL_NV_conditional_render and GL3. The drawing functions don't check the query object yet. No API dispatch yet.