mesa.git
15 years agoglsl/pp: Have sl_pp_purify() return error msg/line no.
Michal Krol [Mon, 9 Nov 2009 23:15:33 +0000 (00:15 +0100)]
glsl/pp: Have sl_pp_purify() return error msg/line no.

15 years agoglsl/pp: Expand macro actual arguments before pasting into its body.
Michal Krol [Mon, 28 Sep 2009 09:30:15 +0000 (11:30 +0200)]
glsl/pp: Expand macro actual arguments before pasting into its body.

15 years agoglsl/pp: Add forward decls to silence gcc warnings.
Michal Krol [Thu, 24 Sep 2009 08:57:55 +0000 (10:57 +0200)]
glsl/pp: Add forward decls to silence gcc warnings.

15 years agoglsl/pp: Avoid using `__VERSION__' as an identifier.
Michal Krol [Thu, 24 Sep 2009 08:57:32 +0000 (10:57 +0200)]
glsl/pp: Avoid using `__VERSION__' as an identifier.

15 years agoglsl/pp: Include missing headers.
Michal Krol [Thu, 24 Sep 2009 08:56:46 +0000 (10:56 +0200)]
glsl/pp: Include missing headers.

15 years agoglsl/pp: Allow builds on all platforms.
Michal Krol [Thu, 24 Sep 2009 08:56:01 +0000 (10:56 +0200)]
glsl/pp: Allow builds on all platforms.

15 years agoglsl/apps: Include missing header, properly escape format strings.
Michal Krol [Thu, 24 Sep 2009 08:55:37 +0000 (10:55 +0200)]
glsl/apps: Include missing header, properly escape format strings.

15 years agoglsl/apps: Allow builds on all platforms.
Michal Krol [Thu, 24 Sep 2009 08:54:56 +0000 (10:54 +0200)]
glsl/apps: Allow builds on all platforms.

15 years agoglsl/pp: Use struct instead of union.
Michal Krol [Thu, 24 Sep 2009 07:04:15 +0000 (09:04 +0200)]
glsl/pp: Use struct instead of union.

15 years agoglsl/apps: Fix apps after pp interface changes.
Michal Krol [Thu, 24 Sep 2009 06:43:54 +0000 (08:43 +0200)]
glsl/apps: Fix apps after pp interface changes.

15 years agoglsl/pp: Store both line number and file index in a single token.
Michal Krol [Thu, 24 Sep 2009 06:43:05 +0000 (08:43 +0200)]
glsl/pp: Store both line number and file index in a single token.

15 years agogrammar: Include the correct glsl pp header.
Michal Krol [Wed, 23 Sep 2009 07:40:40 +0000 (09:40 +0200)]
grammar: Include the correct glsl pp header.

15 years agoglsl/pp: Include missing headers.
Michal Krol [Wed, 23 Sep 2009 07:40:24 +0000 (09:40 +0200)]
glsl/pp: Include missing headers.

15 years agoglsl/pp: Add `0' and `1' to dictionary.
Michal Krol [Wed, 23 Sep 2009 07:37:37 +0000 (09:37 +0200)]
glsl/pp: Add `0' and `1' to dictionary.

15 years agoglsl/pp: Check for reserved macro names.
Michal Krol [Wed, 23 Sep 2009 07:33:12 +0000 (09:33 +0200)]
glsl/pp: Check for reserved macro names.

15 years agoslang: Differentiate between uints and floats.
Michal Krol [Tue, 22 Sep 2009 10:54:45 +0000 (12:54 +0200)]
slang: Differentiate between uints and floats.

15 years agogrammar: Differentiate between uints and floats.
Michal Krol [Tue, 22 Sep 2009 10:52:53 +0000 (12:52 +0200)]
grammar: Differentiate between uints and floats.

15 years agoglsl/apps: Update after recent pp interface changes.
Michal Krol [Tue, 22 Sep 2009 10:52:21 +0000 (12:52 +0200)]
glsl/apps: Update after recent pp interface changes.

15 years agoglsl/pp: Differentiate between integer and floating-point number tokens.
Michal Krol [Tue, 22 Sep 2009 10:51:08 +0000 (12:51 +0200)]
glsl/pp: Differentiate between integer and floating-point number tokens.

15 years agoprogs/perf: Fix newlines.
Michal Krol [Fri, 18 Sep 2009 09:42:30 +0000 (11:42 +0200)]
progs/perf: Fix newlines.

15 years agoglsl/apps: Use glsl pp public interface.
Michal Krol [Fri, 18 Sep 2009 09:20:42 +0000 (11:20 +0200)]
glsl/apps: Use glsl pp public interface.

15 years agoslang: Use glsl pp public interface.
Michal Krol [Fri, 18 Sep 2009 09:19:54 +0000 (11:19 +0200)]
slang: Use glsl pp public interface.

15 years agoglsl/pp: Define a public interface for external modules.
Michal Krol [Fri, 18 Sep 2009 09:19:25 +0000 (11:19 +0200)]
glsl/pp: Define a public interface for external modules.

Make sl_pp_context struct opaque.
Move all public declarations to sl_pp_public.h.

15 years agoMerge commit 'origin/master' into glsl-pp-rework-2
Michal Krol [Thu, 17 Sep 2009 10:44:24 +0000 (12:44 +0200)]
Merge commit 'origin/master' into glsl-pp-rework-2

Conflicts:
src/gallium/winsys/gdi/SConscript

15 years agoglsl/pp: Add a TODO for FEATURE_es2_glsl.
Michal Krol [Thu, 17 Sep 2009 10:33:26 +0000 (12:33 +0200)]
glsl/pp: Add a TODO for FEATURE_es2_glsl.

15 years agoslang/pp: Fix file number parsing.
Michal Krol [Thu, 17 Sep 2009 10:14:12 +0000 (12:14 +0200)]
slang/pp: Fix file number parsing.

15 years agoslang/pp: Use a dictionary for the remaining string literals.
Michal Krol [Thu, 17 Sep 2009 10:12:34 +0000 (12:12 +0200)]
slang/pp: Use a dictionary for the remaining string literals.

15 years agoglsl/pp: Add remaining error messages.
Michal Krol [Thu, 17 Sep 2009 09:51:35 +0000 (11:51 +0200)]
glsl/pp: Add remaining error messages.

15 years agoglsl/apps: Always write out error condition.
Michal Krol [Thu, 17 Sep 2009 08:45:16 +0000 (10:45 +0200)]
glsl/apps: Always write out error condition.

15 years agomesa: begin some texstore code refactoring
Brian Paul [Thu, 17 Sep 2009 03:49:55 +0000 (21:49 -0600)]
mesa: begin some texstore code refactoring

Next step will be to move the calls to ctx->Driver.ChooseTextureFormat()
into the teximage.c functions so drivers don't have to do it.

15 years agomesa: meta driver functions for glCopyTex[Sub]Image()
Brian Paul [Thu, 17 Sep 2009 02:09:05 +0000 (20:09 -0600)]
mesa: meta driver functions for glCopyTex[Sub]Image()

Implement in terms of glReadPixels + glTex[Sub]Image().
This will allow us to get rid of some swrast texture code.

15 years agoprogs/perf: initial set of simple performance test programs
Brian Paul [Thu, 17 Sep 2009 01:33:01 +0000 (19:33 -0600)]
progs/perf: initial set of simple performance test programs

Initial tests include:
  drawoverhead - measure overhead of state changes w.r.t drawing commands
  teximage - measure glTexImage2D() and glTexSubImage2D() speed
  vbo - measure glBufferData() and glBufferSubData() speed
  vertexrate - measure vertex rate for immediate mode, glDrawArrays, VBOs, etc.

15 years agoprogs/glsl: minor Makefile clean-ups
Brian Paul [Wed, 16 Sep 2009 21:49:33 +0000 (15:49 -0600)]
progs/glsl: minor Makefile clean-ups

15 years agoswrast: remove mipmap generation checks (done in core Mesa now)
Brian Paul [Wed, 16 Sep 2009 21:48:52 +0000 (15:48 -0600)]
swrast: remove mipmap generation checks (done in core Mesa now)

15 years agos3v: remove unneeded initializations
Brian Paul [Wed, 16 Sep 2009 01:53:50 +0000 (19:53 -0600)]
s3v: remove unneeded initializations

15 years agoffb: remove disabled code
Brian Paul [Wed, 16 Sep 2009 01:47:06 +0000 (19:47 -0600)]
ffb: remove disabled code

15 years agoglsl/apps: Always write out error condition.
Michal Krol [Wed, 16 Sep 2009 20:04:22 +0000 (22:04 +0200)]
glsl/apps: Always write out error condition.

15 years agoglsl/pp: Validate numbers.
Michal Krol [Wed, 16 Sep 2009 19:51:12 +0000 (21:51 +0200)]
glsl/pp: Validate numbers.

15 years agollvmpipe: Don't assert due to unsupported texture wrap modes.
José Fonseca [Wed, 16 Sep 2009 15:12:22 +0000 (16:12 +0100)]
llvmpipe: Don't assert due to unsupported texture wrap modes.

Issue a warning and fallback to clamping.

15 years agoglsl/pp: Add more error messages.
Michal Krol [Wed, 16 Sep 2009 18:40:02 +0000 (20:40 +0200)]
glsl/pp: Add more error messages.

15 years agoslang: Propagate error messages from preprocessor.
Michal Krol [Wed, 16 Sep 2009 18:28:20 +0000 (20:28 +0200)]
slang: Propagate error messages from preprocessor.

15 years agoglsl/pp: Add more error messages.
Michal Krol [Wed, 16 Sep 2009 18:27:59 +0000 (20:27 +0200)]
glsl/pp: Add more error messages.

15 years agoslang: Invoke the preprocessor from withing the slang compiler.
Michal Krol [Wed, 16 Sep 2009 17:24:50 +0000 (19:24 +0200)]
slang: Invoke the preprocessor from withing the slang compiler.

This allows us to validate the shader version number.

15 years agoMerge branch 'mesa_7_6_branch'
Ian Romanick [Wed, 16 Sep 2009 15:05:36 +0000 (08:05 -0700)]
Merge branch 'mesa_7_6_branch'

15 years agogallium: remove incorrect 'return' stmt
Brian Paul [Wed, 16 Sep 2009 14:59:32 +0000 (08:59 -0600)]
gallium: remove incorrect 'return' stmt

15 years agoMerge branch 'mesa_7_5_branch' into mesa_7_6_branch
Ian Romanick [Wed, 16 Sep 2009 14:57:19 +0000 (07:57 -0700)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch

Conflicts:
src/mesa/main/dlist.c

15 years agointel: Deassociated drawables from private context struct in intelUnbindContext
Ian Romanick [Wed, 16 Sep 2009 14:39:58 +0000 (07:39 -0700)]
intel: Deassociated drawables from private context struct in intelUnbindContext

The generic DRI infrastructure makes sure that __DRIcontextRec::driDrawablePriv
and __DRIcontextRec::driReadablePriv are set to NULL after unbinding a
context.  However, the intel_context structure keeps cached copies of
these pointers.  If these cached pointers are not NULLed and the
drawable is actually destroyed after unbinding the context (typically
by way of glXDestroyWindow), freed memory will be dereferenced in
intelDestroyContext.

This should fix bug #23418.

15 years agogallium: Deprecate PIPE_CAP_S3TC.
José Fonseca [Wed, 16 Sep 2009 13:31:14 +0000 (14:31 +0100)]
gallium: Deprecate PIPE_CAP_S3TC.

No longer used. S3TC support is queried via
pipe_screen::is_format_supported.

15 years agosoftpipe: Do not advertise Z32_UNORM as a supported format.
Michal Krol [Wed, 16 Sep 2009 12:56:58 +0000 (13:56 +0100)]
softpipe: Do not advertise Z32_UNORM as a supported format.

15 years agogdi: Integrate with llvmpipe where available.
José Fonseca [Wed, 16 Sep 2009 09:39:29 +0000 (10:39 +0100)]
gdi: Integrate with llvmpipe where available.

15 years agollvmpipe: Make the code portable for MinGW.
José Fonseca [Wed, 16 Sep 2009 09:39:06 +0000 (10:39 +0100)]
llvmpipe: Make the code portable for MinGW.

15 years agoi965: do a flush in clear, fix openarena render issue,
Zou Nan hai [Wed, 16 Sep 2009 05:25:46 +0000 (13:25 +0800)]
i965: do a flush in clear, fix openarena render issue,
      fd.o bug# 23857

15 years agoradeon: cleanup compile defines mess.
Dave Airlie [Wed, 16 Sep 2009 03:48:45 +0000 (13:48 +1000)]
radeon: cleanup compile defines mess.

I inherited this and really it stayed around far too long,
make it nice and simple.

15 years agoradeon: oops remove debugging left on in previous patch
Dave Airlie [Wed, 16 Sep 2009 03:25:02 +0000 (13:25 +1000)]
radeon: oops remove debugging left on in previous patch

15 years agoradeon: use txformat to decide to emit rect tex state.
Dave Airlie [Wed, 16 Sep 2009 03:07:02 +0000 (13:07 +1000)]
radeon: use txformat to decide to emit rect tex state.

This is more logical, and fixes a TFP issue.

15 years agomesa: move generate mipmap calls
Brian Paul [Wed, 16 Sep 2009 00:16:59 +0000 (18:16 -0600)]
mesa: move generate mipmap calls

Per the suggestion in the Intel driver, move the calls to
ctx->Driver.GenerateMipmap() into core Mesa so that drivers don't
have to worry about it.

15 years agomesa: minor clean-up
Brian Paul [Wed, 16 Sep 2009 00:09:03 +0000 (18:09 -0600)]
mesa: minor clean-up

15 years agomesa: remove last of gotos
Brian Paul [Tue, 15 Sep 2009 23:41:40 +0000 (17:41 -0600)]
mesa: remove last of gotos

15 years agomesa: more goto removal
Brian Paul [Tue, 15 Sep 2009 23:36:35 +0000 (17:36 -0600)]
mesa: more goto removal

15 years agomesa: remove some gotos
Brian Paul [Tue, 15 Sep 2009 23:32:01 +0000 (17:32 -0600)]
mesa: remove some gotos

This will make some subsequent changes easier...

15 years agomesa: clean-up fbo debug code
Brian Paul [Tue, 15 Sep 2009 23:20:32 +0000 (17:20 -0600)]
mesa: clean-up fbo debug code

15 years agoprogs/demos: use non-default texobj in cubemap.c
Brian Paul [Tue, 15 Sep 2009 23:13:49 +0000 (17:13 -0600)]
progs/demos: use non-default texobj in cubemap.c

15 years agoprogs/demos: create a texture object in lodbias.c
Brian Paul [Tue, 15 Sep 2009 23:08:33 +0000 (17:08 -0600)]
progs/demos: create a texture object in lodbias.c

Before, we were using the default texture object (name=0).  This caused
the intel_generate_mipmap() path to fail since passing texture=0 to
glFramebufferTexture2DEXT() causes us to _unbind_ the texture if present.

15 years agost/xorg: fixing copies and composite shaders
Zack Rusin [Tue, 15 Sep 2009 15:01:21 +0000 (11:01 -0400)]
st/xorg: fixing copies and composite shaders

copies were busted when src == dst. also the composite shaders
were incorrectly using the fragments instead of the texture coordinate.

15 years agost/xorg: lots of fixes
Zack Rusin [Tue, 15 Sep 2009 13:02:20 +0000 (09:02 -0400)]
st/xorg: lots of fixes

fixes blending binding and copy coordinates

15 years agodocs: GL_ARB_provoking_vertex
Brian Paul [Tue, 15 Sep 2009 22:01:33 +0000 (16:01 -0600)]
docs: GL_ARB_provoking_vertex

15 years agomesa: added GL_ARB_provoking_vertex (same as EXT version)
Brian Paul [Tue, 15 Sep 2009 22:01:22 +0000 (16:01 -0600)]
mesa: added GL_ARB_provoking_vertex (same as EXT version)

15 years agoradeon: don't build non-r600 span code on r600
Alex Deucher [Tue, 15 Sep 2009 21:12:03 +0000 (17:12 -0400)]
radeon: don't build non-r600 span code on r600

15 years agor600: minor span cleanups
Alex Deucher [Tue, 15 Sep 2009 20:58:37 +0000 (16:58 -0400)]
r600: minor span cleanups

15 years agodocs: glUniform functions are now compiled into display lists
Brian Paul [Tue, 15 Sep 2009 21:12:29 +0000 (15:12 -0600)]
docs: glUniform functions are now compiled into display lists

15 years agomesa: compile glUniformMatrix() functions into display lists
Brian Paul [Tue, 15 Sep 2009 21:10:29 +0000 (15:10 -0600)]
mesa: compile glUniformMatrix() functions into display lists

I believe this is the last of the shader-related functions that needed
display list treatment.

15 years agomesa: implement more glUniform display list functions
Brian Paul [Tue, 15 Sep 2009 20:56:55 +0000 (14:56 -0600)]
mesa: implement more glUniform display list functions

15 years agodocs: document glUseProgram display list fix
Brian Paul [Tue, 15 Sep 2009 20:38:52 +0000 (14:38 -0600)]
docs: document glUseProgram display list fix

15 years agomesa: compile glUniform4f() into display lists
Brian Paul [Tue, 15 Sep 2009 20:31:10 +0000 (14:31 -0600)]
mesa: compile glUniform4f() into display lists

Note: there are more glUniform functions to compile...

15 years agomesa: compile glUseProgram/glUseProgramObjectARB into display lists
Brian Paul [Tue, 15 Sep 2009 20:25:44 +0000 (14:25 -0600)]
mesa: compile glUseProgram/glUseProgramObjectARB into display lists

Fixes bug 23746

15 years agoMerge branch 'mesa_7_6_branch'
Ian Romanick [Tue, 15 Sep 2009 20:14:38 +0000 (13:14 -0700)]
Merge branch 'mesa_7_6_branch'

15 years agoMerge commit 'origin/mesa_7_5_branch' into mesa_7_6_branch
Ian Romanick [Tue, 15 Sep 2009 20:13:35 +0000 (13:13 -0700)]
Merge commit 'origin/mesa_7_5_branch' into mesa_7_6_branch

15 years agoGLX: Complain when buggy applications call GLX 1.3 functions.
Ian Romanick [Tue, 15 Sep 2009 20:12:22 +0000 (13:12 -0700)]
GLX: Complain when buggy applications call GLX 1.3 functions.

15 years agost/xorg: Brian suggested that those could be mad's
Zack Rusin [Tue, 15 Sep 2009 10:00:52 +0000 (06:00 -0400)]
st/xorg: Brian suggested that those could be mad's

optimizes the common paths

15 years agomesa: remove incorrect texture state check
Brian Paul [Tue, 15 Sep 2009 18:35:41 +0000 (12:35 -0600)]
mesa: remove incorrect texture state check

Fixes incorrectly textured bitmap text in engine demo.
It's incorrect to test the texture enable bits here since they may have
been changed by disabling the shader above.  Optimization is still possible
but will have to be reexamined.

15 years agonv50: avoid excessive FIRE_RING
Maarten Maathuis [Mon, 14 Sep 2009 18:21:56 +0000 (20:21 +0200)]
nv50: avoid excessive FIRE_RING

- And reduce RING_SPACE to 2, instead of 3.

15 years agonv50: use flush_notify to reduce number of relocs
Maarten Maathuis [Mon, 14 Sep 2009 17:42:53 +0000 (19:42 +0200)]
nv50: use flush_notify to reduce number of relocs

15 years agost/xorg: Only unreference texture on pixmap destruction, don't destroy it.
Michel Dänzer [Tue, 15 Sep 2009 16:31:07 +0000 (18:31 +0200)]
st/xorg: Only unreference texture on pixmap destruction, don't destroy it.

Fixes memory corruption if e.g. the driver still has references to the texture.

15 years agost/xorg: Explicitly check whether the driver supports the pixmap formats.
Michel Dänzer [Tue, 15 Sep 2009 16:30:58 +0000 (18:30 +0200)]
st/xorg: Explicitly check whether the driver supports the pixmap formats.

Rather than arbitrarily checking for pixmap depth < 15.

15 years agost/xorg: Use A8 format for depth 8 pixmaps.
Michel Dänzer [Tue, 15 Sep 2009 16:23:00 +0000 (18:23 +0200)]
st/xorg: Use A8 format for depth 8 pixmaps.

The inconsistent bpp caused issues with UploadTo/DownloadFromScreen.

15 years agost/mesa: disable accidentally committed _mesa_print_program() call
Brian Paul [Tue, 15 Sep 2009 15:52:27 +0000 (09:52 -0600)]
st/mesa: disable accidentally committed _mesa_print_program() call

15 years agoMerge branch 'mesa_7_6_branch'
Brian Paul [Tue, 15 Sep 2009 15:47:35 +0000 (09:47 -0600)]
Merge branch 'mesa_7_6_branch'

15 years agoMerge branch 'mesa_7_5_branch' into mesa_7_6_branch
Brian Paul [Tue, 15 Sep 2009 15:45:18 +0000 (09:45 -0600)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch

15 years agoARB prog parser: regenerated file
Brian Paul [Mon, 14 Sep 2009 23:34:40 +0000 (17:34 -0600)]
ARB prog parser: regenerated file

15 years agoARB prog parser: more detailed error message for out of bounds ADDR offsets
Brian Paul [Mon, 14 Sep 2009 23:34:09 +0000 (17:34 -0600)]
ARB prog parser: more detailed error message for out of bounds ADDR offsets

15 years agogl: restore some PFNGL typedefs
Brian Paul [Tue, 15 Sep 2009 15:36:31 +0000 (09:36 -0600)]
gl: restore some PFNGL typedefs

Commit d33c315d9e32584dea12cea683795b498a9f5eca removed a few too many
typedefs.  We need the typedefs in glext.h which are protected by #ifdef
GL_VERSION_1_2 but we can exclude the ones protected by
GL_VERSION_1_2_DEPRECATED.

15 years agor600: support position_invariant programs
Andre Maasikas [Tue, 15 Sep 2009 15:27:51 +0000 (11:27 -0400)]
r600: support position_invariant programs

15 years agogallium: Use the enum for pipe_transfer::usage.
José Fonseca [Tue, 15 Sep 2009 15:02:20 +0000 (16:02 +0100)]
gallium: Use the enum for pipe_transfer::usage.

15 years agogallium: pipe_transfer_destroy helper inline.
José Fonseca [Tue, 15 Sep 2009 15:02:00 +0000 (16:02 +0100)]
gallium: pipe_transfer_destroy helper inline.

15 years agonv50: fix stupid thinko in emit_set
Christoph Bumiller [Tue, 15 Sep 2009 13:24:32 +0000 (15:24 +0200)]
nv50: fix stupid thinko in emit_set

When swapping sources 0 and 1, EQ of course does *not*
become NE, etc.

Introduced in 2b963f5c723401aa2646bd48eefe065cd335e280.

15 years agogallium: Fix pointer type casts.
Michal Krol [Tue, 15 Sep 2009 11:00:27 +0000 (12:00 +0100)]
gallium: Fix pointer type casts.

15 years agonv50: let programs use the whole param buffer
Christoph Bumiller [Tue, 15 Sep 2009 09:56:58 +0000 (11:56 +0200)]
nv50: let programs use the whole param buffer

Allocation is unnecessary since all uniforms are
uploaded on every constant buffer change anyway.

15 years agonv50: add preliminary support for point sprites
Christoph Bumiller [Mon, 14 Sep 2009 19:03:19 +0000 (21:03 +0200)]
nv50: add preliminary support for point sprites

15 years agonv50: add support for point size per vertex
Christoph Bumiller [Tue, 15 Sep 2009 09:49:41 +0000 (11:49 +0200)]
nv50: add support for point size per vertex

15 years agonv50: add support for light-twoside
Christoph Bumiller [Mon, 14 Sep 2009 18:52:52 +0000 (20:52 +0200)]
nv50: add support for light-twoside