summaryrefslogtreecommitdiff
path: root/src/mesa/pipe/llvm/llvm_entry.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/pipe/llvm/llvm_entry.c')
-rw-r--r--src/mesa/pipe/llvm/llvm_entry.c89
1 files changed, 0 insertions, 89 deletions
diff --git a/src/mesa/pipe/llvm/llvm_entry.c b/src/mesa/pipe/llvm/llvm_entry.c
index 909bef340a..c3b34584e1 100644
--- a/src/mesa/pipe/llvm/llvm_entry.c
+++ b/src/mesa/pipe/llvm/llvm_entry.c
@@ -34,95 +34,6 @@
/* clang --emit-llvm llvm_builtins.c |llvm-as |opt -std-compile-opts |llvm-dis */
typedef __attribute__(( ocu_vector_type(4) )) float float4;
-#if 0
-//clang doesn't suppoer "struct->member" notation yet
-struct vertex_header {
- unsigned clipmask:12;
- unsigned edgeflag:1;
- unsigned pad:3;
- unsigned vertex_id:16;
-
- float clip[4];
-
- float data[][4];
-};
-
-inline float
-dot4(float4 a, float4 b)
-{
- float4 c = a*b;
- return c.x + c.y + c.z + c.w;
-}
-
-inline unsigned
-compute_clipmask(float4 clip, float4 (*plane), unsigned nr)
-{
- unsigned mask = 0;
- unsigned i;
-
- for (i = 0; i < nr; i++) {
- if (dot4(clip, plane[i]) < 0)
- mask |= (1<<i);
- }
-
- return mask;
-}
-
-
-inline void collect_results(float4 *results, struct vertex_header *vOut,
- float4 *planes, int nr_planes,
- float4 scale, float4 trans,
- int num_attribs)
-{
- /* store results */
- unsigned slot;
- float x, y, z, w;
- /* Handle attr[0] (position) specially:
- */
- float4 res0 = results[0];
- float *clip = vOut->clip;
- x = clip[0] = res0.x;
- y = clip[1] = res0.y;
- z = clip[2] = res0.z;
- w = clip[3] = res0.w;
- vOut->clipmask = compute_clipmask(res0, planes, nr_planes);
- vOut->edgeflag = 1;
-
- /* divide by w */
- w = 1.0f / w;
- x *= w;
- y *= w;
- z *= w;
- res0.x = x; res0.y = y; res0.z = z; res0.w = 1;
-
- /* Viewport mapping */
- res0 = res0 * scale + trans;
- vOut->data[0][0] = res0.x;
- vOut->data[0][1] = res0.y;
- vOut->data[0][2] = res0.z;
- vOut->data[0][3] = w;
-
- /* Remaining attributes are packed into sequential post-transform
- * vertex attrib slots.
- * Skip 0 since we just did it above.
- * Subtract two because of the VERTEX_HEADER, CLIP_POS attribs.
- */
- for (slot = 1; slot < num_attribs - 2; slot++) {
- float4 vec = results[slot];
- vOut->data[slot][0] = vec.x;
- vOut->data[slot][1] = vec.y;
- vOut->data[slot][2] = vec.z;
- vOut->data[slot][3] = vec.w;
-
- printf("output %d: %f %f %f %f\n", slot,
- vOut->data[slot][0],
- vOut->data[slot][1],
- vOut->data[slot][2],
- vOut->data[slot][3]);
- }
-}
-#endif
-
void from_array(float4 (*res)[16], float (*ainputs)[16][4],
int count, int num_attribs)
{