[llvm] r205509 - Handle getting UnknownAddressOrSize or section_end().
Rafael Espindola
rafael.espindola at gmail.com
Wed Apr 2 20:57:03 PDT 2014
Author: rafael
Date: Wed Apr 2 22:57:03 2014
New Revision: 205509
URL: http://llvm.org/viewvc/llvm-project?rev=205509&view=rev
Log:
Handle getting UnknownAddressOrSize or section_end().
These should probably be error conditions.
Modified:
llvm/trunk/include/llvm/Object/ObjectFile.h
Modified: llvm/trunk/include/llvm/Object/ObjectFile.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Object/ObjectFile.h?rev=205509&r1=205508&r2=205509&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Object/ObjectFile.h (original)
+++ llvm/trunk/include/llvm/Object/ObjectFile.h Wed Apr 2 22:57:03 2014
@@ -354,12 +354,21 @@ inline error_code SymbolRef::getFileOffs
uint64_t Address;
if (error_code EC = getAddress(Address))
return EC;
+ if (Address == UnknownAddressOrSize) {
+ Result = UnknownAddressOrSize;
+ return object_error::success;
+ }
const ObjectFile *Obj = getObject();
section_iterator SecI(Obj->section_begin());
if (error_code EC = getSection(SecI))
return EC;
+ if (SecI == Obj->section_end()) {
+ Result = UnknownAddressOrSize;
+ return object_error::success;
+ }
+
uint64_t SectionAddress;
if (error_code EC = SecI->getAddress(SectionAddress))
return EC;
More information about the llvm-commits
mailing list