[lld] r189181 - [PECOFF] support additional subsystem identifiers

Saleem Abdulrasool compnerd at compnerd.org
Sat Aug 24 13:14:54 PDT 2013


Author: compnerd
Date: Sat Aug 24 15:14:54 2013
New Revision: 189181

URL: http://llvm.org/viewvc/llvm-project?rev=189181&view=rev
Log:
[PECOFF] support additional subsystem identifiers

This completes the subsystem name parsing to support the identifiers that the
Microsoft link.exe linker supports.  "windows" and "console" are left as the
first items as they are the expected common paths.

Signed-off-by: Saleem Abdulrasool <compnerd at compnerd.org>

Modified:
    lld/trunk/lib/Driver/WinLinkDriver.cpp

Modified: lld/trunk/lib/Driver/WinLinkDriver.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/lib/Driver/WinLinkDriver.cpp?rev=189181&r1=189180&r2=189181&view=diff
==============================================================================
--- lld/trunk/lib/Driver/WinLinkDriver.cpp (original)
+++ lld/trunk/lib/Driver/WinLinkDriver.cpp Sat Aug 24 15:14:54 2013
@@ -99,6 +99,16 @@ llvm::COFF::WindowsSubsystem stringToWin
   return llvm::StringSwitch<llvm::COFF::WindowsSubsystem>(str.lower())
       .Case("windows", llvm::COFF::IMAGE_SUBSYSTEM_WINDOWS_GUI)
       .Case("console", llvm::COFF::IMAGE_SUBSYSTEM_WINDOWS_CUI)
+      .Case("boot_application",
+            llvm::COFF::IMAGE_SUBSYSTEM_WINDOWS_BOOT_APPLICATION)
+      .Case("efi_application", llvm::COFF::IMAGE_SUBSYSTEM_EFI_APPLICATION)
+      .Case("efi_boot_service_driver",
+            llvm::COFF::IMAGE_SUBSYSTEM_EFI_BOOT_SERVICE_DRIVER)
+      .Case("efi_rom", llvm::COFF::IMAGE_SUBSYSTEM_EFI_ROM)
+      .Case("efi_runtime_driver",
+            llvm::COFF::IMAGE_SUBSYSTEM_EFI_RUNTIME_DRIVER)
+      .Case("native", llvm::COFF::IMAGE_SUBSYSTEM_NATIVE)
+      .Case("posix", llvm::COFF::IMAGE_SUBSYSTEM_POSIX_CUI)
       .Default(llvm::COFF::IMAGE_SUBSYSTEM_UNKNOWN);
 }
 





More information about the llvm-commits mailing list