summaryrefslogtreecommitdiff
path: root/src/mesa/main/mtypes.h
AgeCommit message (Collapse)Author
2011-01-04mesa: Make _mesa_choose_tex_format() choose formats out of a supported table.Eric Anholt
Right now this is just tweaking the current code to look at the table. Choosing actually supported formats will come later.
2010-12-02mesa: raise max texture sizes to 16KBrian Paul
This allows 16K x 16K 2D textures, for example, but we don't want to allow that for 3D textures. The new gl_constants::MaxTextureMBytes field is used to prevent allocating too large of texture image. This allows a 16K x 32 x 32 3D texture, for example, but prevents 16K^3. Drivers can override this limit. The default is currently 1GB. Apps should use the proxy texture mechanism to determine the actual max texture size.
2010-12-01glsl: Lower ir_binop_pow to a sequence of EXP2 and LOG2Ian Romanick
2010-11-23mesa: replace #defines with new gl_shader_type enumBrian Paul
2010-11-10mesa: remove unneeded DD_POINT_SIZE and DD_LINE_WIDTH tricapsRoland Scheidegger
DD_POINT_SIZE was broken for quite some time, and the only driver (r200) relying on this no longer needs it. Both DD_POINT_SIZE and DD_LINE_WIDTH have no users left outside of debugging output, hence instead of fixing DD_POINT_SIZE setting just drop both of them - there was a plan to remove tricaps flags entirely at some point.
2010-11-02mesa: move the gl_config struct declarationBrian Paul
It was in the middle of the lighting-related structures before. Also add some info about field sizes in this structure.
2010-10-28mesa: state/queries for GL_MIN/MAX_PROGRAM_TEXEL_OFFSET_EXTBrian Paul
2010-10-28mesa: add gl_client_array::Integer field and related vertex array state codeBrian Paul
2010-10-27Track separate programs for each stageIan Romanick
The assumption is that all stages are the same program or that varyings are passed between stages using built-in varyings.
2010-10-27mesa: Track an ActiveProgram distinct from CurrentProgramIan Romanick
ActiveProgram is the GL_EXT_separate_shader_objects state variable used for glUniform calls. glUseProgram also sets this.
2010-10-27mesa: Add infrastructure to track GL_EXT_separate_shader_objectsIan Romanick
2010-10-23mesa: added new gl_framebuffer::_IntegerColor fieldBrian Paul
2010-10-23mesa: added new gl_extensions::EXT_gpu_shader4 fieldBrian Paul
2010-10-14glsl: Slightly change the semantic of _LinkedShadersIan Romanick
Previously _LinkedShaders was a compact array of the linked shaders for each shader stage. Now it is arranged such that each slot, indexed by the MESA_SHADER_* defines, refers to a specific shader stage. As a result, some slots will be NULL. This makes things a little more complex in the linker, but it simplifies things in other places. As a side effect _NumLinkedShaders is removed. NOTE: This may be a candidate for the 7.9 branch. If there are other patches that get backported to 7.9 that use _LinkedShader, this patch should be cherry picked also.
2010-10-14Drop the "neutral" tnl moduleKristian Høgsberg
Just always check for FLUSH_UPDATE_CURRENT and call Driver.BeginVertices when necessary. By using the unlikely() macros, this ends up as a 10% performance improvement (for isosurf, anyway) over the old, complicated function pointer swapping.
2010-10-13Drop GLcontext typedef and use struct gl_context insteadKristian Høgsberg
2010-10-13Drop GLframebuffer typedef and just use struct gl_framebufferKristian Høgsberg
2010-10-13Rename GLvisual and __GLcontextModes to struct gl_configKristian Høgsberg
2010-10-13gl: Remove unused GLcontextModes fieldsKristian Høgsberg
2010-10-13Get rid of GL/internal/glcore.hKristian Høgsberg
__GLcontextModes is always only used as an implementation internal struct at this point and we shouldn't install glcore.h anymore. Anything that needs __GLcontextModes should just include the struct in its headers files directly.
2010-10-13glsl: add support for shader stencil exportDave Airlie
This adds proper support for the GL_ARB_shader_stencil_export extension to the GLSL compiler. Thanks to Ian for pointing out where I need to add things.
2010-10-13mesa: add support for FRAG_RESULT_STENCIL.Dave Airlie
this is needed to add support for stencil shader export. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-10-07gles2: Add GL_EXT_texture_format_BGRA8888 supportKristian Høgsberg
2010-10-01mesa: Add ARB_texture_compression_rgtc as an alias for ↵Ian Romanick
EXT_texture_compression_rgtc Change the name in the extension tracking structure to ARB (from EXT).
2010-09-27Remove GL_EXT_cull_vertexIan Romanick
This is only used in the i915 driver where it provides little benefit for very few applications that use it with fixed function TNL.
2010-09-27Remove GL_MESA_packed_depth_stencilIan Romanick
This extension was never enabled in any driver.
2010-09-23mesa: Remove EXT_convolution.Eric Anholt
More optional code.
2010-09-23mesa: Remove SGI_color_matrix.Eric Anholt
Another optional ARB_imaging subset extension.
2010-09-23mesa: Remove SGI_color_table.Eric Anholt
Another optional ARB_imaging subset extension.
2010-09-23mesa: Remove EXT_histogram.Eric Anholt
This has always been optional, and not useful.
2010-09-23mesa: Remove the non-required ARB_imaging extension.Eric Anholt
Many of the EXT_ extensions in the subset have significant code overhead with no users. It is not a required part of GL -- though text describing the extension is part of the core spec since 1.2, it is always conditional on the ARB_imaging extension.
2010-09-21mesa: don't advertise bogus GL_ARB_shading_language_120 extensionBrian Paul
Instead of using the invalid GL_ARB_shading_language_120 extension to determine the GLSL version, use a new ctx->Const.GLSLVersion field. Updated the intel and r600 drivers, but untested. See fd.o bug 29910 NOTE: This is a candidate for the 7.9 branch (but let's wait and see if there's any regressions).
2010-09-17glsl2: Add flags to enable variable index loweringIan Romanick
2010-09-14mesa: move, redefine MESA_GEOMETRY_PROGRAMBrian Paul
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.