Michal Krol [Wed, 16 Sep 2009 19:51:12 +0000 (21:51 +0200)]
glsl/pp: Validate numbers.
Michal Krol [Wed, 16 Sep 2009 18:40:02 +0000 (20:40 +0200)]
glsl/pp: Add more error messages.
Michal Krol [Wed, 16 Sep 2009 18:28:20 +0000 (20:28 +0200)]
slang: Propagate error messages from preprocessor.
Michal Krol [Wed, 16 Sep 2009 18:27:59 +0000 (20:27 +0200)]
glsl/pp: Add more error messages.
Michal Krol [Wed, 16 Sep 2009 17:24:50 +0000 (19:24 +0200)]
slang: Invoke the preprocessor from withing the slang compiler.
This allows us to validate the shader version number.
Michal Krol [Mon, 14 Sep 2009 11:09:36 +0000 (13:09 +0200)]
glsl/pp: Support GL_ARB_draw_buffers and GL_ARB_texture_rectangle.
Michal Krol [Mon, 14 Sep 2009 11:08:16 +0000 (13:08 +0200)]
grammar: Adapt to pp interface change.
Michal Krol [Mon, 14 Sep 2009 11:08:07 +0000 (13:08 +0200)]
glsl/apps: Adapt to pp interface change.
Michal Krol [Mon, 14 Sep 2009 11:07:25 +0000 (13:07 +0200)]
glsl/pp: Add a dictionary to a context.
Michal Krol [Mon, 14 Sep 2009 09:22:05 +0000 (11:22 +0200)]
Merge commit 'origin/master' into glsl-pp-rework-2
Cooper Yuan [Mon, 14 Sep 2009 08:23:03 +0000 (16:23 +0800)]
g3dvl: update tgsi_opcode in order to build g3dvl library
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.
José Fonseca [Sun, 13 Sep 2009 15:22:27 +0000 (16:22 +0100)]
llvmpipe: Compute derivatives.
José Fonseca [Sun, 13 Sep 2009 15:13:12 +0000 (16:13 +0100)]
llvmpipe: Remove dead references to pipe_winsys.
José Fonseca [Sun, 13 Sep 2009 15:12:48 +0000 (16:12 +0100)]
llvmpipe: Use const keyword for input array arguments.
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.
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.
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.
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.
Keith Whitwell [Sun, 13 Sep 2009 01:33:46 +0000 (18:33 -0700)]
tgsi: implement saturation
Fix recent performance regression.
Keith Whitwell [Sat, 12 Sep 2009 22:58:34 +0000 (15:58 -0700)]
tgsi: add missing implementation of constant decl change
Cooper Yuan [Sun, 13 Sep 2009 11:10:34 +0000 (07:10 -0400)]
r300g: delete unused flag due to commit:
09b566e1610
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.
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.
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.
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.
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.
Keith Whitwell [Sat, 12 Sep 2009 21:07:48 +0000 (14:07 -0700)]
tgsi: free tokens on error
Keith Whitwell [Sat, 12 Sep 2009 21:05:37 +0000 (14:05 -0700)]
tgsi: sanity check ureg programs
Keith Whitwell [Sat, 12 Sep 2009 21:04:36 +0000 (14:04 -0700)]
tgsi: add const qualifier
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>
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.
Andre Maasikas [Fri, 11 Sep 2009 19:59:55 +0000 (15:59 -0400)]
r600: fix texcoords from constants
with some minor updates from Richard.
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.
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
Alex Deucher [Fri, 11 Sep 2009 15:07:58 +0000 (11:07 -0400)]
r600: support tex coords from constants
Fixes neverball among other things.
Andre Maasikas [Fri, 11 Sep 2009 14:59:05 +0000 (10:59 -0400)]
r600: enable caching of vertex programs
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.
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.
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
Brian Paul [Fri, 11 Sep 2009 01:56:35 +0000 (19:56 -0600)]
mesa: nicer vertex setup
Brian Paul [Fri, 11 Sep 2009 01:40:53 +0000 (19:40 -0600)]
st/mesa: use st_context() helper
Brian Paul [Thu, 10 Sep 2009 22:51:52 +0000 (16:51 -0600)]
softpipe: remove no-op softpipe_init_texture_funcs() function
Brian Paul [Thu, 10 Sep 2009 22:50:18 +0000 (16:50 -0600)]
softpipe: remove unused #includes, move comment
Brian Paul [Thu, 10 Sep 2009 22:45:25 +0000 (16:45 -0600)]
util: remove unneeded #includes
Brian Paul [Thu, 10 Sep 2009 22:42:47 +0000 (16:42 -0600)]
softpipe: reformatting, clean-ups, comments
Brian Paul [Thu, 10 Sep 2009 22:39:13 +0000 (16:39 -0600)]
util: minor clean-ups, reformatting
Brian Paul [Thu, 10 Sep 2009 22:38:51 +0000 (16:38 -0600)]
softpipe: remove unneeded #includes
Brian Paul [Thu, 10 Sep 2009 21:41:52 +0000 (15:41 -0600)]
Merge branch 'mesa_7_6_branch'
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
Brian Paul [Thu, 10 Sep 2009 21:40:26 +0000 (15:40 -0600)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch
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.
Zack Rusin [Wed, 9 Sep 2009 21:16:02 +0000 (17:16 -0400)]
st/xorg: temporarily disablie copies
Zack Rusin [Wed, 9 Sep 2009 21:14:21 +0000 (17:14 -0400)]
st/xorg: implement pipelines surface/texture copies
Zack Rusin [Wed, 9 Sep 2009 20:08:00 +0000 (16:08 -0400)]
st/xorg: unite finalization and stub out pipelined copies
Zack Rusin [Wed, 9 Sep 2009 19:43:09 +0000 (15:43 -0400)]
st/xorg: abstract flushing and syncing for the exa code
Zack Rusin [Wed, 9 Sep 2009 15:35:34 +0000 (11:35 -0400)]
st/xorg: disable solid fills until copies are accelerated as well
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
Zack Rusin [Wed, 9 Sep 2009 09:34:56 +0000 (05:34 -0400)]
st/xorg: start adding support for surface fills
Brian Paul [Thu, 10 Sep 2009 20:15:07 +0000 (14:15 -0600)]
docs: document Gallium glDrawPixels(GL_STENCIL_INDEX) fix
Brian Paul [Thu, 10 Sep 2009 20:14:18 +0000 (14:14 -0600)]
softpipe: minor indentation fix
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.
Marcin Kościelnicki [Thu, 10 Sep 2009 18:26:42 +0000 (18:26 +0000)]
nv50: Fix tiling mode for lower mipmap levels.
Brian Paul [Thu, 10 Sep 2009 18:50:08 +0000 (12:50 -0600)]
docs: initial 7.5.2 release notes page
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
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.
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.
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
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)
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)
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).
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
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
Mathias Frohlich [Thu, 10 Sep 2009 14:50:01 +0000 (08:50 -0600)]
mesa: fix cut&paste typos
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].
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.
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.
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.
José Fonseca [Thu, 10 Sep 2009 12:35:39 +0000 (13:35 +0100)]
llvmpipe: Fix alpha test.
José Fonseca [Thu, 10 Sep 2009 11:37:44 +0000 (12:37 +0100)]
llvmpipe: Mask out color channels not present in the color buffer.
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.
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%.
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%.
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.
José Fonseca [Wed, 9 Sep 2009 20:46:18 +0000 (21:46 +0100)]
llvmpipe: Quick hack for 1D textures.
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.
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.
José Fonseca [Wed, 9 Sep 2009 20:16:06 +0000 (21:16 +0100)]
llvmpipe: Include zsbuf's format in the fragment shader key.
José Fonseca [Wed, 9 Sep 2009 20:13:52 +0000 (21:13 +0100)]
util: Fix depth/stencil format description.
Inverse channel order.
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.
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
Brian Paul [Wed, 9 Sep 2009 18:01:28 +0000 (12:01 -0600)]
mesa: include new u_format.csv file in tarballs
Pauli Nieminen [Wed, 9 Sep 2009 15:31:52 +0000 (18:31 +0300)]
radeon: Add more verbose error message for failed command buffer.
Brian Paul [Wed, 9 Sep 2009 15:24:38 +0000 (09:24 -0600)]
i965: fix an overlooked merge conflict
Alex Deucher [Wed, 9 Sep 2009 15:14:17 +0000 (11:14 -0400)]
r600: check if textures are actually enabled before submission
noticed by taiu on IRC.
Brian Paul [Wed, 9 Sep 2009 15:00:58 +0000 (09:00 -0600)]
Merge branch 'mesa_7_6_branch'
Brian Paul [Wed, 9 Sep 2009 14:55:32 +0000 (08:55 -0600)]
mesa: regenerate get.c form get_gen.py
Brian Paul [Wed, 9 Sep 2009 14:54:38 +0000 (08:54 -0600)]
mesa: move call to init_c_cliptest() from enable.c to tnl module.
Fixed gallium build breakage.
Brian Paul [Wed, 9 Sep 2009 14:33:39 +0000 (08:33 -0600)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch
Conflicts:
Makefile
configs/default
progs/glsl/Makefile
src/gallium/auxiliary/util/u_simple_shaders.c
src/gallium/state_trackers/glx/xlib/xm_api.c
src/mesa/drivers/dri/i965/brw_draw_upload.c
src/mesa/drivers/dri/i965/brw_vs_emit.c
src/mesa/drivers/dri/intel/intel_context.h
src/mesa/drivers/dri/intel/intel_pixel.c
src/mesa/drivers/dri/intel/intel_pixel_read.c
src/mesa/main/texenvprogram.c
src/mesa/main/version.h
aljen [Sat, 5 Sep 2009 21:06:53 +0000 (23:06 +0200)]
gallium: Added HaikuOS platform