1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-22 20:43:44 +02:00
llvm-mirror/lib/Object
Kevin Enderby 6e0594e553 Finish cleaning up most of the error handling in libObject’s MachOUniversalBinary
and its clients to use the new llvm::Error model for error handling.

Changed getAsArchive() from ErrorOr<...> to Expected<...> so now all
interfaces there use the new llvm::Error model for return values.

In the two places it had if (!Parent) this is actually a program error so changed
from returning errorCodeToError(object_error::parse_failed) to calling
report_fatal_error() with a message.

In getObjectForArch() added error messages to its two llvm::Error return values
instead of returning errorCodeToError(object_error::arch_not_found) with no
error message.

For the llvm-obdump, llvm-nm and llvm-size clients since the only binary files in
Mach-O Universal Binaries that are supported are Mach-O files or archives with
Mach-O objects, updated their logic to generate an error when a slice contains
something like an ELF binary instead of ignoring it. And added a test case for
that.

The last error stuff to be cleaned up for libObject’s MachOUniversalBinary is
the use of errorOrToExpected(Archive::create(ObjBuffer)) which needs
Archive::create() to be changed from ErrorOr<...> to Expected<...> first,
which I’ll work on next. 

llvm-svn: 274079
2016-06-28 23:16:13 +00:00
..
Archive.cpp Make sure Format is always initialized. 2016-06-24 13:47:29 +00:00
ArchiveWriter.cpp Fix bug where temporary file would be left behind every time an archive was updated. 2016-05-09 13:31:11 +00:00
Binary.cpp Change all but the last ErrorOr<...> use for MachOUniversalBinary to Expected<...> to 2016-06-27 21:39:39 +00:00
CMakeLists.txt [CMake] Restrict libxar linkage to just llvm-objdump 2016-05-26 16:32:40 +00:00
COFFObjectFile.cpp [Object, COFF] An import data directory might not consist soley of imports 2016-06-26 04:36:32 +00:00
ELF.cpp Support/ELF: Add AMDGPU relocation definitions to match documentation 2016-06-17 22:38:08 +00:00
ELFObjectFile.cpp [llvm-objdump] Support detection of feature bits from the object and implement this for Mips. 2016-06-16 09:17:03 +00:00
Error.cpp Add FIXMEs to all derived classes of std::error_category. 2016-05-24 20:13:46 +00:00
IRObjectFile.cpp [IRObjectFile] Try to be defensive, add a break. 2016-06-23 00:07:31 +00:00
LLVMBuild.txt Object/LLVMBuild.txt: Sort required_libraries by alphabetical order. 2014-07-14 02:52:08 +00:00
MachOObjectFile.cpp Thread Expected<...> up from libObject’s getSymbolAddress() for symbols to allow 2016-06-24 18:24:42 +00:00
MachOUniversal.cpp Finish cleaning up most of the error handling in libObject’s MachOUniversalBinary 2016-06-28 23:16:13 +00:00
ModuleSummaryIndexObjectFile.cpp Apply another batch of fixes from clang-tidy's performance-unnecessary-value-param. 2016-06-17 20:41:14 +00:00
Object.cpp Thread Expected<...> up from libObject’s getSymbolAddress() for symbols to allow 2016-06-24 18:24:42 +00:00
ObjectFile.cpp Thread Expected<...> up from libObject’s getType() for symbols to allow llvm-objdump to produce a good error message. 2016-05-02 20:28:12 +00:00
RecordStreamer.cpp [IRObjectFile] Propagate .weak attribute correctly for ASM symbols. 2016-06-22 20:48:15 +00:00
RecordStreamer.h [IRObjectFile] Propagate .weak attribute correctly for ASM symbols. 2016-06-22 20:48:15 +00:00
SymbolicFile.cpp Thread Expected<...> up from createMachOObjectFile() to allow llvm-objdump to produce a real error message 2016-04-06 22:14:09 +00:00
SymbolSize.cpp [SymbolSize] Skip sorting by index, just assign by index. 2015-06-29 16:05:00 +00:00