-
Notifications
You must be signed in to change notification settings - Fork 30.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This commit adds preliminary x32 support. Configure with: $ ./configure --dest-cpu=x32 PR-URL: node-forward/node#24 Reviewed-By: Fedor Indutny <[email protected]>
- Loading branch information
1 parent
ab71223
commit e05dff1
Showing
1 changed file
with
8 additions
and
17 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -190,10 +190,8 @@ | |
* boundary. See crypto/rc4/rc4_enc.c for further details. | ||
*/ | ||
# undef RC4_CHUNK | ||
# if (defined(_M_X64) || defined(__x86_64__)) && defined(_WIN32) | ||
# if defined(_M_X64) || defined(__x86_64__) | ||
# define RC4_CHUNK unsigned long long | ||
# elif (defined(_M_X64) || defined(__x86_64__)) && !defined(_WIN32) | ||
# define RC4_CHUNK unsigned long | ||
# elif defined(__arm__) | ||
# define RC4_CHUNK unsigned long | ||
# else | ||
|
@@ -205,21 +203,12 @@ | |
/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a | ||
* %20 speed up (longs are 8 bytes, int's are 4). */ | ||
# undef DES_LONG | ||
# if defined(_M_X64) || defined(__x86_64__) || defined(__arm__) || defined(__mips__) | ||
# define DES_LONG unsigned int | ||
# elif defined(_M_IX86) || defined(__i386__) | ||
# define DES_LONG unsigned long | ||
# endif | ||
# define DES_LONG unsigned int | ||
#endif | ||
|
||
#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) | ||
# define CONFIG_HEADER_BN_H | ||
|
||
# undef BL_LLONG | ||
# if defined(_M_IX86) || defined(__i386__) || defined(__arm__) | ||
# define BL_LLONG | ||
# endif | ||
|
||
/* Should we define BN_DIV2W here? */ | ||
|
||
/* Only one for the following should be defined */ | ||
|
@@ -231,10 +220,12 @@ | |
# undef THIRTY_TWO_BIT | ||
# undef SIXTEEN_BIT | ||
# undef EIGHT_BIT | ||
# if (defined(_M_X64) || defined(__x86_64__)) && defined(_WIN32) | ||
# define SIXTY_FOUR_BIT | ||
# elif (defined(_M_X64) || defined(__x86_64__)) && !defined(_WIN32) | ||
# define SIXTY_FOUR_BIT_LONG | ||
# if defined(_M_X64) || defined(__x86_64__) | ||
# if defined(_WIN64) || defined(_LP64) | ||
# define SIXTY_FOUR_BIT_LONG | ||
This comment has been minimized.
Sorry, something went wrong.
This comment has been minimized.
Sorry, something went wrong.
This comment has been minimized.
Sorry, something went wrong.
bnoordhuis
Author
Member
|
||
# else | ||
# define SIXTY_FOUR_BIT | ||
# endif | ||
# elif defined(_M_IX86) || defined(__i386__) || defined(__arm__) || defined(__mips__) | ||
# define THIRTY_TWO_BIT | ||
# endif | ||
|
I think you got SIXTY_FOUR_BIT_LONG and SIXTY_FOUR_BIT reversed.
In any case this commit causes consistent heap corruption and crashes on x64 windows.
Am I right?