04480a04b10524e156cb01d5f7bd8ec02fcc4a67 |
|
22-Dec-2016 |
Roland Scheidegger <sroland@vmware.com> |
llvmpipe: use alpha from already converted color if possible For rgbx formats, there is no point in doing alpha conversion again (and with different tranpose even, so llvm can't eliminate it). Albeit it looks like there's some minimal changes needed in the blend code (found by code inspection, no test seemed to complain) if we do this - the blend factors are already sanitized if we have no destination alpha, however for src_alpha_saturate it looks like it still might make a difference (note that we forced has_alpha to true before for some formats and nothing complained, but this seems safer). Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
fb523cb6ad3ffef22ab4b9cce9e53859c17c5739 |
|
16-Apr-2016 |
Marek Olšák <marek.olsak@amd.com> |
gallium: merge PIPE_SWIZZLE_* and UTIL_FORMAT_SWIZZLE_* Use PIPE_SWIZZLE_* everywhere. Use X/Y/Z/W/0/1 instead of RED, GREEN, BLUE, ALPHA, ZERO, ONE. The new enum is called pipe_swizzle. Acked-by: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
f4b3430a36ea88707f59ce147a140a1a559378c5 |
|
19-Mar-2014 |
Richard Sandiford <rsandifo@linux.vnet.ibm.com> |
llvmpipe: Tighten check for alpha-only formats The AoS version of ld_build_blend_factor was assuming that if the first channel was alpha, there were no rgb components. Fixes glean/blendFunc on System z. No piglit regressions on x86_64. The shortcut is still used in tests like spec/ARB_framebuffer_object/ fbo-alpha. Signed-off-by: Richard Sandiford <rsandifo@linux.vnet.ibm.com>
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
e57b98bad33b13ba02b11144709dd09af2ea8c95 |
|
18-Jul-2013 |
Roland Scheidegger <sroland@vmware.com> |
llvmpipe: fix blending with SRC_ALPHA_SATURATE with some formats without alpha We were fixing up the blend factor to ZERO, however this only works correctly with fixed point render buffers where the input values are clamped to 0/1 (because src_alpha_saturate is min(As, 1-Ad) so can be negative with unclamped inputs). Haven't seen any failure anywhere due to that with fixed point SNORM buffers (which clamp inputs to -1/1) but it should apply there as well (snorm blending is rare, even opengl 4.3 doesn't require snorm rendertargets at all, d3d10 requires them but they are not blendable). Doesn't look like piglit hits this though (some internal testing hits the float case at least). (With legacy OpenGL we could theoretically still use the fixup to zero if the fragment color clamp is enabled, but we can't detect that easily since we don't support native clamping hence it gets baked into the shader.) Reviewed-by: Jose Fonseca <jfonseca@vmware.com> Reviewed-by: Zack Rusin <zackr@vmware.com>
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
8b8bca06dff5b30da1ac97d18cc0e91acb13d516 |
|
12-Feb-2013 |
Roland Scheidegger <sroland@vmware.com> |
llvmpipe: implement dual source blending link up the fs outputs and blend inputs, and make sure the second blend source is correctly loaded and converted (which is quite complex). There's a slight refactoring of the monster generate_unswizzled_blend() function where it makes sense to factor out alpha conversion (which needs to run twice for dual source blend). This passes piglit arb_blend_func_extended tests. v2: remove new but ultimately not used function... Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
67906f91c9b924306d6bfec5d718b6225390205d |
|
07-Feb-2013 |
Roland Scheidegger <sroland@vmware.com> |
llvmpipe: first steps of adding dual source blend support This adds support of the additional blending factors to the blend function itself, and also enables testing of it in lp_test_blend (which passes). Still need to add the glue code of linking fs shader outputs to blend inputs in llvmpipe, and probably need to add special handling if destination doesn't include alpha (which lp_test_blend doesn't test). Reviewed-by: Jose Fonseca <jfonseca@vmware.com> Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
48b01e6a1003d997778df8d36f7004ab1f1be629 |
|
06-Feb-2013 |
Brian Paul <brianp@vmware.com> |
llvmpipe: remove extraneous const qualifier
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
8c84a82383fe56bc1a8977ce42de36f71ffc108e |
|
13-Jan-2013 |
Roland Scheidegger <sroland@vmware.com> |
llvmpipe: fix using wrong format with MRT in blend code We were passing in the rt index however this was always 0 for non-independent blend case. (The format was only actually used to decide if the color mask covered all channels so this went unnoticed and was discovered by accident.) Additionally, there was a second problem because we do fixups in the key based on color buffer format we cannot use non-independent blend anyway as the fixed up values would never get used. So always turn non-independent blending into independent. Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: José Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
1cead8845b95643582903f054255d20b3de3e19a |
|
28-Nov-2012 |
José Fonseca <jfonseca@vmware.com> |
llvmpipe: Implement logic ops for the AoS path. It was forgotten in the previous patch series, but it is trivial to implement, based on the SoA path. This fixes glean logicOp failures.
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
fa1b481c09b14e01eca1b3db8e0854033f6dee3d |
|
13-Sep-2012 |
James Benton <jbenton@vmware.com> |
llvmpipe: Unswizzled rendering. Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
1d3789bccbbcc814fd7b339e9f5b5631e30d9f0e |
|
11-Jul-2012 |
James Benton <jbenton@vmware.com> |
gallivm: Updated lp_build_const_mask_aos to input number of channels. Also updated lp_build_const_mask_aos_swizzled to reflect this. Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
8684ffc141ed024ab1d42fcba31d8517288fac40 |
|
03-Jul-2012 |
James Benton <jbenton@vmware.com> |
llvmpipe: Unified common code between AoS and SoA blending. Added a new file lp_bld_blend.c for the common code. Merged and added some simple optimisations. Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
c23fd547c060c4137eab0f878a1028c5903384eb |
|
25-Apr-2012 |
James Benton <jbenton@vmware.com> |
gallivm: Added lp_build_const_mask_aos_swizzled Allows the creation of const aos masks which have the mask swizzled to match the correct format. Updated existing mask creation code to use the swizzled version where necessary (tgsi register masks and llvmpipe aos blending). Signed-off-by: José Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
16b081f1b0acf3158423c9fbed69c85807ce5276 |
|
19-Apr-2012 |
James Benton <jbenton@vmware.com> |
llvmpipe: add masking support to aos blend Signed-off-by: José Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
0b0f4628d6fb8276a9f1c336a785a838b602bca8 |
|
18-Apr-2012 |
James Benton <jbenton@vmware.com> |
llvmpipe: Added support for color masks in AoS blending. Signed-off-by: José Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
efc82aef35a2aac5d2ed9774f6d28f2626796416 |
|
01-Dec-2010 |
Brian Paul <brianp@vmware.com> |
gallivm/llvmpipe: squash merge of the llvm-context branch This branch defines a gallivm_state structure which contains the LLVMBuilderRef, LLVMContextRef, etc. All data structures built with this object can be periodically freed during a "garbage collection" operation. The gallivm_state object has to be passed to most of the builder functions where LLVMBuilderRef used to be used. Conflicts: src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c src/gallium/drivers/llvmpipe/lp_state_setup.c
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
9a8e9f4595b66ea094b293da1afcded8f06ab3d6 |
|
22-Sep-2010 |
José Fonseca <jfonseca@vmware.com> |
llvmpipe: Special case complementary and identify blend factors in SoA. One multiplication instead of two. Also fix floating point random number generation and verification. TODO: Do the same for AoS blending.
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
34ea50f6720d6aca970613da560a1f25f5b5772c |
|
02-Sep-2010 |
José Fonseca <jfonseca@vmware.com> |
gallivm: s/lp_build_broadcast_aos/lp_build_swizzle_scalar_aos/ More accurate description of this function purpose.
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
6ed726b8fc6210a41fe325591e1428d19f419108 |
|
02-Sep-2010 |
José Fonseca <jfonseca@vmware.com> |
gallivm: Pass condition masks as an unsigned bitmask. Much more convenient than boolean arrays.
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
83ced5a918fd597fe2cb2991ff9732920354718c |
|
01-Jul-2010 |
José Fonseca <jfonseca@vmware.com> |
llvmpipe: Remove lp_build_swizzle2_aos(). Unnecessary special case.
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
f795735f4251d5f7842ee9e09994641c5c46d25d |
|
11-May-2010 |
Brian Paul <brianp@vmware.com> |
llvmpipe: fix up indexing of blend/colormask state for render targets
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
bd34f61a7a84b039b1c9d4aafbdb8f7656c8dd11 |
|
11-May-2010 |
Brian Paul <brianp@vmware.com> |
llvmpipe: add, update, rewrap comments
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
23a2166bc5e4ceb3576736c3b0ce2b62dd241b3c |
|
16-Apr-2010 |
Brian Paul <brianp@vmware.com> |
llvmpipe: remove unneeded break stmt
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
d75129dd13c2aac4053340487b87127420449ee8 |
|
16-Apr-2010 |
Brian Paul <brianp@vmware.com> |
gallivm/llvmpipe: move lp_bld_blend* files to llvmpipe/ directory
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
c61bf363937f40624a5632745630d4f2b9907082 |
|
09-Feb-2010 |
Zack Rusin <zackr@vmware.com> |
llvmpipe: export the tgsi translation code to a common layer the llvmpipe tgsi translation is a lot more complete than what was in gallivm so replacing the latter with the former. this is needed since the draw llvm paths will use the same code. effectively the proven llvmpipe code becomes gallivm.
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
38f6f23fcf37247fd709d1c612d08bfa9b124e69 |
|
02-Feb-2010 |
José Fonseca <jfonseca@vmware.com> |
gallium: Make pipe_atomic a regular int32_t.
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
04cb5dfb1e0968300204980b08748a140e5e7918 |
|
20-Jan-2010 |
Roland Scheidegger <sroland@vmware.com> |
llvmpipe: adapt to per-rendertarget blend changes
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
0bfc579bd435b4d0c258258440866840c473f681 |
|
03-Jan-2010 |
Vinson Lee <vlee@vmware.com> |
llvmpipe: Remove comma at end of enumerator list.
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
b4835ea03d64261da5a892f9590c9977b06920e8 |
|
14-Sep-2009 |
José Fonseca <jfonseca@vmware.com> |
llvmpipe: Make lp_type a regular union. Union not worth the hassle of violating C99 or adding a name to the structure.
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
5811ed87d732101ab8cfbd087bc99d8c6c963f30 |
|
22-Aug-2009 |
José Fonseca <jfonseca@vmware.com> |
llvmpipe: Add a bunch of comments. Description/rationale/to-do items, while I still remember them...
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
5999ebfb69a47fa12d1f534871ea01a3f889f62f |
|
18-Aug-2009 |
José Fonseca <jfonseca@vmware.com> |
llvmpipe: Debug helper function to name llvm intermediate values.
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
09a7b011acb3957725bb7e1bc4125f0939a295e7 |
|
17-Aug-2009 |
José Fonseca <jfonseca@vmware.com> |
llvmpipe: Move lp_build_select to lp_bld_logic.[ch].
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
29d94a9cbb7858cc8b0cfb05c0bb66f56a6acfa5 |
|
10-Aug-2009 |
José Fonseca <jfonseca@vmware.com> |
llvmpipe: Code generate color masking.
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
e7fc21434d2c5a9177a427950be5029ff4db43ee |
|
09-Aug-2009 |
José Fonseca <jfonseca@vmware.com> |
llvmpipe: Handle disabled blending too.
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|
2529ed5616b1b152766a3355444260b88184cd6e |
|
09-Aug-2009 |
José Fonseca <jfonseca@vmware.com> |
llvmpipe: SoA blending. Throughput seems to be 4x higher.
/external/mesa3d/src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c
|