Marek Olšák [Fri, 9 Apr 2010 23:09:40 +0000 (01:09 +0200)]
r300g: align the height of NPOT textures to POT
Needed by the CS checker.
Marek Olšák [Fri, 9 Apr 2010 22:10:56 +0000 (00:10 +0200)]
r300g: do not use tiling for scanout buffers
Kristian Høgsberg [Fri, 9 Apr 2010 21:16:33 +0000 (17:16 -0400)]
glx: Support direct rendering pbuffers
We've supported indirect rendering pbuffers for a while, but not direct
rendering pbuffers. The way we do this is by creating a hidden pixmap
and wrap that in a GLX pbuffer. This only works when we have DRI2 on
the server, but if the server doesn't have DRI2, it won't expose configs
with pbuffer bits enabled.
Kristian Høgsberg [Fri, 9 Apr 2010 02:09:11 +0000 (22:09 -0400)]
glx: Fix config chooser logic for 'mask' matching
When matching attributes using the 'mask' matching criteria, the spec
says that
"Only GLXFBConfigs for which the set bits of attribute include all
the bits that are set in the requested value are
considered. (Additional bits might be set in the attribute)."
The current test returns true if the two bit masks have bits in
common, specifically it matches even if the requested value has bits
set that are not set in the fbconfig attribute. For example, an
application asking for
GLX_DRAWABLE_TYPE, GLX_PIXMAP_BIT | GLX_PBUFFER_BIT,
as glxpbdemo does, will match fbconfigs that don't support pbuffer
rendering, as long as they support pixmap rendering.
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Chia-I Wu [Fri, 9 Apr 2010 17:09:04 +0000 (01:09 +0800)]
Fix copyright headers.
Update the warranty disclaimer to use the more general "THE AUTHORS OR
COPYRIGHT HOLDERS". This is done manually on files created by me. Hope
that I do not miss anything.
Chia-I Wu [Fri, 9 Apr 2010 15:38:12 +0000 (23:38 +0800)]
st/egl: Fix a typo in determining the render buffer.
Brian Paul [Fri, 9 Apr 2010 16:52:48 +0000 (10:52 -0600)]
llvmpipe: fix transposed stencil ref / values comparison
Brian Paul [Fri, 9 Apr 2010 16:09:24 +0000 (10:09 -0600)]
Merge branch '7.8'
Brian Paul [Fri, 9 Apr 2010 16:08:27 +0000 (10:08 -0600)]
st/mesa: new assertions to check array indexes
Brian Paul [Fri, 9 Apr 2010 16:03:31 +0000 (10:03 -0600)]
mesa: fix instruction indexing bugs
We were looping over instructions but only looking at the 0th instruction's
opcode.
Fixes fd.o bug 27566.
José Fonseca [Fri, 9 Apr 2010 15:56:18 +0000 (16:56 +0100)]
util: Fix typo in earlier commit.
José Fonseca [Fri, 9 Apr 2010 15:53:07 +0000 (16:53 +0100)]
util: ubyte_to_float and float_to_ubyte whenever possible.
More accurate results.
We should probably generalize these functions for more cases.
José Fonseca [Fri, 9 Apr 2010 15:30:52 +0000 (16:30 +0100)]
util: Get all depth stencil tests passing.
Note the tests don't test all the paths, in particular stride, and
ensuring the old value is preserved.
José Fonseca [Fri, 9 Apr 2010 14:25:55 +0000 (15:25 +0100)]
util: Add missing break statement.
José Fonseca [Fri, 9 Apr 2010 13:16:01 +0000 (14:16 +0100)]
util: Use consistent symbols in pack generator.
José Fonseca [Fri, 9 Apr 2010 13:14:54 +0000 (14:14 +0100)]
util: Reorder format tests -- group by format.
José Fonseca [Fri, 9 Apr 2010 13:03:02 +0000 (14:03 +0100)]
util: Add dedicated depth-stencil packing/unpacking functions.
Depth-stencil manually written given that each one is very close to
be a special case.
u_format_zs.c's still untested.
José Fonseca [Thu, 8 Apr 2010 21:45:44 +0000 (22:45 +0100)]
gallium/unit: Silence warnings.
José Fonseca [Thu, 18 Mar 2010 15:51:11 +0000 (15:51 +0000)]
scons: Set -gstabs for C++ too.
Corbin Simpson [Fri, 9 Apr 2010 13:48:04 +0000 (06:48 -0700)]
st/xorg: Fix thinko.
Ben Skeggs [Fri, 9 Apr 2010 10:58:29 +0000 (20:58 +1000)]
nouveau: Import latest nouveau_class.h from renouveau
And fix nv50_screen.c to compile against the updated header.
Corbin Simpson [Fri, 9 Apr 2010 10:38:23 +0000 (03:38 -0700)]
st/xorg: Fix bad paramf.
Should be an integer param, according to docs.
Corbin Simpson [Fri, 9 Apr 2010 10:37:53 +0000 (03:37 -0700)]
r300g: Fill out dummy fence functions.
xorg st needs them.
Corbin Simpson [Tue, 24 Nov 2009 15:42:44 +0000 (07:42 -0800)]
util: Include u_debug for debug_print_format.
Caused fun linker errors on r600g.
Chia-I Wu [Fri, 9 Apr 2010 09:49:55 +0000 (17:49 +0800)]
st/egl: Move probe interface to native_probe.h.
native.h is getting a little messy over time.
Chia-I Wu [Fri, 9 Apr 2010 09:27:06 +0000 (17:27 +0800)]
st/egl: Remove pbuffer from the native interface.
A pbuffer is an EGL resource. It does not need a native display to
create.
Vinson Lee [Fri, 9 Apr 2010 07:40:15 +0000 (00:40 -0700)]
util: Set DXTN_LIBNAME to libtxc_dxtn.dylib on Mac OS X.
Brian Paul [Thu, 8 Apr 2010 19:11:05 +0000 (13:11 -0600)]
docs: link to 7.8.2 release notes
Brian Paul [Thu, 8 Apr 2010 19:10:51 +0000 (13:10 -0600)]
docs: initial 7.8.2 release notes
Brian Paul [Thu, 8 Apr 2010 19:09:01 +0000 (13:09 -0600)]
progs/tests: added some debug code (disabled)
Brian Paul [Thu, 8 Apr 2010 19:05:35 +0000 (13:05 -0600)]
st/mesa: fix glDrawPixels(GL_DEPTH_COMPONENT) regression
Commit
1454f20a991ddda35f1a2ffda953012078b407ba caused the regression.
When the vertex shader emitted both a texcoord and color we were grabbing
the wrong vertex attributes. Fix the draw_quad() code to put texcoords
in slot[1] and color in slot[2]. That's a bit cleaner than changing
the vertex shader code.
Tested with progs/tests/zreaddraw.c
José Fonseca [Thu, 8 Apr 2010 18:48:02 +0000 (19:48 +0100)]
util: Support PIPE_FORMAT_B4G4R4X4_UNORM and PIPE_FORMAT_R8G8B8X8_UNORM.
José Fonseca [Thu, 8 Apr 2010 18:47:40 +0000 (19:47 +0100)]
gallium: Add a couple more of D3D9 formats forgotten earlier.
Li Peng [Thu, 8 Apr 2010 17:52:55 +0000 (13:52 -0400)]
intel: Call intel_prepare_render() in intelClear()
Make sure we have up to date buffers before we start looking at
the tiling bits to determine how to clear.
José Fonseca [Thu, 8 Apr 2010 18:03:05 +0000 (19:03 +0100)]
util: (Almost) universal format translation function.
Untested.
José Fonseca [Thu, 8 Apr 2010 17:55:51 +0000 (18:55 +0100)]
util: Describe, implement, and test the new D3D9 color formats.
José Fonseca [Thu, 8 Apr 2010 17:51:45 +0000 (18:51 +0100)]
gallium: Add missing D3D9 color formats.
José Fonseca [Thu, 8 Apr 2010 16:51:31 +0000 (17:51 +0100)]
util: is_array/mixed/etc is only meaningful for plain formats.
José Fonseca [Thu, 8 Apr 2010 16:50:46 +0000 (17:50 +0100)]
util: Keep const keyword when unpacking formats.
José Fonseca [Thu, 8 Apr 2010 15:24:43 +0000 (16:24 +0100)]
util: Reorder the code generated function so that they are grouped by format.
Makes it easier to copy and paste.
Li Peng [Thu, 8 Apr 2010 17:52:55 +0000 (13:52 -0400)]
intel: Call intel_prepare_render() in intelClear()
Make sure we have up to date buffers before we start looking at
the tiling bits to determine how to clear.
Zack Rusin [Thu, 8 Apr 2010 14:53:21 +0000 (10:53 -0400)]
draw llvm: hook up the generated function into the draw elts path
we were only using the jited function in the linear case, now drawelts
correctly uses the same path. it results in a significant gain in
real world apps (openarena went from 23fps to 29fps)
José Fonseca [Thu, 8 Apr 2010 10:00:42 +0000 (11:00 +0100)]
draw: Fix vertex buffer indexation.
José Fonseca [Thu, 8 Apr 2010 09:36:16 +0000 (10:36 +0100)]
util: Don't call util_dl_close(library) when util_format_s3tc_init is successful."
Otherwise the library will be unloaded and function pointers become invalid.
This reverts commit
bc2bc0306e4dd8c56bd66a8aabf2433f6689653d.
Vinson Lee [Thu, 8 Apr 2010 07:52:35 +0000 (00:52 -0700)]
util: util_dl_close(library) before exiting util_format_s3tc_init.
Vinson Lee [Thu, 8 Apr 2010 07:30:40 +0000 (00:30 -0700)]
draw llvm: Remove unnecessary header.
Vinson Lee [Thu, 8 Apr 2010 07:18:46 +0000 (00:18 -0700)]
llvmpipe: Remove unnecessary header.
Dave Airlie [Thu, 8 Apr 2010 06:48:41 +0000 (16:48 +1000)]
Merge remote branch 'origin/7.8'
Conflicts:
Makefile
configs/default
src/mesa/main/version.h
Chia-I Wu [Mon, 5 Apr 2010 02:06:52 +0000 (10:06 +0800)]
st/dri: Fix setTexBuffer2 with __DRI_TEXTURE_FORMAT_RGB.
When the format is __DRI_TEXTURE_FORMAT_RGB, the texture should be
treated as if there is no alpha channel.
Dave Airlie [Sat, 3 Apr 2010 03:34:29 +0000 (13:34 +1000)]
texenvprogram: fix for ARB_draw_buffers.
piglit has a test called fbo-drawbuffers, this fails for me on r300g,
and fixing the texenv program to use the DATA outputs fixes it.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Zack Rusin [Wed, 7 Apr 2010 21:46:55 +0000 (17:46 -0400)]
draw llvm: highly reduce the compilation times for draw llvm
our code resets pipe_vertex_buffer's with different offsets when rendering
vbo, meaning that we kept creating insane number of shaders even for simple
apps e.g. geartrain had 54 shaders and it was taking almost 27 seconds just to
compile them. this patch passes pipe_vertex_buffer's to the jit function and lets
it to the stride/buffer_offset computation at run time. the slowdown at runtime
is largely unnoticable but the we go from 54 shaders to 3, and from 27 seconds to less
than 1.
José Fonseca [Wed, 7 Apr 2010 21:17:07 +0000 (22:17 +0100)]
gallivm: Get the format translation logic write.
José Fonseca [Wed, 7 Apr 2010 21:16:18 +0000 (22:16 +0100)]
util: Support fixed formats conversion.
José Fonseca [Wed, 7 Apr 2010 20:00:18 +0000 (21:00 +0100)]
util: Add copyright header to u_half.h
José Fonseca [Wed, 7 Apr 2010 20:00:05 +0000 (21:00 +0100)]
util: Remove the half typedef from p_compiler.h.
Unnecessary, and doesn't even guarantee size.
José Fonseca [Wed, 7 Apr 2010 19:55:31 +0000 (20:55 +0100)]
llvmpipe: Add missing include.
José Fonseca [Wed, 7 Apr 2010 19:47:38 +0000 (20:47 +0100)]
util: Use stubs for the dynamically loaded S3TC functions.
Loosely based on Luca Barbieri's commit
52e9b990a192a9329006d5f7dd2ac222effea5a5.
José Fonseca [Wed, 7 Apr 2010 19:41:09 +0000 (20:41 +0100)]
draw: Fix MSVC build (snprintf->util_snprintf).
José Fonseca [Wed, 7 Apr 2010 18:58:18 +0000 (19:58 +0100)]
util: Remove u_tile.c YCbCr's.
Superseded by u_format_yuv.c. Also PIPE_FORMAT_YUYV's interpretation was
inconsistent: it was being interpreted as VYUY.
José Fonseca [Wed, 7 Apr 2010 18:47:24 +0000 (19:47 +0100)]
util: Implement YUV and subsampled RGB format conversion.
Brian Paul [Wed, 7 Apr 2010 13:09:52 +0000 (07:09 -0600)]
draw: init draw->pt.middle.general = NULL just to be safe
This field should be null from the initial calloc() of the draw context,
but let's be safe (and improve understanding of the code).
José Fonseca [Wed, 7 Apr 2010 12:49:29 +0000 (13:49 +0100)]
llvmpipe: Fix USE_DRAW_LLVM build. Use lp_build_engine.
Michel Dänzer [Wed, 7 Apr 2010 09:21:15 +0000 (11:21 +0200)]
r300: Initialize compiler.max_temp_regs for blits.
Blits were broken since commit
e41a64591bf1a74465bf0adc7d35c991c4cfb4fe
('r300/compiler: make the max number of fragment shader temporaries
adjustable').
Vinson Lee [Wed, 7 Apr 2010 08:04:45 +0000 (01:04 -0700)]
draw llvm: Remove unnecessary headers.
Vinson Lee [Wed, 7 Apr 2010 07:45:40 +0000 (00:45 -0700)]
gallium: Add files to Makefile.
This was missed in commit
ae69f9fbf0a1aab7186e5b644085a5fe5aea99af.
New files from the gallium_draw_llvm merge were added to SCons but
not make.
Vinson Lee [Wed, 7 Apr 2010 06:48:00 +0000 (23:48 -0700)]
llvmpipe: Remove unused variable.
Ben Skeggs [Wed, 7 Apr 2010 05:41:17 +0000 (15:41 +1000)]
nouveau: allow multiple simultaneous maps of a pipe_transfer
I'm not entirely convinced we want this behaviour (the underlying nouveau_bo
doesn't support it either), but since certain parts of the mesa state
tracker appear to require it lets make it work for now.
Ben Skeggs [Wed, 7 Apr 2010 05:06:59 +0000 (15:06 +1000)]
nv50: fix assertion that caused piglit texturing/texrect-many to fail
Zack Rusin [Wed, 7 Apr 2010 02:41:11 +0000 (22:41 -0400)]
scons: define DRAW_LLVM if we're building it
Zack Rusin [Wed, 7 Apr 2010 00:27:17 +0000 (20:27 -0400)]
draw llvm: disable printing of the LLVM ir
Marc Dietrich [Tue, 6 Apr 2010 21:44:08 +0000 (23:44 +0200)]
cell: fix build
compile fix for cell driver.
Signed-off-by: Brian Paul <brianp@vmware.com>
Brian Paul [Wed, 7 Apr 2010 02:20:13 +0000 (20:20 -0600)]
gallium/draw: add additional DRAW_LLVM check
Fixes build breakage.
Zack Rusin [Wed, 7 Apr 2010 00:09:08 +0000 (20:09 -0400)]
Merge branch 'gallium_draw_llvm'
José Fonseca [Tue, 6 Apr 2010 21:49:57 +0000 (22:49 +0100)]
llvmpipe: Support S3TC when util_format_s3tc_enabled is set.
José Fonseca [Tue, 6 Apr 2010 21:49:33 +0000 (22:49 +0100)]
gallivm: Fallback to calling util_format_description::fetch_float for any format we can't code LLVM IR directly.
José Fonseca [Tue, 6 Apr 2010 21:37:08 +0000 (22:37 +0100)]
gallivm: Move the global LLVM objects (module, engine, provider, target) into here.
Zack Rusin [Tue, 6 Apr 2010 21:14:30 +0000 (17:14 -0400)]
llvmpipe: use a define to decide whether to use draw llvm paths
right now disabled by default
Zack Rusin [Tue, 6 Apr 2010 21:14:13 +0000 (17:14 -0400)]
draw llvm: disable debugging output
Zack Rusin [Tue, 6 Apr 2010 20:28:48 +0000 (16:28 -0400)]
draw llvm: implement simple pipeline caching using variants
Zack Rusin [Tue, 6 Apr 2010 16:37:31 +0000 (12:37 -0400)]
draw llvm: fix iteration for larger vertex arrays
we were trying to store the outputs starting at the same offset we
were using for the input arrays, which was writing beyond the end of
the output array.
Zack Rusin [Tue, 6 Apr 2010 16:07:33 +0000 (12:07 -0400)]
draw llvm: iterate with the correct stop over the outputs
it's whatever the var step is (4 usually) not an unconditional 1
Michal Krol [Tue, 6 Apr 2010 15:19:28 +0000 (17:19 +0200)]
util: Respect destination stride in pipe_get_tile_swizzle().
Zack Rusin [Tue, 6 Apr 2010 15:00:35 +0000 (11:00 -0400)]
draw llvm: fix draw arrays
we don't index within the outputs but only within the inputs
José Fonseca [Sun, 4 Apr 2010 19:43:52 +0000 (20:43 +0100)]
util: Make half float lookup tables constant.
José Fonseca [Sun, 4 Apr 2010 19:14:55 +0000 (20:14 +0100)]
util: Remove the hand written SRGB format support code.
José Fonseca [Sun, 4 Apr 2010 19:12:02 +0000 (20:12 +0100)]
util: Support all SRGB formats.
Based on code from Brian Paul and Michal Krol.
Chia-I Wu [Tue, 6 Apr 2010 11:52:39 +0000 (19:52 +0800)]
egl_dri2: Flush before context switch and swap buffers.
DRI does not define any callback to flush the current context. GLX
loader simply calls glFlush. Follow the GLX loader here.
Chia-I Wu [Tue, 6 Apr 2010 10:55:40 +0000 (18:55 +0800)]
st/dri: Implement DRI image extension.
Chia-I Wu [Tue, 6 Apr 2010 10:06:03 +0000 (18:06 +0800)]
progs/egl: Correctly check GL_OES_EGL_image.
The hack was added because GL_OES_EGL_image was not exported in the
extension string.
Chia-I Wu [Tue, 6 Apr 2010 09:46:17 +0000 (17:46 +0800)]
mesa: Add OES_EGL_image to extension list.
Chia-I Wu [Tue, 6 Apr 2010 05:24:24 +0000 (13:24 +0800)]
progs/egl: Fix the blank window in pbuffer demo.
EGL requires eglSwapBuffers to be called on the current surface.
Chia-I Wu [Tue, 6 Apr 2010 05:17:56 +0000 (13:17 +0800)]
progs/egl: Port drawtex and torus to eglut.
This brings the demos also to KMS and removes about 400 duplicated lines
of code.
Brian Paul [Tue, 6 Apr 2010 04:04:56 +0000 (22:04 -0600)]
st/mesa: reformatting
Brian Paul [Tue, 6 Apr 2010 03:59:05 +0000 (21:59 -0600)]
st/mesa: put fragment wpos code into separate function
Zack Rusin [Tue, 6 Apr 2010 04:13:20 +0000 (00:13 -0400)]
draw llvm: fix loop iteration and vertex header offsets
the loop was doing a NE comparison which we could have skipped if the prim
was triangles (3 verts) and our step was 4 verts. also fix offsets in conversion
to aos.
Chia-I Wu [Tue, 6 Apr 2010 03:51:25 +0000 (11:51 +0800)]
egl: Unbind the old context in _eglBindContext.
The last commit incorrectly moved the code under an "else".
Chia-I Wu [Mon, 5 Apr 2010 13:26:34 +0000 (21:26 +0800)]
egl: Fix eglMakeCurrent with different surfaces.
0a82fadcdd0b6ebbc345c7c302da0e0efce40a98 seems to trigger a bug in
_eglBindContext. Rework the logics yet again. It is simpler, and
hopefully correct this time.
Chia-I Wu [Mon, 5 Apr 2010 10:38:55 +0000 (18:38 +0800)]
st/es: Remove unnedded --whole-archive.
All public functions in the archives are either directly referenced or
indirectly referenced by _glapi_get_proc_address. There is no need for
--whole-archive.
Vinson Lee [Tue, 6 Apr 2010 01:13:09 +0000 (18:13 -0700)]
scons: Link expat in dri builds.
Fixes this i915g error.
i915_dri.so: undefined symbol: XML_ParserCreate
Brian Paul [Mon, 5 Apr 2010 23:33:12 +0000 (17:33 -0600)]
mesa: added Makefile.egl to GALLIUM_FILES