diff options
Diffstat (limited to 'include/llvm/Object/MachOUniversal.h')
-rw-r--r-- | include/llvm/Object/MachOUniversal.h | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/include/llvm/Object/MachOUniversal.h b/include/llvm/Object/MachOUniversal.h index e6677f5bf28b..93f665438821 100644 --- a/include/llvm/Object/MachOUniversal.h +++ b/include/llvm/Object/MachOUniversal.h @@ -16,8 +16,8 @@ #include "llvm/ADT/StringRef.h" #include "llvm/ADT/Triple.h" -#include "llvm/Object/Binary.h" #include "llvm/Object/Archive.h" +#include "llvm/Object/Binary.h" #include "llvm/Object/MachO.h" #include "llvm/Support/ErrorOr.h" #include "llvm/Support/MachO.h" @@ -25,8 +25,6 @@ namespace llvm { namespace object { -class ObjectFile; - class MachOUniversalBinary : public Binary { virtual void anchor(); @@ -53,14 +51,18 @@ public: ObjectForArch getNext() const { return ObjectForArch(Parent, Index + 1); } uint32_t getCPUType() const { return Header.cputype; } + uint32_t getCPUSubType() const { return Header.cpusubtype; } + uint32_t getOffset() const { return Header.offset; } + uint32_t getSize() const { return Header.size; } + uint32_t getAlign() const { return Header.align; } std::string getArchTypeName() const { Triple T = MachOObjectFile::getArch(Header.cputype, Header.cpusubtype); return T.getArchName(); } - ErrorOr<std::unique_ptr<ObjectFile>> getAsObjectFile() const; + ErrorOr<std::unique_ptr<MachOObjectFile>> getAsObjectFile() const; - std::error_code getAsArchive(std::unique_ptr<Archive> &Result) const; + ErrorOr<std::unique_ptr<Archive>> getAsArchive() const; }; class object_iterator { @@ -84,10 +86,9 @@ public: } }; - MachOUniversalBinary(std::unique_ptr<MemoryBuffer> Source, - std::error_code &ec); - static ErrorOr<MachOUniversalBinary *> - create(std::unique_ptr<MemoryBuffer> Source); + MachOUniversalBinary(MemoryBufferRef Souce, std::error_code &EC); + static ErrorOr<std::unique_ptr<MachOUniversalBinary>> + create(MemoryBufferRef Source); object_iterator begin_objects() const { return ObjectForArch(this, 0); @@ -103,7 +104,7 @@ public: return V->isMachOUniversalBinary(); } - ErrorOr<std::unique_ptr<ObjectFile>> + ErrorOr<std::unique_ptr<MachOObjectFile>> getObjectForArch(Triple::ArchType Arch) const; }; |