mesa.git
16 years agotgsi: Add tgsi_text utility module.
Michal Krol [Sat, 12 Jul 2008 15:06:37 +0000 (17:06 +0200)]
tgsi: Add tgsi_text utility module.

Translates textual shader into a binary token stream.
The syntax matches the tgsi_dump module, so it's possible to
simply copy-paste the shader dump and transform it back
to a binary form.

16 years agotgsi: Fix dumping of indirect addressing.
Michal Krol [Sat, 12 Jul 2008 15:03:30 +0000 (17:03 +0200)]
tgsi: Fix dumping of indirect addressing.

16 years agotgsi: Add missing copyright headers.
Michal Krol [Sat, 12 Jul 2008 09:16:01 +0000 (11:16 +0200)]
tgsi: Add missing copyright headers.

16 years agoegl: a minor overhauld of egl_xdri.c
Brian Paul [Fri, 11 Jul 2008 21:44:46 +0000 (15:44 -0600)]
egl: a minor overhauld of egl_xdri.c

Rely more on the libGL code to avoid duplicated efforts.  Also fix confusion
arising from multiple __DRIscreen objects.

16 years agoglx: added __glXPreferEGL() to tell libGL to prefer "egl_" drivers over regular DRI...
Brian Paul [Fri, 11 Jul 2008 21:43:52 +0000 (15:43 -0600)]
glx: added __glXPreferEGL() to tell libGL to prefer "egl_" drivers over regular DRI drivers.

Also, clean-up, consolidate the dlopen() code a bit.

16 years agobuild egl subdirs
Brian Paul [Thu, 10 Jul 2008 21:11:01 +0000 (15:11 -0600)]
build egl subdirs

16 years agogallium: Make dri drivers create a egl_name_dri.so if supported
Jakob Bornecrantz [Fri, 11 Jul 2008 18:01:33 +0000 (20:01 +0200)]
gallium: Make dri drivers create a egl_name_dri.so if supported

16 years agogallium: Re-order the GALLIUM_AUXILIARY_DIRS to satisfy dependencies on util
Jakob Bornecrantz [Thu, 10 Jul 2008 20:39:56 +0000 (22:39 +0200)]
gallium: Re-order the GALLIUM_AUXILIARY_DIRS to satisfy dependencies on util

16 years agogallium: check for FEATURE_feedback and FEATURE_drawpix when creating/using the aux...
Brian Paul [Thu, 10 Jul 2008 20:23:27 +0000 (14:23 -0600)]
gallium: check for FEATURE_feedback and FEATURE_drawpix when creating/using the aux draw module

16 years agoegl: added EGL_OPENVG_API case (allow all APIs)
Brian Paul [Thu, 10 Jul 2008 19:30:37 +0000 (13:30 -0600)]
egl: added EGL_OPENVG_API case (allow all APIs)

16 years agoegl: add all EGL_*_BITs to ClientAPIsMask
Brian Paul [Thu, 10 Jul 2008 19:29:42 +0000 (13:29 -0600)]
egl: add all EGL_*_BITs to ClientAPIsMask

16 years agogallium: re-order the GALLIUM_AUXILIARY_DIRS to satisfy .a interdependencies
Brian Paul [Thu, 10 Jul 2008 19:27:30 +0000 (13:27 -0600)]
gallium: re-order the GALLIUM_AUXILIARY_DIRS to satisfy .a interdependencies

libutil.a and libtranslate.a depend on libcso_cache.a so put them in that order.

16 years agoegl: implement xdri_eglGetProcAddress() for gallium
Brian Paul [Thu, 10 Jul 2008 16:48:28 +0000 (10:48 -0600)]
egl: implement xdri_eglGetProcAddress() for gallium

Plus comments, clean-ups.

16 years agomesa: check for null shader->Source
Brian Paul [Wed, 9 Jul 2008 21:54:21 +0000 (15:54 -0600)]
mesa: check for null shader->Source

16 years agomesa: return -1, not GL_FALSE if _glapi_add_dispatch() fails name sanity check
Brian Paul [Wed, 9 Jul 2008 21:08:39 +0000 (15:08 -0600)]
mesa: return -1, not GL_FALSE if _glapi_add_dispatch() fails name sanity check

16 years agomesa: call glutDestroyWindow() on exit
Brian Paul [Wed, 9 Jul 2008 21:52:04 +0000 (15:52 -0600)]
mesa: call glutDestroyWindow() on exit

16 years agomesa: disable fprintf() error
Brian Paul [Wed, 9 Jul 2008 21:51:18 +0000 (15:51 -0600)]
mesa: disable fprintf() error

16 years agoegl: link libEGL w/ additional libs
Brian Paul [Wed, 9 Jul 2008 21:49:59 +0000 (15:49 -0600)]
egl: link libEGL w/ additional libs

16 years agoegl: misc updates/fixes
Brian Paul [Wed, 9 Jul 2008 21:47:27 +0000 (15:47 -0600)]
egl: misc updates/fixes

Set surface size when created.
Implement dri_find_dri_screen().
Look for "egl_xxx_dri.so" library before regular DRI driver.

16 years agogallium: fix logic in pb_check_usage()
Brian Paul [Wed, 9 Jul 2008 17:46:16 +0000 (11:46 -0600)]
gallium: fix logic in pb_check_usage()

16 years agomesa: check for OpenBSD (bug 15604)
Brian Paul [Wed, 9 Jul 2008 14:48:41 +0000 (08:48 -0600)]
mesa: check for OpenBSD (bug 15604)

cherry-picked from master

16 years agomesa: fix state.clip[n].plane parsing bug (bug 16611)
Brian Paul [Wed, 9 Jul 2008 14:47:23 +0000 (08:47 -0600)]
mesa: fix state.clip[n].plane parsing bug (bug 16611)

cherry-picked from master

16 years agoegl: plug a small memleak
Zack Rusin [Wed, 9 Jul 2008 14:20:28 +0000 (10:20 -0400)]
egl: plug a small memleak

16 years agodraw: remove some debug output
Zack Rusin [Wed, 9 Jul 2008 13:29:49 +0000 (09:29 -0400)]
draw: remove some debug output

16 years agomesa: remove debug code
Brian Paul [Tue, 8 Jul 2008 22:58:50 +0000 (16:58 -0600)]
mesa: remove debug code

16 years agomesa: implement glGetUniformiv() with new ctx->Driver function
Brian Paul [Tue, 8 Jul 2008 22:12:01 +0000 (16:12 -0600)]
mesa: implement glGetUniformiv() with new ctx->Driver function

The old implementation could overwrite the caller's param buffer.

16 years agomesa: fix bug/failure in recursive function inlining
Brian Paul [Tue, 8 Jul 2008 21:04:47 +0000 (15:04 -0600)]
mesa: fix bug/failure in recursive function inlining

Fixes a failure for cases such as y = f(a, f(a, b))
All the usual tests still pass but regressions are possible...

16 years agogallium: tweak printing of generic declarations
Brian Paul [Tue, 8 Jul 2008 21:00:11 +0000 (15:00 -0600)]
gallium: tweak printing of generic declarations

16 years agomesa: more debug output
Brian Paul [Tue, 8 Jul 2008 20:59:31 +0000 (14:59 -0600)]
mesa: more debug output

16 years agomesa: compute global var size before doing codegen
Brian Paul [Tue, 8 Jul 2008 19:05:43 +0000 (13:05 -0600)]
mesa: compute global var size before doing codegen

16 years agomesa: add missing VARYING case to storage_string()
Brian Paul [Tue, 8 Jul 2008 19:02:33 +0000 (13:02 -0600)]
mesa: add missing VARYING case to storage_string()

16 years agoi915: Takedown EGL screen
Jakob Bornecrantz [Tue, 8 Jul 2008 14:54:22 +0000 (16:54 +0200)]
i915: Takedown EGL screen

16 years agoi915: Use deviceID in EGL device create
Jakob Bornecrantz [Tue, 8 Jul 2008 12:44:23 +0000 (14:44 +0200)]
i915: Use deviceID in EGL device create

16 years agoi915: Complete the screen -> device renaming
Jakob Bornecrantz [Tue, 8 Jul 2008 12:41:17 +0000 (14:41 +0200)]
i915: Complete the screen -> device renaming

16 years agoi915: Renamed intel_screen to intel_device
Jakob Bornecrantz [Tue, 8 Jul 2008 12:16:15 +0000 (14:16 +0200)]
i915: Renamed intel_screen to intel_device

The renameing makes more sense, why because:
In egl you have a display/driver/device as the
basis, and you have screens as outputs.

16 years agomesa: added GLAPIENTRY keywords
Jonathan White [Mon, 7 Jul 2008 23:56:29 +0000 (17:56 -0600)]
mesa: added GLAPIENTRY keywords

16 years agoegl: updated GL_APIENTRY for Windows
Jonathan White [Mon, 7 Jul 2008 23:56:09 +0000 (17:56 -0600)]
egl: updated GL_APIENTRY for Windows

16 years agoraw2png: More helpful messages. Handle PIPE_FORMAT_A8B8G8R8_SNORM.
José Fonseca [Mon, 7 Jul 2008 10:35:23 +0000 (19:35 +0900)]
raw2png: More helpful messages. Handle PIPE_FORMAT_A8B8G8R8_SNORM.

16 years agoraw2png: Update formats from p_formats.h
José Fonseca [Mon, 7 Jul 2008 10:29:24 +0000 (19:29 +0900)]
raw2png: Update formats from p_formats.h

16 years agoegl: bump up MAX_ATTRIBS, added assertion
Brian Paul [Mon, 7 Jul 2008 20:34:30 +0000 (14:34 -0600)]
egl: bump up MAX_ATTRIBS, added assertion

16 years agogallium: move assertion (though not really significant)
Brian Paul [Mon, 7 Jul 2008 16:12:55 +0000 (10:12 -0600)]
gallium: move assertion (though not really significant)

16 years agogallium: simplify/fix buffer_offset, src_offset computation for VBO arrays
Brian Paul [Mon, 7 Jul 2008 16:08:43 +0000 (10:08 -0600)]
gallium: simplify/fix buffer_offset, src_offset computation for VBO arrays

Things broke when vertex position wasn't the first attribute.

16 years agoi915: Fix wrong pointer to cleanup
Jakob Bornecrantz [Mon, 7 Jul 2008 13:49:59 +0000 (15:49 +0200)]
i915: Fix wrong pointer to cleanup

16 years agoi915: Fix EGL make current
Jakob Bornecrantz [Mon, 7 Jul 2008 13:49:09 +0000 (15:49 +0200)]
i915: Fix EGL make current

16 years agoi915: More cleanup of display
Jakob Bornecrantz [Mon, 7 Jul 2008 13:26:47 +0000 (15:26 +0200)]
i915: More cleanup of display

16 years agoi915: Fetch the real deviceID for EGL
Jakob Bornecrantz [Mon, 7 Jul 2008 12:29:11 +0000 (14:29 +0200)]
i915: Fetch the real deviceID for EGL

16 years agoi915: Destruction of surface, context and device in EGL
Jakob Bornecrantz [Mon, 7 Jul 2008 11:24:09 +0000 (13:24 +0200)]
i915: Destruction of surface, context and device in EGL

16 years agoi915: Fix EGL version and name
Jakob Bornecrantz [Sat, 5 Jul 2008 14:46:04 +0000 (16:46 +0200)]
i915: Fix EGL version and name

16 years agoi915: Added a intel be function to wrap a drm bo handle
Jakob Bornecrantz [Sat, 5 Jul 2008 13:58:42 +0000 (15:58 +0200)]
i915: Added a intel be function to wrap a drm bo handle

16 years agoi915: Fix haveDepth and haveStencil for visual in EGL
Jakob Bornecrantz [Sat, 5 Jul 2008 12:04:02 +0000 (14:04 +0200)]
i915: Fix haveDepth and haveStencil for visual in EGL

16 years agosoftpipe: Prevent NULL ptr derreference on takedown.
José Fonseca [Fri, 4 Jul 2008 18:21:27 +0000 (03:21 +0900)]
softpipe: Prevent NULL ptr derreference on takedown.

16 years agosoftpipe: Compute block size for display targets.
José Fonseca [Fri, 4 Jul 2008 18:19:56 +0000 (03:19 +0900)]
softpipe: Compute block size for display targets.

16 years agoi915: Added debug filling code of texture, not active
Jakob Bornecrantz [Fri, 4 Jul 2008 17:23:52 +0000 (19:23 +0200)]
i915: Added debug filling code of texture, not active

16 years agoi915: Clean up intel_egl.c a bit
Jakob Bornecrantz [Fri, 4 Jul 2008 17:20:08 +0000 (19:20 +0200)]
i915: Clean up intel_egl.c a bit

16 years agoegl: Add egltri
Jakob Bornecrantz [Fri, 4 Jul 2008 17:33:09 +0000 (19:33 +0200)]
egl: Add egltri

First tri for EGL drivers with mesa screen ext

16 years agomesa: Replace Proxy1D/2D/etc with ProxyTex[] indexed by TEXTURE_x_INDEX.
Brian Paul [Fri, 4 Jul 2008 16:37:07 +0000 (10:37 -0600)]
mesa: Replace Proxy1D/2D/etc with ProxyTex[] indexed by TEXTURE_x_INDEX.

Simplification in colortab.c too.

cherry-picked from master (fe469007037d9d5cdbe1677d8ff7368b276e9e7c)

16 years agogallium: fix st_choose_format(internalFormat=GL_RGBA16)
Brian Paul [Fri, 4 Jul 2008 16:35:32 +0000 (10:35 -0600)]
gallium: fix st_choose_format(internalFormat=GL_RGBA16)

Need to check if we're choosing a surface or texture format.

16 years agomesa: Implement mutex/locking around texture object reference counting.
Brian Paul [Fri, 4 Jul 2008 16:29:15 +0000 (10:29 -0600)]
mesa: Implement mutex/locking around texture object reference counting.

Use new _mesa_reference_texobj() function for referencing/unreferencing
textures.  Add new assertions/tests to try to detect invalid usage of
deleted textures.

cherry-picked from master (9e01b915f1243a3f551cb795b7124bd1e52ca15f)

16 years agogallium: replace assertion with conditional
Brian Paul [Fri, 4 Jul 2008 16:02:16 +0000 (10:02 -0600)]
gallium: replace assertion with conditional

16 years agogallium: fix trim() function bug when count < first
Brian Paul [Fri, 4 Jul 2008 15:59:43 +0000 (09:59 -0600)]
gallium: fix trim() function bug when count < first

If the user called glDrawArrays(GL_TRIANGLES, count=1), trim() returned a
very large integer because of the unsigned arithmetic.

16 years agomesa: generate GL_INVALID_OPERATION in _mesa_get_uniform_location() if program isn...
Brian Paul [Fri, 4 Jul 2008 15:58:14 +0000 (09:58 -0600)]
mesa: generate GL_INVALID_OPERATION in _mesa_get_uniform_location() if program isn't linked

16 years agomesa: move assertion
Brian Paul [Fri, 4 Jul 2008 15:56:08 +0000 (09:56 -0600)]
mesa: move assertion

16 years agopsb: Fill all texture fields when creating texture blanket.
José Fonseca [Fri, 4 Jul 2008 15:56:36 +0000 (00:56 +0900)]
psb: Fill all texture fields when creating texture blanket.

16 years agosoftpipe: Implement texture blankets.
José Fonseca [Fri, 4 Jul 2008 15:55:18 +0000 (00:55 +0900)]
softpipe: Implement texture blankets.

16 years agoscons: Enable gcc SSE2 intrinsics on x86.
José Fonseca [Fri, 4 Jul 2008 13:27:50 +0000 (22:27 +0900)]
scons: Enable gcc SSE2 intrinsics on x86.

16 years agomesa: added _vbo_VertexAttrib4f()
Brian Paul [Thu, 3 Jul 2008 22:59:24 +0000 (16:59 -0600)]
mesa: added _vbo_VertexAttrib4f()

16 years agomesa: fix incorrect array size, added assertion
Brian Paul [Thu, 3 Jul 2008 22:24:26 +0000 (16:24 -0600)]
mesa: fix incorrect array size, added assertion

16 years agomesa: fix array storage allocation bug
Brian Paul [Thu, 3 Jul 2008 22:23:18 +0000 (16:23 -0600)]
mesa: fix array storage allocation bug

16 years agomesa: regenerated file
Brian Paul [Thu, 3 Jul 2008 22:22:49 +0000 (16:22 -0600)]
mesa: regenerated file

16 years agomesa: additional vec4 constructor
Brian Paul [Thu, 3 Jul 2008 22:22:36 +0000 (16:22 -0600)]
mesa: additional vec4 constructor

16 years agomesa: fix various error codes
Brian Paul [Thu, 3 Jul 2008 22:21:15 +0000 (16:21 -0600)]
mesa: fix various error codes

16 years agomesa: fix some error codes in _mesa_ShaderSourceARB()
Brian Paul [Thu, 3 Jul 2008 22:02:13 +0000 (16:02 -0600)]
mesa: fix some error codes in _mesa_ShaderSourceARB()

16 years agomesa: fix problem freeing framebuffer/renderbuffer objects
Brian Paul [Thu, 3 Jul 2008 21:41:45 +0000 (15:41 -0600)]
mesa: fix problem freeing framebuffer/renderbuffer objects

Basically, set up no-op Delete() methods for the DummyFrame/Renderbuffer obj

16 years agogallium: added a4r4g4b4_put_tile_rgba()
Brian Paul [Thu, 3 Jul 2008 20:55:14 +0000 (14:55 -0600)]
gallium: added a4r4g4b4_put_tile_rgba()

16 years agomesa: added case for fixed pt
Brian Paul [Thu, 3 Jul 2008 20:12:27 +0000 (14:12 -0600)]
mesa: added case for fixed pt

16 years agogallium: increase TGSI interpreter's number of temp registers to 64
Brian Paul [Thu, 3 Jul 2008 18:56:33 +0000 (12:56 -0600)]
gallium: increase TGSI interpreter's number of temp registers to 64

Also, clean up the definitions of the misc/extra temp regs.
A few new assertions too.

16 years agogallium: move, increase ST_MAX_SHADER_TOKENS
Brian Paul [Thu, 3 Jul 2008 16:43:14 +0000 (10:43 -0600)]
gallium: move, increase ST_MAX_SHADER_TOKENS

16 years agogallium: increase TGSI_EXEC_MAX_COND_NESTING, etc
Brian Paul [Thu, 3 Jul 2008 16:42:31 +0000 (10:42 -0600)]
gallium: increase TGSI_EXEC_MAX_COND_NESTING, etc

16 years agogallium: fix surface memleak in bitmap code
Brian Paul [Thu, 3 Jul 2008 16:12:00 +0000 (10:12 -0600)]
gallium: fix surface memleak in bitmap code

Found w/ tunnel2.c demo.

16 years agopipebuffer: Silent warnings.
José Fonseca [Thu, 3 Jul 2008 12:28:56 +0000 (21:28 +0900)]
pipebuffer: Silent warnings.

Although rarely hit in normal apps, they are too noisy with test suites.

16 years agoSupport conversion of YUV surfaces.
José Fonseca [Thu, 3 Jul 2008 10:55:14 +0000 (19:55 +0900)]
Support conversion of YUV surfaces.

16 years agogallium: Don't forget to get overllaping blits working again.
José Fonseca [Thu, 3 Jul 2008 10:52:05 +0000 (19:52 +0900)]
gallium: Don't forget to get overllaping blits working again.

16 years agoi915: EGL almost works again
Jakob Bornecrantz [Thu, 3 Jul 2008 10:12:25 +0000 (12:12 +0200)]
i915: EGL almost works again

16 years agoegl: Fix demodriver
Jakob Bornecrantz [Thu, 3 Jul 2008 10:10:36 +0000 (12:10 +0200)]
egl: Fix demodriver

16 years agogallium: Use surface_copy for 1:1 blits.
José Fonseca [Thu, 3 Jul 2008 06:02:56 +0000 (15:02 +0900)]
gallium: Use surface_copy for 1:1 blits.

16 years agoscons: Add a env.CodeGenerate method to simplify code generation via python scripts.
José Fonseca [Thu, 3 Jul 2008 03:42:23 +0000 (12:42 +0900)]
scons: Add a env.CodeGenerate method to simplify code generation via python scripts.

env.CodeGenerate(
target = 'my_source.c',
script = 'my_generator.py',
source = ['input.txt', 'another.txt'],
command = 'python $SCRIPT $SOURCE > $TARGET'
)

It will take care generating all appropriate dependencies, including any
module imported by the generator script, and the respective .pyc file
side effects.

16 years agomesa: fix vertex array validation test for attribute 0 (vert pos)
Brian Paul [Thu, 3 Jul 2008 01:18:10 +0000 (19:18 -0600)]
mesa: fix vertex array validation test for attribute 0 (vert pos)

We don't actually need vertex array[0] enabled when using a vertex
program/shader.

cherry-picked from master

16 years agogallium: replace an assertion with "if (!texobj) continue"
Brian Paul [Thu, 3 Jul 2008 01:11:49 +0000 (19:11 -0600)]
gallium: replace an assertion with "if (!texobj) continue"

It's possible to call update_samplers() between the time a fragment shader
is bound and when a texture image is defined (such as glClear).  This
fixes the case where we don't have a complete texture object yet.

16 years agogallium: fix a bug in vertex program output mapping
Brian Paul [Thu, 3 Jul 2008 01:07:11 +0000 (19:07 -0600)]
gallium: fix a bug in vertex program output mapping

Need to translate VERT_RESULT_PSIZ, BFC0, BFC1 to TGSI shader output slots
after all other attributes have been handled.  This fixes a bug where
generic vertex program outputs (varying vars) could get mapped to the
same slot at point size or back-face colors.

16 years agogallium: nr_attrs was off by one, updated comments, minor code movement
Brian Paul [Thu, 3 Jul 2008 01:05:18 +0000 (19:05 -0600)]
gallium: nr_attrs was off by one, updated comments, minor code movement

16 years agomesa: additional GLSL built-in constants
Brian Paul [Wed, 2 Jul 2008 23:10:42 +0000 (17:10 -0600)]
mesa: additional GLSL built-in constants

16 years agomesa: when linking a shader program, make sure all the shaders compiled OK
Brian Paul [Wed, 2 Jul 2008 23:08:47 +0000 (17:08 -0600)]
mesa: when linking a shader program, make sure all the shaders compiled OK

cherry-picked from master

16 years agomesa: added some debug code (disabled)
Brian Paul [Wed, 2 Jul 2008 23:08:28 +0000 (17:08 -0600)]
mesa: added some debug code (disabled)

cherry-picked from master

16 years agomesa: fix error codes in _mesa_shader_source(), _mesa_get_shader_source()
Brian Paul [Wed, 2 Jul 2008 23:08:09 +0000 (17:08 -0600)]
mesa: fix error codes in _mesa_shader_source(), _mesa_get_shader_source()

If the 'shader' parameter is wrong, need to either generate GL_INVALID_VALUE
or GL_INVALID_OPERATION.  It depends on whether 'shader' actually names a
'program' or is a totally unknown ID.
There might be other cases to fix...

cherry-picked from master

16 years agomesa: regenerated file
Brian Paul [Wed, 2 Jul 2008 23:06:26 +0000 (17:06 -0600)]
mesa: regenerated file

16 years agomesa: added some missing equal() notEqual() intrinsics
Brian Paul [Wed, 2 Jul 2008 23:05:56 +0000 (17:05 -0600)]
mesa: added some missing equal() notEqual() intrinsics

cherry-picked from master

16 years agomesa: disable some debug assertions
Brian Paul [Wed, 2 Jul 2008 18:47:18 +0000 (12:47 -0600)]
mesa: disable some debug assertions

We can sometimes fail these assertions because of how swizzled storage
works.  Will revisit someday.

16 years agomesa: regenerated files
Brian Paul [Wed, 2 Jul 2008 18:46:18 +0000 (12:46 -0600)]
mesa: regenerated files

16 years agomesa: fix all(bvec2) function typo, add missing bvec2/3/4() constuctors
Brian Paul [Wed, 2 Jul 2008 18:45:55 +0000 (12:45 -0600)]
mesa: fix all(bvec2) function typo, add missing bvec2/3/4() constuctors

cherry-picked from master

16 years agogallium: replace 128 with MAX_LABELS
Brian Paul [Wed, 2 Jul 2008 18:41:18 +0000 (12:41 -0600)]
gallium: replace 128 with MAX_LABELS