Jerome Glisse [Sun, 6 Jun 2010 20:13:24 +0000 (22:13 +0200)]
r600g: add shader literal constant support
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Marek Olšák [Sun, 6 Jun 2010 18:49:14 +0000 (20:49 +0200)]
st/mesa: advertise GL_ARB_fragment_program_shadow
There is nothing driver-specific about this one.
I've also tested it just to be sure.
Marek Olšák [Mon, 26 Apr 2010 04:10:06 +0000 (06:10 +0200)]
r300g: workaround index bias on chipsets that do not support it
Marek Olšák [Sat, 5 Jun 2010 17:33:29 +0000 (19:33 +0200)]
st/mesa: trivially enable GL_ATI_texture_env_combine3
This extension is implemented in the texenv program.
Gallium drivers pass patched glean/texCombine.
(I am going to send the patch soon)
Catalyst9.3 advertises this extension too so I don't see a reason we shouldn't.
Marek Olšák [Sat, 5 Jun 2010 15:40:53 +0000 (17:40 +0200)]
mesa: add ARB_texture_swizzle as alias of EXT_texture_swizzle, update relnotes
The specifications are identical.
Jakob Bornecrantz [Tue, 1 Jun 2010 16:29:40 +0000 (17:29 +0100)]
i915g: Use template Xorg makefile
Jakob Bornecrantz [Tue, 1 Jun 2010 16:33:15 +0000 (17:33 +0100)]
gallium: Use correct defines in Xorg template makefile
Jakob Bornecrantz [Tue, 1 Jun 2010 16:29:13 +0000 (17:29 +0100)]
gallium: Add winsys to include path to Xorg template makefile
Joakim Sindholt [Sat, 5 Jun 2010 14:53:38 +0000 (16:53 +0200)]
gallium: always build drivers/sw
Joakim Sindholt [Sat, 5 Jun 2010 14:23:05 +0000 (16:23 +0200)]
r300compiler: fix scons build
Jerome Glisse [Sat, 5 Jun 2010 11:16:50 +0000 (13:16 +0200)]
r600g: split instruction into scalar
Split instruction into scalar in core compiler this simplify
the way we translate the instruction in latter stage.
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Roland Scheidegger [Sat, 5 Jun 2010 14:55:51 +0000 (16:55 +0200)]
Revert "llvmpipe: handle PIPE_CAP_TEXTURE_SWIZZLE query"
This reverts commit
acb20e7208341fb6a2b81ac10aa01f17e93a1dea.
Oops should check commits after rebase...
Roland Scheidegger [Sat, 5 Jun 2010 14:49:51 +0000 (16:49 +0200)]
i915g: fix bug in ds clear logic (still disabled)
Roland Scheidegger [Sat, 5 Jun 2010 14:44:31 +0000 (16:44 +0200)]
st/mesa: fix bug in depthstencil optimizing clear logic
Roland Scheidegger [Sat, 5 Jun 2010 14:18:06 +0000 (16:18 +0200)]
llvmpipe: handle PIPE_CAP_TEXTURE_SWIZZLE query
asserts on unknown caps
José Fonseca [Sat, 5 Jun 2010 13:48:39 +0000 (14:48 +0100)]
llvmpipe: Expose PIPE_CAP_TEXTURE_SWIZZLE.
Chris Wilson [Sat, 5 Jun 2010 09:04:59 +0000 (10:04 +0100)]
i915: Only emit a MI_FLUSH when the drawing rectangle offset changes.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Chris Wilson [Sat, 5 Jun 2010 08:33:58 +0000 (09:33 +0100)]
i915: Fix off-by-one for drawing rectangle.
The drawing rectangle is given in *inclusive* pixel values, so the range
is only [0,2047]. Hence when rendering to a 2048 wide target, such as an
extended desktop, we would issue an illegal instruction zeroing the draw
area.
Fixes:
Bug 27408: Primary and Secondary display blanks in extended
desktop mode with Compiz enabled
https://bugs.freedesktop.org/show_bug.cgi?id=27408
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Chris Wilson [Sat, 5 Jun 2010 08:32:28 +0000 (09:32 +0100)]
i915: Inhibit render cache flush when changing drawing rectangle offset.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Dave Airlie [Tue, 27 Apr 2010 11:06:44 +0000 (21:06 +1000)]
mesa/st: add support for EXT_texture_swizzle.
This passes on r300g, the only bit I'm not really sure about is the handling
of the sampler_view in st_atom_texture.c, I unreference it there if the swizzle
value changes and I also have to create a new set of functions to create a new
one since the u_sampler.c ones don't handle swizzle so much.
adds r300g + softpipe enables, I think other drivers could pass easily enough.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Marek Olšák [Sat, 5 Jun 2010 03:07:41 +0000 (05:07 +0200)]
r300/compiler: implement SIN+COS+SCS for vertex shaders
Marek Olšák [Sat, 5 Jun 2010 02:58:40 +0000 (04:58 +0200)]
r300/compiler: implement SNE unwound for r3xx VS, natively for r5xx VS
Marek Olšák [Sat, 5 Jun 2010 02:18:28 +0000 (04:18 +0200)]
r300/compiler: implement SEQ unwound for r3xx VS, natively for r5xx VS
Fixes piglit/glsl-vs-vec4-indexing-4.
Marek Olšák [Fri, 4 Jun 2010 21:10:11 +0000 (23:10 +0200)]
r300/compiler: implement SFL for vertex shaders
And sort the "case" statements alphabetically.
Brian Paul [Fri, 4 Jun 2010 23:47:34 +0000 (17:47 -0600)]
docs: note that the Mesa demos are in a new repo
Brian Paul [Fri, 4 Jun 2010 23:47:06 +0000 (17:47 -0600)]
docs: links to the Mesa demos git repo
Brian Paul [Fri, 4 Jun 2010 23:42:04 +0000 (17:42 -0600)]
mesa: remove PROGRAM_DIRS from config files
Brian Paul [Fri, 4 Jun 2010 23:36:17 +0000 (17:36 -0600)]
mesa: remove old references to demo files and progs subdir
Brian Paul [Fri, 4 Jun 2010 23:29:59 +0000 (17:29 -0600)]
progs: remove rbug subdir
Brian Paul [Fri, 4 Jun 2010 23:29:01 +0000 (17:29 -0600)]
demos: remove fbdev subdir
Brian Paul [Fri, 4 Jun 2010 23:27:50 +0000 (17:27 -0600)]
progs: remove beos subdir
Brian Paul [Fri, 4 Jun 2010 23:26:28 +0000 (17:26 -0600)]
progs: remove tools subdir
Brian Paul [Fri, 4 Jun 2010 23:25:36 +0000 (17:25 -0600)]
progs: remove slang subdir
Brian Paul [Fri, 4 Jun 2010 23:24:40 +0000 (17:24 -0600)]
vbo: misc clean-ups
Vinson Lee [Fri, 4 Jun 2010 23:18:27 +0000 (16:18 -0700)]
i915g: Rename winsys c file.
This was missed in commit
e7f0f6bb72c63fd6e6ddcb7a815be68682f1764c.
Fixes i915g SCons build.
Brian Paul [Fri, 4 Jun 2010 23:00:48 +0000 (17:00 -0600)]
llvmpipe: new -s option to run single test
Put specific test code in the test_single() function and pass -s to
execute that code.
Eric Anholt [Fri, 4 Jun 2010 20:40:48 +0000 (13:40 -0700)]
i915: Don't use XRGB8888 on 830 and 845.
The support for XRGB8888 appeared in the 855 and 865, and this format
is reserved on 830/845. This should fix a regression from
b4a6169412819cc3a027c6a118f0537911145a30 that caused hangs in etracer
on 845s.
Bug #26557.
Eric Anholt [Fri, 4 Jun 2010 20:27:05 +0000 (13:27 -0700)]
i915: Clamp minimum lod to maximum texture level too.
Otherwise, we'd run into minlod > maxlod, and the sampler would give
us the undefined we asked for.
Bug #24846. Fixes OGLC texlod.c.
Eric Anholt [Fri, 4 Jun 2010 19:43:15 +0000 (12:43 -0700)]
intel: Fix intel_compressed_num_bytes for FXT1 after I broke it.
Fixes piglit fxt1-teximage since
7554b83a21bd62b20df5a7327b69f08108ac9ab6, and also OGLC tests that hit
FXT1 with a million other things.
Bug #28184.
Kristian Høgsberg [Fri, 4 Jun 2010 13:06:22 +0000 (09:06 -0400)]
glsl: Recject rect samplers when GL_ARB_texture_rectangle is disabled
José Fonseca [Fri, 4 Jun 2010 11:22:14 +0000 (12:22 +0100)]
llvmpipe: Do unswizzling in parallel when flushing for transfers.
José Fonseca [Fri, 4 Jun 2010 11:20:46 +0000 (12:20 +0100)]
progs: Remove forked/dead files.
Chia-I Wu [Fri, 4 Jun 2010 04:52:51 +0000 (12:52 +0800)]
st/egl: Fix compiler warnings.
Forgot to stage this chunk in last commit.
Chia-I Wu [Fri, 4 Jun 2010 04:05:37 +0000 (12:05 +0800)]
st/egl: Move sw screen creation to native helper.
The code is shared by ximage and gdi backend.
Vinson Lee [Fri, 4 Jun 2010 01:41:19 +0000 (18:41 -0700)]
scons: Add cygwin to list of accepted platforms.
Marek Olšák [Fri, 4 Jun 2010 00:59:37 +0000 (02:59 +0200)]
r600g: implement clear_{render_target, depth_stencil}, resource_copy_region
resource_copy_region uses a software fallback because it relies on texture
samplers which haven't been implemented yet.
Marek Olšák [Fri, 4 Jun 2010 00:57:32 +0000 (02:57 +0200)]
r600g: make blit functions static (private)
Marek Olšák [Fri, 4 Jun 2010 00:47:35 +0000 (02:47 +0200)]
r600g: use cast wrappers
Vinson Lee [Fri, 4 Jun 2010 00:41:57 +0000 (17:41 -0700)]
r600g: Move declaration before code.
Fixes SCons build.
Vinson Lee [Fri, 4 Jun 2010 00:30:55 +0000 (17:30 -0700)]
util: Remove unnecessary header.
Vinson Lee [Fri, 4 Jun 2010 00:29:59 +0000 (17:29 -0700)]
nv50: Remove unnecessary header.
Vinson Lee [Fri, 4 Jun 2010 00:29:30 +0000 (17:29 -0700)]
svga: Remove unnecessary header.
Vinson Lee [Fri, 4 Jun 2010 00:24:22 +0000 (17:24 -0700)]
llvmpipe: Fix uninitialized variable on non-debug builds.
Bas Nieuwenhuizen [Mon, 24 May 2010 15:33:52 +0000 (17:33 +0200)]
r600g: added code for depthtesting
- added code to configure the depth buffer and to set up depth testing.
Roland Scheidegger [Thu, 3 Jun 2010 15:41:53 +0000 (17:41 +0200)]
r600g: adapt to interface changes
r600g should be able to handle separate depth stencil clears as well.
Also adapt surface_fill/copy stubs to new interface (not that it matters).
Roland Scheidegger [Thu, 3 Jun 2010 15:46:14 +0000 (17:46 +0200)]
Merge branch 'gallium-newclear'
Conflicts:
src/gallium/state_trackers/python/p_context.i
Roland Scheidegger [Thu, 3 Jun 2010 14:33:25 +0000 (16:33 +0200)]
gallium: rename clearRT / clearDS to clear_render_target / clear_depth_stencil
more consistent with rest of gallium naming conventions.
Also rename driver-internal names for these the same.
Jakob Bornecrantz [Tue, 1 Jun 2010 09:15:52 +0000 (10:15 +0100)]
gallium: Don't depend directly on staging dir in Xorg template makefile
Brian Paul [Thu, 3 Jun 2010 15:01:25 +0000 (09:01 -0600)]
tgsi: we don't support indirect input/output registers in SSE codegen yet
Extend the check for indirect addressing of temp regs to include
input/output regs.
Fixes failure with piglit glsl-texcoord-array.shader_test test when using
SSE codegen.
Brian Paul [Thu, 3 Jun 2010 14:58:31 +0000 (08:58 -0600)]
tgsi: whitespace cleanup
Brian Paul [Thu, 3 Jun 2010 00:13:00 +0000 (18:13 -0600)]
gallium: add interpolation parameter to simple shader functions
This lets us specify linear interpolation instead of perspective
interpolation for blit operations. Might be a bit faster.
Jakob Bornecrantz [Tue, 1 Jun 2010 08:34:41 +0000 (09:34 +0100)]
gallium: Don't always copy the dri driver to the staging dir
So something in the build keept updating the timestamp on the
staging directory causing us to always copy the library to it.
Jakob Bornecrantz [Tue, 1 Jun 2010 08:04:29 +0000 (09:04 +0100)]
gallium: Create a Xorg driver template Makefile
Brian Paul [Thu, 3 Jun 2010 13:52:46 +0000 (07:52 -0600)]
util/u_debug: use MAX2 macro
José Fonseca [Thu, 3 Jun 2010 13:22:41 +0000 (14:22 +0100)]
llvmpipe: Number shaders/variants for more reproducible function names in the IR.
José Fonseca [Thu, 3 Jun 2010 13:21:25 +0000 (14:21 +0100)]
gallivm: Register the JIT engine with oprofile on debug/profile builds.
José Fonseca [Thu, 3 Jun 2010 13:16:59 +0000 (14:16 +0100)]
gallivm: Factor out the quad derivative code into a single place. Fix ddy.
For ddy it should be (bottom - top).
Joakim Sindholt [Wed, 2 Jun 2010 18:37:44 +0000 (20:37 +0200)]
r300g: use util/u_debug
Joakim Sindholt [Tue, 1 Jun 2010 18:11:30 +0000 (20:11 +0200)]
gallium: silence all debug_named_value related warnings
Joakim Sindholt [Tue, 1 Jun 2010 18:11:02 +0000 (20:11 +0200)]
util/u_debug: add description field to debug_named_value
Vinson Lee [Thu, 3 Jun 2010 07:03:18 +0000 (00:03 -0700)]
scons: Handle Python OSError exception when missing libdrm_radeon.
Instead of crashing when libdrm_radeon is unavailable, the SCons build
just does not build r600g.
Marek Olšák [Thu, 3 Jun 2010 03:15:10 +0000 (05:15 +0200)]
r300/compiler: print opcode names instead of numbers
Marek Olšák [Thu, 3 Jun 2010 01:42:03 +0000 (03:42 +0200)]
r300g: set the minimum texture stride to 64 bytes on RS600, RS690, and RS740
I hope I've done it right. No way to test it here...
Vinson Lee [Thu, 3 Jun 2010 00:54:10 +0000 (17:54 -0700)]
dri/swrast: Remove unnecessary header.
Brian Paul [Wed, 2 Jun 2010 23:37:42 +0000 (17:37 -0600)]
st/mesa: fix indirect addressing of input/output regs
This fixes an issue that was missed with commit
9f544394c1d059ce09c8bb2b5e11f5e871c7915f.
Fixes piglit glsl-texcoord-array.shader_test
Brian Paul [Wed, 2 Jun 2010 22:21:47 +0000 (16:21 -0600)]
gallivm: bump up LP_BUILD_FLOW_MAX_VARIABLES
Fixes failed assertion with piglit fbo-drawbuffers-fragcolor.c
See fd.o bug 28358.
With 8 color buffers + Z we need to declare 33 vars, at least.
Kristian Høgsberg [Wed, 2 Jun 2010 12:58:24 +0000 (08:58 -0400)]
intel: Remove a leftover DRI1/DRI2 conditional
Brian Paul [Wed, 2 Jun 2010 22:04:10 +0000 (16:04 -0600)]
glx: fix indentation and remove extraneous break
Brian Paul [Wed, 2 Jun 2010 22:03:22 +0000 (16:03 -0600)]
glx: reformat and silence unused expression warning
Brian Paul [Wed, 2 Jun 2010 20:48:53 +0000 (14:48 -0600)]
glsl: handle indirectly indexed input registers in linker
For example, if the fragment shader reads gl_TexCoord[i] with a
dynamic index we need to set all the InputsRead bits for all
texcoords. We were already doing this for shader outputs.
Refactored the later code so inputs and outputs are handled with
similar code.
Fixes a swrast failure with piglit's glsl-texcoord-array.shader_test
Brian Paul [Wed, 2 Jun 2010 20:48:27 +0000 (14:48 -0600)]
mesa: use BITFIELD64_BIT() macro
Brian Paul [Wed, 2 Jun 2010 20:45:33 +0000 (14:45 -0600)]
glsl: fix bad sanity-check assertion
Brian Paul [Fri, 28 May 2010 19:33:03 +0000 (13:33 -0600)]
mesa: whitespace and 80 column wrapping
Eric Anholt [Wed, 2 Jun 2010 20:56:39 +0000 (13:56 -0700)]
shaders: Don't lose the param binding swizzle for single params.
Multiple item params are OK because we don't allow swizzles for them
(in case you do array access to hit their elements, for example). For
singles, though, using the swizzle can cut down on storage, we do want
to allow a swizzled use of another param.
Fixes OGLC texRect.c.
José Fonseca [Wed, 2 Jun 2010 19:09:02 +0000 (20:09 +0100)]
llvmpipe: Fix bad logic.
Courtesy of Vinson and coverity.
Vinson Lee [Wed, 2 Jun 2010 19:09:23 +0000 (12:09 -0700)]
llvmpipe: Remove unnecessary header.
José Fonseca [Wed, 2 Jun 2010 18:59:28 +0000 (19:59 +0100)]
llvmpipe: Fix typo in assert.
José Fonseca [Wed, 2 Jun 2010 17:43:35 +0000 (18:43 +0100)]
llvmpipe: Per quad interpolation.
First interpolate the 4 quads upper left corners, then sub-interpolate
each quad pixel. Do the perspective divide once per quad.
Saves some muls and reciprocates. But doesn't seem to make a
noticeable improvement.
It make the code simpler and more compact, so commiting anyway.
José Fonseca [Wed, 2 Jun 2010 15:09:21 +0000 (16:09 +0100)]
llvmpipe: Minor cleanup to the interpolator.
José Fonseca [Wed, 2 Jun 2010 15:00:40 +0000 (16:00 +0100)]
gallivm: Add a lp_build_const_elem().
José Fonseca [Wed, 2 Jun 2010 15:00:15 +0000 (16:00 +0100)]
llvmpipe: Store often used LLVM types in the lp_build_context.
José Fonseca [Wed, 2 Jun 2010 12:22:38 +0000 (13:22 +0100)]
gallivm: Zero min_lod and max_lod when only one view is selected and min/mag filter are equal.
José Fonseca [Wed, 2 Jun 2010 12:08:30 +0000 (13:08 +0100)]
gallivm: Make lp_build_sample_wrap_int usage more accurate.
Fixes mesa texwrap demo border with GL_CLAMP.
José Fonseca [Wed, 2 Jun 2010 11:51:38 +0000 (12:51 +0100)]
gallivm: Don't use reciprocate in lp_build_sample_wrap_linear().
Always clamp the scaled coordinates.
José Fonseca [Wed, 2 Jun 2010 10:25:27 +0000 (11:25 +0100)]
gallivm: Avoid fp arithmetic in lp_build_sample_wrap_nearest().
José Fonseca [Wed, 2 Jun 2010 09:57:27 +0000 (10:57 +0100)]
gallivm: Don't use lp_build_sample_wrap_nearest()
Always clamp with scaled coordinates.
José Fonseca [Wed, 2 Jun 2010 08:56:05 +0000 (09:56 +0100)]
llvmpipe: Centralize all position interpolation in lp_bld_interp.c.
Marek Olšák [Wed, 2 Jun 2010 05:00:37 +0000 (07:00 +0200)]
r300g: use the stored GEM domain in add_buffer/write_reloc
I admit blitting to/from GTT is actually enforced in this commit,
texture transfers are now damned fast!
Marek Olšák [Wed, 2 Jun 2010 04:45:00 +0000 (06:45 +0200)]
r300g: store the GEM domain in buffer and texture structs
Marek Olšák [Wed, 2 Jun 2010 04:25:02 +0000 (06:25 +0200)]
r300g: use r300_buffer_domain everywhere