mirror of
https://github.com/RPCS3/llvm.git
synced 2025-05-13 08:56:04 +00:00
[Object, DebugInfo] Make DWARFContext BE-aware.
test/DebugInfo/member-pointers.ll would not fail in targetting BE any more. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171943 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
96a05b3074
commit
2af949dddd
@ -49,8 +49,8 @@ protected:
|
|||||||
ID_EndObjects
|
ID_EndObjects
|
||||||
};
|
};
|
||||||
|
|
||||||
static inline unsigned int getELFType(bool isLittleEndian, bool is64Bits) {
|
static inline unsigned int getELFType(bool isLE, bool is64Bits) {
|
||||||
if (isLittleEndian)
|
if (isLE)
|
||||||
return is64Bits ? ID_ELF64L : ID_ELF32L;
|
return is64Bits ? ID_ELF64L : ID_ELF32L;
|
||||||
else
|
else
|
||||||
return is64Bits ? ID_ELF64B : ID_ELF32B;
|
return is64Bits ? ID_ELF64B : ID_ELF32B;
|
||||||
@ -85,6 +85,10 @@ public:
|
|||||||
bool isCOFF() const {
|
bool isCOFF() const {
|
||||||
return TypeID == ID_COFF;
|
return TypeID == ID_COFF;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool isLittleEndian() const {
|
||||||
|
return !(TypeID == ID_ELF32B || TypeID == ID_ELF64B);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/// @brief Create a Binary from Source, autodetecting the file type.
|
/// @brief Create a Binary from Source, autodetecting the file type.
|
||||||
|
@ -352,7 +352,7 @@ DIInliningInfo DWARFContext::getInliningInfoForAddress(uint64_t Address,
|
|||||||
}
|
}
|
||||||
|
|
||||||
DWARFContextInMemory::DWARFContextInMemory(object::ObjectFile *Obj) :
|
DWARFContextInMemory::DWARFContextInMemory(object::ObjectFile *Obj) :
|
||||||
IsLittleEndian(true /* FIXME */) {
|
IsLittleEndian(Obj->isLittleEndian()) {
|
||||||
error_code ec;
|
error_code ec;
|
||||||
for (object::section_iterator i = Obj->begin_sections(),
|
for (object::section_iterator i = Obj->begin_sections(),
|
||||||
e = Obj->end_sections();
|
e = Obj->end_sections();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user