summaryrefslogtreecommitdiff
path: root/src/mesa/shader
AgeCommit message (Collapse)Author
2010-03-04Revert "mesa: Remove pointless comparison of unsigned integer with a ↵Vinson Lee
negative constant." This reverts commit a05fdbcb719ac64e6be842372813f0f4ca2f4f93. Removing the comparison is wrong. The comparison with -1 should be changed to another value (probably PROGRAM_UNDEFINED) along with another change in the shader assembler. Conflicts: src/mesa/shader/prog_execute.c
2010-03-04glsl: Remove unsigned greater than or equal zero comparison.Vinson Lee
2010-03-04glsl: Remove unsigned greater than or equal zero comparison.Vinson Lee
2010-03-04glsl: Return NULL on _slan_gen_asm error path on non-debug builds.Vinson Lee
Exit the function early on the error path, instead of continuing, to prevent a null pointer dereference later on.
2010-03-04glsl: Add assert to check input to strcmp.Vinson Lee
2010-03-02glsl: Add assert to check input to strcmp.Vinson Lee
2010-02-27glsl: Move assert from outside to inside of _slang_gen_swizzle function.Vinson Lee
2010-02-27glsl: Assert input to strcmp is not null.Vinson Lee
2010-02-27glsl: Assert pointer is not null before dereferencing.Vinson Lee
2010-02-25glsl: implement support for GL_EXT_texture_arrayBrian Paul
GL_EXT_texture_array is different from the existing GL_MESA_texture_array support in that the former is only supported for GLSL, not fixed-function. The shadow compare versions of the sampler functions haven't been tested yet. The non-shadow versions have been tested with a new piglit test.
2010-02-25mesa: added texture array targets in sizeof_glsl_type()Brian Paul
2010-02-25mesa: added cases for texture array targetsBrian Paul
2010-02-25mesa: Move src/mesa/glapi/dispatch.h to mesa.Chia-I Wu
glapi/dispatch.h is a core Mesa header file. Move the header file to main/ to make this clear. It also becomes clear after this change that IN_DRI_DRIVER is only used in core Mesa to enable the remap table.
2010-02-19mesa: Silence compiler format warning.Vinson Lee
2010-02-19mesa: fix snprintf() typoBrian Paul
2010-02-19mesa: restore _mesa_snprintf() - it's needed for WindowsBrian Paul
This reverts part of commit 298be2b028263b2c343a707662c6fbfa18293cb2
2010-02-19mesa: casts to silence new warnings from printf()Brian Paul
2010-02-19mesa: remove abs/negate from fetch_vector1ui()Brian Paul
This function is only used for the NV unpack instructions. Negate/abs make no sense and removing the code fixes Windows compiler warnings. Found by Karl Schultz.
2010-02-19Replace the _mesa_*printf() wrappers with the plain libc versionsKristian Høgsberg
2010-02-19Replace _mesa_malloc, _mesa_calloc and _mesa_free with plain libc versionsKristian Høgsberg
2010-02-19mesa: replace _mesa_bzero() with memset()Brian Paul
2010-02-19mesa: replace old MEMCPY macro with memcpyBrian Paul
2010-02-19Remove _mesa_memset in favor of plain memset.Kenneth Graunke
This may break the SUNOS4 build, but it's no longer relevant.
2010-02-19Remove _mesa_memcpy in favor of plain memcpy.Kenneth Graunke
This may break the SUNOS4 build, but it's no longer relevant.
2010-02-19Remove _mesa_atoi in favor of plain atoi.Kenneth Graunke
2010-02-19Remove _mesa_strncmp in favor of plain strncmp.Kenneth Graunke
2010-02-19Remove _mesa_strcmp in favor of plain strcmp.Kenneth Graunke
2010-02-19Remove _mesa_strlen in favor of plain strlen.Kenneth Graunke
2010-02-19Remove _mesa_strcpy in favor of plain strcpy.Kenneth Graunke
2010-02-19Remove _mesa_strncat in favor of plain strncat.Kenneth Graunke
2010-02-19Remove _mesa_strstr in favor of plain strstr.Kenneth Graunke
2010-02-17glsl: Silence unused value warning.Vinson Lee
2010-02-15mesa: Remove pointless comparison of unsigned integer with a negative constant.Vinson Lee
2010-02-14glsl: use new program cloning functionsBrian Paul
2010-02-14mesa: added _mesa_clone_vertex/fragment_program()Brian Paul
To reduce casting elsewhere...
2010-02-13mesa: Fix compiler warningsKarl Schultz
Add explicit casts, fix constant types, fix variable types. Fixes about 340 warnings in MSFT Visual Studio.
2010-02-13glsl: implement layout qualifiersBrian Paul
For GL_ARB_fragment_coord_conventions. This only applies to gl_FragCoord and controls pixel center origin and pixel center integer. For example: layout (origin_upper_left, pixel_center_integer) varying vec4 gl_FragCoord; This features introduces the idea of re-declaring variables with a changed type. This may also apply to arrays in some cases but that's not implemented at this time.
2010-02-13glsl: added type layout field and new type compare funcBrian Paul
Note: because of a weird dependency checking bug, a 'make clean' may be needed before recompiling.
2010-02-13mesa: copy frag coord layout fields tooBrian Paul
2010-02-10scons: User friendly message for code generated filesJosé Fonseca
2010-02-10Simplify GLSL extension mechanism.Michal Krol
Since extension name and extension name string are the same, collapse them into one name.
2010-02-10glsl: GLSL extensions have the GL_ prefixBrian Paul
Both the #extension directive name and the preprocessor symbol start with the GL_ prefix. For example: ... New glean/glsl1 tests have been added to test the #extension feature.
2010-02-09Merge branch 'gallium-nopointsizeminmax'Roland Scheidegger
Conflicts: src/gallium/drivers/nv10/nv10_state.c src/gallium/drivers/nv20/nv20_state.c src/gallium/drivers/nv50/nv50_program.c
2010-02-09mesa: add back-door support for cylindrical texture wrap modeBrian Paul
If the texture priority field is 0.125 set the PROG_PARAM_BIT_CYL_WRAP flag. The gallium state tracker will look for this flag. This feature is only for testing purposes and may be remove at some point. But if it's useful we could write a GL/Mesa extension to expose it properly.
2010-02-05mesa: debug output for ARLBrian Paul
2010-02-04mesa: change ctx->Driver.ProgramStringNotify() to return GLbooleanBrian Paul
GL_TRUE indicates that the driver accepts the program. GL_FALSE indicates the program can't be compiled/translated by the driver for some reason (too many resources used, etc). Propogate this result up to the GL API: set GL_INVALID_OPERATION error if glProgramString() was called. Set shader program link status to GL_FALSE if glLinkProgram() was called. At this point, drivers still don't do any program checking and always return GL_TRUE.
2010-02-04gallium: add point size clamp to implementation limits in vertex shaderRoland Scheidegger
The point size min/max registers (unused by mesa state tracker) were removed since most hardware couldn't do much with them. However, we don't want to have to rely on hw to do point size clamping correctly to implementation dependent limits, hence have to do that in the vertex shader. This should also solve a potential problem with (non-AA) points smaller than 1.0 which according to OGL still have size 1.0. Note that OGL point rendering is odd, in particular point sprites are rasterized differently to points. Some hardware might support those different modes, but in any case the different clamping values used for smooth/multisampled/sprite enabled points might help a bit for hw which rasterizes points the same as point sprites. Also tweak mesa's ff to vertex shader translation so don't have to clamp twice in case of point attenuation.
2010-02-03mesa: check/clamp texture/program matrix accessesBrian Paul
Further testing should reveal if any these assertions are hit...
2010-02-01mesa: change _mesa_find_free_register() to find multiple free regsBrian Paul
Before, _mesa_find_free_register() would scan the given shader to find a free/unused register of the given type. But subsequent calls would return the same register again. This caused a failure in the _mesa_remove_output_reads() function which sometimes needs several free temps. Now use a new function which build a vector of 'used' flags and another function which searches that vector for an unused register starting at a position that's incremented for each call. Fixes fd.o bug 26317. Note that a regression test for this has been added to the glean/glsl1 test. (cherry picked from commit e0d01c9d7f46ccd531f8dd1a04c5ac067200ef1e)
2010-02-01mesa: added _mesa_print_vp/p_inputs() functions (debug aids)Brian Paul