mesa: Replace gen_matypes with a simple header for V4F/mat layout.
authorEric Anholt <eric@anholt.net>
Thu, 20 Jun 2019 17:18:41 +0000 (10:18 -0700)
committerEric Anholt <eric@anholt.net>
Mon, 1 Jul 2019 18:12:15 +0000 (11:12 -0700)
We can greatly simplify our builds by just hardcoding GLvector4f and
GLmatrix's layouts.

Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Eric Engestrom <eric.engestrom@intel.com>
26 files changed:
src/mesa/Android.gen.mk
src/mesa/Android.mesa_gen_matypes.mk [deleted file]
src/mesa/Android.mk
src/mesa/SConscript
src/mesa/math/m_matrix.c
src/mesa/math/m_vector.c
src/mesa/math/m_vector.h
src/mesa/math/m_vector_asm.h [new file with mode: 0644]
src/mesa/meson.build
src/mesa/x86-64/xform4.S
src/mesa/x86/3dnow_xform1.S
src/mesa/x86/3dnow_xform2.S
src/mesa/x86/3dnow_xform3.S
src/mesa/x86/3dnow_xform4.S
src/mesa/x86/common_x86_asm.S
src/mesa/x86/gen_matypes.c [deleted file]
src/mesa/x86/mmx_blend.S
src/mesa/x86/sse_normal.S
src/mesa/x86/sse_xform1.S
src/mesa/x86/sse_xform2.S
src/mesa/x86/sse_xform3.S
src/mesa/x86/sse_xform4.S
src/mesa/x86/x86_cliptest.S
src/mesa/x86/x86_xform2.S
src/mesa/x86/x86_xform3.S
src/mesa/x86/x86_xform4.S

index ee2d1dec2c7a57763b8fd575360e4df3530b779d..ff4f5e4e4d84867d4d2b0df83ba90cf7b5e3802e 100644 (file)
@@ -47,13 +47,6 @@ LOCAL_SRC_FILES := $(filter-out $(sources), $(LOCAL_SRC_FILES))
 
 LOCAL_C_INCLUDES += $(intermediates)/main
 
-ifeq ($(strip $(MESA_ENABLE_ASM)),true)
-ifeq ($(TARGET_ARCH),x86)
-sources += x86/matypes.h
-LOCAL_C_INCLUDES += $(intermediates)/x86
-endif
-endif
-
 sources := $(addprefix $(intermediates)/, $(sources))
 
 LOCAL_GENERATED_SOURCES += $(sources)
@@ -70,16 +63,6 @@ define es-gen
        $(hide) $(PRIVATE_SCRIPT) $(1) $(PRIVATE_XML) > $@
 endef
 
-matypes_deps := \
-       $(BUILD_OUT_EXECUTABLES)/mesa_gen_matypes$(BUILD_EXECUTABLE_SUFFIX) \
-       $(LOCAL_PATH)/main/mtypes.h \
-       $(LOCAL_PATH)/tnl/t_context.h
-
-$(intermediates)/x86/matypes.h: $(matypes_deps) 
-       @mkdir -p $(dir $@)
-       @echo "MATYPES: $(PRIVATE_MODULE) <= $(notdir $@)"
-       $(hide) $< > $@
-
 $(intermediates)/main/dispatch.h: PRIVATE_SCRIPT := $(MESA_PYTHON2) $(glapi)/gl_table.py
 $(intermediates)/main/dispatch.h: PRIVATE_XML := -f $(glapi)/gl_and_es_API.xml
 
diff --git a/src/mesa/Android.mesa_gen_matypes.mk b/src/mesa/Android.mesa_gen_matypes.mk
deleted file mode 100644 (file)
index 4fcf73a..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2012 Intel Corporation
-# Copyright (C) 2010-2011 Chia-I Wu <olvaffe@gmail.com>
-# Copyright (C) 2010-2011 LunarG Inc.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# the rights to use, copy, modify, merge, publish, distribute, sublicense,
-# and/or sell copies of the Software, and to permit persons to whom the
-# Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included
-# in all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
-# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-# DEALINGS IN THE SOFTWARE.
-
-# ---------------------------------------------------------------------
-# host executable: mesa_gen_matypes
-# ---------------------------------------------------------------------
-
-ifeq ($(strip $(MESA_ENABLE_ASM)),true)
-ifeq ($(TARGET_ARCH),x86)
-
-LOCAL_PATH := $(call my-dir)
-
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := mesa_gen_matypes
-LOCAL_IS_HOST_MODULE := true
-
-LOCAL_C_INCLUDES := \
-       $(MESA_TOP)/src/mapi
-
-LOCAL_SRC_FILES := \
-       x86/gen_matypes.c
-
-include $(MESA_COMMON_MK)
-include $(BUILD_HOST_EXECUTABLE)
-
-endif # x86
-endif # MESA_ENABLE_ASM
index e89de82f4ed81cc9371ef87efda334d0de1296a4..a740c2d2220c1c71d406d957c32a0e4b3011ce8b 100644 (file)
@@ -20,7 +20,6 @@
 
 LOCAL_PATH := $(call my-dir)
 
-include $(LOCAL_PATH)/Android.mesa_gen_matypes.mk
 include $(LOCAL_PATH)/Android.libmesa_glsl_utils.mk
 include $(LOCAL_PATH)/Android.libmesa_dricore.mk
 include $(LOCAL_PATH)/Android.libmesa_st_mesa.mk
index eaf23fbae1865b2fe99c7a3b8b60420f7a86a588..da003743f59efbcf0261e6cf94aaed12ffe1af48 100644 (file)
@@ -103,23 +103,6 @@ if env['platform'] not in ('cygwin', 'darwin', 'windows', 'haiku'):
     else:
         pass
 
-    # Generate matypes.h
-    if env['machine'] in ('x86', 'x86_64'):
-        # See http://www.scons.org/wiki/UsingCodeGenerators
-        gen_matypes = env.Program(
-            target = 'gen_matypes',
-            source = 'x86/gen_matypes.c',
-        )
-        matypes = env.Command(
-            'matypes.h',
-            gen_matypes,
-            gen_matypes[0].abspath + ' > $TARGET',
-        )
-        # Add the dir containing the generated header (somewhere inside  the
-        # build dir) to the include path
-        env.Prepend(CPPPATH = [matypes[0].dir])
-
-
 # The marshal_generated.c file is generated from the GL/ES API.xml file
 env.CodeGenerate(
     target = 'main/marshal_generated.c',
index 57a49533de201913dc2877c0420ae77d48e55aa3..6f91dbd191515444f4b59ed4221299c8a3068da1 100644 (file)
@@ -39,6 +39,8 @@
 #include "main/glheader.h"
 #include "main/imports.h"
 #include "main/macros.h"
+#define MATH_ASM_PTR_SIZE sizeof(void *)
+#include "math/m_vector_asm.h"
 
 #include "m_matrix.h"
 
@@ -1137,6 +1139,9 @@ _math_matrix_viewport(GLmatrix *m, const float scale[3],
 void
 _math_matrix_set_identity( GLmatrix *mat )
 {
+   STATIC_ASSERT(MATRIX_M == offsetof(GLmatrix, m));
+   STATIC_ASSERT(MATRIX_INV == offsetof(GLmatrix, inv));
+
    memcpy( mat->m, Identity, sizeof(Identity) );
    memcpy( mat->inv, Identity, sizeof(Identity) );
 
index 831f953d655b8a87dc3fa4be1ec3f02651f3f1d7..0f7c52a4ff173b469ff35bec7b05aac450336253 100644 (file)
@@ -79,6 +79,13 @@ static const GLubyte size_bits[5] = {
 void
 _mesa_vector4f_init( GLvector4f *v, GLbitfield flags, GLfloat (*storage)[4] )
 {
+   STATIC_ASSERT(V4F_DATA == offsetof(GLvector4f, data));
+   STATIC_ASSERT(V4F_START == offsetof(GLvector4f, start));
+   STATIC_ASSERT(V4F_COUNT == offsetof(GLvector4f, count));
+   STATIC_ASSERT(V4F_STRIDE == offsetof(GLvector4f, stride));
+   STATIC_ASSERT(V4F_SIZE == offsetof(GLvector4f, size));
+   STATIC_ASSERT(V4F_FLAGS == offsetof(GLvector4f, flags));
+
    v->stride = 4 * sizeof(GLfloat);
    v->size = 2;   /* may change: 2-4 for vertices and 1-4 for texcoords */
    v->data = storage;
index 5bd76b8987d0a75495c175fe197d94f970b15148..2065324556bfd49aff34155c6cdd5a4f34c42ffc 100644 (file)
 #define _M_VECTOR_H_
 
 #include "main/glheader.h"
+#define MATH_ASM_PTR_SIZE sizeof(void *)
+#include "math/m_vector_asm.h"
 
-
-#define VEC_DIRTY_0        0x1
-#define VEC_DIRTY_1        0x2
-#define VEC_DIRTY_2        0x4
-#define VEC_DIRTY_3        0x8
 #define VEC_MALLOC         0x10 /* storage field points to self-allocated mem*/
 #define VEC_NOT_WRITEABLE  0x40        /* writable elements to hold clipped data */
 #define VEC_BAD_STRIDE     0x100 /* matches tnl's prefered stride */
 
 
-#define VEC_SIZE_1   VEC_DIRTY_0
-#define VEC_SIZE_2   (VEC_DIRTY_0|VEC_DIRTY_1)
-#define VEC_SIZE_3   (VEC_DIRTY_0|VEC_DIRTY_1|VEC_DIRTY_2)
-#define VEC_SIZE_4   (VEC_DIRTY_0|VEC_DIRTY_1|VEC_DIRTY_2|VEC_DIRTY_3)
 
 
 
diff --git a/src/mesa/math/m_vector_asm.h b/src/mesa/math/m_vector_asm.h
new file mode 100644 (file)
index 0000000..60cf1ec
--- /dev/null
@@ -0,0 +1,57 @@
+/*
+ * Copyright © 2019 Google LLC
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+
+#ifndef _M_VECTOR_ASM_H_
+#define _M_VECTOR_ASM_H_
+
+/* This file is a set of defines usable by the old FF TNL assembly code for
+ * referencing GLvector4f and GLmatrix structs.
+ */
+
+#define VEC_DIRTY_0        0x1
+#define VEC_DIRTY_1        0x2
+#define VEC_DIRTY_2        0x4
+#define VEC_DIRTY_3        0x8
+
+#define VEC_SIZE_1   VEC_DIRTY_0
+#define VEC_SIZE_2   (VEC_DIRTY_0|VEC_DIRTY_1)
+#define VEC_SIZE_3   (VEC_DIRTY_0|VEC_DIRTY_1|VEC_DIRTY_2)
+#define VEC_SIZE_4   (VEC_DIRTY_0|VEC_DIRTY_1|VEC_DIRTY_2|VEC_DIRTY_3)
+
+/* If you add a new field, please add it to the STATIC_ASSERTs in
+ * _mesa_vector4f_init().
+ */
+#define V4F_DATA   0
+#define V4F_START  (V4F_DATA + MATH_ASM_PTR_SIZE)
+#define V4F_COUNT  (V4F_START + MATH_ASM_PTR_SIZE)
+#define V4F_STRIDE (V4F_COUNT + 4)
+#define V4F_SIZE   (V4F_STRIDE + 4)
+#define V4F_FLAGS  (V4F_SIZE + 4)
+
+/* If you add a new field, please add it to the STATIC_ASSERTs in
+ * _math_matrix_set_identity().
+ */
+#define MATRIX_M   0
+#define MATRIX_INV (MATRIX_M + MATH_ASM_PTR_SIZE)
+
+#endif /* _M_VECTOR_ASM_H */
index 2d9b673fbe73e32bdc27db9ed5722b243bf01fa2..baf5c6b11c19e8c74388065a694dd80c20849c8f 100644 (file)
@@ -605,22 +605,6 @@ files_libmesa_gallium = files(
   'state_tracker/st_vdpau.h',
 )
 
-matypes_h = []
-if with_asm_arch == 'x86' or with_asm_arch == 'x86_64'
-  gen_matypes = executable(
-    'gen_matypes',
-    'x86/gen_matypes.c',
-    c_args : [c_vis_args, c_msvc_compat_args],
-    include_directories : inc_common,
-  )
-  matypes_h = custom_target(
-    'matypes.h',
-    output : 'matypes.h',
-    command : [gen_matypes],
-    capture : true,
-  )
-endif
-
 inc_libmesa_asm = []
 if with_asm_arch == 'x86'
   files_libmesa_common += files(
@@ -707,7 +691,6 @@ files_libmesa_common += [
   main_dispatch_h,
   ir_expression_operation_h,
   main_remap_helper_h,
-  matypes_h,
   sha1_h,
 ]
 
index b0aca19c8b0963d00e22c4e42d608e97fc2e4c4e..b5d224237cfae63a81f9d48880dcdaf4854b8fd8 100644 (file)
@@ -24,7 +24,8 @@
 
 #ifdef USE_X86_64_ASM
 
-#include "matypes.h"
+#define MATH_ASM_PTR_SIZE 8
+#include "math/m_vector_asm.h"
 
 .text
 
index 939cd2098585890d982852a448ff2ce5460dc1d1..2b157bb0e27f815ee871b7c9e8b190a1e7d227b5 100644 (file)
@@ -25,7 +25,8 @@
 
 #ifdef USE_3DNOW_ASM
 #include "assyntax.h"
-#include "matypes.h"
+#define MATH_ASM_PTR_SIZE 4
+#include "math/m_vector_asm.h"
 #include "xform_args.h"
 
     SEG_TEXT
index 169a47f086614c460561e569626fd97b8494807d..fd71648e2c0092cbde203a2b5b7c8a06a8fc4468 100644 (file)
@@ -25,7 +25,8 @@
 
 #ifdef USE_3DNOW_ASM
 #include "assyntax.h"
-#include "matypes.h"
+#define MATH_ASM_PTR_SIZE 4
+#include "math/m_vector_asm.h"
 #include "xform_args.h"
 
     SEG_TEXT
index 7b0189c4ffc9f455ae7016d800ac50a0591fe69a..db24843463f4a7fa8f0b7e40abd61b9f584332be 100644 (file)
@@ -25,7 +25,8 @@
 
 #ifdef USE_3DNOW_ASM
 #include "assyntax.h"
-#include "matypes.h"
+#define MATH_ASM_PTR_SIZE 4
+#include "math/m_vector_asm.h"
 #include "xform_args.h"
 
     SEG_TEXT
index ee845b34004d9790a78b14108ae75a514f521bdb..161aaa1a9b7151524b72aca5561d486e28500fc0 100644 (file)
@@ -25,7 +25,8 @@
 
 #ifdef USE_3DNOW_ASM
 #include "assyntax.h"
-#include "matypes.h"
+#define MATH_ASM_PTR_SIZE 4
+#include "math/m_vector_asm.h"
 #include "xform_args.h"
 
     SEG_TEXT
index 1887bcaaff4d1d6815c2c8e6f97596a0d5638366..7b29416c7aa8a31175a5f2f495fba38a3342d5c4 100644 (file)
@@ -39,7 +39,6 @@
  * in there will break the build on some platforms.
  */
 
-#include "matypes.h"
 #include "assyntax.h"
 #include "common_x86_features.h"
 
diff --git a/src/mesa/x86/gen_matypes.c b/src/mesa/x86/gen_matypes.c
deleted file mode 100644 (file)
index 441b5c6..0000000
+++ /dev/null
@@ -1,146 +0,0 @@
-/*
- * Mesa 3-D graphics library
- *
- * Copyright (C) 1999-2006  Brian Paul   All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
- * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
- * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- * OTHER DEALINGS IN THE SOFTWARE.
- *
- * Authors:
- *    Gareth Hughes
- */
-
-/*
- * This generates an asm version of mtypes.h (called matypes.h), so that
- * Mesa's x86 assembly code can access the internal structures easily.
- * This will be particularly useful when developing new x86 asm code for
- * Mesa, including lighting, clipping, texture image conversion etc.
- */
-
-#include <stdio.h>
-#include <inttypes.h>
-
-#include "main/glheader.h"
-#include "main/mtypes.h"
-#include "tnl/t_context.h"
-
-
-#undef offsetof
-#define offsetof( type, member ) ((size_t) &((type *)0)->member)
-
-
-#define OFFSET_HEADER( x )                                             \
-do {                                                                   \
-   printf( "\n" );                                                     \
-   printf( "\n" );                                                     \
-   printf( "/* ====================================================="  \
-          "========\n" );                                              \
-   printf( " * Offsets for " x "\n" );                                 \
-   printf( " */\n" );                                                  \
-   printf( "\n" );                                                     \
-} while (0)
-
-#define DEFINE_HEADER( x )                                             \
-do {                                                                   \
-   printf( "\n" );                                                     \
-   printf( "/*\n" );                                                   \
-   printf( " * Flags for " x "\n" );                                   \
-   printf( " */\n" );                                                  \
-   printf( "\n" );                                                     \
-} while (0)
-
-#ifdef ASM_OFFSETS
-
-/*
- * Format the asm output in a special way that we can manipulate
- * after the fact and turn into the final header for the target.
- */
-
-#define DEFINE_UL( s, ul )                                             \
-   __asm__ __volatile__ ( "\n->" s " %0" : : "i" (ul) )
-
-#define DEFINE( s, d )                                                 \
-   DEFINE_UL( s, d )
-
-#define printf( x )                                                    \
-   __asm__ __volatile__ ( "\n->" x )
-
-#else
-
-#define DEFINE_UL( s, ul )                                             \
-   printf( "#define %s\t%lu\n", s, (unsigned long) (ul) );
-
-#define DEFINE( s, d )                                                 \
-   printf( "#define %s\t0x%" PRIx64 "\n", s, (uint64_t) d );
-
-#endif
-
-#define OFFSET( s, t, m )                                              \
-   DEFINE_UL( s, offsetof( t, m ) )
-
-#define SIZEOF( s, t )                                                 \
-   DEFINE_UL( s, sizeof(t) )
-
-
-
-int main( int argc, char **argv )
-{
-   printf( "/*\n" );
-   printf( " * This file is automatically generated from the Mesa internal type\n" );
-   printf( " * definitions.  Do not edit directly.\n" );
-   printf( " */\n" );
-   printf( "\n" );
-   printf( "#ifndef __ASM_TYPES_H__\n" );
-   printf( "#define __ASM_TYPES_H__\n" );
-   printf( "\n" );
-
-   /* GLvector4f offsets:
-    */
-   OFFSET_HEADER( "GLvector4f" );
-
-   OFFSET( "V4F_DATA          ", GLvector4f, data );
-   OFFSET( "V4F_START         ", GLvector4f, start );
-   OFFSET( "V4F_COUNT         ", GLvector4f, count );
-   OFFSET( "V4F_STRIDE        ", GLvector4f, stride );
-   OFFSET( "V4F_SIZE          ", GLvector4f, size );
-   OFFSET( "V4F_FLAGS         ", GLvector4f, flags );
-
-   DEFINE_HEADER( "GLvector4f" );
-
-   DEFINE( "VEC_SIZE_1        ", VEC_SIZE_1 );
-   DEFINE( "VEC_SIZE_2        ", VEC_SIZE_2 );
-   DEFINE( "VEC_SIZE_3        ", VEC_SIZE_3 );
-   DEFINE( "VEC_SIZE_4        ", VEC_SIZE_4 );
-
-
-   /* GLmatrix offsets:
-    */
-   OFFSET_HEADER( "GLmatrix" );
-
-   OFFSET( "MATRIX_DATA   ", GLmatrix, m );
-   OFFSET( "MATRIX_INV    ", GLmatrix, inv );
-   OFFSET( "MATRIX_FLAGS  ", GLmatrix, flags );
-   OFFSET( "MATRIX_TYPE   ", GLmatrix, type );
-
-
-   printf( "\n" );
-   printf( "\n" );
-   printf( "#endif /* __ASM_TYPES_H__ */\n" );
-
-   return 0;
-}
index df736cdaa59158c39e10a103c1e05314deea506b..500e54a57f401216ab453408586ecbb32d9dc10c 100644 (file)
@@ -6,7 +6,8 @@
 
 #ifdef USE_MMX_ASM
 #include "assyntax.h"
-#include "matypes.h"
+#define MATH_ASM_PTR_SIZE 4
+#include "math/m_vector_asm.h"
 
 /* integer multiplication - alpha plus one
  *
index 36d69e0b0a18e8f9359eac68153fc25621b2bc39..279f6eafcad9b358d81b67d98b1d526981a3dd7c 100644 (file)
@@ -32,7 +32,8 @@
 
 #ifdef USE_SSE_ASM
 #include "assyntax.h"
-#include "matypes.h"
+#define MATH_ASM_PTR_SIZE 4
+#include "math/m_vector_asm.h"
 #include "norm_args.h"
 
    SEG_TEXT
index 7d84a52bc3cf4fecaf7de30ff52043637e03393e..9473fc1571f31f3d37e21dd468978c8051b6e5f7 100644 (file)
@@ -32,7 +32,8 @@
 
 #ifdef USE_SSE_ASM
 #include "assyntax.h"
-#include "matypes.h"
+#define MATH_ASM_PTR_SIZE 4
+#include "math/m_vector_asm.h"
 #include "xform_args.h"
 
    SEG_TEXT
index 70215100d19844a8b02e1beb3343985dbbf61ee0..f89146b42d56a5ea29414c47af8eb089834a4649 100644 (file)
@@ -32,7 +32,8 @@
 
 #ifdef USE_SSE_ASM
 #include "assyntax.h"
-#include "matypes.h"
+#define MATH_ASM_PTR_SIZE 4
+#include "math/m_vector_asm.h"
 #include "xform_args.h"
 
    SEG_TEXT
index aeb43ef70170101c0ea5e2276011c6d3f638e98c..933878603896fd170300f4b592df2376fff1f40c 100644 (file)
@@ -32,7 +32,8 @@
 
 #ifdef USE_SSE_ASM
 #include "assyntax.h"
-#include "matypes.h"
+#define MATH_ASM_PTR_SIZE 4
+#include "math/m_vector_asm.h"
 #include "xform_args.h"
 
    SEG_TEXT
index 0baa8ef84112b8002723154e60c12a0ff4df9da0..d81e9a5b9a1693ea2773267e5b79aa24e8f46655 100644 (file)
@@ -25,7 +25,8 @@
 
 #ifdef USE_SSE_ASM
 #include "assyntax.h"
-#include "matypes.h"
+#define MATH_ASM_PTR_SIZE 4
+#include "math/m_vector_asm.h"
 #include "xform_args.h"
 
        SEG_TEXT
index 031ec1d88ed6f2e7b11a992969039f0310c3caa5..231c029e84fefa99e0d0c7519c404086a9a2ecdd 100644 (file)
@@ -30,7 +30,8 @@
  */
 
 #include "assyntax.h"
-#include "matypes.h"
+#define MATH_ASM_PTR_SIZE 4
+#include "math/m_vector_asm.h"
 #include "clip_args.h"
 
 #define SRC0           REGOFF(0, ESI)
index a36c3dcdab75b7959bc98dde7bebf7295db075ab..fb1b4bea572c409348d08dc30ad86bf48e07ccf1 100644 (file)
@@ -30,7 +30,8 @@
  */
 
 #include "assyntax.h"
-#include "matypes.h"
+#define MATH_ASM_PTR_SIZE 4
+#include "math/m_vector_asm.h"
 #include "xform_args.h"
 
        SEG_TEXT
index 52783064e40ae63cb5e1faf6be311024b6917d90..6d2d5185e4c2a6a7c4f62cd318427d7bb85c8920 100644 (file)
@@ -30,7 +30,8 @@
  */
 
 #include "assyntax.h"
-#include "matypes.h"
+#define MATH_ASM_PTR_SIZE 4
+#include "math/m_vector_asm.h"
 #include "xform_args.h"
 
        SEG_TEXT
index e585968ed959a09d12f8c53882bfd447c4283632..f6db5e3165b420419f578b86a138f0067c244575 100644 (file)
@@ -30,7 +30,8 @@
  */
 
 #include "assyntax.h"
-#include "matypes.h"
+#define MATH_ASM_PTR_SIZE 4
+#include "math/m_vector_asm.h"
 #include "xform_args.h"
 
        SEG_TEXT