Brian Paul
7b1d08738f
cell: turn on PPC assembly vertex transform
gears runs with it now (3x faster FPS than before).
17 年之前
Brian Paul
ba4faef7c0
gallium: temporarily disable PPC vertex shader until more things run
17 年之前
Brian Paul
b7da4c3dc1
gallium: PPC vertex shader support
Works, but dead code lingering, debug code present, etc.
17 年之前
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
17 年之前
Keith Whitwell
13f46fa1b9
draw: don't assume output buffer pointer is aligned
(cherry picked from commit 23cc303994
)
17 年之前
Alan Hourihane
ca5224945a
gallium: silence warning
17 年之前
Keith Whitwell
23cc303994
draw: don't assume output buffer pointer is aligned
17 年之前
Keith Whitwell
c48da7d78b
draw: add switch for drivers to force vertex data passthrough
17 年之前
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.
17 年之前
Michal Krol
9b82701813
draw: Fix compiler errors on Windows.
17 年之前
Keith Whitwell
53d4706c6c
make draw's vertex_info struct smaller/quicker to compare with memcmp()
17 年之前
Keith Whitwell
22eb067c88
draw: modify prefetching slightly
17 年之前
Keith Whitwell
21f98ad30a
draw: don't keep refetching constant inputs
17 年之前
Keith Whitwell
a15699c3f5
draw: add streamlined paths for fetching linear verts
17 年之前
Stephane Marchesin
3f477e111a
Gallivm: make it compile again, add some opcodes.
17 年之前
Keith Whitwell
918a444913
draw: modify prefetching slightly
17 年之前
Keith Whitwell
af9cfea9cc
draw: don't keep refetching constant inputs
17 年之前
Keith Whitwell
dd7e5a4980
draw: add streamlined paths for fetching linear verts
17 年之前
Stephane Marchesin
ab74b8e354
Gallivm: make it compile again, add some opcodes.
17 年之前
Brian Paul
a06d38a74e
gallium: fix wide point / point coord semantic info (generic, not fog)
17 年之前
Michal Krol
e852232ebf
draw: Silence compiler warnings on Windows.
17 年之前
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.
17 年之前
José Fonseca
82086f5d21
draw: Describe the steps in emit_load_R32G32B32A32.
17 年之前
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.
17 年之前
José Fonseca
f4d707b40e
draw: Put INLINES where appropriate.
In the hope of MSVC inline some more functions, but without much result.
17 年之前
Keith Whitwell
e6887a5752
draw: attempt atomic submit of large drawelements calls
17 年之前
Brian
60ac76175b
gallium: added const qualifiers on some draw funcs
17 年之前
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]
17 年之前
Brian Paul
a13475ff00
gallium: replace align_int() with align()
The two functions are identical. Removed align_int() from p_util.h
17 年之前
Brian Paul
120270def7
gallium: stop using FABSF() macro
17 年之前
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.
17 年之前
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.
17 年之前
Brian Paul
63c0970dca
gallium: fix an assertion
17 年之前
Michal Krol
0c8f4c25ff
draw: Use KIL instead of KILP.
17 年之前
Brian Paul
22604727e4
gallium: emit sprite coords (gl_PointCoord)
17 年之前
José Fonseca
c208a2c791
Merge tgsi/exec and tgsi/util directories.
17 年之前
Stephane Marchesin
92d711e9e6
llvm: build fixes.
17 年之前
Zack Rusin
d25709df1d
draw: remove some debug output
17 年之前
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.
17 年之前
Michel Dänzer
cc31eecbcb
gallium: Allow draw module to work on non-x86 platforms again.
17 年之前
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.
17 年之前
Keith Whitwell
e2c3f06e96
draw: fix non-i386 builds
17 年之前
José Fonseca
aa816d114e
draw: Fix MSVC integer size conversion warning.
17 年之前
Brian Paul
f140138558
gallium: additional fixes to ensure even number of vertices per buffer
17 年之前
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.
17 年之前
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.
17 年之前
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.
17 年之前
Keith Whitwell
2161b0fafc
draw: don't assume vertex position is in data[0]
17 年之前
Keith Whitwell
807f8f177b
draw: preserve specular alpha when flatshading -- may be FOGC
17 年之前
Keith Whitwell
bd92642100
draw: remove another debug assert on failover to generic vs varient
17 年之前