summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-07-21ir_constant_expression: Remove open coded equality comparisons.Kenneth Graunke
The ir_constant::has_value method already does this.
2010-07-21glsl2: Add some comments.Kenneth Graunke
2010-07-21glsl2: Replace insert_before/remove pairs with exec_node::replace_with.Kenneth Graunke
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-21glsl2: Add function to import function prototypes from one IR tree to anotherIan Romanick
2010-07-21softpipe: add missing support for PIPE_FORMAT_S8_USCALED surfacesBrian Paul
And remove checks of surface depth bits. The state tracker should not turn on depth/stencil testing if the framebuffer doesn't have depth/stencil.
2010-07-21softpipe: fix sp_tile_cache_flush_clear() regressionBrian Paul
2010-07-21Revert "dri2: Remove an unused variable."Jerome Glisse
glx_info is used if X_DRI2SwapBuffers is defined This reverts commit c0ca2bfb2ad8cf7fb9d756b5ae52cb77236ff605.
2010-07-21r600g: add support for all R6XX/R7XX asicJerome Glisse
This configure some of the value properly based on asic so others asic than RV710 works too. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-07-21r600g: add r600 compile mode to compiler.Dave Airlie
some of the ALU instructions are different on r6xx vs r7xx, separate the alu translation to separate files, and use family to pick which compile stage to use.
2010-07-21r600g: add family retrivalDave Airlie
allow pipe driver to get the family of the gpu.
2010-07-21llvmpipe: say no to depth clampMarek Olšák
The other drivers just return 0 without the assert.
2010-07-21r300g: implement depth clampMarek Olšák
Depth clamping seems to be implicit if clipping is disabled. It's not perfect, but it's good enough for wine and passes the corresponding piglit tests.
2010-07-21r300g: cleanup clip state emissionMarek Olšák
2010-07-21draw: disable depth clipping if depth clamp is enabledMarek Olšák
2010-07-21st/mesa: implement depth clampMarek Olšák
2010-07-21cso: handle depth clampMarek Olšák
2010-07-21gallium: add depth clamp to the interfaceMarek Olšák
2010-07-21ir_to_mesa: Add missing initializion of lod_info variable.Carl Worth
To quiet a compiler warning.
2010-07-21glsl: Fix missing initialization of yylloc.sourceCarl Worth
In both the preprocessor and in the compiler proper, we use a custom yyltype struct to allow tracking the source-string number in addition to line and column. However, we were previously relying on bison's default initialization of the yyltype struct which of course is not aware of the source field and leaves it uninitialized. We fix this by defining our own YYLLOC_DEFAULT macro expanding on the default version (as appears in the bison manual) and adding initialization of yylloc.source.
2010-07-21Add missing initialization of inOutFlags pointer.Carl Worth
This quiets a compiler warning, (and ensures a segmentation fault rather than memory corruption if this variable is written through before being initialized elsewhere).
2010-07-21Makefiles: Don't complain if depend file to be included doesn't exist.Carl Worth
While bootstrapping the dependencies, make will see the "include depend" directive before the depend file has been created. To avoid a spurious warning in this case we use "-include" instead, (which differs precisely in the fact that it will not emit a diagnostic if the named file does not exist).
2010-07-21i965: Remove an unused variable.Carl Worth
To quiet a compiler warning.
2010-07-21dri2: Remove an unused variable.Carl Worth
To quiet a compiler warning.
2010-07-21Regenerate program/lex.yy.cCarl Worth
Based on the two recent changes to program_lexer.l.
2010-07-21Avoid more warnings in flex-generated code.Carl Worth
This avoids two "function defined but not used" warnings. For the yyinput function we define YY_NO_INPUT which tells flex to simply not generate this function. For unput, we add a call to this function, but inside a while(0) so that it will quiet the warning without actually changing any functionality.
2010-07-21Avoid warnings in flex-generated code.Carl Worth
Add declarations for two functions generated in the flex ouput. It would be nicer if flex simply declared these generated functions as static, but for now we can at least avoid the warning this way.
2010-07-21glsl: Correctly handle unary plus operator.Carl Worth
Previously, any occurence of the unary plus operator would trigger a bogus type mismatch error. Fix this by making the ast_plus case look more like the ast_neg case as far as type-checking is concerned. With this change the shaders/CorrectPreprocess8.frag test in piglit now passes.
2010-07-21draw: tweak aa line width threshold and samplingBrian Paul
Set sampler max_lod to avoid sampling the 1x1 and 2x2 mipmap levels. Fixes piglit line-aa-width test, fd.o bug 29160.
2010-07-21nouveau/nvfx: Add new PIPE_CAP valuesPatrice Mandin
Signed-off-by: Patrice Mandin <patmandin@gmail.com>
2010-07-21gallivm: replace has_indirect_addressing field with indirect_files fieldBrian Paul
Instead of one big boolean indicating indirect addressing, use a bitfield indicating which register files are accessed with indirect addressing. Most shaders that use indirect addressing only use it to access the constant buffer. So no need to use an array for temporary registers in this case.
2010-07-21tgsi: added tgsi_shader_info::indirect_files fieldBrian Paul
Indicates which register files are accessed with indirect addressing.
2010-07-21gallivm: refactor code into get_indirect_offsets() functionBrian Paul
2010-07-21gallivm: added commentBrian Paul
2010-07-21gallivm: remove extraneous bracesBrian Paul
2010-07-21gallivm: no longer do indirect addressing in get_temp_ptr()Brian Paul
2010-07-21gallivm: implement correct indirect addressing of temp registersBrian Paul
As with indexing the const buffer, the ADDR reg may have totally different values for each element. Need to use a gather operation.
2010-07-21gallivm: re-org, comments for get_temp_ptr()Brian Paul
2010-07-21draw: whitespace clean-upBrian Paul
2010-07-21gallium: remove pointless bitfield restrction in pipe_vertex_elementKeith Whitwell
This used to be a somewhat packed struct, but no longer. Remove the last remaining bitfield tag.
2010-07-21gallivm: rename a var to avoid compiler warningsBrian Paul
2010-07-20gallivm: fix indirect addressing of constant bufferBrian Paul
The previous code assumed that all elements of the address register were the same. But it can vary from pixel to pixel or vertex to vertex so we must use a gather operation when dynamically indexing the constant buffer. Still need to fix this for the temporary register file...
2010-07-20gallivm: added lp_build_const_int32() helperBrian Paul
2010-07-20glsl2: glsl_type has its own talloc context, don't pass one inIan Romanick
2010-07-20linker: Do post-link lowering and optimizationIan Romanick
The lowering code should probably be moved elsewhere.
2010-07-20glsl2: Implement utility routine to talloc reparent an IR treeIan Romanick
2010-07-20glsl2: Add a constructor for _mesa_glsl_parse_stateIan Romanick
Coming changes to the handling of built-in functions necessitate this.
2010-07-20glsl2: Add and use new variable mode ir_var_temporaryIan Romanick
This is quite a large patch because breaking it into smaller pieces would result in the tree being intermitently broken. The big changes are: * Add the ir_var_temporary variable mode * Change the ir_variable constructor to take the mode as a parameter and correctly specify the mode for all ir_varables. * Change the linker to not cross validate ir_var_temporary variables. * Change the linker to pull all ir_var_temporary variables from global scope into 'main'.
2010-07-20ir_to_mesa: Validate the linked shaders as well.Eric Anholt
This caught the failure in cloning of ir_dereference_record.
2010-07-20glsl2: Check that nodes in a valid tree aren't error-type.Eric Anholt
We're good at propagating error types around, but finding when the first one was triggered can be painful if we aren't paying attention.