summaryrefslogtreecommitdiff
path: root/include/llvm/Object/MachOUniversal.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/llvm/Object/MachOUniversal.h')
-rw-r--r--include/llvm/Object/MachOUniversal.h21
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;
};