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
Thierry Vignaud [Mon, 5 Apr 2010 23:31:18 +0000 (17:31 -0600)]
mesa: add missing file to GALLIUM_FILES
Signed-off-by: Brian Paul <brianp@vmware.com>
Zack Rusin [Mon, 5 Apr 2010 20:43:53 +0000 (16:43 -0400)]
draw llvm: when generating the vertex_header struct adjust its name
change the name to not clash and accuretly represent the number of inputs
we store in the data member
Ian Romanick [Mon, 5 Apr 2010 19:45:20 +0000 (12:45 -0700)]
docs: Update 7.8.1 release MD5 sums
Marek Olšák [Sun, 4 Apr 2010 21:15:15 +0000 (23:15 +0200)]
st/mesa: trivially enable GL_EXT_gpu_program_parameters
Marek Olšák [Mon, 5 Apr 2010 17:39:55 +0000 (19:39 +0200)]
r300g: enforce microtiled zbuffer from X server
This should be relatively safe, I think.
Brian Paul [Mon, 5 Apr 2010 17:22:32 +0000 (11:22 -0600)]
mesa: bump MESA_TINY version
Marek Olšák [Mon, 5 Apr 2010 16:52:55 +0000 (18:52 +0200)]
r300g: typecast using the r300_texture function
Brian Paul [Mon, 5 Apr 2010 17:12:59 +0000 (11:12 -0600)]
docs: added news item for 7.8.1 release
Brian Paul [Mon, 5 Apr 2010 17:10:51 +0000 (11:10 -0600)]
docs: add link to 7.8.1 release notes
Brian Paul [Mon, 5 Apr 2010 17:00:52 +0000 (11:00 -0600)]
softpipe: index the correct blend/mask state index
Need to check pipe_blend_state::independent_blend_enable to determine
which render target/index to use when checking blend enable and colormask
state.
This is part of the fix for piglit/fbo-drawbuffers
Ian Romanick [Mon, 5 Apr 2010 16:51:18 +0000 (09:51 -0700)]
docs: Add 7.8.1 release MD5 sums
Ian Romanick [Mon, 5 Apr 2010 16:49:08 +0000 (09:49 -0700)]
mesa: set version string to 7.8.1
Ian Romanick [Mon, 5 Apr 2010 16:12:33 +0000 (09:12 -0700)]
Initial 7.8.1 release notes
Henri Verbeet [Sun, 4 Apr 2010 17:24:46 +0000 (10:24 -0700)]
mesa: update_arrays() depends on program state.
It uses ctx->VertexProgram._Current.
Signed-off-by: Brian Paul <brianp@vmware.com>
Brian Paul [Mon, 5 Apr 2010 14:09:57 +0000 (08:09 -0600)]
mesa: remove unused var
Fixes a coverity warnings.
Brian Paul [Mon, 5 Apr 2010 14:01:29 +0000 (08:01 -0600)]
i965g: change value of VERT_RESULT_PSIZ hack to avoid warnings
Brian Paul [Mon, 5 Apr 2010 14:01:05 +0000 (08:01 -0600)]
mesa: check for _NEW_BUFFERS for color read format queries
Brian Paul [Tue, 30 Mar 2010 19:36:10 +0000 (13:36 -0600)]
util: added util_dl_error()
Ian Romanick [Mon, 5 Apr 2010 06:07:30 +0000 (23:07 -0700)]
Merge branch '7.8'
Ian Romanick [Mon, 5 Apr 2010 06:06:01 +0000 (23:06 -0700)]
Update to final names from GLX_INTEL_swap_event spec
Fixes bug #27454.
Marek Olšák [Mon, 5 Apr 2010 05:01:52 +0000 (07:01 +0200)]
r300g: enable OpenGL 2.1 on r3xx-r4xx chipsets
Marek Olšák [Mon, 5 Apr 2010 04:26:11 +0000 (06:26 +0200)]
r300g: add fallback for back stencil reference value and masks for r3xx-r4xx
This splits rendering into two passes when front and back stencil
reference value, value mask, or write mask don't match.
The advantages of doing it in the driver instead of in st are:
* SWTCL is executed just once and the resulting vertex buffer is reused
in the second pass.
* Lower driver overhead due to the fallback being very close to
the actual draw emission with minimum state change.
Marek Olšák [Mon, 5 Apr 2010 01:19:08 +0000 (03:19 +0200)]
r300g: simplify accessing screen from context
Marek Olšák [Mon, 5 Apr 2010 00:44:16 +0000 (02:44 +0200)]
r300g: remove some XXXs
We can't have more than 8 texcoord outputs in VS.
Marek Olšák [Mon, 5 Apr 2010 00:11:26 +0000 (02:11 +0200)]
r300g: raise the number of texture units to 16 for all supported chipsets
As per Radeon 9700 Opengl Programming and Optimization Guide [1], there are
16 texture units even on the first r300 chipsets. If you think I am wrong,
feel free to propose a patch.
[1] Here's PDF: http://people.freedesktop.org/~mareko/
Marek Olšák [Sun, 14 Feb 2010 22:57:46 +0000 (23:57 +0100)]
r300/compiler: make the max number of fragment shader temporaries adjustable
Marek Olšák [Sun, 4 Apr 2010 14:09:59 +0000 (16:09 +0200)]
r300g: is_npot -> uses_pitch
Marek Olšák [Sun, 4 Apr 2010 07:58:40 +0000 (09:58 +0200)]
r300g: enable conditional rendering also for SWTCL
Vinson Lee [Mon, 5 Apr 2010 02:15:01 +0000 (19:15 -0700)]
progs: Include X11 headers and libraries in SCons build.
Fixes Mac OS X SCons build.
Vinson Lee [Mon, 5 Apr 2010 01:28:03 +0000 (18:28 -0700)]
glut: Include X11 headers and libraries in SCons build.
Fixes Mac OS X SCons build.
Vinson Lee [Mon, 5 Apr 2010 01:07:12 +0000 (18:07 -0700)]
glew: Include X11 headers and libraries in SCons build.
Fixes Mac OS X SCons build.
Brian Paul [Mon, 5 Apr 2010 01:08:21 +0000 (19:08 -0600)]
docs: update status of transform feedback and instanced drawing
Brian Paul [Mon, 5 Apr 2010 00:28:41 +0000 (18:28 -0600)]
mesa: don't turn on GL_EXT_transform_feedback yet
Brian Paul [Mon, 5 Apr 2010 00:22:46 +0000 (18:22 -0600)]
st/mesa: call pipe_context::draw_arrays/elements_instanced()
Brian Paul [Mon, 5 Apr 2010 00:21:16 +0000 (18:21 -0600)]
mesa: implement core Mesa support for GL_ARB_draw_instanced
Brian Paul [Mon, 5 Apr 2010 00:18:28 +0000 (18:18 -0600)]
mesa: new validation functions for GL_ARB_draw_instanced
Brian Paul [Mon, 5 Apr 2010 00:17:06 +0000 (18:17 -0600)]
mesa: new extension flag for GL_EXT/ARB_draw_instanced
Brian Paul [Mon, 5 Apr 2010 00:15:30 +0000 (18:15 -0600)]
glapi: regenerated files for GL_ARB_draw_instanced
Brian Paul [Mon, 5 Apr 2010 00:14:49 +0000 (18:14 -0600)]
glapi: plug in ARB_draw_instanced.xml
Brian Paul [Mon, 5 Apr 2010 00:14:03 +0000 (18:14 -0600)]
glapi: ARB_draw_instanced.xml file
Ian Romanick [Sun, 4 Apr 2010 23:54:00 +0000 (16:54 -0700)]
Merge branch '7.8'