Commit graph

37616 commits

Author SHA1 Message Date
Marek Olšák
b0ec461954 st/mesa: cleanup checking for signed compressed formats in generate_mipmaps 2011-03-08 23:52:37 +01:00
Marek Olšák
384845f335 st/mesa: add LATC and 3DC support
softpipe passes all tests.
2011-03-08 23:52:37 +01:00
Marek Olšák
23f92c20d7 gallium/util: add LATC support
Again, a lot of code is shared with RGTC.

The layout is UTIL_FORMAT_LAYOUT_RGTC, because LATC is just swizzled RGTC.
2011-03-08 23:52:37 +01:00
Marek Olšák
69f16accd0 mesa: add ATI_texture_compression_3dc
LUMINANCE_ALPHA_LATC2 = LUMINANCE_ALPHA_3DC, so this is easy.

Note that there is no specification for 3DC, just a few white papers
from ATI.
2011-03-08 23:52:37 +01:00
Marek Olšák
7d16e2c0cd mesa: add EXT_texture_compression_latc
The encoding/decoding algorithms are shared with RGTC.
Thanks to some magic with the base format, the RGTC texstore functions work
for LATC too.

swrast passes the related piglit tests besides two things:
- The alpha channel is wrong (it's always 1), however the incorrect alpha
  channel makes some other tests fail too, so I guess it's unrelated to LATC.
- Signed LATC fetches aren't correct yet (signed values are clamped to [0,1]),
  however RGTC has the same problem.

Further testing (with other of my patches) shows that hardware drivers
and softpipe work.

BTW, ETQW uses this extension.
2011-03-08 23:52:37 +01:00
Thomas Hellstrom
12fa91b675 st/mesa: Fix an incorrect user vertex buffer reference
st->user_vb[attr] was always pointing to the same user vb, regardless
of the value of attr. Together with reverting the temporary workaround
for bug 34378, and a fix in the svga driver, this fixes googleearth on svga.

Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
2011-03-08 22:15:50 +01:00
Marek Olšák
ef58598c1c vbo: mark vertex arrays as dirty when re-binding
This fixes:
https://bugs.freedesktop.org/show_bug.cgi?id=34378
2011-03-08 22:14:47 +01:00
Marek Olšák
ff8baec5bc r300/compiler: remove unused variables 2011-03-08 22:13:29 +01:00
Ian Romanick
bdb6a6ef83 glsl: Use insert_before for lists instead of open coding it 2011-03-08 11:47:25 -08:00
Ian Romanick
60f898a90e linker: Add imported functions to the linked IR
Fixes piglit test glsl-function-chain16 and bugzilla #34203.

NOTE: This is a candidate for stable release branches.
2011-03-08 11:47:25 -08:00
Ian Romanick
8bbfbb14ee glsl: Add several function / call related validations
The signature list in a function must contain only ir_function_signature nodes.

The target of an ir_call must be an ir_function_signature.

These were added while trying to debug Mesa bugzilla #34203.
2011-03-08 11:47:25 -08:00
Ian Romanick
2df56b002d glsl: Function signatures cannot have NULL return type
The return type can be void, and this is the case where a `_ret_val'
variable should not be declared.
2011-03-08 11:47:25 -08:00
Christian König
719f07e45a r600g: set start instance correctly 2011-03-08 16:57:47 +01:00
Brian Paul
4a802738b0 swrast: flip the conditionals in shadow_compare4() for readability 2011-03-08 08:31:43 -07:00
Philip Taylor
d9f584e663 swrast: add coord clamping, fix comparisons for shadow testing
This fixes https://bugs.freedesktop.org/show_bug.cgi?id=31159 for swrast
and piglit depth-tex-compare.

NOTE: This is a candidate for the 7.10 branch.

Signed-off-by: Brian Paul <brianp@vmware.com>
2011-03-08 08:31:43 -07:00
Marek Olšák
5650a719f0 r300g: decide whether a flush should be asynchronous when calling it
Thread offloading is not sometimes desirable, e.g. when mapping a buffer.
2011-03-08 08:23:29 +01:00
Marek Olšák
6051f26b78 r300g: use pipelined transfers for RGTC textures 2011-03-08 08:17:12 +01:00
Marek Olšák
4dfcf3c4fe r300/compiler: fix equal and notequal shadow compare functions 2011-03-08 07:36:40 +01:00
Marek Olšák
94818d4c6a r300/compiler: detect constants harder 2011-03-08 06:54:14 +01:00
Marek Olšák
4f38261179 r300/compiler: improve the detection of constants for constant folding
Now the expression V==0 generates one instruction instead of two.
2011-03-08 06:37:50 +01:00
Marek Olšák
eb1acd1613 r300/compiler: saturate Z before the shadow comparison
This fixes:
https://bugs.freedesktop.org/show_bug.cgi?id=31159

NOTE: This is a candidate for the 7.9 and 7.10 branches.
2011-03-08 05:13:45 +01:00
Brian Paul
2c1ef65a04 llvmpipe: clamp texcoords in lp_build_sample_compare()
See previous commit for more info.

NOTE: This is a candidate for the 7.10 branch.
2011-03-07 18:59:42 -07:00
Philip Taylor
0eef561a5b softpipe: clamp texcoords in sample_compare()
This fixes http://bugs.freedesktop.org/show_bug.cgi?id=31159 for softpipe
and fixes the piglit depth-tex-compare test.

NOTE: This is a candidate for the 7.10 branch.

Signed-off-by: Brian Paul <brianp@vmware.com>
2011-03-07 18:56:54 -07:00
Marek Olšák
a674ef7814 mesa: return after invalidating renderbuffer 2011-03-07 23:33:36 +01:00
Marek Olšák
fb5d9e1199 st/mesa: fail to alloc a renderbuffer if st_choose_renderbuffer_format fails
This fixes:
  state_tracker/st_format.c:401:st_pipe_format_to_mesa_format:
  Assertion `0' failed.
2011-03-07 23:27:35 +01:00
Marek Olšák
df818d572e mesa: invalidate framebuffer if internal format of renderbuffer is changed
RenderTexture doesn't have to be called in invalidate_rb, I guess.
2011-03-07 23:27:35 +01:00
Brian Paul
f4ca12c4f1 mesa: initialize DummyBufferObject's mutex
The mutex's fields were all zeros.  That's OK on Linux, but not Windows.

NOTE: This is a candidate for the 7.10 branch.
2011-03-07 14:58:39 -07:00
Brian Paul
ce6f16d382 st/mesa: fix incorrect version checking code 2011-03-07 14:58:39 -07:00
Brian Paul
8329f4db61 st/glx: whitespace, 80-column fixes 2011-03-07 14:58:39 -07:00
Brian Paul
51db2045b4 mesa: remove stray _mesa_finish() call in _mesa_CopyPixels()
Leftover debug code from 6364d75008.
2011-03-07 14:01:09 -07:00
Henri Verbeet
0e4750a84d r600g: Simplify some swizzle lookups. 2011-03-07 21:48:21 +01:00
Henri Verbeet
eac50295fc r600g: Constant buffers can contain up to 4096 constants. 2011-03-07 21:48:21 +01:00
Henri Verbeet
a8bde5c47e i915: Only invert wpos when rendering to the system framebuffer. 2011-03-07 21:48:21 +01:00
Henri Verbeet
a99b23752b i915: Derive the gl_fragment_program from i915_fragment_program.
Instead of using the current gl_fragment_program. These aren't necessarily
the same, for example when translate_program() is called by
i915ValidateFragmentProgram().
2011-03-07 21:48:21 +01:00
Henri Verbeet
c3c91a0fe5 glx: Take GLPROTO_CFLAGS into account. 2011-03-07 21:48:20 +01:00
Chris Wilson
6547253bd1 intel: check for miptree allocation failure
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-03-07 10:53:09 +00:00
Chris Wilson
de7678ef52 intel: Add some defense against buffer allocation failure for subimage blits
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-03-07 10:53:05 +00:00
Chris Wilson
f627d429bd intel: Add some defense against bo allocation failure
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-03-07 10:53:00 +00:00
Benjamin Franzke
4f6fbfa0ed egl_dri2: Add attribute map for __DRI_ATTRIB_FRAMEBUFFER_SRGB_CAPABLE
Broken since 6538b5824e.
Thanks to iskren on #wayland for helping on finding this.
2011-03-07 00:32:05 +01:00
Christian König
e0cf8471a1 r600g: use long long integers for instance addr calculation
Using a long for instance addr calculation isn't
big enough on 32bit systems, use a long long int instead.

Thanks to Rafael Monica for fixing this.
2011-03-06 23:37:47 +01:00
Dave Airlie
6538b5824e glx/dri: add initial dri interface for GLX_EXT_framebuffer_sRGB.
This realigns the name of the glx bit to align with the core mesa names.
2011-03-06 20:06:42 +10:00
Dave Airlie
b09b3e5c8f glx: add initial GLX_EXT_framebuffer_sRGB support.
this doesn't bind to drivers yet, just enough to in theory make indirect
work against other servers.

I'm really not sure what the rules for adding extensions to the known_gl_extensions list as it looks to be missing a few. are these GL extensions that have GLX
protocol??

Signed-off-by: Dave Airlie <airlied@redhat.com>
2011-03-06 19:56:22 +10:00
José Fonseca
7cb17862c6 pb: Add is_buffer_busy for malloc buffers. 2011-03-06 09:12:58 +00:00
José Fonseca
e1510d4816 st/wgl: No need to initialize OneTimeLock anymore. 2011-03-06 09:12:30 +00:00
José Fonseca
b531b01b70 mapi: _glthread_DECLARE_STATIC_MUTEX is not broken on Windows. 2011-03-06 09:11:59 +00:00
José Fonseca
e640eec9ba trace: Use pipe_static_mutex. 2011-03-06 09:11:13 +00:00
José Fonseca
db6d0d9ebf os: Fix pipe_static_mutex on Windows. 2011-03-06 09:10:38 +00:00
José Fonseca
5e1b31066b graw-gdi: Silence gcc missing initialization warning. 2011-03-06 09:10:03 +00:00
Daniel Vetter
f95892b46a i915g: update TODO
Comments about the deleted stuff:
- openaren hang: likely caused by the vertex corruptions, fixed by Jakob.
- tiling: Y-tiling works with my hw-clear branch. X-tiling works as
  merged to master a while ago (execbuf2 version).

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2011-03-06 00:39:18 +01:00
Marek Olšák
b6a9675b2f r300g/swtcl: advertise draw_instanced and primitive_restart 2011-03-05 17:41:12 +01:00