mesa/x86: improve SSE-checks for MSVC
[mesa.git] / src / mesa / x86 / x86_xform3.S
index d71a0fc3ba666db51d2b2e1f3b21f1c169540eac..6d2d5185e4c2a6a7c4f62cd318427d7bb85c8920 100644 (file)
@@ -1,8 +1,6 @@
-/* $Id: x86_xform3.S,v 1.2 2002/03/07 21:40:08 brianp Exp $ */
 
 /*
  * Mesa 3-D graphics library
- * Version:  3.5
  *
  * Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
  *
  * 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
- * BRIAN PAUL 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.
+ * 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.
  */
 
 /*
@@ -30,7 +29,9 @@
  * in there will break the build on some platforms.
  */
 
-#include "matypes.h"
+#include "assyntax.h"
+#define MATH_ASM_PTR_SIZE 4
+#include "math/m_vector_asm.h"
 #include "xform_args.h"
 
        SEG_TEXT
@@ -66,6 +67,7 @@
 
 ALIGNTEXT16
 GLOBL GLNAME( _mesa_x86_transform_points3_general )
+HIDDEN(_mesa_x86_transform_points3_general)
 GLNAME( _mesa_x86_transform_points3_general ):
 
 #define FRAME_OFFSET 8
@@ -172,6 +174,7 @@ LLBL(x86_p3_gr_done):
 
 ALIGNTEXT16
 GLOBL GLNAME( _mesa_x86_transform_points3_perspective )
+HIDDEN(_mesa_x86_transform_points3_perspective)
 GLNAME( _mesa_x86_transform_points3_perspective ):
 
 #define FRAME_OFFSET 12
@@ -252,6 +255,7 @@ LLBL(x86_p3_pr_done):
 
 ALIGNTEXT16
 GLOBL GLNAME( _mesa_x86_transform_points3_3d )
+HIDDEN(_mesa_x86_transform_points3_3d)
 GLNAME( _mesa_x86_transform_points3_3d ):
 
 #define FRAME_OFFSET 8
@@ -345,6 +349,7 @@ LLBL(x86_p3_3dr_done):
 
 ALIGNTEXT16
 GLOBL GLNAME( _mesa_x86_transform_points3_3d_no_rot )
+HIDDEN(_mesa_x86_transform_points3_3d_no_rot)
 GLNAME( _mesa_x86_transform_points3_3d_no_rot ):
 
 #define FRAME_OFFSET 8
@@ -417,6 +422,7 @@ LLBL(x86_p3_3dnrr_done):
 
 ALIGNTEXT16
 GLOBL GLNAME( _mesa_x86_transform_points3_2d )
+HIDDEN(_mesa_x86_transform_points3_2d)
 GLNAME( _mesa_x86_transform_points3_2d ):
 
 #define FRAME_OFFSET 12
@@ -494,6 +500,7 @@ LLBL(x86_p3_2dr_done):
 
 ALIGNTEXT16
 GLOBL GLNAME( _mesa_x86_transform_points3_2d_no_rot )
+HIDDEN(_mesa_x86_transform_points3_2d_no_rot)
 GLNAME( _mesa_x86_transform_points3_2d_no_rot ):
 
 #define FRAME_OFFSET 12
@@ -564,6 +571,7 @@ LLBL(x86_p3_2dnrr_done):
 
 ALIGNTEXT16
 GLOBL GLNAME( _mesa_x86_transform_points3_identity )
+HIDDEN(_mesa_x86_transform_points3_identity)
 GLNAME(_mesa_x86_transform_points3_identity ):
 
 #define FRAME_OFFSET 16
@@ -631,3 +639,7 @@ LLBL(x86_p3_ir_done):
        POP_L( EDI )
        POP_L( ESI )
        RET
+       
+#if defined (__ELF__) && defined (__linux__)
+       .section .note.GNU-stack,"",%progbits
+#endif