summaryrefslogtreecommitdiffstats
path: root/meta-moblin/packages/boost/files/arm-intrinsics.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-moblin/packages/boost/files/arm-intrinsics.patch')
-rw-r--r--meta-moblin/packages/boost/files/arm-intrinsics.patch51
1 files changed, 0 insertions, 51 deletions
diff --git a/meta-moblin/packages/boost/files/arm-intrinsics.patch b/meta-moblin/packages/boost/files/arm-intrinsics.patch
deleted file mode 100644
index 860b6df67c..0000000000
--- a/meta-moblin/packages/boost/files/arm-intrinsics.patch
+++ /dev/null
@@ -1,51 +0,0 @@
1diff -Nurd boost_1_36_0.orig/boost/detail/atomic_count_sync.hpp boost_1_36_0.arm/boost/detail/atomic_count_sync.hpp
2--- boost_1_36_0.orig/boost/detail/atomic_count_sync.hpp 2007-11-23 12:03:14.000000000 -0500
3+++ boost_1_36_0.arm/boost/detail/atomic_count_sync.hpp 2008-09-09 13:15:21.000000000 -0400
4@@ -29,17 +29,46 @@
5
6 void operator++()
7 {
8+#ifdef __ARM_ARCH_7A__
9+ int v1, tmp;
10+ asm volatile ("1: \n\t"
11+ "ldrex %0, %1 \n\t"
12+ "add %0 ,%0, #1 \n\t"
13+ "strex %2, %0, %1 \n\t"
14+ "cmp %2, #0 \n\t"
15+ "bne 1b \n\t"
16+ : "=&r" (v1), "+Q"(value_), "=&r"(tmp)
17+ );
18+#else
19 __sync_add_and_fetch( &value_, 1 );
20+#endif
21 }
22
23 long operator--()
24 {
25+#ifdef __ARM_ARCH_7A__
26+ int v1, tmp;
27+ asm volatile ("1: \n\t"
28+ "ldrex %0, %1 \n\t"
29+ "sub %0 ,%0, #1 \n\t"
30+ "strex %2, %0, %1 \n\t"
31+ "cmp %2, #0 \n\t"
32+ "bne 1b \n\t"
33+ : "=&r" (v1), "+Q"(value_), "=&r"(tmp)
34+ );
35+ return value_;
36+#else
37 return __sync_add_and_fetch( &value_, -1 );
38+#endif
39 }
40
41 operator long() const
42 {
43+#if __ARM_ARCH_7A__
44+ return value_;
45+#else
46 return __sync_fetch_and_add( &value_, 0 );
47+#endif
48 }
49
50 private:
51Binary files boost_1_36_0.orig/boost/detail/.atomic_count_sync.hpp.swp and boost_1_36_0.arm/boost/detail/.atomic_count_sync.hpp.swp differ