diff options
author | Jim Grosbach <grosbach@apple.com> | 2014-03-18 22:09:05 +0000 |
---|---|---|
committer | Jim Grosbach <grosbach@apple.com> | 2014-03-18 22:09:05 +0000 |
commit | 448334a738408b08b9472f7ec15cc331f108e7bf (patch) | |
tree | 81f42e7bd67948b0eb8b56dad265a591d0aa533c /llvm/lib/Object/MachOObjectFile.cpp | |
parent | 79f91c595dc5eba449f3313e88ea0f2761566074 (diff) | |
download | bcm5719-llvm-448334a738408b08b9472f7ec15cc331f108e7bf.tar.gz bcm5719-llvm-448334a738408b08b9472f7ec15cc331f108e7bf.zip |
Darwin: Add assembler directives to create version-min load commands.
Allow object files to be tagged with a version-min load command for iOS
or MacOSX.
Teach macho-dump to understand the version-min load commands for
testcases.
rdar://11337778
llvm-svn: 204190
Diffstat (limited to 'llvm/lib/Object/MachOObjectFile.cpp')
-rw-r--r-- | llvm/lib/Object/MachOObjectFile.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/llvm/lib/Object/MachOObjectFile.cpp b/llvm/lib/Object/MachOObjectFile.cpp index 450693f64e1..6b1dd875958 100644 --- a/llvm/lib/Object/MachOObjectFile.cpp +++ b/llvm/lib/Object/MachOObjectFile.cpp @@ -214,6 +214,14 @@ void SwapStruct(MachO::linker_options_command &C) { } template<> +void SwapStruct(MachO::version_min_command&C) { + SwapValue(C.cmd); + SwapValue(C.cmdsize); + SwapValue(C.version); + SwapValue(C.reserved); +} + +template<> void SwapStruct(MachO::data_in_code_entry &C) { SwapValue(C.offset); SwapValue(C.length); @@ -1467,6 +1475,11 @@ MachOObjectFile::getLinkerOptionsLoadCommand(const LoadCommandInfo &L) const { return getStruct<MachO::linker_options_command>(this, L.Ptr); } +MachO::version_min_command +MachOObjectFile::getVersionMinLoadCommand(const LoadCommandInfo &L) const { + return getStruct<MachO::version_min_command>(this, L.Ptr); +} + MachO::any_relocation_info MachOObjectFile::getRelocation(DataRefImpl Rel) const { const char *P = reinterpret_cast<const char *>(Rel.p); |