mesa.git
12 years agoi965/gen6: Fix segfault in transform feedback to DYNAMIC_DRAW buffers.
Paul Berry [Tue, 24 Jan 2012 00:11:05 +0000 (16:11 -0800)]
i965/gen6: Fix segfault in transform feedback to DYNAMIC_DRAW buffers.

When storing data in a buffer of type DYNAMIC_DRAW, we don't create a
drm_intel_bo for it; instead we store the data in system memory and
defer allocation of the GPU buffer until it is needed.  Therefore, in
brw_update_sol_surface(), we can't just consult the "buffer" field of
the intel_buffer_object structure; we need to call
intel_bufferobj_buffer() to ensure that the deferred allocation
occurs.

This parallels a similar fix for gen7 (see commit ba6f4c9).

Fixes piglit test EXT_transform_feedback/buffer-usage on gen6.

This is a candidate for the 8.0 release branch.

Reviewed-by: Eric Anholt <eric@anholt.net>
12 years agogbm: fix copy & paste error in gbm_bo_get_handle documentation
Ander Conselvan de Oliveira [Wed, 25 Jan 2012 14:24:13 +0000 (16:24 +0200)]
gbm: fix copy & paste error in gbm_bo_get_handle documentation

12 years agomesa/st: Assign inputsRead at right (previous) location.
José Fonseca [Wed, 25 Jan 2012 13:47:55 +0000 (13:47 +0000)]
mesa/st: Assign inputsRead at right (previous) location.

Fixes the

  src/mesa/state_tracker/st_glsl_to_tgsi.cpp:4032:src_register: Assertion `t->inputMapping[index] < (sizeof(t->inputs)/sizeof(*(t->inputs)))' failed.

assertion failure introduced in 697b9945fb0f55428b06821f98fd8621372f81ad

12 years agomesa: remove ctx->Const.sRGBCapable
Marek Olšák [Tue, 24 Jan 2012 22:39:31 +0000 (23:39 +0100)]
mesa: remove ctx->Const.sRGBCapable

It always had the same value as ctx->Extensions.EXT_framebuffer_sRGB.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
12 years agor600g: handle start_component from stream_output_info when possible
Marek Olšák [Wed, 25 Jan 2012 02:28:23 +0000 (03:28 +0100)]
r600g: handle start_component from stream_output_info when possible

12 years agor600g: don't expose transform_feedback2 without kernel support
Marek Olšák [Wed, 25 Jan 2012 02:23:27 +0000 (03:23 +0100)]
r600g: don't expose transform_feedback2 without kernel support

12 years agomesa: allow exposing GL3 without EXT_texture_integer
Marek Olšák [Sun, 22 Jan 2012 19:25:42 +0000 (20:25 +0100)]
mesa: allow exposing GL3 without EXT_texture_integer

Strictly speaking, it's not legal to expose EXT_texture_integer without
EXT_gpu_shader4. It might be even dangerous (apps can assume EXT_gpu_shader4
is available without checking for it).

The check in compute_version is removed as well, because that's already
covered by GLSLVersion >= 130.

Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa: add missing integer alpha formats to _mesa_base_fbo_format
Marek Olšák [Sun, 22 Jan 2012 19:21:36 +0000 (20:21 +0100)]
mesa: add missing integer alpha formats to _mesa_base_fbo_format

Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agost/mesa: require all s3tc formats for EXT_texture_compression_s3tc
Marek Olšák [Sun, 22 Jan 2012 17:47:21 +0000 (18:47 +0100)]
st/mesa: require all s3tc formats for EXT_texture_compression_s3tc

Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agost/mesa: simplify enabling EXT_packed_depth_stencil and ARB_fbo
Marek Olšák [Sun, 22 Jan 2012 17:27:40 +0000 (18:27 +0100)]
st/mesa: simplify enabling EXT_packed_depth_stencil and ARB_fbo

- use OR to combine bind flags
- combine both conditionals into one
- move the ARB_fbo enable where it belongs

Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa: remove obsolete comment in version.c
Marek Olšák [Tue, 24 Jan 2012 20:31:46 +0000 (21:31 +0100)]
mesa: remove obsolete comment in version.c

Pointed out by Brian Paul.

12 years agogallium/docs: document more CAPs
Marek Olšák [Tue, 24 Jan 2012 20:24:21 +0000 (21:24 +0100)]
gallium/docs: document more CAPs

12 years agor600g: nuke the fallback for vertex and fragment color clamping
Marek Olšák [Mon, 23 Jan 2012 02:43:54 +0000 (03:43 +0100)]
r600g: nuke the fallback for vertex and fragment color clamping

12 years agor300g: nuke the fallback for fragment color clamping
Marek Olšák [Mon, 23 Jan 2012 02:38:39 +0000 (03:38 +0100)]
r300g: nuke the fallback for fragment color clamping

12 years agost/mesa: inline if(1) conditional
Marek Olšák [Mon, 23 Jan 2012 12:28:07 +0000 (13:28 +0100)]
st/mesa: inline if(1) conditional

v2: fix typo

12 years agost/mesa: move fragment shader tgsi tokens into st_fp_variant
Marek Olšák [Mon, 23 Jan 2012 12:26:04 +0000 (13:26 +0100)]
st/mesa: move fragment shader tgsi tokens into st_fp_variant

The TGSI code may vary depending on the clamp_color bit.

12 years agost/mesa: do vertex and fragment color clamping in shaders
Marek Olšák [Mon, 23 Jan 2012 02:11:17 +0000 (03:11 +0100)]
st/mesa: do vertex and fragment color clamping in shaders

For ARB_color_buffer_float. Most hardware can't do it and st/mesa is
the perfect place for a fallback.
The exceptions are:
- r500 (vertex clamp only)
- nv50 (both)
- nvc0 (both)
- softpipe (both)

We also have to take into account that r300 can do CLAMPED vertex colors only,
while r600 can do UNCLAMPED vertex colors only. The difference can be expressed
with the two new CAPs.

12 years agost/xvmc: remove xorg-server dependency
Christian König [Tue, 24 Jan 2012 11:19:59 +0000 (12:19 +0100)]
st/xvmc: remove xorg-server dependency

Fixing a circular build dependency.

NOTE: This is a candidate for the 8.0 branch.

Signed-off-by: Christian König <deathsimple@vodafone.de>
12 years agost/mesa: Fix recurring surfaceless contexts
Benjamin Franzke [Tue, 24 Jan 2012 13:35:34 +0000 (14:35 +0100)]
st/mesa: Fix recurring surfaceless contexts

A current incomplete framebuffer was incorrectly used as a
st_framebuffer. When accessing st_framebuffer childs bad things happen:
e.g. st_framebuffer::iface was used to check whether its an incomplete
fb, instead we need to compare st_framebuffer::Base against
mesa_get_incomplete_framebuffer.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=44919
Note: This is a candidate for the 8.0 branch.

Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa: Fix CopyTex{Sub,}Image error checks for integer vs non-integer.
Eric Anholt [Fri, 20 Jan 2012 21:43:11 +0000 (13:43 -0800)]
mesa: Fix CopyTex{Sub,}Image error checks for integer vs non-integer.

Fixes Intel oglconform negative.typeFormatMismatch.copyteximage.

NOTE: This is a candidate for the 8.0 branch.

Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa: Add missing integer R/RG cases to _mesa_is_color_format().
Eric Anholt [Fri, 20 Jan 2012 23:23:42 +0000 (15:23 -0800)]
mesa: Add missing integer R/RG cases to _mesa_is_color_format().

This is part of fixing Intel oglconform
negative.typeFormatMismatch.copyteximage.

NOTE: This is a candidate for the 8.0 branch.

Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agometa: Detect currently-unsupported integer CopyTexSubImage and complain.
Eric Anholt [Fri, 20 Jan 2012 21:59:37 +0000 (13:59 -0800)]
meta: Detect currently-unsupported integer CopyTexSubImage and complain.

This code is unprepared for handling integer (particularly, the
baseFormat of the TexFormat comes out as GL_RGBA, not GL_RGBA_INTEGER,
so the direct call of Driver.ReadPixels crashes due to the int vs
non-int error checking not having happened).  I'm frankly tempted to
convert this code to MapRenderbuffer/MapTexImage rather than doing it
as meta ops, now that we have that support.

Improves the remaining crash in Intel oglconform for int-textures to
just a rendering failure.

NOTE: This is a candidate for the 8.0 branch.

Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa: Add the remaining from/to types for GL_EXT_texture_integer (and R/RG).
Eric Anholt [Fri, 20 Jan 2012 20:50:34 +0000 (12:50 -0800)]
mesa: Add the remaining from/to types for GL_EXT_texture_integer (and R/RG).

This aborts and crashes in intel oglconform's int-textures into being
just rendering failures.  Clamping isn't handled yet.

v2: Add missing "break".
v3: Drop the int/uint distinction, since they don't need different clamping.
NOTE: This is a candidate for the 8.0 branch.

Reviewed-by: Brian Paul <brianp@vmware.com> (v2)
12 years agomesa: Add support for glGetTexImage on GL_TEXTURE_1D_ARRAY
Eric Anholt [Fri, 20 Jan 2012 23:03:12 +0000 (15:03 -0800)]
mesa: Add support for glGetTexImage on GL_TEXTURE_1D_ARRAY

Similarly to how we handle this in texstore, we have to remap height
to depth so that we MapTextureImage each image layer individually.

Fixes part of Intel oglconform's int-textures advanced.fbo.rtt

NOTE: This is a candidate for the 8.0 branch.

Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa: s/GLuint col/GLint col/ to avoid signed/unsigned comparison warnings.
Eric Anholt [Mon, 23 Jan 2012 23:27:36 +0000 (15:27 -0800)]
mesa: s/GLuint col/GLint col/ to avoid signed/unsigned comparison warnings.

Suggested-by: Brian Paul <brianp@vmware.com>
12 years agomesa: Add support for glGetTexImage() from integer textures.
Eric Anholt [Thu, 19 Jan 2012 17:46:24 +0000 (09:46 -0800)]
mesa: Add support for glGetTexImage() from integer textures.

This is a step toward fixing Intel oglconform's
int-textures advanced.fbo.rtt.

NOTE: This is a candidate for the 8.0 branch.

Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agoi965/gen6+: Work around GPU hangs with logic ops on integer textures.
Eric Anholt [Fri, 20 Jan 2012 21:19:10 +0000 (13:19 -0800)]
i965/gen6+: Work around GPU hangs with logic ops on integer textures.

This doesn't result in correct rendering -- GL requires that logic ops
work, while the hardware specs say it doesn't do them.  I'm not sure
how we would want to handle this.

NOTE: This is a candidate for the 8.0 branch.

12 years agoi965/gen6+: Disable blending, alpha test, and dither on integer FBOs.
Eric Anholt [Thu, 19 Jan 2012 23:41:12 +0000 (15:41 -0800)]
i965/gen6+: Disable blending, alpha test, and dither on integer FBOs.

Fixes GPU hangs and some rendering failures in piglit
EXT_texture_integer/fbo-blending

NOTE: This is a candidate for the 8.0 branch.

12 years agomesa/gdi: remove wmesa_set_renderbuffer_funcs() function
Brian Paul [Tue, 24 Jan 2012 22:13:19 +0000 (15:13 -0700)]
mesa/gdi: remove wmesa_set_renderbuffer_funcs() function

The code is no longer relevant.
Note: this driver is probably broken now.  There's no implementation
of ctx->Driver.Map/UnmapRenderbuffer().

12 years agodri/swrast: remove obsolete swrast_span.c file from source list
Brian Paul [Tue, 24 Jan 2012 22:08:20 +0000 (15:08 -0700)]
dri/swrast: remove obsolete swrast_span.c file from source list

12 years agoswrast: fix uninitialized variable warning
Brian Paul [Tue, 24 Jan 2012 20:32:13 +0000 (13:32 -0700)]
swrast: fix uninitialized variable warning

12 years agoswrast: make rowStride variable signed in put_z32_values()
Brian Paul [Tue, 24 Jan 2012 20:29:05 +0000 (13:29 -0700)]
swrast: make rowStride variable signed in put_z32_values()

As with commit aed5c8299fe47b8e1728f8140d069bc89d3fa947

12 years agointel: use swrast code to map/unmap renderbuffers for swrast rendering
Brian Paul [Thu, 19 Jan 2012 00:47:32 +0000 (17:47 -0700)]
intel: use swrast code to map/unmap renderbuffers for swrast rendering

12 years agomesa: update comments, fix whitespace in dd.h
Brian Paul [Thu, 19 Jan 2012 00:39:33 +0000 (17:39 -0700)]
mesa: update comments, fix whitespace in dd.h

12 years agoswrast: remove unused StoreTexel code
Brian Paul [Thu, 19 Jan 2012 00:39:33 +0000 (17:39 -0700)]
swrast: remove unused StoreTexel code

No longer needed since we do all rendering to texture with the buffer
mapping and pixel packing functions.

12 years agoswrast: use Map/UnmapTextureImage() in framebuffer map/unmap code
Brian Paul [Thu, 19 Jan 2012 00:39:33 +0000 (17:39 -0700)]
swrast: use Map/UnmapTextureImage() in framebuffer map/unmap code

When we're actually rendering into a texture, map the texture image
instead of the corresponding renderbuffer.  Before, we just copied
a pointer from the texture image to the renderbuffer.  This change
will make the code usable by hardware drivers.

12 years agomesa: remove ctx->Driver.Map/UnmapTexture() hooks
Brian Paul [Mon, 16 Jan 2012 20:06:03 +0000 (13:06 -0700)]
mesa: remove ctx->Driver.Map/UnmapTexture() hooks

No longer used anywhere.

12 years agonouveau: stop calling ctx->Driver.Map/UnmapTexture()
Brian Paul [Mon, 16 Jan 2012 20:05:59 +0000 (13:05 -0700)]
nouveau: stop calling ctx->Driver.Map/UnmapTexture()

And remove unused nouveau_texture_map/unmap()

12 years agotnl: remove ctx->Driver.Map/UnmapTexture() calls
Brian Paul [Mon, 16 Jan 2012 20:05:55 +0000 (13:05 -0700)]
tnl: remove ctx->Driver.Map/UnmapTexture() calls

ctx->Driver.MapTexture() always points to _swrast_map_texture().
We're already reaching into swrast from t_vb_program.c anyway.
This will let us remove the ctx->Driver.Map/UnmapTexture() functions.

12 years agoswrast: move some renderbuffer functions to s_renderbuffer.c
Brian Paul [Mon, 16 Jan 2012 20:05:49 +0000 (13:05 -0700)]
swrast: move some renderbuffer functions to s_renderbuffer.c

12 years agointel: remove intel_span_supports_format()
Brian Paul [Mon, 16 Jan 2012 20:05:44 +0000 (13:05 -0700)]
intel: remove intel_span_supports_format()

It always returned True.

12 years agoswrast: remove a few extra _mesa_get_format_bytes() calls
Brian Paul [Mon, 16 Jan 2012 20:05:41 +0000 (13:05 -0700)]
swrast: remove a few extra _mesa_get_format_bytes() calls

12 years agomesa: update comments for gl_renderbuffer
Brian Paul [Mon, 16 Jan 2012 20:05:36 +0000 (13:05 -0700)]
mesa: update comments for gl_renderbuffer

12 years agomesa/swrast/drivers: remove obsolete gl_renderbuffer fields
Brian Paul [Mon, 16 Jan 2012 20:05:07 +0000 (13:05 -0700)]
mesa/swrast/drivers: remove obsolete gl_renderbuffer fields

This removes the last of the legacy fields from gl_renderbuffer.

12 years agodri/swrast: use swrast_renderbuffer type
Brian Paul [Mon, 16 Jan 2012 20:03:28 +0000 (13:03 -0700)]
dri/swrast: use swrast_renderbuffer type

12 years agoswrast: use swrast_renderbuffer instead of gl_renderbuffer
Brian Paul [Mon, 16 Jan 2012 20:02:19 +0000 (13:02 -0700)]
swrast: use swrast_renderbuffer instead of gl_renderbuffer

12 years agoosmesa: use swrast_renderbuffer
Brian Paul [Mon, 16 Jan 2012 20:01:35 +0000 (13:01 -0700)]
osmesa: use swrast_renderbuffer

12 years agoradeon: derive radeon_renderbuffer from swrast_renderbuffer
Brian Paul [Mon, 16 Jan 2012 19:52:21 +0000 (12:52 -0700)]
radeon: derive radeon_renderbuffer from swrast_renderbuffer

12 years agointel: derive intel_renderbuffer from swrast_renderbuffer
Brian Paul [Mon, 16 Jan 2012 19:40:01 +0000 (12:40 -0700)]
intel: derive intel_renderbuffer from swrast_renderbuffer

Drivers that rely on swrast need to do this, as with swrast_texture_image.

12 years agoxlib: derive xmesa_renderbuffer from swrast_renderbuffer
Brian Paul [Mon, 16 Jan 2012 19:35:49 +0000 (12:35 -0700)]
xlib: derive xmesa_renderbuffer from swrast_renderbuffer

12 years agoswrast: allocate swrast_renderbuffers instead of gl_renderbuffers
Brian Paul [Mon, 16 Jan 2012 19:35:45 +0000 (12:35 -0700)]
swrast: allocate swrast_renderbuffers instead of gl_renderbuffers

12 years agoswrast: new swrast_renderbuffer type
Brian Paul [Mon, 16 Jan 2012 19:29:15 +0000 (12:29 -0700)]
swrast: new swrast_renderbuffer type

This will let us move the swrast-specific fields out of gl_renderbuffer.

12 years agointel: use intel_rb_format() to get renderbuffer format
Brian Paul [Mon, 16 Jan 2012 19:29:11 +0000 (12:29 -0700)]
intel: use intel_rb_format() to get renderbuffer format

This will make future changes cleaner and less invasive.

12 years agodri/swrast: rename swrast_renderbuffer to dri_swrast_renderbuffer
Brian Paul [Mon, 16 Jan 2012 19:29:04 +0000 (12:29 -0700)]
dri/swrast: rename swrast_renderbuffer to dri_swrast_renderbuffer

To prevent name collision with future swrast_renderbuffer in the swrast
module.

12 years agoswrast: use stencil packing function in s_stencil.c
Brian Paul [Mon, 16 Jan 2012 19:28:59 +0000 (12:28 -0700)]
swrast: use stencil packing function in s_stencil.c

12 years agoswrast: use color packing functions in s_span.c
Brian Paul [Mon, 16 Jan 2012 19:28:56 +0000 (12:28 -0700)]
swrast: use color packing functions in s_span.c

12 years agoswrast: remove s_spantemp.h
Brian Paul [Mon, 16 Jan 2012 19:28:51 +0000 (12:28 -0700)]
swrast: remove s_spantemp.h

12 years agoxlib: remove xm_span.c and related code
Brian Paul [Mon, 16 Jan 2012 19:28:47 +0000 (12:28 -0700)]
xlib: remove xm_span.c and related code

12 years agomesa: remove gl_renderbuffer::Wrapped
Brian Paul [Mon, 16 Jan 2012 19:28:42 +0000 (12:28 -0700)]
mesa: remove gl_renderbuffer::Wrapped

There's no such thing as renderbuffer wrappers anymore.

12 years agoswrast: rewrite, simplify the the render-to-texture code
Brian Paul [Mon, 16 Jan 2012 19:27:50 +0000 (12:27 -0700)]
swrast: rewrite, simplify the the render-to-texture code

12 years agomesa: rename gl_renderbuffer::Data to Buffer
Brian Paul [Mon, 16 Jan 2012 19:10:46 +0000 (12:10 -0700)]
mesa: rename gl_renderbuffer::Data to Buffer

To better indicate that this pointer to the malloc'd memory.

12 years agomesa: move freeing of software renderbuffers into swrast
Brian Paul [Mon, 16 Jan 2012 19:15:40 +0000 (12:15 -0700)]
mesa: move freeing of software renderbuffers into swrast

12 years agomesa: remove gl_renderbuffer::DataType
Brian Paul [Mon, 16 Jan 2012 19:03:09 +0000 (12:03 -0700)]
mesa: remove gl_renderbuffer::DataType

12 years agomesa: remove gl_renderbuffer:RowStride field
Brian Paul [Mon, 16 Jan 2012 18:48:18 +0000 (11:48 -0700)]
mesa: remove gl_renderbuffer:RowStride field

12 years agomesa: finally, remove the GetRow/PutRow/etc functions
Brian Paul [Mon, 16 Jan 2012 18:32:12 +0000 (11:32 -0700)]
mesa: finally, remove the GetRow/PutRow/etc functions

12 years agodri: remove all the obsolete spantmp files
Brian Paul [Mon, 16 Jan 2012 18:30:03 +0000 (11:30 -0700)]
dri: remove all the obsolete spantmp files

12 years agoradeon: remove obsolete GetRow/PutRow code
Brian Paul [Mon, 16 Jan 2012 18:29:58 +0000 (11:29 -0700)]
radeon: remove obsolete GetRow/PutRow code

12 years agonouveau: remove obsolete GetRow/PutRow code
Brian Paul [Mon, 16 Jan 2012 18:29:53 +0000 (11:29 -0700)]
nouveau: remove obsolete GetRow/PutRow code

12 years agointel: remove most of the span Get/PutRow code
Brian Paul [Mon, 16 Jan 2012 18:29:35 +0000 (11:29 -0700)]
intel: remove most of the span Get/PutRow code

12 years agodri/swrast: remove obsolete GetRow/PutRow code
Brian Paul [Mon, 16 Jan 2012 18:28:15 +0000 (11:28 -0700)]
dri/swrast: remove obsolete GetRow/PutRow code

12 years agoosmesa: remove obsolete GetRow/PutRow code
Brian Paul [Mon, 16 Jan 2012 18:28:02 +0000 (11:28 -0700)]
osmesa: remove obsolete GetRow/PutRow code

12 years agoxlib: remove obsolete GetRow/PutRow code
Brian Paul [Mon, 16 Jan 2012 18:24:18 +0000 (11:24 -0700)]
xlib: remove obsolete GetRow/PutRow code

12 years agomesa: remove obsolete PutRow, etc assignments
Brian Paul [Mon, 16 Jan 2012 18:24:09 +0000 (11:24 -0700)]
mesa: remove obsolete PutRow, etc assignments

12 years agoswrast: remove Get/PutRow()-related code
Brian Paul [Fri, 13 Jan 2012 01:33:09 +0000 (18:33 -0700)]
swrast: remove Get/PutRow()-related code

12 years agost/mesa: remove gl_renderbuffer::GetPointer stuff
Brian Paul [Mon, 16 Jan 2012 18:38:46 +0000 (11:38 -0700)]
st/mesa: remove gl_renderbuffer::GetPointer stuff

12 years agoswrast: stop using Put/GetRow/Values() in swrast code
Brian Paul [Mon, 16 Jan 2012 17:55:39 +0000 (10:55 -0700)]
swrast: stop using Put/GetRow/Values() in swrast code

All color buffer rendering is now done by accessing mapped renderbuffer
memory.  We're now able to get rid of all the GetRow/PutRow stuff.

12 years agoswrast: use gl_renderbuffer::StrideInBytes in depth/stencil code
Brian Paul [Mon, 16 Jan 2012 17:55:32 +0000 (10:55 -0700)]
swrast: use gl_renderbuffer::StrideInBytes in depth/stencil code

12 years agomesa: use gl_renderbuffer::Map for all depth/stencil accesses
Brian Paul [Mon, 16 Jan 2012 17:55:25 +0000 (10:55 -0700)]
mesa: use gl_renderbuffer::Map for all depth/stencil accesses

Instead of using the obsolete gl_renderbuffer::Data field.
Color buffer are still accessed through GetRow/PutRow().

12 years agointel: make intel_renderbuffer_map/unmap() static
Brian Paul [Mon, 16 Jan 2012 17:55:20 +0000 (10:55 -0700)]
intel: make intel_renderbuffer_map/unmap() static

12 years agomesa: add new gl_renderbuffer fields
Brian Paul [Mon, 16 Jan 2012 17:55:15 +0000 (10:55 -0700)]
mesa: add new gl_renderbuffer fields

These are temporary, actually, but they'll make follow-on work easier to
implement in a step-by-step manner.  Eventually the Map and RowStrideBytes
fields will go into a new swrast_renderbuffer type, but adding that type
now would involve touching a _lot_ of code that'll eventually be removed.

The fields marked as obsolete will go away completely at some point.

12 years agoswrast: flush pending rendering before unmapping buffers
Brian Paul [Mon, 16 Jan 2012 17:55:10 +0000 (10:55 -0700)]
swrast: flush pending rendering before unmapping buffers

12 years agoswrast: new assertions in _swrast_pixel_address()
Brian Paul [Mon, 16 Jan 2012 17:54:53 +0000 (10:54 -0700)]
swrast: new assertions in _swrast_pixel_address()

12 years agoswrast: use _swrast_pixel_address() in more places
Brian Paul [Mon, 16 Jan 2012 17:54:47 +0000 (10:54 -0700)]
swrast: use _swrast_pixel_address() in more places

12 years agoswrast: s/Data/Map/ in swrast_texture_image
Brian Paul [Mon, 16 Jan 2012 17:54:41 +0000 (10:54 -0700)]
swrast: s/Data/Map/ in swrast_texture_image

To indicate that it points to mapped texture memory.

12 years agoswrast: remove gl_renderbuffer::DataType check in DrawPixels()
Brian Paul [Mon, 16 Jan 2012 17:54:36 +0000 (10:54 -0700)]
swrast: remove gl_renderbuffer::DataType check in DrawPixels()

The field will be going away so update this code.

12 years agoswrast: remove gl_renderbuffer::DataType assertions
Brian Paul [Mon, 16 Jan 2012 17:54:31 +0000 (10:54 -0700)]
swrast: remove gl_renderbuffer::DataType assertions

This field will go away, so remove some uses of it.

12 years agost/mesa: remove gl_renderbuffer:DataType assignments
Brian Paul [Mon, 16 Jan 2012 17:54:23 +0000 (10:54 -0700)]
st/mesa: remove gl_renderbuffer:DataType assignments

That field is only used by swrast code so there's no reason to mess
with it in the gallium state tracker.

This also lets us remove the unused st_format_data() type function and
related code.

12 years agoswrast: make _swrast_get_values(), _swrast_get_row() static
Brian Paul [Mon, 16 Jan 2012 17:54:19 +0000 (10:54 -0700)]
swrast: make _swrast_get_values(), _swrast_get_row() static

They were only called from in s_span.c

12 years agoswrast: remove dstType param from _swrast_read_rgba_span()
Brian Paul [Mon, 16 Jan 2012 17:54:13 +0000 (10:54 -0700)]
swrast: remove dstType param from _swrast_read_rgba_span()

It was always GL_FLOAT.

12 years agoswrast: remove unused _swrast_put_row()
Brian Paul [Mon, 16 Jan 2012 17:54:01 +0000 (10:54 -0700)]
swrast: remove unused _swrast_put_row()

12 years agomesa: Don't resurrect deleted ARB VAOs in glPopClientAttrib
Ian Romanick [Sat, 21 Jan 2012 01:23:02 +0000 (17:23 -0800)]
mesa: Don't resurrect deleted ARB VAOs in glPopClientAttrib

When ARB VAOs are used, glPopClientAttrib does not resurrect a deleted
VAO or VBO.  This difference between the two spec is, unfortunately,
not very well spelled out in the specs.

Fixes oglc vao(advanced.pushPop.deleteVAO) and
vao(advanced.pushPop.deleteVBO) tests.

NOTE: This is a candidate for release branches.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agomesa: Rename gl_array_object::VBOonly to ::ARBsemantics
Ian Romanick [Mon, 23 Jan 2012 22:22:38 +0000 (14:22 -0800)]
mesa: Rename gl_array_object::VBOonly to ::ARBsemantics

There are more differences between Apple and ARB than just requiring
that all arrays be stored in VBOs.  Additional uses will be added in
following commits.

Also, set the flag at Bind time instead of Gen time.  The ARB_vao spec
specifies that behavior.

NOTE: This is a candidate for release branches.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
12 years agoswrast: Use fixed-function processing instead _TexEnvProgram for DrawPixels
Ian Romanick [Fri, 20 Jan 2012 01:29:37 +0000 (17:29 -0800)]
swrast: Use fixed-function processing instead _TexEnvProgram for DrawPixels

This is a hack to work around drivers such as i965 that:

    - Set _MaintainTexEnvProgram to generate GLSL IR for
      fixed-function fragment processing.
    - Don't call _mesa_ir_link_shader to generate Mesa IR from the
      GLSL IR.
    - May use swrast to handle glDrawPixels.

Since _mesa_ir_link_shader is never called, there is no Mesa IR to
execute.  Instead do regular fixed-function processing.

Even on platforms that don't need this, the software fixed-function
code is much faster than the software shader code.

NOTE: This is a candidate for the 8.0 branch.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=44749

12 years agomesa: Make sure _TexEnvProgram points at the current ff fragment program
Ian Romanick [Fri, 20 Jan 2012 01:23:51 +0000 (17:23 -0800)]
mesa: Make sure _TexEnvProgram points at the current ff fragment program

At least one place, the _mesa_need_secondary_color function in
state.h, uses this to make decisions.  The next patch in this series
will add another dependency.  Ideally, this field would go away and be
replace by a flag or something.

NOTE: This is a candidate for the 8.0 branch.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
12 years agosoftpipe: move var initialization to silence warning
Brian Paul [Tue, 24 Jan 2012 18:15:43 +0000 (11:15 -0700)]
softpipe: move var initialization to silence warning

12 years agor600g: remove unused variable
Brian Paul [Tue, 24 Jan 2012 18:15:23 +0000 (11:15 -0700)]
r600g: remove unused variable

12 years agoglsl: Don't use newlocale on Haiku
Alexander von Gluck [Sun, 22 Jan 2012 18:42:38 +0000 (12:42 -0600)]
glsl: Don't use newlocale on Haiku

NOTE: This is a candidate for the 8.0 branch.

Signed-off-by: Brian Paul <brianp@vmware.com>
12 years agomesa: Don't use newlocale on Haiku
Alexander von Gluck [Sun, 22 Jan 2012 18:42:32 +0000 (12:42 -0600)]
mesa: Don't use newlocale on Haiku

NOTE: This is a candidate for the 8.0 branch.

Signed-off-by: Brian Paul <brianp@vmware.com>
12 years agosvga: fix typedef conflicts on Haiku
Alexander von Gluck [Sun, 22 Jan 2012 18:42:24 +0000 (12:42 -0600)]
svga: fix typedef conflicts on Haiku

NOTE: This is a candidate for the 8.0 branch.

Signed-off-by: Brian Paul <brianp@vmware.com>
12 years agollvmpipe: fix symbol conflict on Haiku
Alexander von Gluck [Sun, 22 Jan 2012 18:42:17 +0000 (12:42 -0600)]
llvmpipe: fix symbol conflict on Haiku

NOTE: This is a candidate for the 8.0 branch.

Signed-off-by: Brian Paul <brianp@vmware.com>