Brian Paul
f1f49bd465
llvmpipe: fix broken TGSI_OPCODE_FRC codegen
2009-12-16 15:06:17 +00:00
Brian Paul
43d6c81ae2
llvmpipe: fix broken lp_build_abs()
2009-12-16 15:06:16 +00:00
Marek Olšák
2ddee2cfbc
r300g: fix emission of which textures are enabled
...
It fixes most of the "Bad CS" issues in piglit/texCombine and piglit/fbo.
Some other issues of this kind will get fixed in the kernel soon (depth-only
rendering, S3TC, and RGTC).
2009-12-15 19:04:46 -08:00
Marek Olšák
ded4ecde60
r300g: clean up the invariant state
2009-12-15 19:04:46 -08:00
Marek Olšák
acce4824ec
r300g: clamp vertex indices to [min,max] everywhere
2009-12-15 19:04:46 -08:00
Marek Olšák
a6d701d1c6
r300g: if no colorbuffers are set, disable blending and set the color mask to 0
...
This seems to be the only way to disable the first colorbuffer.
2009-12-15 19:04:46 -08:00
Marek Olšák
cf85bf9cd0
r300g: set the number of colorbuffers in RB3D_CCTL
2009-12-15 19:04:46 -08:00
Marek Olšák
de0befc4b2
r300g: remove unnecessary flush in set_sampler_textures
2009-12-15 19:04:45 -08:00
Marek Olšák
c5e0b0bc37
r300g: add Z24X8 to the list of unsupported sampler formats on R3xx-R4xx
2009-12-15 19:04:45 -08:00
Marek Olšák
38a97148bf
r300g: add acceleration of the clear, surface_copy, and surface_fill functions
2009-12-15 19:04:45 -08:00
Marek Olšák
417ce06306
r300g: flush CS if a buffer being deleted is referenced by it
2009-12-15 19:04:45 -08:00
Michel Dänzer
bc443d841c
r300: Fix typo on < R5xx RS setup for blits.
2009-12-16 00:51:55 +01:00
Marek Olšák
80e8156394
util/blitter: kill the draw_quad callback
2009-12-15 18:00:48 +00:00
Marek Olšák
85bf420a78
util/blitter: allocate most of the state objects on-demand
2009-12-15 18:00:48 +00:00
Marek Olšák
ab85ba30e2
util/blitter: use PIPE_MAX_* limits, and fix a memory leak
2009-12-15 18:00:48 +00:00
Marek Olšák
e1d0f47808
pipe: add PIPE_MAX_TEXTURE_TYPES
2009-12-15 18:00:39 +00:00
Marek Olšák
55753f59ae
util: add blitter
2009-12-15 18:00:30 +00:00
Marek Olšák
4c61022b4a
util: add a function which converts 2D coordinates to cubemap coordinates
...
The code was taken over from u_gen_mipmap.
2009-12-15 17:59:54 +00:00
Marek Olšák
dff4c9ed55
util: add new fragment shaders to simple_shaders
...
New shaders:
* Fragment shader which writes depth sampled from a texture
* Fragment shader which copies COLOR[0] to multiple render targets
Additional improvements:
* The fragment 'tex' shaders now take a sampler type (TGSI_TEXTURE_*)
so that they can sample from any type of texture, not only from a 2D one.
2009-12-15 17:59:50 +00:00
José Fonseca
3a15c48ece
llvmpipe: Fix yet another copynpaste typo in lp_build_log2_approx.
...
Now fslight looks perfect.
2009-12-15 14:46:43 +00:00
José Fonseca
85c27c3ef7
llvmpipe: Fix lp_build_polynomial comment.
2009-12-15 14:15:52 +00:00
José Fonseca
72c9878069
llvmpipe: Fix typo in lp_build_log constant.
2009-12-15 13:58:53 +00:00
José Fonseca
079b1cf4cf
util: Fix unity value for swizzle 1.
...
It should be 255 for ubytes, and not 1.
Thanks Michal for spotting this.
2009-12-15 13:40:13 +00:00
José Fonseca
846e38f1c3
llvmpipe: Fix bad SI -> FP conversion into lp_build_log2_approx.
...
It should be a bitcast as the integer value is actually an encoded FP
already.
2009-12-15 13:15:16 +00:00
José Fonseca
d508bf862b
util: Add dl wrappers.
...
Borrowed from Mesa, slightly changed for more type safety.
2009-12-15 13:15:16 +00:00
Michal Krol
c1efa45e04
tgsi/text: Don't use strncasecmp(), it breaks windows build.
...
Also, break out of the for-loop when a matching property is found.
2009-12-15 13:54:05 +01:00
Andre Maasikas
f8135d545b
r600: use _mesa_insert_instructions to fixup wpos instead of manual ins insert
...
this keeps branch targets correct.
glsl/trirast works correctly now afaics
2009-12-15 12:08:55 +02:00
Andre Maasikas
dbc374cd30
r600: fix typos for vert-tex
...
at least i think this is how it was meant to work
2009-12-15 10:26:37 +02:00
Andre Maasikas
bae5e7f213
r600: fix fragment.position
...
wpos.y seems inferted to what opengl expexts, so calculate correct
value from window dimension and replace references in fragmentprog
with calculated value
2009-12-15 09:46:57 +02:00
Andre Maasikas
10f5cff6ac
r600: add support for FRAG_ATTRIB_PNTC
2009-12-15 09:46:49 +02:00
Andre Maasikas
0c046bec8f
r600: add DDX DDY opcodes
2009-12-15 09:46:34 +02:00
Richard Li
18ebcfe393
r600 : add texture support for vertex shader.
2009-12-14 18:08:40 -05:00
Zack Rusin
3ff688ea29
tgsi: add properties and system value register
...
adds support for properties to all parts of the tgsi framework, plus
introduces a new register which will be used for system generated
values.
2009-12-14 16:35:09 -05:00
Maarten Maathuis
41b52aa336
nouveau: avoid running out of relocs
...
- Added flush notify functions for NV30 and NV40.
- Flushing mid frame will call flush notify, which will resubmit all
relocs.
- We don't try to recover from reloc failure yet.
2009-12-14 19:31:54 +01:00
Christoph Bumiller
2677f199a5
nv50: be more cautious about using reg_instance
...
Trying to free part of nv50_pc->reg_instances[] for an
nv50_reg representing an indirect constant resulted in
a segmentation fault.
2009-12-14 18:39:13 +01:00
Michal Krol
c14be63c56
tgsi/ureg: Add ureg_DECL_gs_input().
...
Allows one to declare GS input registers.
2009-12-14 17:29:58 +01:00
Christoph Bumiller
1778ddaf74
nv50: store immediates as uint32
...
Sometimes we want non-float immediates, hacking them into
floats isn't nice.
Sorry, this should have already been committed before.
2009-12-14 11:12:59 +01:00
Patrice Mandin
d4d880199e
nouveau: nv50: Add missing ctor_immd_4u32 function
2009-12-13 20:09:33 +01:00
Maciej Cencora
e76bb2f337
r300: enable accelerated support for glCopyTexImage only under KMS
2009-12-13 17:22:33 +01:00
Maciej Cencora
8403df33e0
r300: fix regression introduced by da73c1ed
...
The 0 value is correct for I8 format.
2009-12-13 17:20:11 +01:00
Maciej Cencora
9d8501bf27
r300: fix glCopyTexSubImage
...
Need to properly setup colorbuffer when dst pitch != dst width.
2009-12-13 17:20:11 +01:00
Christoph Bumiller
079b670111
nv50: add proper zslice offset in miptree_surface
2009-12-13 14:39:19 +01:00
Christoph Bumiller
7b5a6fa0c8
nv50: use m2mf z pos instead of calculating offset manually
2009-12-13 14:39:19 +01:00
Christoph Bumiller
44d8c9add2
nv50: add craziness for non-constant TXB and TXL
...
If lod or bias can be non-constant across a quad of fragments,
we need to execute TEX separately for each value.
Don't ask why.
2009-12-13 14:39:19 +01:00
Patrice Mandin
b91503f457
Revert "nouveau: nv30: Disable swizzled surface usage if any dimension is 1 (Warsow creates a 1x1 front buffer)"
...
This reverts commit ec7844537e .
2009-12-12 23:15:08 +01:00
Patrice Mandin
ec7844537e
nouveau: nv30: Disable swizzled surface usage if any dimension is 1 (Warsow creates a 1x1 front buffer)
2009-12-12 22:31:53 +01:00
Christoph Bumiller
d80778218d
nv50: support TXB and TXL
...
... and don't set the 'live' flag for TEX anymore, we'd
have to know if results affect the inputs for another TEX,
and I'm not going to do that kind of analysis now.
2009-12-12 16:39:00 +01:00
Christoph Bumiller
b0036f391a
nv50: add S8Z24 depth texture format too
2009-12-12 16:38:59 +01:00
Christoph Bumiller
cc0ffaba7d
nv50: fix depth comparison func TSC bits
...
Unfortunately it seems that if depth comparison is
active and we read a 2D texture, i.e. provide only
2 inputs, the second is used for comparison ...
2009-12-12 16:38:59 +01:00
Christoph Bumiller
6a689783b9
nv50: add src_mask case for IF opcode
2009-12-12 16:38:59 +01:00