1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-20 19:42:54 +02:00
llvm-mirror/tools/dsymutil
Kevin Enderby 92582f2b18 Thread Expected<...> up from libObject’s getName() for symbols to allow llvm-objdump to produce a good error message.
Produce another specific error message for a malformed Mach-O file when a symbol’s
string index is past the end of the string table.  The existing test case in test/Object/macho-invalid.test
for macho-invalid-symbol-name-past-eof now reports the error with the message indicating
that a symbol at a specific index has a bad sting index and that bad string index value.
 
Again converting interfaces to Expected<> from ErrorOr<> does involve
touching a number of places. Where the existing code reported the error with a
string message or an error code it was converted to do the same.  There is some
code for this that could be factored into a routine but I would like to leave that for
the code owners post-commit to do as they want for handling an llvm::Error.  An
example of how this could be done is shown in the diff in
lib/ExecutionEngine/RuntimeDyld/RuntimeDyldImpl.h which had a Check() routine
already for std::error_code so I added one like it for llvm::Error .

Also there some were bugs in the existing code that did not deal with the
old ErrorOr<> return values.  So now with Expected<> since they must be
checked and the error handled, I added a TODO and a comment:
“// TODO: Actually report errors helpfully” and a call something like
consumeError(NameOrErr.takeError()) so the buggy code will not crash
since needed to deal with the Error.

Note there fixes needed to lld that goes along with this that I will commit right after this.
So expect lld not to built after this commit and before the next one.

llvm-svn: 266919
2016-04-20 21:24:34 +00:00
..
BinaryHolder.cpp Thread Expected<...> up from createMachOObjectFile() to allow llvm-objdump to produce a real error message 2016-04-06 22:14:09 +00:00
BinaryHolder.h [dsymutil] Implement support for universal mach-o object files. 2015-07-24 06:41:11 +00:00
CMakeLists.txt [dsymutil] Implement support for handling mach-o universal binaries as main input/output. 2015-08-05 18:27:44 +00:00
DebugMap.cpp Thread Expected<...> up from libObject’s getName() for symbols to allow llvm-objdump to produce a good error message. 2016-04-20 21:24:34 +00:00
DebugMap.h [dsymutil] Allow debug map mappings with no object file address. NFC 2016-01-31 04:29:22 +00:00
dsymutil.cpp [dsymutil] Prevent warning 2015-10-09 15:04:05 +00:00
dsymutil.h dsymutil: Fix a comment. [-Wdocumentation] 2015-09-23 00:19:20 +00:00
DwarfLinker.cpp Thread Expected<...> up from libObject’s getName() for symbols to allow llvm-objdump to produce a good error message. 2016-04-20 21:24:34 +00:00
LLVMBuild.txt [dsymutil] Add the DwarfStreamer class. 2015-02-28 00:29:11 +00:00
MachODebugMapParser.cpp Thread Expected<...> up from libObject’s getName() for symbols to allow llvm-objdump to produce a good error message. 2016-04-20 21:24:34 +00:00
MachOUtils.cpp Update to use new name alignTo(). 2016-01-14 21:06:47 +00:00
MachOUtils.h [dsymutil] Try to find lipo first besides dsymutil before looking up the PATH. 2015-10-08 22:35:53 +00:00
NonRelocatableStringpool.h One more batch of self-containing headers. 2016-01-27 19:29:56 +00:00