summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-08-03r600g: fix LIT + fix multiple constant one ALU + fix ALU block splittingJerome Glisse
Make sure LIT fills all slot for instruction (can't do W instruction without having the Z slot filled with at least a NOP). ALU instruction can't access more than 4 constant, move constant to temporary reg if we reach the limit. Fix ALU block splitting, only split ALU after ALU with last instruction bit sets. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-08-03r300g: handle polygon offset correctlyMarek Olšák
https://bugs.freedesktop.org/show_bug.cgi?id=29372
2010-08-03st/mesa: Add forward declarations in st_atom_constbuf.h.Vinson Lee
2010-08-03st/mesa: Include glheader.h in st_atom.h.Vinson Lee
Include glheader.h for GLenum symbol.
2010-08-03mesa: Clean up header file inclusion in m_xform.h.Vinson Lee
Include compiler.h for CONST symbol. Remove config.h as m_xform.h uses no additional symbols from config.h.
2010-08-03mesa: Reduce header file inclusion in m_translate.h.Vinson Lee
m_translate.h does not use any additional symbols added by config.h.
2010-08-03mesa: Include missing header in m_matrix.h.Vinson Lee
2010-08-03mesa: Reduce header file inclusion in texgen.h.Vinson Lee
texgen.h doesn't use any symbols additionally added by mtypes.h.
2010-08-03mesa: Reduce header file inclusion in texcompress_fxt1.h.Vinson Lee
texcompress_fxt1.h doesn't use any additional symbols added by mtypes.h.
2010-08-02mesa: Reduce header file inclusion in syncobj.h.Vinson Lee
syncobj.h doesn't use any additional symbols that is added by context.h.
2010-08-02glsl2: Fix typo in clamp() constant builtin using uint instead of int.Eric Anholt
I take back the bad things I've said about the signed/unsigned comparison warning now.
2010-08-02ir_to_mesa: Add support for 1.20 uniform initializers.Eric Anholt
Fixes: glsl-uniform-initializer-1 glsl-uniform-initializer-2 glsl-uniform-initializer-3 glsl-uniform-initializer-4 glsl1-GLSL 1.20 uniform array constructor
2010-08-02glsl2: Don't consider uniform initializers as constant expressions.Eric Anholt
We were happily optimizing away the body of glsl-uniform-initializer-* to never use the uniforms.
2010-08-02Initialize a couple of HasIndex2 fields on Mesa IR src regs.Eric Anholt
2010-08-02ir_to_mesa: Support for struct uniforms.Eric Anholt
Fixes glsl-uniform-struct.
2010-08-02ir_to_mesa: Add a constructor for ir_to_mesa_src_reg.Eric Anholt
This helps makes sure we don't miss any new fields, and makes totally uninitialized src_regs be PROGRAM_UNDEFINED.
2010-08-02glsl2: Use talloc_zero_size instead of talloc_size to allocate ast_node objects.Carl Worth
This is a zero-ing function, (like calloc), to avoid bugs due to accessing uninitialized values. Thanks to valgrind for noticing the use of uninitialized values.
2010-08-02r600g: split alu block to conform to limit + RCP opcodeJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-08-02glsl_type: Use string key for array type hashIan Romanick
2010-08-02Keep a local copy of the symbol name in the symbol tableIan Romanick
The symbol_header structure that tracks symbols with a particular name may have a different (longer) life time than the symbols it tracks. Not keeping a local copy of the name can lead to use-after-free errors. For example, the following sequence would trigger such an error: char *copy = strdup(name); _mesa_symbol_table_push_scope(st); _mesa_symbol_table_add_symbol(st, 0, name, NULL); _mesa_symbol_table_pop_scope(st); free(name); _mesa_symbol_table_find_symbol(st, 0, copy); With this change, the symbol table keeps a local copy of the name that has the same life time as the symbol_header for that name. This resolves some use-after-free errors with built-in functions in the GLSL compiler.
2010-08-02glsl2: Clean-up two 'unused variable' warningsIan Romanick
2010-08-02glsl2: Make glsl_types::ctx private againIan Romanick
2010-08-02glsl2: Fix expression type in builtin tan().Eric Anholt
Fixes glsl-fs-tan-1.
2010-08-02glsl2: Add validation that talloc ownership of ir_* names is right.Eric Anholt
2010-08-02glsl2: Fix validation for ir_unop_not.Eric Anholt
We use vector ir_unop_not to implement builtin not(), and that seems fine.
2010-08-02glsl2: Add support for floating constants like "1f".Eric Anholt
Fixes glsl-floating-constant-120.
2010-08-02r600g: add autogenerated reg definition + debug print cleanupJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-08-02glsl2: Initialize the ARB_fcc fields of ir_variable.Eric Anholt
Fixes intermittent failure in glsl-arb-fragment-coord-conventions.
2010-08-02glsl2: Also initialize the identifier field of parameter_declarator.Eric Anholt
The non-named parameter grammar understandably doesn't set the identifier field. Fixes intermittent failures about void main(void) {} having a named void parameter.
2010-08-02glsl2: Fix spelling of "precision" in error output.Eric Anholt
2010-08-02glsl2: Don't add mesa/program/ as an include dir. Let includes say program/.Eric Anholt
2010-08-02glsl2: Give the path within src/mesa/ for headers instead of relying on -I.Aras Pranckevicius
2010-08-02glsl2: initialize is_array and array_size of ast_parameter_declaratorAras Pranckevicius
The non-array path of glsl_parser.ypp wasn't setting is_array to false.
2010-08-02radeon: Add DRI2 flush extension support, so we synchronize properly.Mario Kleiner
When a DRI2 swap buffer is pending we need to make sure we have the flush extension so radeon doesn't resume rendering to or reading from the not yet blitted front buffer. This fixes: https://bugs.freedesktop.org/show_bug.cgi?id=28341 https://bugs.freedesktop.org/show_bug.cgi?id=28410 Signed-off-by: Jerome Glisse <jglisse@redhat.com> Signed-off-by: Mario Kleiner <mario.kleiner@tuebingen.mpg.de>
2010-08-02Revert "radeon: Add DRI2 flush extension to so we synchronize properly."Jerome Glisse
This reverts commit 8446f257b3e3ca4a3eb2c79bc357e46343e04e87.
2010-08-02r300g: fix hardlock when using more than one stuffed sprite coordsMarek Olšák
If texture coordinates come from the vertex shader, there are always 4 components in the rasterizer input packet, but if the coordinates are stuffed (like for point sprites), there are only 2 or 3 components (based on GB_ENABLE) and if we rasterize more, it locks up.
2010-08-02radeon: Add DRI2 flush extension to so we synchronize properly.Mario Kleiner
When DRI2 swap buffer is pending (copy buffer not pageflipping) we need to make sure we have the flush extension so radeon doesn't resume rendering on the not yet blitted front buffer. Modified version of Jerome's patch to add flush extension in the correct place. This prepares a possible fix for: https://bugs.freedesktop.org/show_bug.cgi?id=28341 https://bugs.freedesktop.org/show_bug.cgi?id=28410 Signed-off-by: Jerome Glisse <jglisse@redhat.com> Signed-off-by: Mario Kleiner <mario.kleiner@tuebingen.mpg.de>
2010-08-02glx: Drop _Xglobal_lock while we create and initialize glx displayKristian Høgsberg
2010-08-02r600: fix sin,cos functions on r600Andre Maasikas
r600 doesnt need the same normalization as r700 - instead it requires range to be truncated to -pi..pi I left the range trunc also effective on r700 althouch according the docs it has sufficent range (-512*PI, +512*PI). The instructions seem to be used not too often to cause perf loss because of this Based on patches and testing by Conn Clark and Alain Perrot
2010-08-02util: Fix unpacking of R8G8Bx_SNORM format.Michal Krol
Apparently, we must always use integers to perform calculations, otherwise the results won't match D3D's CxV8U8 definition.
2010-08-02r600g: add stencil op/func translationDave Airlie
2010-08-02r600g: initial alpha test stateDave Airlie
2010-08-02r600g: add initial blend state.Dave Airlie
migrates cb_cntl to be regenerated
2010-08-02r600g: set correct tex coord type for rect textures.Dave Airlie
2010-08-02r600g: make r600_db_format static.Dave Airlie
this isn't used anywhere else yet.
2010-08-01glsl2: Make non-square matrix keywords not keywords pre-120.Eric Anholt
Fixes glsl-mat-110.
2010-08-02draw: fix warning in sse code.Dave Airlie
Not sure if this will actually fix the issue, but it fixes the warning.
2010-08-01r300g: fix microtiling on RS6xxMarek Olšák
Getting tiling right has always been tricky. There are so many subtle details...
2010-08-01ir_to_mesa: Add support for MESA_GLSL=log.Eric Anholt
This is the option that dumps shader source to files in the current directory.
2010-08-01glcpp: Add a testcase for the failure in compiling xonotic's shader.Eric Anholt
gcc and mesa master agree that this is OK.