mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-22 18:54:02 +01:00
[Object] Fix the return type of getOffset/getSize
Header64.offset/Header64.size are uint64_t, thus we should not truncate them to unit32_t. Moreover, there are a number of places where we sum the offset and the size (e.g. in various checks in MachOUniversal.cpp), the truncation causes issues since the offset/size can perfectly fit into uint32_t, while the sum overflows. Differential revision: https://reviews.llvm.org/D69126 Test plan: make check-all llvm-svn: 375154
This commit is contained in:
parent
cc5e5f6e77
commit
4775d94534
@ -66,13 +66,13 @@ public:
|
||||
else // Parent->getMagic() == MachO::FAT_MAGIC_64
|
||||
return Header64.cpusubtype;
|
||||
}
|
||||
uint32_t getOffset() const {
|
||||
uint64_t getOffset() const {
|
||||
if (Parent->getMagic() == MachO::FAT_MAGIC)
|
||||
return Header.offset;
|
||||
else // Parent->getMagic() == MachO::FAT_MAGIC_64
|
||||
return Header64.offset;
|
||||
}
|
||||
uint32_t getSize() const {
|
||||
uint64_t getSize() const {
|
||||
if (Parent->getMagic() == MachO::FAT_MAGIC)
|
||||
return Header.size;
|
||||
else // Parent->getMagic() == MachO::FAT_MAGIC_64
|
||||
|
Loading…
Reference in New Issue
Block a user