Brian Paul [Fri, 30 Oct 2009 15:12:11 +0000 (09:12 -0600)]
intel: fix up some XRGB breakage
We weren't choosing the right XRGB span functions for reading the
framebuffer. XRGB formats still aren't turned on yet though.
Brian Paul [Fri, 30 Oct 2009 14:30:59 +0000 (08:30 -0600)]
mesa: fix inverted buffer object test
Fixes bug 24799.
Brian Paul [Fri, 30 Oct 2009 14:19:50 +0000 (08:19 -0600)]
mesa: fix incorrect format info for MESA_FORMAT_SL8
Fixes bugs 24798 and 24801.
Michal Krol [Fri, 30 Oct 2009 08:03:10 +0000 (08:03 +0000)]
softpipe: Respect gl_rasterization_rules in primitive setup.
Brian Paul [Fri, 30 Oct 2009 01:12:50 +0000 (19:12 -0600)]
intel: update intel_create_renderbuffer(format), add XRGB support
Pass a gl_format to intel_create_renderbuffer() instead of GLenum.
Add cases for MESA_FORMAT_XRGB8888 textures and renderbuffers.
However, we don't yet create any renderbuffers or textures with that
format. It seems the default alpha value is zero instead of one.
Need to investigate that first.
Brian Paul [Thu, 29 Oct 2009 23:49:50 +0000 (17:49 -0600)]
mesa: fix _mesa_texstore_argb8888() for MESA_FORMAT_XRGB8888
If we hit the general path and call _mesa_make_temp_chan_image() we
always want to get a GL_RGBA texture. We were getting a 3-channel
GL_RGB texture before and that messed up the memory layout.
Alex Deucher [Thu, 29 Oct 2009 23:44:35 +0000 (19:44 -0400)]
r600: remove the no rrb messages
Alex Deucher [Thu, 29 Oct 2009 23:42:12 +0000 (19:42 -0400)]
r600: Add support for ARB_depth_clamp
Brian Paul [Thu, 29 Oct 2009 22:30:36 +0000 (16:30 -0600)]
intel: remove memcpy_get_tex_image() code
This has been lifted into core Mesa where it can be used for all drivers
that use the _mesa_get_teximage() fallback for ctx->Driver.GetTexImage().
Brian Paul [Thu, 29 Oct 2009 22:29:31 +0000 (16:29 -0600)]
mesa: lift memcpy_get_tex_image() code from intel driver into core Mesa
The code should work for any driver.
Brian Paul [Thu, 29 Oct 2009 22:26:09 +0000 (16:26 -0600)]
mesa: refactor _mesa_get_teximage() code
Break different formats into different functions to make it easier to read.
Brian Paul [Thu, 29 Oct 2009 22:06:30 +0000 (16:06 -0600)]
i965: indentation fix
Brian Paul [Thu, 29 Oct 2009 22:02:35 +0000 (16:02 -0600)]
i965: make brw_sf_prog_key::sprite_origin_lower_left one bit
Shrinks size of key to 8 bytes from 12.
Note that progs/demos/spriteblast.c is still broken.
Brian Paul [Thu, 29 Oct 2009 21:57:22 +0000 (15:57 -0600)]
i965: make brw_wm_prog_key a little smaller
GLushort is big enough for the swizzle and origin fields.
The key could probably be made smaller still by re-ordering things.
I'll hold off on that until after the outputswritten64 branch is merged.
The key will get a little larger again with the GLbitfield64 fields.
Eric Anholt [Thu, 29 Oct 2009 21:38:44 +0000 (14:38 -0700)]
i915: Fix 1D texture mapping in the t coordinate.
Fixes piglit tex1d-2dborder test.
Eric Anholt [Thu, 29 Oct 2009 20:35:03 +0000 (13:35 -0700)]
i915: Correct and make use of the defines for 32-bit depth texture modes.
Previously, S8_Z24 depth textures would always be treated as intensity.
Fixes piglit depth-tex-modes.
Brian Paul [Thu, 29 Oct 2009 21:29:41 +0000 (15:29 -0600)]
i965: avoid shader translation on window resize
If the fragment shader doesn't use FRAG_ATTRIB_WPOS (gl_FragCoord) we
don't need to worry about the window size and origin in
brw_wm_populate_key().
This avoids re-generating the i965 shader code when a window is resized.
Issue spotted by Keith Whitwell.
Brian Paul [Thu, 29 Oct 2009 21:01:02 +0000 (15:01 -0600)]
i965: define, use BRW_MAX_DRAW_BUFFERS
i965 might support more than 4 color draw buffers. But if not, this protects
from breakage if the Mesa limit is raised.
Brian Paul [Thu, 29 Oct 2009 21:00:18 +0000 (15:00 -0600)]
i965: remove unused var
Brian Paul [Thu, 29 Oct 2009 20:53:53 +0000 (14:53 -0600)]
i965: don't use context state in emit_fb_write()
Put the state that we care about in the hash key.
Issue spotted by Keith Whitwell.
Brian Paul [Thu, 29 Oct 2009 20:29:55 +0000 (14:29 -0600)]
i965: use macros to get/set prog_instruction::Aux field
This makes things a bit easier to remember/understand.
Brian Paul [Thu, 29 Oct 2009 20:16:18 +0000 (14:16 -0600)]
i965: minor code reformatting
José Fonseca [Thu, 29 Oct 2009 20:03:51 +0000 (20:03 +0000)]
mesa: Add MESA_FORMAT_Z24_X8.
Zack Rusin [Mon, 26 Oct 2009 11:43:49 +0000 (07:43 -0400)]
st/xorg: fix scaling ov xv data, plus some cleanups
Eric Anholt [Thu, 29 Oct 2009 18:52:28 +0000 (11:52 -0700)]
i915: Implement min/max LOD clamping with the hardware.
This gets us expected behavior for clamping between mipmap levels, and
avoids relayout of textures for doing clamping.
Fixes piglit lodclamp-between.
Eric Anholt [Thu, 29 Oct 2009 17:36:22 +0000 (10:36 -0700)]
i965: Replace a MIN(MAX()) with CLAMP().
Brian Paul [Thu, 29 Oct 2009 17:04:11 +0000 (11:04 -0600)]
intel: check for single memcpy() in memcpy_get_tex_image()
Eric Anholt [Wed, 28 Oct 2009 23:36:35 +0000 (16:36 -0700)]
i965: Fix fallout from ARB_depth_clamp enablement that broke glDepthRange.
If a backwards glDepthRange was supplied (as with the old Quake no-z-clearing
hack), the hardware would have always clamped because we weren't clamping to
the min of near/far and the max of near/far. Also, we shouldn't be clamping
to near/far at all when not in depth clamp mode (this usually didn't matter
since near/far are usually the same as the 0.0, 1.0 clamping you do for
fixed-point depth).
This should fix funny depth issues in PlaneShift, and fixes piglit
depth-clamp-range
Eric Anholt [Wed, 28 Oct 2009 23:35:16 +0000 (16:35 -0700)]
mesa: Mostly fix swrast's ARB_depth_clamp support.
I'd written a testcase for the hard part of the extension enablement, so
naturally the easy stuff was completely broken. There are still issues,
as I'm seeing FLOAT_TO_UINT(max_f) == 0x0 when max_f == 1.0, but it gets
piglit depth-clamp-range closer to success.
Eric Anholt [Mon, 26 Oct 2009 16:37:53 +0000 (09:37 -0700)]
intel: Don't bother MI_FLUSHing on glFlush in the DRI2 case.
We only need it when drawing to the front buffer, which we never do for
DRI2. No significant performance difference, but the flush is definitely
gone from the end of every batchbuffer.
Eric Anholt [Mon, 26 Oct 2009 16:15:42 +0000 (09:15 -0700)]
intel: Clean up merge leftover from the DRI2 swap throttling.
Brian Paul [Thu, 29 Oct 2009 16:56:13 +0000 (10:56 -0600)]
intel: remove debug code
Brian Paul [Thu, 29 Oct 2009 16:53:26 +0000 (10:53 -0600)]
mesa: consolidate some code in _mesa_GetCompressedTexImageARB()
Brian Paul [Thu, 29 Oct 2009 16:50:10 +0000 (10:50 -0600)]
intel: added fast memcpy path for glGetTexImage()
Brian Paul [Thu, 29 Oct 2009 16:49:38 +0000 (10:49 -0600)]
progs/tests: also test GL_BGRA format in getteximage.c
Brian Paul [Thu, 29 Oct 2009 16:44:46 +0000 (10:44 -0600)]
mesa: move pixels==NULL check in glGetTexImage()
Brian Paul [Thu, 29 Oct 2009 16:05:06 +0000 (10:05 -0600)]
mesa: consolidate some code in _mesa_GetTexImage()
Brian Paul [Thu, 29 Oct 2009 15:25:16 +0000 (09:25 -0600)]
mesa: move, clean-up _mesa_print_texture()
Brian Paul [Thu, 29 Oct 2009 15:19:24 +0000 (09:19 -0600)]
mesa: fix some tests in subtexture_error_check2()
Don't use hard-coded compressed block sizes.
Update comments and error strings.
Brian Paul [Thu, 29 Oct 2009 15:31:29 +0000 (09:31 -0600)]
mesa: remove unneedded is_srgb_teximage() function
Use _mesa_get_format_color_encoding() function instead.
Brian Paul [Thu, 29 Oct 2009 14:28:52 +0000 (08:28 -0600)]
glsl: make shader substitution a little better
David Heidelberger [Thu, 29 Oct 2009 16:14:39 +0000 (10:14 -0600)]
st/mesa: fix PIPE_FORMAT_X8Z24 <> MESA_FORMAT_X8_Z24 conversion
Signed-off-by: David Heidelberger <d.okias@gmail.com>
Signed-off-by: Brian Paul <brianp@vmware.com>
David Heidelberger [Thu, 29 Oct 2009 15:56:12 +0000 (09:56 -0600)]
st/mesa: Add conversion from PIPE_FORMAT_X8Z24_UNORM to MESA_FORMAT_S8_Z24.
Fix glxgears and openarena for Nouveau (no more asserts and crash).
Signed-off-by: David Heidelberger <d.okias@gmail.com
Signed-off-by: Brian Paul <brianp@vmware.com>
David Heidelberger [Thu, 29 Oct 2009 15:54:31 +0000 (09:54 -0600)]
st/mesa: Fix nouveau glxinfo after merging texformat-rework.
Signed-off-by: David Heidelberger <d.okias@gmail.com>
Signed-off-by: Brian Paul <brianp@vmware.com>
Brian Paul [Thu, 29 Oct 2009 13:54:44 +0000 (07:54 -0600)]
mesa: move declaration to prevent unused var warning
Chia-I Wu [Fri, 2 Oct 2009 07:32:04 +0000 (15:32 +0800)]
mesa: Fix compilation errors and warnings when features are disabled.
Some of the fixes are cherry-picked from opengl-es branch.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Thu, 29 Oct 2009 06:59:42 +0000 (14:59 +0800)]
mesa/main: Make FEATURE_texture_s3tc follow feature conventions.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Thu, 29 Oct 2009 06:14:04 +0000 (14:14 +0800)]
mesa/main: Make FEATURE_texture_fxt1 follow feature conventions.
Also remove the unused initialization and GLchan fetch functions.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Thu, 29 Oct 2009 07:19:59 +0000 (15:19 +0800)]
mesa/main: Never return NULL in _mesa_get_texstore_func.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Brian Paul [Thu, 29 Oct 2009 13:47:34 +0000 (07:47 -0600)]
radeon: fix incorrect Z format in radeon_alloc_renderbuffer_storage()
And update error message.
Cooper Yuan [Thu, 29 Oct 2009 12:20:59 +0000 (20:20 +0800)]
r300g: Fix bytes_per_line calculation error while displaying surface
Chia-I Wu [Thu, 29 Oct 2009 04:14:01 +0000 (22:14 -0600)]
swrast: added braces
Brian Paul [Thu, 29 Oct 2009 03:52:37 +0000 (21:52 -0600)]
mesa: remove old, unused #define
Brian Paul [Thu, 29 Oct 2009 03:46:37 +0000 (21:46 -0600)]
mesa: re-remove s3v and trident driver files
These were removed from master but a few files came back from the
texformat-rework branch.
Brian Paul [Thu, 29 Oct 2009 03:43:50 +0000 (21:43 -0600)]
mesa: move some gl_texture_image and gl_renderbuffer fields around
Brian Paul [Thu, 29 Oct 2009 03:25:56 +0000 (21:25 -0600)]
mesa: minor code movement
Brian Paul [Thu, 29 Oct 2009 03:24:11 +0000 (21:24 -0600)]
Merge branch 'texformat-rework'
Conflicts:
src/mesa/drivers/dri/radeon/radeon_fbo.c
src/mesa/drivers/dri/s3v/s3v_tex.c
src/mesa/drivers/dri/s3v/s3v_xmesa.c
src/mesa/drivers/dri/trident/trident_context.c
src/mesa/main/debug.c
src/mesa/main/mipmap.c
src/mesa/main/texformat.c
src/mesa/main/texgetimage.c
Brian Paul [Thu, 29 Oct 2009 01:46:26 +0000 (19:46 -0600)]
swrast: fix RGB, RGBA texturing code
Fix backward component ordering for RGB textures.
Only optimize RGBA texture case if running little endian. This restriction
could be lifted with a little work.
Brian Paul [Thu, 29 Oct 2009 01:41:24 +0000 (19:41 -0600)]
swrast: check for single texture unit in _swrast_choose_triangle()
Brian Paul [Thu, 29 Oct 2009 01:40:56 +0000 (19:40 -0600)]
swrast: clean up and remove dead code in triangle functions
Brian Paul [Thu, 29 Oct 2009 01:38:12 +0000 (19:38 -0600)]
swrast: fix texel decoding in opt_sample_rgba_2d()
Brian Paul [Thu, 29 Oct 2009 01:33:48 +0000 (19:33 -0600)]
mesa: choose texture format in _mesa_get_fallback_texture()
Brian Paul [Thu, 29 Oct 2009 00:27:25 +0000 (18:27 -0600)]
Merge branch 'mesa_7_6_branch'
Vinson Lee [Wed, 28 Oct 2009 23:59:49 +0000 (17:59 -0600)]
mesa: Fix memory leak if we run out of memory
Signed-off-by: Brian Paul <brianp@vmware.com>
Zack Rusin [Sun, 25 Oct 2009 23:47:41 +0000 (19:47 -0400)]
st/xorg: fix src coordinates in the video acceleration paths
Alex Deucher [Wed, 28 Oct 2009 19:36:53 +0000 (15:36 -0400)]
r600: add occlusion query support
Based on initial patch from Stephan Schmid <stephan_2303@gmx.de>.
Basic idea is to dump the zpass count at the start and end of the query
and subtract to get the total number of visible fragments. HW writes
alternating qwords for up to 4 DBs. On the first pass, we start at
buffer address + 0; on the second pass, we start at buffer address + 8
(bytes). The resulting buffer at the end of the query looks like:
qw[0]: db0 start
qw[1]: db0 end
...
qw[6]: db3 start
qw[7]: db3 end
The MSB of each qword is the valid bit and the lower 63 bits are
the zpass count for that DB.
OQ on RV740 is disabled at the moment as it only seems to report
results for half of its DBs. This needs further investigation.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Corbin Simpson [Wed, 28 Oct 2009 19:11:52 +0000 (12:11 -0700)]
r300g: Use u_trim_pipe_prim to prevent lockups from incorrect vert counts.
Adapted from osiris' version on his tree.
Corbin Simpson [Wed, 28 Oct 2009 18:58:13 +0000 (11:58 -0700)]
r300g: Keep texture formats organized.
Maciej Cencora [Sun, 18 Oct 2009 16:06:51 +0000 (18:06 +0200)]
r300g: add some texture formats
Corbin Simpson [Wed, 28 Oct 2009 18:47:24 +0000 (11:47 -0700)]
r300g: Clear up a bit of the buffer reference stuff.
Still need to actually get reference info from winsys somehow. Doing added
buffers is easy, but knowing whether a flush has happened is a bit tricky.
Corbin Simpson [Wed, 28 Oct 2009 17:02:23 +0000 (10:02 -0700)]
r300g: Fix XXX.
Nothing strange here.
Marek Olšák [Wed, 28 Oct 2009 01:43:51 +0000 (02:43 +0100)]
r300g: fix emitting the stencil-ref and alpha-ref values
Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
DSA really needs its head examined someday. ~ C.
Marek Olšák [Wed, 28 Oct 2009 01:21:49 +0000 (02:21 +0100)]
r300g: fix the WRAP_T mode when using 1D textures
Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
Marek Olšák [Wed, 28 Oct 2009 01:19:52 +0000 (02:19 +0100)]
r300g: fix blending and do some optimizations
Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
Marek Olšák [Wed, 28 Oct 2009 00:38:40 +0000 (01:38 +0100)]
mesa/st: fix crash in st_texture_image_copy
Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
Vinson Lee [Wed, 28 Oct 2009 19:09:44 +0000 (13:09 -0600)]
intel: Fix memory leak in case of renderbuffer bad format
Signed-off-by: Brian Paul <brianp@vmware.com>
Brian Paul [Wed, 28 Oct 2009 17:33:51 +0000 (11:33 -0600)]
Merge branch 'mesa_7_6_branch'
Conflicts:
src/mesa/shader/lex.yy.c
src/mesa/shader/program_lexer.l
Brian Paul [Wed, 28 Oct 2009 17:13:21 +0000 (11:13 -0600)]
mesa: remove unneeded #includes
Brian Paul [Wed, 28 Oct 2009 17:11:30 +0000 (11:11 -0600)]
mesa: include imports.h to silence warning
Vinson Lee [Wed, 28 Oct 2009 17:09:50 +0000 (11:09 -0600)]
intel: Fix memory leak in event of mip tree allocation failure
Signed-off-by: Brian Paul <brianp@vmware.com>
José Fonseca [Wed, 28 Oct 2009 11:05:32 +0000 (11:05 +0000)]
llvmpipe: Make sure the JIT engine and X86 target are linked on MSVC build.
Basically mimic the llvm 2.6 way of linking execution engines and
targets.
José Fonseca [Tue, 27 Oct 2009 20:45:53 +0000 (20:45 +0000)]
util: Drop return value from cpuid().
José Fonseca [Tue, 27 Oct 2009 20:29:19 +0000 (20:29 +0000)]
util: Fix cpuid on MSVC.
José Fonseca [Tue, 27 Oct 2009 20:09:53 +0000 (20:09 +0000)]
llvmpipe: Implement round() for MSVC.
Brian Paul [Wed, 28 Oct 2009 03:39:44 +0000 (21:39 -0600)]
mesa: consolidate _mesa_CompressedTexSubImage[123]DARB() functions
Brian Paul [Wed, 28 Oct 2009 03:03:44 +0000 (21:03 -0600)]
mesa: consolidate CompressedTexSubImage1/2/3DARB() error checking
Brian Paul [Wed, 28 Oct 2009 03:15:36 +0000 (21:15 -0600)]
mesa: simplify teximage code with get_current_tex_object()
Brian Paul [Wed, 28 Oct 2009 02:10:30 +0000 (20:10 -0600)]
mesa: code refactoring to eliminate a switch stmt in bind_buffer_object()
Brian Paul [Wed, 28 Oct 2009 02:09:33 +0000 (20:09 -0600)]
glsl: avoid redundant state changes in _mesa_use_program()
Zack Rusin [Sun, 25 Oct 2009 16:19:38 +0000 (12:19 -0400)]
st/xorg: fix xv
Ian Romanick [Tue, 27 Oct 2009 20:40:18 +0000 (13:40 -0700)]
ARB prog parser: Fix epic memory leak in lexer / parser interface
Anything that matched IDENTIFIER was strdup'ed and returned to the
parser. However, almost every case of IDENTIFIER in the parser just
dropped the returned string on the floor. Every swizzle string, every
option string, every use of a variable, etc. leaked memory.
Create a temporary buffer in the parser state (string_dumpster and
dumpster_size). Return strings from the lexer to the parser in the
buffer. Grow the buffer as needed. When the parser needs to keep a
string (i.e., delcaring a new variable), let it make a copy then.
The only leak that valgrind now detects is /occasionally/ the copy of
the program string in gl_program::String is leaked. I'm not seeing
how. :(
Ian Romanick [Tue, 27 Oct 2009 18:46:29 +0000 (11:46 -0700)]
ARB prog parser: Don't leak program string
The program string is kept in the program object. On the second call
into glProgramStringARB the previous kept string would be leaked.
Ian Romanick [Tue, 27 Oct 2009 18:44:56 +0000 (11:44 -0700)]
ARB prog parser: Don't leak symbol table header structures
Eric Anholt [Tue, 20 Oct 2009 21:51:53 +0000 (14:51 -0700)]
intel: Fix flipped condition in ARB_sync GetSYnciv(GL_SYNC_STATUS).
Bug #24435
(cherry picked from commit
d56125a298106d81e10674f1c4b3b43b51a5139d)
Brian Paul [Tue, 27 Oct 2009 23:34:29 +0000 (17:34 -0600)]
intel: added region draw_x/y offsets in x/y_tile_swizzle() funcs
This fixes the second part of bug 23552.
Brian Paul [Tue, 27 Oct 2009 23:05:08 +0000 (17:05 -0600)]
radeon: add case for MESA_FORMAT_X8_Z24 in radeon_create_renderbuffer()
Brian Paul [Tue, 27 Oct 2009 23:01:26 +0000 (17:01 -0600)]
intel: silence warning
Brian Paul [Tue, 27 Oct 2009 22:59:23 +0000 (16:59 -0600)]
mesa: debug code for glBlitFramebuffer()
Brian Paul [Tue, 27 Oct 2009 22:55:31 +0000 (16:55 -0600)]
via: silence unused var warnings
Brian Paul [Tue, 27 Oct 2009 22:37:25 +0000 (16:37 -0600)]
intel: minor clean-up, comments