History log of /external/mesa3d/src/mesa/main/fbobject.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
e13a41d91e75df7a5527a60b4c3c8ee2976dad14 02-Mar-2017 Robert Foss <robert.foss@collabora.com> mesa: Avoid read of uninitialized variable

The is_color_attachement variable is later read when handling two
separate error cases, where only one of the cases results in the
variable being initialized.

This can be avoided by giving the variable a safe default value.

Coverity-Id: 1398631
Cc: mesa-stable@lists.freedesktop.org
Signed-off-by: Robert Foss <robert.foss@collabora.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
(cherry picked from commit 88becf73022d780cfd0d7dbc5bb3911f8b0d2b11)
/external/mesa3d/src/mesa/main/fbobject.c
84e3e12b2582f4707a837ebb960ea7ce19e1c263 12-Jan-2017 Alejandro Piñeiro <apinheiro@igalia.com> main/fbobject: throw invalid operation when get_attachment fails if needed

In most cases, if a call to get_attachment fails is because attachment
is a INVALID_ENUM. But for some specific cases, if COLOR_ATTACHMENTm
(where m >= MAX_COLOR_ATTACHMENTS) is used, it should raise an
INVALID_OPERATION exception instead.

Fixes:
GL45-CTS.direct_state_access.framebuffers_get_attachment_parameter_errors
GL45-CTS.direct_state_access.framebuffers_renderbuffer_attachment_errors

v2: extra new line before quote block. Include "color attachment" on both
new message errors (Nicolai).

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/mesa/main/fbobject.c
c6eb3aeba530fe82087c1c3c06ded23cb79bc199 12-Jan-2017 Alejandro Piñeiro <apinheiro@igalia.com> main/fboject: return if it is color_attachment on get_attachment

Some callers would need that info to know if they should raise
INVALID_ENUM or INVALID_OPERATION. An alternative would be the caller
to check if the attachment is a GL_COLOR_ATTACHMENTm, but that seems
redundant as get_attachment is already doing that.

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/mesa/main/fbobject.c
713cd23d8e5db82e64c81fff792a932a614d7006 10-Dec-2016 Kenneth Graunke <kenneth@whitecape.org> mesa: Return LINEAR encoding for winsys FBO depth/stencil.

GetFramebufferAttachmentParameteriv should return GL_LINEAR for the
window system default framebuffer's GL_DEPTH or GL_STENCIL attachments
when there are zero depth or stencil bits.

The GL 4.5 spec's GetFramebufferAttachmentParameteriv section says:

"If the value of FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is not NONE,
these queries apply to all other framebuffer types:

[...]

If attachment is not a color attachment, or no data storage or texture
image has been specified for the attachment, then params will contain
the value LINEAR."

Note that we already return LINEAR for the case where there is an actual
depth or stencil renderbuffer attached. In the case modified by this
patch, FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE returns FRAMEBUFFER_DEFAULT
rather than NONE.

Fixes a CTS test when run in a visual without depth / stencil buffers:
GL45-CTS.gtf30.GL3Tests.framebuffer_srgb.framebuffer_srgb_default_encoding

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
63318d34acd4a5edb271d57adf3b01e2e52552f8 16-Nov-2016 Nanley Chery <nanley.g.chery@intel.com> mesa/fbobject: Update CubeMapFace when reusing textures

Framebuffer attachments can be specified through FramebufferTexture*
calls. Upon specifying a depth (or stencil) framebuffer attachment that
internally reuses a texture, the cube map face of the new attachment
would not be updated (defaulting to TEXTURE_CUBE_MAP_POSITIVE_X).
Fix this issue by actually updating the CubeMapFace field.

This bug manifested itself in BindFramebuffer calls performed on
framebuffers whose stencil attachments internally reused a depth
texture. When binding a framebuffer, we walk through the framebuffer's
attachments and update each one's corresponding gl_renderbuffer. Since
the framebuffer's depth and stencil attachments may share a
gl_renderbuffer and the walk visits the stencil attachment after
the depth attachment, the uninitialized CubeMapFace forced rendering
to TEXTURE_CUBE_MAP_POSITIVE_X.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=77662
Signed-off-by: Nanley Chery <nanley.g.chery@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
ff00ab745c9a9d6ef35239ea656a5db0c76de52d 10-Oct-2016 Brian Paul <brianp@vmware.com> mesa: replace gl_framebuffer::_IntegerColor wih _IntegerBuffers

Use a bitmask to indicate which color buffers are integer-valued, rather
than a bool. Also, the old field was mis-computed. If an integer buffer
was followed by a non-integer buffer, the _IntegerColor field was wrongly
set to false.

This fixes the new piglit gl-3.1-mixed-int-float-fbo test.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/mesa/main/fbobject.c
a40640f5303c9d03845459ecc364a3466d25cb5b 04-Oct-2016 Kenneth Graunke <kenneth@whitecape.org> mesa: Raise INVALID_ENUM in FramebufferTexture*D for unknown textargets.

ES3-CTS.functional.negative_api.buffer.framebuffer_texture2d expects
glFramebufferTexture[123]D to raise GL_INVALID_ENUM when
supplied a completely bogus textarget parameter (i.e. 0xffffffff).

This is at odds with the spec. GLES 3.1 says:

"An INVALID_OPERATION error is generated if texture is not zero and
textarget is not one of TEXTURE_2D, TEXTURE_2D_MULTISAMPLE, or one
of the cube map face targets from table 8.21."

(and GLES 3.0 and GL 4.5 both have similar text). However, GL has a
general guideline that says:

"If a command that requires an enumerated value is passed a symbolic
constant that is not one of those specified as allowable for that
command, an INVALID_ENUM error is generated."

Apparently other vendors reconcile these two rules as follows: GL should
raise INVALID_OPERATION for actual texture target enumeration values
which are not allowed for this particular glFramebufferTexture*D call.
Any value that is not a texture target should result in GL_INVALID_ENUM.

For example, glFramebufferTexture2D with GL_TEXTURE_1D would result in
INVALID_OPERATION because it is a real texture target, but not allowed
for the 2D version of the function. But calling it with GL_FRONT would
result in INVALID_ENUM, as that isn't even a texture target.

Fixes:
- {ES3-CTS,dEQP-GLES3}.functional.negative_api.buffer.framebuffer_texture2d
- {ES31-CTS,ES32-CTS,dEQP-GLES31}.functional.debug.negative_coverage.get_error.buffer.framebuffer_texture2d

References: https://gitlab.khronos.org/opengl/cts/merge_requests/387
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Timothy Arceri <timothy.arceri@collabora.com>
/external/mesa3d/src/mesa/main/fbobject.c
aecdb21be8f4cd4963d20fa42c2c7291ece874e6 04-Oct-2016 Kenneth Graunke <kenneth@whitecape.org> mesa: Reorganize check_textarget().

Having one top-level switch statement covering all known texture targets
will make the next change easier to implement.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Timothy Arceri <timothy.arceri@collabora.com>
/external/mesa3d/src/mesa/main/fbobject.c
d58a3906cba57b12035f6ec7a3da80edc6929d6f 08-Sep-2016 Marek Olšák <marek.olsak@amd.com> mesa: fix glGetFramebufferAttachmentParameteriv w/ on-demand FRONT_BACK alloc

This fixes 66 CTS tests on st/mesa.

Cc: 12.0 <mesa-stable@lists.freedesktop.org>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/mesa/main/fbobject.c
0e23f370c99efa3e14ee0ffd0b04fa887f2bc2a5 07-Jul-2016 Brian Paul <brianp@vmware.com> mesa: print number of samples in renderbuffer_storage error msg

Reviewed-by: Timothy Arceri <timothy.arceri@collabora.com>
/external/mesa3d/src/mesa/main/fbobject.c
8a10192b4b2435577bde1227c06166029b581398 30-May-2016 Marek Olšák <marek.olsak@amd.com> mesa: fix crash in driver_RenderTexture_is_safe

This just fixed the crash with the apitrace in bug report.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=95246

Cc: 11.1 11.2 12.0 <mesa-stable@lists.freedesktop.org>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/mesa/main/fbobject.c
04a78068ff6a1399cd6891b4ef34a480de28b07c 27-May-2016 Marek Olšák <marek.olsak@amd.com> mesa: skip level checking for FramebufferTexture*D if texture is zero

From the OpenGL 4.5 core spec:
"An INVALID_VALUE error is generated if texture is not zero and level is
not a supported texture level for textarget, as described above."

Other FramebufferTexture functions already do the right thing.

This fixes the main menu in F1 2015.

Cc: 11.1 11.2 <mesa-stable@lists.freedesktop.org>
Reviewed-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/mesa/main/fbobject.c
82d756f3afbbaddbf89817b3ab88f684ec223783 22-May-2016 Ilia Mirkin <imirkin@alum.mit.edu> mesa: allow GL_FRAMEBUFFER_DEFAULT_LAYERS to be queried with ES geometry

When we have the geometry extensions, enable querying of the new param.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
/external/mesa3d/src/mesa/main/fbobject.c
bdc9c20df08d724b1eb3d507660f71ff47b9fc7b 22-May-2016 Matt Turner <mattst88@gmail.com> mesa: Unlock mutex on error path.

Caught by Coverity (CID 1362021). Caused by commit 015f2207c.
/external/mesa3d/src/mesa/main/fbobject.c
015f2207cfa2334fb3bca5b6b941666ebf73e829 30-Jul-2015 Matt Turner <mattst88@gmail.com> mesa: Replace uses of Shared->Mutex with hash-table mutexes

We were locking the Shared->Mutex and then using calling functions like
_mesa_HashInsert that do additional per-hash-table locking internally.

Instead just lock each hash-table's mutex and use functions like
_mesa_HashInsertLocked and the new _mesa_HashRemoveLocked.

In order to do this, we need to remove the locking from
_mesa_HashFindFreeKeyBlock since it will always be called with the
per-hash-table lock taken.

Reviewed-by: Timothy Arceri <t_arceri@yahoo.com.au>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
b40375a21cd8c0336aa9c3fcbabe02c27f9d1471 17-Feb-2016 Edward O'Callaghan <eocallaghan@alterapraxis.com> mesa: Add comment to framebuffer_parameteri()

V.2:
Change 'N.B.,' to 'NOTE:'.

Signed-off-by: Edward O'Callaghan <eocallaghan@alterapraxis.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/mesa/main/fbobject.c
789e0965941533b0eeb2bc822012985e7c36d9c9 09-Mar-2016 Kenneth Graunke <kenneth@whitecape.org> mesa: Disallow GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME on winsys FBO.

Fixes:
dEQP-GLES3.functional.negative_api.state.get_framebuffer_attachment_parameteriv

Apparently, GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME is not allowed when
GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is GL_FRAMEBUFFER_DEFAULT, and
is expected to result in a GL_INVALID_ENUM error.

No GL specification actually defines what GL_FRAMEBUFFER_DEFAULT means.
It probably means the window system FBO. It also doesn't mention the
behavior of any queries for that type. Various ARB folks seem fairly
confused about it too. For now, just do something vaguely like what
dEQP expects.

I think we probably need to check the visual bits against 0 for the
attachment, but we haven't been doing that thusfar, and given how
confusingly this is specified, I can't imagine anyone relying on it.

v2: Improve comments, move error condition above the
_mesa_get_fb0_attachment call, add forgotten "return"
(all suggested/caught by Jordan Justen).

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
19f13b2096a9fdd986e5a12d4e9d8b0d6a4632f3 08-Mar-2016 Kenneth Graunke <kenneth@whitecape.org> mesa: Fix error code for GetFramebufferAttachmentParameter in ES 3.0+.

The ES 3.0+ specifications contain the exact same text as the OpenGL
specification, which says that we should return GL_INVALID_OPERATION.

ES 2.0 contains different text saying we should return GL_INVALID_ENUM.

Previously, Mesa chose the error code based on API (GL vs. ES).
This patch makes ES 3.0+ follow the GL behavior. ES 2 remains as is.

Fixes dEQP-GLES3.functional.fbo.api.attachment_query_empty_fbo.
However, breaks the dEQP-GLES2 variant of the same test for drivers
which silently promote to ES 3.0. This can be worked around by
exporting MESA_GLES_VERSION_OVERRIDE=2.0, but is a bug in dEQP-GLES2.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
aa849d97a0df34a1457d7205518bd82365b4eb2d 01-Mar-2016 Samuel Iglesias Gonsálvez <siglesias@igalia.com> main: call invalidate_framebuffer_storage() with driver's viewport limits

Don't use hardcoded ones because the driver can set different ones.

Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
fed9b0ed5a6856ac109ffee5116b988bc0669e5b 13-Nov-2015 Ian Romanick <ian.d.romanick@intel.com> mesa: Refactor bind_framebuffer to make _mesa_bind_framebuffers

Fixing dd_function_table::BindFramebuffer will come later because that
change is probably not suitable for stable.

v2: Fix whitespace issue noticed by Topi.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
35859d5bbba998aa41ec87bc53d946add4662dea 29-Feb-2016 Dave Airlie <airlied@redhat.com> mesa/fbobject: propogate Layered when reusing attachments.

When reusing a depth attachment as a stencil, we need to propogate
the layered bit, otherwise we fail to complete the framebuffer.

discovered running ./bin/fbo-depth-array depth-layered-clear
on virgl on haswell.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Cc: "11.1 11.2" <mesa-stable@lists.freedesktop.org>
Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/mesa/main/fbobject.c
68c4af1c1942d30665f3f99654e8f35b175d1256 18-Feb-2016 Ilia Mirkin <imirkin@alum.mit.edu> mesa: check fbo completeness based on internal format, not driver format

The base format is a function of the user-requested format, while the
driver format is not. So we should use the base format instead.

The driver format can be anything. Specifically in the stencil-only
case, it might be a depth/stencil format. However we still want to
refuse such an attachment when bound to GL_DEPTH.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
eb5bc62e97d8f66696dca7d5c6acb616a55a16d1 12-Nov-2015 Ian Romanick <ian.d.romanick@intel.com> mesa: Refactor renderbuffer_storage to make _mesa_renderbuffer_storage

Pulls the parts of renderbuffer_storage that aren't just parameter
validation out into a function that can be called from other parts of
Mesa (e.g., meta).

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
/external/mesa3d/src/mesa/main/fbobject.c
9ae42ab1ec7024814494cf65c4527c1b9ad98cd0 12-Nov-2015 Ian Romanick <ian.d.romanick@intel.com> mesa: Refactor _mesa_framebuffer_renderbuffer

This function previously was only used in fbobject.c and contained a
bunch of API validation. Split the function into
framebuffer_renderbuffer that is static and contains the validation, and
_mesa_framebuffer_renderbuffer that is suitable for calling from
elsewhere in Mesa (e.g., meta).

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
/external/mesa3d/src/mesa/main/fbobject.c
095da3b550be9f57a559ee3e549b15f3db4cf567 23-Jan-2016 Ilia Mirkin <imirkin@alum.mit.edu> mesa: invalidate framebuffer when changing parameters

This fixes dEQP-GLES31.functional.fbo.completeness.no_attachments

When the width or height are 0, the framebuffer is incomplete. We may
also not have been passing the new state down to the driver when the
widths/heights/etc changed. Make sure to dirty the state so that the
framebuffer state is revalidated at draw time.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
395b53dad69470f0f3014e96bed0e6ceef383ce8 16-Dec-2015 Erik Faye-Lund <kusmabite@gmail.com> main: get rid of needless conditional

We already check if the driver changed the completeness, we don't
need to duplicate that check. Let's just early out there instead.

Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
Reviewed-by: Timothy Arceri <timothy.arceri@collabora.com>
/external/mesa3d/src/mesa/main/fbobject.c
cf439951b791827677e96d29e209b5fc08d07a2e 24-Feb-2015 Iago Toral Quiroga <itoral@igalia.com> mesa: Fix GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE for default framebuffer.

From section 9.2. Binding and Managing Framebuffer Objects:

"Upon successful return from Get*FramebufferAttachmentParameteriv, if
pname is FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, then params will contain
one of NONE, FRAMEBUFFER_DEFAULT, TEXTURE, or RENDERBUFFER, identifying
the type of object which contains the attached image."

And then it clarifies further:

"If the value of FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is NONE, then
either no framebuffer is bound to target; or the default framebuffer is
bound, attachment is DEPTH or STENCIL, and the number of depth or stencil
bits, respectively, is zero"

Currently, if the default framebuffer is bound, we always return
GL_FRAMEBUFFER_DEFAULT for FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, but
according to the spec, when GL_DEPTH or GL_STENCIL attachments are
the ones being queried, we should return GL_NONE if they don't exist.

Fixes the following dEQP test:
dEQP-GLES3.functional.state_query.fbo.framebuffer_attachment_x_size_initial

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Cc: "10.6" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/mesa/main/fbobject.c
f8a938814e8cdbf65153c277f257df8e22fae9c5 24-Aug-2015 Marta Lofstedt <marta.lofstedt@intel.com> mesa: Limit Framebuffer Parameter OpenGL ES 3.1 usage

According to OpenGL ES 3.1 specification, section 9.2.1 for
glFramebufferParameter and section 9.2.3 for glGetFramebufferParameteriv:

"An INVALID_ENUM error is generated if pname is not FRAMEBUFFER_DEFAULT_WIDTH,
FRAMEBUFFER_DEFAULT_HEIGHT, FRAMEBUFFER_DEFAULT_SAMPLES, or
FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS."

Therefore exclude OpenGL ES 3.1 from using the GL_FRAMEBUFFER_DEFAULT_LAYERS
parameter.

Signed-off-by: Marta Lofstedt <marta.lofstedt@intel.com>
Reviewed-by: Kevin Rogovin <kevin.rogovin at intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
46684d3ae3a4084b00355df3feeeb25159656a8e 13-Aug-2015 Timothy Arceri <t_arceri@yahoo.com.au> mesa: move non-generic samples validation

The previous patch replaces the other use case.

V2: remove the validation from it old location.

Cc: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
/external/mesa3d/src/mesa/main/fbobject.c
08f2dfe3430789085c165ce7c546d5afd2e295c2 10-Aug-2015 Marta Lofstedt <marta.lofstedt@intel.com> mesa/es3.1: Allow Multisampled FrameBufferTextures

GLES 3.1 must be allowed to use multisampled framebuffer textures.

Signed-off-by: Marta Lofstedt <marta.lofstedt@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
dbefffa5b4c438008d44db106b5774f575cb495f 22-Jul-2015 Brian Paul <brianp@vmware.com> mesa: initialize variables to silence compiler warnings

Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
/external/mesa3d/src/mesa/main/fbobject.c
2f11e92cef51c88a09bc778e2ceca4ab50cf0017 18-Jul-2015 Kenneth Graunke <kenneth@whitecape.org> mesa: Rename _mesa_lookup_enum_by_nr() to _mesa_enum_to_string().

Generated by sed; no manual changes.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
6aa12994bdf0068a9804204a8f1b197cc0f46ec6 17-Jun-2015 Kevin Rogovin <kevin.rogovin@intel.com> PATCH 03/10] mesa: Complete ARB_framebuffer_no_attachments in Mesa core

Implement GL_ARB_framebuffer_no_attachments in Mesa core
- changes to conditions for framebuffer completenss
- implement set/get functions for framebuffers for
new functions in GL_ARB_framebuffer_no_attachments

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Signed-off-by: Kevin Rogovin <kevin.rogovin@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
c9d26f201aca58c72629d1ba1bb13c32c158d9dd 17-Jun-2015 Kevin Rogovin <kevin.rogovin@intel.com> mesa: Constants and functions for ARB_framebuffer_no_attachments

Define the enumeration constants, function entry points and
glGet for the GL_ARB_framebuffer_no_attachments.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Signed-off-by: Kevin Rogovin <kevin.rogovin@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
da81999bee7b1f1bc0bb296e903deb03617ae22c 17-Jun-2015 Kevin Rogovin <kevin.rogovin@intel.com> mesa: Define infrastructure for ARB_framebuffer_no_attachments

Define the infrastructure for the extension GL_ARB_framebuffer_no_attachments:
- extension table
- additions to gl_framebuffer

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Signed-off-by: Kevin Rogovin <kevin.rogovin@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
832ea2345a96388950bb39ce8a2e4ca8bfdb4fe5 21-May-2015 Ian Romanick <ian.d.romanick@intel.com> mesa: Use the profile instead of an extension bit to validate GL_TEXTURE_CUBE_MAP

The extension on which this depends will always be enabled in core
profile, and the extension bit is about to be removed.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Cc: "10.6" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/mesa/main/fbobject.c
8bcd14fab9a86276980a8859740999a1db4c55d5 18-May-2015 Ian Romanick <ian.d.romanick@intel.com> Revert "mesa: Add ARB_direct_state_access checks in FBO functions"

This reverts commit 6ad0b7e07a0445e9e0f368e079c4f7b8a6757bb3.

Acked-by: Fredrik Höglund <fredrik@kde.org>
Cc: "10.6" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/mesa/main/fbobject.c
f3e8596a371c3708e9d9d68a021c39982c676cf1 18-May-2015 Ian Romanick <ian.d.romanick@intel.com> Revert "mesa: Add ARB_direct_state_access checks in renderbuffer functions"

This reverts commit cb49940766b581c6656473d89c221653c69fa0f9.

Acked-by: Fredrik Höglund <fredrik@kde.org>
Cc: "10.6" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/mesa/main/fbobject.c
5a55f681f6208122cd4921b283cffd54ea335128 16-May-2015 Fredrik Höglund <fredrik@kde.org> mesa: Check the lookup_framebuffer return value in NamedFramebufferRenderbuffer

Found by Coverity.

Reported-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/mesa/main/fbobject.c
cb49940766b581c6656473d89c221653c69fa0f9 10-May-2015 Fredrik Höglund <fredrik@kde.org> mesa: Add ARB_direct_state_access checks in renderbuffer functions

Signed-off-by: Fredrik Höglund <fredrik@kde.org>
Reviewed-by: Adam Jackson <ajax@redhat.com>
/external/mesa3d/src/mesa/main/fbobject.c
6ad0b7e07a0445e9e0f368e079c4f7b8a6757bb3 10-May-2015 Fredrik Höglund <fredrik@kde.org> mesa: Add ARB_direct_state_access checks in FBO functions

Signed-off-by: Fredrik Höglund <fredrik@kde.org>
Reviewed-by: Adam Jackson <ajax@redhat.com>
/external/mesa3d/src/mesa/main/fbobject.c
03420eac0c53280beae5f72783e52950fd1e3fba 29-Apr-2015 Fredrik Höglund <fredrik@kde.org> mesa: Make GL_TEXTURE_CUBE_MAP valid in FramebufferTextureLayer

Signed-off-by: Fredrik Höglund <fredrik@kde.org>
Reviewed-by: Adam Jackson <ajax@redhat.com>
/external/mesa3d/src/mesa/main/fbobject.c
9f1db78a83feebefb9e1ef889b3b6b0532482c14 06-Feb-2015 Laura Ekstrand <laura@jlekstrand.net> main: Add stubs for [Get]NamedFramebufferParameteri[v].

The ARB_direct_state_access specification says (as of 2015.02.05):
"Interactions with OpenGL 4.3 or ARB_framebuffer_no_attachments

If neither OpenGL 4.3 nor ARB_framebuffer_no_attachments are supported,
ignore the support for NamedFramebufferParameteri and
GetNamedFramebufferParameteriv."

This commit adds stubs for these entry points.

Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Signed-off-by: Fredrik Höglund <fredrik@kde.org>
/external/mesa3d/src/mesa/main/fbobject.c
d890fc710f6d3472ea3837e074fafc100d41e01f 04-Feb-2015 Laura Ekstrand <laura@jlekstrand.net> main: Add entry points for InvalidateNamedFramebuffer[Sub]Data.

Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Signed-off-by: Fredrik Höglund <fredrik@kde.org>
/external/mesa3d/src/mesa/main/fbobject.c
65d4a20f1c1923498220637f9474d2ae399df52d 04-Feb-2015 Laura Ekstrand <laura@jlekstrand.net> main: Refactor invalidate_framebuffer_storage.

Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Signed-off-by: Fredrik Höglund <fredrik@kde.org>
/external/mesa3d/src/mesa/main/fbobject.c
b4368ac09db75cea412121ada6c12af1414feb50 04-Feb-2015 Laura Ekstrand <laura@jlekstrand.net> main: Complete error conditions for glInvalidate*Framebuffer.

Signed-off-by: Fredrik Höglund <fredrik@kde.org>
Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Cc: "10.4 10.5" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/mesa/main/fbobject.c
f22fa307de780723e182d62a03c2c4c4f8a937f7 30-Jan-2015 Laura Ekstrand <laura@jlekstrand.net> main: Add entry point GetNamedFramebufferAttachmentParameteriv.

[Fredrik: - Update one of the error messages to reflect that the
framebuffer might not be the bound framebuffer.
- Whitespace fixes.]

Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Signed-off-by: Fredrik Höglund <fredrik@kde.org>
/external/mesa3d/src/mesa/main/fbobject.c
f93f95928d39b13e6c263b480b3e4bfdfa218df8 29-Jan-2015 Laura Ekstrand <laura@jlekstrand.net> main: Add entry point for CheckNamedFramebufferStatus.

[Fredrik: - Retain the debugging code in CheckFramebufferStatus.
- Whitespace fixes.]

Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Signed-off-by: Fredrik Höglund <fredrik@kde.org>
/external/mesa3d/src/mesa/main/fbobject.c
80e9bf2641d3bc2504fc12977c3e6a1ab7a3f49f 03-Mar-2015 Laura Ekstrand <laura@jlekstrand.net> main: Fix indents in former get_texture_for_framebuffer functions.

Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Signed-off-by: Fredrik Höglund <fredrik@kde.org>
/external/mesa3d/src/mesa/main/fbobject.c
085c67dc77ab3c00d3f68ba52f8343f8ff0cab53 03-Mar-2015 Laura Ekstrand <laura@jlekstrand.net> main: Major refactor of get_texture_for_framebuffer.

This splits off the (still) rather large chunk that is
get_texture_for_framebuffer into lots of smaller functions specialized to
service the wide variety of unique needs of *FramebufferTexture* entry points.
The result is much cleaner because, rather than having a pile of branches and
confusing conditions (like the boolean layered), the uniqueness is baked into
the entry points. The entry points know whether or not they are layered or use
a textarget.

[Fredrik: - Mention the value of <textarget> in the error message.
- Rename check_zoffset to check_layer, and zoffset to layer.
The zoffset parameter was renamed to layer in
ARB_framebuffer_object.
- Make layered a GLboolean since the value is visible to the API.
- Remove EXT suffixes in refactored code.
- Whitespace fixes.]

Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Signed-off-by: Fredrik Höglund <fredrik@kde.org>
/external/mesa3d/src/mesa/main/fbobject.c
d78c831a147e8af6f6fc1a610f4c2e490e75fad1 28-Jan-2015 Laura Ekstrand <laura@jlekstrand.net> main: Add entry points for glNamedFramebufferTexture[Layer].

Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Signed-off-by: Fredrik Höglund <fredrik@kde.org>
/external/mesa3d/src/mesa/main/fbobject.c
a602b21f94ded038f9781cc02ab46cdaab868f14 02-Mar-2015 Laura Ekstrand <laura@jlekstrand.net> main: Fix indentation in get_texture_for_framebuffer.

Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Signed-off-by: Fredrik Höglund <fredrik@kde.org>
/external/mesa3d/src/mesa/main/fbobject.c
a9f73f7f42081594d0ba9ff6cb7a0a743c3cad93 02-Mar-2015 Laura Ekstrand <laura@jlekstrand.net> main: Refactor get_texture_for_framebuffer.

This moves a few blocks around so that the control flow is more obvious. If
the texture is 0, just return true at the beginning of the function.
Likewise, if the texObj is NULL, return true at the beginning of the function
as well.

[Fredrik: Fix the texObj NULL check]

Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Signed-off-by: Fredrik Höglund <fredrik@kde.org>
/external/mesa3d/src/mesa/main/fbobject.c
a245e3bdeb1cf38b56df4f208a7e20d0f0de6045 28-Jan-2015 Laura Ekstrand <laura@jlekstrand.net> main: Split framebuffer_texture.

Split apart utility function framebuffer_texture to better prepare for
implementing NamedFramebufferTexture and NamedFramebufferTextureLayer. This
should also pave the way for some future cleanup work.

[Fredrik: - Mention which limit was exceeded when <layer> is out of range.
- Update a comment to reflect that <fb> might not be the bound
framebuffer.
- Make it clear that the error message in glFramebufferTexture*D
refers to the <textarget> parameter.
- Remove EXT suffixes.]

Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Signed-off-by: Fredrik Höglund <fredrik@kde.org>
/external/mesa3d/src/mesa/main/fbobject.c
69bdc9dcb8e5d3648e8d96029d5988b8971de8dc 20-Apr-2015 Laura Ekstrand <laura@jlekstrand.net> main: Fix an error generated by FramebufferTexture

gl*FramebufferTexture should generate GL_INVALID_VALUE when the
texture doesn't exist.

[Fredrik: Split this change out from the next commit]

Signed-off-by: Fredrik Höglund <fredrik@kde.org>
Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Cc: "10.4 10.5" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/mesa/main/fbobject.c
8ba7ad8abc7d71131e17970203c991ccb1befbe6 09-May-2015 Fredrik Höglund <fredrik@kde.org> mesa: Generate GL_INVALID_VALUE in framebuffer_texture when layer < 0

Signed-off-by: Fredrik Höglund <fredrik@kde.org>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Cc: "10.4 10.5" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/mesa/main/fbobject.c
f9f5c822845698482d0d81eaa64bc13c2fd8852a 07-May-2015 Fredrik Höglund <fredrik@kde.org> main: Require that the texture exists in framebuffer_texture

Generate GL_INVALID_OPERATION if the texture hasn't been created.

Signed-off-by: Fredrik Höglund <fredrik@kde.org>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Cc: "10.4 10.5" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/mesa/main/fbobject.c
8f78c6889d508d40c82229ea3fa09a78b4ea2e17 27-Jan-2015 Laura Ekstrand <laura@jlekstrand.net> main: Fix the indentation in framebuffer_texture

Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Signed-off-by: Fredrik Höglund <fredrik@kde.org>
/external/mesa3d/src/mesa/main/fbobject.c
a29318bf0a0385fa4fdedbdc3fb6e1f6f0d87884 28-Feb-2015 Laura Ekstrand <laura@jlekstrand.net> main: Add entry point for NamedFramebufferRenderbuffer.

[Fredrik: - Remove the DummyRenderbuffer checks now that they are
done in _mesa_lookup_renderbuffer_err.
- Fix the <renderbuffertarget> name in error messages.
- Make the error message in _mesa_framebuffer_renderbuffer
reflect that <fb> might not be the bound framebuffer.
- Remove EXT suffixes from GL tokens.]

Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Signed-off-by: Fredrik Höglund <fredrik@kde.org>
/external/mesa3d/src/mesa/main/fbobject.c
3d100372f15c377bb1cff3d23621f1f5958f4c53 28-Feb-2015 Laura Ekstrand <laura@jlekstrand.net> main: Rename framebuffer renderbuffer software fallback.

Rename _mesa_framebuffer_renderbuffer to _mesa_FramebufferRenderbuffer_sw in
preparation for adding the ARB_direct_state_access backend function for
FramebufferRenderbuffer and NamedFramebufferRenderbuffer to share.

Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Signed-off-by: Fredrik Höglund <fredrik@kde.org>
/external/mesa3d/src/mesa/main/fbobject.c
2bb138e7ec24b9e56715a53f9c4e911b99d4a97b 24-Jan-2015 Laura Ekstrand <laura@jlekstrand.net> main: Add utility function _mesa_lookup_renderbuffer_err.

[Fredrik: Generate an error for non-existent renderbuffers]

Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Signed-off-by: Fredrik Höglund <fredrik@kde.org>
/external/mesa3d/src/mesa/main/fbobject.c
f868de7d6b1370105414eb3d83b4b38b598bff66 23-Jan-2015 Laura Ekstrand <laura@jlekstrand.net> main: Add glCreateFramebuffers.

[Fredrik: Whitespace fixes]

Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Signed-off-by: Fredrik Höglund <fredrik@kde.org>
/external/mesa3d/src/mesa/main/fbobject.c
6d8eff4af7816d675f8ee91f99106fa118cda424 22-Jan-2015 Laura Ekstrand <laura@jlekstrand.net> main: Add utility function _mesa_lookup_framebuffer_err.

[Fredrik: Generate an error for non-existent framebuffers]

Reviewed-by: Fredrik Höglund <fredrik@kde.org>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
Signed-off-by: Fredrik Höglund <fredrik@kde.org>
/external/mesa3d/src/mesa/main/fbobject.c
782e71cc078308dddd5d6f9505bff0cb8e67f455 05-Apr-2015 Dave Airlie <airlied@gmail.com> mesa: finish implementing ARB_texture_stencil8 (v5)

Parts of this were implemented previously, so finish it off.

v2: fix getteximage falling into the integer check
add fixes for the FBO paths, (fbo-stencil8 test).

v3: fix getteximage path harder.
v4: remove swapbytes from getteximage path (Ilia)
v5: brown paper bag the swapbytes removal. (Ilia)

Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/mesa/main/fbobject.c
59af7ed28cd1b44b525a7d6a324c4e00092104b6 30-Mar-2015 Martin Peres <martin.peres@linux.intel.com> mesa/fbo: lock ctx->Shared->Mutex when allocating renderbuffers

This mutex is used to make sure the shared context does not change
while some shared code is looking into it.

Calling BindRenderbufferEXT BindRenderbuffer with a gles context
would not take the mutex before allocating an entry. Commit a34669b
then moved out the allocation out of bind_renderbuffer into
allocate_renderbuffer before using it for the CreateRenderBuffer
entry point. This thus also made this entry point unsafe.

The issue has been hinted by Ilia Mirkin.

Reviewed-by: Brian Paul <brianp@vmware.com>
Signed-off-by: Martin Peres <martin.peres@linux.intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
fa3832155100850da8346faa64c3cb30c4e86e39 25-Mar-2015 Martin Peres <martin.peres@linux.intel.com> mesa/fbo: do not assign a value that is never read later on

The issue has been detected by coverty.

v2:
- move the declaration of obj to the else clause (Brian Paul)

v3: Review by Brian Paul
- get rid of the obj declaration in favor of a direct reference

Reviewed-by: Brian Paul <brianp@vmware.com>
Signed-off-by: Martin Peres <martin.peres@linux.intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
bf11c195a59a3d545d91917f503dcee81d48ab09 13-Feb-2015 Martin Peres <martin.peres@linux.intel.com> main: Added entry points for NamedRenderbufferStorage/Multisample

v2: Review from Laura Ekstrand
- get rid of a change that should not have happened in this patch
- improve the error messages
- fix alignments
- fix a capitalization in a function name in an error message

v3: Review from Laura Ekstrand
- move the test for the validity of the renderbuffer to less generic
functions
- get rid of some changes that accidentally landed in the wrong commit
- revert some alignment fixes

v3: Review from Laura Ekstrand
- check that the lookup returns a valid renderbuffer
- cosmetic changes to some error messages

Reviewed-by: Laura Ekstrand <laura@jlekstrand.net>
Signed-off-by: Martin Peres <martin.peres@linux.intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
245e5c4813eb30e32bd61a08ae32ee278b09d1cf 13-Feb-2015 Martin Peres <martin.peres@linux.intel.com> main: Added entry point for glGetNamedRenderbufferParameteriv

v2:
- improve an error message

v3:
- move a test to less generic functions
- fix an alignment

v4:
- take the caller as a parameter instead of bool dsa
- check that the lookup returns a valid renderbuffer

Reviewed-by: Laura Ekstrand <laura@jlekstrand.net>
Signed-off-by: Martin Peres <martin.peres@linux.intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
a34669b96166ffe839168bc8effc60aba9aa4178 12-Feb-2015 Martin Peres <martin.peres@linux.intel.com> main: Added entry point for glCreateRenderbuffers

v2:
- refactor bindRenderBuffer and create_render_buffers to fix an assertion

Reviewed-by: Laura Ekstrand <laura@jlekstrand.net>
Signed-off-by: Martin Peres <martin.peres@linux.intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
7bd8b48084971b1e0d852136e5436776e8ffb044 12-Feb-2015 Martin Peres <martin.peres@linux.intel.com> main: replace tabs by 8 spaces in fbobject.c

Reviewed-by: Laura Ekstrand <laura@jlekstrand.net>
Signed-off-by: Martin Peres <martin.peres@linux.intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
bfcdb843830bba0190e00e35e3c5c18c4bdb5de1 21-Feb-2015 Matt Turner <mattst88@gmail.com> mesa: Use assert() instead of ASSERT wrapper.

Acked-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/main/fbobject.c
e333035c47a6a4cc88f0f9ca2bced500538bebae 12-Feb-2015 Tapani Pälli <tapani.palli@intel.com> mesa: fix OES_texture_float texture render target behavior

Current implementation allowed usage of unsized type texture GL_FLOAT
and GL_HALF_FLOAT as a render target as this was 'expected behavior' by
WEBGL_oes_texture_float and is also allowed by the oes-texture-float
WebGL test. However this broke some ES3 conformance tests that do not
accept such behavior. Patch sets such an fbo incomplete as expected by
the ES3 conformance tests. Textures with sized types like RGBA32F will
still continue to work as render targets.

v2: code style cleanups (Ian Romanick, Matt Turner)

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=88905
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Cc: "10.5" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/mesa/main/fbobject.c
1581e12aba3712fe4884586c7be6087b0a4a0041 08-Feb-2015 James Legg <lankyleggy@gmail.com> mesa: Make renderbuffer FBO attachments not layered

For framebuffer completeness checks, consider renderbuffers as not
layered. Previously, they would have counted as layered if a layered
textured had previously been bound to the same attachment point. This
could cause framebuffer completeness checks to incorrectly fail with
GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS, even if no layered attachments
were present.

Reviewed-by: Chris Forbes <chrisf@ijw.co.nz>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89026
/external/mesa3d/src/mesa/main/fbobject.c
284bd1ecdf3af2d1679baf588b3227cd34e3f15c 16-Jan-2015 Samuel Iglesias Gonsalvez <siglesias@igalia.com> mesa: fix error value in GetFramebufferAttachmentParameteriv for OpenGL ES 3.0

Section 6.1.13 "Framebuffer Object Queries" of OpenGL ES 3.0 spec:

"If the default framebuffer is bound to target, then attachment must be
BACK, identifying the color buffer; DEPTH, identifying the depth buffer; or
STENCIL, identifying the stencil buffer."

OpenGL ES 3.0, section 2.5 (GL Errors):

"If a command that requires an enumerated value is passed a
symbolic constant that is not one of those specified as allowable
for that command, an INVALID_ENUM error is generated."

Then change the returned error to INVALID_ENUM.

Fixes:

dEQP-GLES3.functional.fbo.api.attachment_query_default_fbo

Signed-off-by: Samuel Iglesias Gonsalvez <siglesias@igalia.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
3cb10cce371cb62e0c4a988ab939bf640b75ebab 15-Jan-2015 Jan Vesely <jan.vesely@rutgers.edu> mesa: Fix some signed-unsigned comparison warnings

v2: s/unsigned int/unsigned/ in prog_optimize.c

Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
Reviewed-by: David Heidelberg <david@ixit.cz>
Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
90d2a8519307effd4081baadf16067073f2aae49 12-Jan-2015 Mike Mason <michael.w.mason@intel.com> mesa: Enable GL_RGB/GL_RGBA in GLES3 glGetInternalformativ

Removes commit 7894278 changes and moves fix to _mesa_GetInternalformativ().
The original commit enabled the GL_RGB and GL_RGBA unsized internal formats
as valid for render buffers in GLES3, but this is incorrect. They should
have only been enabled for GetInternalformativ()

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=88079
Reviewed-by: Chad Versace <chad.versace@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
/external/mesa3d/src/mesa/main/fbobject.c
b6819cd55491c4b5ad6353102e7596a572152314 15-Dec-2014 Iago Toral Quiroga <itoral@igalia.com> mesa: Fix error reporting for some cases of incomplete FBO attachments

According to the OpenGL and OpenGL ES specs (sections
"FRAMEBUFFER COMPLETENESS" and "Whole Framebuffer Completeness"),
the image for color, depth or stencil attachments must be renderable,
otherwise the attachment is considered incomplete and we should report
GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT. Currently, we detect this
situation properly but report a different error.

This fixes the following 3 piglit tests:
dEQP-GLES3.functional.fbo.completeness.renderable.texture.color0.rgb_unsigned_int_2_10_10_10_rev
dEQP-GLES3.functional.fbo.completeness.renderable.texture.color0.rgba_unsigned_int_2_10_10_10_rev
dEQP-GLES3.functional.fbo.completeness.renderable.texture.color0.rgb16f

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
2012f62d4abb6633b5329235194d23692f86b17b 11-Dec-2014 Eduardo Lima Mitev <elima@igalia.com> mesa: Returns a GL_INVALID_VALUE error if num of fbos in glDeleteRenderbuffers is negative

Per GLES3 manual for glDeleteRenderbuffers
<https://www.khronos.org/opengles/sdk/docs/man3/html/glDeleteRenderbuffers.xhtml>,
GL_INVALID_VALUE is generated if n is negative.

Fixes 1 dEQP test:
* dEQP-GLES3.functional.negative_api.buffer.delete_renderbuffers

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
f77a473497dad587afb97ea4fda8c13495f5fe69 11-Dec-2014 Eduardo Lima Mitev <elima@igalia.com> mesa: Returns a GL_INVALID_VALUE error if num of fbos in glDeleteFramebuffers is negative

Per GLES3 manual for glDeleteFramebuffers
<https://www.khronos.org/opengles/sdk/docs/man3/html/glDeleteFramebuffers.xhtml>,
GL_INVALID_VALUE is generated if n is negative.

Fixes 1 dEQP test:
* dEQP-GLES3.functional.negative_api.buffer.delete_framebuffers

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
8e49a3e028b9526d2ab7662a9f6683a72b6b6787 11-Dec-2014 Samuel Iglesias Gonsalvez <siglesias@igalia.com> main: fix return GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL value

Return the proper value for two-dimensional array texture and three-dimensional
textures.

From OpenGL ES 3.0 spec, chapter 6.1.13 "Framebuffer Object Queries",
page 234:

"If pname is FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER and the texture
object named FRAMEBUFFER_ATTACHMENT_OBJECT_NAME is a layer of a
three-dimensional texture or a two-dimensional array texture, then params
will contain the number of the texture layer which contains the attached im-
age. Otherwise params will contain the value zero."

Furthermore, FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER is an alias of
FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT.

This patch fixes dEQP test:

dEQP-GLES3.functional.state_query.fbo.framebuffer_attachment_texture_layer

Signed-off-by: Samuel Iglesias Gonsalvez <siglesias@igalia.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
d42e09038628c47a060008ecfe54e51344a2bd5a 12-Dec-2014 Iago Toral Quiroga <itoral@igalia.com> mesa: Depth and stencil attachments must be the same in OpenGL ES3

"9.4. FRAMEBUFFER COMPLETENESS
...
Depth and stencil attachments, if present, are the same image."

Notice that this restriction is not included in the OpenGL ES2 spec.

Fixes 18 dEQP tests in:
dEQP-GLES3.functional.fbo.completeness.attachment_combinations.*

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
f262ed6e3dd9d447355ea2490e84c0a6b0fd1ddb 03-Jan-2015 Brian Paul <brianp@vmware.com> mesa: remove unused ctx parameter for _mesa_select_tex_image()

Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/main/fbobject.c
78942787170615c9333810cf3a4819a13c9eb8e8 20-Nov-2014 Eduardo Lima Mitev <elima@igalia.com> mesa: Enables GL_RGB and GL_RGBA unsized internal formats for OpenGL ES 3.0

GL_RGB and GL_RGBA are valid internal formats on a GLES3 profile. See
"Table 1. Unsized Internal Formats" at
https://www.khronos.org/opengles/sdk/docs/man3/html/glTexImage2D.xhtml.

Fixes 2 dEQP tests:
- dEQP-GLES3.functional.state_query.internal_format.rgb_samples
- dEQP-GLES3.functional.state_query.internal_format.rgba_samples

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
242ad326552b10a31667eba0be5677a4d8397dc4 18-Nov-2014 Eduardo Lima Mitev <elima@igalia.com> mesa: Considers GL_DEPTH_STENCIL_ATTACHMENT a valid argument for FBO invalidation under GLES3

In OpenGL and OpenGL-ES 3+, GL_DEPTH_STENCIL_ATTACHMENT is a valid attachment point for the family of functions
that invalidate a framebuffer object (e.g, glInvalidateFramebuffer, glInvalidateSubFramebuffer, etc).
Currently, a GL_INVALID_ENUM error is emitted for this attachment point.

Fixes 21 dEQP test failures under 'dEQP-GLES3.functional.fbo.invalidate.*'.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
5b1e51bfbe6f8b2fa51065bc6e5706c337211d3c 14-Nov-2014 Matt Turner <mattst88@gmail.com> mesa: Add a source parameter to _mesa_gl_debug.

Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
f5e8b30472795edc664863be33be70060c3d78c4 24-Sep-2014 Brian Paul <brianp@vmware.com> mesa: remove EXT suffix from FBO error messages

And use pass caller="" for _mesa_FramebufferTexture().

Reviewed-by: Matt Turner <mattst88@gmail.com>
/external/mesa3d/src/mesa/main/fbobject.c
846c715abb17e13a5d39c565d0995404b6178d98 23-May-2014 James Legg <jlegg@feralinteractive.com> mesa: Fix unbinding GL_DEPTH_STENCIL_ATTACHMENT

glFramebufferRender(..., GL_DEPTH_STENCIL_ATTACHMENT, ..., 0) only
detached the depth buffer and not the stencil buffer.

Bugzilla: http://bugs.freedesktop.org/show_bug.cgi?id=79115
Reviewed-by: Brian Paul <brianp@vmware.com>
Cc: "10.1 10.2" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/mesa/main/fbobject.c
5c399ca8e4ccae509a5116b3b9f41634a7ca4322 07-May-2014 Kenneth Graunke <kenneth@whitecape.org> mesa: Fix MaxNumLayers for 1D array textures.

1D array targets store the number of slices in the Height field.

Cc: "10.2 10.1 10.0" <mesa-stable@lists.freedesktop.org>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
e959274081e88da7ccbe9ae9165127e7c9a0ae66 21-Apr-2014 Brian Paul <brianp@vmware.com> mesa: move declaration before code

To fix MSVC build.
/external/mesa3d/src/mesa/main/fbobject.c
bd1880dfe8fe1eea12eeb573df34ef328b96013e 12-Mar-2014 Anuj Phogat <anuj.phogat@gmail.com> mesa: Add an error condition in glGetFramebufferAttachmentParameteriv()

From the OpenGL 4.4 spec page 275:
"If pname is FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE, param will
contain the format of components of the specified attachment,
one of FLOAT, INT, UNSIGNED_INT, SIGNED_NORMALIZED, or
UNSIGNED_NORMALIZED for floating-point, signed integer,
unsigned integer, signed normalized fixedpoint, or unsigned
normalized fixed-point components respectively. If no data
storage or texture image has been specified for the attachment,
param will contain NONE. This query cannot be performed for a
combined depth+stencil attachment, since it does not have a
single format."

Fixes Khronos CTS test: packed_depth_stencil_parameters.test

Khronos Bug# 9170
Cc: <mesa-stable@lists.freedesktop.org>
Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
9927180714662456ff7b895221f67112f2567a53 03-Apr-2014 Samuel Iglesias Gonsalvez <siglesias@igalia.com> mesa: fix check for dummy renderbuffer in _mesa_FramebufferRenderbufferEXT()

According to the spec:
<renderbuffertarget> must be RENDERBUFFER and <renderbuffer>
should be set to the name of the renderbuffer object to be
attached to the framebuffer. <renderbuffer> must be either
zero or the name of an existing renderbuffer object of type
<renderbuffertarget>, otherwise an INVALID_OPERATION error is
generated.

This patch changes the previous returned GL_INVALID_VALUE to
GL_INVALID_OPERATION.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76894

Cc: mesa-stable@lists.freedesktop.org
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Signed-off-by: Samuel Iglesias Gonsalvez <siglesias@igalia.com>
/external/mesa3d/src/mesa/main/fbobject.c
c1377ed464323a02497e2faf9a5479180e1fa3bc 22-Mar-2014 Brian Paul <brianp@vmware.com> mesa: fix indentation, formatting, etc in fbobject.c
/external/mesa3d/src/mesa/main/fbobject.c
7ccb26fdecd520f91ff1197b685b8f4f63130e58 03-Mar-2014 Eric Anholt <eric@anholt.net> mesa: Stop skipping the FinishRenderTexture calls for winsys FBOs.

Now that BindRenderbufferTexImage() is a thing that drivers can do, winsys
FBOs *can* have NeedsFinishRenderTexture set.

v2: Keep the short-circuit for non-BindRenderbufferTexImage() drivers
(review by Ken).

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
a419a1c5654ac4a4a46ec3a80d75926e26919c99 23-Mar-2014 Chris Forbes <chrisf@ijw.co.nz> mesa: Generate FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT earlier

The ARB_framebuffer_object spec lists this case before the
FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER and
FRAMEBUFFER_INCOMPLETE_READ_BUFFER cases.

Fixes two broken cases in piglit's fbo-incomplete test, if
ARB_ES2_compatibility is not advertised. (If it is, this is masked
because the FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER /
FRAMEBUFFER_INCOMPLETE_READ_BUFFER cases are removed by that extension)

Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
2e361160ffff036fa65f6ca8ee2490b3b193ff3d 09-Mar-2014 Marek Olšák <marek.olsak@amd.com> mesa: mark GL_RGB9_E5 as not color-renderable

The GL 4.4 spec says it's not color-renderable and not accepted
by RenderBufferStorage. The EXT_texture_shared_exponent spec says
it's not color-renderable but it's accepted by RenderBufferStorageEXT.
This seems to be a bug in the extension spec.

Let's do what GL 4.4 says.

Cc: mesa-stable@lists.freedesktop.org
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
d129ea7fa2e57288f64cd247a0ac6d876e1717d2 01-Mar-2014 Brian Paul <brianp@vmware.com> mesa: switch to c11 mutex functions

Reviewed-by: José Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
9451281aca86c9ee7cc5db6e964ef0414fb5a368 01-Feb-2014 Brian Paul <brianp@vmware.com> mesa: make several FBO functions static

The four functions in question weren't called from any other file.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
3abd4f4d90c5827f74509c1f507ed71aa7be9a15 01-Feb-2014 Brian Paul <brianp@vmware.com> mesa: move glGenerateMipmap() code into new genmipmap.c file

Mipmap generation has nothing to do with FBOs.
v2: update gl_genexec.py too (not api_exec.c)

Acked-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
bfcb9bb20451aa7c74d8769ae043fb11503e8453 01-Feb-2014 Brian Paul <brianp@vmware.com> mesa: move glBlitFramebuffer code into new blit.c file

Just for better organization.
v2: update gl_genexec.py too (not api_exec.c)

Acked-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
c55e3e6811413ce5c3aabfcf8dfcf5eb8a53499e 01-Feb-2014 Brian Paul <brianp@vmware.com> mesa: add some comments about mipmap generation

Trivial.
/external/mesa3d/src/mesa/main/fbobject.c
eeed49f5f290793870c60b5b635b977a732a1eb4 27-Jan-2014 Mark Mueller <MarkKMueller@gmail.com> mesa: Change many Type P MESA_FORMATs to meet naming spec

Conversion of Type P formats as follows (w/related comment fixes):
s/MESA_FORMAT_RGB565\b/MESA_FORMAT_B5G6R5_UNORM/g
s/MESA_FORMAT_RGB565_REV\b/MESA_FORMAT_R5G6B5_UNORM/g
s/MESA_FORMAT_ARGB4444\b/MESA_FORMAT_B4G4R4A4_UNORM/g
s/MESA_FORMAT_ARGB4444_REV\b/MESA_FORMAT_A4R4G4B4_UNORM/g
s/MESA_FORMAT_RGBA5551\b/MESA_FORMAT_A1B5G5R5_UNORM/g
s/MESA_FORMAT_XBGR8888_SNORM\b/MESA_FORMAT_R8G8B8X8_SNORM/g
s/MESA_FORMAT_XBGR8888_SRGB\b/MESA_FORMAT_R8G8B8X8_SRGB/g
s/MESA_FORMAT_ARGB1555\b/MESA_FORMAT_B5G5R5A1_UNORM/g
s/MESA_FORMAT_ARGB1555_REV\b/MESA_FORMAT_A1R5G5B5_UNORM/g
s/MESA_FORMAT_AL44\b/MESA_FORMAT_L4A4_UNORM/g
s/MESA_FORMAT_RGB332\b/MESA_FORMAT_B2G3R3_UNORM/g
s/MESA_FORMAT_ARGB2101010\b/MESA_FORMAT_B10G10R10A2_UNORM/g
s/MESA_FORMAT_Z24_S8\b/MESA_FORMAT_S8_UINT_Z24_UNORM/g
s/MESA_FORMAT_S8_Z24\b/MESA_FORMAT_Z24_UNORM_S8_UINT/g
s/MESA_FORMAT_X8_Z24\b/MESA_FORMAT_Z24_UNORM_X8_UINT/g
s/MESA_FORMAT_Z24_X8\b/MESA_FORMAT_X8Z24_UNORM/g
s/MESA_FORMAT_RGB9_E5_FLOAT\b/MESA_FORMAT_R9G9B9E5_FLOAT/g
s/MESA_FORMAT_R11_G11_B10_FLOAT\b/MESA_FORMAT_R11G11B10_FLOAT/g
s/MESA_FORMAT_Z32_FLOAT_X24S8\b/MESA_FORMAT_Z32_FLOAT_S8X24_UINT/g
s/MESA_FORMAT_ABGR2101010_UINT\b/MESA_FORMAT_R10G10B10A2_UINT/g
s/MESA_FORMAT_XRGB4444_UNORM\b/MESA_FORMAT_B4G4R4X4_UNORM/g
s/MESA_FORMAT_XRGB1555_UNORM\b/MESA_FORMAT_B5G5R5X1_UNORM/g
s/MESA_FORMAT_XRGB2101010_UNORM\b/MESA_FORMAT_B10G10R10X2_UNORM/g
s/MESA_FORMAT_AL88\b/MESA_FORMAT_L8A8_UNORM/g
s/MESA_FORMAT_AL88_REV\b/MESA_FORMAT_A8L8_UNORM/g
s/MESA_FORMAT_AL1616\b/MESA_FORMAT_L16A16_UNORM/g
s/MESA_FORMAT_AL1616_REV\b/MESA_FORMAT_A16L16_UNORM/g
s/MESA_FORMAT_RG88\b/MESA_FORMAT_G8R8_UNORM/g
s/MESA_FORMAT_GR88\b/MESA_FORMAT_R8G8_UNORM/g
s/MESA_FORMAT_GR1616\b/MESA_FORMAT_R16G16_UNORM/g
s/MESA_FORMAT_RG1616\b/MESA_FORMAT_G16R16_UNORM/g
s/MESA_FORMAT_SRGBA8\b/MESA_FORMAT_A8B8G8R8_SRGB/g
s/MESA_FORMAT_SARGB8\b/MESA_FORMAT_B8G8R8A8_SRGB/g
s/MESA_FORMAT_SLA8\b/MESA_FORMAT_L8A8_SRGB/g

Conflicts:
src/mesa/drivers/dri/i965/brw_surface_formats.c
src/mesa/main/format_pack.c
src/mesa/main/format_unpack.c
src/mesa/main/formats.c
src/mesa/main/texformat.c
src/mesa/main/texstore.c
/external/mesa3d/src/mesa/main/fbobject.c
50a01d2acafb2a937e62b24258e2e777c0cd1489 21-Jan-2014 Mark Mueller <MarkKMueller@gmail.com> mesa: Change many Type A MESA_FORMATs to meet naming standard

Update comments. Conversion of the following Type A formats:
s/MESA_FORMAT_RGB888\b/MESA_FORMAT_BGR_UNORM8/g
s/MESA_FORMAT_BGR888\b/MESA_FORMAT_RGB_UNORM8/g
s/MESA_FORMAT_A8\b/MESA_FORMAT_A_UNORM8/g
s/MESA_FORMAT_A16\b/MESA_FORMAT_A_UNORM16/g
s/MESA_FORMAT_L8\b/MESA_FORMAT_L_UNORM8/g
s/MESA_FORMAT_L16\b/MESA_FORMAT_L_UNORM16/g
s/MESA_FORMAT_I8\b/MESA_FORMAT_I_UNORM8/g
s/MESA_FORMAT_I16\b/MESA_FORMAT_I_UNORM16/g
s/MESA_FORMAT_R8\b/MESA_FORMAT_R_UNORM8/g
s/MESA_FORMAT_R16\b/MESA_FORMAT_R_UNORM16/g
s/MESA_FORMAT_Z16\b/MESA_FORMAT_Z_UNORM16/g
s/MESA_FORMAT_Z32\b/MESA_FORMAT_Z_UNORM32/g
s/MESA_FORMAT_S8\b/MESA_FORMAT_S_UINT8/g
s/MESA_FORMAT_SRGB8\b/MESA_FORMAT_BGR_SRGB8/g
s/MESA_FORMAT_RGBA_16\b/MESA_FORMAT_RGBA_UNORM16/g
s/MESA_FORMAT_SL8\b/MESA_FORMAT_L_SRGB8/g
s/MESA_FORMAT_Z32_FLOAT\b/MESA_FORMAT_Z_FLOAT32/g
s/MESA_FORMAT_XBGR16161616_UNORM\b/MESA_FORMAT_RGBX_UNORM16/g
s/MESA_FORMAT_XBGR16161616_SNORM\b/MESA_FORMAT_RGBX_SNORM16/g
s/MESA_FORMAT_XBGR16161616_FLOAT\b/MESA_FORMAT_RGBX_FLOAT16/g
s/MESA_FORMAT_XBGR16161616_UINT\b/MESA_FORMAT_RGBX_UINT16/g
s/MESA_FORMAT_XBGR16161616_SINT\b/MESA_FORMAT_RGBX_SINT16/g
s/MESA_FORMAT_XBGR32323232_FLOAT\b/MESA_FORMAT_RGBX_FLOAT32/g
s/MESA_FORMAT_XBGR32323232_UINT\b/MESA_FORMAT_RGBX_UINT32/g
s/MESA_FORMAT_XBGR32323232_SINT\b/MESA_FORMAT_RGBX_SINT32/g
s/MESA_FORMAT_XBGR8888_UINT\b/MESA_FORMAT_RGBX_UINT8/g
s/MESA_FORMAT_XBGR8888_SINT\b/MESA_FORMAT_RGBX_SINT8/g
/external/mesa3d/src/mesa/main/fbobject.c
71fe9437169cfdafda8814aa814bb85429fb6cfc 04-Jan-2014 Mark Mueller <MarkKMueller@gmail.com> mesa: change gl_format to mesa_format

s/\bgl_format\b/mesa_format/g. Use better name for Mesa Formats enum
/external/mesa3d/src/mesa/main/fbobject.c
764be9f9e8b20fffa7b8a35dbdf65fe2a6b4e20c 13-Nov-2013 Ian Romanick <ian.d.romanick@intel.com> mesa: Clean up bad code formatting left from previous commit

Also s/_EXT// on enums that are now part of core.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
a6729731af700d5a44525d583a83619b5e454084 13-Nov-2013 Ian Romanick <ian.d.romanick@intel.com> mesa: GL_EXT_framebuffer_blit is not optional

Every driver supports it. All current and future Gallium drivers always
support it, and all existing classic drivers support it.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
5306ee736ebcce0c1cf899589c2344acdedc2162 22-Jan-2014 Brian Paul <brianp@vmware.com> mesa: initialize "is_layered" variable to silence warning

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/mesa/main/fbobject.c
532b1fecd93fd30d3b1b101b55fd2c6e074088ad 07-Jan-2014 Paul Berry <stereotype441@gmail.com> i965: Fix clears of layered framebuffers with mismatched layer counts.

Previously, Mesa enforced the following rule (from
ARB_geometry_shader4's list of criteria for framebuffer completeness):

* If any framebuffer attachment is layered, all attachments must have
the same layer count. For three-dimensional textures, the layer count
is the depth of the attached volume. For cube map textures, the layer
count is always six. For one- and two-dimensional array textures, the
layer count is simply the number of layers in the array texture.
{ FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB }

However, when ARB_geometry_shader4 was adopted into GL 3.2, this rule
was dropped; GL 3.2 permits different attachments to have different
layer counts. This patch brings Mesa in line with GL 3.2.

In order to ensure that layered clears properly clear all layers, we
now have to keep track of the maximum number of layers in a layered
framebuffer.

Fixes the following piglit tests in spec/!OpenGL 3.2/layered-rendering:
- clear-color-all-types 1d_array mipmapped
- clear-color-all-types 1d_array single_level
- clear-color-mismatched-layer-count
- framebuffer-layer-count-mismatch

Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Chris Forbes <chrisf@ijw.co.nz>
/external/mesa3d/src/mesa/main/fbobject.c
28af1dc21772d0b7819dff6080484c67114dc0d1 20-Nov-2013 Paul Berry <stereotype441@gmail.com> main: check texture target when validating layered framebuffers.

From section 4.4.4 (Framebuffer Completeness) of the GL 3.2 spec:

If any framebuffer attachment is layered, all populated
attachments must be layered. Additionally, all populated color
attachments must be from textures of the same target.

We weren't checking that the attachments were from textures of the
same target.

Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Chris Forbes <chrisf@ijw.co.nz>
/external/mesa3d/src/mesa/main/fbobject.c
513a324b885689702f32d9ffa1432c4212d899ad 08-Jan-2014 Brian Paul <brianp@vmware.com> mesa: add missing SNORM formats in _mesa_base_fbo_format()

We weren't handling the LUMINANCE_SNORM, LUMINANCE_ALPHA_SNORM and
INTENSITY_SNORM cases. Note that adding these cases here does not
require a driver to support rendering to these surface types. If
the driver can't do it we'll report an incomplete framebuffer.

NVIDIA doesn't support GL_EXT_texture_snorm but their driver
accepts these formats in glRenderBufferStorage().

Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
49493224623d4a559337a5079532015f7db58e4a 13-Nov-2013 Ian Romanick <ian.d.romanick@intel.com> mesa: Clean up bad code formatting left from previous commit

Also s/_EXT// on enums that are now part of core.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
a92b9e60aba8cd1fc5d935abc9fd8f37cae89168 13-Nov-2013 Ian Romanick <ian.d.romanick@intel.com> mesa: GL_EXT_packed_depth_stencil is not optional

Every driver supports it. All current and future Gallium drivers always
support it, and all existing classic drivers support it.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
a3969aa125c8f61b093a5f5f69e8265a131051d0 20-Nov-2013 Marek Olšák <marek.olsak@amd.com> mesa: initialize gl_renderbuffer::Depth in core

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Tested-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
ec79c05cbfb7c68fbef7447e1744423c00f26654 20-Nov-2013 Paul Berry <stereotype441@gmail.com> mesa: Implement GL_FRAMEBUFFER_ATTACHMENT_LAYERED query.

From section 6.1.18 (Renderbuffer Object Queries) of the GL 3.2 spec,
under the heading "If the value of FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE
is TEXTURE, then":

If pname is FRAMEBUFFER_ATTACHMENT_LAYERED, then params will
contain TRUE if an entire level of a three-dimesional texture,
cube map texture, or one-or two-dimensional array texture is
attached. Otherwise, params will contain FALSE.

Fixes piglit tests:
- spec/!OpenGL 3.2/layered-rendering/framebuffer-layered-attachments
- spec/!OpenGL 3.2/layered-rendering/framebuffertexture-defaults

Cc: "10.0" <mesa-stable@lists.freedesktop.org>

Reviewed-by: Chris Forbes <chrisf@ijw.co.nz>

v2: Don't include "EXT" in the error message, since this query only
makes sensen in context versions that have adopted
glGetFramebufferAttachmentParameteriv().

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
af1471dc04cc89822bab2c253c808880dd47c25a 20-Nov-2013 Paul Berry <stereotype441@gmail.com> mesa: Fix texture target validation for glFramebufferTexture()

Previously we were using the code path for validating
glFramebufferTextureLayer(). But glFramebufferTexture() allows
additional texture types.

Fixes piglit tests:
- spec/!OpenGL 3.2/layered-rendering/gl-layer-cube-map
- spec/!OpenGL 3.2/layered-rendering/framebuffertexture

Cc: "10.0" <mesa-stable@lists.freedesktop.org>

Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Chris Forbes <chrisf@ijw.co.nz>

v2: Clarify comment above framebuffer_texture().

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
95140740ad1c6cd8a34002c307556f5c49a34589 20-Nov-2013 Paul Berry <stereotype441@gmail.com> mesa: Track number of layers in layered framebuffers.

In order to properly clear layered framebuffers, we need to know how
many layers they have. The easiest way to do this is to record it in
the gl_framebuffer struct when we check framebuffer completeness.

This patch replaces the gl_framebuffer::Layered boolean with a
gl_framebuffer::NumLayers integer, which is 0 if the framebuffer is
not layered, and equal to the number of layers otherwise.

v2: Remove gl_framebuffer::Layered and make gl_framebuffer::NumLayers
always have a defined value. Fix factor of 6 error in the number of
layers in a cube map array.

Cc: "10.0" <mesa-stable@lists.freedesktop.org>

Reviewed-by: Chris Forbes <chrisf@ijw.co.nz>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/main/fbobject.c
53904c64da308bc5b5fd98c105fb86ec38cc33a3 13-Oct-2013 Constantin Baranov <const@mimas.ru> mesa: Add missing switch break in invalidate_framebuffer_storage()

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=70411
Cc: "9.2" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
ef83bd2b9581c680439a5d22979c2f1b49b2834d 09-Aug-2013 Ian Romanick <ian.d.romanick@intel.com> mesa: Use _mesa_detach_renderbuffer when deleting a texture

The functional change is that now invalidate_framebuffer is called if
the texture is actually detached from one of the currently bound FBOs.
Previously this was only done for renderbuffers.

The remaining changes make the texture delete path look more similar to
the renderbuffer delete path. This includes adding relevant spec
quotations to justify the behavior.

Fixes piglit fbo-incomplete "delete texture of bound FBO" test.

v2: Move 'fb->Attachment[i].Texture == att' check from previous patch to
this patch... where it was intended to be in the first place. Noticed
by Chad.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Cc: "9.2" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/mesa/main/fbobject.c
438cc6bc49d109f9ddeed6a741c4f0b8f1c4ffe2 09-Aug-2013 Ian Romanick <ian.d.romanick@intel.com> mesa: Make detach_renderbuffer available outside fbobject.c

Also add a return value indicating whether any work was done.

This will be used by the next patch.

v2: Move 'fb->Attachment[i].Texture == att' check to the next
patch... where it was intended to be in the first place. Noticed by
Chad.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Cc: "9.2" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/mesa/main/fbobject.c
2f9fe2d80a35b8857682771fddbee628213da7b3 28-Jul-2013 Ian Romanick <ian.d.romanick@intel.com> mesa: Generate a renderbuffer wrapper even if the texture has no image

This prevents a segfault in check_begin_texture_render when an FBO is
rebound while in this state. This fixes the piglit test
fbo-incomplete-invalid-texture.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Acked-by: Kenneth Graunke <kenneth@whitecape.org>
Cc: "9.1 9.2" mesa-stable@lists.freedesktop.org
/external/mesa3d/src/mesa/main/fbobject.c
25281fef0f480260c2e180e70af3eafdd5ecc9cd 27-Jul-2013 Ian Romanick <ian.d.romanick@intel.com> mesa: Validate the layer selection of an array texture too

Previously only the slice of a 3D texture was validated in the FBO
completeness check. This fixes the failure in the 'invalid layer of an
array texture' subtest of piglit's fbo-incomplete test.

v2: 1D_ARRAY textures have Depth == 1. Instead, compare against Height.

v3: Handle CUBE_MAP_ARRAY textures too. Noticed by Marek.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Cc: "9.1 9.2" mesa-stable@lists.freedesktop.org
/external/mesa3d/src/mesa/main/fbobject.c
41485fea7c6061cca9d2706f39fa425da291b260 27-Jul-2013 Ian Romanick <ian.d.romanick@intel.com> mesa: Don't call driver RenderTexture for invalid zoffset

This fixes the segfault in the 'invalid slice of 3D texture' and
'invalid layer of an array texture' subtests of piglit's fbo-incomplete
test.

The 'invalid layer of an array texture' subtest still fails.

v2: Fix off-by-one comparison error noticed by Chris Forbes. Also,
1D_ARRAY textures have Depth == 1. Instead, compare against Height.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> [v1]
Cc: "9.1 9.2" mesa-stable@lists.freedesktop.org
/external/mesa3d/src/mesa/main/fbobject.c
fb49713f8ed099559d255403dc1065a06305e0d8 27-Jul-2013 Ian Romanick <ian.d.romanick@intel.com> mesa: Don't call driver RenderTexture for really broken textures

This fixes the segfault in the '0x0 texture' subtest of piglit's
fbo-incomplete test.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Cc: "9.1 9.2" mesa-stable@lists.freedesktop.org
/external/mesa3d/src/mesa/main/fbobject.c
0c3dbd689b3269c605ee07589a35af9147db5fe0 27-Jul-2013 Ian Romanick <ian.d.romanick@intel.com> mesa: Remove stray debug printfs in attachment completeness code

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Cc: "9.1 9.2" mesa-stable@lists.freedesktop.org
/external/mesa3d/src/mesa/main/fbobject.c
4a9522a5a0c11b6e162188337fd5938f9e2695fd 19-Jul-2013 Ian Romanick <ian.d.romanick@intel.com> mesa: Treat glBindFramebuffer and glBindFramebufferEXT more correctly

Allow user-generated names for glBindFramebufferEXT on desktop GL.
Disallow its use altogether for core profiles.

Names bound with glBindFramebuffer in desktop OpenGL are still
(incorrectly) shared across the share group instead of being
per-context. This gets us a bit closer to being strictly conformant.

v2: Disallow glBindFramebufferEXT in 3.1 by not installing it in the
dispatch table. Suggested by Jordan.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> [v1]
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> [v1]
Cc: mesa-stable@lists.freedesktop.org
/external/mesa3d/src/mesa/main/fbobject.c
97965e87fc0771a99c16b639caed01e5d0b64353 19-Jul-2013 Ian Romanick <ian.d.romanick@intel.com> mesa: Treat glBindRenderbuffer and glBindRenderbufferEXT correctly

Allow user-generated names for glBindRenderbufferEXT on desktop GL.
Disallow its use altogether for core profiles.

v2: Disallow glBindRenderbufferEXT in 3.1 by not installing it in the
dispatch table. Suggested by Jordan.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> [v1]
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> [v1]
Cc: mesa-stable@lists.freedesktop.org
/external/mesa3d/src/mesa/main/fbobject.c
b272a01879d6d5e952b37f574fa85ed7f785abc5 28-Jul-2013 Paul Berry <stereotype441@gmail.com> main: Allow for the possibility of GL 3.2 without ARB_geometry_shader4.

Previously, we assumed that the only way Mesa would expose geometry
shader support was via the ARB_geometry_shader4 extension. But this
extension has some extra complications over GL 3.2 (interactions with
compatibility-only features, and link-time initialization of the
constant gl_VerticesIn). So we want to allow for the possibility of
supporting GL 3.2 (with GLSL 1.50 style geometry shaders) even if
ctx->Extensions.ARB_geometry_shader4 is false.

This patch adds a new function, _mesa_has_geometry_shaders(), which
returns true if either ARB_geometry_shader4 is supported or the GL
version is at least 3.2 desktop. Since compute_version() only enables
GL 3.2 functionality when GLSL 1.50 support is present, a sufficient
way for a back-end to advertise geometry shader support is to set
ctx->Const.GLSLVersion >= 150.

v2: Remove unnecessary ctx->Const.GeometryShaders150 constant.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
8dd15e602113700c7ec25649ecce3f22aa687ea3 27-Jul-2013 Matt Turner <mattst88@gmail.com> mesa: Return GL_FRAMEBUFFER_UNDEFINED if the winsys fbo is incomplete.

Specified by ARB_framebuffer_object, GL 3.0, and ES 3.0.

Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
9f07ca11c1797ac12de1e1c6aef13cf58824b5f5 16-Jul-2013 Tomasz Lis <tomasz.lis@intel.com> mesa: Dispatch ARB_framebuffer_object and EXT_framebuffer_object differently

Almost all of the functions between the ARB and the EXT share the same
GLX protocol because the functionality is, essentially, identical.
However, there are some differences between the extensions:

- In the ARB extension, names must come from glGenBuffers.

- In the ARB extension, framebuffer objects are not shared (but they are
in the EXT).

For these reasons, glBindFramebuffer and glBindRenderbuffer have
different GLX protocol opcodes than their EXT counterparts. Currently
these functions alias each other in the dispatch table. This makes it
impossible to be truly spec conformant.

This patch enables fixing the conformance issue by splitting
glBindFramebuffer / glBindFramebufferEXT and glBindRenderbuffer /
glBindRenderbufferEXT into separate dispatch table entries.

Patches will be available shortly to:

- Fix the conformance issue.

- Stop advertising the EXT in OpenGL 3.1 (or core profiles).

HOWEVER, this does represent a compatibility break between the loader
(libGL or the Xserver GLX module) and the driver. Mesa drivers compiled
without this change will request a single dispatch table entry for
glBindFramebuffer and glBindFramebufferEXT. Since the updated loader
has different entries for each, the request will fail, and the driver
will die in a fire.

Drivers built with the change should continue to load fine on loaders
without the change. In this case, the driver will separately ask for
entries for glBindFramebuffer and glBindFramebufferEXT, and the loader
will tell it the same location. Since the loader in the server's GLX
module is not (yet) updated, this should not be a problem. We also do
not advertise the ARB extension from the server, so, again, this should
not be a problem for the server.

HOWEVER, this means that DRI1 drivers (remember mga_dri.so?) will no
longer load with libGL build hereafter. That means this patch will need
to be back ported to the 8.0 branch.

v2 (idr): Added missing GLX protocol opcodes for the EXT functions and
corrected the opcodes for the ARB functions. Updated GLX indirect_api
unit test and dispatch sanity unit test.

Signed-off-by: Tomasz Lis <tomasz.lis@intel.com>
Signed-off-by: Bartosz Zawistowski <bartosz.l.zawistowski@intel.com>
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> [v1]
/external/mesa3d/src/mesa/main/fbobject.c
b5305a303bd13f91a00f36f205b767d1bfef2ab5 28-Jun-2013 Ian Romanick <ian.d.romanick@intel.com> mesa: GL_EXT_framebuffer_object is not optional

Every driver left in Mesa enables this extension all the time. There's
no reason to let it be optional.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
3c21a7d3c9b626a10a38987d77b9e77d70bd67d7 06-Jun-2013 Eric Anholt <eric@anholt.net> mesa: Report core FBO incompleteness cases through GL_ARB_debug_output.

Just like we produce from inside the Intel driver, this can help provide
information quickly about FBO incompatibility problems (particularly when
using apitrace replay).

Currently, in driver-marked incompleteness cases, you'll get both the
driver message and the core message on Intel. Until the other drivers are
fixed to produce output, I think this is better than not putting in a
message for driver-marked incomplete.

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
3998cfa933dcd9134b75d9f0ae2c9cfcd6f2ee45 05-Jun-2013 Rico Schüller <kgbricola@web.de> mesa: remove outdated version lines in comments

Signed-off-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
40e3298125e820da7aaad05f3bf23534e6a773ff 19-Apr-2013 Anuj Phogat <anuj.phogat@gmail.com> mesa: Implement ext_framebuffer_multisample_blit_scaled extension

Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Paul Berry <stereotype441@gmail.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
a5b0452400dd6c2fd2a0921584f6fcee915a8b62 10-May-2013 Eric Anholt <eric@anholt.net> mesa: Make FinishRenderTexture just take the renderbuffer being finished.

Now that the rb has a reference to the teximage, we didn't need anything
else out of the attachment.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
e98c39c109f9b38d6bb97e3890382fdf66c25176 10-May-2013 Eric Anholt <eric@anholt.net> mesa: Track the TexImage being rendered to in the gl_renderbuffer.

We keep having to pass the attachments around with our gl_renderbuffers
because that's the only way to find what the gl_renderbuffer actually
refers to. This is a step toward removing that (though drivers still need
the Zoffset as well).

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
c810e67c55a8a2965b730317873fbdcc186a7514 10-May-2013 Eric Anholt <eric@anholt.net> mesa: Make gl_renderbuffers backed by EGL images use FinishRenderTexture.

This is the opportunity that radeon and intel drivers rely on for flushing
render targets that may get reused as textures. Before EGL, that only
happened for GL_TEXTURE attachments.

Fixes piglits:
KHR_gl_renderbuffer_image/renderbuffer-texture
OES_EGL_image/renderbuffer-texture

NOTE: This is a candidate for the 9.1 branch.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
77a405dba7f70f8a47655e90774a5ecf5c88a6ed 22-Apr-2013 Eric Anholt <eric@anholt.net> mesa: Make Mesa core set up wrapped texture renderbuffer state.

Everyone was doing effectively the same thing, except for some funky code
reuse in Intel, and swrast mistakenly recomputing _BaseFormat instead of
using the texture's _BaseFormat. swrast's sRGB handling is left in place,
though it should be done by using _mesa_get_render_format() at render time
instead (as-is, it will miss updates to GL_FRAMEBUFFER_SRGB).

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
749a92786d378ee55cf9ebbbe8596c217fbae0f9 22-Apr-2013 Eric Anholt <eric@anholt.net> mesa: Make core Mesa allocate the texture renderbuffer wrapper.

Every driver did the same thing.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
02f2bce08de5c8430a800860ffbee71d2b4f57fc 18-Apr-2013 Jordan Justen <jordan.l.justen@intel.com> mesa: implement glFramebufferTexture

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
5da8288911bfd104756dfe6dc02be998208dd4cb 18-Apr-2013 Jordan Justen <jordan.l.justen@intel.com> mesa: add Layered field to framebuffers

When checking framebuffer completeness, we test each attachment.
We verify that all attachments are consistent in terms of layers.

1. They must all be layered, or all non-layered
2. If they are layered, they must match in depth

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
a62808085a09bbf45519567e3a3a83aa485821f6 18-Apr-2013 Jordan Justen <jordan.l.justen@intel.com> mesa: add renderbuffer attachment Layered field

If glFramebufferTexture is used, then the framebuffer attachment is
layered.

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
3d8d5b298a268b119d840bc9bae0ee9e0c9244a9 21-Apr-2013 Kenneth Graunke <kenneth@whitecape.org> mesa: Restore 78-column wrapping of license text in C-style comments.

The previous commit introduced extra words, breaking the formatting.

This text transformation was done automatically via the following shell
command:
$ git grep 'THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY' | sed 's/:.*$//' | xargs -I {} sh -c 'vim -e -s {} < vimscript

where 'vimscript' is a file containing:
/THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY/;/\*\// !fmt -w 78 -p ' * '
:wq

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
96ff2edc73ccf11d4d198ba3665507f73ae4a9f7 21-Apr-2013 Kenneth Graunke <kenneth@whitecape.org> mesa: Add "OR COPYRIGHT HOLDERS" to license text disclaiming liability.

This brings the license text in line with the MIT License as published
on the Open Source Initiative website:

http://opensource.org/licenses/mit-license.php

Generated automatically be the following shell command:
$ git grep 'THE AUTHORS BE LIABLE' | sed 's/:.*$//g' | xargs -I '{}' \
sed -i 's/THE AUTHORS/THE AUTHORS OR COPYRIGHT HOLDERS/' {}

This introduces some wrapping issues, to be fixed in the next commit.

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
dd404bc94f78a1766527becee03f8ef6ae3a799b 21-Apr-2013 Kenneth Graunke <kenneth@whitecape.org> mesa: Change "BRIAN PAUL" to "THE AUTHORS" in license text.

Generated automatically be the following shell command:
$ git grep 'BRIAN PAUL BE LIABLE' | sed 's/:.*$//g' | xargs -I '{}' \
sed -i 's/BRIAN PAUL/THE AUTHORS/' {}

The intention here is to protect all authors, not just Brian Paul. I
believe that was already the sensible interpretation, but spelling it
out is probably better.

More practically, it also prevents people from accidentally copy &
pasting the license into a new file which says Brian is not liable when
he isn't even one of the authors.

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
1e3b4226851fa66d567a1bb3a7e4d14bef265722 14-Apr-2013 Marek Olšák <maraeo@gmail.com> mesa: don't set _NEW_BUFFERS in GenerateMipmap and BlitFramebuffer

both functions don't change the framebuffer in any way
(if mesa_meta is not used)

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/main/fbobject.c
b76f6d9557ff27140e18cf8aa2b57db8876d5d4d 17-Apr-2013 Brian Paul <brianp@vmware.com> mesa: remove #include "mfeatures.h" from numerous source files

None of the remaining FEATURE_x symbols in mfeatures.h are used anymore.

Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
755648c37fc7a54ed0b11c868fd4c7fe28b2f861 28-Mar-2013 Marek Olšák <maraeo@gmail.com> mesa: don't set _ClampFragmentColor to TRUE if it has no effect

This should reduce shader recompilations with drivers that emulate fragment
color clamping, because we want the clamping to be enabled only if there is
a signed normalized or floating-point colorbuffer.

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
21d407c1b8bf3be1eff87121d528d03c240ce207 28-Mar-2013 Marek Olšák <maraeo@gmail.com> mesa: refactor clamping controls, get rid of _ClampReadColor

v2: cosmetic changes from Brian's email

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
21a2dfa55d7a797022de267efbfebaf630940c13 25-Mar-2013 Chris Forbes <chrisf@ijw.co.nz> mesa: only check sample count if we actually wanted multisampling

Fixes various test fallout from 90b5a2425a on Pineview, which claims to
support ARB_internalformat_query but doesn't actually provide the
driverfunc.

That driver is still broken [GetInternalformativ will still segfault!]
but it was silly to be going through the sample count logic in the
nonmultisampling case at all.

Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
90b5a2425a5f362ef51ae7bb4d296fc682b92f46 06-Feb-2013 Chris Forbes <chrisf@ijw.co.nz> mesa: helper for checking renderbuffer sample count

Pulls the checking of the sample count into a helper function, and
extends the existing logic to include the interactions with both
ARB_texture_multisample and ARB_internalformat_query.

_mesa_check_sample_count() checks a desired sample count against a
a combination of target/internalformat, and returns the error enum
to be produced, if any. Unfortunately the conditions are messy and the
errors vary.

V2: - Tidy up spurious block.
- Move _mesa_check_sample_count() to multisample.c instead; It
doesn't really belong in fbobject.c or teximage.c.
- Inlined spec quotes

Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
f8855a42141cc76cf6954eee2af80e7dbc932c85 14-Mar-2013 Marek Olšák <maraeo@gmail.com> mesa: add helper func for checking combined depthstencil buffers from st/mesa

Reviewed-by: Brian Paul <brianp@vmware.com>
Tested-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
d78dcdf103271c539ff246651236e71f7a9c10fd 07-Mar-2013 Anuj Phogat <anuj.phogat@gmail.com> mesa: Fix FB blitting in case of zero size src or dst rect

Framebuffer blitting operation should be skipped if any of the
dimensions (width/height) of src/dst rect is zero.

V2: Move the dimension check after error checking in _mesa_BlitFramebuffer.

Fixes: fbblit(negative.nullblit.zeroSize) in Intel oglconform
https://bugs.freedesktop.org/show_bug.cgi?id=59495

Note: Candidate for all the stable branches.

Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Paul Berry <stereotype441@gmail.com>
/external/mesa3d/src/mesa/main/fbobject.c
61d42ffef49e0be1d6b5b7565d5e448428360843 16-Dec-2012 Chris Forbes <chrisf@ijw.co.nz> mesa: support multisample textures in framebuffer completeness check

- sample count must be the same on all attachments
- fixedsamplepositions must be the same on all attachments
(renderbuffers have fixedsamplepositions=true implicitly; only
multisample textures can choose to have it false)

V2: - fix wrapping to 80 columns, debug message, fix for state moving
from texobj to image.
- stencil texturing tweaks tidied up and folded in here.

V3: - Removed silly stencil hacks entirely; the extension doesn't
actually make stencil-only textures legal at all.
- Moved sample count / fixed sample locations checks into
existing attachment-type-specific blocks, as suggested by Eric

V4: - Removed stencil hacks which were missed in V3 (thanks Eric)
- Don't move the declaration of texImg; only required pre-V3.

Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>
[V2] Reviewed-by: Paul Berry <stereotype441@gmail.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
d04a4dd0039d397c19e28cde878f51cad0877f07 24-Nov-2012 Chris Forbes <chrisf@ijw.co.nz> mesa: add texobj support for ARB_texture_multisample

Adds the new texture targets, and per-image state for GL_TEXTURE_SAMPLES
and GL_TEXTURE_FIXED_SAMPLE_LOCATIONS.

V2: - Allow multisample texture targets in glInvalidateTexSubImage too.
This was already partly there, but I missed it the first time around
since the interaction is defined in a newer extension. Fixed weird
indentation.
- Allow multisample array textures in glFramebufferTextureLayer.
This was overlooked as the tests originally only used 2d
multisample textures.

V3: - Set min/mag filters sensibly for multisample textures. This
can't actually be changed by the user, so it's more sensible to
initialize it correctly than to hack around it being bogus later.

V4: - Tidy up initial min/mag filter setup. Setup in
_mesa_initialize_texture_object was bogus, but benign since
finish_texture_init() clobbered everything with correct values. For V4,
just do the setup in finish_texture_init().

V5: - Don't break glPopAttrib(GL_TEXTURE_BIT)

Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>
[V2] Reviewed-by: Paul Berry <stereotype441@gmail.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
413941e1a3155b29a190ab7ecfd844b1a5c2e460 18-Feb-2013 Tapani Pälli <tapani.palli@intel.com> gles2: a stub implementation for GL_EXT_discard_framebuffer

This patch implements a stub for GL_EXT_discard_framebuffer with
required checks listed by the extension specification. This extension
is required by GLBenchmark 2.5 when compiled with OpenGL ES 2.0
as the rendering backend.

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-and-tested-by: Chad Versace <chad.versace@linux.intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
148fc6d53716f39971a453792570c2b8c207efb6 19-Jan-2013 Ian Romanick <ian.d.romanick@intel.com> mesa/es3: Apply stricter multisample blit rules for ES3.

Fixes gles3conform
framebuffer_blit_error_blitframebuffer_multisampled_read_buffer_different_origins.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/main/fbobject.c
d7475c79665370de82e65cbf6e5d6f9b6ad4ce81 19-Jan-2013 Ian Romanick <ian.d.romanick@intel.com> mesa/es3: Disallow FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE query of DEPTH_STENCIL_ATTACHMENT

This error was added in the 3.0.1 update to the OpenGL ES 3.0 spec.
Fixes the updated gles3conform packed_depth_stencil_parameters test.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/main/fbobject.c
9cb64a4cb61ce6cef28ea8ecfedb89f756713e95 17-Jan-2013 Ian Romanick <ian.d.romanick@intel.com> mesa: Don't allow blits to / from the same buffer in OpenGL ES 3.0

Fixes gles3conform test CoverageES30. It temporarily regresses some
framebuffer_blit tests, but the failing subcases have been determined to
be invalid for OpenGL ES 3.0.

v2: Fix typo in depth (and stencil) RB checking. Noticed by Ken.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
a9754793dab4b24c09cae21c29f902ce0e53319a 17-Jan-2013 Eric Anholt <eric@anholt.net> mesa: Drop manual checks for outside begin/end.

We now have a separate dispatch table for begin/end that prevent these
functions from being entered during that time. The
ASSERT_OUTSIDE_BEGIN_END_WITH_RETVALs are left because I don't want to
change any return values or introduce new error-only stubs at this
point.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
6c7fa72229bd04a451fe8f09a9f4fe536bb2f811 27-Dec-2012 Jordan Justen <jordan.l.justen@intel.com> fbobject: add additional fbo completeness checks for GLES

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
119002a648180ba1a20ed086adf2b1b306f81386 11-Jan-2013 Jordan Justen <jordan.l.justen@intel.com> extensions: enable EXT_color_buffer_float for ES3

[mattst88] v2: Enable only for ES3 per spec.
[mattst88] v3: Use _mesa_is_gles3 since EXT_color_buffer_float is
ES3-only.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
7ecbbc338668d745daae7b3a6d17f3af0adf12d7 16-Jan-2013 Brian Paul <brianp@vmware.com> mesa: move declarations before code to fix MSVC build
/external/mesa3d/src/mesa/main/fbobject.c
ab36ca061412c49143a5f2af53bee862fbd40351 12-Dec-2012 Anuj Phogat <anuj.phogat@gmail.com> mesa: Add error checking in _mesa_BlitFramebuffer() for MRTs

This patch adds required error checking in _mesa_BlitFramebuffer() when
blitting to multiple color render targets. It also fixes a case when
blitting to a framebuffer with renderbuffer/texture attached to
GL_COLOR_ATTACHMENT{i} (where i!=0). Earlier it skips color blitting if
nothing is found attached to GL_COLOR_ATTACHMENT0.

V2: Fixed a case when number of draw buffer attachments are zero.
V3: Do compatible_color_datatypes() and compatible_resolve_formats()
check for all the draw renderbuffers in fbobject.c. Fix debug code
at bottom of _mesa_BlitFramebuffer() to handle MRTs. Combine error
checking code for linear blits with other color blit error checking.

Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
2f2801f876a4c637273bd3ddefb8a5b7a840e604 12-Dec-2012 Anuj Phogat <anuj.phogat@gmail.com> mesa: Fix GL error generation in _mesa_GetFramebufferAttachmentParameteriv()

This allows query on default framebuffer in
glGetFramebufferAttachmentParameteriv() for gles3. Fixes unexpected GL
errors in gles3 conformance test case:
framebuffer_blit_functionality_multisampled_to_singlesampled_blit

V2: Use _mesa_is_gles3() check to restrict allowed attachment types to
specific APIs.

Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
252573ae0fe6c928885f005cf6e77200b45601fb 08-Jan-2013 Anuj Phogat <anuj.phogat@gmail.com> mesa: Fix GL error generation in glBlitFramebuffer()

V2:
If mask has GL_STENCIL_BUFFER_BIT set, the depth formats for
readRenderBuffer and drawRenderBuffer must match unless one of the two
buffers doesn't have depth, in which case it's not blitted, so the
format check should be ignored. Same comment goes for stencil formats
in depth renderbuffers if mask has GL_DEPTH_BUFFER_BIT set.

v3 (Kayden): Refactor code to be a bit more readable.

Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
cbef5371f6cb0a03f62586f7c5b4ed66511daff4 20-Nov-2012 Matt Turner <mattst88@gmail.com> mesa: Reject texture-only formats as renderbuffer formats in ES 3

ES 3 specifies some formats as texture-only (i.e., not available for
renderbuffers).

See the "Required Texture Formats" section (pg 126) of the ES 3 spec.

v2: Allow RED and RG float rendering in core profiles The check used to
be (version > 30) || (compat profile w/extensions). Just deleting
<version > 30) broke 3.0+ core profiles.

Fixes es3conform's color_buffer_unsupported_format test.

Signed-off-by: Matt Turner <mattst88@gmail.com>
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Acked-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
cf300eaab68153d818f6c29f4b487162a589dcfa 27-Dec-2012 Jordan Justen <jordan.l.justen@intel.com> fbobject: don't allow LUMINANCE/INTENSITY/ALPHA fbo on ES/Core

v2:
* Only allow on GL Legacy contexts

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
275620c4b298cae9e3152fd39d7e291b87802f03 12-Jan-2013 Jordan Justen <jordan.l.justen@intel.com> fbobject: add VERBOSE=api message for renderbuffer storage

Add API debug trace message for:
* glRenderbufferStorage
* glRenderbufferStorageMultisample

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
7f867851f5ac1a8b6733181ffb0bd2d8c8058d8f 13-Jan-2013 Jordan Justen <jordan.l.justen@intel.com> fbobject: add VERBOSE=api message for check framebuffer status

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
ec8ee91923b13f972f5f7cf0573e7c412bf2de05 16-Nov-2012 Matt Turner <mattst88@gmail.com> mesa: Allow GL_DEPTH_STENCIL_ATTACHMENT in ES 3

Fixes framebuffer_srgb_default_encoding_fbo and 5 packed_depth_stencil
tests from es3conform.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
a86d629799a45ddc8cde94e9304283fc1858c679 03-Dec-2012 Ian Romanick <ian.d.romanick@intel.com> mesa: Disallow R, RG, or RGB integer and unsigned formats in OpenGL ES 3.0

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Marek Olšák <maraeo@gmail.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/main/fbobject.c
2aae3abd77dc28b3666bb0db04baff18d8f0aa51 04-Dec-2012 Ian Romanick <ian.d.romanick@intel.com> mesa: Disallow SNORM formats for renderbuffers in OpenGL ES

v2: Move {RED,RG,RGB,RGBA}_SNORM changes from the previous commit to
this commit. Based on suggestions from Ken.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Marek Olšák <maraeo@gmail.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/main/fbobject.c
4b92379da213c85998643997deef945b6e7fb7a7 01-Dec-2012 Ian Romanick <ian.d.romanick@intel.com> mesa: Disallow deprecated SNORM formats for renderbuffers

The OpenGL 3.2 core profile spec says:

"The following base internal formats from table 3.11 are
color-renderable: RED, RG, RGB, and RGBA. The sized internal formats
from table 3.12 that have a color-renderable base internal format
are also color-renderable. No other formats, including compressed
internal formats, are color-renderable."

The OpenGL 3.2 compatibility profile spec says (only ALPHA is added):

"The following base internal formats from table 3.16 are
color-renderable: ALPHA, RED, RG, RGB, and RGBA. The sized internal formats
from table 3.17 that have a color-renderable base internal format
are also color-renderable. No other formats, including compressed
internal formats, are color-renderable."

Table 3.12 in the core profile spec and table 3.17 in the compatibility
profile spec list SNORM formats as having a base internal format of RED,
RG, RGB, or RGBA. From this we infer that they should also be color
renderable.

The OpenGL ES 3.0 spec says:

"An internal format is color-renderable if it is one of the formats
from table 3.12 noted as color-renderable or if it is unsized format
RGBA or RGB. No other formats, including compressed internal
formats, are color-renderable."

In the OpenGL ES 3.0 spec, none of the SNORM formats have "color-
renderable" marked in table 3.12. The RGB I and UI formats also are not
color-renderable in ES3, but we'll save that change for another patch.

Both NVIDIA's closed-source driver (version 304.64) and AMD's
closed-source driver (Catalyst 12.6 on HD 3650) reject *all* SNORM
formats for renderbuffers in OpenGL 3.3 compatibility profiles.

v2: Move {RED,RG,RGB,RGBA}_SNORM changes from the this commit to the
next commit. Based on suggestions from Ken.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Marek Olšák <maraeo@gmail.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/main/fbobject.c
a13f9dfbb88720c9ccca443e834106a80e69fedb 01-Dec-2012 Ian Romanick <ian.d.romanick@intel.com> mesa: Only require Gen'ed name for glBind{Framebuffer,Renderbuffer} on desktop

Desktop OpenGL implementations that support either
GL_ARB_framebuffer_object or OpenGL 3.0 must require names from
glGenFramebuffers for glBindFramebuffer. We have enforced this rule for
quite some time. However, OpenGL ES 1.0, 2.0, and 3.0 implementations
are required to allow user-defined names (e.g., not from
glGenFramebuffers{OES,}).

The Intel drivers have hacked around this by not enabling
GL_ARB_framebuffer_object in an ES context. Instead, just pick the
correct behavior in _mesa_BindFramebuffer based on the context API.

Chad pointed out in a review e-mail:

"I'd like to point out, though, that glBindFramebufferEXT and
glBindRenderbufferEXT are still broken on desktop GL because they
don't accept user-genned names. But that fix belongs to a different
series."

Currently glBindFramebufferEXT is an alias for glBindFramebuffer.
Unalising two functions presents some difficulty, so we'll have to
revisit this eventually.

v2: Perform same check in _mesa_BindRenderbuffer too.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> [v1]
/external/mesa3d/src/mesa/main/fbobject.c
c73245882c7ff1277b190b97f093f7b423a22f10 30-Nov-2012 Brian Paul <brianp@vmware.com> mesa: pass context parameter to gl_renderbuffer::Delete()

We sometimes need a rendering context when deleting renderbuffers.
Pass it explicitly instead of trying to grab a current context
(which might be NULL). The next patch will make use of this.

Note: this is a candidate for the stable branches.

Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
dbd6135bc1ba285128ab991c03c4df6fbd6fefe8 27-Nov-2012 Paul Berry <stereotype441@gmail.com> mesa: Rename API_OPENGL to API_OPENGL_COMPAT.

This should help avoid confusion now that we're using the gl_api enum
to distinguishing between core and compatibility API's. The
corresponding enum value for core API's is API_OPENGL_CORE.

Acked-by: Eric Anholt <eric@anholt.net>
Acked-by: Matt Turner <mattst88@gmail.com>
Acked-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
135fe907a016ec20b6779f6b3a657563e89c1081 28-Nov-2012 Marek Olšák <maraeo@gmail.com> mesa: move some helper functions from fboobject.c to glformats.c

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
91ca053714957aca5205122e8478002c62cc4344 23-Nov-2012 Marek Olšák <maraeo@gmail.com> mesa: fix BlitFramebuffer between linear and sRGB formats

NOTE: This is a candidate for the stable branches.

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
c6ed42a89ede459e72b18cd8890cc3aba39905f5 18-Nov-2012 Kenneth Graunke <kenneth@whitecape.org> mesa: Support EXT_framebuffer_blit targets in ES 3.0 as well.

GL_READ_FRAMEBUFFER and GL_DRAW_FRAMEBUFFER are valid targets in ES 3.

Fixes 23 es3conform framebuffer_blit tests. Two more go from fail to
crash, but that appears to be because they actually run now.

Reviewed-and-tested-by: Matt Turner <mattst88@gmail.com>
/external/mesa3d/src/mesa/main/fbobject.c
1a1db1746db82efc7f0643508886dfc78a15eb71 06-Nov-2012 Paul Berry <stereotype441@gmail.com> mesa: Standardize names of OpenGL functions.

This patch adjusts the aliasing pattern in the GL API description XML,
and the functions that implement the GL API within Mesa, to
consistently follow these naming conventions:

- When several function names are aliases of each other, the primary
name is the one with no extension suffix (or the name with the
suffix "ARB", if no unsuffixed name is available). (By "primary
name", I mean the name that all the other functions point to using
the XML "alias" attribute).

- The name of the mesa implementation of each function is the same as
the primary name, with the prefix "_mesa_".

This patch renames the following mesa functions:
_check_GetTexGenxvOES => _mesa_GetTexGenxvOES
_check_TexGenxOES => _mesa_TexGenxOES
_check_TexGenxvOES => _mesa_TexGenxvOES
_es_AlphaFuncx => _mesa_AlphaFuncx
_es_ClearColorx => _mesa_ClearColorx
_es_ClearDepthx => _mesa_ClearDepthx
_es_ClipPlanef => _mesa_ClipPlanef
_es_ClipPlanex => _mesa_ClipPlanex
_es_Color4x => _mesa_Color4x
_es_DepthRangex => _mesa_DepthRangex
_es_DrawTexxOES => _mesa_DrawTexxOES
_es_DrawTexxvOES => _mesa_DrawTexxvOES
_es_Fogx => _mesa_Fogx
_es_Fogxv => _mesa_Fogxv
_es_Frustumf => _mesa_Frustumf
_es_Frustumx => _mesa_Frustumx
_es_GetClipPlanef => _mesa_GetClipPlanef
_es_GetClipPlanex => _mesa_GetClipPlanex
_es_GetLightxv => _mesa_GetLightxv
_es_GetMaterialxv => _mesa_GetMaterialxv
_es_GetTexEnvxv => _mesa_GetTexEnvxv
_es_GetTexParameterxv => _mesa_GetTexParameterxv
_es_LightModelx => _mesa_LightModelx
_es_LightModelxv => _mesa_LightModelxv
_es_Lightx => _mesa_Lightx
_es_Lightxv => _mesa_Lightxv
_es_LineWidthx => _mesa_LineWidthx
_es_LoadMatrixx => _mesa_LoadMatrixx
_es_Materialx => _mesa_Materialx
_es_Materialxv => _mesa_Materialxv
_es_MultMatrixx => _mesa_MultMatrixx
_es_MultiTexCoord4x => _mesa_MultiTexCoord4x
_es_Normal3x => _mesa_Normal3x
_es_Orthof => _mesa_Orthof
_es_Orthox => _mesa_Orthox
_es_PointParameterx => _mesa_PointParameterx
_es_PointParameterxv => _mesa_PointParameterxv
_es_PointSizex => _mesa_PointSizex
_es_PolygonOffsetx => _mesa_PolygonOffsetx
_es_QueryMatrixxOES => _mesa_QueryMatrixxOES
_es_Rotatex => _mesa_Rotatex
_es_SampleCoveragex => _mesa_SampleCoveragex
_es_Scalex => _mesa_Scalex
_es_TexEnvx => _mesa_TexEnvx
_es_TexEnvxv => _mesa_TexEnvxv
_es_TexParameterx => _mesa_TexParameterx
_es_TexParameterxv => _mesa_TexParameterxv
_es_Translatex => _mesa_Translatex
_mesa_ActiveTextureARB => _mesa_ActiveTexture
_mesa_BeginQueryARB => _mesa_BeginQuery
_mesa_BindAttribLocationARB => _mesa_BindAttribLocation
_mesa_BindBufferARB => _mesa_BindBuffer
_mesa_BindFramebufferEXT => _mesa_BindFramebuffer
_mesa_BindProgram => _mesa_BindProgramARB
_mesa_BindRenderbufferEXT => _mesa_BindRenderbuffer
_mesa_BlendEquationSeparateEXT => _mesa_BlendEquationSeparate
_mesa_BlendEquationSeparatei => _mesa_BlendEquationSeparateiARB
_mesa_BlendEquationi => _mesa_BlendEquationiARB
_mesa_BlendFuncSeparateEXT => _mesa_BlendFuncSeparate
_mesa_BlendFuncSeparatei => _mesa_BlendFuncSeparateiARB
_mesa_BlendFunci => _mesa_BlendFunciARB
_mesa_BlitFramebufferEXT => _mesa_BlitFramebuffer
_mesa_BufferDataARB => _mesa_BufferData
_mesa_BufferSubDataARB => _mesa_BufferSubData
_mesa_CheckFramebufferStatusEXT => _mesa_CheckFramebufferStatus
_mesa_ClampColorARB => _mesa_ClampColor
_mesa_ClientActiveTextureARB => _mesa_ClientActiveTexture
_mesa_ColorMaskIndexed => _mesa_ColorMaski
_mesa_CompileShaderARB => _mesa_CompileShader
_mesa_CompressedTexImage1DARB => _mesa_CompressedTexImage1D
_mesa_CompressedTexImage2DARB => _mesa_CompressedTexImage2D
_mesa_CompressedTexImage3DARB => _mesa_CompressedTexImage3D
_mesa_CompressedTexSubImage1DARB => _mesa_CompressedTexSubImage1D
_mesa_CompressedTexSubImage2DARB => _mesa_CompressedTexSubImage2D
_mesa_CompressedTexSubImage3DARB => _mesa_CompressedTexSubImage3D
_mesa_DeleteBuffersARB => _mesa_DeleteBuffers
_mesa_DeleteFramebuffersEXT => _mesa_DeleteFramebuffers
_mesa_DeletePrograms => _mesa_DeleteProgramsARB
_mesa_DeleteQueriesARB => _mesa_DeleteQueries
_mesa_DeleteRenderbuffersEXT => _mesa_DeleteRenderbuffers
_mesa_DeleteVertexArraysAPPLE => _mesa_DeleteVertexArrays
_mesa_DisableIndexed => _mesa_Disablei
_mesa_DisableVertexAttribArrayARB => _mesa_DisableVertexAttribArray
_mesa_DrawBuffersARB => _mesa_DrawBuffers
_mesa_DrawTexf => _mesa_DrawTexfOES
_mesa_DrawTexfv => _mesa_DrawTexfvOES
_mesa_DrawTexi => _mesa_DrawTexiOES
_mesa_DrawTexiv => _mesa_DrawTexivOES
_mesa_DrawTexs => _mesa_DrawTexsOES
_mesa_DrawTexsv => _mesa_DrawTexsvOES
_mesa_EnableIndexed => _mesa_Enablei
_mesa_EnableVertexAttribArrayARB => _mesa_EnableVertexAttribArray
_mesa_EndQueryARB => _mesa_EndQuery
_mesa_FogCoordPointerEXT => _mesa_FogCoordPointer
_mesa_FramebufferRenderbufferEXT => _mesa_FramebufferRenderbuffer
_mesa_FramebufferTexture1DEXT => _mesa_FramebufferTexture1D
_mesa_FramebufferTexture2DEXT => _mesa_FramebufferTexture2D
_mesa_FramebufferTexture3DEXT => _mesa_FramebufferTexture3D
_mesa_FramebufferTextureLayerEXT => _mesa_FramebufferTextureLayer
_mesa_GenBuffersARB => _mesa_GenBuffers
_mesa_GenFramebuffersEXT => _mesa_GenFramebuffers
_mesa_GenPrograms => _mesa_GenProgramsARB
_mesa_GenQueriesARB => _mesa_GenQueries
_mesa_GenRenderbuffersEXT => _mesa_GenRenderbuffers
_mesa_GenerateMipmapEXT => _mesa_GenerateMipmap
_mesa_GetActiveAttribARB => _mesa_GetActiveAttrib
_mesa_GetActiveUniformARB => _mesa_GetActiveUniform
_mesa_GetAttribLocationARB => _mesa_GetAttribLocation
_mesa_GetBooleanIndexedv => _mesa_GetBooleani_v
_mesa_GetBufferParameterivARB => _mesa_GetBufferParameteriv
_mesa_GetBufferPointervARB => _mesa_GetBufferPointerv
_mesa_GetBufferSubDataARB => _mesa_GetBufferSubData
_mesa_GetCompressedTexImageARB => _mesa_GetCompressedTexImage
_mesa_GetFramebufferAttachmentParameterivEXT => _mesa_GetFramebufferAttachmentParameteriv
_mesa_GetIntegerIndexedv => _mesa_GetIntegeri_v
_mesa_GetQueryObjecti64vEXT => _mesa_GetQueryObjecti64v
_mesa_GetQueryObjectivARB => _mesa_GetQueryObjectiv
_mesa_GetQueryObjectui64vEXT => _mesa_GetQueryObjectui64v
_mesa_GetQueryObjectuivARB => _mesa_GetQueryObjectuiv
_mesa_GetQueryivARB => _mesa_GetQueryiv
_mesa_GetRenderbufferParameterivEXT => _mesa_GetRenderbufferParameteriv
_mesa_GetShaderSourceARB => _mesa_GetShaderSource
_mesa_GetUniformLocationARB => _mesa_GetUniformLocation
_mesa_GetUniformfvARB => _mesa_GetUniformfv
_mesa_GetUniformivARB => _mesa_GetUniformiv
_mesa_GetVertexAttribPointervARB => _mesa_GetVertexAttribPointerv
_mesa_GetVertexAttribdvARB => _mesa_GetVertexAttribdv
_mesa_GetVertexAttribfvARB => _mesa_GetVertexAttribfv
_mesa_GetVertexAttribivARB => _mesa_GetVertexAttribiv
_mesa_IsBufferARB => _mesa_IsBuffer
_mesa_IsEnabledIndexed => _mesa_IsEnabledi
_mesa_IsFramebufferEXT => _mesa_IsFramebuffer
_mesa_IsQueryARB => _mesa_IsQuery
_mesa_IsRenderbufferEXT => _mesa_IsRenderbuffer
_mesa_IsVertexArrayAPPLE => _mesa_IsVertexArray
_mesa_LinkProgramARB => _mesa_LinkProgram
_mesa_LoadTransposeMatrixdARB => _mesa_LoadTransposeMatrixd
_mesa_LoadTransposeMatrixfARB => _mesa_LoadTransposeMatrixf
_mesa_MapBufferARB => _mesa_MapBuffer
_mesa_MultTransposeMatrixdARB => _mesa_MultTransposeMatrixd
_mesa_MultTransposeMatrixfARB => _mesa_MultTransposeMatrixf
_mesa_MultiDrawArraysEXT => _mesa_MultiDrawArrays
_mesa_PointSizePointer => _mesa_PointSizePointerOES
_mesa_ProvokingVertexEXT => _mesa_ProvokingVertex
_mesa_RenderbufferStorageEXT => _mesa_RenderbufferStorage
_mesa_SampleCoverageARB => _mesa_SampleCoverage
_mesa_SecondaryColorPointerEXT => _mesa_SecondaryColorPointer
_mesa_ShaderSourceARB => _mesa_ShaderSource
_mesa_Uniform1fARB => _mesa_Uniform1f
_mesa_Uniform1fvARB => _mesa_Uniform1fv
_mesa_Uniform1iARB => _mesa_Uniform1i
_mesa_Uniform1ivARB => _mesa_Uniform1iv
_mesa_Uniform2fARB => _mesa_Uniform2f
_mesa_Uniform2fvARB => _mesa_Uniform2fv
_mesa_Uniform2iARB => _mesa_Uniform2i
_mesa_Uniform2ivARB => _mesa_Uniform2iv
_mesa_Uniform3fARB => _mesa_Uniform3f
_mesa_Uniform3fvARB => _mesa_Uniform3fv
_mesa_Uniform3iARB => _mesa_Uniform3i
_mesa_Uniform3ivARB => _mesa_Uniform3iv
_mesa_Uniform4fARB => _mesa_Uniform4f
_mesa_Uniform4fvARB => _mesa_Uniform4fv
_mesa_Uniform4iARB => _mesa_Uniform4i
_mesa_Uniform4ivARB => _mesa_Uniform4iv
_mesa_UniformMatrix2fvARB => _mesa_UniformMatrix2fv
_mesa_UniformMatrix3fvARB => _mesa_UniformMatrix3fv
_mesa_UniformMatrix4fvARB => _mesa_UniformMatrix4fv
_mesa_UnmapBufferARB => _mesa_UnmapBuffer
_mesa_UseProgramObjectARB => _mesa_UseProgram
_mesa_ValidateProgramARB => _mesa_ValidateProgram
_mesa_VertexAttribPointerARB => _mesa_VertexAttribPointer
_mesa_WindowPos2dMESA => _mesa_WindowPos2d
_mesa_WindowPos2dvMESA => _mesa_WindowPos2dv
_mesa_WindowPos2fMESA => _mesa_WindowPos2f
_mesa_WindowPos2fvMESA => _mesa_WindowPos2fv
_mesa_WindowPos2iMESA => _mesa_WindowPos2i
_mesa_WindowPos2ivMESA => _mesa_WindowPos2iv
_mesa_WindowPos2sMESA => _mesa_WindowPos2s
_mesa_WindowPos2svMESA => _mesa_WindowPos2sv
_mesa_WindowPos3dMESA => _mesa_WindowPos3d
_mesa_WindowPos3dvMESA => _mesa_WindowPos3dv
_mesa_WindowPos3fMESA => _mesa_WindowPos3f
_mesa_WindowPos3fvMESA => _mesa_WindowPos3fv
_mesa_WindowPos3iMESA => _mesa_WindowPos3i
_mesa_WindowPos3ivMESA => _mesa_WindowPos3iv
_mesa_WindowPos3sMESA => _mesa_WindowPos3s
_mesa_WindowPos3svMESA => _mesa_WindowPos3sv
loopback_Color3b_f => _mesa_Color3b
loopback_Color3bv_f => _mesa_Color3bv
loopback_Color3d_f => _mesa_Color3d
loopback_Color3dv_f => _mesa_Color3dv
loopback_Color3i_f => _mesa_Color3i
loopback_Color3iv_f => _mesa_Color3iv
loopback_Color3s_f => _mesa_Color3s
loopback_Color3sv_f => _mesa_Color3sv
loopback_Color3ub_f => _mesa_Color3ub
loopback_Color3ubv_f => _mesa_Color3ubv
loopback_Color3ui_f => _mesa_Color3ui
loopback_Color3uiv_f => _mesa_Color3uiv
loopback_Color3us_f => _mesa_Color3us
loopback_Color3usv_f => _mesa_Color3usv
loopback_Color4b_f => _mesa_Color4b
loopback_Color4bv_f => _mesa_Color4bv
loopback_Color4d_f => _mesa_Color4d
loopback_Color4dv_f => _mesa_Color4dv
loopback_Color4i_f => _mesa_Color4i
loopback_Color4iv_f => _mesa_Color4iv
loopback_Color4s_f => _mesa_Color4s
loopback_Color4sv_f => _mesa_Color4sv
loopback_Color4ub_f => _mesa_Color4ub
loopback_Color4ubv_f => _mesa_Color4ubv
loopback_Color4ui_f => _mesa_Color4ui
loopback_Color4uiv_f => _mesa_Color4uiv
loopback_Color4us_f => _mesa_Color4us
loopback_Color4usv_f => _mesa_Color4usv
loopback_EdgeFlagv => _mesa_EdgeFlagv
loopback_EvalCoord1d => _mesa_EvalCoord1d
loopback_EvalCoord1dv => _mesa_EvalCoord1dv
loopback_EvalCoord1fv => _mesa_EvalCoord1fv
loopback_EvalCoord2d => _mesa_EvalCoord2d
loopback_EvalCoord2dv => _mesa_EvalCoord2dv
loopback_EvalCoord2fv => _mesa_EvalCoord2fv
loopback_FogCoorddEXT => _mesa_FogCoordd
loopback_FogCoorddvEXT => _mesa_FogCoorddv
loopback_Indexd => _mesa_Indexd
loopback_Indexdv => _mesa_Indexdv
loopback_Indexi => _mesa_Indexi
loopback_Indexiv => _mesa_Indexiv
loopback_Indexs => _mesa_Indexs
loopback_Indexsv => _mesa_Indexsv
loopback_Indexub => _mesa_Indexub
loopback_Indexubv => _mesa_Indexubv
loopback_Materialf => _mesa_Materialf
loopback_Materiali => _mesa_Materiali
loopback_Materialiv => _mesa_Materialiv
loopback_MultiTexCoord1dARB => _mesa_MultiTexCoord1d
loopback_MultiTexCoord1dvARB => _mesa_MultiTexCoord1dv
loopback_MultiTexCoord1iARB => _mesa_MultiTexCoord1i
loopback_MultiTexCoord1ivARB => _mesa_MultiTexCoord1iv
loopback_MultiTexCoord1sARB => _mesa_MultiTexCoord1s
loopback_MultiTexCoord1svARB => _mesa_MultiTexCoord1sv
loopback_MultiTexCoord2dARB => _mesa_MultiTexCoord2d
loopback_MultiTexCoord2dvARB => _mesa_MultiTexCoord2dv
loopback_MultiTexCoord2iARB => _mesa_MultiTexCoord2i
loopback_MultiTexCoord2ivARB => _mesa_MultiTexCoord2iv
loopback_MultiTexCoord2sARB => _mesa_MultiTexCoord2s
loopback_MultiTexCoord2svARB => _mesa_MultiTexCoord2sv
loopback_MultiTexCoord3dARB => _mesa_MultiTexCoord3d
loopback_MultiTexCoord3dvARB => _mesa_MultiTexCoord3dv
loopback_MultiTexCoord3iARB => _mesa_MultiTexCoord3i
loopback_MultiTexCoord3ivARB => _mesa_MultiTexCoord3iv
loopback_MultiTexCoord3sARB => _mesa_MultiTexCoord3s
loopback_MultiTexCoord3svARB => _mesa_MultiTexCoord3sv
loopback_MultiTexCoord4dARB => _mesa_MultiTexCoord4d
loopback_MultiTexCoord4dvARB => _mesa_MultiTexCoord4dv
loopback_MultiTexCoord4iARB => _mesa_MultiTexCoord4i
loopback_MultiTexCoord4ivARB => _mesa_MultiTexCoord4iv
loopback_MultiTexCoord4sARB => _mesa_MultiTexCoord4s
loopback_MultiTexCoord4svARB => _mesa_MultiTexCoord4sv
loopback_Normal3b => _mesa_Normal3b
loopback_Normal3bv => _mesa_Normal3bv
loopback_Normal3d => _mesa_Normal3d
loopback_Normal3dv => _mesa_Normal3dv
loopback_Normal3i => _mesa_Normal3i
loopback_Normal3iv => _mesa_Normal3iv
loopback_Normal3s => _mesa_Normal3s
loopback_Normal3sv => _mesa_Normal3sv
loopback_Rectd => _mesa_Rectd
loopback_Rectdv => _mesa_Rectdv
loopback_Rectfv => _mesa_Rectfv
loopback_Recti => _mesa_Recti
loopback_Rectiv => _mesa_Rectiv
loopback_Rects => _mesa_Rects
loopback_Rectsv => _mesa_Rectsv
loopback_SecondaryColor3bEXT_f => _mesa_SecondaryColor3b
loopback_SecondaryColor3bvEXT_f => _mesa_SecondaryColor3bv
loopback_SecondaryColor3dEXT_f => _mesa_SecondaryColor3d
loopback_SecondaryColor3dvEXT_f => _mesa_SecondaryColor3dv
loopback_SecondaryColor3iEXT_f => _mesa_SecondaryColor3i
loopback_SecondaryColor3ivEXT_f => _mesa_SecondaryColor3iv
loopback_SecondaryColor3sEXT_f => _mesa_SecondaryColor3s
loopback_SecondaryColor3svEXT_f => _mesa_SecondaryColor3sv
loopback_SecondaryColor3ubEXT_f => _mesa_SecondaryColor3ub
loopback_SecondaryColor3ubvEXT_f => _mesa_SecondaryColor3ubv
loopback_SecondaryColor3uiEXT_f => _mesa_SecondaryColor3ui
loopback_SecondaryColor3uivEXT_f => _mesa_SecondaryColor3uiv
loopback_SecondaryColor3usEXT_f => _mesa_SecondaryColor3us
loopback_SecondaryColor3usvEXT_f => _mesa_SecondaryColor3usv
loopback_TexCoord1d => _mesa_TexCoord1d
loopback_TexCoord1dv => _mesa_TexCoord1dv
loopback_TexCoord1i => _mesa_TexCoord1i
loopback_TexCoord1iv => _mesa_TexCoord1iv
loopback_TexCoord1s => _mesa_TexCoord1s
loopback_TexCoord1sv => _mesa_TexCoord1sv
loopback_TexCoord2d => _mesa_TexCoord2d
loopback_TexCoord2dv => _mesa_TexCoord2dv
loopback_TexCoord2i => _mesa_TexCoord2i
loopback_TexCoord2iv => _mesa_TexCoord2iv
loopback_TexCoord2s => _mesa_TexCoord2s
loopback_TexCoord2sv => _mesa_TexCoord2sv
loopback_TexCoord3d => _mesa_TexCoord3d
loopback_TexCoord3dv => _mesa_TexCoord3dv
loopback_TexCoord3i => _mesa_TexCoord3i
loopback_TexCoord3iv => _mesa_TexCoord3iv
loopback_TexCoord3s => _mesa_TexCoord3s
loopback_TexCoord3sv => _mesa_TexCoord3sv
loopback_TexCoord4d => _mesa_TexCoord4d
loopback_TexCoord4dv => _mesa_TexCoord4dv
loopback_TexCoord4i => _mesa_TexCoord4i
loopback_TexCoord4iv => _mesa_TexCoord4iv
loopback_TexCoord4s => _mesa_TexCoord4s
loopback_TexCoord4sv => _mesa_TexCoord4sv
loopback_Vertex2d => _mesa_Vertex2d
loopback_Vertex2dv => _mesa_Vertex2dv
loopback_Vertex2i => _mesa_Vertex2i
loopback_Vertex2iv => _mesa_Vertex2iv
loopback_Vertex2s => _mesa_Vertex2s
loopback_Vertex2sv => _mesa_Vertex2sv
loopback_Vertex3d => _mesa_Vertex3d
loopback_Vertex3dv => _mesa_Vertex3dv
loopback_Vertex3i => _mesa_Vertex3i
loopback_Vertex3iv => _mesa_Vertex3iv
loopback_Vertex3s => _mesa_Vertex3s
loopback_Vertex3sv => _mesa_Vertex3sv
loopback_Vertex4d => _mesa_Vertex4d
loopback_Vertex4dv => _mesa_Vertex4dv
loopback_Vertex4i => _mesa_Vertex4i
loopback_Vertex4iv => _mesa_Vertex4iv
loopback_Vertex4s => _mesa_Vertex4s
loopback_Vertex4sv => _mesa_Vertex4sv
loopback_VertexAttrib1dARB => _mesa_VertexAttrib1d
loopback_VertexAttrib1dNV => _mesa_VertexAttrib1dNV
loopback_VertexAttrib1dvARB => _mesa_VertexAttrib1dv
loopback_VertexAttrib1dvNV => _mesa_VertexAttrib1dvNV
loopback_VertexAttrib1sARB => _mesa_VertexAttrib1s
loopback_VertexAttrib1sNV => _mesa_VertexAttrib1sNV
loopback_VertexAttrib1svARB => _mesa_VertexAttrib1sv
loopback_VertexAttrib1svNV => _mesa_VertexAttrib1svNV
loopback_VertexAttrib2dARB => _mesa_VertexAttrib2d
loopback_VertexAttrib2dNV => _mesa_VertexAttrib2dNV
loopback_VertexAttrib2dvARB => _mesa_VertexAttrib2dv
loopback_VertexAttrib2dvNV => _mesa_VertexAttrib2dvNV
loopback_VertexAttrib2sARB => _mesa_VertexAttrib2s
loopback_VertexAttrib2sNV => _mesa_VertexAttrib2sNV
loopback_VertexAttrib2svARB => _mesa_VertexAttrib2sv
loopback_VertexAttrib2svNV => _mesa_VertexAttrib2svNV
loopback_VertexAttrib3dARB => _mesa_VertexAttrib3d
loopback_VertexAttrib3dNV => _mesa_VertexAttrib3dNV
loopback_VertexAttrib3dvARB => _mesa_VertexAttrib3dv
loopback_VertexAttrib3dvNV => _mesa_VertexAttrib3dvNV
loopback_VertexAttrib3sARB => _mesa_VertexAttrib3s
loopback_VertexAttrib3sNV => _mesa_VertexAttrib3sNV
loopback_VertexAttrib3svARB => _mesa_VertexAttrib3sv
loopback_VertexAttrib3svNV => _mesa_VertexAttrib3svNV
loopback_VertexAttrib4NbvARB => _mesa_VertexAttrib4Nbv
loopback_VertexAttrib4NivARB => _mesa_VertexAttrib4Niv
loopback_VertexAttrib4NsvARB => _mesa_VertexAttrib4Nsv
loopback_VertexAttrib4NubARB => _mesa_VertexAttrib4Nub
loopback_VertexAttrib4NubvARB => _mesa_VertexAttrib4Nubv
loopback_VertexAttrib4NuivARB => _mesa_VertexAttrib4Nuiv
loopback_VertexAttrib4NusvARB => _mesa_VertexAttrib4Nusv
loopback_VertexAttrib4bvARB => _mesa_VertexAttrib4bv
loopback_VertexAttrib4dARB => _mesa_VertexAttrib4d
loopback_VertexAttrib4dNV => _mesa_VertexAttrib4dNV
loopback_VertexAttrib4dvARB => _mesa_VertexAttrib4dv
loopback_VertexAttrib4dvNV => _mesa_VertexAttrib4dvNV
loopback_VertexAttrib4ivARB => _mesa_VertexAttrib4iv
loopback_VertexAttrib4sARB => _mesa_VertexAttrib4s
loopback_VertexAttrib4sNV => _mesa_VertexAttrib4sNV
loopback_VertexAttrib4svARB => _mesa_VertexAttrib4sv
loopback_VertexAttrib4svNV => _mesa_VertexAttrib4svNV
loopback_VertexAttrib4ubNV => _mesa_VertexAttrib4ubNV
loopback_VertexAttrib4ubvARB => _mesa_VertexAttrib4ubv
loopback_VertexAttrib4ubvNV => _mesa_VertexAttrib4ubvNV
loopback_VertexAttrib4uivARB => _mesa_VertexAttrib4uiv
loopback_VertexAttrib4usvARB => _mesa_VertexAttrib4usv
loopback_VertexAttribI1iv => _mesa_VertexAttribI1iv
loopback_VertexAttribI1uiv => _mesa_VertexAttribI1uiv
loopback_VertexAttribI4bv => _mesa_VertexAttribI4bv
loopback_VertexAttribI4sv => _mesa_VertexAttribI4sv
loopback_VertexAttribI4ubv => _mesa_VertexAttribI4ubv
loopback_VertexAttribI4usv => _mesa_VertexAttribI4usv
loopback_VertexAttribs1dvNV => _mesa_VertexAttribs1dvNV
loopback_VertexAttribs1fvNV => _mesa_VertexAttribs1fvNV
loopback_VertexAttribs1svNV => _mesa_VertexAttribs1svNV
loopback_VertexAttribs2dvNV => _mesa_VertexAttribs2dvNV
loopback_VertexAttribs2fvNV => _mesa_VertexAttribs2fvNV
loopback_VertexAttribs2svNV => _mesa_VertexAttribs2svNV
loopback_VertexAttribs3dvNV => _mesa_VertexAttribs3dvNV
loopback_VertexAttribs3fvNV => _mesa_VertexAttribs3fvNV
loopback_VertexAttribs3svNV => _mesa_VertexAttribs3svNV
loopback_VertexAttribs4dvNV => _mesa_VertexAttribs4dvNV
loopback_VertexAttribs4fvNV => _mesa_VertexAttribs4fvNV
loopback_VertexAttribs4svNV => _mesa_VertexAttribs4svNV
loopback_VertexAttribs4ubvNV => _mesa_VertexAttribs4ubvNV

And changes the primary name assignment in the XML as follows:
ActiveTextureARB => ActiveTexture
AlphaFuncxOES => AlphaFuncx
BeginConditionalRenderNV => BeginConditionalRender
BeginQueryARB => BeginQuery
BeginTransformFeedbackEXT => BeginTransformFeedback
BindAttribLocationARB => BindAttribLocation
BindBufferARB => BindBuffer
BindBufferBaseEXT => BindBufferBase
BindBufferRangeEXT => BindBufferRange
BindFragDataLocationEXT => BindFragDataLocation
BindFramebufferEXT => BindFramebuffer
BindProgramNV => BindProgramARB
BindRenderbufferEXT => BindRenderbuffer
BlendEquationSeparateEXT => BlendEquationSeparate
BlendFuncSeparateEXT => BlendFuncSeparate
BlitFramebufferEXT => BlitFramebuffer
BufferDataARB => BufferData
BufferSubDataARB => BufferSubData
CheckFramebufferStatusEXT => CheckFramebufferStatus
ClampColorARB => ClampColor
ClearColorxOES => ClearColorx
ClearDepthxOES => ClearDepthx
ClientActiveTextureARB => ClientActiveTexture
ClipPlanefOES => ClipPlanef
ClipPlanexOES => ClipPlanex
Color4xOES => Color4x
ColorMaskIndexedEXT => ColorMaski
CompileShaderARB => CompileShader
CompressedTexImage1DARB => CompressedTexImage1D
CompressedTexImage2DARB => CompressedTexImage2D
CompressedTexImage3DARB => CompressedTexImage3D
CompressedTexSubImage1DARB => CompressedTexSubImage1D
CompressedTexSubImage2DARB => CompressedTexSubImage2D
CompressedTexSubImage3DARB => CompressedTexSubImage3D
DeleteBuffersARB => DeleteBuffers
DeleteFramebuffersEXT => DeleteFramebuffers
DeleteProgramsNV => DeleteProgramsARB
DeleteQueriesARB => DeleteQueries
DeleteRenderbuffersEXT => DeleteRenderbuffers
DeleteVertexArraysAPPLE => DeleteVertexArrays
DepthRangexOES => DepthRangex
DisableIndexedEXT => Disablei
DisableVertexAttribArrayARB => DisableVertexAttribArray
DrawBuffersARB => DrawBuffers
EnableIndexedEXT => Enablei
EnableVertexAttribArrayARB => EnableVertexAttribArray
EndConditionalRenderNV => EndConditionalRender
EndQueryARB => EndQuery
EndTransformFeedbackEXT => EndTransformFeedback
FogCoordPointerEXT => FogCoordPointer
FogCoorddEXT => FogCoordd
FogCoorddvEXT => FogCoorddv
FogxOES => Fogx
FogxvOES => Fogxv
FramebufferRenderbufferEXT => FramebufferRenderbuffer
FramebufferTexture1DEXT => FramebufferTexture1D
FramebufferTexture2DEXT => FramebufferTexture2D
FramebufferTexture3DEXT => FramebufferTexture3D
FramebufferTextureLayerEXT => FramebufferTextureLayer
FrustumfOES => Frustumf
FrustumxOES => Frustumx
GenBuffersARB => GenBuffers
GenFramebuffersEXT => GenFramebuffers
GenProgramsNV => GenProgramsARB
GenQueriesARB => GenQueries
GenRenderbuffersEXT => GenRenderbuffers
GenerateMipmapEXT => GenerateMipmap
GetActiveAttribARB => GetActiveAttrib
GetActiveUniformARB => GetActiveUniform
GetAttribLocationARB => GetAttribLocation
GetBooleanIndexedvEXT => GetBooleani_v
GetBufferParameterivARB => GetBufferParameteriv
GetBufferPointervARB => GetBufferPointerv
GetBufferSubDataARB => GetBufferSubData
GetClipPlanefOES => GetClipPlanef
GetClipPlanexOES => GetClipPlanex
GetCompressedTexImageARB => GetCompressedTexImage
GetFixedvOES => GetFixedv
GetFragDataLocationEXT => GetFragDataLocation
GetFramebufferAttachmentParameterivEXT => GetFramebufferAttachmentParameteriv
GetIntegerIndexedvEXT => GetIntegeri_v
GetLightxvOES => GetLightxv
GetMaterialxvOES => GetMaterialxv
GetQueryObjecti64vEXT => GetQueryObjecti64v
GetQueryObjectivARB => GetQueryObjectiv
GetQueryObjectui64vEXT => GetQueryObjectui64v
GetQueryObjectuivARB => GetQueryObjectuiv
GetQueryivARB => GetQueryiv
GetRenderbufferParameterivEXT => GetRenderbufferParameteriv
GetShaderSourceARB => GetShaderSource
GetTexEnvxvOES => GetTexEnvxv
GetTexParameterIivEXT => GetTexParameterIiv
GetTexParameterIuivEXT => GetTexParameterIuiv
GetTexParameterxvOES => GetTexParameterxv
GetTransformFeedbackVaryingEXT => GetTransformFeedbackVarying
GetUniformLocationARB => GetUniformLocation
GetUniformfvARB => GetUniformfv
GetUniformivARB => GetUniformiv
GetUniformuivEXT => GetUniformuiv
GetVertexAttribIivEXT => GetVertexAttribIiv
GetVertexAttribIuivEXT => GetVertexAttribIuiv
GetVertexAttribPointervNV => GetVertexAttribPointerv
GetVertexAttribdvARB => GetVertexAttribdv
GetVertexAttribfvARB => GetVertexAttribfv
GetVertexAttribivARB => GetVertexAttribiv
IsBufferARB => IsBuffer
IsEnabledIndexedEXT => IsEnabledi
IsFramebufferEXT => IsFramebuffer
IsProgramNV => IsProgramARB
IsQueryARB => IsQuery
IsRenderbufferEXT => IsRenderbuffer
IsVertexArrayAPPLE => IsVertexArray
LightModelxOES => LightModelx
LightModelxvOES => LightModelxv
LightxOES => Lightx
LightxvOES => Lightxv
LineWidthxOES => LineWidthx
LinkProgramARB => LinkProgram
LoadMatrixxOES => LoadMatrixx
LoadTransposeMatrixdARB => LoadTransposeMatrixd
LoadTransposeMatrixfARB => LoadTransposeMatrixf
MapBufferARB => MapBuffer
MaterialxOES => Materialx
MaterialxvOES => Materialxv
MultMatrixxOES => MultMatrixx
MultTransposeMatrixdARB => MultTransposeMatrixd
MultTransposeMatrixfARB => MultTransposeMatrixf
MultiDrawArraysEXT => MultiDrawArrays
MultiTexCoord1dARB => MultiTexCoord1d
MultiTexCoord1dvARB => MultiTexCoord1dv
MultiTexCoord1iARB => MultiTexCoord1i
MultiTexCoord1ivARB => MultiTexCoord1iv
MultiTexCoord1sARB => MultiTexCoord1s
MultiTexCoord1svARB => MultiTexCoord1sv
MultiTexCoord2dARB => MultiTexCoord2d
MultiTexCoord2dvARB => MultiTexCoord2dv
MultiTexCoord2iARB => MultiTexCoord2i
MultiTexCoord2ivARB => MultiTexCoord2iv
MultiTexCoord2sARB => MultiTexCoord2s
MultiTexCoord2svARB => MultiTexCoord2sv
MultiTexCoord3dARB => MultiTexCoord3d
MultiTexCoord3dvARB => MultiTexCoord3dv
MultiTexCoord3iARB => MultiTexCoord3i
MultiTexCoord3ivARB => MultiTexCoord3iv
MultiTexCoord3sARB => MultiTexCoord3s
MultiTexCoord3svARB => MultiTexCoord3sv
MultiTexCoord4dARB => MultiTexCoord4d
MultiTexCoord4dvARB => MultiTexCoord4dv
MultiTexCoord4iARB => MultiTexCoord4i
MultiTexCoord4ivARB => MultiTexCoord4iv
MultiTexCoord4sARB => MultiTexCoord4s
MultiTexCoord4svARB => MultiTexCoord4sv
MultiTexCoord4xOES => MultiTexCoord4x
Normal3xOES => Normal3x
OrthofOES => Orthof
OrthoxOES => Orthox
PointParameterfEXT => PointParameterf
PointParameterfvEXT => PointParameterfv
PointParameteriNV => PointParameteri
PointParameterivNV => PointParameteriv
PointParameterxOES => PointParameterx
PointParameterxvOES => PointParameterxv
PointSizexOES => PointSizex
PolygonOffsetxOES => PolygonOffsetx
PrimitiveRestartIndexNV => PrimitiveRestartIndex
ProvokingVertexEXT => ProvokingVertex
RenderbufferStorageEXT => RenderbufferStorage
RotatexOES => Rotatex
SampleCoverageARB => SampleCoverage
SampleCoveragexOES => SampleCoveragex
ScalexOES => Scalex
SecondaryColor3bEXT => SecondaryColor3b
SecondaryColor3bvEXT => SecondaryColor3bv
SecondaryColor3dEXT => SecondaryColor3d
SecondaryColor3dvEXT => SecondaryColor3dv
SecondaryColor3iEXT => SecondaryColor3i
SecondaryColor3ivEXT => SecondaryColor3iv
SecondaryColor3sEXT => SecondaryColor3s
SecondaryColor3svEXT => SecondaryColor3sv
SecondaryColor3ubEXT => SecondaryColor3ub
SecondaryColor3ubvEXT => SecondaryColor3ubv
SecondaryColor3uiEXT => SecondaryColor3ui
SecondaryColor3uivEXT => SecondaryColor3uiv
SecondaryColor3usEXT => SecondaryColor3us
SecondaryColor3usvEXT => SecondaryColor3usv
SecondaryColorPointerEXT => SecondaryColorPointer
ShaderSourceARB => ShaderSource
TexBufferARB => TexBuffer
TexEnvxOES => TexEnvx
TexEnvxvOES => TexEnvxv
TexParameterIivEXT => TexParameterIiv
TexParameterIuivEXT => TexParameterIuiv
TexParameterxOES => TexParameterx
TexParameterxvOES => TexParameterxv
TransformFeedbackVaryingsEXT => TransformFeedbackVaryings
TranslatexOES => Translatex
Uniform1fARB => Uniform1f
Uniform1fvARB => Uniform1fv
Uniform1iARB => Uniform1i
Uniform1ivARB => Uniform1iv
Uniform1uiEXT => Uniform1ui
Uniform1uivEXT => Uniform1uiv
Uniform2fARB => Uniform2f
Uniform2fvARB => Uniform2fv
Uniform2iARB => Uniform2i
Uniform2ivARB => Uniform2iv
Uniform2uiEXT => Uniform2ui
Uniform2uivEXT => Uniform2uiv
Uniform3fARB => Uniform3f
Uniform3fvARB => Uniform3fv
Uniform3iARB => Uniform3i
Uniform3ivARB => Uniform3iv
Uniform3uiEXT => Uniform3ui
Uniform3uivEXT => Uniform3uiv
Uniform4fARB => Uniform4f
Uniform4fvARB => Uniform4fv
Uniform4iARB => Uniform4i
Uniform4ivARB => Uniform4iv
Uniform4uiEXT => Uniform4ui
Uniform4uivEXT => Uniform4uiv
UniformMatrix2fvARB => UniformMatrix2fv
UniformMatrix3fvARB => UniformMatrix3fv
UniformMatrix4fvARB => UniformMatrix4fv
UnmapBufferARB => UnmapBuffer
UseProgramObjectARB => UseProgram
ValidateProgramARB => ValidateProgram
VertexAttrib1dARB => VertexAttrib1d
VertexAttrib1dvARB => VertexAttrib1dv
VertexAttrib1sARB => VertexAttrib1s
VertexAttrib1svARB => VertexAttrib1sv
VertexAttrib2dARB => VertexAttrib2d
VertexAttrib2dvARB => VertexAttrib2dv
VertexAttrib2sARB => VertexAttrib2s
VertexAttrib2svARB => VertexAttrib2sv
VertexAttrib3dARB => VertexAttrib3d
VertexAttrib3dvARB => VertexAttrib3dv
VertexAttrib3sARB => VertexAttrib3s
VertexAttrib3svARB => VertexAttrib3sv
VertexAttrib4NbvARB => VertexAttrib4Nbv
VertexAttrib4NivARB => VertexAttrib4Niv
VertexAttrib4NsvARB => VertexAttrib4Nsv
VertexAttrib4NubARB => VertexAttrib4Nub
VertexAttrib4NubvARB => VertexAttrib4Nubv
VertexAttrib4NuivARB => VertexAttrib4Nuiv
VertexAttrib4NusvARB => VertexAttrib4Nusv
VertexAttrib4bvARB => VertexAttrib4bv
VertexAttrib4dARB => VertexAttrib4d
VertexAttrib4dvARB => VertexAttrib4dv
VertexAttrib4ivARB => VertexAttrib4iv
VertexAttrib4sARB => VertexAttrib4s
VertexAttrib4svARB => VertexAttrib4sv
VertexAttrib4ubvARB => VertexAttrib4ubv
VertexAttrib4uivARB => VertexAttrib4uiv
VertexAttrib4usvARB => VertexAttrib4usv
VertexAttribDivisorARB => VertexAttribDivisor
VertexAttribI1ivEXT => VertexAttribI1iv
VertexAttribI1uivEXT => VertexAttribI1uiv
VertexAttribI4bvEXT => VertexAttribI4bv
VertexAttribI4svEXT => VertexAttribI4sv
VertexAttribI4ubvEXT => VertexAttribI4ubv
VertexAttribI4usvEXT => VertexAttribI4usv
VertexAttribIPointerEXT => VertexAttribIPointer
VertexAttribPointerARB => VertexAttribPointer
WindowPos2dMESA => WindowPos2d
WindowPos2dvMESA => WindowPos2dv
WindowPos2fMESA => WindowPos2f
WindowPos2fvMESA => WindowPos2fv
WindowPos2iMESA => WindowPos2i
WindowPos2ivMESA => WindowPos2iv
WindowPos2sMESA => WindowPos2s
WindowPos2svMESA => WindowPos2sv
WindowPos3dMESA => WindowPos3d
WindowPos3dvMESA => WindowPos3dv
WindowPos3fMESA => WindowPos3f
WindowPos3fvMESA => WindowPos3fv
WindowPos3iMESA => WindowPos3i
WindowPos3ivMESA => WindowPos3iv
WindowPos3sMESA => WindowPos3s
WindowPos3svMESA => WindowPos3sv

Acked-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
e0e7e29554b7a4a723315eef3df5fb9bad28a70a 03-Nov-2012 Dave Airlie <airlied@gmail.com> mesa: add fbo/texture support for ARB_texture_cube_map_array (v2)

This adds the mesa core + texture + fbo support for the
texture cube map array extension.

v2:
add comment to _mesa_num_tex_faces related to cube map arrays (Brian)
drop wrong comment cut-n-paste (Brian)
fix / 6 maximum check issue (Kenneth)
coalsece some array case statements (Kenneth)

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/mesa/main/fbobject.c
859c387603e24848d309dac829af6e675b1ee6d9 05-Nov-2012 Brian Paul <brianp@vmware.com> mesa: fix signed/unsigned MSVC warnings in fbobject.c

Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
c0a78d7d7b51e125d143e693fdfc78b90f2d68cf 02-Nov-2012 Anuj Phogat <anuj.phogat@gmail.com> mesa: Generate invalid operation in glGenerateMipMap for integer textures

Khronos has reached a conclusion and disallowed following texture formats in
glGenerateMipMap():
(a) ASTC textures
(b) integer internal formats (e.g., RGBA8UI, RG16I)
(c) textures with stencil formats (e.g., STENCIL_INDEX8)
(d) textures with packed depth/stencil formats (e.g, DEPTH24_STENCIL8)

https://cvs.khronos.org/bugzilla/show_bug.cgi?id=9471

Note: This is a candidate for stable branches.
Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
4d62cb64a552c8e31a6facfb99d04fd11758ec25 29-Oct-2012 Jordan Justen <jordan.l.justen@intel.com> mesa: remove unimplemented FramebufferTextureFaceARB

This function can be re-added with an actual implementation
when ARB_geometry_shader4 is supported.

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Paul Berry <stereotype441@gmail.com>
/external/mesa3d/src/mesa/main/fbobject.c
f625cb580a14ce6fedd62f98bb7437c167a11c76 29-Oct-2012 Jordan Justen <jordan.l.justen@intel.com> mesa: remove unimplemented FramebufferTextureARB

This function can be re-added with an actual implementation
when ARB_geometry_shader4 is supported.

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Paul Berry <stereotype441@gmail.com>
/external/mesa3d/src/mesa/main/fbobject.c
c96828ecb46b5aee3121a018be365b738c35cbdc 04-Sep-2012 Kenneth Graunke <kenneth@whitecape.org> mesa: Ignore SRGB when determining compatible resolve formats.

MSAA resolves and other blit-like operations ignore SRGB state anyway,
so we should be able to safely allow resolves between compatible
SRGB/linear formats like SRGBA8 and RGBA8888.

This matches the behavior of the nVidia and AMD binary drivers.

Fixes completely black rendering when using multisampling in L4D2.

NOTE: This is a candidate for the 9.0 branch.

Reviewed-by: Paul Berry <stereotype441@gmail.com>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
e9ccb5fe52f1ff22eb8f6ac6ff0f4414b712e2e6 11-Sep-2012 Oliver McFadden <oliver.mcfadden@linux.intel.com> mesa: remove FEATURE_EXT_framebuffer_blit define.

Signed-off-by: Oliver McFadden <oliver.mcfadden@linux.intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
f88393afbe93898b167b3f218bbf33cffc70ef38 11-Sep-2012 Oliver McFadden <oliver.mcfadden@linux.intel.com> mesa: remove FEATURE_OES_EGL_image define.

Signed-off-by: Oliver McFadden <oliver.mcfadden@linux.intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
528f48432e58579d28a374581b1e6c7e64055381 11-Sep-2012 Oliver McFadden <oliver.mcfadden@linux.intel.com> mesa: remove FEATURE_ARB_shader_objects and related defines.

Signed-off-by: Oliver McFadden <oliver.mcfadden@linux.intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
5d5f0f349135786cdd76b6004f38b12e50d7f8f9 06-Sep-2012 Paul Berry <stereotype441@gmail.com> mesa/msaa: Allow X and Y flips in multisampled blits.

From the GL 4.3 spec, section 18.3.1 "Blitting Pixel Rectangles":

If SAMPLE_BUFFERS for either the read framebuffer or draw
framebuffer is greater than zero, no copy is performed and an
INVALID_OPERATION error is generated if the dimensions of the
source and destination rectangles provided to BlitFramebuffer are
not identical, or if the formats of the read and draw framebuffers
are not identical.

It is not clear from the spec whether "dimensions" should mean both
sign and magnitude, or just magnitude.

Previously, Mesa interpreted "dimensions" as meaning both sign and
magnitude, so any multisampled blit that attempted to flip the image
in the X and/or Y direction would fail.

However, Y flips are likely to be commonplace in OpenGL applications
that have been ported from DirectX applications, as a result of the
fact that DirectX and OpenGL differ in their orientation of the Y
axis. Furthermore, at least one commercial driver (nVidia) permits Y
filps, and L4D2 relies on them being permitted. So it seems prudent
for Mesa to permit them.

This patch changes Mesa to allow both X and Y flips, since there is no
language in the spec to indicate that X and Y flips should be treated
differently.

NOTE: This is a candidate for stable release branches.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
/external/mesa3d/src/mesa/main/fbobject.c
f0c99d0a6a897189dd4b66f508385eb2ecf3f76f 27-Jul-2012 Ian Romanick <ian.d.romanick@intel.com> mesa/es: Validate glRenderbufferStorage internalFormat in Mesa code rather than the ES wrapper

v2: Add proper core-profile and GLES3 filtering.

v3: Allow GL_RGB10_A2UI in GLES3 based on review feedback from Eric
Anholt.

v4: Arg. Reject unsized RED and RG enums on GLES. More feedback from
Eric.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
ae86ebfcc9fb3e89744c3ee38766a505857b3e7a 27-Jul-2012 Ian Romanick <ian.d.romanick@intel.com> mesa/es: Validate glGetRenderbufferParameter pname in Mesa code rather than the ES wrapper

v2: Add proper core-profile and GLES3 filtering.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/main/fbobject.c
0cdaa471ecb7ce6442b5ed4a54314de0ffeab614 27-Jul-2012 Ian Romanick <ian.d.romanick@intel.com> mesa/es: Validate glGetFramebufferAttachmentParameter pname in Mesa code rather than the ES wrapper

v2: Add proper core-profile, GLES1, and GLES3 filtering.

v3: Fix the GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME query when the
attachment type is GL_NONE on GLES3. Other cleanups. Based on review
feedback from Eric Anholt.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
5b44a77428863292d49aeed2960afbde5ee8f509 27-Jul-2012 Ian Romanick <ian.d.romanick@intel.com> mesa/es: Validate glGenerateMipmap target in Mesa code rather than the ES wrapper

v2: Add proper core-profile and GLES3 filtering.

v3: Fix a typo in GL_TEXTURE_2D_ARRAY checking.

v4: Change !_mesa_is_desktop_gl tests to _mesa_is_gles test. The test
around GL_TEXTURE_2D_ARRAY got some other changes because that enum is
also available with GLES3 (which uses API_OPENGLES2). Based on review
feedback from Eric Anholt.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
7f991d26ad189bc3c08c04dc248a5b2df5ce9f68 27-Jul-2012 Ian Romanick <ian.d.romanick@intel.com> mesa/es: Validate glFramebufferTexture2D textarget in Mesa code rather than the ES wrapper

v2: Add proper core-profile and GLES3 filtering.

v3: Change !_mesa_is_desktop_gl tests to _mesa_is_gles test. The test
around GL_TEXTURE_2D_ARRAY got some other changes because that enum is
also available with GLES3 (which uses API_OPENGLES2). Based on review
feedback from Eric Anholt.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
f6b7157550205a0633b4c2cb49a807d581176e21 10-Aug-2012 Brian Paul <brianp@vmware.com> mesa: raise GL_INVALID_OPERATION in glGenerateMipmap for missing base image

This seems to be expected by the WebGL texture-mips test. The error makes
sense, but I haven't found (yet) any OpenGL documentation specifying this
error condition.

See http://bugs.freedesktop.org/show_bug.cgi?id=44912

Note: This is a candidate for the 8.0 branch.

Reviewed-by: José Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
e06d6168cb4367728fac68264757a700932c2f73 04-Aug-2012 Marek Olšák <maraeo@gmail.com> mesa: flush vertices in test_framebuffer_completeness
/external/mesa3d/src/mesa/main/fbobject.c
342be8aa88819446220bba680d8e0b628078156f 13-Aug-2012 Ian Romanick <ian.d.romanick@intel.com> mesa: Add skeleton implementations of glInvalidate{Sub,}Framebuffer

These are part of GL_ARB_invalidate_subdata and OpenGL ES 3.0.

v2: Reject aux buffers in core context, and use _mesa_is_desktop_gl and
_mesa_is_gles3. Both suggested by Ken.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
9c1b41879aab2ff7386c547a2ccce7686c018cf5 26-Jul-2012 Eric Anholt <eric@anholt.net> mesa: Replace VersionMajor/VersionMinor with a Version field.

As we get into supporting GL 3.x core, we come across more and more features
of the API that depend on the version number as opposed to just the extension
list. This will let us more sanely do version checks than "(VersionMajor == 3
&& VersionMinor >= 2) || VersionMajor >= 4".

v2: Fix a bad <= 30 check.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
09714c09a40501d82823e42f7461d7b8d7bf11c0 19-Jul-2012 Jordan Justen <jordan.l.justen@intel.com> mesa: add support for using API_OPENGL_CORE

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
a1287f549a3e6527b8cf3bf5b5f563ba63c6f48c 22-Jul-2012 Brian Paul <brianp@vmware.com> mesa: move more format helper functions to glformats.c
/external/mesa3d/src/mesa/main/fbobject.c
592722757648efc723663d6c9dbe874c7475e95c 21-Jul-2012 Marek Olšák <maraeo@gmail.com> mesa: fix format checking when doing a multisample resolve

v2: make it more bullet-proof

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
1a06e8454ec714e950bc88882cd985534a18bf1f 12-Jul-2012 Marek Olšák <maraeo@gmail.com> mesa,st/mesa: implement GL_RGB565 from ARB_ES2_compatibility

This was not implemented, because the spec was changed just recently.

Everything has been in place already.

Gallium has PIPE_FORMAT_B5G6R5_UNORM, while Mesa has MESA_FORMAT_RGB565.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
a82227ce4a60155cb16c47d7315f2efe2e87b0c2 15-Jun-2012 Marek Olšák <maraeo@gmail.com> mesa: if AllocStorage doesn't choose a format, report FRAMEBUFFER_UNSUPPORTED

This allows drivers not to do any allocation in AllocStorage if the storage
cannot be allocated because of an unsupported internalformat + samples combo.

The little ugliness is that AllocStorage is expected to return TRUE in this
case.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
93bcf7825d023d3d7108bc47a7a0929338bba6b9 09-May-2012 Brian Paul <brianp@vmware.com> mesa: add DEBUG_INCOMPLETE_TEXTURE, DEBUG_INCOMPLETE_FBO flags

Instead of having to hack the code to enable these debugging options,
set them through the MESA_DEBUG env var.

Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/main/fbobject.c
b9819a027d08b38abb380526bed9f2908ffeb507 14-Apr-2012 Paul Berry <stereotype441@gmail.com> fbo: Only reuse depth/stencil attachments if the parameters match.

When the user attaches a texture to one of the depth/stencil
attachment points (GL_STENCIL_ATTACHMENT or GL_DEPTH_ATTACHMENT), we
check to see if the same texture is also attached to the other
attachment point, and if so, we re-use the existing texture
attachment. This is necessary to ensure that if the user later
queries what is attached to GL_DEPTH_STENCIL_ATTACHMENT, they will not
receive an error.

If, however, the user attaches buffers to the two different attachment
points using different parameters (e.g. a different miplevel), then we
can't re-use the existing texture attachment, because it is pointing
to the wrong part of the texture. This might occur as a transitory
condition if, for example, if the user attached miplevel zero of a
texture to GL_STENCIL_ATTACHMENT and GL_DEPTH_ATTACHMENT, rendered to
it, and then later attempted to attach miplevel one of the same
texture to GL_STENCIL_ATTACHMENT and GL_DEPTH_ATTACHMENT.

This patch causes Mesa to check that GL_STENCIL_ATTACHMENT and
GL_DEPTH_ATTACHMENT use the same attachment parameters before
attempting to share the texture attachment.

On i965 Gen6, fixes piglit tests
"texturing/depthstencil-render-miplevels 1024 depth_stencil_shared"
and "texturing/depthstencil-render-miplevels 1024
stencil_depth_shared".

Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
cc5b0ffae048824a6bdcaf43e0c8c2dd4a7ff14b 12-Mar-2012 Anuj Phogat <anuj.phogat@gmail.com> mesa: Fix the cause of piglit test fbo-array failure

Handle the special case of glFramebufferTextureLayer() for which we pass
teximage = 0 internally in framebuffer_texture(). This patch makes failing
piglit test fbo-array, fbo-depth-array to pass.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=47126

V4: Removed the duplicated code.
Note: This is a candidate for the stable branches.

Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
534cbbe65867d61258b0704a81908c39b8f7dfb4 12-Mar-2012 Brian Paul <brianp@vmware.com> mesa: add more comments about textarget in framebuffer_texture()
/external/mesa3d/src/mesa/main/fbobject.c
a9523af0e88017d683c19ff238bfc5eb7cb88fd0 02-Mar-2012 Anuj Phogat <anuj.phogat@gmail.com> mesa: Fix valid texture target test in _mesa_GetTexLevelParameteriv()

_mesa_max_texture_levels() is also used to test valid texture target
in _mesa_GetTexLevelParameteriv(). GL_TEXTURE_CUBE_MAP is not allowed
as texture target in glGetTexLevelParameter(). So, this should throw
GL_INVALID_ENUM error.

Few other functions which use _mesa_max_texture_levels() like
getcompressedteximage_error_check() and getteximage_error_check()
also don't accept GL_TEXTURE_CUBE_MAP.

Above fix makes piglit fbo-cubemap test to fail. This is because of
incorrect texture target passed to _mesa_max_texture_levels() in
framebuffer_texture(). Fixing that as well

Note: This is a candidate for the stable branches

Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
a1fd13fff18f95b83fabf3428689ff47abb5c5f8 10-Feb-2012 Eric Anholt <eric@anholt.net> mesa: Only end render-to-texture at bind time for drawbuffers.

If we're only starting for new draw buffers, why would we end for old
read buffers along with draw buffers?
/external/mesa3d/src/mesa/main/fbobject.c
dbe88515c55bd067bc2036345b30e65686a49cf2 11-Feb-2012 Brian Paul <brianp@vmware.com> mesa: fix comment typos in fbobject.c
/external/mesa3d/src/mesa/main/fbobject.c
69c8f468ba93dc2999d4fde8909f8051e910929a 24-Jan-2012 Marek Olšák <maraeo@gmail.com> 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>
/external/mesa3d/src/mesa/main/fbobject.c
3363e87d7d5b3f19294fc770dc7c506c26646010 22-Jan-2012 Marek Olšák <maraeo@gmail.com> 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>
/external/mesa3d/src/mesa/main/fbobject.c
636802f615bb1ef192e3c4c3b9ab0d1c83c5ebe0 22-Jan-2012 Marek Olšák <maraeo@gmail.com> mesa: add missing integer alpha formats to _mesa_base_fbo_format

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
f74d8aacbf2f6d140381e272d17c31162a3481b3 17-Jan-2012 Chad Versace <chad.versace@linux.intel.com> mesa: Loosen glBlitFramebuffer restrictions on depthstencil buffers (v2)

This loosens the format validation in glBlitFramebuffer. When blitting
depth bits, don't require an exact match between the depth formats; only
require that the two formats have the same number of depth bits and the
same depth datatype (float vs uint). Ditto for stencil.

Between S8_Z24 buffers, the EXT_framebuffer_blit spec allows
glBlitFramebuffer to blit the depth and stencil bits separately. So I see
no reason to prevent blitting the depth bits between X8_Z24 and S8_Z24 or
the stencil bits between S8 and S8_Z24. However, we of course don't want
to allow blitting from Z32 to Z32_FLOAT.

Fixes Piglit fbo/fbo-blit-d24s8 on Intel drivers with separate stencil
enabled.

The problem was that, on Intel drivers with separate stencil, the default
framebuffer has separate depth and stencil buffers with formats X8_Z24 and
S8. The test attempts to blit the depth bits from a S8_Z24 buffer into the
default framebuffer.

v2: Check that depth datatypes match.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=44665
Note: This is a candidate for the 8.0 branch.
Reported-by: Xunx Fang <xunx.fang@intel.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
0e8d156c3cd70a67c99a82e42e7875f69b6a5b94 11-Jan-2012 Eric Anholt <eric@anholt.net> mesa: Avoid short-circuiting realloc of renderbuffers to new sample count.

Fixes piglit EXT_framebuffer_multisample/renderbuffer-samples.

Reviewed-by: Brian Paul <brianp@vmware.com>
NOTE: This is a candidate for the 8.0 branch.
/external/mesa3d/src/mesa/main/fbobject.c
36ede89687fe2de213f2637ab7acfb80cfd856cd 12-Jan-2012 Brian Paul <brianp@vmware.com> mesa: use _mesa_is_user_fbo() and _mesa_is_winsys_fbo() functions

Rather than testing the fbo's name against zero.

Reviewed-by: José Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
9b1117095a78bbcbf22fef077f001d0fce969a0e 09-Jan-2012 Brian Paul <brianp@vmware.com> mesa: add missing color buffer datatype check for glBlitFramebuffer()

Reviewed-By: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
b87b857d90008d045175a6673cabbf9e448d21bc 09-Jan-2012 Brian Paul <brianp@vmware.com> mesa: fix error message in _mesa_BlitFramebufferEXT()
/external/mesa3d/src/mesa/main/fbobject.c
3f1fab06844f696de44d9a56e83ff62e8ea576bd 09-Jan-2012 Brian Paul <brianp@vmware.com> mesa: check depth, stencil formats (not depths) in glBlitFramebuffer

We were only comparing the number of depth and stencil bits but the
extension spec actually says the formats must match:

The error INVALID_OPERATION is generated if BlitFramebufferEXT is
called and <mask> includes DEPTH_BUFFER_BIT or STENCIL_BUFFER_BIT
and the source and destination depth or stencil buffer formats do
not match.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
84c38c739e9faae86509eeec2bab4710813f9cc2 09-Jan-2012 Brian Paul <brianp@vmware.com> mesa: add missing error check for linear blit of integer colors

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
45bd5c43ca1f19772f7e1d7abe1c9101ba0f6965 16-Dec-2011 Brian Paul <brianp@vmware.com> mesa: whitespace and comment fixes in fbobject.c
/external/mesa3d/src/mesa/main/fbobject.c
d1240928641f5073865cc2f3ef87bd3b0cd64b04 10-Dec-2011 Brian Paul <brianp@vmware.com> mesa: stop using _Depth, _StencilBuffer fields in _mesa_BlitFramebufferEXT()

We're just looking at the depth/stencil renderbuffers to do error
checking. We don't need to look at the depth/stencil wrappers to do
that. Also, remove pointless readRb = depthRb = NULL assignments.

Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/main/fbobject.c
37bf720da4a165c3fbf22d8ebb87c5c42e02f98e 23-Nov-2011 Brian Paul <brianp@vmware.com> mesa: move _mesa_base_format_has_channel() into image.c

This is where other format-related functions live.

Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/main/fbobject.c
f0b6e9a729d14740fc607c1148032d688f3c5c2c 23-Nov-2011 Brian Paul <brianp@vmware.com> mesa: use _mesa_base_format_has_channel() in fbobject.c queries

Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/main/fbobject.c
f449be660e70aac2aefd2ce84581e137de25520b 27-Nov-2011 Dave Airlie <airlied@redhat.com> mesa/format: add mesa MESA_FORMAT_ARGB2101010_UINT support.

This format is used in the ARB_texture_rgb10_a2ui spec.

It adds core mesa support, texformat + texstore support, format_unpack
and fbobject.c (all patches from list merged + fixed up).

also fixes some whitespace issues.

Parts were:
Reviewed-by: Eric Anholt <eric@anholt.net>

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/mesa/main/fbobject.c
2efa3d4f9fd1e1683c5366d402d8740ecfb688e5 19-Nov-2011 Brian Paul <brianp@vmware.com> mesa: define, use _mesa_is_cube_face() in several places

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
bf8ad170c5af58fe9f49b3ce0f92c4eda9e5d845 10-Nov-2011 Chad Versace <chad.versace@linux.intel.com> mesa: Fix glFramebufferTexture*() for depth and stencil attachments

This patch solves three bugs.

1. When a texture was attached to the GL_DEPTH_STENCIL_ATTACHMENT point,
Mesa attached the texture only to the depth attachment point
gl_framebuffer::Attachment[BUFFER_DEPTH]
and failed to attach it to the stencil attachment point
gl_framebuffer::Attachment[BUFFER_STENCIL]

2. When a texture was attached to the GL_DEPTH_ATTACHMENT point and then
later attached to the GL_STENCIL_ATTACHMENT point, Mesa created two
separate renderbuffer wrappers. This caused a GL error in
glGetFramebufferAttachmentParameteriv().

3. Same as 2, but with depth and stencil juxtaposed.

Fixes Piglit test ARB_framebuffer_object/same-attachment-glFramebufferTexture2D-GL_DEPTH_STENCIL

Note: This is a candidate for the stable branches.
Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
d8ba30af11f1894fcdd9138a8bc71ff054932bb6 22-Oct-2011 Chia-I Wu <olv@lunarg.com> mesa: fix a logic error in glFramebufferTexture2D

Unrecognized texture target should give an error.

Reviewed-by: Brian Paul <brianp@vmware.com>
Acked-by: Jakob Bornecrantz <jakob@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
49f8447acc430944504c658c2d2b4a2ccb3af0bc 25-Oct-2011 Yuanhan Liu <yuanhan.liu@linux.intel.com> mesa: fix the low limit of width and height for glRenderbufferStorage

glRenderbufferStorage man page says:

GL_INVALID_VALUE is generated if either of width or height is negative,
or greater than the value of GL_MAX_RENDERBUFFER_SIZE.

NOTE: this is a candidate for the 7.11 branch

Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
f80e1e7d1de80fd919f376368d1cfc9416dabdc3 18-Oct-2011 Eric Anholt <eric@anholt.net> mesa: Round the argument to PixelStoref instead of truncating.

From the GL 2.1 specification, page 114 (page 128 of the PDF):

"The version of PixelStore that takes a floating-point value
may be used to set any type of parameter; if the parameter is
boolean, then it is set to FALSE if the passed value is 0.0
and TRUE otherwise, while if the parameter is an integer, then
the passed value is rounded to the nearest integer."

Fixes piglit roundmode-pixelstore.
Note: This is a candidate for the 7.11 branch.

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
da2e41cd88dd68b658534390ed69dd422172d07b 03-Oct-2011 Ian Romanick <ian.d.romanick@intel.com> mesa: Only allow queries of window system FBO on desktop GL w/ARB_fbo

Neither OES_framebuffer_object nor EXT_framebuffer_object allow
querying the window system FBO.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
a8328cc132e9edd55141e8e7822909a85bda12d6 03-Oct-2011 Ian Romanick <ian.d.romanick@intel.com> mesa: Accept GL_DEPTH and GL_STENCIL for window system FBO only

Previously GL_DEPTH_BUFFER and GL_STENCIL_BUFFER were (incorrectly)
allowed for both. Those enums don't even really exist! Now GL_DEPTH
and GL_STENCIL are only allowed for the window system FBO.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
9c697a9d004da4aa7a26d3bda17cc473f50345ea 04-Oct-2011 Dave Airlie <airlied@redhat.com> mesa: update fbo format tablet for integer types.

This updates the fbo format table for the integer types.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/mesa/main/fbobject.c
2e3a4ab818a798b592210f7ae7ec149b3b3c0a05 03-Oct-2011 Ian Romanick <ian.d.romanick@intel.com> mesa/es: Allow other color attachments in OpenGL ES 2.0

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
6dd8e7686955e9fdb56f13a1511133d9ed2d7604 21-Sep-2011 Ian Romanick <ian.d.romanick@intel.com> mesa/es: Validate FBO target enum in Mesa code rather than the ES wrapper

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
7e4cb32d05cdf948a60632270e75b5513e780b28 02-Oct-2011 Ian Romanick <ian.d.romanick@intel.com> mesa/es: Validate FBO attachment enum in Mesa code rather than the ES wrapper

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
9520f483b8f1e45fa474674b415554988de5d8d3 01-Oct-2011 Brian Paul <brianp@vmware.com> mesa: s/INLINE/inline/

INLINE is still seen in some files (some generated files, etc) but this
is a good start.

Acked-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
55d232a81566cf7ab8855c42e2ef1a280276a04c 26-Aug-2011 Ian Romanick <ian.d.romanick@intel.com> mesa: Remove all mention of MESA_FORMAT_CI8

Nothing in Mesa supports color-index textures, and most of the other
infrastructure that could allow such support has already been removed.
This puts the final nail in the coffin.

Also clean out some GL_COLOR_INDEX comments in formats.c.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
3e9dc51f82276e57ecfb4e2725d88d83dbedcd85 18-Aug-2011 Brian Paul <brianp@vmware.com> mesa: handle array textures in GenerateMipmap(), FramebufferTexture1/2D()

This was an unfinished to-do item before.
With this patch and the two preceeding patches, piglit's
fbo-generatemipmap-array test runs and passes instead of generating
a GL error and dying on an assertion.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
352cab498a6210e1fdd57d6be2a30d33024ef37f 18-Aug-2011 Brian Paul <brianp@vmware.com> mesa: restructure error checking in _mesa_FramebufferTexture1D/2DEXT()

In anticipation of adding more texture targets.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
ccecc08f79afc020c8c0acface04a8e53e3a7c32 18-Aug-2011 Brian Paul <brianp@vmware.com> mesa: fix incorrect error code in _mesa_FramebufferTexture1D/3DEXT()

The spec says GL_INVALID_OPERATION is generated when texture!=0 and
textarget is not a legal value. We had this right for the 2D function.
/external/mesa3d/src/mesa/main/fbobject.c
000896c0bb99f356e52854608a29476d3ade387c 19-Jul-2011 Marek Olšák <maraeo@gmail.com> mesa: GLES2 should return different error enums for invalid fbo queries

ES 2.0.25 page 127 says:

If the value of FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is NONE, then
querying any other pname will generate INVALID_ENUM.

See also:
b9e9df78a03edb35472c2e231aef4747e09db792

NOTE: This is a candidate for the 7.10 and 7.11 branches.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/main/fbobject.c
83478e5d5944e1fc320e8cfb10ba75055bbea3fd 10-Jul-2011 Marek Olšák <maraeo@gmail.com> mesa: return early if mask is cleared to zero in BlitFramebuffer

From ARB_framebuffer_object:
If a buffer is specified in <mask> and does not exist in both the
read and draw framebuffers, the corresponding bit is silently
ignored.
/external/mesa3d/src/mesa/main/fbobject.c
1165280cbd37dee1e499358633478ab869de21df 01-Jun-2011 Marek Olšák <maraeo@gmail.com> mesa: initial ARB_depth_buffer_float support

Using GL_NONE as DataType of Z32_FLOAT_X24S8, not sure what I should put there.
The spec says the type is n/a.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/main/fbobject.c
6f998b58bc61f2507cd53204d7567299379c42ca 19-Jun-2011 Eric Anholt <eric@anholt.net> mesa: Fix render-to-texture regression.

Accidentally introduced in fc8c4a3a7b92a1134cd3a9312063abba9e14b0fe.
Fixes fbo-drawbuffers-maxtargets and friends.
/external/mesa3d/src/mesa/main/fbobject.c
fc8c4a3a7b92a1134cd3a9312063abba9e14b0fe 16-Jun-2011 Brian Paul <brianp@vmware.com> mesa: use helper functions to distinguish between user/winsys FBOs

And replace IS_CUBE_FACE() macro w/ inline function.
/external/mesa3d/src/mesa/main/fbobject.c
bb4758669c82f8979a56524db1c04ce662c783d8 07-Jun-2011 Ian Romanick <ian.d.romanick@intel.com> mesa: Ignore blits to/from missing buffers

The EXT_framebuffer_object spec (and later specs) say:

"If a buffer is specified in <mask> and does not exist in both
the read and draw framebuffers, the corresponding bit is silently
ignored."

Check for color, depth, and stencil that the source and destination
FBOs have the specified buffers. If the buffer is missing, remove the
bit from the blit request mask and continue.

Fixes the crash in piglit test 'fbo-missing-attachment-blit from', and
fixes 'fbo-missing-attachment-blit es2 from'.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=37739
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Eric Anholt <eric@anholt.net>

NOTE: This is a candidate for the stable branches.
/external/mesa3d/src/mesa/main/fbobject.c
b9e9df78a03edb35472c2e231aef4747e09db792 31-May-2011 Marek Olšák <maraeo@gmail.com> mesa: queries of non-existent FBO attachments should return INVALID_OPERATION

OpenGL 4.0 Compatibility, page 449:

If the value of FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is NONE, no
framebuffer is bound to target. In this case querying pname FRAMEBUFFER_-
ATTACHMENT_OBJECT_NAME will return zero, and all other queries will generate
an INVALID_OPERATION error.

Reviewed-by: Chad Versace <chad@chad-versace.us>
/external/mesa3d/src/mesa/main/fbobject.c
d3451f7f9c095204105259bb989428709fc1fdf0 25-May-2011 Eric Anholt <eric@anholt.net> mesa: Allow NULL read/draw in complete FBOs in ARB_ES2_compatibility.

From the ARB_ES2_compatibility spec:

"(8) How should we handle draw buffer completeness?

RESOLVED: Remove draw/readbuffer completeness checks, and treat
drawbuffers referring to missing attachments as if they were NONE."

Fixes arb_es2_compatibility-drawbuffers when the short-circuit for
ARB_ES2_compatibility in the previous commit is dropped.

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
a3ac28a736c56cbdee0daa6e30c7a8b984a90ec6 14-May-2011 Marek Olšák <maraeo@gmail.com> mesa: make RGB9_E5 non-renderable on swrast again

_BaseFormat for RGB9_E5 is GL_RGBA due to the previous revert.
/external/mesa3d/src/mesa/main/fbobject.c
631d23daa91c569bf268a2191bd466df73a64263 26-Apr-2011 Marek Olšák <maraeo@gmail.com> mesa: implement EXT_packed_float

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/main/fbobject.c
9d7698c468f4ea7da8bb4ec00520c98f11cca0fa 26-Apr-2011 Marek Olšák <maraeo@gmail.com> mesa: implement EXT_texture_shared_exponent

swrast support done.

There is no renderbuffer support in swrast, because it's not required
by the extension.

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
15f99d13626b42f517467fd884a379cc7475e5d1 16-Feb-2011 Marek Olšák <maraeo@gmail.com> mesa: finish up ARB_texture_float

Squashed commit of the following:

Author: Marek Olšák <maraeo@gmail.com>

mesa: handle floating-point formats in _mesa_base_fbo_format
mesa: add ARB/ATI_texture_float, remove MESAX_texture_float

commit 123bb110852739dffadcc81ad80b005b1c4f586d
Author: Luca Barbieri <luca@luca-barbieri.com>
Date: Wed Aug 25 01:35:42 2010 +0200

mesa: compute floatMode for FBOs and return it on RGBA_FLOAT_MODE
/external/mesa3d/src/mesa/main/fbobject.c
c7339d42c603048c0f89276da6576647c4421ba0 05-Apr-2011 Fabian Bieler <der.fabe@gmx.net> mesa: Guard against null pointer deref in fbo validation

This matches the behaviour below when numSamples is compared.

At least with the gallium state tracker this can actually occur if st_render_texture fails.

Signed-off-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
db0f9e701d59dcfcd3b50f4d245897692f27fec9 05-Apr-2011 Brian Paul <brianp@vmware.com> mesa: added _mesa_get_attachment_teximage() helpers
/external/mesa3d/src/mesa/main/fbobject.c
0be369975fdfa79bcb702d0c13aa0a221055f61b 18-Mar-2011 Marek Olšák <maraeo@gmail.com> mesa: initial EXT_texture_snorm support

The component ordering of some formats has been been reversed to match
Gallium types.
/external/mesa3d/src/mesa/main/fbobject.c
4f94e0b76ab75a5f0d629431395754b6339d3a98 29-Mar-2011 Vinson Lee <vlee@vmware.com> mesa: Add missing parentheses in glBlitFramebufferEXT error strings.
/external/mesa3d/src/mesa/main/fbobject.c
a674ef7814ea16622b6002009ffe27a55cb500bf 07-Mar-2011 Marek Olšák <maraeo@gmail.com> mesa: return after invalidating renderbuffer
/external/mesa3d/src/mesa/main/fbobject.c
df818d572e4ddb1ceccd22a538bf98ce01caffee 06-Mar-2011 Marek Olšák <maraeo@gmail.com> mesa: invalidate framebuffer if internal format of renderbuffer is changed

RenderTexture doesn't have to be called in invalidate_rb, I guess.
/external/mesa3d/src/mesa/main/fbobject.c
c6991433ef343a8cbaf3f4cfacb74ddcd049c6a4 01-Mar-2011 Brian Paul <brianp@vmware.com> mesa: consolidate framebuffer target lookup code
/external/mesa3d/src/mesa/main/fbobject.c
ca1b5515621d4ab9e90e27533fbc0fafa5cf641b 01-Mar-2011 Brian Paul <brianp@vmware.com> mesa: s/mesaFormat/attFormat/
/external/mesa3d/src/mesa/main/fbobject.c
6364d75008b4fa580c1cb47c59ba1cf3e0caa6cd 18-Feb-2011 Brian Paul <brianp@vmware.com> mesa: MESA_VERBOSE logging for glRead/Draw/CopyPixels, glBlitFramebuffer
/external/mesa3d/src/mesa/main/fbobject.c
88ffa9ce5b8e5fe2b93238f8b9a7a888be28324e 28-Jan-2011 Dave Airlie <airlied@gmail.com> mesa/965: add support for GL_EXT_framebuffer_sRGB (v2)

This adds i965 support for GL_EXT_framebuffer_sRGB, it introduces a new
constant to say that the driver can support sRGB enabled FBOs since enabling
the extension doesn't mean the driver can actually support sRGB.

Also adds the suggested state flush in the core code suggested by Brian.

fix the ARB_fbo color encoding.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/mesa/main/fbobject.c
b3cfcdf92327184513635db8312e698e22664714 29-Jan-2011 Brian Paul <brianp@vmware.com> mesa: fix typo, wrap long line
/external/mesa3d/src/mesa/main/fbobject.c
d30156525f869d11445575767298900fb6121c6a 25-Jan-2011 Brian Paul <brianp@vmware.com> mesa: add red, red/green formats in _mesa_base_fbo_format()
/external/mesa3d/src/mesa/main/fbobject.c
62c66b34303303e6786652efa611a100ae64439a 25-Jan-2011 Brian Paul <brianp@vmware.com> mesa: plug in fallback function for ctx->Driver.ValidateFramebuffer()

The software renderer doesn't support GL_ALPHA, GL_LUMINANCE, etc
so we should report GL_FRAMEBUFFER_UNSUPPORTED during FBO validation.
/external/mesa3d/src/mesa/main/fbobject.c
976ea9d76b44b6e654bd38e3d00f20517be518e0 25-Jan-2011 Brian Paul <brianp@vmware.com> mesa: new cases in _mesa_base_fbo_format()

The set of internalFormat parameters accepted by glRenderBufferStorage
depends on the EXT vs. ARB version of framebuffer_object. The later
added support for GL_ALPHA, GL_LUMINANCE, etc. formats. Note that
these formats might be legal but might not be supported. That should
be checked with glCheckFramebufferStatus().
/external/mesa3d/src/mesa/main/fbobject.c
f41bbc7c44565c7f3949340a4e2fdf78a8cebf3f 25-Jan-2011 Brian Paul <brianp@vmware.com> Revert "mesa: Simplify _mesa_base_fbo_format by making it exceptions to teximages."

This reverts commit 65c41d55a06137115f0b4c67f9a3fd2708f0b625.

There really are quite a few differences in the set of internal
formats allowed by glTexImage and glRenderbufferStorage.
/external/mesa3d/src/mesa/main/fbobject.c
81ae8c6313adbe7681a73636dee4d5d34334d4d7 23-Jan-2011 Marek Olšák <maraeo@gmail.com> mesa: return GL_LINEAR for ..COLOR_ENCODING if framebuffer_sRGB is unsupported

Signed-off-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
65c41d55a06137115f0b4c67f9a3fd2708f0b625 13-Jan-2011 Eric Anholt <eric@anholt.net> mesa: Simplify _mesa_base_fbo_format by making it exceptions to teximages.

The comment of "this is just like teximages except for..." is a pretty
good clue that we're handling this wrong. By just using the teximage
code, we catch a bunch of cases we'd missed, like GL_RED and GL_RG.
/external/mesa3d/src/mesa/main/fbobject.c
7f652fc523b56a3c13a90b417f8d32e7a702ed3d 14-Jan-2011 Dave Airlie <airlied@gmail.com> srgb: fix fbo base format picking.

Pointed out by Brian.
/external/mesa3d/src/mesa/main/fbobject.c
8c8e26d66ae41e900cc88521da9c0dc02803d7d2 13-Jan-2011 Dave Airlie <airlied@gmail.com> mesa/fbo: prevent assert trigger on i965 with piglit fbo-srgb test.
/external/mesa3d/src/mesa/main/fbobject.c
dd973cd9e81abf1c0bc1880c7905f3277d4361a0 13-Jan-2011 Brian Paul <brianp@vmware.com> mesa: check for dummy renderbuffer in _mesa_FramebufferRenderbufferEXT()

Fixes a failed assertion when a renderbuffer ID that was gen'd but not
previously bound was passed to glFramebufferRenderbuffer(). Generate
the same error that NVIDIA does.

NOTE: This is a candidate for the 7.9 and 7.10 branches.
/external/mesa3d/src/mesa/main/fbobject.c
db61b9ce39bccc43140357652ceb78baaf2aea44 07-Jan-2011 Vinson Lee <vlee@vmware.com> mesa: Directly include mfeatures.h in files that perform feature tests.
/external/mesa3d/src/mesa/main/fbobject.c
0117da40cd7edd3d165bb28569c289b37eca12b9 06-Jan-2011 Vinson Lee <vlee@vmware.com> mesa: Include mtypes.h in files that use gl_context struct.

Directly include mtypes.h if a file uses a gl_context struct. This
allows future removal of headers that are not strictly necessary but
indirectly include mtypes.h for a file.
/external/mesa3d/src/mesa/main/fbobject.c
5f13c39484859393cec11b3aa24e541bea8e220d 03-Jan-2011 Eric Anholt <eric@anholt.net> mesa: Also report the number of renderbuffer alpha bits for GL_LUMINANCE_ALPHA.

Noticed by code inspection.
/external/mesa3d/src/mesa/main/fbobject.c
f45aea0ec912159eb6aa4ef2ba2bdcd022bc8aca 03-Jan-2011 Eric Anholt <eric@anholt.net> mesa: Also report renderbuffer red/green size for GL_RED and GL_RG.

Noticed by code inspection.
/external/mesa3d/src/mesa/main/fbobject.c
059cca92a819e20e0d834605a3a7d277eaf88d9f 03-Jan-2011 Eric Anholt <eric@anholt.net> mesa: Use the common logic for "is this baseformat a color format?"

When figuring out whether a renderbuffer should be used to set the
visual bits of an FBO, we were missing important baseformats like
GL_RED, GL_RG, and GL_LUMINANCE.
/external/mesa3d/src/mesa/main/fbobject.c
beac6ee62aea196d6e670abd4b198190e33e6cb1 03-Jan-2011 Eric Anholt <eric@anholt.net> mesa: Allow color renderbuffers besides just RGB and RGBA.

We did so already for textures to do ARB_fbo's
GL_ALPHA/GL_LUMINANCE/etc. support and for ARB_texture_rg's GL_RED and
GL_RG, but this path was missed.
/external/mesa3d/src/mesa/main/fbobject.c
ecb7cc3319a74bda1edc226a1103f0e1a86d92a9 06-Dec-2010 Brian Paul <brianp@vmware.com> mesa: test for cube map completeness in glGenerateMipmap()

The texture is not cube complete if the base level images aren't of
the same size and format.

NOTE: This is a candidate for the 7.9 branch.
/external/mesa3d/src/mesa/main/fbobject.c
6d13ec7dc082aea9a8ce04dd8e045e77e5921d8a 03-Dec-2010 Brian Paul <brianp@vmware.com> mesa: return GL_FRAMEBUFFER_DEFAULT as FBO attachment type

If querying the default/window-system FBO's attachment type, return
GL_FRAMEBUFFER_DEFAULT (per the GL_ARB_framebuffer_object spec).

See http://bugs.freedesktop.org/show_bug.cgi?id=31947

NOTE: This is a candidate for the 7.9 branch.
/external/mesa3d/src/mesa/main/fbobject.c
20cf1851d82d6135b92c20323266156eb6ad5ffe 03-Dec-2010 Brian Paul <brianp@vmware.com> mesa: fix GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME query

Return 0 instead of generating an error.

See http://bugs.freedesktop.org/show_bug.cgi?id=30993

Note that piglit fbo-getframebufferattachmentparameter-01 still does
not pass. But Mesa behaves the same as the NVIDIA driver in this case.
Perhaps the test is incorrect.

NOTE: This is a candidate for the 7.9 branch.
/external/mesa3d/src/mesa/main/fbobject.c
412b9608838b872bc294569b3ee913343a7e66f6 27-Oct-2010 Brian Paul <brianp@vmware.com> mesa: rename function to _mesa_is_format_integer_color()

Be a bit more clear about its operation.
/external/mesa3d/src/mesa/main/fbobject.c
6e618535901ac71a74ffb80d3da7c841a82eec02 02-Oct-2010 Marek Olšák <maraeo@gmail.com> mesa: allow FBO attachments of formats LUMINANCE, LUMINANCE_ALPHA, and INTENSITY

As per the GL_ARB_framebuffer_object specification.

Signed-off-by: Marek Olšák <maraeo@gmail.com>
/external/mesa3d/src/mesa/main/fbobject.c
c7d18374dd97ee78e80d1e65c7b97f7611ebd2c8 23-Oct-2010 Brian Paul <brianp@vmware.com> mesa: compute _IntegerColor field in _mesa_test_framebuffer_completeness()
/external/mesa3d/src/mesa/main/fbobject.c
e67f6ee96e1aaeaba70e24d057c21172fa36f165 22-Oct-2010 Brian Paul <brianp@vmware.com> mesa: simplify fbo format checking code
/external/mesa3d/src/mesa/main/fbobject.c
f9288540ecdc896a330f6ce7b7d3b16ee99c3474 22-Oct-2010 Brian Paul <brianp@vmware.com> mesa: 80-column wrapping
/external/mesa3d/src/mesa/main/fbobject.c
f9995b30756140724f41daf963fa06167912be7f 12-Oct-2010 Kristian Høgsberg <krh@bitplanet.net> Drop GLcontext typedef and use struct gl_context instead
/external/mesa3d/src/mesa/main/fbobject.c
421f4d8dc1e324067534719fc096e82fd9ef3017 01-Oct-2010 Ian Romanick <ian.d.romanick@intel.com> ARB_texture_rg: Allow RED and RG textures as FBO color buffer attachments
/external/mesa3d/src/mesa/main/fbobject.c
144356f9925fa9d892faa64fa7264ef9f1d7e2b4 09-Sep-2010 Kristian Høgsberg <krh@bitplanet.net> mesa: Don't reuse DummyFramebuffer as the incomplete framebuffer

Binding framebuffer 0 on a context that doesn't have a winsys drawable
will try to bind the incomplete framebuffer. That fails when that's
also the dummy framebuffer.
/external/mesa3d/src/mesa/main/fbobject.c
50a3349bee04088bee3491622d6ef3c032d01eac 07-Sep-2010 Eric Anholt <eric@anholt.net> mesa: Set the base format of GL_ALPHA FBOs and teach swrast about it.

Fixes assertion failures in fbo-alpha with a debug build of Mesa.
Bug #29781.
/external/mesa3d/src/mesa/main/fbobject.c
c5dde53f4e42612518cd927bb58f08c0e22db17a 03-Sep-2010 Vinson Lee <vlee@vmware.com> mesa: Fix printf-like warnings.
/external/mesa3d/src/mesa/main/fbobject.c
07317012369c7b2662a8357fa4ea15453c4e277b 01-Sep-2010 Vladimir Vukicevic <vladimir@pobox.com> mesa: initialize dummy framebuffer and renderbuffer mutexes

See fd.o bug 29909.

Signed-off-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/main/fbobject.c
9456e22c7a8803bed1146a89e7581badf0ae8064 04-Jun-2010 Kristian Høgsberg <krh@bitplanet.net> intel: Implement EGL_KHR_surfaceless extension
/external/mesa3d/src/mesa/main/fbobject.c
da7bd6a90e1fee5c16327338fd251c0f6be34e36 28-Jun-2010 Zack Rusin <zackr@vmware.com> mesa: initial support for ARB_geometry_shader4

laying down the foundation for everything and implementing most of the
stuff.
linking, gl_VerticesIn and multidimensional inputs are left.
/external/mesa3d/src/mesa/main/fbobject.c
61ec20581696004acad516b14ca4a8a5ae9e6f1d 22-Jun-2010 Brian Paul <brianp@vmware.com> mesa: fix attachment error checking for glGetFramebufferAttachmentParameteriv()

This is a follow-on to commit 80dfec3e53fd5b5c8c31fb16376c9910258c91b0.

The valid attachments for glGetFramebufferAttachmentParameteriv() depends
on whether we're querying the default FBO or a user-created FBO.
/external/mesa3d/src/mesa/main/fbobject.c
80dfec3e53fd5b5c8c31fb16376c9910258c91b0 15-Jun-2010 Kristian Høgsberg <krh@bitplanet.net> mesa: Allow querying the system FBO in GetFramebufferAttachmentParameteriv

If the default framebuffer is bound to <target>, then
<attachment> must be one of FRONT_LEFT, FRONT_RIGHT, BACK_LEFT,
BACK_RIGHT, AUXi, DEPTH_BUFFER, or STENCIL_BUFFER, identifying a
color buffer, the depth buffer, or the stencil buffer, and
<pname> may be FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE or
FRAMEBUFFER_ATTACHMENT_OBJECT_NAME.

as well as these <pname> values

FRAMEBUFFER_ATTACHMENT_RED_SIZE,
FRAMEBUFFER_ATTACHMENT_GREEN_SIZE,
FRAMEBUFFER_ATTACHMENT_BLUE_SIZE,
FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE,
FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE,
FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE,
FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE, or
FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING.

https://bugs.freedesktop.org/show_bug.cgi?id=28551
/external/mesa3d/src/mesa/main/fbobject.c
262cdbd957b68878adf1fb3edcf478604ed9f171 25-May-2010 Eric Anholt <eric@anholt.net> mesa: Allow GL_ALPHA FBOs with ARB_framebuffer_object.

Drivers still reject them today, but cairo would like to use these.
/external/mesa3d/src/mesa/main/fbobject.c
23c5b21c1601ba6c62d360d585a4a7fd6b64caa8 28-May-2010 Brian Paul <brianp@vmware.com> mesa: whitespace and 80 column wrapping
/external/mesa3d/src/mesa/main/fbobject.c
a504f2387e2bb47025c7406d9a466a042dc09e61 27-May-2010 Brian Paul <brianp@vmware.com> mesa: fix incorrect GL_DEPTH_STENCIL_ATTACHMENT format check

We want to check the incoming renderbuffer format, not the (potentially
non-existant) current attachment.

Fixes segfault w/ fbotexture -ds2.

NOTE: this will be applied to the 7.8 branch too.
/external/mesa3d/src/mesa/main/fbobject.c
e88cef3c9d5de2a5dccd9ad770952a9d2347ba0d 24-May-2010 Kristian Høgsberg <krh@bitplanet.net> mesa: Reenable check for GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT

The check was disabled when FEATURE_OES_framebuffer_object was enabled,
since that used to mean we weren't implementing regular OpenGL semantics.
Now that we can compile in support for multiple APIs, change the #ifdef to
compile the check in when FEATURE_GL is enabled and enable the check for
contexts that implement OpenGL at runtime.
/external/mesa3d/src/mesa/main/fbobject.c
8ea614832d62554ada44d0a0ef7dc96ec9a8f154 10-May-2010 Brian Paul <brianp@vmware.com> mesa: use GL_RGBA16_SNORM for accum buffer
/external/mesa3d/src/mesa/main/fbobject.c
61d94dd207459e0c42d98c9d6eb7df5eabdfd8a4 23-Apr-2010 Kristian Høgsberg <krh@bitplanet.net> mesa: Move GL_RGB565 workaround into fbobject.c
/external/mesa3d/src/mesa/main/fbobject.c
2002e4d06e2627241cd4af88f65b54d2101ef151 06-Apr-2010 Chia-I Wu <olv@lunarg.com> mesa: Add OES_EGL_image to extension list.
/external/mesa3d/src/mesa/main/fbobject.c
066477ab226c6bf9598511ebe9134cb360fb54a2 30-Mar-2010 Chia-I Wu <olv@lunarg.com> mesa: Add missing features.

Add features tested in the code but missing from mfeatures.h.

This also fixes some tests of features. They should be tested with
"#if", not "#ifdef".
/external/mesa3d/src/mesa/main/fbobject.c
8829e063aa87ade63c49d3df27a7edd0c63cf160 20-Mar-2010 Brian Paul <brianp@vmware.com> mesa: added GL3 buffer attachment aliases
/external/mesa3d/src/mesa/main/fbobject.c
7a2e32d68494b82813ea6a07bb62d1c21202cad1 10-Mar-2010 Brian Paul <brianp@vmware.com> mesa: raise an error when trying to bind non-existant texture to FBO

If the user calls glRenderBufferTexture(texture=N) but texture N
doesn't name an existing texture, raise GL_INVALID_ENUM.

Plus, add a comment about some questionable error checking code in
framebuffer_texture(). Ian?
/external/mesa3d/src/mesa/main/fbobject.c
a8dafe713f4b45fd09c678e1ca9fbe4eab16f8be 26-Feb-2010 Brian Paul <brianp@vmware.com> mesa: remove redundant call to _mesa_base_fbo_format()
/external/mesa3d/src/mesa/main/fbobject.c
51b799288a405be3f4cdbfc7221221399512992a 24-Feb-2010 Brian Paul <brianp@vmware.com> mesa: put declaration before code
/external/mesa3d/src/mesa/main/fbobject.c
d1dc5b124e133379be5bb57b68733c09c0e04f71 11-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> core: Implement GL_OES_EGL_image entry points
/external/mesa3d/src/mesa/main/fbobject.c
298be2b028263b2c343a707662c6fbfa18293cb2 19-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> Replace the _mesa_*printf() wrappers with the plain libc versions
/external/mesa3d/src/mesa/main/fbobject.c
ca0d048e4e0cc5885cd309cdf9057cfe6044924e 28-Jan-2010 Brian Paul <brianp@vmware.com> mesa: fix int/uint comparison warnings

Reported by Karl Schultz.
/external/mesa3d/src/mesa/main/fbobject.c
43867acb6afc7fad26cdc2f22b2a3bb6eeefb2da 26-Jan-2010 Brian Paul <brianp@vmware.com> Merge branch 'mesa_7_7_branch'

Merging was easier than cherry picking in this instance.
68ca19afd7299fa9c686f95d53b7e14df37aba4c 26-Jan-2010 Erik Wien <wien@start.no> mesa: Don't bind DRAW/READ_FRAMEBUFFER separately without FBO blit support

If GL_EXT_framebuffer_blit was not supported _mesa_DeleteFramebuffersEXT
would raise an error when deleting the currently bound framebuffer. This
because it tried to bind the default DRAW- and READ_FRAMEBUFFER separately.
This patch binds the default FRAMEBUFFER instead in that case.

Encountered in the fbo/fbo-copyteximage piglit test on R600.

Patch cleaned up a bit by Brian Paul.
/external/mesa3d/src/mesa/main/fbobject.c
cd8614b0287dc5a69725ec4ee0208fad61f7789e 22-Jan-2010 Brian Paul <brianp@vmware.com> Merge branch 'mesa_7_7_branch'

Conflicts:
src/gallium/auxiliary/draw/draw_context.c
src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
src/gallium/auxiliary/pipebuffer/Makefile
src/gallium/auxiliary/pipebuffer/SConscript
src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c
src/gallium/auxiliary/tgsi/tgsi_scan.c
src/gallium/drivers/i915/i915_surface.c
src/gallium/drivers/i915/i915_texture.c
src/gallium/drivers/llvmpipe/lp_setup.c
src/gallium/drivers/llvmpipe/lp_tex_sample_c.c
src/gallium/drivers/llvmpipe/lp_texture.c
src/gallium/drivers/softpipe/sp_prim_vbuf.c
src/gallium/state_trackers/xorg/xorg_dri2.c
src/gallium/winsys/drm/intel/gem/intel_drm_api.c
src/gallium/winsys/drm/nouveau/drm/nouveau_drm_api.c
src/gallium/winsys/drm/radeon/core/radeon_drm.c
src/gallium/winsys/drm/vmware/core/vmw_screen_dri.c
src/mesa/state_tracker/st_cb_clear.c
031f23ac3a3a9219f93268fb4517ab0f80d9be42 20-Jan-2010 Brian Paul <brianp@vmware.com> mesa: added comment about future FBO formats
/external/mesa3d/src/mesa/main/fbobject.c
536e3c9168c315651210ca853eb8cb4423f9f71c 19-Jan-2010 Vinson Lee <vlee@vmware.com> mesa: Remove unnecessary headers from fbobject.c.
/external/mesa3d/src/mesa/main/fbobject.c
652828ec0efd1a7d7a8b497e0324a7bd9f66fd17 16-Nov-2009 Brian Paul <brianp@vmware.com> mesa: check BaseLevel, MaxLevel in _mesa_GenerateMipmapEXT()
/external/mesa3d/src/mesa/main/fbobject.c
a719395b458ef59efe4e8746e390b006a0b8792b 16-Nov-2009 Brian Paul <brianp@vmware.com> mesa: use _mesa_get_current_tex_object()
/external/mesa3d/src/mesa/main/fbobject.c
a65b84d9554815af891d793012eba17de80cbfa3 11-Nov-2009 brian <brian@cvp965.(none)> mesa: fix some begin/end render-to-texture logic

Before, we weren't aggressive enough in checking for the start or end
of render-to-texture. In particular, if only the ctx->ReadBuffer had
texture attachments, we were treating that as a render-to-texture case.

This fixes a regression from commit 75bdbdd90b15c8704d87ca195a364ff6a42edbb1
"intel: Don't validate in a texture image used as a render target."
/external/mesa3d/src/mesa/main/fbobject.c
bc569cd6bee0550c7f83412476b6b39e89c51ac3 11-Nov-2009 brian <brian@cvp965.(none)> mesa: move check_begin/end_texture_render() calls
/external/mesa3d/src/mesa/main/fbobject.c
d96e55fa7bbbc033f47dbeb942b872c6d21eb42d 10-Nov-2009 brian <brian@cvp965.(none)> mesa: new vars: oldDrawFb, oldReadFb in _mesa_BindFramebufferEXT()
/external/mesa3d/src/mesa/main/fbobject.c
e6f60d30375c637c0823a9aade8098a45f70d6a7 10-Nov-2009 brian <brian@cvp965.(none)> mesa: rename vars in _mesa_BindFramebufferEXT()
/external/mesa3d/src/mesa/main/fbobject.c
a492ab765a9e36c5f224f0d58e172ca6ecf25a1c 10-Nov-2009 brian <brian@cvp965.(none)> mesa: added comment for check_begin_texture_render()
/external/mesa3d/src/mesa/main/fbobject.c
6b68482e6869bdc03339ef5380d7273e14a61a56 04-Nov-2009 Eric Anholt <eric@anholt.net> mesa: Attempt to pair up Driver.RenderTexture and FinishRenderTexture()

This is probably not 100% complete (bind vs unbind may still not pair up
exactly), but it should help out drivers which are relying on
FinishRenderTexture to be called when we're done rendering to a particular
texture level, not just when we're done rendering to the object at all.
This is the case for the one consumer of FinishRenderTexture() so far: the
gallium state tracker. Noticed when trying to make use of FRT() in the intel
driver.
/external/mesa3d/src/mesa/main/fbobject.c
800e553e7a1703e33e54f45d0638b67001665fc5 02-Nov-2009 Brian Paul <brianp@vmware.com> mesa: clean-up, remove some flushing in FBO functions

Remove some unneeded flushes.
Replace FLUSH_CURRENT w/ FLUSH_VERTICES in other places.
/external/mesa3d/src/mesa/main/fbobject.c
4de18fb093e700ee33ed49035ab77f4a9453329a 02-Nov-2009 Brian Paul <brianp@vmware.com> mesa: fix indentation
/external/mesa3d/src/mesa/main/fbobject.c
18af75e5011cc31b52d62befba2cacfd353ce638 02-Nov-2009 Brian Paul <brianp@vmware.com> mesa: avoid extraneous _NEW_BUFFER changes in _mesa_BindFramebufferEXT()
/external/mesa3d/src/mesa/main/fbobject.c
9927d7f31c5c46c7b061cf8e13324ac4a837c4b7 02-Oct-2009 Chia-I Wu <olvaffe@gmail.com> mesa: Fix compilation errors and warnings when features are disabled.

Some of the fixes are cherry-picked from opengl-es branch.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
/external/mesa3d/src/mesa/main/fbobject.c
1f196b786d6bd0c6a5dbdc638574ff716cc3d4de 29-Oct-2009 Brian Paul <brianp@vmware.com> Merge branch 'texformat-rework'

Conflicts:
src/mesa/drivers/dri/radeon/radeon_fbo.c
src/mesa/drivers/dri/s3v/s3v_tex.c
src/mesa/drivers/dri/s3v/s3v_xmesa.c
src/mesa/drivers/dri/trident/trident_context.c
src/mesa/main/debug.c
src/mesa/main/mipmap.c
src/mesa/main/texformat.c
src/mesa/main/texgetimage.c
21f8d31cfd9612fdf2bd39901472a6f3f11ddfda 27-Oct-2009 Brian Paul <brianp@vmware.com> mesa: debug code for glBlitFramebuffer()
/external/mesa3d/src/mesa/main/fbobject.c
46a784b7fd2dcab97c26d5ca02fb8f74945ba157 24-Oct-2009 Brian Paul <brianp@vmware.com> Merge branch 'mesa_7_6_branch'
26f1ad65b988fe55ae12a99994e4c63aaab899a0 24-Oct-2009 Brian Paul <brianp@vmware.com> mesa: simplify att->CubeMapFace assignment
/external/mesa3d/src/mesa/main/fbobject.c
9b50ceac03975e75940713313363df1bdd5c19dc 23-Oct-2009 Brian Paul <brianp@vmware.com> mesa: more detailed error messages in fbo code
/external/mesa3d/src/mesa/main/fbobject.c
dc8b139aa23899b00baa919fd7f46c74bf4ef205 24-Oct-2009 Brian Paul <brianp@vmware.com> mesa: remove FBO texture depth/stencil test

The texture format should not be checked until validation time since
the format might be changed by a subsequent glTexImage() call.
/external/mesa3d/src/mesa/main/fbobject.c
b5d6a8e88fb970bce596adc10a8b22f6758591f0 13-Oct-2009 Brian Paul <brianp@vmware.com> mesa: minor clean up in check_begin_texture_render()
/external/mesa3d/src/mesa/main/fbobject.c
45e76d2665b38ba3787548310efc59e969124c01 09-Oct-2009 Brian Paul <brianp@vmware.com> mesa: remove a bunch of gl_renderbuffer fields

_ActualFormat is replaced by Format (MESA_FORMAT_x).
ColorEncoding, ComponentType, RedBits, GreenBits, BlueBits, etc. are
all replaced by MESA_FORMAT_x queries.
/external/mesa3d/src/mesa/main/fbobject.c
6d0fc3cfde3dd730de17e925c5594a8b317ba200 02-Oct-2009 Eric Anholt <eric@anholt.net> mesa: Remove another unexplained Flush call, this time from BindFramebuffer.

Combined with the previous fix, it takes cairo-gl firefox-talos-gfx time
from 120 seconds to 90 seconds on my GM45.
/external/mesa3d/src/mesa/main/fbobject.c
f019577f0c2ff83e20bd198a467ddb03579ddae3 02-Oct-2009 Eric Anholt <eric@anholt.net> Revert "Flush driver, not just tnl module."

This reverts commit df058298e1570eea8712f9bb051f674fab2eaf24. It didn't
explain why it was required, doesnt appear to be required, and is a
significant performance penalty for cairo-gl firefox.

Conflicts:

src/mesa/main/fbobject.c
/external/mesa3d/src/mesa/main/fbobject.c
1f7c914ad0beea8a29c1a171c7cd1a12f2efe0fa 01-Oct-2009 Brian Paul <brianp@vmware.com> mesa: replace gl_texture_format with gl_format

Now gl_texture_image::TexFormat is a simple MESA_FORMAT_x enum.
ctx->Driver.ChooseTexture format also returns a MESA_FORMAT_x.
gl_texture_format will go away next.
/external/mesa3d/src/mesa/main/fbobject.c
eb82373abb08171d7fcb15b5f4f229fc9ca9aa91 28-Sep-2009 Brian Paul <brianp@vmware.com> mesa: use _mesa_get_current_tex_unit() helper
/external/mesa3d/src/mesa/main/fbobject.c
5cf5d4be21bdac203dc244e9b773a852ddb1baf1 28-Sep-2009 Brian Paul <brianp@vmware.com> mesa: use more format helper functions
/external/mesa3d/src/mesa/main/fbobject.c
ef6ee07fc7b356109897fdc311be74d5c6640bf9 16-Sep-2009 Brian Paul <brianp@vmware.com> mesa: minor clean-up
/external/mesa3d/src/mesa/main/fbobject.c
c26c2006df6035fccd6103961524fd15bf000840 16-Sep-2009 Brian Paul <brianp@vmware.com> mesa: clean-up fbo debug code
/external/mesa3d/src/mesa/main/fbobject.c
3ffaa11f888ced2ae5da7e794a57f20dcc7a3dfc 14-Aug-2009 Brian Paul <brianp@vmware.com> mesa: move assertions in test_attachment_completeness()

Put the assertions after the error checks.
/external/mesa3d/src/mesa/main/fbobject.c
dcebe220f430221821a10944fbdb639a9252bfef 05-Aug-2009 Brian Paul <brianp@vmware.com> mesa: generate GL_INVALID_OPERATION for missing z/stencil when blitting

If glBlitFramebuffer() is called with GL_DEPTH_BUFFER_BIT or
GL_STENCIL_BUFFER_BIT and the src/dst depth/stencil buffers are absent,
report an error.
/external/mesa3d/src/mesa/main/fbobject.c
957f3c8c3d3b6a48bbcc24e9db2c110a7fde177b 16-May-2009 Eric Anholt <eric@anholt.net> mesa: Mark FBOs with compressed color attachments as FBO-incomplete.

Both EXT_fbo and ARB_fbo agree on this. Fixes a segfault in the metaops
mipmap generation in Intel for SGIS_generate_mipmap of S3TC textures in
Regnum Online.

Bug #21654.
(cherry picked from commit 0307e609aa3e707eeb40051bd664d36f2340ba9b)
/external/mesa3d/src/mesa/main/fbobject.c
042d9a513213b1fa356c0d80abc62b9327e0bcc2 19-May-2009 Mathias Fröhlich <frohlich8@users.sourceforge.net> mesa: allow depth/stencil textures to be attached to GL_STENCIL_ATTACHMENT

See sourceforge bug #2793846.
/external/mesa3d/src/mesa/main/fbobject.c
009749b4a8c3ec54f47f3f85552e5ae275ab6ae6 21-Apr-2009 Keith Whitwell <keithw@vmware.com> mesa: protect driver.flush() with FLUSH_CURRENT

Need to do this to ensure vbo code unmaps its buffers before calling
the driver, which may be sitting on top of a memory manager which
objects to firing commands from a mapped buffer.
/external/mesa3d/src/mesa/main/fbobject.c
16144632354cb310f090c8713a11d3c65696969e 26-Feb-2009 Brian Paul <brianp@vmware.com> mesa: avoid extraneous calls to ctx->Driver.BindFramebuffer()

Only call this driver function when we really need to bind different buffers.
/external/mesa3d/src/mesa/main/fbobject.c
9f731c8962e536965a04635ef8aa135691b32a35 18-Feb-2009 Brian Paul <brianp@vmware.com> mesa: add some debug code to help diagnose incomplete FBO attachments (disabled)
/external/mesa3d/src/mesa/main/fbobject.c
5340b6dff73a0a23531ce2a5f28fba8303adab6e 11-Feb-2009 Brian Paul <brianp@vmware.com> Merge commit 'origin/gallium-master-merge'

This is the big merge of the gallium-0.2 branch into master.
gallium-master-merge was just the staging area for it.
Both gallium-0.2 and gallium-master-merge are considered closed now.

Conflicts:

progs/demos/Makefile
src/mesa/main/state.c
src/mesa/main/texenvprogram.c
d52294439c80c99a4bfa2c7ecc65efa67f095a3f 09-Feb-2009 Brian Paul <brianp@vmware.com> mesa: replace _mesa_unreference_framebuffer() with _mesa_reference_framebuffer()
/external/mesa3d/src/mesa/main/fbobject.c
e97681c7f551a2a2a6bd5eff0f4192a870c816c0 09-Feb-2009 Brian Paul <brianp@vmware.com> mesa: merge gallium-0.2 into gallium-master-merge

Merge commit 'origin/gallium-0.2' into gallium-master-merge

Conflicts:

Makefile
docs/relnotes-7.4.html
docs/relnotes.html
src/mesa/drivers/dri/i965/brw_wm.h
src/mesa/main/imports.c
src/mesa/main/mtypes.h
src/mesa/main/texcompress.c
src/mesa/main/texenvprogram.c
src/mesa/main/version.h
src/mesa/vbo/vbo_exec_api.c
src/mesa/vbo/vbo_save_draw.c
5fec84ad0446d4d6d842f5cf740f9787678113be 29-Jan-2009 Brian Paul <brianp@vmware.com> mesa: allow glFramebufferTexture1/2/3D(target = GL_READ/DRAW_FRAMEBUFFER)

This is part of GL_EXT_framebuffer_blit and GL_ARB_framebuffer_obbject.
/external/mesa3d/src/mesa/main/fbobject.c
2897cee99fb877e1f3cd9a881a61418c9c31867f 29-Jan-2009 Brian Paul <brianp@vmware.com> mesa: fix a render to texture FBO validation bug

When glTexImage() is called we need to re-validate any FBOs that point to
the texture (i.e. render-to-texture) since changing the texture's size/format
will effect FBO completeness.

We don't keep a list of all FBOs rendering into each texture (which would be
a bit messy) so we check all FBOs in existance. To optimize this, the
gl_texture_object->_RenderToTexture flag is used to avoid checking textures
that have never been used as renderbuffers. So, we only walk over all FBOs
(there's usually only a few) when glTexImage() modifies a RTT texture.

Fixes a bug seen in shadowtex.c when toggling packed depth/stencil mode.
/external/mesa3d/src/mesa/main/fbobject.c
38768dbc76f4963587a90823f73a1a2d981f63e6 27-Jan-2009 Brian Paul <brianp@vmware.com> mesa: move call to _mesa_update_framebuffer_visual()

Update the visual info in the _mesa_test_framebuffer_completeness()
function when we've determined the FBO to be "complete".

Fixes regression seen in progs/demos/shadowtex.c
/external/mesa3d/src/mesa/main/fbobject.c
7296636ad03f58c7b7f673109515c1659a36a899 22-Jan-2009 Brian Paul <brianp@vmware.com> mesa: avoid calling _mesa_test_framebuffer_completeness() more than needed

When we change a FBO's attachments, set _Status=0.
Before using an FBO, check if status != GL_FRAMEBUFFER_COMPLETE.
Also, fix missing GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE status.
/external/mesa3d/src/mesa/main/fbobject.c
d0f13fa7d70c57e698cce9fbde399e80f7afcf47 21-Jan-2009 Brian Paul <brianp@vmware.com> mesa: fix some renderbuffer/framebuffer delete semantics

Need to unbind buffers if referenced by the current read/draw pointers when
being deleted.
/external/mesa3d/src/mesa/main/fbobject.c
3059007f0c2e91f4ef207677cdcb6dc42be7ecb2 21-Jan-2009 Brian Paul <brianp@vmware.com> mesa: add support for GL_DEPTH_STENCIL_ATTACHMENT point.

Used to set both the depth and stencil attachment points to one renderbuffer
of texture.
/external/mesa3d/src/mesa/main/fbobject.c
722d976283f402b1edeb5ed67ad9747d322a262e 21-Jan-2009 Brian Paul <brianp@vmware.com> mesa: additional FBO error checking for multisample-related things

Plus some new comments.
/external/mesa3d/src/mesa/main/fbobject.c
4f3514e410c7b743a99f509c176f75b2a3182948 22-Jan-2009 Brian Paul <brianp@vmware.com> mesa: refactor glRenderbufferStorage(), glRenderbufferStorageMultisample() code

Use a common helper routine for both functions.
/external/mesa3d/src/mesa/main/fbobject.c
777a2efc7768de659fbc2e9a7541c9cbb3fc1d8b 22-Jan-2009 Brian Paul <brianp@vmware.com> mesa: stub for _mesa_RenderbufferStorageMultisample()
/external/mesa3d/src/mesa/main/fbobject.c
1f32c410dd06d73e2ad007a6ce755437884e92c3 20-Jan-2009 Brian Paul <brianp@vmware.com> mesa: call fbo_incomplete() if driver marks FBO as incomplete (debug only)
/external/mesa3d/src/mesa/main/fbobject.c
3528f69ce4ba9098ff4d372d7d411b24cf161d61 22-Jan-2009 Brian Paul <brianp@vmware.com> mesa: added ctx->Driver.ValidateFramebuffer() callback

Called from the _mesa_test_framebuffer_completeness() function to give the
driver the chance to make a framebuffer as incomplete if it doesn't meet
some specific hardware restriction.
/external/mesa3d/src/mesa/main/fbobject.c
1bc59bf4f85d1649e6c273cca82785965ea94ac9 22-Jan-2009 Brian Paul <brianp@vmware.com> mesa: add new ARB_fbo queries, fix some error tests
/external/mesa3d/src/mesa/main/fbobject.c
06f3b2e6799ebd66a813ce9345c2ca6bbd0abe7d 22-Jan-2009 Brian Paul <brianp@vmware.com> mesa: additional FBO/RB id error checking for ARB_fbo

It's illegal to bind a FBO/RB id that didn't come from glGenRender/Framebuffer().
/external/mesa3d/src/mesa/main/fbobject.c
989edea40913de9347908488db8978eb2efaba63 22-Jan-2009 Brian Paul <brianp@vmware.com> mesa: for ARB_fbo, lift restriction that all FBO attachments are same size and color format
/external/mesa3d/src/mesa/main/fbobject.c
608e14c5b265d331f89959b8e477796ac21c297c 09-Dec-2008 Alan Hourihane <alanh@tungstengraphics.com> Merge commit 'origin/master' into gallium-0.2
f849d364c22e702e3dda664fa65601d4cf2b55a5 07-Dec-2008 Eric Anholt <eric@anholt.net> mesa: Fix GenerateMipmapEXT(GL_TEXTURE_CUBE_MAP_ARB).

The ctx->Driver.GenerateMipmap() hook only expects cubemap face enums, not
CUBE_MAP_ARB, so walk all faces when we encounter that. Fixes oglconform
fbo.c segfault with both swrast and i965 drivers.
/external/mesa3d/src/mesa/main/fbobject.c
868c09a267f3c25591075f5a9e5d54535958632f 08-Aug-2008 Brian Paul <brian.paul@tungstengraphics.com> mesa: fix some feature tests
(cherry picked from commit 74b14fe6ddbece8bc662aac4d3b2b18d8d853486)
/external/mesa3d/src/mesa/main/fbobject.c
0397b2bb41b0f337af2949a15bcd7d0e7e8a7dc1 11-Sep-2008 Keith Whitwell <keith@tungstengraphics.com> Merge branch 'gallium-0.1' into gallium-0.2

A first attempt at moving gallium onto a branch directly off master...

It will be interesting to see how much work this takes to get running.

Have resolved the conflicts semi-arbitarily, not compiled or tested.

Conflicts:

.gitignore
Makefile
configs/config.mgw
configs/darwin
configs/darwin-x86ppc
configs/default
configs/freebsd-dri
configs/linux-dri
configs/linux-dri-xcb
configs/linux-fbdev
configs/linux-static
configs/linux-x86-64-static
configs/linux-x86-static
doxygen/Makefile
include/GL/gl.h
progs/demos/Makefile
progs/demos/descrip.mms
progs/demos/texenv.c
progs/egl/.gitignore
progs/egl/Makefile
progs/glsl/.gitignore
progs/glsl/Makefile
progs/glsl/convolutions.c
progs/samples/Makefile.mgw
progs/tests/.gitignore
progs/trivial/.gitignore
progs/trivial/point-param.c
progs/trivial/tri.c
progs/xdemos/.gitignore
progs/xdemos/glthreads.c
src/egl/drivers/demo/Makefile
src/egl/drivers/dri/Makefile
src/egl/main/Makefile
src/glu/Makefile
src/glu/sgi/Makefile
src/glu/sgi/Makefile.mgw
src/glut/glx/Makefile.mgw
src/glut/os2/WarpWin.cpp
src/glut/os2/glut_cindex.cpp
src/glut/os2/glut_gamemode.cpp
src/glut/os2/glut_win.cpp
src/glut/os2/glut_winmisc.cpp
src/glut/os2/os2_glx.cpp
src/glut/os2/os2_menu.cpp
src/glut/os2/os2_winproc.cpp
src/glw/Makefile
src/glx/x11/dri_glx.c
src/glx/x11/glxext.c
src/mesa/Makefile
src/mesa/Makefile.mgw
src/mesa/descrip.mms
src/mesa/drivers/beos/Makefile
src/mesa/drivers/common/descrip.mms
src/mesa/drivers/common/driverfuncs.c
src/mesa/drivers/directfb/Makefile
src/mesa/drivers/dri/Makefile.template
src/mesa/drivers/dri/common/dri_bufmgr.c
src/mesa/drivers/dri/common/dri_bufmgr.h
src/mesa/drivers/dri/common/dri_util.c
src/mesa/drivers/dri/common/extension_helper.h
src/mesa/drivers/dri/common/mmio.h
src/mesa/drivers/dri/common/utils.c
src/mesa/drivers/dri/common/utils.h
src/mesa/drivers/dri/glcore/Makefile
src/mesa/drivers/dri/i810/i810screen.c
src/mesa/drivers/dri/i915/intel_ioctl.c
src/mesa/drivers/dri/i915/intel_ioctl.h
src/mesa/drivers/dri/i915/intel_screen.c
src/mesa/drivers/dri/i915/server/i830_common.h
src/mesa/drivers/dri/i915/server/i830_dri.h
src/mesa/drivers/dri/i965/intel_screen.c
src/mesa/drivers/dri/i965/server/i830_common.h
src/mesa/drivers/dri/i965/server/i830_dri.h
src/mesa/drivers/dri/mach64/mach64_screen.c
src/mesa/drivers/dri/nouveau/nouveau_context.h
src/mesa/drivers/dri/nouveau/nouveau_fifo.c
src/mesa/drivers/dri/nouveau/nouveau_fifo.h
src/mesa/drivers/dri/nouveau/nouveau_screen.c
src/mesa/drivers/dri/nouveau/nouveau_screen.h
src/mesa/drivers/dri/r128/r128_tex.h
src/mesa/drivers/dri/savage/savageioctl.h
src/mesa/drivers/fbdev/Makefile
src/mesa/drivers/osmesa/Makefile
src/mesa/drivers/osmesa/descrip.mms
src/mesa/drivers/x11/Makefile
src/mesa/drivers/x11/descrip.mms
src/mesa/drivers/x11/xm_dd.c
src/mesa/glapi/glapi.c
src/mesa/glapi/glthread.c
src/mesa/main/api_validate.c
src/mesa/main/attrib.c
src/mesa/main/bufferobj.c
src/mesa/main/bufferobj.h
src/mesa/main/buffers.c
src/mesa/main/config.h
src/mesa/main/context.c
src/mesa/main/descrip.mms
src/mesa/main/drawpix.c
src/mesa/main/enums.c
src/mesa/main/fbobject.c
src/mesa/main/glheader.h
src/mesa/main/imports.c
src/mesa/main/mipmap.c
src/mesa/main/mm.c
src/mesa/main/mm.h
src/mesa/main/mtypes.h
src/mesa/main/points.c
src/mesa/main/sources
src/mesa/main/state.c
src/mesa/main/texcompress_fxt1.c
src/mesa/main/texenvprogram.c
src/mesa/main/texobj.c
src/mesa/main/texstate.c
src/mesa/main/texstore.c
src/mesa/math/descrip.mms
src/mesa/shader/arbprogram.c
src/mesa/shader/descrip.mms
src/mesa/shader/prog_execute.c
src/mesa/shader/prog_statevars.c
src/mesa/shader/prog_statevars.h
src/mesa/shader/prog_uniform.c
src/mesa/shader/program.c
src/mesa/shader/program.h
src/mesa/shader/shader_api.c
src/mesa/shader/slang/descrip.mms
src/mesa/shader/slang/library/slang_vertex_builtin_gc.h
src/mesa/sources
src/mesa/swrast/descrip.mms
src/mesa/swrast/s_drawpix.c
src/mesa/swrast/s_fragprog.c
src/mesa/swrast/s_readpix.c
src/mesa/swrast/s_span.c
src/mesa/swrast_setup/descrip.mms
src/mesa/tnl/descrip.mms
src/mesa/tnl/t_context.h
src/mesa/tnl/t_vp_build.c
src/mesa/tnl/tnl.h
src/mesa/vbo/descrip.mms
src/mesa/vbo/vbo_context.c
src/mesa/vbo/vbo_exec_array.c
src/mesa/x86-64/xform4.S
src/mesa/x86/rtasm/x86sse.c
src/mesa/x86/rtasm/x86sse.h
windows/VC6/progs/glut/glut.dsp
windows/VC7/mesa/gdi/gdi.vcproj
windows/VC7/mesa/glu/glu.vcproj
windows/VC7/mesa/mesa.sln
windows/VC7/mesa/mesa/mesa.vcproj
windows/VC7/mesa/osmesa/osmesa.vcproj
windows/VC7/progs/glut/glut.vcproj
windows/VC8/mesa/gdi/gdi.vcproj
windows/VC8/mesa/glu/glu.vcproj
windows/VC8/mesa/mesa.sln
windows/VC8/mesa/mesa/mesa.vcproj
windows/VC8/progs/glut/glut.vcproj
74b14fe6ddbece8bc662aac4d3b2b18d8d853486 08-Aug-2008 Brian Paul <brian.paul@tungstengraphics.com> mesa: fix some feature tests
/external/mesa3d/src/mesa/main/fbobject.c
d23b54a423b537fc08543299f9df086e831686fc 06-Aug-2008 Brian Paul <brian.paul@tungstengraphics.com> fix some FBO/texture queries (bug 15296)
/external/mesa3d/src/mesa/main/fbobject.c
f1e4ca776f1c1f86beb8872d32009d902cf64e88 06-Aug-2008 Brian Paul <brian.paul@tungstengraphics.com> fix some FBO/texture queries (bug 15296)
/external/mesa3d/src/mesa/main/fbobject.c
2fa7b3f78639114aec42fcbbfc29d3645832708b 04-Jul-2008 Brian Paul <brian.paul@tungstengraphics.com> 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)
/external/mesa3d/src/mesa/main/fbobject.c
b931a0c1d9128b7fb402915089e1fd2496f65349 04-Jul-2008 Brian Paul <brian.paul@tungstengraphics.com> mesa: remove incorrect assertion
/external/mesa3d/src/mesa/main/fbobject.c
c4b6941e62f5e30a7c479b7b8d6521cc4dd92e3e 04-Jul-2008 Brian Paul <brian.paul@tungstengraphics.com> mesa: move assertion
/external/mesa3d/src/mesa/main/fbobject.c
d015ffa6ea20f00f23513e63b5c27e5e6d0d3627 03-Jul-2008 Brian Paul <brian.paul@tungstengraphics.com> mesa: fix problem freeing framebuffer/renderbuffer objects

Basically, set up no-op Delete() methods for the DummyFrame/Renderbuffer obj
/external/mesa3d/src/mesa/main/fbobject.c
3dc6591a7c85b6a05551ce91b69e57d23148bf57 03-Jul-2008 Brian Paul <brian.paul@tungstengraphics.com> mesa: fix problem freeing framebuffer/renderbuffer objects

Basically, set up no-op Delete() methods for the DummyFrame/Renderbuffer objects.
/external/mesa3d/src/mesa/main/fbobject.c
0449bab2f8722f277213e44da13de6a0b5ae7b5b 09-May-2008 Dave Airlie <airlied@linux.ie> Revert "mesa/intel: map/unmap texture objects around mipmap generation function."

This reverts commit c50ffc4cb89b67ae59208eb72cdb664c846ba987.

I'll fix this using the mipmap hooks I just picked from gallium-0.1
/external/mesa3d/src/mesa/main/fbobject.c
d4e1d85dba8ec4a37f68a284b5a2be15b4f2987a 08-Feb-2008 Brian <brian.paul@tungstengraphics.com> Remove unused texunit parameter to ctx->Driver.GenerateMipmap()
(cherry picked from commit c3395f4473c8fdf75d04c0dd72e687bc8d8127a7)
/external/mesa3d/src/mesa/main/fbobject.c
a638676473bd7bf2d47275ed2fd708e5b9d47e0b 09-May-2008 Dave Airlie <airlied@linux.ie> Added ctx->Driver.GenerateMipmap() driver hook
(cherry picked from commit 4c2f3dbca940f289e67248682b84a3516d5a3031)

Conflicts:

src/mesa/drivers/common/driverfuncs.c
/external/mesa3d/src/mesa/main/fbobject.c
c50ffc4cb89b67ae59208eb72cdb664c846ba987 09-May-2008 Dave Airlie <airlied@redhat.com> mesa/intel: map/unmap texture objects around mipmap generation function.

This at least stops the compiz brain explosion we were seeing, I do wonder
though if we should somehow be calling intel_generate_mipmap somehow.
/external/mesa3d/src/mesa/main/fbobject.c
635e96471218d5ada3fa7930fc1a746ec2aa4423 28-Mar-2008 Brian <brian.paul@tungstengraphics.com> fix texture/renderbuffer mix-up in test_attachment_completeness()
/external/mesa3d/src/mesa/main/fbobject.c
13041da714106ae61b4184b79e847c2b382e07ad 28-Mar-2008 Brian Paul <brian.paul@tungstengraphics.com> mesa: fix texture/renderbuffer mix-up in test_attachment_completeness()
/external/mesa3d/src/mesa/main/fbobject.c
c3395f4473c8fdf75d04c0dd72e687bc8d8127a7 08-Feb-2008 Brian <brian.paul@tungstengraphics.com> Remove unused texunit parameter to ctx->Driver.GenerateMipmap()
/external/mesa3d/src/mesa/main/fbobject.c
4c2f3dbca940f289e67248682b84a3516d5a3031 06-Feb-2008 Brian <brian.paul@tungstengraphics.com> Added ctx->Driver.GenerateMipmap() driver hook
/external/mesa3d/src/mesa/main/fbobject.c
8b36166d295beb472ed7cedf1989894665233b98 09-Nov-2007 Brian <brian.paul@tungstengraphics.com> check for texture and renderbuffer in check_end_texture_render()
/external/mesa3d/src/mesa/main/fbobject.c
98c539d337fec8b4e21d9788b52ff551462e90d6 08-Nov-2007 Brian <brian.paul@tungstengraphics.com> in check_end_texture_render(), test for presence of a renderbuffer and texobj
/external/mesa3d/src/mesa/main/fbobject.c
95e84a09ce3f35f59465be28026e83c1bc40ae8a 18-Aug-2007 Brian <brian.paul@tungstengraphics.com> remove dead code left over after fixing GL_READ/DRAW_BUFFER state issues
/external/mesa3d/src/mesa/main/fbobject.c
32d86eb28aedd01a03ceab746214a8db2a4cbbab 16-Aug-2007 Brian <brian.paul@tungstengraphics.com> Rework the GL_READ_BUFFER, GL_DRAW_BUFFER state repairs that Roland previously did.

Basically, in update_framebuffer() (which should be called after an FBO is bound
with MakeCurrent or BindFramebuffer) we check if the FBO is a window-system FBO.
If it is, update the FBO's GL_READ/DRAW_BUFFER state according to the context state.
Old code still in place but disabled with #if 0 / #endif.
/external/mesa3d/src/mesa/main/fbobject.c
9e01b915f1243a3f551cb795b7124bd1e52ca15f 13-Aug-2007 Brian <brian.paul@tungstengraphics.com> 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.
/external/mesa3d/src/mesa/main/fbobject.c
a1bc0d0f51c2aa248a349283c3b86ae2c72af4aa 18-Jul-2007 Roland Scheidegger <sroland@tungstengraphics.com> fix mesa's handling of fbo's / window fb (again)

Make sure the relevant fields in window fbs get updated at appropriate time
(those are NOT the same as fbos!!!), and fix up related code accordingly.
This is a bit ugly, but there's a reason the issues section in EXT_fbo is
a couple hundred pages long...
Hopefully correct now.
/external/mesa3d/src/mesa/main/fbobject.c
6075df53b5435ddada989d776d989132def363a6 18-Jul-2007 Roland Scheidegger <sroland@tungstengraphics.com> more fixes for mesa's fbo handling (fixes tests/fbotest1/2)
/external/mesa3d/src/mesa/main/fbobject.c
dbfb375805d94cb80262b8816c67a8adc778bec5 17-Jul-2007 Roland Scheidegger <sroland@tungstengraphics.com> fix mesa fb binding

Make sure that we bind the right buffer (draw or read) when rebinding
the window framebuffer (the api doesn't allow binding different draw and
read buffers at the same time, but the default window framebuffer is basically
2 fb objects, one for read, one for write, which can be different). Pass both
of these two down the driver api (no driver uses this right now).
/external/mesa3d/src/mesa/main/fbobject.c
bb372f1c9bc08e8b0dca983cb4ba36b2f2f039fb 17-May-2007 Ian Romanick <idr@us.ibm.com> Initial implementation of MESA_texture_array

Shadow sampling from texture arrays is still not implemented. Everything
else should be there, though.
/external/mesa3d/src/mesa/main/fbobject.c
b0fe0d8a550c5182b4cd964f8745a104343b7654 15-May-2007 Ian Romanick <idr@us.ibm.com> Bring framebuffer_texture's error checking more in-line with the spec.
/external/mesa3d/src/mesa/main/fbobject.c
dccd9c4f4d3eb4fd31002eb13e32ea78a5d0905c 02-Apr-2007 Brian <brian@yutani.localnet.net> use _mesa_reference_renderbuffer() in a few more places
/external/mesa3d/src/mesa/main/fbobject.c
42aaa548a1020be5d40b3dce9448d8004b1ef947 25-Mar-2007 Brian <brian@nostromo.localnet.net> Fix some renderbuffer reference counting issues. Also fixes a mem leak.
/external/mesa3d/src/mesa/main/fbobject.c
e69da9d02ecdf47d930276783f8b8df1a3cd99dd 07-Mar-2007 Brian <brian@yutani.localnet.net> explicit calls to _mesa_unreference_framebuffer() not always needed now
/external/mesa3d/src/mesa/main/fbobject.c
a510bc3ee1a696da120c09ee4ec33dc033f671ac 06-Mar-2007 Brian <brian@yutani.localnet.net> Fix/improve framebuffer object reference counting.

Use _mesa_reference_framebuffer() and _mesa_unreference_framebuffer() functions
to be sure reference counting is done correctly. Additional assertions are
done too. Note _mesa_dereference_framebuffer() renamed to "unreference" as
that's more accurate.
/external/mesa3d/src/mesa/main/fbobject.c
a8ba888a351ceb4242fa334f3c41ef76d7f25bc8 01-Mar-2007 Brian <brian@yutani.localnet.net> move oldFb decl into tighter scopes
/external/mesa3d/src/mesa/main/fbobject.c
5ac93f86210eb5c2a8dee74ec19b0ecd54376863 01-Nov-2006 Keith Whitwell <keith@tungstengraphics.com> Merge texmem-0-3-branch.
/external/mesa3d/src/mesa/main/fbobject.c
24edd9015951dd41898902b6c3973fe605e5871a 29-Sep-2006 Brian Paul <brian.paul@tungstengraphics.com> Move mipmap generation functions, texture scaling functions into new
mipmap.c file.
/external/mesa3d/src/mesa/main/fbobject.c
df058298e1570eea8712f9bb051f674fab2eaf24 22-Sep-2006 Keith Whitwell <keith@tungstengraphics.com> Flush driver, not just tnl module.
/external/mesa3d/src/mesa/main/fbobject.c
7ac5b7b934544c27d87b4852c95efb379889f1dc 20-May-2006 Brian Paul <brian.paul@tungstengraphics.com> use new _mesa_dereference_frame/renderbuffer() functions
/external/mesa3d/src/mesa/main/fbobject.c
13abf91b42b00c7eb64c373aff3a4c1bb3d8fb7f 13-Apr-2006 Brian Paul <brian.paul@tungstengraphics.com> casts to fix some -pedantic warnings
/external/mesa3d/src/mesa/main/fbobject.c
f08f233d6f0d78bb5f5b27e97351754329845149 05-Apr-2006 Brian Paul <brian.paul@tungstengraphics.com> Remove the code that checks for duplicated framebuffer attachments (which
generated the error GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT).
This was removed in version 117 of the GL_EXT_framebuffer_object spec.
/external/mesa3d/src/mesa/main/fbobject.c
28b014ee256290eb0494b967e40c475c0c895f57 05-Apr-2006 Brian Paul <brian.paul@tungstengraphics.com> Silence minor compiler warnings (-Wextra).
/external/mesa3d/src/mesa/main/fbobject.c
9f6ff49650646fcac29289ebabd7269c1795deed 28-Mar-2006 Brian Paul <brian.paul@tungstengraphics.com> update conditional for render to GL_DEPTH_STENCIL texture, check for valid teximage before calling ctx->Driver.RenderTexture()
/external/mesa3d/src/mesa/main/fbobject.c
ea4fe661d7f3a95d9db17e1475076f1badf8e1a6 26-Mar-2006 Brian Paul <brian.paul@tungstengraphics.com> merge from texman branch
/external/mesa3d/src/mesa/main/fbobject.c
519b23b21f9cd6945fd17cdb26e7a6f531cdeec0 20-Mar-2006 Brian Paul <brian.paul@tungstengraphics.com> Lots of changes/fixes for rendering to framebuffer objects.
- When deleting texture objects, unbind from FBOs if necessary.
- Changed driver hooks for starting/ending render to texture.
- Now properly handle case where gl[Copy]TexImage() is called after
glFramebufferTexture[123]D(). That didn't work before.
/external/mesa3d/src/mesa/main/fbobject.c
4991888fa0ea8e31e3cd2a0d87bb7e205ad1dccd 20-Mar-2006 Brian Paul <brian.paul@tungstengraphics.com> additional assertions and debug code for testing FBO completeness
/external/mesa3d/src/mesa/main/fbobject.c
59e0faaa5c601ace51608c6d03c57d17498f796b 15-Mar-2006 Brian Paul <brian.paul@tungstengraphics.com> sync with texmem branch
/external/mesa3d/src/mesa/main/fbobject.c
2e01918b553ad50f6df788bb762f487d618ad37e 07-Mar-2006 Brian Paul <brian.paul@tungstengraphics.com> call _mesa_update_framebuffer_visual() in _mesa_FramebufferRenderbufferEXT() to fix some minor glitches
/external/mesa3d/src/mesa/main/fbobject.c
9974540c73e0c6e03f2da46483e38363d62a2e7b 01-Mar-2006 Brian Paul <brian.paul@tungstengraphics.com> remove temporary tokens, more error checks for blit function
/external/mesa3d/src/mesa/main/fbobject.c
0e31e02aef4fe44b1196d0bf6e351250d9d8f68c 01-Dec-2005 Brian Paul <brian.paul@tungstengraphics.com> Added FinishRenderTexture() device driver function to indicate when
rendering to a texture has likely completed.
Fixed refcount issue in texture renderbuffer wrapper.
/external/mesa3d/src/mesa/main/fbobject.c
311bcf5090f8ba0cc09c66f2507dccdf6546ac3c 18-Nov-2005 Brian Paul <brian.paul@tungstengraphics.com> In _mesa_RenderbufferStorageEXT(), try to avoid needless reallocation.
Simplify _mesa_GetRenderbufferParameterivEXT() queries.
/external/mesa3d/src/mesa/main/fbobject.c
847160466cb7d1af55f294578c328b01fb3fd3d3 16-Nov-2005 Brian Paul <brian.paul@tungstengraphics.com> Support for combined depth/stencil renderbuffers (GL_EXT_packed_depth_stencil).
depthstencil.c provides wrappers for treating depth/stencil buffers either
as regular depth or stencil renderbuffers.
/external/mesa3d/src/mesa/main/fbobject.c
0bffb1192a599b11af11604ad590f6a50c054bf1 08-Nov-2005 Brian Paul <brian.paul@tungstengraphics.com> some initial work on upcoming GL_EXT_framebuffer_blit extension
/external/mesa3d/src/mesa/main/fbobject.c
474f28e57ca750ca39d7f684904a3c0e69a03f62 08-Oct-2005 Brian Paul <brian.paul@tungstengraphics.com> Fix some issues with state updates and renderbuffers. Querying GL_RED_BITS,
etc. after calling glRenderBufferStorageEXT gave undefined results.
/external/mesa3d/src/mesa/main/fbobject.c
a9fc8ba756dd25a07dc19058fe60f65bda82a055 05-Oct-2005 Brian Paul <brian.paul@tungstengraphics.com> In gl_texture_image replace IntFormat with InternalFormat and Format with
_BaseFormat to be consistant with gl_renderbuffer.
/external/mesa3d/src/mesa/main/fbobject.c
91802fdf730451aaa0246f514f6778ffaef92c50 04-Oct-2005 Brian Paul <brian.paul@tungstengraphics.com> check if deleting currently bound frame/renderbuffer object
/external/mesa3d/src/mesa/main/fbobject.c
bc6cced479b0ea854acff9f5fec253d462774290 04-Oct-2005 Brian Paul <brian.paul@tungstengraphics.com> fix behaviour of glIsFrame/Renderbuffer()
/external/mesa3d/src/mesa/main/fbobject.c
071b30aba139aca90c920d6d9b502630c94355d7 03-Oct-2005 Brian Paul <brian.paul@tungstengraphics.com> added a few calls to _mesa_update_framebuffer_visual()
/external/mesa3d/src/mesa/main/fbobject.c
1ad7b99925e044f82e635f746c1ef2df77f69ac9 28-Sep-2005 Brian Paul <brian.paul@tungstengraphics.com> Initial work for GL_EXT_packed_depth_stencil extension.
glReadPixels done, glDrawPixels mostly done.
/external/mesa3d/src/mesa/main/fbobject.c
676d0accf5cc43e86057b14cfb8bba9316932582 22-Sep-2005 Brian Paul <brian.paul@tungstengraphics.com> Replace gl_renderbuffer.ComponentSizes[] with separate RedBits, GreenBits,
BlueBits, etc fields.
/external/mesa3d/src/mesa/main/fbobject.c
ab8ef280ec1c435cd04a481f50cbc3cb6b024744 08-Sep-2005 Brian Paul <brian.paul@tungstengraphics.com> new comment
/external/mesa3d/src/mesa/main/fbobject.c
eba4ff6e0a101a86fc9634b33ce63c02fda896d6 06-Sep-2005 Brian Paul <brian.paul@tungstengraphics.com> minor formatting fix
/external/mesa3d/src/mesa/main/fbobject.c
ed7f3aead819dfe089228363698b4860614e62e8 07-Jun-2005 Brian Paul <brian.paul@tungstengraphics.com> fix GL_ALPHA render-to-texture problem (Jon Smirl)
/external/mesa3d/src/mesa/main/fbobject.c
c7264415b662225a5bdbad3157ecae6b2a3183e2 01-Jun-2005 Brian Paul <brian.paul@tungstengraphics.com> added code to detect GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT error
/external/mesa3d/src/mesa/main/fbobject.c
1b93953fbcbeb3c88dc50004a989a3d44d7fd99b 01-Jun-2005 Brian Paul <brian.paul@tungstengraphics.com> add support for GL_RENDERBUFFER_RED/GREEN/BLUE/etc_SIZE_EXT querie
/external/mesa3d/src/mesa/main/fbobject.c
e4b2356c07d31fbeeabb13b2fb47db703b473080 04-May-2005 Brian Paul <brian.paul@tungstengraphics.com> Major check-in of changes for GL_EXT_framebuffer_object extension.
Main driver impacts:
- new code for creating the Mesa GLframebuffer
- new span/pixel read/write code
Some drivers not yet updated/tested.
/external/mesa3d/src/mesa/main/fbobject.c
6c0c91714c17da75d0386a48f7de7b558b3ec1a9 27-Feb-2005 Brian Paul <brian.paul@tungstengraphics.com> silence warnings
/external/mesa3d/src/mesa/main/fbobject.c
2c6f911e10761c0946261d494bf149b19072821d 24-Feb-2005 Brian Paul <brian.paul@tungstengraphics.com> More GL_EXT_framebuffer_object: rename some things, added device driver hooks.
/external/mesa3d/src/mesa/main/fbobject.c
d9468c94052c4e99b4121deb231c81388722c37f 10-Feb-2005 Brian Paul <brian.paul@tungstengraphics.com> new comments, fix zoffset error test
/external/mesa3d/src/mesa/main/fbobject.c
f0bbbf66b8ab846ae55adf2f66941f05b5500071 09-Feb-2005 Brian Paul <brian.paul@tungstengraphics.com> implement the 'completeness' tests
/external/mesa3d/src/mesa/main/fbobject.c
923b6fc4d96d342cdc7b33b660a8d3d193c9165e 08-Feb-2005 Brian Paul <brian.paul@tungstengraphics.com> just some comments
/external/mesa3d/src/mesa/main/fbobject.c
1864c7d79a0ef0bda54c503bad15977b62e0ed57 08-Feb-2005 Brian Paul <brian.paul@tungstengraphics.com> a bunch of assorted fixes
/external/mesa3d/src/mesa/main/fbobject.c
463642c0be7a6b8c0552bb32b5bc8e86ee352d67 08-Feb-2005 Brian Paul <brian.paul@tungstengraphics.com> checkpoint latest work
/external/mesa3d/src/mesa/main/fbobject.c
3deaa01c2bd576ae81fc6d3ea67c583cb3c22159 07-Feb-2005 Brian Paul <brian.paul@tungstengraphics.com> additional work on GL_EXT_framebuffer_object
/external/mesa3d/src/mesa/main/fbobject.c
ddc82eefca591f0ee93d3a77e1268571629a6d5c 05-Feb-2005 Brian Paul <brian.paul@tungstengraphics.com> Some initial work on GL_EXT_framebuffer_object.
/external/mesa3d/src/mesa/main/fbobject.c