[Mesa-dev] [PATCH 1/2] mesa: Remove tnl Mesa rtasm dependency

Alexander von Gluck kallisti5 at unixzen.com
Mon Jan 23 11:39:32 PST 2012


- Mesa tnl used the Mesa rtasm headers, however
   it was using the gallium rtasm symbols causing
   heap corruption. (seen especially on scons
   builds as Mesa rtasm wasn't even compiled).
- Mesa tnl updated to use Gallium rtasm.
---
  src/mesa/sources.mak        |    1 -
  src/mesa/tnl/t_vertex_sse.c |    7 ++++---
  2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/mesa/sources.mak b/src/mesa/sources.mak
index b57a10e..f3cd0ed 100644
--- a/src/mesa/sources.mak
+++ b/src/mesa/sources.mak
@@ -275,7 +275,6 @@ ASM_C_SOURCES =	\
  	x86/x86_xform.c \
  	x86/3dnow.c \
  	x86/sse.c \
-	x86/rtasm/x86sse.c \
  	sparc/sparc.c \
  	x86-64/x86-64.c

diff --git a/src/mesa/tnl/t_vertex_sse.c b/src/mesa/tnl/t_vertex_sse.c
index e0141c3..876ec20 100644
--- a/src/mesa/tnl/t_vertex_sse.c
+++ b/src/mesa/tnl/t_vertex_sse.c
@@ -36,7 +36,7 @@

  #if defined(USE_SSE_ASM)

-#include "x86/rtasm/x86sse.h"
+#include "rtasm/rtasm_x86sse.h"
  #include "x86/common_x86_asm.h"


@@ -356,7 +356,7 @@ static GLboolean build_vertex_emit( struct x86_program 
*p )
     struct x86_reg vp0 = x86_make_reg(file_XMM, 1);
     struct x86_reg vp1 = x86_make_reg(file_XMM, 2);
     struct x86_reg temp2 = x86_make_reg(file_XMM, 3);
-   GLubyte *fixup, *label;
+   GLint fixup, label;

     /* Push a few regs?
      */
@@ -658,7 +658,8 @@ void _tnl_generate_sse_emit( struct gl_context *ctx )
     p.identity = x86_make_reg(file_XMM, 6);
     p.chan0 = x86_make_reg(file_XMM, 7);

-   if (!x86_init_func_size(&p.func, MAX_SSE_CODE_SIZE)) {
+   x86_init_func_size(&p.func, MAX_SSE_CODE_SIZE);
+   if (p.func.caps == 0) {
        vtx->emit = NULL;
        return;
     }
-- 
1.7.5.4





More information about the mesa-dev mailing list