summaryrefslogtreecommitdiff
path: root/src/mesa
AgeCommit message (Collapse)Author
2011-01-11mesa: include teximage.h to silence warningBrian Paul
2011-01-11mesa: do a debug check of _mesa_format_to_type_and_comps()Brian Paul
Make sure that all formats are handled in this function. It's easy to miss this function when adding new pixel formats. See also http://bugs.freedesktop.org/show_bug.cgi?id=31544
2011-01-11mesa: fix a few format table mistakes, assertionsBrian Paul
The BaseFormat field was incorrect for a few R and RG formats. Fix a couple assertions too. NOTE: This is a candidate for the 7.9 and 7.10 branches.
2011-01-10i965: Use a new miptree to avoid software fallbacks due to drawing offset.Eric Anholt
When attaching a small mipmap level to an FBO, the original gen4 didn't have the bits to support rendering to it. Instead of falling back, just blit it to a new little miptree just for it, and let it get revalidated into the stack later just like any other new teximage. Bug #30365.
2011-01-10intel: Drop the speculatively-use-firstImage-mt in validation.Eric Anholt
It's been replaced by just setting texObj->mt to image->mt at TexImage time.
2011-01-10intel: Don't relayout the texture on maxlevel change.Eric Anholt
This avoids relayouts in the common case of glGenerateMipmap() or people doing similar things. Bug #30366.
2011-01-10intel: When making a new teximage miptree, make a full one.Eric Anholt
If we hit this path, we're level 1+ and the base level got allocated as a single level instead of a full tree (so we don't match intelObj->mt). This tries to recover from that so that we end up with 2 allocations and 1 validation blit (old -> new) instead of allocations equal to number of levels and levels - 1 blits.
2011-01-10meta: Don't tweak BaseLevel when doing glGenerateMipmap().Eric Anholt
We don't need to worry about levels other than MaxLevel because we're minifying -- the lower levels (higher detail) won't contribute to the result. By changing BaseLevel, we forced hardware that doesn't support BaseLevel != 0 to relayout the texture object.
2011-01-10Revert "intel: Always allocate miptrees from level 0, not tObj->BaseLevel."Eric Anholt
This reverts commit 7ce6517f3ac41bf770ab39aba4509d4f535ef663. This reverts commit d60145d06d999c5c76000499e6fa9351e11d17fa. I was wrong about which generations supported baselevel adjustment -- it's just gen4, nothing earlier. This meant that i915 would have never used the mag filter when baselevel != 0. Not a severe bug, but not an intentional regression. I think we can fix the performance issue another way.
2011-01-10i965: Add #defines for HiZ and separate stencil buffer commands.Kenneth Graunke
2011-01-10i965: Add new HiZ related bits to WM_STATE.Kenneth Graunke
2011-01-10i965: Rename more #defines to 3DSTATE rather than CMD or CMD_3D.Kenneth Graunke
Again, this makes it match the documentation.
2011-01-10i965: Remove unused #defines which only contain the sub-opcode.Kenneth Graunke
Most _3DSTATE defines contain the command type, sub-type, opcode, and sub-opcode (i.e. 0x7905). These, however, contain only the sub-opcode (i.e. 0x05). Since they are inconsistent with the rest of the code and nothing uses them, simply delete them. The _3DOP and _3DCONTROL defines seemed similar, and were also unused.
2011-01-11mesa/swrast: handle sRGB FBOs correctly (v2)Dave Airlie
From reading EXT_texture_sRGB and EXT_framebuffer_sRGB and interactions with FBO I've found that swrast is converting the sRGB values to linear for blending when an sRGB texture is bound as an FBO. According to the spec and further explained in the framebuffer_sRGB spec this behaviour is not required unless the GL_FRAMEBUFFER_SRGB is enabled and the Visual/config exposes GL_FRAMEBUFFER_SRGB_CAPABLE_EXT. This patch fixes swrast to use a separate Fetch call for FBOs bound to SRGB and avoid the conversions. v2: export _mesa_get_texture_dimensions as per Brian's comments. Signed-off-by: Dave Airlie <airlied@redhat.com>
2011-01-10Export TLS support in gl.pc.Tom Fogal
2011-01-10mesa: Remove GLES overlay.Chia-I Wu
With core mesa doing runtime API checks, GLES overlay is no longer needed. Make --enable-gles-overlay equivalent to --enable-gles[12]. There may still be places where compile-time checks are done. They could be fixed case by case.
2011-01-09r600: Include mfeatures.h in files that perform feature tests.Vinson Lee
2011-01-09r300: Include mfeatures.h in files that perform feature tests.Vinson Lee
2011-01-09r200: Include mfeatures.h in files that perform feature tests.Vinson Lee
2011-01-09radeon: Include mfeatures.h in files that perform feature tests.Vinson Lee
2011-01-09dri/nouveau: Include mfeatures.h in files that perform feature tests.Vinson Lee
2011-01-09intel: Include mfeatures.h in files that perform feature tests.Vinson Lee
2011-01-09vbo: Include mfeatures.h in files that perform feature tests.Vinson Lee
2011-01-09st/mesa: Include mfeatures.h in files that perform feature tests.Vinson Lee
2011-01-09mesa: Include mfeatures.h in program.c.Vinson Lee
Include mfeatures.h for feature tests.
2011-01-08mesa: Clean up header file inclusion in cpuinfo.c.Vinson Lee
2011-01-07intel: Make renderbuffer tiling choice match texture tiling choice.Eric Anholt
There really shouldn't be any difference between the two for us. Fixes a bug where Z16 renderbuffers would be untiled on gen6, likely leading to hangs.
2011-01-07intel: Use the _BaseFormat from MESA_FORMAT_* in renderbuffer setup.Eric Anholt
2011-01-07i915: Drop old checks for the settexoffset hack.Eric Anholt
2011-01-07i915: Don't claim to support AL1616 when neither 830 nor 915 does it.Eric Anholt
Fixes an abort in fbo-generatemipmap-formats.
2011-01-07intel: Add a vtbl hook for determining if a format is renderable.Eric Anholt
By relying on just intel_span_supports_format, some formats that aren't supported pre-gen4 were not reporting FBO incomplete. And we also complained in stderr when it happened on i915 because draw_region gets called before framebuffer completeness validation.
2011-01-07intel: expose ARB_framebuffer_object in the i915 driver.Eric Anholt
ARB_fbo no longer disallows mismatched width/height on attachments (shouldn't be any problem), mixed format color attachments (we only support 1), and L/A/LA/I color attachments (we already reject them on 965 too). It requires Gen'ed names (driver doesn't care), and adds FramebufferTextureLayer (we don't do texture arrays). So it looks like we're already in the position we need to be for this extension. Bug #27468, #32381.
2011-01-07i965: Avoid double-negation of immediate values in the VS.Eric Anholt
In general, we have to negate in immediate values we pass in because the src1 negate field in the register description is in the bits3 slot that the 32-bit value is loaded into, so it's ignored by the hardware. However, the src0 negate field is in bits1, so after we'd negated the immediate value loaded in, it would also get negated through the register description. This broke this VP instruction in the position calculation in civ4: MAD TEMP[1], TEMP[1], CONST[256].zzzz, CONST[256].-y-y-y-y; Bug #30156
2011-01-07mesa: fix an error in uniform arrays in row calculating.Jian Zhao
Fix the error in uniform row calculating, it may alloc one line more which may cause out of range on memory usage, sometimes program aborted when free the memory. NOTE: This is a candidate for 7.9 and 7.10 branches. Signed-off-by: Brian Paul <brianp@vmware.com>
2011-01-07mesa: Directly include mfeatures.h in files that perform feature tests.Vinson Lee
2011-01-07r600c: fix up SQ setup in blit code for Ontario/NIAlex Deucher
2011-01-06r600c: add support for NI asicsAlex Deucher
2011-01-06i965: Rename various gen6 #defines to match the documentation.Kenneth Graunke
This should make it easier to cross-reference the code and hardware documentation, as well as clear up any confusion on whether constants like CMD_3D_WM_STATE mean WM_STATE (pre-gen6) or 3DSTATE_WM (gen6+). This does not rename any pre-gen6 defines.
2011-01-06vbo: remove a redundant call to _ae_invalidate_stateMarek Olšák
It's called in vbo_exec_invalidate_state too.
2011-01-06st/mesa: remove unused members in st_contextMarek Olšák
What were these for?
2011-01-06st/mesa: optimize constant buffer uploadsMarek Olšák
The overhead of resource_create, transfer_inline_write, and resource_destroy to upload constant data is very visible with some apps in sysprof, and as such should be eliminated. My approach uses a user buffer to pass a pointer to a driver. This gives the driver the freedom it needs to take the fast path, which may differ for each driver. This commit addresses the same issue as Jakob's one that suballocates out of a big constant buffer, but it also eliminates the copy to the buffer.
2011-01-06st/mesa: do sanity checks on states only in debug buildsMarek Olšák
2011-01-06mesa: fix build for NetBSDPierre Allegraud
See http://bugs.freedesktop.org/show_bug.cgi?id=32859 NOTE: This is a candidate for the 7.9 and 7.10 branches. Signed-off-by: Brian Paul <brianp@vmware.com>
2011-01-06mesa: Clean up header file inclusion in version.c.Vinson Lee
Include imports.h directly instead of indirectly through context.h. version.c does use any symbols that are added by context.h.
2011-01-05mesa: bump version to 7.11Vinson Lee
2011-01-05mesa: Include mtypes.h in files that use gl_context struct.Vinson Lee
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.
2011-01-06i965: skip too small size mipmapZou Nan hai
this fixes doom3 crash.
2011-01-05i915: Fix build for previous commit.Eric Anholt
2011-01-05intel: Always allocate miptrees from level 0, not tObj->BaseLevel.Eric Anholt
BaseLevel/MaxLevel are mostly used for two things: clamping texture access for FBO rendering, and limiting the used mipmap levels when incrementally loading textures. By restricting our mipmap trees to just the current BaseLevel/MaxLevel, we caused reallocation thrashing in the common case, for a theoretical win if someone really did want just levels 2..4 or whatever of their texture object. Bug #30366
2011-01-05intel: Drop unused first/lastlevel args to miptree_create_for_region.Eric Anholt
We're always making a single-level, 0-baselevel miptree.