mirror of https://github.com/python/cpython
bpo-40280: Optimize ints and and startup on wasm (GH-29887)
This commit is contained in:
parent
a6c3b0faa1
commit
cb8f491f46
|
@ -87,13 +87,17 @@ Used in: Py_SAFE_DOWNCAST
|
|||
|
||||
/* If PYLONG_BITS_IN_DIGIT is not defined then we'll use 30-bit digits if all
|
||||
the necessary integer types are available, and we're on a 64-bit platform
|
||||
(as determined by SIZEOF_VOID_P); otherwise we use 15-bit digits. */
|
||||
(as determined by SIZEOF_VOID_P); otherwise we use 15-bit digits.
|
||||
|
||||
From pyodide: WASM has 32 bit pointers but has native 64 bit arithmetic
|
||||
so it is more efficient to use 30 bit digits.
|
||||
*/
|
||||
|
||||
#ifndef PYLONG_BITS_IN_DIGIT
|
||||
#if SIZEOF_VOID_P >= 8
|
||||
#define PYLONG_BITS_IN_DIGIT 30
|
||||
#if SIZEOF_VOID_P >= 8 || defined(__wasm__)
|
||||
# define PYLONG_BITS_IN_DIGIT 30
|
||||
#else
|
||||
#define PYLONG_BITS_IN_DIGIT 15
|
||||
# define PYLONG_BITS_IN_DIGIT 15
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
|
|
@ -2145,7 +2145,11 @@ is_valid_fd(int fd)
|
|||
if (fd < 0) {
|
||||
return 0;
|
||||
}
|
||||
#if defined(F_GETFD) && (defined(__linux__) || defined(__APPLE__) || defined(MS_WINDOWS))
|
||||
#if defined(F_GETFD) && ( \
|
||||
defined(__linux__) || \
|
||||
defined(__APPLE__) || \
|
||||
defined(MS_WINDOWS) || \
|
||||
defined(__wasm__))
|
||||
int res;
|
||||
_Py_BEGIN_SUPPRESS_IPH
|
||||
res = fcntl(fd, F_GETFD);
|
||||
|
|
Loading…
Reference in New Issue