Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | gallivm: more linear tex wrap mode calculation simplification | Roland Scheidegger | 2010-10-09 | 1 | -12/+9 |
| | | | | | | | Rearrange order of operations a bit to make some clamps easier. All calculations should be equivalent. Note there seems to be some inconsistency in the clamp to edge case wrt normalized/non-normalized coords, could potentially simplify this too. | ||||
* | gallivm: optimize some tex wrap mode calculations a bit | Roland Scheidegger | 2010-10-09 | 1 | -6/+11 |
| | | | | | | | | | Sometimes coords are clamped to positive numbers before doing conversion to int, or clamped to 0 afterwards, in this case can use itrunc instead of ifloor which is easier. This is only the case for nearest calculations unfortunately, except linear MIRROR_CLAMP_TO_EDGE which for the same reason can use a unsigned float build context so the ifloor_fract helper can reduce this to itrunc in the ifloor helper itself. | ||||
* | gallivm: replace sub/floor/ifloor combo with ifloor_fract | Roland Scheidegger | 2010-10-09 | 1 | -5/+1 |
| | |||||
* | gallivm: faster iround implementation for sse2 | Roland Scheidegger | 2010-10-09 | 1 | -1/+53 |
| | | | | | | sse2 supports round to nearest directly (or rather, assuming default nearest rounding mode in MXCSR). Use intrinsic to use this rather than round (sse41) or bit manipulation whenever possible. | ||||
* | gallivm: fix trunc/itrunc comment | Roland Scheidegger | 2010-10-09 | 1 | -6/+6 |
| | | | | trunc of -1.5 is -1.0 not 1.0... | ||||
* | i915: Silence unused variable warning in non-debug builds. | Vinson Lee | 2010-10-08 | 1 | -0/+1 |
| | | | | | | Fixes this GCC warning. i830_vtbl.c: In function 'i830_assert_not_dirty': i830_vtbl.c:704: warning: unused variable 'i830' | ||||
* | glsl: Remove const decoration from inlined function parameters | Ian Romanick | 2010-10-08 | 1 | -0/+7 |
| | | | | | | | | | | | The constness of the function parameter gets inlined with the rest of the function. However, there is also an assignment to the parameter. If this occurs inside a loop the loop analysis code will get confused by the assignment to a read-only variable. Fixes bugzilla #30552. NOTE: this is a candidate for the 7.9 branch. | ||||
* | intel: Enable GL_ARB_explicit_attrib_location | Ian Romanick | 2010-10-08 | 1 | -0/+1 |
| | |||||
* | main: Enable GL_ARB_explicit_attrib_location for swrast | Ian Romanick | 2010-10-08 | 1 | -1/+2 |
| | |||||
* | glsl: Add linker support for explicit attribute locations | Ian Romanick | 2010-10-08 | 3 | -4/+48 |
| | |||||
* | glsl: Track explicit location in AST to IR translation | Ian Romanick | 2010-10-08 | 4 | -0/+60 |
| | |||||
* | glsl: Regenerate files changes by previous commit | Ian Romanick | 2010-10-08 | 2 | -902/+956 |
| | |||||
* | glsl: Add parser support for GL_ARB_explicit_attrib_location layouts | Ian Romanick | 2010-10-08 | 5 | -4/+75 |
| | | | | | Only layout(location=#) is supported. Setting the index requires GLSL 1.30 and GL_ARB_blend_func_extended. | ||||
* | glcpp: Regenerate files changes by previous commit | Ian Romanick | 2010-10-08 | 2 | -124/+120 |
| | |||||
* | glcpp: Add the define for ARB_explicit_attrib_location when present | Ian Romanick | 2010-10-08 | 1 | -0/+3 |
| | |||||
* | glsl: Regenerate files modified by previous commits | Ian Romanick | 2010-10-08 | 3 | -1412/+1431 |
| | |||||
* | glsl: Wrap ast_type_qualifier contents in a struct in a union | Ian Romanick | 2010-10-08 | 5 | -100/+109 |
| | | | | This will ease adding non-bit fields in the near future. | ||||
* | glsl: Clear type_qualifier using memset | Ian Romanick | 2010-10-08 | 1 | -19/+86 |
| | |||||
* | glsl: Slight refactor of error / warning checking for ARB_fcc layout | Ian Romanick | 2010-10-08 | 1 | -9/+7 |
| | |||||
* | glsl: Refactor 'layout' grammar to match GLSL 1.60 spec grammar | Ian Romanick | 2010-10-08 | 1 | -10/+21 |
| | |||||
* | glsl: Fail linking if assign_attribute_locations fails | Ian Romanick | 2010-10-08 | 1 | -1/+3 |
| | |||||
* | r600g: Silence uninitialized variable warning. | Vinson Lee | 2010-10-08 | 1 | -1/+2 |
| | |||||
* | r600g: Silence uninitialized variable warning. | Vinson Lee | 2010-10-08 | 1 | -1/+2 |
| | |||||
* | r600g: Silence uninitialized variable warning. | Vinson Lee | 2010-10-08 | 1 | -1/+2 |
| | |||||
* | gallivm: Remove unnecessary header. | Vinson Lee | 2010-10-08 | 1 | -1/+0 |
| | |||||
* | i965: Add register coalescing to the new FS backend. | Eric Anholt | 2010-10-08 | 1 | -0/+80 |
| | | | | | | | Improves performance of my GLSL demo 14.3% (+/- 4%, n=4) by eliminating the moves used in ir_assignment and ir_swizzle handling. Still 16.5% to go to catch up to the Mesa IR backend, presumably because instructions are almost perfectly mis-scheduled now. | ||||
* | i965: Enable attribute swizzling (repositioning) in the gen6 SF. | Eric Anholt | 2010-10-08 | 1 | -1/+2 |
| | | | | | | | | | We were trying to remap a fully-filled array down to only handing the WM the components it uses. This is called attribute swizzling, and if you don't enable it you just get 1:1 mappings of inputs to outputs. This almost fixes glsl-routing, except for the highest gl_TexCoord[] indices. | ||||
* | i965: Fix new FS gen6 interpolation for sparsely-populated arrays. | Eric Anholt | 2010-10-08 | 1 | -1/+1 |
| | | | | We'd overwrite the same element twice. | ||||
* | i965: Fix gen6 WM push constants updates. | Eric Anholt | 2010-10-08 | 1 | -1/+2 |
| | | | | | | We would compute a new buffer, but never point the hardware at the new buffer. This partially fixes glsl-routing, as now it get the updated uniform for which attribute to draw. | ||||
* | gallivm: Help for combined extraction and broadcasting. | José Fonseca | 2010-10-08 | 3 | -15/+102 |
| | | | | Doesn't change generated code quality, but saves some typing. | ||||
* | llvmpipe: First minify the texture size, then broadcast. | José Fonseca | 2010-10-08 | 3 | -32/+42 |
| | |||||
* | gallivm: Move into the as much of the second level code as possible. | José Fonseca | 2010-10-08 | 5 | -219/+120 |
| | | | | | Also, pass more stuff trhough the sample build context, instead of arguments. | ||||
* | i965: Handle swizzles in the addition of YUV texture constants. | Eric Anholt | 2010-10-08 | 1 | -2/+5 |
| | | | | | If someone happened to land a set in a different swizzle order, we would have assertion failed. | ||||
* | i965: Drop the check for YUV constants in the param list. | Eric Anholt | 2010-10-08 | 1 | -13/+0 |
| | | | | _mesa_add_unnamed_constant() already does that. | ||||
* | i965: Drop the check for duplicate _mesa_add_state_reference. | Eric Anholt | 2010-10-08 | 1 | -6/+0 |
| | | | | _mesa_add_state_reference does that check for us anyway. | ||||
* | mesa: Simplify a bit of _mesa_add_state_reference using memcmp. | Eric Anholt | 2010-10-08 | 1 | -12/+3 |
| | |||||
* | gallivm: Warn when doing inefficient integer comparisons. | José Fonseca | 2010-10-08 | 1 | -2/+18 |
| | |||||
* | gallivm: Avoid control flow for two-sided stencil test. | José Fonseca | 2010-10-08 | 1 | -92/+58 |
| | |||||
* | llvmpipe: fix off-by-one in tri_16 | Keith Whitwell | 2010-10-08 | 1 | -1/+1 |
| | |||||
* | llvmpipe: add rast_tri_4_16 for small lines and points | Keith Whitwell | 2010-10-08 | 7 | -148/+161 |
| | |||||
* | llvmpipe: clean up setup_tri a little | Keith Whitwell | 2010-10-08 | 1 | -27/+26 |
| | |||||
* | gallivm: round rather than truncate in new 4x4f->1x16ub conversion path | Keith Whitwell | 2010-10-08 | 1 | -17/+42 |
| | |||||
* | gallivm: Use the wrappers for SSE pack intrinsics. | José Fonseca | 2010-10-08 | 1 | -15/+3 |
| | | | | Fixes assertion failures on LLVM 2.6. | ||||
* | gallivm: special case conversion 4x4f to 1x16ub | Keith Whitwell | 2010-10-08 | 1 | -0/+84 |
| | | | | | Nice reduction in the number of operations required for final color output in many shaders. | ||||
* | llvmpipe: avoid overflow in triangle culling | Keith Whitwell | 2010-10-08 | 1 | -40/+39 |
| | | | | | | | | | | | Avoid multiplying fixed-point values. Calculate triangle area in floating point use that for culling. Lift area calculations up a level as we are already doing this in the triangle_both() case. Would like to share the calculated area with attribute interpolation, but the way the code is structured makes this difficult. | ||||
* | llvmpipe: fail gracefully on oom in scene creation | Keith Whitwell | 2010-10-08 | 6 | -42/+92 |
| | |||||
* | gallivm: Implement brilinear filtering. | José Fonseca | 2010-10-08 | 1 | -1/+89 |
| | |||||
* | gallivm: Fix copy'n'paste typo in previous commit. | José Fonseca | 2010-10-08 | 1 | -2/+2 |
| | |||||
* | gallivm: Clamp mipmap level and zero mip weight simultaneously. | José Fonseca | 2010-10-08 | 4 | -14/+52 |
| | |||||
* | gallivm: Use lp_build_ifloor_fract for lod computation. | José Fonseca | 2010-10-08 | 1 | -5/+3 |
| | | | | Forgot this one before. |