mesa.git
15 years agost/g3dvl: pass color values to softpipe clear function
Cooper Yuan [Tue, 15 Sep 2009 07:25:47 +0000 (15:25 +0800)]
st/g3dvl: pass color values to softpipe clear function

15 years agoxvmc: Generate new resource ID in _XIDHandler, otherwise it's invalid.
Cooper Yuan [Tue, 15 Sep 2009 05:16:56 +0000 (13:16 +0800)]
xvmc: Generate new resource ID in _XIDHandler, otherwise it's invalid.

15 years agost/xorg: add some debugging helpers
Zack Rusin [Mon, 14 Sep 2009 23:01:21 +0000 (19:01 -0400)]
st/xorg: add some debugging helpers

15 years agor600: add span support for 1D tiles
Alex Deucher [Mon, 14 Sep 2009 22:05:15 +0000 (18:05 -0400)]
r600: add span support for 1D tiles

1D tile span support for depth/stencil/color/textures

Z and stencil buffers are always tiled, so this fixes
sw access to Z and stencil buffers.  color and textures
are currently linear, but this adds span support when we
implement 1D tiling.

This fixes the text in progs/demos/engine and progs/tests/z*

15 years agor600: fix warning
Alex Deucher [Mon, 14 Sep 2009 21:08:26 +0000 (17:08 -0400)]
r600: fix warning

Noticed by rnoland on IRC.

15 years agost/mesa: minor whitespace, comment clean-ups
Brian Paul [Mon, 14 Sep 2009 22:01:27 +0000 (16:01 -0600)]
st/mesa: minor whitespace, comment clean-ups

15 years agost/xorg: fix ureg_DECL_constant() parameters
Brian Paul [Mon, 14 Sep 2009 21:47:07 +0000 (15:47 -0600)]
st/xorg: fix ureg_DECL_constant() parameters

This fixes the compilation errors reported in bug 23945 but someone more
familiar with the code should review for correctness and close the bug
report.

15 years agoscons: Allow to use only the WINDDK headers.
José Fonseca [Tue, 1 Sep 2009 09:17:39 +0000 (10:17 +0100)]
scons: Allow to use only the WINDDK headers.

15 years agoscons: Allow to use MS's DXSDK headers with MinGW.
José Fonseca [Tue, 1 Sep 2009 09:11:08 +0000 (10:11 +0100)]
scons: Allow to use MS's DXSDK headers with MinGW.

15 years agogallium: Add pipe_transfer_map/unmap inlines.
José Fonseca [Mon, 1 Jun 2009 16:20:29 +0000 (09:20 -0700)]
gallium: Add pipe_transfer_map/unmap inlines.

15 years agoutil: Add _BitScanForward intrinsic's declaration.
José Fonseca [Mon, 1 Jun 2009 15:58:34 +0000 (08:58 -0700)]
util: Add _BitScanForward intrinsic's declaration.

It is missing in some Microsoft DDKs.

15 years agointel: minor code clean-ups
Brian Paul [Mon, 14 Sep 2009 18:42:07 +0000 (12:42 -0600)]
intel: minor code clean-ups

15 years agointel: fix renderbuffer map/unmap regression
Brian Paul [Mon, 14 Sep 2009 18:40:53 +0000 (12:40 -0600)]
intel: fix renderbuffer map/unmap regression

Commit 36dd53a3cded9d003ec418732b7fc93c1476aa9b caused a few regressions
because the glReadBuffer() buffer wasn't getting mapped when GL_READ_BUFFER
!= GL_DRAW_BUFFER.

15 years agointel: remove unneeded driver function assignments
Brian Paul [Fri, 11 Sep 2009 20:49:00 +0000 (14:49 -0600)]
intel: remove unneeded driver function assignments

These default swrast functions are already installed by
_mesa_init_driver_functions().

15 years agoprogs/tests: exercise display lists and pixelstore
Brian Paul [Fri, 11 Sep 2009 17:14:12 +0000 (11:14 -0600)]
progs/tests: exercise display lists and pixelstore

15 years agomesa/st: remove dead comment
Keith Whitwell [Mon, 14 Sep 2009 16:11:09 +0000 (17:11 +0100)]
mesa/st: remove dead comment

15 years agost/mesa: convert to new tgsi_ureg mechanism for shader emit
Keith Whitwell [Sat, 12 Sep 2009 21:22:48 +0000 (14:22 -0700)]
st/mesa: convert to new tgsi_ureg mechanism for shader emit

Should be easier to read and work with than the older ways of emitting
TGSI tokens.

Also, emit simpler TGSI than previously:
  - translate away source and dest extended modifiers
  - translate away the SWZ opcode

15 years agonv50: Fix m2mf positions.
Marcin Kościelnicki [Mon, 14 Sep 2009 09:56:55 +0000 (09:56 +0000)]
nv50: Fix m2mf positions.

15 years agollvmpipe: Make lp_type a regular union.
José Fonseca [Mon, 14 Sep 2009 10:05:06 +0000 (11:05 +0100)]
llvmpipe: Make lp_type a regular union.

Union not worth the hassle of violating C99 or adding a name to
the structure.

15 years agoutil: Fix a1r5g5b5's format description.
José Fonseca [Mon, 14 Sep 2009 10:01:27 +0000 (11:01 +0100)]
util: Fix a1r5g5b5's format description.

15 years agog3dvl: update tgsi_opcode in order to build g3dvl library
Cooper Yuan [Mon, 14 Sep 2009 08:23:03 +0000 (16:23 +0800)]
g3dvl: update tgsi_opcode in order to build g3dvl library

15 years agotgsi: handle some src/dst aliasing in tgsi_sse2.c
Keith Whitwell [Sun, 13 Sep 2009 18:59:24 +0000 (11:59 -0700)]
tgsi: handle some src/dst aliasing in tgsi_sse2.c

Src/Dst aliasing (aka SOA dependencies) requires some care to ensure
intermediate results do not overwrite yet-to-be read source registers.

This change ensures that MOV/SWZ handle this correctly, which is poor but
no worse than the current tgsi_exec.c path.  Remove the fallback as there
is nothing to be gained correctness-wise between the two implementations now.

Fixing this properly looks like a bit of work in this code, but might be
easily achieved by sending destination writes to temporary storage.

15 years agollvmpipe: Compute derivatives.
José Fonseca [Sun, 13 Sep 2009 15:22:27 +0000 (16:22 +0100)]
llvmpipe: Compute derivatives.

15 years agollvmpipe: Remove dead references to pipe_winsys.
José Fonseca [Sun, 13 Sep 2009 15:13:12 +0000 (16:13 +0100)]
llvmpipe: Remove dead references to pipe_winsys.

15 years agollvmpipe: Use const keyword for input array arguments.
José Fonseca [Sun, 13 Sep 2009 15:12:48 +0000 (16:12 +0100)]
llvmpipe: Use const keyword for input array arguments.

15 years agollvmpipe: Delay storing into the dst register to prevent clobbering the src registers.
José Fonseca [Sun, 13 Sep 2009 13:42:52 +0000 (14:42 +0100)]
llvmpipe: Delay storing into the dst register to prevent clobbering the src registers.

How I'm thankful for regular expressions -- just a couple of them were
all that was needed to do this otherwise tiresome and bug prone change.

15 years agollvmpipe: Translate more TGSI opcodes.
José Fonseca [Sun, 13 Sep 2009 12:55:08 +0000 (13:55 +0100)]
llvmpipe: Translate more TGSI opcodes.

Basically cover all low hanging fruit, and mark the still missing opcodes
as "fixme" or deprecated.

15 years agollvmpipe: Add a few more common arithmetic functions.
José Fonseca [Sun, 13 Sep 2009 12:50:19 +0000 (13:50 +0100)]
llvmpipe: Add a few more common arithmetic functions.

We are relying on SSE4.1 for round/trunc/ceil/floor. We'll need to
eventually find alternatives for the rest of the world.

15 years agollvmpipe: Rename function to free up lp_build_trunc to the usual arithmetic meaning.
José Fonseca [Sun, 13 Sep 2009 12:45:48 +0000 (13:45 +0100)]
llvmpipe: Rename function to free up lp_build_trunc to the usual arithmetic meaning.

15 years agotgsi: implement saturation
Keith Whitwell [Sun, 13 Sep 2009 01:33:46 +0000 (18:33 -0700)]
tgsi: implement saturation

Fix recent performance regression.

15 years agotgsi: add missing implementation of constant decl change
Keith Whitwell [Sat, 12 Sep 2009 22:58:34 +0000 (15:58 -0700)]
tgsi: add missing implementation of constant decl change

15 years agor300g: delete unused flag due to commit: 09b566e1610
Cooper Yuan [Sun, 13 Sep 2009 11:10:34 +0000 (07:10 -0400)]
r300g: delete unused flag due to commit: 09b566e1610

15 years agoureg: add a mechanism to get the built tokens rather than a full shader
Keith Whitwell [Sat, 12 Sep 2009 21:18:50 +0000 (14:18 -0700)]
ureg: add a mechanism to get the built tokens rather than a full shader

Previously ureg would always call the driver's create-shader function.  This
allows the caller the opportunity to hold onto the tokens if it needs to
reuse them, eg. to create an internal draw shader.

15 years agoureg: add generic emitters for tex and branch instructions
Keith Whitwell [Sat, 12 Sep 2009 21:18:00 +0000 (14:18 -0700)]
ureg: add generic emitters for tex and branch instructions

Couldn't previously emit these except by calling the opcode-specific helper.

15 years agotgsi/ureg: give ureg_DECL_constant an explicit index parameter
Keith Whitwell [Sat, 12 Sep 2009 21:16:00 +0000 (14:16 -0700)]
tgsi/ureg: give ureg_DECL_constant an explicit index parameter

Avoid the need to emit all constant declarations in order.  Makes
referring to a specific constant in the constant buffer much easier.

15 years agomesa: remove unused SATURATE_PLUS_MINUS_ONE flag
Keith Whitwell [Sat, 12 Sep 2009 21:13:44 +0000 (14:13 -0700)]
mesa: remove unused SATURATE_PLUS_MINUS_ONE flag

Never set in mesa.  Remove from tgsi translation as well.

15 years agotgsi/ureg: VS inputs don't have any semantic tags, just an index
Keith Whitwell [Sat, 12 Sep 2009 21:12:35 +0000 (14:12 -0700)]
tgsi/ureg: VS inputs don't have any semantic tags, just an index

Fix ureg_DECL_vs_input to reflect this and fix up all callers.

15 years agotgsi: free tokens on error
Keith Whitwell [Sat, 12 Sep 2009 21:07:48 +0000 (14:07 -0700)]
tgsi: free tokens on error

15 years agotgsi: sanity check ureg programs
Keith Whitwell [Sat, 12 Sep 2009 21:05:37 +0000 (14:05 -0700)]
tgsi: sanity check ureg programs

15 years agotgsi: add const qualifier
Keith Whitwell [Sat, 12 Sep 2009 21:04:36 +0000 (14:04 -0700)]
tgsi: add const qualifier

15 years agor300g: There is no such thing as "texture stride"
Nicolai Hähnle [Sat, 12 Sep 2009 14:34:55 +0000 (16:34 +0200)]
r300g: There is no such thing as "texture stride"

Individual texture images have a stride, but textures as a whole do not.

There are still pieces of code which are confused about this, but the core of
the confusion is hopefully gone.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agoi965: Move OPCODE_DDX/DDY to brw_wm_emit.c and make it actually work.
Eric Anholt [Fri, 11 Sep 2009 21:09:03 +0000 (14:09 -0700)]
i965: Move OPCODE_DDX/DDY to brw_wm_emit.c and make it actually work.

Previously, it was trying to mess around with the varying's
WM setup data to produce a result.  Along with not actually working when
passed a varying, this wouldn't work if you did dFd[xy]() on a temporary.
Instead, just calculate the derivative using the neighbors in the subspan.

15 years agor600: fix texcoords from constants
Andre Maasikas [Fri, 11 Sep 2009 19:59:55 +0000 (15:59 -0400)]
r600: fix texcoords from constants

with some minor updates from Richard.

15 years agoRevert "r600: support tex coords from constants"
Alex Deucher [Fri, 11 Sep 2009 16:10:15 +0000 (12:10 -0400)]
Revert "r600: support tex coords from constants"

This reverts commit 4099bb76148007f9ccb6c86838b2bf37ea42de56.

Tex coord src has to be a GPR.

15 years agor300g: only allocate one BO for vertex buffers, default size is 64*1024
Cooper Yuan [Fri, 11 Sep 2009 15:21:28 +0000 (23:21 +0800)]
r300g: only allocate one BO for vertex buffers, default size is 64*1024

it can fix redbook/sceneflat, scene, scenebamb, surface, nurbs and so on

15 years agor600: support tex coords from constants
Alex Deucher [Fri, 11 Sep 2009 15:07:58 +0000 (11:07 -0400)]
r600: support tex coords from constants

Fixes neverball among other things.

15 years agor600: enable caching of vertex programs
Andre Maasikas [Fri, 11 Sep 2009 14:59:05 +0000 (10:59 -0400)]
r600: enable caching of vertex programs

15 years agollvmpipe: set dirty_render_cache in llvmpipe_clear()
José Fonseca [Fri, 11 Sep 2009 10:29:24 +0000 (11:29 +0100)]
llvmpipe: set dirty_render_cache in llvmpipe_clear()

Based on Brian's softpipe change on
commit 988db641195819c948249a1bb2d59f13577a482f. We don't use the tile
cache for zsbuf though, only for color buffers.

15 years agollvmpipe: Update status in README and TODO/FIXME comments throughout the code.
José Fonseca [Fri, 11 Sep 2009 10:24:00 +0000 (11:24 +0100)]
llvmpipe: Update status in README and TODO/FIXME comments throughout the code.

15 years agoi965: Enable loops in the VS.
Eric Anholt [Thu, 10 Sep 2009 16:44:30 +0000 (09:44 -0700)]
i965: Enable loops in the VS.

Passes piglit glsl-vs-loop testcase.

Bug #20171

15 years agomesa: nicer vertex setup
Brian Paul [Fri, 11 Sep 2009 01:56:35 +0000 (19:56 -0600)]
mesa: nicer vertex setup

15 years agost/mesa: use st_context() helper
Brian Paul [Fri, 11 Sep 2009 01:40:53 +0000 (19:40 -0600)]
st/mesa: use st_context() helper

15 years agosoftpipe: remove no-op softpipe_init_texture_funcs() function
Brian Paul [Thu, 10 Sep 2009 22:51:52 +0000 (16:51 -0600)]
softpipe: remove no-op softpipe_init_texture_funcs() function

15 years agosoftpipe: remove unused #includes, move comment
Brian Paul [Thu, 10 Sep 2009 22:50:18 +0000 (16:50 -0600)]
softpipe: remove unused #includes, move comment

15 years agoutil: remove unneeded #includes
Brian Paul [Thu, 10 Sep 2009 22:45:25 +0000 (16:45 -0600)]
util: remove unneeded #includes

15 years agosoftpipe: reformatting, clean-ups, comments
Brian Paul [Thu, 10 Sep 2009 22:42:47 +0000 (16:42 -0600)]
softpipe: reformatting, clean-ups, comments

15 years agoutil: minor clean-ups, reformatting
Brian Paul [Thu, 10 Sep 2009 22:39:13 +0000 (16:39 -0600)]
util: minor clean-ups, reformatting

15 years agosoftpipe: remove unneeded #includes
Brian Paul [Thu, 10 Sep 2009 22:38:51 +0000 (16:38 -0600)]
softpipe: remove unneeded #includes

15 years agoMerge branch 'mesa_7_6_branch'
Brian Paul [Thu, 10 Sep 2009 21:41:52 +0000 (15:41 -0600)]
Merge branch 'mesa_7_6_branch'

15 years agost/xorg: rename ctx to pipe to match every other gallium state tracker
Zack Rusin [Wed, 9 Sep 2009 21:38:13 +0000 (17:38 -0400)]
st/xorg: rename ctx to pipe to match every other gallium state tracker

plus it avoids the "ctx->ctx->" syntax

15 years agoMerge branch 'mesa_7_5_branch' into mesa_7_6_branch
Brian Paul [Thu, 10 Sep 2009 21:40:26 +0000 (15:40 -0600)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch

15 years agointel: disable intel_stencil_drawpixels() for now
Brian Paul [Thu, 10 Sep 2009 21:34:34 +0000 (15:34 -0600)]
intel: disable intel_stencil_drawpixels() for now

It doesn't work reliably even when all the prerequisite checks are made.

15 years agost/xorg: temporarily disablie copies
Zack Rusin [Wed, 9 Sep 2009 21:16:02 +0000 (17:16 -0400)]
st/xorg: temporarily disablie copies

15 years agost/xorg: implement pipelines surface/texture copies
Zack Rusin [Wed, 9 Sep 2009 21:14:21 +0000 (17:14 -0400)]
st/xorg: implement pipelines surface/texture copies

15 years agost/xorg: unite finalization and stub out pipelined copies
Zack Rusin [Wed, 9 Sep 2009 20:08:00 +0000 (16:08 -0400)]
st/xorg: unite finalization and stub out pipelined copies

15 years agost/xorg: abstract flushing and syncing for the exa code
Zack Rusin [Wed, 9 Sep 2009 19:43:09 +0000 (15:43 -0400)]
st/xorg: abstract flushing and syncing for the exa code

15 years agost/xorg: disable solid fills until copies are accelerated as well
Zack Rusin [Wed, 9 Sep 2009 15:35:34 +0000 (11:35 -0400)]
st/xorg: disable solid fills until copies are accelerated as well

15 years agost/xorg: implement exasolids with full pipelining
Zack Rusin [Wed, 9 Sep 2009 15:33:33 +0000 (11:33 -0400)]
st/xorg: implement exasolids with full pipelining

plus fix some small issues with the shaders

15 years agost/xorg: start adding support for surface fills
Zack Rusin [Wed, 9 Sep 2009 09:34:56 +0000 (05:34 -0400)]
st/xorg: start adding support for surface fills

15 years agodocs: document Gallium glDrawPixels(GL_STENCIL_INDEX) fix
Brian Paul [Thu, 10 Sep 2009 20:15:07 +0000 (14:15 -0600)]
docs: document Gallium glDrawPixels(GL_STENCIL_INDEX) fix

15 years agosoftpipe: minor indentation fix
Brian Paul [Thu, 10 Sep 2009 20:14:18 +0000 (14:14 -0600)]
softpipe: minor indentation fix

15 years agosoftpipe: set dirty_render_cache in softpipe_clear()
Brian Paul [Thu, 10 Sep 2009 20:11:36 +0000 (14:11 -0600)]
softpipe: set dirty_render_cache in softpipe_clear()

This fixes a bug seen when doing a glDrawPixels(GL_STENCIL_INDEX) right
after a glClear().  The check-for-flush test was failing because we
didn't set the dirty_render_cache flag in softpipe_clear().  So we saw
stale data when we mapped the stencil buffer.

15 years agonv50: Fix tiling mode for lower mipmap levels.
Marcin Kościelnicki [Thu, 10 Sep 2009 18:26:42 +0000 (18:26 +0000)]
nv50: Fix tiling mode for lower mipmap levels.

15 years agodocs: initial 7.5.2 release notes page
Brian Paul [Thu, 10 Sep 2009 18:50:08 +0000 (12:50 -0600)]
docs: initial 7.5.2 release notes page

15 years agoFix merge fail
Ian Romanick [Thu, 10 Sep 2009 18:44:53 +0000 (11:44 -0700)]
Fix merge fail

One of the conflicst from this merge was missed:

commit 0c309bb494b6ee1c403442d1207743f749f95b6e
Merge: c6c44bf d27d659
Author: Brian Paul <brianp@vmware.com>
Date:   Wed Sep 9 08:33:39 2009 -0600

15 years agotgsi: use new tgsi_call_record to handle execution mask stacks
Brian Paul [Thu, 10 Sep 2009 18:44:28 +0000 (12:44 -0600)]
tgsi: use new tgsi_call_record to handle execution mask stacks

This fixes some issues when "return"ing from nested loops/conditionals.

15 years agomesa: need to set all stencil bits to 0 before setting the 1 bits
Brian Paul [Thu, 10 Sep 2009 16:17:07 +0000 (10:17 -0600)]
mesa: need to set all stencil bits to 0 before setting the 1 bits

Plus, check for pixel transfer stencil index/offset.

15 years agoMerge branch 'mesa_7_5_branch' into mesa_7_6_branch
Ian Romanick [Thu, 10 Sep 2009 18:24:56 +0000 (11:24 -0700)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch

Conflicts:
src/mesa/drivers/dri/intel/intel_context.c

15 years agoi965: Fix relocation delta for WM surfaces.
Eric Anholt [Wed, 9 Sep 2009 19:35:30 +0000 (12:35 -0700)]
i965: Fix relocation delta for WM surfaces.

This was a regression in 0f328c90dbc893e15005f2ab441d309c1c176245.

Bug #23688
Bug #23254
(cherry picked from commit 5604b27b9326ac542069a49ed9650c4b0d3e939a)

15 years agointel: add B43 chipset support
Zhenyu Wang [Mon, 7 Sep 2009 08:18:57 +0000 (16:18 +0800)]
intel: add B43 chipset support

Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Hopefully this will be one of the last cherry-picks.

(cherry picked from commit ca246dd186f9590f6d67038832faceb522138c20)

15 years agointel: Don't forget to map the depth read buffer in spans.
Eric Anholt [Thu, 10 Sep 2009 16:26:38 +0000 (09:26 -0700)]
intel: Don't forget to map the depth read buffer in spans.

This broke BlitFramebufferEXT(GL_DEPTH_BUFFER_BIT).

15 years agor300: enable rb3d_discard_src_pixel_lte_threshold for more chips on dri2
Alex Deucher [Thu, 10 Sep 2009 16:04:38 +0000 (12:04 -0400)]
r300: enable rb3d_discard_src_pixel_lte_threshold for more chips on dri2

15 years agor300: add full support for two sided stencil on r5xx for dri2
Alex Deucher [Thu, 10 Sep 2009 16:01:19 +0000 (12:01 -0400)]
r300: add full support for two sided stencil on r5xx for dri2

15 years agomesa: fix cut&paste typos
Mathias Frohlich [Thu, 10 Sep 2009 14:50:01 +0000 (08:50 -0600)]
mesa: fix cut&paste typos

15 years agomesa: in texenvprogram code, only do saturation when really needed.
Brian Paul [Thu, 10 Sep 2009 14:41:12 +0000 (08:41 -0600)]
mesa: in texenvprogram code, only do saturation when really needed.

For some env modes (like modulate or replace) we don't have to clamp
because we know the results will be in [0,1].

15 years agogallium: Add PIPE_OS_APPLE back to auxiliary/util/u_time.h.
Vinson Lee [Thu, 10 Sep 2009 14:39:26 +0000 (08:39 -0600)]
gallium: Add PIPE_OS_APPLE back to auxiliary/util/u_time.h.

Fixes typo from commit c6c44bf48124dd5b4661014a8d58482c5a54557f.

15 years agoutil: Add PIPE_OS_APPLE back to auxiliary/util/u_time.h.
Vinson Lee [Thu, 10 Sep 2009 14:33:57 +0000 (15:33 +0100)]
util: Add PIPE_OS_APPLE back to auxiliary/util/u_time.h.

Fixes typo from commit c6c44bf48124dd5b4661014a8d58482c5a54557f.

15 years agoradeon: Change debugging code to use macros instead of inline functions.
Pauli Nieminen [Thu, 10 Sep 2009 13:41:59 +0000 (16:41 +0300)]
radeon: Change debugging code to use macros instead of inline functions.

Variadic functions can't be inlined which makes debugging to have quite large
function overead. Only aleternative method is to use variadic macros which are
inlined so compiler can optimize debugging to minimize overhead.

15 years agollvmpipe: Fix alpha test.
José Fonseca [Thu, 10 Sep 2009 12:35:39 +0000 (13:35 +0100)]
llvmpipe: Fix alpha test.

15 years agollvmpipe: Mask out color channels not present in the color buffer.
José Fonseca [Thu, 10 Sep 2009 11:37:44 +0000 (12:37 +0100)]
llvmpipe: Mask out color channels not present in the color buffer.

15 years agollvmpipe: Fix sampling from depth textures. Respect texture compare func.
José Fonseca [Thu, 10 Sep 2009 11:14:53 +0000 (12:14 +0100)]
llvmpipe: Fix sampling from depth textures. Respect texture compare func.

Fixes Mesa shadowtex sample.

15 years agollvmpipe: Skip blending when mask is zero.
José Fonseca [Thu, 10 Sep 2009 11:01:42 +0000 (12:01 +0100)]
llvmpipe: Skip blending when mask is zero.

This increases quake3 timedemo fps another 10%.

15 years agollvmpipe: Proper control flow builders.
José Fonseca [Thu, 10 Sep 2009 10:44:03 +0000 (11:44 +0100)]
llvmpipe: Proper control flow builders.

New control flow helper functions which keep track of all variables
and generate the correct Phi functions.

This re-enables skipping the fs execution of quads masked out by
the rasterizer, early z testing, and kill opcode.

This yields a performance improvement of around 20%.

15 years agollvmpipe: Copy the texture target into the sampler static state.
José Fonseca [Thu, 10 Sep 2009 08:19:51 +0000 (09:19 +0100)]
llvmpipe: Copy the texture target into the sampler static state.

Hunk forgotten in previous commit.

15 years agollvmpipe: Quick hack for 1D textures.
José Fonseca [Wed, 9 Sep 2009 20:46:18 +0000 (21:46 +0100)]
llvmpipe: Quick hack for 1D textures.

15 years agoscons: Pass -mstackrealign option to gcc.
José Fonseca [Wed, 9 Sep 2009 20:45:08 +0000 (21:45 +0100)]
scons: Pass -mstackrealign option to gcc.

It is impossible to have gcc generate SSE code without it, as thirdparty
applications often call us with an unaligned stack pointer.

15 years agollvmpipe: Fix depth mask computation.
José Fonseca [Wed, 9 Sep 2009 20:17:20 +0000 (21:17 +0100)]
llvmpipe: Fix depth mask computation.

Fixes depth test for 24bit depth formats.

15 years agollvmpipe: Include zsbuf's format in the fragment shader key.
José Fonseca [Wed, 9 Sep 2009 20:16:06 +0000 (21:16 +0100)]
llvmpipe: Include zsbuf's format in the fragment shader key.

15 years agoutil: Fix depth/stencil format description.
José Fonseca [Wed, 9 Sep 2009 20:13:52 +0000 (21:13 +0100)]
util: Fix depth/stencil format description.

Inverse channel order.

15 years agollvmpipe: Debug function to check stack alignment.
José Fonseca [Wed, 9 Sep 2009 18:21:22 +0000 (19:21 +0100)]
llvmpipe: Debug function to check stack alignment.

Doing alignment check in locus is redundant, as gcc alignment assumptions
will optimize away the check.