macro for cross platform x64 detection
[folly.git] / folly / small_vector.h
index 94f5b601d5492bccb4bc9184ff159e2d22363850..06d2a3050ec25ec9c1b340406e27bcfc117f0daf 100644 (file)
@@ -48,7 +48,7 @@
 
 #include "folly/Malloc.h"
 
-#if defined(__GNUC__) && defined(__x86_64__)
+#if defined(__GNUC__) && FOLLY_X64
 # include "folly/SmallLocks.h"
 # define FB_PACKED __attribute__((packed))
 #else
@@ -268,7 +268,7 @@ namespace detail {
     SizeType size_;
   };
 
-#ifdef __x86_64__
+#if FOLLY_X64
   template<class SizeType, bool ShouldUseHeap>
   struct OneBitMutexImpl {
     typedef SizeType InternalSizeType;
@@ -966,7 +966,7 @@ private:
     doConstruct(n, val);
   }
 
-  void makeSize(size_type size, value_type* v = NULL) {
+  void makeSize(size_type size, value_type* v = nullptr) {
     makeSize(size, v, size - 1);
   }
 
@@ -1009,7 +1009,7 @@ private:
         detail::shiftPointer(newh, kHeapifyCapacitySize) :
         newh);
 
-    if (v != NULL) {
+    if (v != nullptr) {
       // move new element
       try {
         new (&newp[pos]) value_type(std::move(*v));
@@ -1100,7 +1100,7 @@ private:
     }
   } FB_PACKED;
 
-#if defined(__x86_64_)
+#if FOLLY_X64
   typedef unsigned char InlineStorageType[sizeof(value_type) * MaxInline];
 #else
   typedef typename std::aligned_storage<