[mupen64plus-video-glide64] 153/172: Use SSE intrinsics instead of GCC specific __builtin functions
Sven Eckelmann
ecsv-guest at moszumanska.debian.org
Thu Nov 26 06:12:16 UTC 2015
This is an automated email from the git hooks/post-receive script.
ecsv-guest pushed a commit to branch master
in repository mupen64plus-video-glide64.
commit 6db6f5d8f4aa5fdf88da03086b194cda93384f45
Author: Sven Eckelmann <sven at narfation.org>
Date: Thu Jan 9 10:27:33 2014 +0100
Use SSE intrinsics instead of GCC specific __builtin functions
---
debian/changelog | 3 +++
debian/patches/llvm_builtin_ftbfs.patch | 37 +++++++++++++++++++++++++++++++++
debian/patches/series | 1 +
3 files changed, 41 insertions(+)
diff --git a/debian/changelog b/debian/changelog
index 62070d1..ea54450 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -3,6 +3,9 @@ mupen64plus-video-glide64 (2.0.0-2) UNRELEASED; urgency=low
* Upgraded to policy 3.9.5, no changes required
* debian/watch:
- Change upstream check from bitbucket to github
+ * debian/patches:
+ - Add llvm_builtin_ftbfs.patch, Use SSE intrinsics instead of GCC specific
+ __builtin functions
* debian/copyright:
- Change upstream source to github
* debian/get-orig-source.sh
diff --git a/debian/patches/llvm_builtin_ftbfs.patch b/debian/patches/llvm_builtin_ftbfs.patch
new file mode 100644
index 0000000..1106c4b
--- /dev/null
+++ b/debian/patches/llvm_builtin_ftbfs.patch
@@ -0,0 +1,37 @@
+Description: Use SSE intrinsics instead of GCC specific __builtin functions
+Author: Sven Eckelmann <sven at narfation.org>
+
+---
+diff --git a/src/3dmath.cpp b/src/3dmath.cpp
+index 79ff2035eda57e11a76f55c5efb583592678d6fd..a12675c5fd5644db0ee6d033d4af07ea457fb2aa 100755
+--- a/src/3dmath.cpp
++++ b/src/3dmath.cpp
+@@ -186,14 +186,14 @@ void __stdcall MulMatricesSSE(float m1[4][4],float m2[4][4],float r[4][4])
+ #if defined(__GNUC__) && !defined(NO_ASM)
+ /* [row][col]*/
+ typedef float v4sf __attribute__ ((vector_size (16)));
+- v4sf row0 = __builtin_ia32_loadups(m2[0]);
+- v4sf row1 = __builtin_ia32_loadups(m2[1]);
+- v4sf row2 = __builtin_ia32_loadups(m2[2]);
+- v4sf row3 = __builtin_ia32_loadups(m2[3]);
++ v4sf row0 = _mm_loadu_ps(m2[0]);
++ v4sf row1 = _mm_loadu_ps(m2[1]);
++ v4sf row2 = _mm_loadu_ps(m2[2]);
++ v4sf row3 = _mm_loadu_ps(m2[3]);
+
+ for (int i = 0; i < 4; ++i)
+ {
+- v4sf leftrow = __builtin_ia32_loadups(m1[i]);
++ v4sf leftrow = _mm_loadu_ps(m1[i]);
+
+ // Fill tmp with four copies of leftrow[0]
+ v4sf tmp = leftrow;
+@@ -216,7 +216,7 @@ void __stdcall MulMatricesSSE(float m1[4][4],float m2[4][4],float r[4][4])
+ tmp = _mm_shuffle_ps (tmp, tmp, 3 + (3 << 2) + (3 << 4) + (3 << 6));
+ destrow += tmp * row3;
+
+- __builtin_ia32_storeups(r[i], destrow);
++ _mm_storeu_ps(r[i], destrow);
+ }
+ #elif !defined(NO_ASM)
+ __asm
diff --git a/debian/patches/series b/debian/patches/series
index 5a5a78d..3e38fc1 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1 +1,2 @@
printf_fixup.patch
+llvm_builtin_ftbfs.patch
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/mupen64plus-video-glide64.git
More information about the Pkg-games-commits
mailing list