llvm-project/llvm/lib
Reid Kleckner 146eb7a65f Re-land "COFF: migrate def parser from LLD to LLVM"
This reverts commit r304561 and re-lands r303490 & co.

The fix was to use "SymbolName" when translating LLD's internal export
list to lib/Object's short export struct. The SymbolName reflects the
actual symbol name, which may include fastcall and stdcall mangling bits
not included in the /EXPORT or .def file EXPORTS name:

@@ -434,8 +434,7 @@ std::vector<COFFShortExport> createCOFFShortExportFromConfig() {
   std::vector<COFFShortExport> Exports;
   for (Export &E1 : Config->Exports) {
     COFFShortExport E2;
-    E2.Name = E1.Name;
+    // Use SymbolName, which will have any stdcall or fastcall qualifiers.
+    E2.Name = E1.SymbolName;
     E2.ExtName = E1.ExtName;
     E2.Ordinal = E1.Ordinal;
     E2.Noname = E1.Noname;

llvm-svn: 304573
2017-06-02 17:53:06 +00:00
..
Analysis [LazyValueInfo] Fix formatting NFC. 2017-06-02 17:28:12 +00:00
AsmParser [IR] De-virtualize ~Value to save a vptr 2017-05-18 17:24:10 +00:00
Bitcode Tidy up a bit of r304516, use SmallVector::assign rather than for loop 2017-06-02 17:24:26 +00:00
CodeGen [TargetLowering] fix formatting; NFC 2017-06-02 17:35:02 +00:00
DebugInfo Fix 2 more -Wreorder warnings. 2017-06-01 23:24:50 +00:00
Demangle [ItaniumDemangle] Fix a exponential string copying bug 2017-05-28 23:24:52 +00:00
ExecutionEngine [RuntimeDyld, PowerPC] Fix regression from r303637 2017-05-23 17:03:23 +00:00
Fuzzer [libFuzzer] fix a test to match the new sanitizer run-time 2017-05-31 19:47:11 +00:00
IR Reapply "[Cloning] Take another pass at properly cloning debug info" 2017-06-01 23:02:12 +00:00
IRReader Timer: Track name and description. 2016-11-18 19:43:18 +00:00
LTO [ThinLTO] Move -lto-use-new-pm to llvm-lto2, and change it to -use-new-pm. 2017-06-01 23:13:44 +00:00
LineEditor
Linker Support for taking the max of module flags when linking, use for PIE/PIC 2017-05-23 00:08:00 +00:00
MC [WebAssembly] MC: Fix references to undefined externals in data section 2017-06-02 01:05:24 +00:00
Object Re-land "COFF: migrate def parser from LLD to LLVM" 2017-06-02 17:53:06 +00:00
ObjectYAML [CodeView] Properly align symbol records on read/write. 2017-06-01 21:52:41 +00:00
Option [GSoC] Shell autocompletion for clang 2017-05-23 18:39:08 +00:00
Passes Move GVNHoist to the right position in the new pass manager pipeline. 2017-06-01 23:08:14 +00:00
ProfileData [InstrProf] Use more ArrayRef/StringRef. 2017-05-28 13:23:02 +00:00
Support Revert r304117 - WebAssembly object format isn't ready to be the default 2017-06-02 01:26:17 +00:00
TableGen [TableGen] Remove RecordVal constructor that takes a StringRef and Record::setName(StringRef). Leave just the versions that take an Init. 2017-06-01 06:56:16 +00:00
Target AMDGPU: Make auto waitcnt before barrier a feature 2017-06-02 17:40:26 +00:00
ToolDrivers Add missing files 2017-05-13 22:10:13 +00:00
Transforms [InstCombine] fix icmp with not op and constant to work with splat vector constant 2017-06-02 16:29:41 +00:00
XRay [XRay][lib] Support and temporarily skip over CustomEvent records 2017-05-12 01:06:41 +00:00
CMakeLists.txt Move lib/LibDriver -> lib/ToolDrivers/llvm-lib. NFCI. 2017-05-13 22:06:46 +00:00
LLVMBuild.txt Move lib/LibDriver -> lib/ToolDrivers/llvm-lib. NFCI. 2017-05-13 22:06:46 +00:00