Zack Rusin
cf51d5c421
redo indirection
make all load's respect indirection
17 vuotta sitten
Zack Rusin
f70cc89dbc
redo the way immediates are handled
implement madd
start implementing arl
17 vuotta sitten
Zack Rusin
ae3375987f
rename 'argument' to 'load' because that's what it does
17 vuotta sitten
Zack Rusin
d0364584be
implement swizzling on writes
17 vuotta sitten
Zack Rusin
13d9e616f6
a call was missed during the last rename
17 vuotta sitten
Michal Krol
19780237ff
gallium: Fix memory leak.
17 vuotta sitten
Michal Krol
742c5d3e1b
gallium: Fix memory leak.
17 vuotta sitten
Michal Krol
6a7820d31f
gallium: Use align_free() to free aligned memories.
17 vuotta sitten
Michal Krol
d3cd39493c
gallium: Fix build on Windows.
17 vuotta sitten
Michal Krol
3f1b712d0a
gallium: Use MALLOC().
17 vuotta sitten
José Fonseca
d8ae972fd0
gallium: Fix MSVC compiler warnings.
17 vuotta sitten
Brian
663f4aaae6
gallium: remove some debug assertions in vertex format validation
If a fragment shader references an input for which there's no vertex
shader output (ex: texcoord3), use vertex output 0 by default.
Basically, the attribute's value will be undefined. The shader writer
should never rely on undefined fragment shader inputs anyway.
17 vuotta sitten
Brian
3d81a956b9
gallium: rearrange vertex info/layout validation
Delay validation until someone really needs the vertex layout (vbuf alloc
vertex buffer or point/line/tri setup/rendering).
This will allow the vertex size to change depending on whether we're
drawing points, lines or triangles.
17 vuotta sitten
Brian
1b6540b4b1
gallium: include draw_context.h to silence warning
17 vuotta sitten
Brian
d2b14311d9
gallium: minor function renaming
17 vuotta sitten
Brian
4c1403f667
gallium: new tgsi_transform_shader() function
Used to apply transformations to TGSI shaders, such as register search and
replace.
17 vuotta sitten
Brian
ca2f2c7664
gallium: new pgon-mode.c test
A two-triangle strip is drawn such that the first tri is front-facing and
the second tri is back-facing. Use different front/back polygon modes.
17 vuotta sitten
Brian
5e345a653b
gallium: call draw_flush() in softpipe_flush()
Without this, we might not get any rendering at SwapBuffers time when using the vbuf path.
17 vuotta sitten
Brian
7a3e59d236
gallium: fix some "instruction"/"declaration" mix-ups in tgsi_exec_prepare().
17 vuotta sitten
Brian
59cc1f4e62
gallium: replace "interpolate" terminology with "eval" to better reflect what's being done.
17 vuotta sitten
Brian
4f32c53237
gallium: changes to polygon mode weren't detected in draw_unfilled stage.
Need to reset stage->tri = unfilled_first_try in unfilled_flush() so that the
front/back state is picked up.
17 vuotta sitten
Brian
b08102a8f3
gallium: rename draw_free_tmps->draw_free_temp_verts, draw_alloc_tmps->draw_alloc_temp_verts
17 vuotta sitten
Brian
e9c6c31651
galllium: comments, minor clean-ups
17 vuotta sitten
Ian Romanick
bbd7aabe2b
More name typeo fixes.
17 vuotta sitten
Ian Romanick
d4d9943b01
s/spu_/spe_/g Ugh.
17 vuotta sitten
Ian Romanick
18fd3b7571
Cell: pass pointers to stored memory values
Several routines use shuffle patterns that are stored in memory. For
code gen, it is difficult to directly access the data segments. The
routines have been modified to be passed a pointer to a global table
of shuffle patterns.
This *should* be the last change to this file before switching over to
code gen.
17 vuotta sitten
Ian Romanick
f1257fd794
Cell: Fix unintended breakage from commit 1d62a057bcb3ee4ef6ebedd93f62ed2e0d8061ba
17 vuotta sitten
Ian Romanick
77a1488620
Real-time assembler for Cell SPE.
17 vuotta sitten
Ian Romanick
dd07e154d2
Fetch routines convert and transpose all 4 vertices at once.
17 vuotta sitten
Ian Romanick
125451b9f0
Remove open-coded fetch functions
17 vuotta sitten
Ian Romanick
ca1a2da645
Initial pass at vertex cache, more vertex fetch changes
This is just another step towards dynamic generate of vertex fetch code.
17 vuotta sitten
Ian Romanick
c290367985
Vectorize a couple fetch functions
These C-coded vectorized functions are expected to be short lived.
They're basically a proof-of-concept for dynamically generated fetch
routines.
17 vuotta sitten
Michel Dänzer
0230c56ed0
intel_winsys: Call st_notify_swapbuffers_complete() after buffer swap.
17 vuotta sitten
Keith Whitwell
cf5ef20f43
gallium: Cleanups related to clears.
17 vuotta sitten
Zack Rusin
2e75f39bc4
make swizzling on incoming arguments work
17 vuotta sitten
Zack Rusin
12d5b078e8
get rid of the terrible auto-generated entry point
it's not used anymore.
17 vuotta sitten
Zack Rusin
7e51d2a998
implement immediates and make them work
17 vuotta sitten
Zack Rusin
c107d57210
try to load the consts correctly
17 vuotta sitten
Keith Whitwell
66640c4b58
x86: remove debug
17 vuotta sitten
Keith Whitwell
8162d317d2
x86: emit absolute calls, as reallocating exec mem breaks relative ones
17 vuotta sitten
Keith Whitwell
a3534a27bf
tgsi: fail gracefully when sse code can't emit shader
17 vuotta sitten
Keith Whitwell
6046c54cc4
x86: reallocate exec mem when we run out
17 vuotta sitten
Keith Whitwell
7f342a20d2
tgsi: include more of the register info in debug dumps
17 vuotta sitten
Michel Dänzer
e922adbe1d
gallium: pipe->surface_copy can flip the contents vertically when necessary.
Fixes gears being upside down on the box in demos/gearbox.
17 vuotta sitten
Zack Rusin
4bb1a14d90
handle temporaries in llvm code generated paths
17 vuotta sitten
Zack Rusin
e179d5bdd1
implement add
17 vuotta sitten
Zack Rusin
135d2329de
implement mul
17 vuotta sitten
Zack Rusin
4c8456264c
get mov working
17 vuotta sitten
Zack Rusin
53c2963b84
fix fetching input elements and generate a ret on end
17 vuotta sitten
Zack Rusin
9b6532f01b
add functiontype for the llvm native vs entry point
17 vuotta sitten