rpms/Glide3/devel Glide3-amd3dnow.patch, NONE, 1.1 Glide3.spec, 1.2, 1.3 glide-ia64.patch, 1.2, NONE

Hans de Goede (jwrdegoede) fedora-extras-commits at redhat.com
Sun May 1 16:20:04 UTC 2005


Author: jwrdegoede

Update of /cvs/extras/rpms/Glide3/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv19193

Modified Files:
	Glide3.spec 
Added Files:
	Glide3-amd3dnow.patch 
Removed Files:
	glide-ia64.patch 
Log Message:
- Added a patch which fixes PIC compilation of amd3dnow asm code
  for h3 and h5 and which fixes compilation of amd3dnow code in general
  for cvg. Currently amd3dnow support is still disabled because it doesn't
  work on my voodoo2.
- replaced configure with %%configure


Glide3-amd3dnow.patch:

--- NEW FILE Glide3-amd3dnow.patch ---
--- Glide3/h3/glide3/src/xdraw2.inc.S.amd3dnow	2000-10-20 21:07:00.000000000 +0200
+++ Glide3/h3/glide3/src/xdraw2.inc.S	2005-05-01 13:57:55.437237488 +0200
@@ -246,7 +246,11 @@
 	push %edi	/*  save caller's register variable */
 	push %esi	/*  save caller's register variable  */
 
+#ifdef PIC
+	mov _gc-8(%esp) , gc	/*  gc on stack (NOT!!! in edx) from caller */
+#else
 	mov %edx , gc	/*  gc in edx from caller */
+#endif
 	push %ebx	/*  save caller's register variable */
 
 	push %ebp	/*  save frame pointer */
--- Glide3/h5/glide3/src/xdraw2.inc.s.amd3dnow	2000-11-17 22:31:06.000000000 +0100
+++ Glide3/h5/glide3/src/xdraw2.inc.s	2005-05-01 13:57:55.438237336 +0200
@@ -295,7 +295,11 @@
 	push %edi	/*  save caller's register variable */
 	push %esi	/*  save caller's register variable  */
 
+#ifdef PIC
+	mov _gc-8(%esp) , gc	/*  gc on stack (NOT!!! in edx) from caller */
+#else
 	mov %edx , gc	/*  gc in edx from caller */
+#endif
 	push %ebx	/*  save caller's register variable */
 
 	push %ebp	/*  save frame pointer */
--- Glide3/cvg/glide3/src/xtexdl.S.amd3dnow	1999-12-07 22:42:38.000000000 +0100
+++ Glide3/cvg/glide3/src/xtexdl.S	2005-05-01 13:57:55.439237184 +0200
@@ -46,12 +46,12 @@
 
 /*  Arguments (STKOFF = 12 from 3 dword pushes) */
 #define STACKOFFSET 12
-#define _gc$ STACKOFFSET
-#define _baseAddr$ STACKOFFSET
-#define _maxS$ STACKOFFSET
-#define _minT$ STACKOFFSET
-#define _maxT$ STACKOFFSET
-#define _texData$ STACKOFFSET
+#define _gc STACKOFFSET
+#define _baseAddr STACKOFFSET
+#define _maxS STACKOFFSET
+#define _minT STACKOFFSET
+#define _maxT STACKOFFSET
+#define _texData STACKOFFSET
 
 /*  NB: The first set of registers (eax-edx) are volatile across */
 /*  function calls. The remaining registers are supposedly non-volatile */
@@ -93,46 +93,46 @@
 /*  because we don't use or call anything that uses fp. */
 	femms 
 
-	mov _gc$-STACKOFFSET+0(%esp) , gc
+	mov _gc-STACKOFFSET+0(%esp) , gc
 	push %esi
 
-	mov _maxT$-STACKOFFSET+4(%esp) , maxT
+	mov _maxT-STACKOFFSET+4(%esp) , maxT
 	push %edi
 
 	shl $9 , maxT	/*  Convert maxT to rowAddr format */
 	push %ebp
 
-	mov _texData$(%esp) , dataPtr
-	mov _minT$(%esp) , curT
+	mov _texData(%esp) , dataPtr
+	mov _minT(%esp) , curT
 
 /*  Pad out fifo so that we can use mmx writes the whole way w/o */
 /*  any intermediate tests in the inner loop for fifo alignment. */
 /*  Conveniently, the packet header is 2 dwords which matches */
 /*  the size of the mmx write. */
 	mov fifoPtr(gc) , fifo	/*  Cache fifo ptr */
-	mov _baseAddr$(%esp) , texAddr	/*  Texture physical address */
+	mov _baseAddr(%esp) , texAddr	/*  Texture physical address */
 
-	mov _maxS$(%esp) , %temp1	/*  Pre-convert maxS into packet 5 field format */
+	mov _maxS(%esp) , temp1	/*  Pre-convert maxS into packet 5 field format */
 	sub tex_ptr(gc) , texAddr	/*  Convert to hw base relative address             */
 
-	shl $2 , %temp1	/*  Write size dwords -> bytes */
-	mov texAddr , _baseAddr$(%esp)
+	shl $2 , temp1	/*  Write size dwords -> bytes */
+	mov texAddr , _baseAddr(%esp)
 
 	shl $9 , curT	/*  curT = TEX_ROW_ADDR_INCR(curT)       */
-	mov %temp1 , _maxS$(%esp)	/*  Write back converted s coordinate */
+	mov temp1 , _maxS(%esp)	/*  Write back converted s coordinate */
 
-	shl $1 , %temp1	/*  Write size to packet 5 field format */
+	shl $1 , temp1	/*  Write size to packet 5 field format */
 	test $0x4 , fifo	/*  Aligned fifo ptr? */
 
-	mov fifoRoom(gc) , %temp2	/*  temp2 = gc->fifoRoom */
-	mov %temp1 , _maxT$(%esp)	/*  Write back converted field format size */
+	mov fifoRoom(gc) , temp2	/*  temp2 = gc->fifoRoom */
+	mov temp1 , _maxT(%esp)	/*  Write back converted field format size */
 
 	jz .L__grTexDownload_3DNow_MMX___loopT
 
 /*  Check to make sure there's room in the fifo. If not then */
 /*  we'll wrap and then it should be aligned for the remainder of */
 /*  this function invocation. */
-	cmp $0x4 , %temp2
+	cmp $0x4 , temp2
 	jg .L__grTexDownload_3DNow_MMX___mmxAlignFifo
 
 	push __LINE__	/*  Line # inside this function */
@@ -146,40 +146,40 @@
 /*  re-cache the fifoPtr since we may have wrapped. */
 
 	add $12 , %esp	/*  Pop the 3 DWORDs for the fifoWrap parameters */
-	mov _gc$(%esp) , gc
+	mov _gc(%esp) , gc
 
 /*  Setup the regs to do the alignment */
 	mov fifoPtr(gc) , fifo
 	test $0x4 , fifo
 
-	mov fifoRoom(gc) , %temp2
+	mov fifoRoom(gc) , temp2
 	jz .L__grTexDownload_3DNow_MMX___loopT
 
 .L__grTexDownload_3DNow_MMX___mmxAlignFifo:
 	add $0x4 , fifo	/*  packetPtr++ */
-	xor %temp1 , %temp1	/*  Clear the nop packet */
+	xor temp1 , temp1	/*  Clear the nop packet */
 
 	mov fifo , fifoPtr(gc)	/*  gc->fifoPtr = packetPtr */
-	sub $0x4 , %temp2	/*  fifoRoom -= 4 */
+	sub $0x4 , temp2	/*  fifoRoom -= 4 */
 
-	mov %temp2 , fifoRoom(gc)	/*  gc->fifoRoom = fifoRoom */
-	GR_FIFO_WRITE(fifo , -4 , %temp1)	/*  NOP packet(0) */
+	mov temp2 , fifoRoom(gc)	/*  gc->fifoRoom = fifoRoom */
+	GR_FIFO_WRITE(fifo , -4 , temp1)	/*  NOP packet(0) */
 
 .align 4
 .L__grTexDownload_3DNow_MMX___loopT:
 /*  Check for room to write the current texture scanline     */
-	mov _maxS$(%esp) , %temp1	/*  temp1 = width of scanline (bytes) */
-	mov fifoRoom(gc) , %temp2	/*  temp2 = gc->fifoRoom (bytes) */
+	mov _maxS(%esp) , temp1	/*  temp1 = width of scanline (bytes) */
+	mov fifoRoom(gc) , temp2	/*  temp2 = gc->fifoRoom (bytes) */
 
-	add $0x0C , %temp1	/*  scanline width + sizeof(packet hdr) (bytes) + nop packet to mmx align */
-	cmp %temp1 , %temp2	/*  fifo space required >= space availible ? */
+	add $0x0C , temp1	/*  scanline width + sizeof(packet hdr) (bytes) + nop packet to mmx align */
+	cmp temp1 , temp2	/*  fifo space required >= space availible ? */
 
 	jge __dlBegin	/*  Yes, start download now w/ no more checking */
 
 	push __LINE__	/*  Line # inside this function */
 	push $0x0	/*  NULL file name */
 
-	push %temp1	/*  fifo space required */
+	push temp1	/*  fifo space required */
 	call __FifoMakeRoom	/*  Get fifo room */
 
 	add $12 , %esp	/*  Pop the 3 DWORDs for the fifoWrap parameters */
@@ -188,7 +188,7 @@
 /*  Calling out to external code means that our registers can get */
 /*  trashed in the same way that we trash things. Plus we need to */
 /*  re-cache the fifoPtr since we may have wrapped. */
-	mov _gc$(%esp) , gc
+	mov _gc(%esp) , gc
 	mov fifoPtr(gc) , fifo
 
 #ifdef GLIDE_DEBUG
@@ -219,20 +219,20 @@
 /*  Compute packet header words */
 /* 	hdr1: downloadSpace[31:30] numWords[21:3] packetType[2:0] */
 /*   hdr2: download address[29:0] */
-	mov _baseAddr$(%esp) , texAddr	/*  Download base address */
-	mov _maxT$(%esp) , %temp1	/*  Pre-Converted # of words per packet/scanline */
+	mov _baseAddr(%esp) , texAddr	/*  Download base address */
+	mov _maxT(%esp) , temp1	/*  Pre-Converted # of words per packet/scanline */
 
-	mov $0x0C0000005 , %temp3	/*  Base packet header (texture port | packet type 5) */
+	mov $0x0C0000005 , temp3	/*  Base packet header (texture port | packet type 5) */
 	add $8 , fifo	/*  Pre-increment fifo ptr (hdr1) */
 
-	or %temp1 , %temp3	/*  Base packet hdr | # of words */
+	or temp1 , temp3	/*  Base packet hdr | # of words */
 	add curT , texAddr	/*  texAddr = texBaseAddr + TEX_ROW_ADDR_INCR(curT) */
 
-	GR_FIFO_WRITE(fifo , -8 , %temp3)	/*  Write hdr1 */
+	GR_FIFO_WRITE(fifo , -8 , temp3)	/*  Write hdr1 */
 	add $0x200 , curT	/*  curT += TEX_ROW_ADDR_INCR(1) */
 
 	GR_FIFO_WRITE(fifo , -4 , texAddr)	/*  write hdr2 */
-	mov _maxS$(%esp) , curS	/*  curS = maxS */
+	mov _maxS(%esp) , curS	/*  curS = maxS */
 
 .align 4
 /*  S coordinate inner loop unrolled for 8 texels a write */
@@ -246,20 +246,20 @@
 	movq %mm0 , -8(fifo)	/*  *fifoPtr = texelData[64 bits] */
 	jnz .L__grTexDownload_3DNow_MMX___loopS	/*  if curS > 0 */
 
-	mov _gc$(%esp) , gc	/*  Re-cache gc which was trashed in the dl loop */
-	mov fifo , %temp1
+	mov _gc(%esp) , gc	/*  Re-cache gc which was trashed in the dl loop */
+	mov fifo , temp1
 
 /*  Update gc->fifoPtr and gc->fifoRoom for the wrap/stall check */
-	mov fifoPtr(gc) , %temp2
-	sub %temp2 , %temp1	/*  # of bytes written to the fifo */
+	mov fifoPtr(gc) , temp2
+	sub temp2 , temp1	/*  # of bytes written to the fifo */
 
 	mov fifo , fifoPtr(gc)	/*  gc->fifoPtr = packetPtr */
-	mov fifoRoom(gc) , %temp2
+	mov fifoRoom(gc) , temp2
 
-	sub %temp1 , %temp2	/*  # of bytes left in fifo */
+	sub temp1 , temp2	/*  # of bytes left in fifo */
 	cmp maxT , curT	/*  if (curT <= maxT) ?     */
 
-	mov %temp2 , fifoRoom(gc)
+	mov temp2 , fifoRoom(gc)
 	jle .L__grTexDownload_3DNow_MMX___loopT
 
 .L__grTexDownload_3DNow_MMX___dlDone:
--- Glide3/cvg/glide3/src/xdraw2.inc.S.amd3dnow	2005-05-01 14:04:15.658435080 +0200
+++ Glide3/cvg/glide3/src/xdraw2.inc.S	2005-05-01 14:05:20.832527112 +0200
@@ -422,7 +422,7 @@
 /*  here: "write buffer" has one DWORD left over from vertex A */
 
 	mov dlpstrt , dlp	/*  reset the dataList */
-	mov _vb$(%esp) , vertex	/*  Current vertex = B */
+	mov _vb(%esp) , vertex	/*  Current vertex = B */
 
 	movd X(vertex) , %mm2	/*  0 | x if vertex B */
 	punpckldq %mm2 , %mm1	/*  x | old param */
--- Glide3/cvg/glide3/src/xdraw3.S.amd3dnow	2005-05-01 14:27:16.678488120 +0200
+++ Glide3/cvg/glide3/src/xdraw3.S	2005-05-01 15:00:25.373160576 +0200
@@ -35,7 +35,7 @@
 .align 8
 	.type	_F256_F256, at object
 	.size	_F256_F256,8
-_F256_F256	.double	0x04380000043800000	/*  256 | 256 */
+_F256_F256:	.double	0x04380000043800000	/*  256 | 256 */
 
 .data
 .align 8
@@ -244,7 +244,7 @@
 	punpckldq %mm2 , %mm1	/*  current param | previous param */
 
 	movq %mm1 , -8(fifo)	/*  PCI write current param | previous param */
-	jnz win_datalist_loop_ND_WB0	/*  nope, copy next parameter */
+	jnz .L__grDrawVertexList_3DNow_Window_win_datalist_loop_ND_WB0	/*  nope, copy next parameter */
 
 .L__grDrawVertexList_3DNow_Window_win_datalist_end_ND_WB0:
 
@@ -393,7 +393,7 @@
 
 	ret	/*  return, pop 5 DWORD parameters off stack */
 
-	db $0x08d , $0x064 , $0x024 , $0x000	/*  filler (not reachable) */
+/*	db $0x08d , $0x064 , $0x024 , $0x000 */	/*  filler (not reachable) */
 
 .L__grDrawVertexList_3DNow_Window_deref_mode:
 
@@ -704,14 +704,14 @@
 	mov vertexStride(gc) , %edx	/*  get stride in DWORDs */
 
 	movd (_GlideRoot+pool_f255) , %mm6	/*  GlideRoot.pool.f255      */
-	mov $4 , (strideinbytes)	/*  array of pointers     */
+	movl $4 , (strideinbytes)	/*  array of pointers     */
 
 	jnz clip_coords_begin	/*  nope, it's mode 1 */
 
 .L__grDrawVertexList_3DNow_Clip_clip_coordinates_ND:
 
 	shl $2 , %edx	/*  stride in bytes */
-	mov %edx , (strideinbytes)	/*  save off stride (in bytes) */
+	movl %edx , (strideinbytes)	/*  save off stride (in bytes) */
 
 .align 32
 .L__grDrawVertexList_3DNow_Clip_clip_coords_begin:
@@ -810,7 +810,7 @@
 	pfrcpit2 %mm1 , %mm0	/*  oow = 1.0f / FARRAY(vPtr, gc->state.vData.wInfo.offset */
 	mov paramIndex(gc) , %esi	/*  gc->state.paramIndex */
 
-/*        /* x, y */ */
+          /* x, y */
 /*        TRI_SETF(FARRAY(vPtr, 0) */
 /*          *oow*gc->state.Viewport.hwidth + gc->state.Viewport.ox) */
 /*        TRI_SETF(FARRAY(vPtr, 4) */
@@ -1071,7 +1071,7 @@
 .L__grDrawVertexList_3DNow_Clip_strip_done:
 /*     } */
 /*   #undef FN_NAME */
-/*   } /* _grDrawVertexList */ */
+/*   } */ /* _grDrawVertexList */
 
 	pop %ebp	/*  restore frame pointer  */
 	pop %ebx	/*  restore caller's register variable */
@@ -1086,8 +1086,8 @@
 
 .align 32
 
-#define _a$ 20
-#define _b$ 24
+#define _a 20
+#define _b 24
 
 #define gc %esi
 #define vb %edi
@@ -1134,14 +1134,14 @@
 /*  241  :      */
 /*  242  :     /* */
 /*  243  :     ** compute absolute deltas and draw from low Y to high Y */
-/*  244  :     */ */
+/*  244  :     */
 /*  245  :     ADY = FARRAY(b, 4) - FARRAY(a, 4) */
 /*  246  :     i = *(long *)&ADY */
 /*  247  :     if (i < 0) { */
 /*  248  :       const void *tv */
 /*  249  :       tv = a a = b b = tv */
-/*  250  :       i ^= 0x80000000            /* ady = -ady */ */
-/*  251  :       /* (*(long *)&ADY) = i */ */
+/*  250  :       i ^= 0x80000000          */  /* ady = -ady */
+/*  251  :       */ /* (*(long *)&ADY) = i */
 /*  252  :     } */
 
 	movq (vb) , %mm1	/*  FARRAY(b,4) | FARRAY(b,0) */
@@ -1177,10 +1177,10 @@
 /*  254  :     DX = FARRAY(b, 0) - FARRAY(a, 0) */
 /*  255  :     j = *(long *)&DX */
 /*  256  :     if (j < 0) { */
-/*  257  :       j ^= 0x80000000            /* adx = -adx */ */
+/*  257  :       j ^= 0x80000000 */           /* adx = -adx */
 /*  258  :     } */
 /*  259  :      */
-/*  260  :     /* check for zero-length lines */ */
+/*  260  :     */ /* check for zero-length lines */
 /*  261  :     if ((j >= i) && (j == 0)) */
 /*  262  :       return */
 /*  263  :      */
@@ -1218,7 +1218,7 @@
 
 /*  266  :     TRI_STRIP_BEGIN(kSetupCullDisable | kSetupStrip, 4, vSize,  */
 /*  267  :                     SSTCP_PKT3_BDDDDD | (1<<15)) */
-/*  268  :     /* x major */ */
+/*  268  : */  /* x major */
 /*  269  :     if (j >= i) { */
 
 	mov fifoPtr(gc) , fifo	/*  gc->cmdTransportInfo.fifoPtr */
@@ -1284,7 +1284,7 @@
 	test %eax , %eax	/*  offset == 0 (end of offset list) ? */
 
 	movq %mm7 , -8(fifo)	/*  PCI write current component | previous component */
-	jnz $vertex_loop1_WB0	/*  offset != 0, process next component */
+	jnz .L__grDrawTextureLine_3DNow_$vertex_loop1_WB0	/*  offset != 0, process next component */
 
 .L__grDrawTextureLine_3DNow_$vertex_loop1_done_WB0:
 
@@ -1333,7 +1333,7 @@
 	test %eax , %eax	/*  offset == 0 (end of offset list) ? */
 
 	movq %mm7 , -8(fifo)	/*  PCI write current component | previous component */
-	jnz $vertex_loop2_WB0	/*  offset != 0, process next component */
+	jnz .L__grDrawTextureLine_3DNow_$vertex_loop2_WB0	/*  offset != 0, process next component */
 
 .L__grDrawTextureLine_3DNow_$vertex_loop2_done_WB0:
 
@@ -1433,7 +1433,7 @@
 	test %eax , %eax	/*  offset == 0 (end of offset list) ? */
 
 	movq %mm7 , -8(fifo)	/*  PCI write current component | previous component */
-	jnz $vertex_loop4_WB0	/*  offset != 0, process next component */
+	jnz .L__grDrawTextureLine_3DNow_$vertex_loop4_WB0	/*  offset != 0, process next component */
 
 .L__grDrawTextureLine_3DNow_$vertex_loop4_done_WB0:
 	add $8 , fifo	/*  fifoPtr += 2*sizeof(FxFloat) */
@@ -1444,7 +1444,7 @@
 
 .L__grDrawTextureLine_3DNow_$j_lt_i2_WB0:
 
-/*  317  :     } else { /* y major */ */
+/*  317  :     } else { */ /* y major */
 /*  318  :       TRI_SETF(FARRAY(b, 0) - _GlideRoot.pool.fHalf) */
 /*  319  :       dataElem = 0 */
 /*  320  :       TRI_SETF(FARRAY(b, 4)) */
@@ -1487,7 +1487,7 @@
 	test %eax , %eax	/*  offset == 0 (end of offset list) ? */
 
 	movq %mm7 , -8(fifo)	/*  PCI write current component | previous component */
-	jnz $vertex_loop5_WB0	/*  offset != 0, process next component */
+	jnz .L__grDrawTextureLine_3DNow_$vertex_loop5_WB0	/*  offset != 0, process next component */
 
 .L__grDrawTextureLine_3DNow_$vertex_loop5_done_WB0:
 
@@ -1536,7 +1536,7 @@
 	test %eax , %eax	/*  offset == 0 (end of offset list) ? */
 
 	movq %mm7 , -8(fifo)	/*  PCI write current component | previous component */
-	jnz $vertex_loop6_WB0	/*  offset != 0, process next component */
+	jnz .L__grDrawTextureLine_3DNow_$vertex_loop6_WB0	/*  offset != 0, process next component */
 
 .L__grDrawTextureLine_3DNow_$vertex_loop6_done_WB0:
 
@@ -1586,7 +1586,7 @@
 	test %eax , %eax	/*  offset == 0 (end of offset list) ? */
 
 	movq %mm7 , -8(fifo)	/*  PCI write current component | previous component */
-	jnz $vertex_loop7_WB0	/*  offset != 0, process next component */
+	jnz .L__grDrawTextureLine_3DNow_$vertex_loop7_WB0	/*  offset != 0, process next component */
 
 .L__grDrawTextureLine_3DNow_$vertex_loop7_done_WB0:
 
@@ -1637,7 +1637,7 @@
 	movq %mm7 , -8(fifo)	/*  PCI write current component | previous component */
 
 	test %eax , %eax	/*  offset == 0 (end of offset list) ? */
-	jnz $vertex_loop8_WB0	/*  offset != 0, process next component */
+	jnz .L__grDrawTextureLine_3DNow_$vertex_loop8_WB0	/*  offset != 0, process next component */
 
 .L__grDrawTextureLine_3DNow_$vertex_loop8_done_WB0:
 
@@ -1760,7 +1760,7 @@
 	mov -4(dlp) , %eax	/*  get next offset from offset list */
 
 	test %eax , %eax	/*  i == GR_DLIST_END ? */
-	jnz $vertex_loop2_WB1	/*  nope, more components to handle */
+	jnz .L__grDrawTextureLine_3DNow_$vertex_loop2_WB1	/*  nope, more components to handle */
 
 .L__grDrawTextureLine_3DNow_$vertex_loop2_done_WB1:
 
@@ -1815,7 +1815,7 @@
 	mov -4(dlp) , %eax	/*  get next offset from offset list */
 
 	cmp $0 , %eax	/*  i == GR_DLIST_END ? */
-	jnz $vertex_loop3_WB1	/*  nope, more components to handle */
+	jnz .L__grDrawTextureLine_3DNow_$vertex_loop3_WB1	/*  nope, more components to handle */
 
 .L__grDrawTextureLine_3DNow_$vertex_loop3_done_WB1:
 
@@ -1872,7 +1872,7 @@
 	mov -4(dlp) , %eax	/*  get next offset from offset list */
 
 	test %eax , %eax	/*  i == GR_DLIST_END ? */
-	jnz $vertex_loop4_WB1	/*  nope, more components to handle */
+	jnz .L__grDrawTextureLine_3DNow_$vertex_loop4_WB1	/*  nope, more components to handle */
 
 .L__grDrawTextureLine_3DNow_$vertex_loop4_done_WB1:
 	add $8 , fifo	/*  fifoPtr += 2*sizeof(FxFloat) */
@@ -1886,7 +1886,7 @@
 
 .L__grDrawTextureLine_3DNow_$j_lt_i2_WB1:
 
-/*  317  :     } else { /* y major */ */
+/*  317  :     } else { */ /* y major */
 /*  318  :       TRI_SETF(FARRAY(b, 0) - _GlideRoot.pool.fHalf) */
 /*  319  :       dataElem = 0 */
 /*  320  :       TRI_SETF(FARRAY(b, 4)) */
@@ -1935,7 +1935,7 @@
 	mov -4(dlp) , %eax	/*  get next offset from offset list */
 
 	test %eax , %eax	/*  i == GR_DLIST_END ? */
-	jnz $vertex_loop5_WB1	/*  nope, more components to handle */
+	jnz .L__grDrawTextureLine_3DNow_$vertex_loop5_WB1	/*  nope, more components to handle */
 
 .L__grDrawTextureLine_3DNow_$vertex_loop5_done_WB1:
 
@@ -2045,7 +2045,7 @@
 	mov -4(dlp) , %eax	/*  get next offset from offset list */
 
 	test %eax , %eax	/*  i == GR_DLIST_END ? */
-	jnz $vertex_loop7_WB1	/*  nope, more components to handle */
+	jnz .L__grDrawTextureLine_3DNow_$vertex_loop7_WB1	/*  nope, more components to handle */
 
 .L__grDrawTextureLine_3DNow_$vertex_loop7_done_WB1:
 
@@ -2102,7 +2102,7 @@
 	mov -4(dlp) , %eax	/*  get next offset from offset list */
 
 	cmp $0 , %eax	/*  i == GR_DLIST_END ? */
-	jnz $vertex_loop8_WB1	/*  nope, more components to handle */
+	jnz .L__grDrawTextureLine_3DNow_$vertex_loop8_WB1	/*  nope, more components to handle */
 
 .L__grDrawTextureLine_3DNow_$vertex_loop8_done_WB1:
 
@@ -2130,7 +2130,7 @@
 /*  370  :   _GlideRoot.stats.othertrisDrawn+=2 */
 /*  371  :  */
 /*  372  : #undef FN_NAME */
-/*  373  : } /* grDrawTextureLine */ */
+/*  373  : } */ /* grDrawTextureLine */
 
 	mov fifoPtr(gc) , %eax	/*  old fifoPtr */
 	mov fifo , fifoPtr(gc)	/*  save new fifoPtr */
@@ -2258,7 +2258,7 @@
 	mov %eax , (_GlideRoot+trisProcessed)	/*  trisProcessed */
 
 	test %edx , %edx	/*  mode 0 (array of vertices) ? */
-	jnz $deref_mode	/*  nope, it's mode 1 (array of pointers to vertices) */
+	jnz .L__grDrawTriangles_3DNow_$deref_mode	/*  nope, it's mode 1 (array of pointers to vertices) */
 
 	mov vertexStride(gc) , %edx	/*  get stride in DWORDs */
 	nop 	/*  filler */
@@ -2267,7 +2267,7 @@
 	cmp $0 , %ecx	/*  coordinate space == 0 (window) ? */
 
 	mov %edx , (strideinbytes)	/*  save off stride (in bytes) */
-	jnz $clip_coordinates_ND	/*  nope, coordinate space != window   */
+	jnz .L__grDrawTriangles_3DNow_$clip_coordinates_ND	/*  nope, coordinate space != window   */
 
 /*  961  :     while (count > 0) { */
 /*  962  :       FxI32 vcount = count >=15 ? 15 : count */
@@ -2376,7 +2376,7 @@
 	punpckldq %mm2 , %mm1	/*  current param | previous param */
 
 	movq %mm1 , -8(fifo)	/*  PCI write current param | previous param */
-	jnz $win_datalist_loop_ND_WB0	/*  nope, copy next parameter */
+	jnz .L__grDrawTriangles_3DNow_$win_datalist_loop_ND_WB0	/*  nope, copy next parameter */
 
 .L__grDrawTriangles_3DNow_$win_datalist_end_ND_WB0:
 
@@ -2384,7 +2384,7 @@
 	dec vertexCount	/*  another vertex done. Any left? */
 
 	lea (vertex,%eax) , vertex	/*  points to next vertex */
-	jnz $win_vertex_loop_ND_WB0	/*  yup, output next vertex */
+	jnz .L__grDrawTriangles_3DNow_$win_vertex_loop_ND_WB0	/*  yup, output next vertex */
 
 .L__grDrawTriangles_3DNow_$win_vertex_end_ND_WB0:
 
@@ -2455,7 +2455,7 @@
 	mov -4(dlp) , %eax	/*  get next offset from offset list */
 
 	test %eax , %eax	/*  at end of offset list (offset == 0) ? */
-	jnz $win_datalist_loop_ND_WB1	/*  nope, copy next parameter */
+	jnz .L__grDrawTriangles_3DNow_$win_datalist_loop_ND_WB1	/*  nope, copy next parameter */
 
 .L__grDrawTriangles_3DNow_$win_datalist_end_ND_WB1:
 
@@ -2463,7 +2463,7 @@
 	dec vertexCount	/*  another vertex done. Any left? */
 
 	lea (vertex,%eax) , vertex	/*  points to next vertex */
-	jnz $win_vertex_loop_ND_WB1	/*  yup, output next vertex */
+	jnz .L__grDrawTriangles_3DNow_$win_vertex_loop_ND_WB1	/*  yup, output next vertex */
 
 .L__grDrawTriangles_3DNow_$win_vertex_end_ND_WB1:
 
@@ -2503,7 +2503,7 @@
 	prefetch (vertexPtr)	/*  pre-load first group of pointers */
 
 	test %ecx , %ecx	/*  coordinate space == 0 (window) ? */
-	jnz $clip_coordinates_D	/*  nope, coordinate space != window */
+	jnz .L__grDrawTriangles_3DNow_$clip_coordinates_D	/*  nope, coordinate space != window */
 
 .L__grDrawTriangles_3DNow_$win_coords_loop_D:
 
@@ -2587,12 +2587,12 @@
 	cmp $0 , %eax	/*  at end of offset list (offset == 0) ? */
 
 	movq %mm1 , -8(fifo)	/*  PCI write current param | previous param */
-	jnz $win_datalist_loop_D_WB0	/*  nope, copy next parameter */
+	jnz .L__grDrawTriangles_3DNow_$win_datalist_loop_D_WB0	/*  nope, copy next parameter */
 
 .L__grDrawTriangles_3DNow_$win_datalist_end_D_WB0:
 
 	dec vertexCount	/*  another vertex done. Any left? */
-	jnz $win_vertex_loop_D_WB0	/*  yup, output next vertex */
+	jnz .L__grDrawTriangles_3DNow_$win_vertex_loop_D_WB0	/*  yup, output next vertex */
 
 .L__grDrawTriangles_3DNow_$win_vertex_end_D_WB0:
 
@@ -2666,12 +2666,12 @@
 	mov -4(dlp) , %eax	/*  get next offset from offset list */
 
 	test %eax , %eax	/*  at end of offset list (offset == 0) ? */
-	jnz $win_datalist_loop_D_WB1	/*  nope, copy next parameter */
+	jnz .L__grDrawTriangles_3DNow_$win_datalist_loop_D_WB1	/*  nope, copy next parameter */
 
 .L__grDrawTriangles_3DNow_$win_datalist_end_D_WB1:
 
 	dec vertexCount	/*  another vertex done. Any left? */
-	jnz $win_vertex_loop_D_WB1	/*  yup, output next vertex */
+	jnz .L__grDrawTriangles_3DNow_$win_vertex_loop_D_WB1	/*  yup, output next vertex */
 
 .L__grDrawTriangles_3DNow_$win_vertex_end_D_WB1:
 
@@ -2710,9 +2710,9 @@
 
 /*  989  :   } */
 /*  990  :   else { */
-/*  991  :     /* */
+/*  991  :      */
 /*  992  :      * first cut of clip space coordinate code, no optimization. */
-/*  993  :      */ */
+/*  993  :      */
 /*  994  :     float oow */
 /*  995  :      */
 /*  996  :     while (count > 0) { */
@@ -2727,7 +2727,7 @@
 /*  1005 :           vPtr = *(float **)pointers */
 /*  1006 :         oow = 1.0f / FARRAY(vPtr, gc->state.vData.wInfo.offset) */
 /*  1007 :          */
-/*  1008 :         /* x, y */ */
+/*  1008 :         */ /* x, y */
 /*  1009 :         TRI_SETF(FARRAY(vPtr, 0) */
 /*  1010 :                  *oow*gc->state.Viewport.hwidth + gc->state.Viewport.ox) */
 /*  1011 :         TRI_SETF(FARRAY(vPtr, 4) */
@@ -2742,7 +2742,7 @@
 
 .L__grDrawTriangles_3DNow_$clip_coordinates_D:
 
-	mov $4 , (strideinbytes)	/*  unit stride for array of pointers to vertices */
+	movl $4 , (strideinbytes)	/*  unit stride for array of pointers to vertices */
 
 .L__grDrawTriangles_3DNow_$clip_coordinates_ND:
 
@@ -2754,9 +2754,9 @@
 
 /*      } */
 /*      else { */
-/*      /* */
+/*       */
 /*       * first cut of clip space coordinate code, no optimization. */
-/*       */ */
+/*       */
 /*      float oow */
 /*        while (count > 0) { */
 /*        FxI32 k, vcount = count >= 15 ? 15 : count */
@@ -3042,7 +3042,7 @@
 .L__grDrawTriangles_3DNow_$clip_setup_end:
 
 	dec vertexCount	/*  vcount-- */
-	jnz $clip_for_begin	/*  until  */
+	jnz .L__grDrawTriangles_3DNow_$clip_for_begin	/*  until  */
 
 .L__grDrawTriangles_3DNow_$clip_for_end:
 


Index: Glide3.spec
===================================================================
RCS file: /cvs/extras/rpms/Glide3/devel/Glide3.spec,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- Glide3.spec	30 Apr 2005 10:18:56 -0000	1.2
+++ Glide3.spec	1 May 2005 16:20:02 -0000	1.3
@@ -1,6 +1,6 @@
 Name:    Glide3
 Version: 20010520
-Release: 35
+Release: 35.1
 Summary: Glide runtime for the 3Dfx Voodoo family of cards
 # Glide3 is x86/alpha/ia64/x86_64 only, ia64 and x86_64 are untested
 ExclusiveArch: %{ix86} alpha ia64 x86_64
@@ -21,6 +21,7 @@
 Patch2:  Glide3-redhat-cleanup-1.patch
 Patch3:  Glide3-fixes.patch
 Patch4:  Glide3-gcc4.patch
+Patch5:  Glide3-amd3dnow.patch
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 
 BuildRequires: automake14 autoconf xorg-x11-devel
@@ -52,6 +53,7 @@
 %patch2 -p1 -b .redhat-cleanup-1
 %patch3 -p1 -b .fix
 %patch4 -p1 -b .gcc4
+%patch5 -p1 -b .amd3dnow
 
 
 %build
@@ -60,23 +62,31 @@
 automake-1.4 -a
 autoconf
 
+#%ifarch %{ix86}
+#%define enable_amd3d --enable-amd3d
+#%else
+%define enable_amd3d
+#%endif
+
 mkdir build-5
 cd build-5
-../configure \
+ln -s ../configure configure
+%configure \
         --enable-fx-debug=no \
         --enable-fx-glide-hw=h5 \
         --enable-fx-dri-build \
-        --prefix=/usr
+	%{enable_amd3d}
 make -f makefile.autoconf all
 cd ..
 
 mkdir build-3
 cd build-3
-../configure \
+ln -s ../configure configure
+%configure \
         --enable-fx-debug=no \
         --enable-fx-glide-hw=h3 \
         --enable-fx-dri-build \
-        --prefix=/usr
+	%{enable_amd3d}
 make -f makefile.autoconf all
 cd ..
 
@@ -84,10 +94,11 @@
 %ifarch %{ix86}
 mkdir build-2
 cd build-2
-../configure \
+ln -s ../configure configure
+%configure \
         --enable-fx-debug=no \
         --enable-fx-glide-hw=cvg \
-        --prefix=/usr
+	%{enable_amd3d}
 make -f makefile.autoconf all
 cd ..
 %endif
@@ -148,6 +159,13 @@
 
 
 %changelog
+* Sun May  1 2005 Hans de Goede <j.w.r.degoede at hhs.nl>
+- Added a patch which fixes PIC compilation of amd3dnow asm code
+  for h3 and h5 and which fixes compilation of amd3dnow code in general
+  for cvg. Currently amd3dnow support is still disabled because it doesn't
+  work on my voodoo2.
+- replaced configure with %%configure
+
 * Sat Apr 30 2005 Hans de Goede <j.w.r.degoede at hhs.nl>
 - Removed unnescearry makefile mods from Glide3-gcc4.patch. The option
   I added disabled another warning then the one I was trying to get disabled.


--- glide-ia64.patch DELETED ---




More information about the fedora-extras-commits mailing list