The latest snapshot that has this checkin, has a Perl syntax error on line 573 of crypto/perlasm/x86_64-xlate.pl (missing ; on the line above)
Using perl 5.8.4 on Solaris 10. >-- Original Message -- >Subject: Re: [openssl.org #2620] Resolved: static libs cause crash in linking >application on Win64 x64 when built with default (masm) compilation... >From: "Andy Polyakov via RT" <r...@openssl.org> >To: d...@ziggurat29.com >Cc: openssl-dev@openssl.org >Date: Sat, 21 Jan 2012 12:41:03 +0100 (CET) >Reply-To: openssl-dev@openssl.org > > >> Looks like it is still there in 1.0.0g > >Right, modification made to 1.0.1 as focus was on beta... > >> Again, it's an alignment issue of function pointers put into an array >> processed by the C-runtime normally used for doing things like global >> constructors. > >I actually have hard time imagining how misalignment can actually >happen. Even if x86_64cpuid.asm aligns .CRT$XCU at DWORD, it's >*appended* to segment aligned at QWORD *and* contains QWORD itself. >Therefore it shouldn't disrupt alignment. And I can't reproduce the >problem with openssl.exe and any of the test programs [produced with >nt.mak]. Can you confirm that it fails in say openssl.exe or are you >referring to your [or 3rd party] application that is failing? The only >scenario I can imagine is that some other object module specifies >unaligned .CRT prior $XCU and places DWORD there, thus disrupting the >alignment. But if this is the case, then it's more important to fix >actually guilty one... If openssl.exe crashes, can you submit map file? >Add /m to LFLAGS in nt.mak... > >> Its in crypto/perlasm/x86_64-xlate.pl:558 >> Currently: >> $v.=" READONLY DWORD"; >> Should be: >> $v.=" READONLY ALIGN(8)"; > >For reference, the original reason for sticking to DWORD was because >initial ml64 versions didn't understand ALIGN(N). So that formally >solution should be to choose between DWORD and ALIGN(8) depending on >assembler version [and pray for DWORD to work with old version], see >http://cvs.openssl.org/chngview?cn=22061. > >And in case of doubt use nasm, which is actually preferred option. > > >______________________________________________________________________ >OpenSSL Project http://www.openssl.org >Development Mailing List openssl-dev@openssl.org >Automated List Manager majord...@openssl.org ______________________________________________________________________ OpenSSL Project http://www.openssl.org Development Mailing List openssl-dev@openssl.org Automated List Manager majord...@openssl.org