File 32bit-support.patch of Package mongodb

diff --git a/src/mongo/bson/bsonobjbuilder.h b/src/mongo/bson/bsonobjbuilder.h
index 72fd2d9..fd233a2 100644
--- a/src/mongo/bson/bsonobjbuilder.h
+++ b/src/mongo/bson/bsonobjbuilder.h
@@ -316,7 +316,12 @@ public:
         return append(fieldName, decNumber);
     }
 
-    BSONObjBuilder& appendNumber(StringData fieldName, long long llNumber) {
+    inline BSONObjBuilder& appendNumber(StringData fieldName, uint64_t n) {
+        return appendNumber(fieldName, static_cast<long long>(n));
+    }
+
+
+    BSONObjBuilder& appendNumber(StringData fieldName, int64_t llNumber) {
         static const long long maxInt = (1LL << 30);
         static const long long minInt = -maxInt;
         static const long long maxDouble = (1LL << 40);
@@ -327,7 +332,7 @@ public:
         } else if (minDouble < llNumber && llNumber < maxDouble) {
             append(fieldName, static_cast<double>(llNumber));
         } else {
-            append(fieldName, llNumber);
+            append(fieldName, static_cast<long long>(llNumber));
         }
 
         return *this;
diff --git a/src/mongo/platform/pause.h b/src/mongo/platform/pause.h
index 46df146..5003de5 100644
--- a/src/mongo/platform/pause.h
+++ b/src/mongo/platform/pause.h
@@ -55,7 +55,7 @@
 /* ori 0,0,0 is the PPC64 noop instruction */
 #define MONGO_YIELD_CORE_FOR_SMT() __asm__ volatile("ori 0,0,0" ::: "memory")
 
-#elif defined(__aarch64__)
+#elif defined(__aarch64__) || defined(__arm__)
 
 #define MONGO_YIELD_CORE_FOR_SMT() __asm__ volatile("yield" ::: "memory")
openSUSE Build Service is sponsored by