José Fonseca
8aa62cead7
llvmpipe: Fix shader variant key construction.
Fixes the blank screen on non-64bit mode.
16 anni fa
José Fonseca
1e6cc1cf37
llvmpipe: Fix build.
16 anni fa
José Fonseca
f311bacebd
llvmpipe: Merge all pixel format related files.
16 anni fa
José Fonseca
f85c5f8621
llvmpipe: Factor out and optimize the input interpolation.
Special attention is given to the interpolation of side by side quads.
Multiplications are made only for the first quad. Interpolation of
inputs for posterior quads are done exclusively with additions, and
perspective divide if necessary.
16 anni fa
José Fonseca
03180dca7a
llvmpipe: Pre-declare fetch_texel.
16 anni fa
José Fonseca
635c37e118
llvmpipe: Pass the alpha ref value and blend color in the jit context.
16 anni fa
José Fonseca
c022e15d1e
llvmpipe: Pass fragment context to generated function in a single structure.
16 anni fa
José Fonseca
8c7c108d71
llvmpipe: Structure manipulation helpers.
16 anni fa
José Fonseca
08dd41fd68
llvmpipe: Centralize the C <-> JIT interfaces in one place.
16 anni fa
José Fonseca
97b4681d7e
llvmpipe: Drop blend derived state.
Already included in the fragment shader.
16 anni fa
Keith Whitwell
04de13b9cd
llvmpipe: keep texture stride 16byte aligned
Fixes crash when resizing gears window.
16 anni fa
José Fonseca
4d2b0eb19e
llvmpipe: Squash the quad pipeline.
It had been reduced to one fixed stage.
16 anni fa
José Fonseca
77b35dc179
llvmpipe: s/uni/scalar/.
More obvious name.
16 anni fa
José Fonseca
5811ed87d7
llvmpipe: Add a bunch of comments.
Description/rationale/to-do items, while I still remember them...
16 anni fa
José Fonseca
3f36f4b051
llvmpipe: Split off vs stuff from lp_state_fs.c.
lp_state_fs.c is already too big without it.
16 anni fa
José Fonseca
c3b7406667
llvmpipe: Avoid duplicate clamping when converting between types.
16 anni fa
José Fonseca
9897180279
llvmpipe: Generate the fragment pipeline into a single function.
Still hackish. Will document and optimize later.
16 anni fa
José Fonseca
64cc71167f
llvmpipe: Get conversions working correctly for all integer types.
16 anni fa
José Fonseca
53f9a1180e
llvmpipe: Delete the quad polygon stipple stage.
Not used now -- stipple done by the draw module. May code generate later.
16 anni fa
José Fonseca
3d7a88674f
llvmpipe: Early depth testing.
16 anni fa
José Fonseca
90b5df8d1b
llvmpipe: Disassemble beyond referred code beyond the RET instruction.
16 anni fa
José Fonseca
c5531f575b
llvmpipe: Split control flow function declarations and notes.
16 anni fa
José Fonseca
1e4376a68f
llvmpipe: Back port recent softpipe-opt improvements from Keith.
16 anni fa
José Fonseca
f10ee9a0a1
llvmpipe: Don't limit the number of tiles in the cache.
16 anni fa
José Fonseca
87c383a2e5
llvmpipe: Clean dead tile cache code.
16 anni fa
José Fonseca
e3baeb3f14
llvmpipe: Simplify tile clears. Use pipe_fill_rect instead of scratch tile.
16 anni fa
José Fonseca
d94fbb4a48
llvmpipe: Start hiding llvmpipe_cached_tile.
16 anni fa
José Fonseca
1cb9ce0d27
llvmpipe: Drop depth/stencil support from tile cache.
16 anni fa
José Fonseca
e3b38e5ec1
llvmpipe: Code generate the depth test, and include in the shader.
Only 32bit depth/stencil surfaces supported for now. Stencil ops not
implemented yet.
16 anni fa
José Fonseca
db35ac36d9
llvmpipe: Update texture block from format.
16 anni fa
José Fonseca
343ccc8dd0
llvmpipe: Depth test to LLVM IR translation.
16 anni fa
José Fonseca
c0472f9c34
llvmpipe: Centralize mask update logic.
16 anni fa
José Fonseca
3dbf00f9ab
llvmpipe: Clamped float to unsigned norm via mantissa manipulation.
16 anni fa
José Fonseca
33ce51bc0d
llvmpipe: Several fixes of the conversion test.
16 anni fa
José Fonseca
d07b038366
llvmpipe: Generate instrinsics for integer comparisons.
It is a little messy, given the available instrucions form SIMD
integer comparisons is rather limited.
16 anni fa
José Fonseca
89146cd48d
llvmpipe: Mention the ability to get microbenchmarks from the unit tests.
Even better would be to have a -h/--help option to the tests...
16 anni fa
José Fonseca
9ae47069b4
llvmpipe: Code generate alpha testing and append to generated fragment shader.
16 anni fa
José Fonseca
b5e397c369
util: Dump PIPE_FUNC_x value names.
16 anni fa
Brian Paul
d6d4f8b66e
llvmpipe: use the udis86 lib to print the x86 assembly code
16 anni fa
Brian Paul
03b388e1c9
llvmpipe: frag shader comments
16 anni fa
Brian Paul
0f6c621aee
llvmpipe: blend comments
16 anni fa
Brian Paul
8329e59958
llvmpipe: comments about blend generator
16 anni fa
Brian Paul
f586d9546b
llvmpipe: basic comments
16 anni fa
José Fonseca
b9f2f01315
llvmpipe: Hack to force the line/point rasterization also fit the blend function expectations.
16 anni fa
José Fonseca
7643da88a3
llvmpipe: Refer my udis86 branch which decodes more opcodes.
16 anni fa
José Fonseca
7c2dc3faa8
llvmpipe: Code generate the position interpolation.
16 anni fa
José Fonseca
6f5cd15f80
llvmpipe: Simpler variant of lp_build_broadcast_scalar.
16 anni fa
José Fonseca
17baa01bfb
llvmpipe: Put the position coefficients together with the inputs.
The automatic search'n'replace leaves lp_setup.c a bit ugly, but this code
will be eventually code generated as well.
16 anni fa
José Fonseca
7926b42d41
llvmpipe: Implement saturation.
16 anni fa
José Fonseca
39352b3443
llvmpipe: Put color/depth directly into the quad structure.
16 anni fa