Eric Anholt [Tue, 2 Mar 2010 23:34:17 +0000 (15:34 -0800)]
intel: Use drm_intel_bo_alloc_tiled for region allocs.
This moves the logic for how to align pitches, heights, and sizes of
objects to one central location. Fixes rendering with texture tiling
on i915. Note that current libdrm is required for the change for
I915_TILING_NONE pitch alignment.
Eric Anholt [Tue, 2 Mar 2010 23:28:36 +0000 (15:28 -0800)]
i915: Don't do the pitch expansion for tiled buffers.
The weirdness that led to the bumping of pitch for those 512/1024
pixels is that in taking a 2x2 subspan or bilinear filtering we'd end
up hitting the same channel in 2 different pages, leading to lower
performance. With tiling, that doesn't occur, so we don't need to
waste the memory.
Eric Anholt [Tue, 2 Mar 2010 18:41:08 +0000 (10:41 -0800)]
intel: Use GTT mapping in the blit fallback path in case there's tiling.
Eric Anholt [Tue, 2 Mar 2010 18:27:51 +0000 (10:27 -0800)]
i965: Fix up Sandybridge VS sizing.
George Sapountzis [Wed, 3 Mar 2010 19:22:38 +0000 (21:22 +0200)]
glapi: minor cosmetic
George Sapountzis [Wed, 3 Mar 2010 19:22:38 +0000 (21:22 +0200)]
glapi: drop condvar
Seems unused and replaced by functionality in os module.
Alex Deucher [Wed, 3 Mar 2010 19:09:53 +0000 (14:09 -0500)]
r600: add new rs880 pci id
Kristian Høgsberg [Tue, 2 Mar 2010 20:34:18 +0000 (15:34 -0500)]
egl_dri2: Factor out DRI2 protocol bits from initialize.
Kristian Høgsberg [Tue, 2 Mar 2010 20:41:12 +0000 (15:41 -0500)]
intel: Set InternalFormat for renderbuffers created from an EGLImage
José Fonseca [Wed, 3 Mar 2010 13:47:42 +0000 (13:47 +0000)]
progs/gallium/unit: Test (un)pack_4ub.
Most of them are failing.
José Fonseca [Wed, 3 Mar 2010 13:08:23 +0000 (13:08 +0000)]
gallium: Remove PIPE_FORMAT_R8G8B8X8_SNORM.
José Fonseca [Wed, 3 Mar 2010 13:08:08 +0000 (13:08 +0000)]
util: Remove PIPE_FORMAT_R8G8B8X8_SNORM information.
José Fonseca [Wed, 3 Mar 2010 13:07:56 +0000 (13:07 +0000)]
r300: Remove PIPE_FORMAT_R8G8B8X8_SNORM support.
José Fonseca [Wed, 3 Mar 2010 13:07:43 +0000 (13:07 +0000)]
progs/gallium/unit: Remove PIPE_FORMAT_R8G8B8X8_SNORM test cases.
José Fonseca [Wed, 3 Mar 2010 12:07:39 +0000 (12:07 +0000)]
llvmpipe: Linux is no longer a dependency. Llvmpipe builds and runs fine on windows too.
José Fonseca [Wed, 3 Mar 2010 12:00:25 +0000 (12:00 +0000)]
llvmpipe: Centralize LLVM initialization.
José Fonseca [Wed, 3 Mar 2010 12:00:08 +0000 (12:00 +0000)]
gallivm: Centralize initialization. Fix stack alignment issues on Windows.
José Fonseca [Wed, 3 Mar 2010 11:17:16 +0000 (11:17 +0000)]
llvmpipe: Update for lp_bld_init.h rename.
José Fonseca [Wed, 3 Mar 2010 10:54:35 +0000 (10:54 +0000)]
gallivm: Rename lp_bld_misc -> lp_bld_init.
Dave Airlie [Wed, 3 Mar 2010 06:27:21 +0000 (16:27 +1000)]
radeon/r200/r300/r600: fix blit BO buffer validation
there is no need for these to be persistent since we flush the CS
at the end of the blit, and we don't reuse these buffers at all.
on my r600 the Wine DX9 test suite doesn't crash at least anymore.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Corbin Simpson [Wed, 3 Mar 2010 03:14:09 +0000 (19:14 -0800)]
r300g: Use a macro to consolidate general state handling.
My God, I've reinvented R300_STATECHANGE. Forgive me. :C
Christoph Bumiller [Tue, 2 Mar 2010 18:16:39 +0000 (19:16 +0100)]
nv50: fix RT formats after format rename fixes
Getting rid of the evil pre-processor magic, but not changing our
internal format naming convention (at least for now).
José Fonseca [Tue, 2 Mar 2010 17:26:40 +0000 (17:26 +0000)]
nouveau: Rename pipe formats.
These format uses were being hiden by pre-processor magic and were
missed in the previous search'n'replace.
José Fonseca [Tue, 2 Mar 2010 16:00:34 +0000 (16:00 +0000)]
Merge branch 'gallium-format-cleanup'
Zack Rusin [Tue, 2 Mar 2010 15:18:29 +0000 (10:18 -0500)]
llvmpipe: improve based on review from Jose and fix else clauses
else was broken in the outter most else statemants, plus the code
didn't need an inverted mask to compute the inverse of the current
condition.
Keith Whitwell [Tue, 2 Mar 2010 15:02:29 +0000 (15:02 +0000)]
llvmpipe: remove some ifdefs
No longer any need to protect expensive asserts with #ifdef DEBUG.
Keith Whitwell [Tue, 2 Mar 2010 14:41:35 +0000 (14:41 +0000)]
llvmpipe: reorganize transfer usage
Move transfer creation and mapping to the "scene" object, and out of
the rasterizer. The rasterizer operates on already-mapped
framebuffers only, and no longer needs a screen or context pointer.
The scene object has access to a pipe_context, and this reorg prepares
for moving transfer functionality from the screen to the context.
Brian Paul [Tue, 2 Mar 2010 14:50:15 +0000 (07:50 -0700)]
intel: passs correct context type to intel_prepare_render() call
Brian Paul [Tue, 2 Mar 2010 14:47:56 +0000 (07:47 -0700)]
i965: include macros.h to get CLAMP macro
Brian Paul [Tue, 2 Mar 2010 14:34:29 +0000 (07:34 -0700)]
glx: replace assertion with conditional
See fd.o bug 26832.
José Fonseca [Tue, 2 Mar 2010 12:47:16 +0000 (12:47 +0000)]
progs/gallium/unit: Add test cases for single precision floats.
José Fonseca [Tue, 2 Mar 2010 12:40:09 +0000 (12:40 +0000)]
progs/gallium/unit: Add test cases for Nx16 and Nx32 integer formats.
Michal Krol [Tue, 2 Mar 2010 12:35:30 +0000 (13:35 +0100)]
Merge branch 'gallium-no-rhw-position'
Conflicts:
src/gallium/drivers/r300/r300_blit.c
src/gallium/drivers/r300/r300_emit.c
src/gallium/drivers/r300/r300_state_derived.c
José Fonseca [Tue, 2 Mar 2010 11:30:46 +0000 (11:30 +0000)]
progs/gallium/unit: Add more test cases.
José Fonseca [Tue, 2 Mar 2010 11:30:23 +0000 (11:30 +0000)]
util: Tweak comment for D3D10-like formats.
José Fonseca [Mon, 1 Mar 2010 18:15:04 +0000 (18:15 +0000)]
progs/gallium/python: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:14:48 +0000 (18:14 +0000)]
gallium/unit: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:14:38 +0000 (18:14 +0000)]
rbug: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:14:31 +0000 (18:14 +0000)]
gdi: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:14:26 +0000 (18:14 +0000)]
drm/nouveau: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:14:12 +0000 (18:14 +0000)]
svga: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:13:57 +0000 (18:13 +0000)]
softpipe: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:13:41 +0000 (18:13 +0000)]
r300: Rename pipe formats.
Marek Olšák [Tue, 2 Mar 2010 01:37:45 +0000 (02:37 +0100)]
util/blitter: Fix the viewport transformation for Z coordinates
When clearing buffers, the depth is specified in the range [0, 1]
and should be passed through blitter "as is".
Vinson Lee [Tue, 2 Mar 2010 09:15:02 +0000 (01:15 -0800)]
i915g: Add assert to check for null pointer dereference.
Vinson Lee [Tue, 2 Mar 2010 09:10:29 +0000 (01:10 -0800)]
glsl: Add assert to check input to strcmp.
Vinson Lee [Tue, 2 Mar 2010 09:01:23 +0000 (01:01 -0800)]
mesa: Add asserts to check inputs to memcpy.
Dave Airlie [Tue, 2 Mar 2010 04:05:21 +0000 (14:05 +1000)]
r600: fix blender picking.
This fixes the sw fallback for GL_SELECT picking modes.
Fixes object picking blender + depthpick test
http://bugs.freedesktop.org/show_bug.cgi?id=26419
Signed-off-by: Dave Airlie <airlied@redhat.com>
Zack Rusin [Tue, 2 Mar 2010 03:11:08 +0000 (22:11 -0500)]
llvmpipe: implement some control-flow
implements if/else/endif constructs and lays down the code for looping
and others. we create a conditional execution mask which decides which
of the four inputs are enabled for any store. it's used only if an
execution mask is present, otherwise we go through a direct store.
George Sapountzis [Tue, 2 Mar 2010 01:31:16 +0000 (03:31 +0200)]
glapi: fix compile with ES
José Fonseca [Mon, 1 Mar 2010 23:18:29 +0000 (23:18 +0000)]
glapi: Fix syntax.
Pauli Nieminen [Mon, 1 Mar 2010 21:47:35 +0000 (23:47 +0200)]
radeon: Reduce number of radeon_bo_map calls that require kernel entry.
DMA buffers are often remapped many times for singel cs. To reduce number of
mapping calls ending to kernel dma buffers are mapped when allocated and unmapped
when full or in cs flush. This makes indifual mapping calls in other parts of
code simple increment/decrement reference count which is faster than entering
kernel.
This improves Anholt's openarena benchmark from 36 fps to 44 fps.
Karl Schultz [Mon, 1 Mar 2010 19:21:13 +0000 (12:21 -0700)]
Remove now obsolete mesa_bzero symbol.
George Sapountzis [Mon, 1 Mar 2010 15:28:55 +0000 (17:28 +0200)]
glapi: drop SOLARIS_THREADS
It seems that SOLARIS_THREADS is not used and does not work.
George Sapountzis [Mon, 1 Mar 2010 02:44:02 +0000 (04:44 +0200)]
glapi.c: misc coscmetic for FreeTSD
- move out of of the dispatch/context block to after corresponding init functions
- use more consistent naming with corresponding init functions
- XXX use _glthread_InitTSD() vs (void)_glthread_GetTSD() in _glapi_check_multithread() XXX
George Sapountzis [Sat, 27 Feb 2010 13:19:44 +0000 (15:19 +0200)]
glapi.c: misc cosmetic
mainly, move the multithread check mutex out of the dispatch/context block,
closer to where it is used.
George Sapountzis [Fri, 26 Feb 2010 21:43:46 +0000 (23:43 +0200)]
glapi.c: mv init_glapi_relocs to glapi_getproc.c
George Sapountzis [Fri, 26 Feb 2010 18:01:20 +0000 (20:01 +0200)]
glapi.c: mv check_table to glapi_getproc.c
George Sapountzis [Fri, 26 Feb 2010 22:24:58 +0000 (00:24 +0200)]
glapi.c: split check_table to not_null and get_proc
George Sapountzis [Fri, 26 Feb 2010 17:09:38 +0000 (19:09 +0200)]
glapi.h: drop dispatch_override prototypes
cannot find them in mesa tree
George Sapountzis [Sat, 27 Feb 2010 00:48:27 +0000 (02:48 +0200)]
glapi.h: misc cosmetic
- revert context/dispatch order, similar to glapi.c
- stray GL_GLEXT_PROTOTYPES
George Sapountzis [Fri, 26 Feb 2010 18:58:24 +0000 (20:58 +0200)]
glapi.h: consolidate GET_DISPATCH() and GET_CURRENT_CONTEXT() macros
Use likely() macro, as this is what most projects use.
Drops GL_CALL define, cannot find it in mesa tree.
Also, whitespace cleaunps in glthread.h
José Fonseca [Mon, 1 Mar 2010 18:13:32 +0000 (18:13 +0000)]
nouveau: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:12:38 +0000 (18:12 +0000)]
llvmpipe: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:12:25 +0000 (18:12 +0000)]
i965: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:12:19 +0000 (18:12 +0000)]
i915g: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:12:09 +0000 (18:12 +0000)]
cell: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:11:55 +0000 (18:11 +0000)]
python: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:11:46 +0000 (18:11 +0000)]
vega: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:11:30 +0000 (18:11 +0000)]
wgl: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:11:24 +0000 (18:11 +0000)]
xorg: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:11:04 +0000 (18:11 +0000)]
glx: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:10:52 +0000 (18:10 +0000)]
egl: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:10:41 +0000 (18:10 +0000)]
dri: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:10:23 +0000 (18:10 +0000)]
mesa: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:10:07 +0000 (18:10 +0000)]
translate: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:09:55 +0000 (18:09 +0000)]
draw: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:09:40 +0000 (18:09 +0000)]
util: Rename pipe formats.
José Fonseca [Mon, 1 Mar 2010 18:09:03 +0000 (18:09 +0000)]
gallium: Standardize on the LSB->MSB notation.
Less confusing, and seems to gather more consensus.
Below are the sed commands used. This and following commits are the
result of applying this too to the whole tree, plus manual whitespaces
fixes.
s/\<PIPE_FORMAT_A8R8G8B8_UNORM\>/ASDGFSJKDGSDFGSJDFGREKT/g
s/\<PIPE_FORMAT_B8G8R8A8_UNORM\>/PIPE_FORMAT_A8R8G8B8_UNORM/g
s/\<ASDGFSJKDGSDFGSJDFGREKT\>/PIPE_FORMAT_B8G8R8A8_UNORM/g
s/\<PIPE_FORMAT_X8R8G8B8_UNORM\>/ASDGFSJKDGSDFGSJDFGREKT/g
s/\<PIPE_FORMAT_B8G8R8X8_UNORM\>/PIPE_FORMAT_X8R8G8B8_UNORM/g
s/\<ASDGFSJKDGSDFGSJDFGREKT\>/PIPE_FORMAT_B8G8R8X8_UNORM/g
s/\<PIPE_FORMAT_R8G8B8A8_UNORM_REV\>/PIPE_FORMAT_A8B8G8R8_UNORM/g
s/\<PIPE_FORMAT_R8G8B8X8_UNORM\>/PIPE_FORMAT_X8B8G8R8_UNORM/g
s/\<PIPE_FORMAT_A1R5G5B5_UNORM\>/PIPE_FORMAT_B5G5R5A1_UNORM/g
s/\<PIPE_FORMAT_A4R4G4B4_UNORM\>/PIPE_FORMAT_B4G4R4A4_UNORM/g
s/\<PIPE_FORMAT_R5G6B5_UNORM\>/PIPE_FORMAT_B5G6R5_UNORM/g
s/\<PIPE_FORMAT_A2B10G10R10_UNORM\>/PIPE_FORMAT_R10G10B10A2_UNORM/g
s/\<PIPE_FORMAT_A8L8_UNORM\>/PIPE_FORMAT_L8A8_UNORM/g
s/\<PIPE_FORMAT_A8L8_SRGB\>/PIPE_FORMAT_L8A8_SRGB/g
s/\<PIPE_FORMAT_R8G8B8A8_SRGB\>/PIPE_FORMAT_A8B8G8R8_SRGB/g
s/\<PIPE_FORMAT_R8G8B8X8_SRGB\>/PIPE_FORMAT_X8B8G8R8_SRGB/g
s/\<PIPE_FORMAT_A8R8G8B8_SRGB\>/ASDGFSJKDGSDFGSJDFGREKT/g
s/\<PIPE_FORMAT_B8G8R8A8_SRGB\>/PIPE_FORMAT_A8R8G8B8_SRGB/g
s/\<ASDGFSJKDGSDFGSJDFGREKT\>/PIPE_FORMAT_B8G8R8A8_SRGB/g
s/\<PIPE_FORMAT_X8R8G8B8_SRGB\>/ASDGFSJKDGSDFGSJDFGREKT/g
s/\<PIPE_FORMAT_B8G8R8X8_SRGB\>/PIPE_FORMAT_X8R8G8B8_SRGB/g
s/\<ASDGFSJKDGSDFGSJDFGREKT\>/PIPE_FORMAT_B8G8R8X8_SRGB/g
s/\<PIPE_FORMAT_A8B8G8R8_SNORM\>/PIPE_FORMAT_R8G8B8A8_SNORM/g
s/\<PIPE_FORMAT_X8B8G8R8_SNORM\>/PIPE_FORMAT_R8G8B8X8_SNORM/g
s/\<PIPE_FORMAT_X8UB8UG8SR8S_NORM\>/PIPE_FORMAT_R8SG8SB8UX8U_NORM/g
s/\<PIPE_FORMAT_B6UG5SR5S_NORM\>/PIPE_FORMAT_R5SG5SB6U_NORM/g
s/\<PIPE_FORMAT_S8Z24_UNORM\>/ASDGFSJKDGSDFGSJDFGREKT/g
s/\<PIPE_FORMAT_Z24S8_UNORM\>/PIPE_FORMAT_S8Z24_UNORM/g
s/\<ASDGFSJKDGSDFGSJDFGREKT\>/PIPE_FORMAT_Z24S8_UNORM/g
s/\<PIPE_FORMAT_X8Z24_UNORM\>/ASDGFSJKDGSDFGSJDFGREKT/g
s/\<PIPE_FORMAT_Z24X8_UNORM\>/PIPE_FORMAT_X8Z24_UNORM/g
s/\<ASDGFSJKDGSDFGSJDFGREKT\>/PIPE_FORMAT_Z24X8_UNORM/g
s/\<PIPE_FORMAT_YCBCR\>/PIPE_FORMAT_UYVY/g
s/\<PIPE_FORMAT_YCBCR_REV\>/PIPE_FORMAT_YUYV/g
José Fonseca [Mon, 1 Mar 2010 18:42:01 +0000 (18:42 +0000)]
progs/gallium/unit: Rename PIPE_FORMAT_A8B8G8R8_SNORM.
José Fonseca [Mon, 1 Mar 2010 18:41:05 +0000 (18:41 +0000)]
r300: Remove PIPE_FORMAT_A8B8G8R8_SNORM.
PIPE_FORMAT_R8G8B8A8_SNORM already listed.
José Fonseca [Mon, 1 Mar 2010 18:40:33 +0000 (18:40 +0000)]
softpipe: Advertise PIPE_FORMAT_R8G8B8A8_SNORM instead.
José Fonseca [Mon, 1 Mar 2010 18:40:02 +0000 (18:40 +0000)]
util: Remove PIPE_FORMAT_A8B8G8R8_SNORM.
José Fonseca [Mon, 1 Mar 2010 18:39:47 +0000 (18:39 +0000)]
gallium: Remove PIPE_FORMAT_A8B8G8R8_SNORM.
Its actually an alias for PIPE_FORMAT_R8G8B8A8_SNORM.
Michal Krol [Mon, 1 Mar 2010 18:00:40 +0000 (19:00 +0100)]
util: Generate linear<->sRGB conversion tables.
Michal Krol [Mon, 1 Mar 2010 16:57:18 +0000 (17:57 +0100)]
tgsi: Cleanup exec code for CLAMP, CMP and CND.
José Fonseca [Mon, 1 Mar 2010 16:42:54 +0000 (16:42 +0000)]
util: Fix PIPE_FORMAT_R8G8B8_SRGB swizzles.
The only user of PIPE_FORMAT_R8G8B8_SRGB is mesa, which
per src/mesa/main/texstore.c interprets it as
R8 G8 B8
and not the other way around.
José Fonseca [Mon, 1 Mar 2010 16:28:38 +0000 (16:28 +0000)]
xlib: Use PIPE_FORMAT_R8G8B8A8_UNORM(_REV) as appropriate.
José Fonseca [Mon, 1 Mar 2010 16:26:36 +0000 (16:26 +0000)]
r300: Use PIPE_FORMAT_R8G8B8A8_UNORM_REV where appropriate.
José Fonseca [Mon, 1 Mar 2010 16:25:25 +0000 (16:25 +0000)]
i915g: Use PIPE_FORMAT_R8G8B8A8_UNORM_REV where appropriate.
José Fonseca [Mon, 1 Mar 2010 16:25:04 +0000 (16:25 +0000)]
mesa: Use PIPE_FORMAT_R8G8B8A8_UNORM_REV where appropriate.
José Fonseca [Mon, 1 Mar 2010 16:24:48 +0000 (16:24 +0000)]
util: Use PIPE_FORMAT_R8G8B8A8_UNORM_REV where appropriate.
José Fonseca [Mon, 1 Mar 2010 16:24:09 +0000 (16:24 +0000)]
gallium: Introduce a new format to disambiguate PIPE_FORMAT_R8G8B8A8_UNORM.
PIPE_FORMAT_R8G8B8A8_UNORM now means just
R8 G8 B8 A8
PIPE_FORMAT_R8G8B8A8_UNORM_REV means
A8 B8 G8 R8
And the thumb rule is vertex buffers refer to PIPE_FORMAT_R8G8B8A8_UNORM,
while textures refer to PIPE_FORMAT_R8G8B8A8_UNORM_REV.
PIPE_FORMAT_R8G8B8A8_UNORM_REV is just a temporary name.
José Fonseca [Mon, 1 Mar 2010 16:10:49 +0000 (16:10 +0000)]
bin: Remove raw2png.py.
Outdated, broken, and unused.
José Fonseca [Mon, 1 Mar 2010 16:07:53 +0000 (16:07 +0000)]
util: Fix PIPE_FORMAT_R8G8B8_UNORM description and notes.
There is actually no ambiguity in use -- it is always used as
R8 G8 B8
Michal Krol [Mon, 1 Mar 2010 16:07:03 +0000 (17:07 +0100)]
r300: Save viewport and clip states before invoking blitter.
Michal Krol [Mon, 1 Mar 2010 16:06:20 +0000 (17:06 +0100)]
util: Fix u_blitter setup code after bypass_vs_clip_and_viewport removal.
Not tested.
José Fonseca [Mon, 1 Mar 2010 15:17:41 +0000 (15:17 +0000)]
gallium: Remove inexisting formats.
Can't find these formats used in any state tracker or any API.
For some of these probably the reverse notation was meant, for which
formats already exist.
José Fonseca [Mon, 1 Mar 2010 15:16:54 +0000 (15:16 +0000)]
util: Remove inexisting formats.
Can't find these formats used in any state tracker or any API.
For some of these probably the reverse notation was meant, for which
formats already exist.
José Fonseca [Mon, 1 Mar 2010 15:14:30 +0000 (15:14 +0000)]
util: A few more links for D3D formats.