summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-05-26Fix setting the maximum accessed array elementIan Romanick
Array dereferences now point to variable dereferences instead of pointing directly to variables. This necessitated some changes to the way the variable is accessed when setting the maximum index array element.
2010-05-26ir_dereference::mode is no longer used, kill with fireIan Romanick
2010-05-26Refactor whole-variable assigment checking into member functionIan Romanick
2010-05-26Refactor ir_dereference data fields to subclassesIan Romanick
2010-05-26Replace open coded deref navigation with hierarchical visitorsIan Romanick
2010-05-26Refactor ir_dereference support for ir_visitorIan Romanick
Move the accept method for visitors from ir_dereference to the derived classes.
2010-05-26Refactor ir_dereference support for ir_hierarchical_visitorIan Romanick
Move the accept method for hierarchical visitors from ir_dereference to the derived classes. This was mostly straight-forward, but I suspect that ir_dead_code_local may be broken now.
2010-05-26Begin refactoring ir_dereferenceIan Romanick
Create separate subclasses of ir_dereference for variable, array, and record dereferences. As a side effect, array and record dereferences no longer point to ir_variable objects directly. Instead they each point to an ir_dereference_variable object. This is the first of several steps in the refactoring process. The intention is that ir_dereference will eventually become an abstract base class.
2010-05-26Enable hardware mipmap generation for radeon.Will Dyson
Use _mesa_meta_GenerateMipmap. It is Fast Enough(tm). Signed-off-by: Maciej Cencora <m.cencora@gmail.com> Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
2010-05-26Fix image_matches_texture_obj() MaxLevel checkWill Dyson
When generating or uploading a new (higher) mipmap level for an image, we can need to allocate a miptree for a level greater than texObj->MaxLevel. Signed-off-by: Maciej Cencora <m.cencora@gmail.com> Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
2010-05-26Fallback to software render if there is no miptree for an imageWill Dyson
This can happen when checking if a software fallback for a higher level operation (such as GenerateMipmap) is needed. Signed-off-by: Maciej Cencora <m.cencora@gmail.com> Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
2010-05-27r300g: decouple drawing code and two-sided stencil refvalue fallbackMarek Olšák
It's now more separate from the rest of the driver and it can be disabled by commenting out just 1 line. Well, I couldn't make the previous version work with SW TCL reliably, that's the reason of this little rework.
2010-05-26r300g/swtcl: handle large index count properlyMarek Olšák
This fixes piglit/draw-elements.
2010-05-26r300g/swtcl: force vertex prefetching for non-indexed primitivesMarek Olšák
2010-05-26r300g/swtcl: move emitting AOS to prepare_for_renderingMarek Olšák
2010-05-26r300g/swtcl: vbo transfer sanity checksMarek Olšák
2010-05-26r300g: add get_cs_info winsys entrypoint, abandon check_csMarek Olšák
2010-05-26r300g/swtcl: do not use u_upload_mgr and do not compute max_indexMarek Olšák
2010-05-26r300g: remove unnecessary includesMarek Olšák
2010-05-26i965: Add support for EXT_timer_query on Ironlake.Eric Anholt
We could potentially do this on G45 as well, though the units are different. On 965, the timestamp is tied to hclk, which would make supporting it harder.
2010-05-26intel: Handle decode of PIPE_CONTROL instructions.Eric Anholt
2010-05-26i965: Move Gen6 debugging emit_mi_flush into the Gen6 block.Eric Anholt
2010-05-26i965: Don't PIPE_CONTROL instruction cache flush.Eric Anholt
This is a workaround for Ironlake errata. The emit_mi_flush is used for a few purposes: 1) Flushing write caches for RTT (including blit to texture) 2) Pipe fencing for sync objects 3) Spamming cache flushes to track down cache flush bugs Spamming cache flushes seems less important than following the docs, and we should probably do that with a different mechanism than the one for render cache flushes.
2010-05-26i965: Emit MI_FLUSH before PSP on Ironlake for clip max threads errata.Eric Anholt
2010-05-26Implement (and test) support for macro expansion within conditional expressions.Carl Worth
To do this we have split the existing "HASH_IF expression" into two productions: First is HASH_IF pp_tokens which simply constructs a list of tokens. Then, with that resulting token list, we first evaluate all DEFINED operator tokens, then expand all macros, and finally start lexing from the resulting token list. This brings us to the second production, IF_EXPANDED expression This final production works just like our previous "HASH_IF expression", evaluating a constant integer expression. The new test (54) added for this case now passes.
2010-05-26gallivm: Remove unnecessary headers.Vinson Lee
2010-05-26st/xorg: Remove unnecessary headers.Vinson Lee
2010-05-26util: Remove unnecessary headers.Vinson Lee
2010-05-26st/dri: Remove dri.c from SCons build.Vinson Lee
This was missed in commit f501230db3a94c9328b8e769d9c17b2c3792e19c. Fixes SCons build.
2010-05-26Fix lexing of "defined" as an operator, not an identifier.Carl Worth
Simply need to move the rule for IDENTIFIER to be after "defined" and everything is happy. With this change, tests 50 through 53 all pass now.
2010-05-26Implement #if and friends.Carl Worth
With this change, tests 41 through 49 all pass. (The defined operator appears to be somehow broken so that test 50 doesn't pass yet.)
2010-05-26stashCarl Worth
2010-05-26Implement token pasting.Carl Worth
Which makes test 40 now pass.
2010-05-26Revert the 'make static' part of 962f92611216e304c95e7c089b38d58066236014Kristian Høgsberg
The es1 and es2 dispath table initialization code is generated from the API XML files and we can't easily share the dispatch table code setup. Keep the _mesa_init_shader_dispatch() part of the patch, but roll back the static-ization of shader entrypoints so es1 and es2 dispatch initialization still works.
2010-05-26Rename identifier from 'i' to 'node'.Carl Worth
Now that we no longer have nested for loops with 'i' and 'j' we can use the 'node' that we already have.
2010-05-26Remove some stale token types.Carl Worth
All the code referencing these was removed some time ago.
2010-05-26Prevent unexpanded macros from being expanded again in the future.Carl Worth
With this fix, tests 37 - 39 now pass.
2010-05-26README: Document some known limitations.Carl Worth
None of these are fundamental---just a few things that haven't been implemented yet.
2010-05-26Fix a typo in a comment.Carl Worth
Always better to use proper grammar in our grammar.
2010-05-26Expand macro arguments before performing argument substitution.Carl Worth
As required by the C99 specification of the preprocessor. With this fix, tests 33 through 36 now pass.
2010-05-26Change macro expansion to append onto token lists rather than printing directly.Carl Worth
This doesn't change any functionality here, but will allow us to make future changes that were not possible with direct printing. Specifically, we need to expand macros within macro arguments before performing argument substitution. And *that* expansion cannot result in immediate printing.
2010-05-26Check active expansions before expanding a function-like macro invocation.Carl Worth
With this fix, test 32 no longer recurses infinitely, but now passes.
2010-05-26Defer test 26 until much later (to test 55).Carl Worth
Supporting embedded newlines in a macro invocation is going to be tricky with our current approach to lexing and parsing. Since this isn't really an important feature for us, we can defer this until more important things are resolved. With this test out of the way, tests 27 through 31 are passing.
2010-05-26r300g: fix fence referencingMarek Olšák
2010-05-25mesa: move all vertex array functions into varray.cBrian Paul
2010-05-25Avoid getting extra trailing whitespace from macros.Carl Worth
This trailing whitespace was coming from macro definitions and from macro arguments. We fix this with a little extra state in the token_list. It now remembers the last non-space token added, so that these can be trimmed off just before printing the list. With this fix test 23 now passes. Tests 24 and 25 are also passing, but they probbably would ahve before this fix---just that they weren't being run earlier.
2010-05-25mesa: added _mesa_GetVertexAttribIiv / AttribIuiv()Brian Paul
Refactor the code for all the glGetVertexAttrib() functions.
2010-05-25mesa: added _mesa_VertexAttribIPointer()Brian Paul
2010-05-25mesa: new GL 3.0 VertexAttrib commandsBrian Paul
Still need to plug in API dispatch...
2010-05-25mesa: make a bunch of shader API functions staticBrian Paul