summaryrefslogtreecommitdiffstats
path: root/lld/lib/ReaderWriter/PECOFF/Pass.cpp
Commit message (Collapse)AuthorAgeFilesLines
* COFF: Remove the old COFF linker and make link an alias to link2.Rui Ueyama2015-08-061-95/+0
| | | | | | It's time to remove old COFF linker because the new one is now complete. llvm-svn: 244226
* Remove COFFReference and use SimpleReference instead.Rui Ueyama2015-03-091-2/+2
| | | | | | | SimpleReference, which is defined in Core, provides the same functionality as COFFReference does, so we don't need a custom class. llvm-svn: 231715
* Add missing includes for make_unique, lld edition.Benjamin Kramer2015-03-021-0/+1
| | | | llvm-svn: 230925
* PE/COFF: teach ARMNT backend about ADDR32NB for exportsSaleem Abdulrasool2015-01-071-0/+4
| | | | | | | | | This adds the ability to export symbols from a DLL built for ARMNT. Add this support first to help work towards adding support for import thunks on Windows on ARM. In order to generate the exports, add support for IMAGE_REL_ARM_ADDR32NB relocations. llvm-svn: 225339
* Sort include files according to convention.Shankar Easwaran2014-10-181-1/+0
| | | | llvm-svn: 220131
* [PECOFF] Emit x64 delay-import wrapper functionRui Ueyama2014-10-171-0/+16
| | | | | | | | | | | Previously we supported x86 only. This patch is to support x64. The array of pointers to delay-loaded functions points the DLL delay loading function at start-up. When a function is called for the first time, the delay loading function gets called and then rewrite the function pointer array. llvm-svn: 220096
* [PECOFF] Support delay-load import table for x86Rui Ueyama2014-10-161-0/+16
| | | | | | | | | | This patch creates the import address table and sets its address to the delay-load import table. This also creates wrapper functions for __delayLoadHelper2. x86 only for now. llvm-svn: 219948
* Use llvm::make_unique.Rui Ueyama2014-10-141-2/+2
| | | | llvm-svn: 219709
* [PECOFF] Remove yet another use of _is64Rui Ueyama2014-10-071-12/+22
| | | | | | No functionality change intended. llvm-svn: 219246
* [PECOFF] Explicitly pass machine typeRui Ueyama2014-08-221-2/+1
| | | | | | | x86 and x64 are created equal -- taking x86 as the default argument made it hard to find bugs. llvm-svn: 216295
* [PECOFF] Fix PE+ relocationsRui Ueyama2014-08-221-8/+21
| | | | | | | | | | | | | The implementation of AMD64 relocations was imcomplete and wrong. On AMD64, we of course have to use AMD64 relocations instead of i386 ones. This patch fixes the issue. LLD is now able to link hello64.obj (created from hello64.asm) against user32.lib and kernel32.lib to create a Win64 binary. llvm-svn: 216253
* [PECOFF] Add a utility function to add DIR32 relocation.Rui Ueyama2014-02-261-4/+13
| | | | llvm-svn: 202217
* [PECOFF] Rename lld::coff -> lld::pecoff.Rui Ueyama2013-12-131-2/+2
| | | | | | We had lld::coff and lld::pecoff namespaces for no reason. Unify them. llvm-svn: 197201
* [PECOFF] Move a utility function used in a pass to Pass.cpp.Rui Ueyama2013-12-121-0/+28
The file currently has only one function. Function that is useful both for IdataPass and EdataPass will be added to that file. llvm-svn: 197140
OpenPOWER on IntegriCloud