MCJIT section loading should just skip non-text sections rather than

erroring out completely. Some modules produce sections that aren't referenced,
so it's friendlier to clients like LLDB to just skip them, at least for now.

llvm-svn: 131243
This commit is contained in:
Jim Grosbach 2011-05-12 21:21:16 +00:00
parent f3eb9e3262
commit dc7e74edfa

View File

@ -268,9 +268,9 @@ loadSegment32(const MachOObject *Obj,
if (!Sect)
return Error("unable to load section: '" + Twine(SectNum) + "'");
// FIXME: Improve check.
// FIXME: For the time being, we're only loading text segments.
if (Sect->Flags != 0x80000400)
return Error("unsupported section type!");
continue;
// Address and names of symbols in the section.
typedef std::pair<uint64_t, StringRef> SymbolEntry;
@ -403,9 +403,9 @@ loadSegment64(const MachOObject *Obj,
if (!Sect)
return Error("unable to load section: '" + Twine(SectNum) + "'");
// FIXME: Improve check.
// FIXME: For the time being, we're only loading text segments.
if (Sect->Flags != 0x80000400)
return Error("unsupported section type!");
continue;
// Address and names of symbols in the section.
typedef std::pair<uint64_t, StringRef> SymbolEntry;