Test commit

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@163861 91177308-0d34-0410-b5e6-96231b3b80d8
ELF support for LLD writer. The writer at present emits ELF header and section 
table header. Skeleton code for ReferenceKinds.
Credits:
Doxygen by  Michael Spencer.
Origianl implementation from Macho by Sidney Manning.
Templatization, implementation of section header chunks, string table, ELF header by Hemant Kulkarni.



git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@163906 91177308-0d34-0410-b5e6-96231b3b80d8
Fix environment path problem

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@163929 91177308-0d34-0410-b5e6-96231b3b80d8
Add ELFReference class - parse relocations needed by that class and update DefinedAtom to use the class.  Tweak coding style.  Add testcase to check relocations. Change was signed-off-by: Michael Spencer

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@164027 91177308-0d34-0410-b5e6-96231b3b80d8
This patch makes use of recently added relocation reference data.  The bulk
of this is derived from the Mach-O writer.  Reviewed by: Nick Kledzik.
 * Adds loop to SectionChunk::write traverse references calling the
   writer's fixup handler, applyFixup.
 * Adds method, ELFWriter::buildAtomToAddressMap to that creates a
   mapping from an atom to its runtime address.
 * Adds method, ELFWriter::addressOfAtom to return the runtime address
   of the atom. 


git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@164618 91177308-0d34-0410-b5e6-96231b3b80d8
Add case for typeConstant in SectionChunk

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@164732 91177308-0d34-0410-b5e6-96231b3b80d8
Fix -Wcovered-switch-default warning.

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@164846 91177308-0d34-0410-b5e6-96231b3b80d8
This change:
  * Updates ReaderELF.cpp contentType method to match ELF.h's logic and now handle
    typeData
  * Add -arch to ldd-core testdriver
  * Add testcase to check typeData
  * Update others to stay in sync with this change.



git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@164976 91177308-0d34-0410-b5e6-96231b3b80d8
Emit symbol tables.
Reorganize to derive all sections from SectionChunk.
Construct section table header from SectionChunk.


git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@164981 91177308-0d34-0410-b5e6-96231b3b80d8
Changed test output comparison to be consistent with the way llvm-objdump and llvm-readobj work.


git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@165048 91177308-0d34-0410-b5e6-96231b3b80d8

  * Return correct size and alignment for common symbols.



git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@165170 91177308-0d34-0410-b5e6-96231b3b80d8
Added missing break in StockSectionChunk constructor.
Removed architecture dependent .sbss section creation.

Updated test case to show the change in section types and removal of a sbss section.


git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@165181 91177308-0d34-0410-b5e6-96231b3b80d8
Fix incorrect setting of EI_DATA

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@165310 91177308-0d34-0410-b5e6-96231b3b80d8

  * Add relocation reference support for Hexagon and PowerPC.
    - Hexagon has many relocation types, this patch covers just
      a subset, more will be added.
    - PowerPC support was added so that we can verify mixed endian
      environments.
  * Add some basic test cases
  * Update ldd-core to accept -endian flag



git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@165477 91177308-0d34-0410-b5e6-96231b3b80d8
This update does the following:
  * Moves enum Scope from DefinedAtom.h to Atom.h
  * Adds scope method to AbsoluteAtom class
  * Updates YAML to print scope of AbsoluteAtoms
  * Update Native Reader/Writer to handle this new, "attribute"
  * Adds testcase 
Reviewed and approved by Nick Kledzik



git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@166189 91177308-0d34-0410-b5e6-96231b3b80d8

This patch changes the following:
  * Use conventional naming for KindHandlers.
  * Add X86 relocation routines.
  * Use std::function instead of function pointers in _fixupHandler map.
  * Change _fixupHandler map from std::map to llvm::DenseMap.
  * Add simple testcase for x86 relocations.



git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@166700 91177308-0d34-0410-b5e6-96231b3b80d8
Add missing include.

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@167165 91177308-0d34-0410-b5e6-96231b3b80d8
Fix cl brokeness.

cl is not attempting to complete a templated class when used in this
context. The conversion forces this to happen.

Thanks to Richard Smith for figuring this out.

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@167166 91177308-0d34-0410-b5e6-96231b3b80d8
[MachO] Fix uninitialized variables.

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@167244 91177308-0d34-0410-b5e6-96231b3b80d8
[MachO] Fix use after free.

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@167245 91177308-0d34-0410-b5e6-96231b3b80d8