[lld] handle the case of errors from createLinkerInput

This changes the interface of createLinkerInput to use ErrorOr, so that
errors from the linker can be captured.

Also adds a convenience function for error strings to be returned from
file nodes.

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@189871 91177308-0d34-0410-b5e6-96231b3b80d8
[lld][ELF][Hexagon] add Init/Fini option for hexagon

This adds init/fini support for Hexagon.

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@189872 91177308-0d34-0410-b5e6-96231b3b80d8
[lld][ELF] Change the InitFini atom type from Stub to Data

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@189873 91177308-0d34-0410-b5e6-96231b3b80d8
[lld][ELF][X86_64] Fix alignment of init_array/fini_array sections

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