Commit graph

38821 commits

Author SHA1 Message Date
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
Tilman Sauerbeck
ec2e0fd1e9 r600g: Fixed a bo reference leak in the draw module.
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-09-10 13:09:33 +02:00