[ELF] Add support for IFUNC.

This sadly doesn't have a test for the final
output because llvm-objdump can't dump relocations
that don't belong to a section :(

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@173808 91177308-0d34-0410-b5e6-96231b3b80d8
[ELF] Fix header sort order.

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@173822 91177308-0d34-0410-b5e6-96231b3b80d8
remove targetInfo and layout from ELFTargetLayout

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@173824 91177308-0d34-0410-b5e6-96231b3b80d8
[ELF] Chop the ELF prefix off of most things.

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