Commit Graph

38872 Commits

Author SHA1 Message Date
Keith Whitwell 4b56e86e67 llvmpipe: allow tri_3_16 at any 4-aligned location within a tile
Doesn't require 16-alignment, so catch more cases.
2010-09-12 15:03:49 +01:00
Keith Whitwell 26b663c2aa llvmpipe: refactor tri_3_16
Keep step array as a set of four m128i's and reuse throughout the
rasterization.
2010-09-12 15:03:49 +01:00
Keith Whitwell 67b957781d llvmpipe: pass linear masks to fragment shader
Fragment shader can extract the correct bits for each quad.
2010-09-12 15:03:49 +01:00
Keith Whitwell 4b99b9f5ff llvmpipe: fix warnings on both 32 and 64 bit builds 2010-09-12 15:01:41 +01:00
Keith Whitwell 51b1d4f03c llvmpipe: fix wierd performance regression in isosurf
I really don't understand the mechanism behind this, but it
seems like the way data blocks for a scene are malloced, and in
particular whether we treat them as stack or a queue, and whether
we retain the most recently allocated or least recently allocated
has a real affect (~5%) on isosurf framerates...

This is probably specific to my distro or even just my machine,
but none the less, it's nicer not to see the framerates go in the
wrong direction.
2010-09-12 14:58:43 +01:00
José Fonseca 67763488b1 pb: Fix the build, and add notes. 2010-09-12 10:37:06 +01:00
José Fonseca 853953dc3c llvmpipe: Only generate the whole shader specialization for opaque shaders.
If not opaque, then the color buffer will have to be read any way,
therefore the specialization is pointless.
2010-09-12 10:15:48 +01:00
Dave Airlie b5fcf0c8e0 pb: add void * for flush ctx to mapping functions
If the buffer we are attempting to map is referenced by the unsubmitted
command stream for this context, we need to flush the command stream,
however to do that we need to be able to access the context at the lowest
level map function, currently we set the buffer in the toplevel map, but this
racy between context. (we probably have a lot more issues than that.)

I'll look into a proper solution as suggested by jrfonseca when I get some time.
2010-09-12 13:32:43 +10:00
Luca Barbieri 95555ed03e nv30: fix breakage due to 10 texcoord support on nv40 2010-09-11 21:11:03 +02:00
Chia-I Wu c34225974b Add missing files to the tarball file lists. 2010-09-12 02:31:33 +08:00
Chia-I Wu 19b2cfd6f6 mesa: Fix depend.es[12] generation when LLVM is enabled.
"llvm-config --cflags" outputs -f options, which conflict makedepend.
Clean up compiler flags and append LLVM_CFLAGS to the new xxx_CFLAGS
instead of xxx_CPPFLAGS, where xxx may be MESA, ES1, or ES2.
2010-09-12 02:31:33 +08:00
Tilman Sauerbeck 33b1d14913 r600g: Undo bo placement change.
This reverts a part of e795ca8f31
that causes artefacts and a performance drop.

Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-09-11 18:40:45 +02:00
José Fonseca 3ad3cbfb12 llvmpipe: Silence some warnings. 2010-09-11 13:47:58 +01:00
José Fonseca 552e2b5065 gallivm: nr_channels is only valid for formats with plain layout.
This is erroneously throwing non plain formats out of the faster
AoS sampling path.

Doing 8bit interpolation for single channels such as L8 should be no
worse than with floating point. But this may need more investigation.
2010-09-11 13:34:54 +01:00
José Fonseca 74f6edaee4 gallivm: Use const keyword on swizzles. 2010-09-11 13:31:35 +01:00
José Fonseca 697fdf3fff gallivm: Allow to TGSI AoS translation to happen in BGRA ordering.
Or any ordering.
2010-09-11 13:31:17 +01:00
José Fonseca 277d768d10 llvmpipe: Don't store display the alpha ref value in the key.
It's never used.
2010-09-11 13:30:14 +01:00
José Fonseca dcc5d7f672 gallivm: Add a new debug flag to warn about performance issues. 2010-09-11 13:29:29 +01:00
José Fonseca c0d41d0404 gallivm: Helper functions for pointer indirection. 2010-09-11 13:27:38 +01:00
José Fonseca 225530f1f2 gallivm: Cleanup the TGSI <-> sampler interface. 2010-09-11 13:27:27 +01:00
José Fonseca 775edbfaa1 gallivm: Add some utility functions to set/get array elements too. 2010-09-11 13:27:22 +01:00
José Fonseca 93158622e2 gallivm: Basic AoS TGSI -> LLVM IR.
Essentially a variation of the SoA version.
2010-09-11 13:25:49 +01:00
José Fonseca 58daea741f gallivm: Move the texture modifiers to the header.
Useful to pass these around.
2010-09-11 13:25:46 +01:00
José Fonseca 34ea50f672 gallivm: s/lp_build_broadcast_aos/lp_build_swizzle_scalar_aos/
More accurate description of this function purpose.
2010-09-11 13:01:31 +01:00
Alex Corscadden 96c6e7e73e Add a test for the KIL opcode
This is a simple test for the KIL opcode.  It should render a 6 sided figure
with a colored interior.
2010-09-11 13:01:20 +01:00
Keith Whitwell afd328afa8 llvmpipe: restore larger command blocks 2010-09-11 10:04:53 +01:00
Keith Whitwell 10d0a835bc llvmpipe: move some debug to DEBUG_SCENE 2010-09-11 10:04:53 +01:00
Keith Whitwell bc759cd37e llvmpipe: add DEBUG_MEM option 2010-09-11 10:04:53 +01:00
Keith Whitwell b7a54b3dc6 llvmpipe: allow bigger scenes 2010-09-11 10:04:52 +01:00
Tom Stellard 4749429a4a r300/compiler: Reorganize presub_helper() 2010-09-10 18:18:10 -07:00
Tom Stellard 3fffcb317c r300/compiler: Don't use presubtract in TEX instructions 2010-09-10 18:18:10 -07:00
Tom Stellard 8b67159e9a r300/compiler: Print the presub subtract operation in the correct order 2010-09-10 18:18:10 -07:00
Tom Stellard e3fc210a4f r300/compiler: Fix dataflow bug in presub_helper() 2010-09-10 18:18:09 -07:00
Tom Stellard d442c7f172 r300/compiler: Replace asserts with error messages 2010-09-10 18:18:09 -07:00
Tom Stellard 66b1e716fb r300/compiler: Fix copy propigation for some presub instructions 2010-09-10 18:18:09 -07:00
Tom Stellard 564653b9f1 r300/compiler: Add peephole optimization for the 'sub' presubtract operation 2010-09-10 18:18:09 -07:00
Tom Stellard a64b4a05af r300/compiler: Add peephole optimization for the 'add' presubtract operation 2010-09-10 18:18:09 -07:00
Tom Stellard 598e220f95 r300/compiler: Clean up rc_pair_alloc_source() 2010-09-10 18:18:09 -07:00
Tom Stellard 63432ecfce r300/compiler: Enable presubtract sources
The r300 compiler can now emit instructions that select from the presubtract
source.  A peephole optimization has been added to convert instructions like:
ADD Temp[0].x, none.1, -Temp[1].x into the INV (1 - src0) presubtract
operation.
2010-09-10 18:18:08 -07:00
Ian Romanick d8a3662008 mesa: Remove unused Emit flags from gl_shader_compiler_options 2010-09-10 13:10:26 -07:00
Ian Romanick 55aaee6020 intel: Remove noise opcode support from i915 and i965 drivers
With recent changes to the GLSL compiler, these opcode should never be
seen in these drivers.
2010-09-10 12:33:15 -07:00
Alex Deucher 58eaade662 r600c: add missing header 2010-09-10 14:14:12 -04:00
Alex Deucher 9cced19125 r600c: add OQ support for evergreen 2010-09-10 13:26:10 -04:00
Alex Deucher 7ffc5d7c2e r600c: oq updates 2010-09-10 13:13:08 -04:00
Alex Deucher 4e53d6e6c9 r600c: add blit support for evergreen
driver was previously calling the r600 blit code
which won't work on evergreen.
2010-09-10 13:01:23 -04:00
Alex Deucher 886c6c09ea r600c: emit start3d packet on evergreen 2010-09-10 13:01:23 -04:00
Alex Deucher f35b728acc r600c: fix some typos 2010-09-10 13:01:23 -04:00
Alex Deucher a712db73ce r600c: fix type in cb setup on evergreen 2010-09-10 13:01:23 -04:00
Alex Deucher c7843280f0 r600c: add support for more rendering formats on evergreen 2010-09-10 13:01:22 -04:00
Andre Maasikas 78109952d4 r600: set correct initial point_minmax values 2010-09-10 14:55:10 +03:00