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
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.
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 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'
Ian Romanick [Sun, 4 Apr 2010 23:53:41 +0000 (16:53 -0700)]
gl: updated glxext.h to version 27
Chia-I Wu [Mon, 1 Mar 2010 07:21:46 +0000 (15:21 +0800)]
progs/egl: Add an OpenGL ES demo for EGL_OES_image_pixmap.
The demo uses a Pixmap as its drawing area, and whatever is drawn on the
pixmap will be used as a texture to draw a cube.
Chia-I Wu [Thu, 25 Feb 2010 15:10:47 +0000 (23:10 +0800)]
st/mesa: Implement GL_OES_EGL_image driver hooks.
Use st_manager::get_egl_image to look up GLeglImageOES and implement
EGLImageTargetTexture2D and EGLImageTargetRenderbufferStorage.
Chia-I Wu [Fri, 12 Mar 2010 01:56:11 +0000 (09:56 +0800)]
st/egl: Implement get_egl_image hook.
This hook may be used by rendering state trackers to implement EGLImage
extensions.
Dave Airlie [Sun, 4 Apr 2010 10:31:42 +0000 (20:31 +1000)]
r300g: fix TFP stride override.
We should use pitch for the overriden state, fixes one half of the tfp test.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Marek Olšák [Sun, 4 Apr 2010 06:59:09 +0000 (08:59 +0200)]
r300g: add conditional rendering
Marek Olšák [Sun, 21 Feb 2010 17:22:18 +0000 (18:22 +0100)]
r300g: add r4xx fragment shader registers
In case anyone needs it, it's here.
Marek Olšák [Sun, 4 Apr 2010 01:54:09 +0000 (03:54 +0200)]
r300g: do not use the c++ template keyword
It makes life for some code browsing utilites easier.
Marek Olšák [Sat, 3 Apr 2010 15:08:45 +0000 (17:08 +0200)]
r300g: properly setup textures from X server
The setup needs be done after querying tiling flags.
Vinson Lee [Sat, 3 Apr 2010 19:14:21 +0000 (12:14 -0700)]
util: Use GCC atomic bultins on GCC 4.1 and higher only.
Jeremy Huddleston [Thu, 1 Apr 2010 19:28:41 +0000 (12:28 -0700)]
xdemos: Build object files first
This helps debugging on darwin.
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
Dave Airlie [Sat, 3 Apr 2010 11:52:09 +0000 (21:52 +1000)]
r300g: fix color tiling for buffer from X server.
The tiling setup needs a bit of work, but this should be good enough for now,
when we get buffers from the kernel we need to store their tiling properties.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Brian Paul [Sat, 3 Apr 2010 04:38:18 +0000 (22:38 -0600)]
mesa: display list support for GL_EXT_transform_feedback
Brian Paul [Sat, 3 Apr 2010 04:38:00 +0000 (22:38 -0600)]
mesa: plug in GL_EXT_transform_feedback functions into dispatch
Brian Paul [Sat, 3 Apr 2010 04:37:30 +0000 (22:37 -0600)]
glapi: regenerated files for EXT_transform_feedback
Brian Paul [Sat, 3 Apr 2010 04:36:30 +0000 (22:36 -0600)]
glapi: include/build EXT_transform_feedback.xml
Brian Paul [Sat, 3 Apr 2010 04:35:56 +0000 (22:35 -0600)]
glapi: new EXT_transform_feedback.xml file
Brian Paul [Sat, 3 Apr 2010 04:32:52 +0000 (22:32 -0600)]
glapi: fix error message
Dave Airlie [Sat, 3 Apr 2010 02:17:57 +0000 (12:17 +1000)]
r300 compiler: add target output debugging.
print the output target in the FP debug.
Signed-off-by: Dave Airlie <airlied@redhat.com>
José Fonseca [Fri, 2 Apr 2010 23:51:19 +0000 (00:51 +0100)]
util: Revert unsolicited, untested, unreviewed, and broken changes to format support.
Not all is bad, but I'm afraid I'll have to throw the baby with the water
given they are all tied to together.
José Fonseca [Fri, 2 Apr 2010 18:39:16 +0000 (19:39 +0100)]
python/tests: Output test results in a format that Hudson CI can understand.
Zack Rusin [Fri, 2 Apr 2010 22:52:32 +0000 (18:52 -0400)]
draw llvm: fix storing of outputs for the rest of the pipeline
there's no good way of aligning the output's, and since the vertex_header
is variable sized in the first place we need to extract elements from a vector
and store them individually into an array. this gets the basic examples working
again
Corbin Simpson [Fri, 2 Apr 2010 21:25:38 +0000 (14:25 -0700)]
gallium/docs: Dithering might not actually do anything.
Corbin Simpson [Fri, 2 Apr 2010 21:21:50 +0000 (14:21 -0700)]
r300g: Expound on dithering comment.
Dave Airlie [Fri, 2 Apr 2010 21:00:03 +0000 (07:00 +1000)]
r300g: make dithering work like fglrx.
From fglrx traces the dithering is never enabled.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Yann Droneaud [Fri, 2 Apr 2010 13:44:26 +0000 (13:44 +0000)]
gallium: fix dri_destroy_option_cache() when optionCache.info is NULL
With an Intel 855GM handled by intel_drv, there's a crash with Gallium3D
enabled DRI driver for Intel i915 (--enable-gallium-intel).
The Gallium3D driver doesn't support the 855GM as expected by
intel_drv, it failed to open the screen and give an half
initialized screen structure to dri_destroy_option_cache():
optionCache.info is NULL, so it's crashing while trying
to free array content. This patch at least fix the crash in the function.
Here's some logs of the fixed version:
[ 16274.137] LoaderOpen(/opt/mesa/lib/xorg/modules/drivers/intel_drv.so)
[ 16274.139] (II) Loading /opt/mesa/lib/xorg/modules/drivers/intel_drv.so
[ 16274.183] (II) Module intel: vendor="X.Org Foundation"
[ 16274.183] compiled for 1.8.0, module version = 2.11.0
[ 16274.183] Module class: X.Org Video Driver
[ 16274.183] ABI class: X.Org Video Driver, version 7.0
[ 16274.183] (II) intel: Driver for Intel Integrated Graphics Chipsets: i810,
i810-dc100, i810e, i815, i830M, 845G, 852GM/855GM, 865G, 915G,
E7221 (i915), 915GM, 945G, 945GM, 945GME, Pineview GM, Pineview G,
965G, G35, 965Q, 946GZ, 965GM, 965GME/GLE, G33, Q35, Q33, GM45,
4 Series, G45/G43, Q45/Q43, G41, B43, Clarkdale, Arrandale
[ 16274.382] (II) intel(0): Integrated Graphics Chipset: Intel(R) 855GME
[ 16274.382] (--) intel(0): Chipset: "852GM/855GM"
[ 16276.675] (II) intel(0): [DRI2] Setup complete
[ 16276.675] (II) intel(0): [DRI2] DRI driver: i915
debug_get_option: GALLIUM_TRACE = (null)
debug_get_bool_option: GALLIUM_RBUG = FALSE
debug_get_bool_option: INTEL_DUMP_CMD = FALSE
i915_create_screen: unknown pci id 0x3582, cannot create screen
dri_init_screen_helper: failed to create pipe_screen
[ 16276.794] (EE) AIGLX error: Calling driver entry point failed
[ 16276.794] (EE) AIGLX: reverting to software rendering
[ 16276.794] (II) AIGLX: Screen 0 is not DRI capable
[ 16276.796] (II) AIGLX: Loaded and initialized /opt/mesa/lib/dri/swrast_dri.so
[ 16276.796] (II) GLX: Initialized DRISWRAST GL provider for screen 0
Signed-off-by: Yann Droneaud <yann@droneaud.fr>
Reviewed-by: Corbin Simpson <MostAwesomeDude@gmail.com>
Zack Rusin [Fri, 2 Apr 2010 19:56:34 +0000 (15:56 -0400)]
draw llvm: fix translation of formats with variable components
Brian Paul [Fri, 2 Apr 2010 15:17:47 +0000 (09:17 -0600)]
llvmpipe: limit max texture size to 2Kx2K for now
MAXWIDTH/HEIGHT were 2048 but the max texture size was 4096.
This caused a crash if a 4Kx4K texture was created and rendered to.
See comment about max framebuffer size in lp_scene.h.
Also added assertions to catch this inconsistancy in the future.
Vinson Lee [Fri, 2 Apr 2010 08:14:24 +0000 (01:14 -0700)]
gallivm: Add fallthrough comment at end of case statement.
The code is correct. Tell Coverity that the fallthrough case is
intentional.