summaryrefslogtreecommitdiffstats
path: root/lld/lib/Core
Commit message (Collapse)AuthorAgeFilesLines
...
* Replace all uses of NULL with nullptr.Michael J. Spencer2012-03-296-85/+87
| | | | llvm-svn: 153677
* llvm::OwningPtr -> std::unique_ptr.Michael J. Spencer2012-03-291-19/+17
| | | | llvm-svn: 153620
* Rearange header order to match llvm style. This exposed some missing types.Michael J. Spencer2012-03-287-41/+30
| | | | | | Also fix some Platform.h includes that somehow got missed last time. llvm-svn: 153590
* Add Pass to instantiate GOT entriesNick Kledzik2012-03-154-1/+25
| | | | llvm-svn: 152874
* Audit uses of StringRef::getAsInteger.Michael J. Spencer2012-03-121-21/+8
| | | | llvm-svn: 152565
* Fix MSVC incompatibilities.Michael J. Spencer2012-03-093-28/+38
| | | | llvm-svn: 152389
* StringRef is not null terminated.Michael J. Spencer2012-03-091-2/+2
| | | | llvm-svn: 152388
* Use llvm/Support/DataTypes instead of stdint.hMichael J. Spencer2012-03-091-1/+1
| | | | llvm-svn: 152387
* Use nullptr instead of NULL, and remove use of VLA.Michael J. Spencer2012-03-091-2/+3
| | | | llvm-svn: 152386
* Sources now require C++11 to build.Nick Kledzik2012-03-087-356/+443
| | | | | | | | | | | | | | | | | Add first linker pass (StubsPass) which looks for calls to shared library symbols and replaces them with calls to a StubAtom. On ELF system, a "stub" is a PLT entry. Added a simple test case. Pass a Platform object to YAML reader and writer for converting fixup kinds between names and values. Change output of Resolver to be a File object instead of a vector of Atoms. Thus, passes operate on a File instead of just Atoms. Rework how to walk through a File's Atoms. Now iterator based instead of a method that visits each atom. llvm-svn: 152269
* Add support for SharedLibraryAtoms (proxy atoms for exported symbols from a Nick Kledzik2012-02-229-127/+736
| | | | | | | | shared library) and AbsoluteAtoms (proxy atoms for absolute address (e.g. ROM)). Redesign weak importing as can-be-null-at-runtime and can-be-null-at-build-time. Add lots of test cases for all the above. llvm-svn: 151204
* use llvm::DenseMap instead of std::mapNick Kledzik2012-02-151-2/+2
| | | | llvm-svn: 150547
* (no commit message)Nick Kledzik2012-02-159-181/+836
| | | | llvm-svn: 150539
* Add support for UndefinedAtom in yaml and native format. Add test cases ↵Nick Kledzik2012-02-078-143/+362
| | | | | | with undefined atoms llvm-svn: 149962
* Cleanup system_error extensions.Michael J. Spencer2012-01-314-105/+117
| | | | llvm-svn: 149432
* &vectorval[0] is UB when vectorval.size() == 0.Michael J. Spencer2012-01-311-6/+10
| | | | llvm-svn: 149430
* Fix use after free.Michael J. Spencer2012-01-311-1/+1
| | | | llvm-svn: 149429
* If cont.size() is 0, the expression &_contentPool[result] has undefinedMichael J. Spencer2012-01-311-2/+1
| | | | | | behaivior because it indexes past the end of _contentPool. llvm-svn: 149427
* Flexible array members are not in C++03, and MSVC doesn't support them.Michael J. Spencer2012-01-313-8/+12
| | | | llvm-svn: 149426
* First chunk of native object file reader/writer. The lld-core tool now ↵Nick Kledzik2012-01-165-1/+800
| | | | | | reads YAML file, links, writes that out as native object format, then reads that native file, then writes the YAML to stdout. Thus the test suite tests both YAML reading/writing as well as native object file reading/writing. llvm-svn: 148256
* A couple of big refactorings: 1) Move most attributes of Atom down to ↵Nick Kledzik2012-01-118-441/+617
| | | | | | DefinedAtom, so only atoms representing definitions need to implement them. 2) Remove definitionTentative, definitionWeak, mergeDuplicates, and autoHide. Replace with merge and interposable attributes. 3) Make all methods on Atom be virtual so that future object file readers can lazily generated attributes llvm-svn: 147903
* add initial support for coalescing by content (c-strings) with test caseNick Kledzik2012-01-093-25/+147
| | | | llvm-svn: 147799
* Support more Atom attributes. Add more test cases to lld-coreNick Kledzik2012-01-046-165/+711
| | | | llvm-svn: 147571
* Add more merging/coalescing test cases and make core linking work for themNick Kledzik2011-12-223-21/+77
| | | | llvm-svn: 147130
* Cleaned up Atom attribues some more. Added lots of doxygen commentsNick Kledzik2011-12-214-34/+32
| | | | llvm-svn: 147105
* Refactor and comment Atom attributes. Replace combine() with internalName() ↵Nick Kledzik2011-12-204-28/+29
| | | | | | and mergeDuplicates() llvm-svn: 146958
* add parseObjectTextFileOrSTDIN() utilityNick Kledzik2011-12-201-0/+15
| | | | llvm-svn: 146931
* Initial commit. Code by Nick Kledzik. Cleanups and build system by me.Michael J. Spencer2011-12-187-0/+1211
llvm-svn: 146844
OpenPOWER on IntegriCloud