OSDN Git Service
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
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>
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.
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>
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.
Vinson Lee [Fri, 2 Apr 2010 08:08:31 +0000 (01:08 -0700)]
progs/gallium/unit: Silence uninitialized variable warnings.
Vinson Lee [Fri, 2 Apr 2010 07:12:59 +0000 (00:12 -0700)]
glx: Fix compilation errors on non-GLX_DIRECT_RENDERING builds.
Add ifdef guards around variables of types defined only for
GLX_DIRECT_RENDERING.
Luca Barbieri [Fri, 2 Apr 2010 05:26:33 +0000 (07:26 +0200)]
gallium/util: print \n after DXTn printf
Luca Barbieri [Fri, 2 Apr 2010 04:21:19 +0000 (06:21 +0200)]
softpipe: remove S3TC init, since it's done on-demand now
Vinson Lee [Fri, 2 Apr 2010 05:29:23 +0000 (22:29 -0700)]
progs/gallium/unit: Move declaration before code.
Fixes SCons build.
Brian Paul [Fri, 2 Apr 2010 04:32:44 +0000 (22:32 -0600)]
glsl: fix bad return value in link_transform_feedback()
Brian Paul [Fri, 2 Apr 2010 04:19:52 +0000 (22:19 -0600)]
gallium/util: remove extraneous semicolon
Brian Paul [Fri, 2 Apr 2010 04:15:17 +0000 (22:15 -0600)]
gallium: remove old comment about return values
Brian Paul [Fri, 2 Apr 2010 04:15:17 +0000 (22:15 -0600)]
glsl: remove obsolete comment
Brian Paul [Fri, 2 Apr 2010 04:15:17 +0000 (22:15 -0600)]
glsl: do extra link checking for transform feedback
Brian Paul [Fri, 2 Apr 2010 04:15:16 +0000 (22:15 -0600)]
docs: update GL3 / GL_ARB_fragment_coord_conventions status
Brian Paul [Fri, 2 Apr 2010 04:15:16 +0000 (22:15 -0600)]
mesa: minor fixes in _mesa_GetTransformFeedbackVarying()
Brian Paul [Fri, 2 Apr 2010 04:15:16 +0000 (22:15 -0600)]
glsl: append built-in, used varying vars to the varying vars list
Brian Paul [Fri, 2 Apr 2010 04:15:16 +0000 (22:15 -0600)]
mesa: make _mesa_copy_string() non-static
Brian Paul [Fri, 2 Apr 2010 04:15:16 +0000 (22:15 -0600)]
glsl: pass datatype to _mesa_add_varying()
Will be needed later for transform feedback support.
Brian Paul [Fri, 2 Apr 2010 04:15:16 +0000 (22:15 -0600)]
glsl: add more vertex/fragment output info helpers
Luca Barbieri [Fri, 2 Apr 2010 02:51:50 +0000 (04:51 +0200)]
gallium/util: revert util_format_init addition
Putting calls to util_format_init all over the codebase is infeasible.
Instead, half float tables are pregenerated, and the s3tc library is
loaded on demand.
I believe this is a solution that combines performance, cleanliness,
flexibility and portability.
Luca Barbieri [Fri, 2 Apr 2010 03:23:32 +0000 (05:23 +0200)]
gallium/util: add util_format_is_supported to check for pack/unpack
This improves the code by making it more readable, and removes
special knowledge of S3TC and other formats from softpipe.
Luca Barbieri [Fri, 2 Apr 2010 02:48:42 +0000 (04:48 +0200)]
gallium/util: load s3tc on demand
This changes the S3TC function pointers to be initialized to stubs
that load the S3TC library and then delegate to the real functions.
If the S3TC library fails to load, the function pointers are replaced
with a "nop" function.
The code is also changed to attempt to load the library only one time.c
Note that unlike checking for a flag, this method has no performance
cost at all.
The use of the "nop" functions also allows to avoid most checks, that
are only preserved when the function does non-trivial work.
Luca Barbieri [Fri, 2 Apr 2010 02:35:20 +0000 (04:35 +0200)]
progs/gallium: add unit test for u_half
Luca Barbieri [Fri, 2 Apr 2010 01:48:59 +0000 (03:48 +0200)]
gallium/util: pregenerate half float tables
This solution avoids the issue of how to run the initializers and
also allows those pages (and the parts of them in processor caches)
to be shared between multiple processes.
The drawback is slightly higher library size.
Chia-I Wu [Fri, 2 Apr 2010 02:27:57 +0000 (10:27 +0800)]
st/vega: Do not depend on libm.
This fixes the "no rule to make target -lm" error on darwin, reported by
Jeremy Huddleston.
Chia-I Wu [Fri, 2 Apr 2010 02:19:43 +0000 (10:19 +0800)]
st/egl: Add a missing break.
The swtich in egl_g3d_st_framebuffer_validate misses a break.
Chia-I Wu [Fri, 2 Apr 2010 02:03:20 +0000 (10:03 +0800)]
progs/egl: Update .gitignore.
Chia-I Wu [Fri, 2 Apr 2010 01:59:36 +0000 (09:59 +0800)]
progs/egl: Link to eglut first.
This moves eglut before EGL so that the symbols can be resolved.
Vinson Lee [Fri, 2 Apr 2010 01:49:54 +0000 (18:49 -0700)]
gallium/util: s/inline/INLINE/
Fixes MSVC build.
Luca Barbieri [Fri, 2 Apr 2010 00:36:59 +0000 (02:36 +0200)]
nv50: call util_format_init
Needed to fetch static vertex attributes.