[lld] r183705 - [PECOFF][Writer] Set required OS version numbers.

Rui Ueyama ruiu at google.com
Mon Jun 10 15:29:24 PDT 2013


Because llvm-readobj cannot dump PECOFF executable's optional header, I
couldn't write a test for this change. I'll add a test after submitting
http://llvm-reviews.chandlerc.com/D939.


On Mon, Jun 10, 2013 at 3:25 PM, Rui Ueyama <ruiu at google.com> wrote:

> Author: ruiu
> Date: Mon Jun 10 17:25:41 2013
> New Revision: 183705
>
> URL: http://llvm.org/viewvc/llvm-project?rev=183705&view=rev
> Log:
> [PECOFF][Writer] Set required OS version numbers.
>
> Modified:
>     lld/trunk/lib/ReaderWriter/PECOFF/WriterPECOFF.cpp
>
> Modified: lld/trunk/lib/ReaderWriter/PECOFF/WriterPECOFF.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/PECOFF/WriterPECOFF.cpp?rev=183705&r1=183704&r2=183705&view=diff
>
> ==============================================================================
> --- lld/trunk/lib/ReaderWriter/PECOFF/WriterPECOFF.cpp (original)
> +++ lld/trunk/lib/ReaderWriter/PECOFF/WriterPECOFF.cpp Mon Jun 10 17:25:41
> 2013
> @@ -136,11 +136,14 @@ public:
>      // Sections in an executable file on disk should be sector-aligned
> (512 byte).
>      _peHeader.FileAlignment = 512;
>
> -    // [FIXME] Windows 5.1 is Windows XP.
> -    _peHeader.MajorOperatingSystemVersion = 5;
> -    _peHeader.MinorOperatingSystemVersion = 1;
> -    _peHeader.MajorSubsystemVersion = 5;
> -    _peHeader.MinorSubsystemVersion = 1;
> +    // The required Windows version number. This is the internal version
> and
> +    // shouldn't be confused with product name. Windows 7 is version 6.1
> and
> +    // Windows 8 is 6.2, for example.
> +    PECOFFTargetInfo::OSVersion minOSVersion =
> targetInfo.getMinOSVersion();
> +    _peHeader.MajorOperatingSystemVersion = minOSVersion.majorVersion;
> +    _peHeader.MinorOperatingSystemVersion = minOSVersion.minorVersion;
> +    _peHeader.MajorSubsystemVersion = minOSVersion.majorVersion;
> +    _peHeader.MinorSubsystemVersion = minOSVersion.minorVersion;
>
>      // [FIXME] The size of the image when loaded into memory
>      _peHeader.SizeOfImage = 0x2000;
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130610/20df1ffc/attachment.html>


More information about the llvm-commits mailing list