aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/big.h
diff options
context:
space:
mode:
authorSverker Eriksson <[email protected]>2019-02-06 11:36:02 +0100
committerSverker Eriksson <[email protected]>2019-02-06 11:36:02 +0100
commit152c7863a80c308075b6b67a704dd2234a4e28e2 (patch)
tree76b02caf30b2d8c9249978b8856f2bf9ce1e00b1 /erts/emulator/beam/big.h
parent4cd582c2ed035a20dba70863dcd1bd06f38caaa5 (diff)
parentb01083b47699f0494053abfbe7ae1f50142b1b49 (diff)
downloadotp-152c7863a80c308075b6b67a704dd2234a4e28e2.tar.gz
otp-152c7863a80c308075b6b67a704dd2234a4e28e2.tar.bz2
otp-152c7863a80c308075b6b67a704dd2234a4e28e2.zip
Merge branch 'maint'
Diffstat (limited to 'erts/emulator/beam/big.h')
-rw-r--r--erts/emulator/beam/big.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/erts/emulator/beam/big.h b/erts/emulator/beam/big.h
index da4dc84d10..ad19cce395 100644
--- a/erts/emulator/beam/big.h
+++ b/erts/emulator/beam/big.h
@@ -81,7 +81,11 @@ typedef Uint dsize_t; /* Vector size type */
* a Uint64 argument. Therefore, we must test the size of the argument
* to ensure that the cast does not discard the high-order 32 bits.
*/
-#define _IS_SSMALL32(x) (((Uint32) ((((x)) >> (SMALL_BITS-1)) + 1)) < 2)
+#if defined(ARCH_32)
+# define _IS_SSMALL32(x) (((Uint32) ((((x)) >> (SMALL_BITS-1)) + 1)) < 2)
+#else
+# define _IS_SSMALL32(x) (1)
+#endif
#define _IS_SSMALL64(x) (((Uint64) ((((x)) >> (SMALL_BITS-1)) + 1)) < 2)
#define IS_SSMALL(x) (sizeof(x) == sizeof(Uint32) ? _IS_SSMALL32(x) : _IS_SSMALL64(x))