Commit graph

1645 commits

Author SHA1 Message Date
Zack Rusin
5668e7fa80 gallium: actually flip the coordinates 2008-11-10 08:05:20 -07:00
Brian
325cbeb29a util: Fix util_fast_pow/exp2/log2.
- Use a lookup table for log2.

- Compute (float) (1 << ipart) by tweaking with the exponent directly to
avoid integer overflow and float conversion.

- Also table negative exponents to avoid float division and branching.

- Implement util_fast_exp as function of util_fast_exp2.

--------

Cherry-picked from gallium-0.2: 8415d06d90

This fixes some pow() glitches seen in fslight.c, spectex.c, etc.

Conflicts:
       src/gallium/auxiliary/util/u_math.h
2008-11-09 10:17:43 -07:00
Brian
7e83157019 gallium: _debug_vprintf() should be silent if DEBUG is not defined 2008-11-09 09:45:12 -07:00
Brian
bb8a9ce705 gallium: implement TGSI_OPCODE_NRM/NRM4 in tgsi_exec.c 2008-11-06 19:25:21 -07:00
Brian Paul
6c3e7365d5 gallium: debug code to print vertex array data (disabled) 2008-11-06 14:57:20 -07:00
Brian Paul
93fd5e150b softpipe: debug code (disabled) 2008-11-06 14:56:59 -07:00
Brian
5b2b064a5c gallium: check execution mask in indirect register loads
Zero-out the index for disabled execution channels to avoid using potential
garbage values (thus avoiding bad array indexing).
2008-11-05 20:04:49 -07:00
Brian
639a2b0ec8 gallium: don't range check tgsi register index for indirect accesses
Fixes progs/vp/arl.txt test.
2008-11-05 19:27:27 -07:00
Brian Paul
f0debbb0bb gallium: call tgsi_set_exec_mask() and use exec mask in SSE ARL code
This prevents vertex shaders from referencing invalid memory locations when
the shader is operating on less than four vertices or fragments.
2008-11-05 14:02:07 -07:00
Brian Paul
03c0ce4c61 gallium: added tgsi_set_exec_mask() 2008-11-05 13:56:20 -07:00
Brian Paul
a137f03c56 gallium: added some sanity check assertions for constant buffer indexing 2008-11-05 13:55:56 -07:00
Brian Paul
05a17f83b0 gallium: added some debug code (disabled) 2008-11-05 09:08:56 -07:00
Brian Paul
fc3b361191 gallium: disable some debug output 2008-11-05 09:08:56 -07:00
Jakob Bornecrantz
64a9908816 i915: Remove faulty assert 2008-11-05 16:49:48 +01:00
michal
5a0299875c draw: Implement TGSI_OPCODE_TRUNC. 2008-11-05 11:59:33 +01:00
michal
502974b345 tgsi: Implement OPCODE_TRUNC. 2008-11-05 11:59:33 +01:00
Brian Paul
766cb95a45 gallium: new sanity assertions in mmAllocMem() 2008-10-29 17:02:56 -06:00
Brian Paul
7d7f0f1706 gallium: fix copy&paste bug 2008-10-29 17:02:30 -06:00
Brian Paul
8160cb4935 gallium: fix alignment parameter passed to u_mmAllocMem()
Was 32, now 5.  The param is expressed as a power of two exponent.
The net effect is that the alignment was a no-op on X86 but on PPC we
always got the same memory address everytime rtasm_exec_malloc() was called.
2008-10-29 14:55:57 -06:00
Keith Whitwell
52e6fbb655 gallium: recognize DEBUG as well as DBG for debugging 2008-10-28 16:28:56 +00:00
Keith Whitwell
23cc303994 draw: don't assume output buffer pointer is aligned 2008-10-07 16:44:24 +01:00
Keith Whitwell
c48da7d78b draw: add switch for drivers to force vertex data passthrough 2008-10-07 16:33:52 +01:00
Brian
f7ee3c9792 gallium: replace assertion with conditional/recovery code
The assertion failed when we ran out of exec memory.
Found with conform texcombine test.
2008-10-06 18:31:56 -06:00
Michal Krol
9b82701813 draw: Fix compiler errors on Windows. 2008-10-06 13:23:56 +02:00
Keith Whitwell
7053f8c902 rtasm: fix debug build 2008-10-06 11:54:22 +01:00
Keith Whitwell
53d4706c6c make draw's vertex_info struct smaller/quicker to compare with memcmp() 2008-10-06 11:49:42 +01:00
Keith Whitwell
6965532e14 rtasm: add sse_movntps 2008-10-03 13:50:34 +01:00
Keith Whitwell
918a444913 draw: modify prefetching slightly 2008-10-02 12:59:15 +01:00
Keith Whitwell
af9cfea9cc draw: don't keep refetching constant inputs 2008-10-02 12:59:15 +01:00
Keith Whitwell
102daee1b8 rtasm: add prefetch instructions 2008-10-02 12:59:14 +01:00
Keith Whitwell
dd7e5a4980 draw: add streamlined paths for fetching linear verts 2008-10-02 12:59:14 +01:00
Stephane Marchesin
a6ff215777 Gallivm: add slt. glxgears should be running, except it isn't. 2008-10-01 00:00:58 +02:00
Stephane Marchesin
4ae161e940 Gallivm: port to llvm 2.4. 2008-09-30 20:50:49 +02:00
Stephane Marchesin
7379d0ef8f Gallivm: fix off-by-one. 2008-09-28 23:18:55 +02:00
Stephane Marchesin
a0a06cbc5b Gallivm: more instructions. 2008-09-28 19:48:26 +02:00
Stephane Marchesin
ab74b8e354 Gallivm: make it compile again, add some opcodes. 2008-09-28 18:33:23 +02:00
Jakob Bornecrantz
0b8e19ffc5 tgsi: Build tgsi_text with make 2008-09-18 16:29:11 +02:00
José Fonseca
eb5c288df4 util: A few more memory debugging checks. 2008-09-18 23:23:02 +09:00
José Fonseca
451888ee8f util: Add missing p_debug.h include. 2008-09-18 23:23:02 +09:00
Brian Paul
f68d2a0feb gallium: fix surface object memory leak in cso module 2008-09-18 08:10:58 -06:00
Jakob Bornecrantz
5e1ef85dc4 tgsi: Make tgsi dumps look more like mesa shader dumps. 2008-09-18 14:48:45 +02:00
José Fonseca
1672e8e059 pipebuffer: New callback to flush all temporary-held buffers.
Used mostly to aid debugging memory issues or to clean up resources when
the drivers are long lived.
2008-09-18 12:26:19 +09:00
Brian Paul
a06d38a74e gallium: fix wide point / point coord semantic info (generic, not fog) 2008-09-17 16:51:53 -06:00
Brian Paul
e6a120fefe gallium: fix tgsi sanity checker with respect to END.
Subroutine code may be found after the END instruction so it's not always
the last instruction.
At least check for presence of exactly one END instruction though.
2008-09-17 13:14:57 -06:00
Brian Paul
f10e7f0d28 gallium: fix lack of surface reference counting in cso_set/save/restore_framebuffer()
Fixes asst problems with FBO / render to texture.
2008-09-17 09:47:51 -06:00
Brian Paul
8cdab20c9a gallium: fix info entries for KIL, KILP
KIL takes 1 src register.  KILP uses no registers (uses cond codes).
2008-09-16 12:52:19 -06:00
Jakob Bornecrantz
ad16ecbbe4 tgsi: Make tgsi_sanity.c compile with make 2008-09-16 16:20:19 +02:00
José Fonseca
eef2edadf3 trace: Fix typo in build instructions. 2008-09-16 20:24:43 +09:00
Brian Paul
75c19eb5a1 gallium: add another value check to util_fast_pow()
Fixes glitches seen in morph3d demo.
2008-09-13 15:22:52 -06:00
Brian Paul
44e53b37a0 cell: fix twiddled tile display for XSHM. Fixed blank window problem. 2008-09-12 11:37:08 -06:00