Brian Paul
7b1d08738f
cell: turn on PPC assembly vertex transform
gears runs with it now (3x faster FPS than before).
vor 17 Jahren
Brian Paul
ba4faef7c0
gallium: temporarily disable PPC vertex shader until more things run
vor 17 Jahren
Brian Paul
b7da4c3dc1
gallium: PPC vertex shader support
Works, but dead code lingering, debug code present, etc.
vor 17 Jahren
Brian Paul
05a8f203cd
gallium: fix the test in vs_exec_prepare() to avoid redundant bindings
Fixes regressions seen in progs/samples/prim.c, progs/demos/ray.c
vor 17 Jahren
Keith Whitwell
13f46fa1b9
draw: don't assume output buffer pointer is aligned
(cherry picked from commit 23cc303994
)
vor 17 Jahren
Alan Hourihane
ca5224945a
gallium: silence warning
vor 17 Jahren
Keith Whitwell
23cc303994
draw: don't assume output buffer pointer is aligned
vor 17 Jahren
Keith Whitwell
c48da7d78b
draw: add switch for drivers to force vertex data passthrough
vor 17 Jahren
José Fonseca
4d7394f892
gallium: Introduce PIPE_ARCH_SSE define for SSE support.
Besides meaning x86 and x86-64 architecture, it also depends on SSE2
support enabled on gcc.
This fixes the linux-debug build.
vor 17 Jahren
Michal Krol
9b82701813
draw: Fix compiler errors on Windows.
vor 17 Jahren
Keith Whitwell
53d4706c6c
make draw's vertex_info struct smaller/quicker to compare with memcmp()
vor 17 Jahren
Keith Whitwell
22eb067c88
draw: modify prefetching slightly
vor 17 Jahren
Keith Whitwell
21f98ad30a
draw: don't keep refetching constant inputs
vor 17 Jahren
Keith Whitwell
a15699c3f5
draw: add streamlined paths for fetching linear verts
vor 17 Jahren
Stephane Marchesin
3f477e111a
Gallivm: make it compile again, add some opcodes.
vor 17 Jahren
Keith Whitwell
918a444913
draw: modify prefetching slightly
vor 17 Jahren
Keith Whitwell
af9cfea9cc
draw: don't keep refetching constant inputs
vor 17 Jahren
Keith Whitwell
dd7e5a4980
draw: add streamlined paths for fetching linear verts
vor 17 Jahren
Stephane Marchesin
ab74b8e354
Gallivm: make it compile again, add some opcodes.
vor 17 Jahren
Brian Paul
a06d38a74e
gallium: fix wide point / point coord semantic info (generic, not fog)
vor 17 Jahren
Michal Krol
e852232ebf
draw: Silence compiler warnings on Windows.
vor 17 Jahren
Brian Paul
9defef29c5
gallium: avoid redundant tgsi_exec_machine_bind_shader() calls on draw exec path
tgsi_exec_machine_bind_shader() isn't cheap so avoiding unecessary calls
is a big win.
A similar change should be done for softpipe's fragment exec path but
extra care needs to be taken with the texture sampler state/params.
vor 17 Jahren
José Fonseca
82086f5d21
draw: Describe the steps in emit_load_R32G32B32A32.
vor 17 Jahren
Brian Paul
feea0c9d95
gallium: fix out of bounds array errors in SSE execution
1. #define MAX_INPUTS/OUTPUTS/TEMPS/etc with better values.
2. Add assertions in aos_get_x86() to check register file indexes
3. Assert that constant regs haven't changed after running SSE code.
vor 17 Jahren
José Fonseca
f4d707b40e
draw: Put INLINES where appropriate.
In the hope of MSVC inline some more functions, but without much result.
vor 17 Jahren
Keith Whitwell
e6887a5752
draw: attempt atomic submit of large drawelements calls
vor 17 Jahren
Brian
60ac76175b
gallium: added const qualifiers on some draw funcs
vor 17 Jahren
Brian Paul
4f25420bdd
gallium: refactor/replace p_util.h with util/u_memory.h and util/u_math.h
Also, rename p_tile.[ch] to u_tile.[ch]
vor 17 Jahren
Brian Paul
a13475ff00
gallium: replace align_int() with align()
The two functions are identical. Removed align_int() from p_util.h
vor 17 Jahren
Brian Paul
120270def7
gallium: stop using FABSF() macro
vor 17 Jahren
Brian Paul
1c2ff4d9e6
gallium: use new util_fast_exp2(), _log2(), pow() functions
New code surrounded with #if FAST_MATH to allow comparing against original
code if we need to debug.
vor 17 Jahren
Brian Paul
f6abdb2043
gallium: fix typo in LINE() macro (replace i+1 with i1 var)
We were sometimes referencing an invalid vertex.
Fixes progs/trivial/line-clip.c test among others.
vor 17 Jahren
Brian Paul
63c0970dca
gallium: fix an assertion
vor 17 Jahren
Michal Krol
0c8f4c25ff
draw: Use KIL instead of KILP.
vor 17 Jahren
Brian Paul
22604727e4
gallium: emit sprite coords (gl_PointCoord)
vor 17 Jahren
José Fonseca
c208a2c791
Merge tgsi/exec and tgsi/util directories.
vor 17 Jahren
Stephane Marchesin
92d711e9e6
llvm: build fixes.
vor 17 Jahren
Zack Rusin
d25709df1d
draw: remove some debug output
vor 17 Jahren
Brian Paul
ba9e633902
gallium: fix trim() function bug when count < first
If the user called glDrawArrays(GL_TRIANGLES, count=1), trim() returned a
very large integer because of the unsigned arithmetic.
vor 17 Jahren
Michel Dänzer
cc31eecbcb
gallium: Allow draw module to work on non-x86 platforms again.
vor 17 Jahren
José Fonseca
4ddd659679
gallium: Drop pipe_texture->cpp and pipe_surface->cpp.
The chars-per-pixel concept falls apart with compressed and yuv images,
where more than one pixel are coded in a single data block.
vor 17 Jahren
Keith Whitwell
e2c3f06e96
draw: fix non-i386 builds
vor 17 Jahren
José Fonseca
aa816d114e
draw: Fix MSVC integer size conversion warning.
vor 17 Jahren
Brian Paul
f140138558
gallium: additional fixes to ensure even number of vertices per buffer
vor 17 Jahren
Brian Paul
7d7f3e2c94
gallium: split long prims into chunks with an even number of vertices
This fixes culling "parity" errors when splitting long tri strips. Splitting
strips into chunks with an odd number of vertices causes front/back-face
orientation to get reversed and upsets culling.
vor 17 Jahren
Brian Paul
20ee00754d
gallium: disable the codegen for TGSI_OPCODE_EXPBASE2 for now.
The x86 code seems to fail for exponents of 4 or larger.
See glean's vertProg1/EX2 test.
vor 17 Jahren
Keith Whitwell
08f1b8ac70
gallium: fix SSE codegen for instructions that use both a CONSTANT and IMMEDIATE
Fixes codegen for instructions like MUL dst, CONST[0], IMM[0]; the two operands
would up getting aliased in the x86/sse code.
Fixes glean/vertProg1/fogparams test.
vor 17 Jahren
Keith Whitwell
2161b0fafc
draw: don't assume vertex position is in data[0]
vor 17 Jahren
Keith Whitwell
807f8f177b
draw: preserve specular alpha when flatshading -- may be FOGC
vor 17 Jahren
Keith Whitwell
bd92642100
draw: remove another debug assert on failover to generic vs varient
vor 17 Jahren