summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-07-27ir_to_mesa: Fix stray "break" that broke functions of >1 argument.Eric Anholt
2010-07-27glsl2: Add optimization pass for algebraic simplifications.Eric Anholt
This cleans up the assembly output of almost all the non-logic tests glsl-algebraic-*. glsl-algebraic-pow-two needs love (basically, flattening to a temporary and squaring it).
2010-07-27ir_validate: Check the types of expression operations.Eric Anholt
2010-07-27glsl2: Fix missing visit_continue return in ir_validate.Eric Anholt
2010-07-26ir_to_mesa: Fix up handling of void function returns.Eric Anholt
void functions have a type of glsl_type::void_type, not a null type.
2010-07-26ir_to_mesa: Actually allocate the right size for constant matrix temps.Eric Anholt
2010-07-26ir_to_mesa: Add support for structure constants.Eric Anholt
Fixes: TPPStreamCompiler::assignOperands
2010-07-26glsl2: Also steal the constant components of aggregate-typed ir_constants.Eric Anholt
2010-07-26glsl2: Steal ir_variable's constant_value field.Kenneth Graunke
Fixes a link-time crash in glsl-vs-cross-3.
2010-07-26glsl2: Remove old .gitignore file from when we were out of tree.Eric Anholt
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-26ir_to_mesa: Flag when we use the address reg.Eric Anholt
Hardware backends will get angry otherwise.
2010-07-26glx: Remove function prototypes no longer necessaryKristian Høgsberg
2010-07-26i965: Fix reversed naming of the operations in compute-to-mrf optimization.Eric Anholt
Also fix up comments, so that the difference between the two passes is clarified.
2010-07-26i965: Clean up a few magic numbers to use brw_defines.h defs.Eric Anholt
2010-07-26i965: Use MIN2, MAX2 instead of rolling our own.Eric Anholt
2010-07-26i965: Fold the "is arithmetic" bit of 965 opcodes into the opcode list.Eric Anholt
2010-07-26i965: Remove some duped register size/count definitionsEric Anholt
2010-07-26i965: Move the GRF-to-MRF optimizations to brw_optimize.c.Eric Anholt
2010-07-26i965: Improve (i.e. remove) some grf-to-mrf unnecessary movesBenjamin Segovia
Several routines directly analyze the grf-to-mrf moves from the Gen binary code. When it is possible, the mov is removed and the message register is directly written in the arithmetic instruction Also redundant mrf-to-grf moves are removed (frequently for example, when sampling many textures with the same uv) Code was tested with piglit, warsow and nexuiz on an Ironlake machine. No regression was found there Note that the optimizations are *deactivated* on Gen4 and Gen6 since I did test them properly yet. No reason there are bugs but who knows The optimizations are currently done in branch free programs *only*. Considering branches is more complicated and there are actually two paths: one for branch free programs and one for programs with branches Also some other optimizations should be done during the emission itself but considering that some code is shader between vertex shaders (AOS) and pixel shaders (SOA) and that we may have branches or not, it is pretty hard to both factorize the code and have one good set of strategies
2010-07-26glx: Drop debug fprintf that snug in with the previous commitKristian Høgsberg
2010-07-26glx: Enable copy subbuffer patch when GLX_DIRECT_RENDERING is #definedKristian Høgsberg
Depending on __DRI_COPY_SUB_BUFFER doesn't work when we no longer include dri_interface.h. https://bugs.freedesktop.org/show_bug.cgi?id=29264
2010-07-26st/egl: Fix debug linenobled
Acked-by: Jakob Bornecrantz <jakob@vmware.com>
2010-07-26util: fix CPU detection on OS Xnobled
s/PIPE_OS_DARWIN/PIPE_OS_APPLE, since there is no PIPE_OS_DARWIN. Acked-by: Vinson Lee <vlee@vmware.com>
2010-07-26st/xorg: fix use-after-freenobled
Acked-by: Jakob Bornecrantz <jakob@vmware.com>
2010-07-26i965g: Enable llvm in dri driver if builtJakob Bornecrantz
2010-07-26i915g: Fix llvm buildnobled
Acked-by: Jakob Bornecrantz <jakob@vmware.com>
2010-07-26glx: Drop duplicate psc field in dri context structKristian Høgsberg
Same problem as fixed for drisw in 4d58b5b482d06ab8d4c4b2db33d0b48b7c82d064.
2010-07-26i965: Allow VS MOVs to use immediate constants.Eric Anholt
Clarifies program assembly, and with a little tweak to always use constant_map, we could cut down on constant buffer payload.
2010-07-26r600g: implememt the LIT instructionStephan Schmid
2010-07-26util: fix another mutex leak in mempoolMarek Olšák
By fixing one, I introduced another. Crap.
2010-07-26util: fix mutex leaks in mempoolMarek Olšák
2010-07-26r300g: fix macro substitution problemDave Airlie
isn't a problem yet, but have issues in hiz branch. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-07-25r300g: implement D24X8 texture sampling for r3xx-r4xxMarek Olšák
Because the hw can't sample it, I reinterpret the format as G16R16 and sample the G component. This gives 16 bits of precision, which should be enough for depth texturing (surprisingly, the sampled values are exactly the same as in D16 textures). This also enables EXT_packed_depth_stencil on those old chipsets, finally.
2010-07-25r300g: make sure a texture is large enough for the CBZB clearMarek Olšák
The number of macrotiles in the Y direction must be even, otherwise memory corruption may happen (e.g. broken fonts). Basically, if we get a buffer in resource_from_handle, we can determine from the buffer size whether it's safe to use the CBZB clear or not.
2010-07-25r300g: do not use TXPITCH_EN if the width is POT and the height is NPOTMarek Olšák
2010-07-25r300g: do not use TXPITCH_EN for power-of-two textures from the DDXMarek Olšák
We were using TXPITCH_EN for textures from the DDX since ever, for nothing.
2010-07-25r300g: cleanup texture creation codeMarek Olšák
This decouples initializing a texture layout/miptree description from an actual texture creation, it also partially unifies texture_create and texture_from_handle. r300_texture inherits r300_texture_desc, which inherits u_resource. The CBZB clear criteria are moved to r300_texture_desc::cbzb_allowed[level]. And other minor cleanups.
2010-07-25r300g: reject resources from handles which are not large enoughMarek Olšák
The driver gets a buffer and its size in resource_from_handle. It computes the required minimum buffer size from given texture properties, and compares the two sizes. This is to early detect DDX bugs.
2010-07-25r300g: cleanup texture debug loggingMarek Olšák
2010-07-25r300g: do not align texture height to 2^n for 1D and 2D non-mipmapped texturesMarek Olšák
I don't remember why the alignment was there, but it seems to be no longer needed. I guess it was a dirty fix for some other bug.
2010-07-24nvfx: Move declaration before code.Vinson Lee
2010-07-24glx: Drop duplicate psc field in drisw context structKristian Høgsberg
Causing a crash in drisw MakeCurrent.
2010-07-23glx: Fix another case of confusing driContext and dri2_context *Eric Anholt
2010-07-23glx: Correctly look up the dri2 context pointer for SetTexBuffer.Eric Anholt
gc->driContext points at the second member of the dri2 context. The dri2 context is just a subclass of the GLX context. Fixes piglit tfp testcase.
2010-07-23glx: Don't destroy context with XID 0Kristian Høgsberg
We use XID 0 to indicate the context has already been destroyed, but it's currently bound.
2010-07-23glx: Fix use after free case when destroying screensKristian Høgsberg
2010-07-23glx: zero out drawable structs after allocationKristian Høgsberg
2010-07-23glx: Refactor and simplify context creationKristian Høgsberg
This lets us better separate context creation between the different backends.
2010-07-23glx: Fix indirect screen initializationKristian Høgsberg
https://bugs.freedesktop.org/show_bug.cgi?id=29225