summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers
Commit message (Collapse)AuthorAgeFilesLines
* radeon: fix tex1d-border2dDave Airlie2011-11-101-31/+33
| | | | | | Fixes pigit test with T wrap usage. Signed-off-by: Dave Airlie <[email protected]>
* radeon: fix 3-coordinate swtcl emissionDave Airlie2011-11-101-0/+8
| | | | | | This fixes mipmap generation on swtcl rv100. Signed-off-by: Dave Airlie <[email protected]>
* meta: Add support for glClear() to integer color buffers.Eric Anholt2011-11-091-4/+109
| | | | | | | | | | This requires using a new fragment shader to get the integer color output, and a new vertex shader because #version has to match between the two. v2: Clarify that there's no need for BindFragDataLocation. Reviewed-by: Kenneth Graunke <[email protected]> (v1)
* i965: Claim to support rendering to integer FBOs.Eric Anholt2011-11-092-1/+13
| | | | | | | | | | | | We're missing support for the software paths still, but basic rendering is working. v2: Override RGB_INT32/UINT32 to not be renderable, since the hardware can't do it but we do allow texturing from it now. Drop the DataType override, since the _mesa_problem() isn't in that path any more. Reviewed-by: Kenneth Graunke <[email protected]> (v1)
* i965/fs: Add support for user-defined out variables.Eric Anholt2011-11-092-35/+39
| | | | | | | | | | | | Before, I was tracking the ir_variable * found for gl_FragColor or gl_FragData[]. Instead, when visiting those variables, set up an array of per-render-target fs_regs to copy the output data from. This cleans up the color emit path, while making handling of multiple user-defined out variables easier. v2: incorporate idr's feedback about ir->location (changes by Kenneth Graunke) Reviewed-by: Kenneth Graunke <[email protected]>
* i965/fs: Preserve the source register type when doing color writes.Eric Anholt2011-11-091-4/+7
| | | | | | | When rendering to integer color buffers, we need to be careful to use MRFs of the correct type when emitting color writes. Reviewed-by: Kenneth Graunke <[email protected]>
* i965: Make brw_type_for_base_type return the element type for arrays.Eric Anholt2011-11-091-0/+1
| | | | | | | | | | | | | | | | Previously, brw_type_for_base_type returned UD for array variables, similar to structures. For structures, each field may have a different type, so every field access must explicitly override the register's type with that field's type. We chose to return UD in this case since it was the least common, so errors would be more obvious. For arrays, it makes far more sense to return the type corresponding to an element of the array. This allows normal array access to work without the hassle of explicitly overriding the register's type. This should obsolete a bunch of type overrides throughout the code. Reviewed-by: Kenneth Graunke <[email protected]>
* i965: Enable ChooseTexFormat for supported GL_EXT_texture_integer formats.Eric Anholt2011-11-091-0/+30
| | | | | | | v2: s/GL_TRUE/true/, and re-enable RGB_INT32 based on discussion yesterday about required RB formats vs texture formats. Reviewed-by: Kenneth Graunke <[email protected]> (v1)
* i965: Add mapping from MESA_FORMAT to BRW_SURFACEFORMAT for integer.Eric Anholt2011-11-091-0/+24
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* intel: Expose GL_EXT_texture_integer when GL 3.0 override is set.Eric Anholt2011-11-091-0/+10
| | | | | | | This will let the feature be incrementally developed, hidden behind the flag we're all using as we work on GL 3.0 support. Reviewed-by: Kenneth Graunke <[email protected]>
* i965: Add support for 16-bit unorm L, A, and I textures.Eric Anholt2011-11-092-1/+8
| | | | | | | | | | | | While not required by any particular spec version, mplayer was asking for L16 and hoping for actual L16 without checking. The 8 bits allocated led to 10-bit planar video data stored in the lower 10 bits giving only 2 bits of precision in video. While it was an amusing effect, give them what they actually wanted instead. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=41461 Reviewed-by: Kenneth Graunke <[email protected]>
* intel: Don't _mesa_problem when asked for an RB of a texturing-only type.Eric Anholt2011-11-092-2/+11
| | | | | | | | We want to be able to support some formats for texturing that we can't render to, which means that some choices for RenderbufferStorage end up being incomplete (for example, L8 currently). For these, where we don't render to them, we don't want to have to make up an rb->DataType that's only used for GetRow()/PutRow().
* r200: remove dangling radeon.h symlink.Paul Berry2011-11-091-1/+0
| | | | | | | | | | | | Commit 1401b96b (radeon: cleanup radeon shared code after r300 and r600 classic drivers removal) removed the file src/mesa/drivers/dri/radeon/server/radeon.h, but it left behind the symlink which was used to share that file into the src/mesa/drivers/dri/r200/server directory. This patch removes the dangling symlink. Reviewed-by: Alex Deucher <[email protected]>
* i965: Move _mesa_ir_link_shader call before device-specific linkingIan Romanick2011-11-071-3/+3
| | | | | | | | | | | | | | | _mesa_ir_link_shader needs to be called before cloning the IR tree so that the var->location field for uniforms is set. WARNING: This change breaks several integer division related piglit tests. The tests break because _mesa_ir_link_shader lowers integer division to an RCP followed by a MUL. The fix is to factor out more of the code from ir_to_mesa so that _mesa_ir_link_shader does not need to be called at all by the i965 driver. This will be the subject of several follow-on patches. Signed-off-by: Ian Romanick <[email protected]> Tested-by: Tom Stellard <[email protected]>
* mesa: fix comment typo in intel_renderbufferBrian Paul2011-11-071-1/+1
|
* intel: update intel_texture_image commentBrian Paul2011-11-071-1/+1
|
* intel: wrap comment and fix typoBrian Paul2011-11-071-2/+2
|
* xlib: implement renderbuffer mapping/unmappingBrian Paul2011-11-074-5/+167
| | | | | | | | This fixes the glReadPixels() regression for reading from the front/back color buffers. Note, we only allow one mapping of an XImage/Pixmap renderbuffer at any time. That might need to be revisited in the future.
* i965: Fix Sandybridge regression introduced by workaround-free math.Kenneth Graunke2011-11-071-1/+1
| | | | | | | | | Commit a73c65c5342bf41fa0dfefe7daa9197ce6a11db4 had a typo which accidentally enabled the workaround-free Gen7 code on Gen6. Fixes GPU hangs in anything using pow() or integer division/modulus. Signed-off-by: Kenneth Graunke <[email protected]>
* i965: Enable faster workaround-free math on Ivybridge.Kenneth Graunke2011-11-076-17/+81
| | | | | | | | | | | | | | | | | | | | | | According to the documentation, Ivybridge's math instruction works in SIMD16 mode for the fragment shader, and no longer forbids align16 mode for the vertex shader. The documentation claims that SIMD16 mode isn't supported for INT DIV, but empirical evidence shows that it works fine. Presumably the note is trying to warn us that the variant that returns both quotient and remainder in (dst, dst + 1) doesn't work in SIMD16 mode since dst + 1 would be sechalf(dst), trashing half your results. Since we don't use that variant, we don't care and can just enable SIMD16 everywhere. The documentation also still claims that source modifiers and conditional modifiers aren't supported, but empirical evidence and study of the simulator both show that they work just fine. Goodbye workarounds. Math just works now. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Paul Berry <[email protected]>
* radeon: cleanup radeon shared code after r300 and r600 classic drivers removalFabio Pedretti2011-11-079-956/+39
| | | | Signed-off-by: Dave Airlie <[email protected]>
* i965: Fix struct vs class warnings in brw_fs_vector_splitting.cpp.Kenneth Graunke2011-11-061-2/+2
| | | | | | Makes clang happier. Signed-off-by: Kenneth Graunke <[email protected]>
* dri: cosmeticGeorge Sapountzis2011-11-042-65/+42
| | | | To smooth minor diff between dri_util & drisw_util
* dri_util: move drawable functionsGeorge Sapountzis2011-11-041-27/+26
|
* dri_util: move context functionsGeorge Sapountzis2011-11-041-35/+36
|
* dri_util: move context functionsGeorge Sapountzis2011-11-041-86/+86
|
* dri_util: move screen functionsGeorge Sapountzis2011-11-041-100/+100
| | | | This is to reorder as screen/context/drawable similar to drisw_util
* dri: drop stray includes and typedefGeorge Sapountzis2011-11-041-11/+0
|
* dri: move __driUtilMessage to xmlconfig.cGeorge Sapountzis2011-11-044-30/+23
| | | | __driUtilMessage seems to have fallen out of favor and is only used by xmlconfig.c now
* dri: drop drisw_util.hGeorge Sapountzis2011-11-044-141/+9
|
* dri: reorder as driver,screen,context,drawableGeorge Sapountzis2011-11-041-65/+65
|
* dri: unify __DRIcontextRec, __DRIdrawableRecGeorge Sapountzis2011-11-042-19/+18
|
* dri: unify __DRIscreenRecGeorge Sapountzis2011-11-0411-62/+50
| | | | | Also drop DriverAPI field, this is a static symbol and I don't see why it should be accessed through __DRIscreenRec
* dri: unify __DriverAPIRecGeorge Sapountzis2011-11-046-46/+27
| | | | I dropped the comments because they don't add much.
* dri: drop drmLock remnantsGeorge Sapountzis2011-11-041-3/+1
|
* radeon/r200: strip texture borders.Dave Airlie2011-11-042-0/+4
| | | | Signed-off-by: Dave Airlie <[email protected]>
* radeon/r200: fix r100/r200 blit to use the offsets.Dave Airlie2011-11-042-4/+4
| | | | | | This is needed to do proper renderbuffer operation on mipmaps. Signed-off-by: Dave Airlie <[email protected]>
* radeon: drop mtface/mtlevel, use ones in base class.Dave Airlie2011-11-043-18/+9
| | | | | | This just uses the base class copies. Signed-off-by: Dave Airlie <[email protected]>
* i965/gen6: Improve glReadPixels() performance by blitting to a linear temp.Eric Anholt2011-11-032-8/+81
| | | | | | | The readpixels microbenchmark in mesa-demos goes from 47Mpix/sec at 1000x1000 to 450Mpix/sec. The 10x10 sizes stay about the same. Reviewed-by: Brian Paul <[email protected]>
* intel: Add safety asserts for the blit engine's pitch alignment requirements.Eric Anholt2011-11-031-0/+6
| | | | Reviewed-by: Brian Paul <[email protected]>
* intel: Don't force a batchbuffer flush in readpixels.Eric Anholt2011-11-033-3/+12
| | | | | | | | Renderbuffer mapping handles flushing the batchbuffer if required, so all we need to do is make sure any pending rendering has reached the batchbuffer. Reviewed-by: Brian Paul <[email protected]>
* radeon: Remove early dereference of src/dst width in glCopyTexSubImage.Eric Anholt2011-11-031-6/+2
| | | | | | | There doesn't appear to be any particular reason for this -- it's not like the width is changing between the deref and the use. Reviewed-by: Brian Paul <[email protected]>
* radeon: Fix variable initialization typo.Vinson Lee2011-11-031-1/+1
| | | | Fixes Coverity uninitialized scalar variable defect.
* i965: Fix constant propagation into 32-bit integer MUL.Paul Berry2011-11-032-2/+15
| | | | | | | | | | | | | | | i965's MUL instruction can't take an immediate value as its first argument. So normally, if constant propagation wants to propagate a constant into the first argument of a MUL instruction, it swaps the order of the two arguments. This doesn't work for 32-bit integer (and unsigned integer) multiplies, because the MUL operation is asymmetric in that case (it multiplies 16 bits of one operand by 32 bits of the other). Fixes piglit tests {vs,fs}-multiply-const-{ivec4,uvec4}. Reviewed-by: Eric Anholt <[email protected]>
* radeon: Check an error return instead of assigning it to a dead variable.Eric Anholt2011-11-031-5/+13
| | | | | | Fixes gcc set-but-unused-variable warning. Reviewed-by: Alex Deucher <[email protected]>
* radeon: fix some regressions in texturing code.Dave Airlie2011-11-031-6/+4
| | | | | | On a piglit run vs 7.11 this fixes 23 tests. Signed-off-by: Dave Airlie <[email protected]>
* mesa, i965: prepare for more than 8 texture targetsChia-I Wu2011-11-031-1/+1
| | | | | | | | | 3-bit fields are used store texture target in several places. That will fail when TEXTURE_EXTERNAL_INDEX, which happends to be the 9th texture target, is added. Make them 4-bit fields. Reviewed-by: Brian Paul <[email protected]> Acked-by: Jakob Bornecrantz <[email protected]>
* driconf: updated german translationCarl-Philip Haensch2011-11-021-8/+11
|
* driconf: updated de.poCarl-Philip Haensch2011-11-021-50/+88
|
* wglSetPixelFormat should ignore the ppfd parameter.Morgan Armand2011-11-021-3/+7
| | | | Signed-off-by: José Fonseca <[email protected]>