summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMakoto Kato <m_kato@ga2.so-net.ne.jp>2013-03-29 14:42:30 -0700
committerMakoto Kato <m_kato@ga2.so-net.ne.jp>2013-03-29 14:42:30 -0700
commita8268bba862b3d10378a39dace76177482ea5f10 (patch)
tree72d058b67ba181ec8a9a789da64c72c791a02f00
parent3026cd67a7eb1cf0df748b4bbd8a17ce3add02b9 (diff)
downloadnspr-hg-a8268bba862b3d10378a39dace76177482ea5f10.tar.gz
Bug 687033: Support Windows/arm. r=wtc.
-rw-r--r--pr/include/md/_win95.cfg8
-rw-r--r--pr/include/prbit.h10
2 files changed, 8 insertions, 10 deletions
diff --git a/pr/include/md/_win95.cfg b/pr/include/md/_win95.cfg
index 77d18287..1e693cc6 100644
--- a/pr/include/md/_win95.cfg
+++ b/pr/include/md/_win95.cfg
@@ -14,15 +14,9 @@
#define WIN32
#endif
-#ifdef _WIN32_WCE
-#ifndef WINCE
-#define WINCE
-#endif
-#else
#ifndef WIN95
#define WIN95
#endif
-#endif
#define PR_AF_INET6 23 /* same as AF_INET6 */
@@ -214,7 +208,7 @@
#define PR_ALIGN_OF_FLOAT 4
#define PR_ALIGN_OF_WORD 4
#define PR_ALIGN_OF_DWORD 8
-#define PR_ALIGN_OF_DOUBLE 4
+#define PR_ALIGN_OF_DOUBLE 8
#define PR_ALIGN_OF_POINTER 4
#define PR_BYTES_PER_WORD_LOG2 2
diff --git a/pr/include/prbit.h b/pr/include/prbit.h
index f0a51d01..de837508 100644
--- a/pr/include/prbit.h
+++ b/pr/include/prbit.h
@@ -9,8 +9,12 @@
#include "prtypes.h"
PR_BEGIN_EXTERN_C
-/* replace compare/jump/add/shift sequence with x86 BSF/BSR instruction */
-#if defined(_WIN32) && (_MSC_VER >= 1300) && (defined(_M_IX86) || defined(_M_AMD64))
+/*
+** Replace compare/jump/add/shift sequence with compiler built-in/intrinsic
+** functions.
+*/
+#if defined(_WIN32) && (_MSC_VER >= 1300) && \
+ (defined(_M_IX86) || defined(_M_AMD64) || defined(_M_ARM))
unsigned char _BitScanForward(unsigned long * Index, unsigned long Mask);
unsigned char _BitScanReverse(unsigned long * Index, unsigned long Mask);
# pragma intrinsic(_BitScanForward,_BitScanReverse)
@@ -133,7 +137,7 @@ NSPR_API(PRIntn) PR_FloorLog2(PRUint32 i);
*/
#if defined(_MSC_VER) && (defined(_M_IX86) || defined(_M_AMD64) || \
- defined(_M_X64))
+ defined(_M_X64) || defined(_M_ARM))
#include <stdlib.h>
#pragma intrinsic(_rotl, _rotr)
#define PR_ROTATE_LEFT32(a, bits) _rotl(a, bits)