summaryrefslogtreecommitdiffstats
path: root/src/mesa
Commit message (Collapse)AuthorAgeFilesLines
* i965: Add support for struct, array, and matrix uniforms to FS backend.Eric Anholt2010-09-281-15/+60
| | | | Fixes 16 piglit cases.
* i965: Add support for dereferencing structs to the new FS backend.Eric Anholt2010-09-281-35/+32
| | | | Fixes: glsl1-struct(2)
* i965: Set the variable type when dereferencing an array.Eric Anholt2010-09-281-0/+15
| | | | | | | | | | We don't set the type on the array virtual reg as a whole, so here's the right place. Fixes: glsl1-GLSL 1.20 arrays glsl1-temp array with constant indexing, fragment shader glsl1-temp array with swizzled variable indexing
* i965: Fix up the FS backend for the variable array indexing pass.Eric Anholt2010-09-281-4/+12
| | | | | | We need to re-run channel expressions afterwards as it generates new vector expressions, and we need to successfully support conditional assignment (brw_CMP takes 2 operands, not 1).
* i965: Fix valgrind complaint about base_ir for new FS debugging.Eric Anholt2010-09-281-0/+1
|
* i965: Apply the same set of lowering passes to new FS as to Mesa IR.Eric Anholt2010-09-281-0/+15
| | | | | | | | While much of this we will want to support natively, this should make the task of reaching the Mesa IR backend's quality easier. Fixes: glsl-fs-main-return.
* i965: Actually track the "if" depth in loop in the new FS backend.Eric Anholt2010-09-281-0/+2
| | | | | Fixes: glsl-fs-if-nested-loop.
* i965: Fix negation in the new FS backend.Eric Anholt2010-09-281-1/+1
| | | | | | Fixes: glsl1-Negation glsl1-Negation2
* i965: fallback bitmap operation on sandybridgeZhenyu Wang2010-09-281-0/+6
| | | | | Need to bring back correct fb write with header to set pixel write mask. Fallback for now.
* i965: fix occlusion query on sandybridgeZhenyu Wang2010-09-281-47/+114
| | | | Fix pipe control command for depth stall and PS_DEPTH_COUNT write.
* i965: fix point sprite on sandybridgeZhenyu Wang2010-09-281-3/+11
| | | | Need to set point sprite function in fixed SF state now on sandybridge.
* i965: fix scissor state on sandybridgeZhenyu Wang2010-09-284-5/+8
| | | | | Fix incorrect scissor rect struct and missed scissor state pointer setting for sandybridge.
* i965: enable polygon offset on sandybridgeZhenyu Wang2010-09-281-0/+3
| | | | Depth offset function is moved to SF stage on sandybridge.
* i965: fix pixel w interpolation on sandybridgeZhenyu Wang2010-09-281-4/+16
|
* i965: don't do calculation for delta_xy on sandybridgeZhenyu Wang2010-09-281-0/+16
| | | | Sandybridge doesn't have Xstart/Ystart in payload header.
* i965: only allow SIMD8 kernel on sandybridge nowZhenyu Wang2010-09-281-0/+5
| | | | Until we fixed SIMD16 kernel, force to SIMD8 on sandybridge now.
* i965: sandybridge pipe control workaround before write cache flushZhenyu Wang2010-09-282-1/+21
| | | | | Must issue a pipe control with any non-zero post sync op before write cache flush = 1 pipe control.
* i965: Add all device ids for sandybridgeZhenyu Wang2010-09-281-6/+14
|
* i965: fix const register count for sandybridgeZhenyu Wang2010-09-281-2/+2
| | | | | | | Sandybridge's PS constant buffer payload size is decided from push const buffer command, incorrect size would cause wrong data in payload for position and vertex attributes. This fixes coefficients for tex2d/tex3d.
* i965: Fix sampler on sandybridgeZhenyu Wang2010-09-285-17/+45
| | | | Sandybridge has not much change on texture sampler with Ironlake.
* i965: fix jump count on sandybridgeZhenyu Wang2010-09-281-4/+6
| | | | | Jump count is for 64bit long each, so one instruction requires 2 like on Ironlake.
* i965: VS use SPF mode on sandybridge for nowZhenyu Wang2010-09-282-1/+5
| | | | Until conditional instructions were fixed, use SPF mode instead for now.
* i965: add sandybridge viewport state bo into validation listZhenyu Wang2010-09-281-1/+3
|
* i965: ignore quads for GS kernel on sandybridgeZhenyu Wang2010-09-281-1/+8
| | | | | Sandybridge's VF would convert quads to polygon which not required for GS then. Current GS state still would cause hang on lineloop.
* i965: ff sync message change for sandybridgeZhenyu Wang2010-09-281-2/+16
|
* i965: fix point size setting in header on sandybridgeZhenyu Wang2010-09-281-2/+5
|
* i965: force zero in clipper to ignore RTAIndex on sandybridgeZhenyu Wang2010-09-282-0/+2
|
* i965: Fix color interpolation on sandybridgeZhenyu Wang2010-09-281-3/+2
| | | | | Don't double store position in vertex attribute. This makes color interpolation right by using barycentric coordinates.
* i965: enable accumulator update in PS kernel too on sandybridgeZhenyu Wang2010-09-282-0/+6
| | | | Accumulator update flag must be set for implicit update on sandybridge.
* i965: new state dump for sandybridgeZhenyu Wang2010-09-281-5/+135
| | | | | Dump new state object on sandybridge for cc viewport, clip viewport, depth stencil, cc and blend state.
* i965: disasm quarter and write enable instruction control on sandybridgeZhenyu Wang2010-09-281-9/+61
|
* i965: Add support for POW in gen6 FS.Eric Anholt2010-09-283-25/+120
| | | | Fixes glsl-algebraic-pow-2 in brw_wm_glsl.c mode.
* i965: Set up inputs to the fragment shader according to FP InputsRead.Eric Anholt2010-09-283-31/+51
| | | | | | Sending down data that doesn't get read doesn't make any sense, and would make handling things like gl_FrontFacing and gl_PointCoord harder.
* i965: Add support for attribute interpolation on Sandybridge.Eric Anholt2010-09-286-13/+87
| | | | | Things are simpler these days thanks to barycentric interpolation parameters being handed in in the payload.
* dri: Add GET_PROGRAM_NAME definition for Mac OS X.Vinson Lee2010-09-281-0/+3
|
* r300/compiler: Use rc_for_all_reads_src() in "dead constants" passTom Stellard2010-09-271-27/+24
|
* r300/compiler: radeon_remove_constants.c: fix indentationTom Stellard2010-09-271-75/+75
|
* r300/compiler: Print immediate values after "dead constants" passTom Stellard2010-09-273-0/+18
|
* r300/compiler: Add more helper functions for iterating through sourcesTom Stellard2010-09-272-35/+102
| | | | | rc_for_all_reads_src() and rc_pair_for_all_reads_arg() pass references to instruction sources to the callback so they can be modified directly.
* r300g: add support for 3D NPOT textures without mipmappingMarek Olšák2010-09-282-2/+39
| | | | | | | | | | | | | | | | | | | | | | | The driver actually creates a 3D texture aligned to POT and does all the magic with texture coordinates in the fragment shader. It first emulates REPEAT and MIRRORED wrap modes in the fragment shader to get the coordinates into the range [0, 1]. (already done for 2D NPOT) Then it scales them to get the coordinates of the NPOT subtexture. NPOT textures are now less of a lie and we can at least display something meaningful even for the 3D ones. Supported wrap modes: - REPEAT - MIRRORED_REPEAT - CLAMP_TO_EDGE (NEAREST filtering only) - MIRROR_CLAMP_TO_EDGE (NEAREST filtering only) - The behavior of other CLAMP modes is undefined on borders, but they usually give results very close to CLAMP_TO_EDGE with mirroring working perfectly. This fixes: - piglit/fbo-3d - piglit/tex3d-npot
* r300/compiler: fix shadow sampling with swizzled coordsMarek Olšák2010-09-281-4/+5
| | | | | | | | Taking the W component from coords directly ignores swizzling. Instead, take the component which is mapped to W in the TEX instruction parameter. The same for Z. NOTE: This is a candidate for the 7.9 branch.
* r300/compiler: do not use copy propagation if SaturateMode is usedMarek Olšák2010-09-281-1/+2
| | | | NOTE: This is a candidate for the 7.9 branch.
* r300/compiler: fix projective mapping of 2D NPOT texturesMarek Olšák2010-09-281-0/+39
| | | | NOTE: This is a candidate for the 7.9 branch.
* r300g: code cleanupsMarek Olšák2010-09-282-150/+131
| | | | | | | | | Some random stuff I had here. 1) Fixed some misleading comments. 2) Removed fake_npot, since it's redundant. 3) lower_texture_rect -> scale_texcoords 4) Reordered and reindented some TEX transform code.
* i965: Add support for dFdx()/dFdy() to the FS backend.Eric Anholt2010-09-271-0/+71
| | | | | | Fixes: glsl-fwidth glsl-derivs-swizzle
* i965: Fix vector splitting RHS channel selection with sparse writemasks.Eric Anholt2010-09-271-3/+8
| | | | | | Fixes: glsl-fs-all-02 glsl-fs-dot-vec2
* i965: Handle all_equal/any_nequal in the new FS.Eric Anholt2010-09-271-2/+2
| | | | | These are generated for scalar operands instead of plain equal/nequal. But for scalars, they're the same anyway. +30 piglits.
* i965: Remove swizzling of assignment to vector-splitting single-channel LHS.Eric Anholt2010-09-271-2/+0
| | | | We'd end up reading some non-x component of the float RHS. +53 piglits.
* i965: Fix up writemasked assignments in the new FS.Eric Anholt2010-09-271-1/+1
| | | | Not sure how I managed to get tests to succeed without this. +54 piglits.
* Remove unnescessary initializations of UpdateTexturePaletteIan Romanick2010-09-274-5/+0
| | | | This is already NULL'ed in _mesa_init_driver_functions.