>> That sounded like it was in another asm file.  But I didn't go
>> through and check to see if the resoultion in that report was
>> applied to all ASM other files.
> 
>> Even though it's addressed...it's believed that real culprit is not
>> OpenSSL, but some other code that incorrectly adds 32-bit value to
>> segment in question prior OpenSSL
> 1. I'm not a perl guy,

Mosts relevant parts in #2620 are not perl specific. Namely failure to
reproduce the problem, lack of understanding of how it actually happens,
 suggestion to submit map file. Though for non-static build map file
would be required for libeay32.dll, not for openssl.exe. Also the
additional flag for generating map file is not /m, but /map.

> 3.  I ran this through the debugger and upon stepped through found
> each dll gets a seperate pointer to the segment.  OpenSSL's was >64
> bytes of NULLs, followed by a misaligned pointer to
> OPENSSL_cpuid_setup, followed by many more NULLs.

The segment is collected from all the .obj, OpenSSL ones and those from
.lib "participating" in link phase. Theory is that some of non-OpenSSL
.obj files slips in 32-bit value, apparently 0 one.

> I can give you
> exact counts if you think it would help.

map file (for failing configuration!) would be more useful.

> The program was only also linked to the standard
> windows libraries,

Bug in "standard windows libraries" is not unthinkable.

>  Oh, other pertinent information, this was a debug build, so my C
> flags relating to the C runtime and optimization included /MDd /Od
> (Disabled) .  Building in release mode actually worked fine.  My
> release mode flags relating to optimization were /MD /Ox /Ob2 /Oi /Ot
> /Oy /GL.

Tried /MDd with VS2010, works for me...

> My suspicion is that /Ot, ignoring code size, aligns
> everything on an 8/16 byte boundry for speed.

No. /Ot [or any other optimization option for that matter] doesn't
affect alignment of data in segment in question. The only possible
source if specific .lib. Choice of lib in turn is affected by some
compilation flags, e.g. /MD vs. /MDd.

> 4.  I don't really understand the logic of wanting to specify an
> alignment less than processor word size.

Original reason for DWORD alignment is discussed in #2620.


______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [email protected]
Automated List Manager                           [email protected]

Reply via email to