summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2011-09-25 16:43:26 +0000
committerDr. Stephen Henson <steve@openssl.org>2011-09-25 16:43:26 +0000
commit63fc9883c5920060f06b65b2c0762cee9e2a7796 (patch)
treea6a1a2d69e9e87b4a3d6407ca9b874123a5fdc11
parentd1321464f6c609d106d6af9a4e599661bf6c59b7 (diff)
Win64 fixes.
-rwxr-xr-xcrypto/bn/asm/x86_64-mont.pl1
-rw-r--r--util/pl/VC-32.pl6
2 files changed, 4 insertions, 3 deletions
diff --git a/crypto/bn/asm/x86_64-mont.pl b/crypto/bn/asm/x86_64-mont.pl
index 6b33c7e9ea..c43b69592a 100755
--- a/crypto/bn/asm/x86_64-mont.pl
+++ b/crypto/bn/asm/x86_64-mont.pl
@@ -54,6 +54,7 @@ bn_mul_mont:
push %r14
push %r15
+ mov ${num}d,${num}d
lea 2($num),%rax
mov %rsp,%rbp
neg %rax
diff --git a/util/pl/VC-32.pl b/util/pl/VC-32.pl
index af3569cff3..798a618949 100644
--- a/util/pl/VC-32.pl
+++ b/util/pl/VC-32.pl
@@ -149,7 +149,7 @@ if ($FLAVOR =~ /CE/)
else
{
$ex_libs.=' gdi32.lib advapi32.lib user32.lib';
- $ex_libs.=' bufferoverflowu.lib' if ($FLAVOR =~ /WIN64/);
+ $ex_libs.=' bufferoverflowu.lib' if ($FLAVOR =~ /WIN64/ and `cl 2>&1` =~ /14\.00\.4[0-9]{4}\./);
}
# As native NT API is pure UNICODE, our WIN-NT build defaults to UNICODE,
@@ -331,7 +331,7 @@ sub do_lib_rule
if ($name eq "")
{
- $ex.=' bufferoverflowu.lib' if ($FLAVOR =~ /WIN64/);
+ $ex_libs.=' bufferoverflowu.lib' if ($FLAVOR =~ /WIN64/ and `cl 2>&1` =~ /14\.00\.4[0-9]{4}\./);
}
elsif ($FLAVOR =~ /CE/)
{
@@ -341,7 +341,7 @@ sub do_lib_rule
{
$ex.=' unicows.lib' if ($FLAVOR =~ /NT/);
$ex.=' wsock32.lib gdi32.lib advapi32.lib user32.lib';
- $ex.=' bufferoverflowu.lib' if ($FLAVOR =~ /WIN64/);
+ $ex_libs.=' bufferoverflowu.lib' if ($FLAVOR =~ /WIN64/ and `cl 2>&1` =~ /14\.00\.4[0-9]{4}\./);
}
$ex.=" $zlib_lib" if $zlib_opt == 1 && $target =~ /O_CRYPTO/;