summaryrefslogtreecommitdiffstats
path: root/llvm/lib/ObjectYAML/MachOYAML.cpp
diff options
context:
space:
mode:
authorChris Bieneman <beanz@apple.com>2016-05-25 17:09:07 +0000
committerChris Bieneman <beanz@apple.com>2016-05-25 17:09:07 +0000
commite8e7555b10bc38ca54f5986a9840b4ab397bf604 (patch)
treeccac8017c6507c3052290328e8033a7b87cd0219 /llvm/lib/ObjectYAML/MachOYAML.cpp
parentb136a25c5cfdb32285133cee7a8ecc01cc1645c2 (diff)
downloadbcm5719-llvm-e8e7555b10bc38ca54f5986a9840b4ab397bf604.tar.gz
bcm5719-llvm-e8e7555b10bc38ca54f5986a9840b4ab397bf604.zip
[obj2yaml] [yaml2obj] MachO support for rebase opcodes
This is the first bit of support for MachO __LINKEDIT segment data. llvm-svn: 270724
Diffstat (limited to 'llvm/lib/ObjectYAML/MachOYAML.cpp')
-rw-r--r--llvm/lib/ObjectYAML/MachOYAML.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/llvm/lib/ObjectYAML/MachOYAML.cpp b/llvm/lib/ObjectYAML/MachOYAML.cpp
index 2b4cfa0ce47..641e27e43f7 100644
--- a/llvm/lib/ObjectYAML/MachOYAML.cpp
+++ b/llvm/lib/ObjectYAML/MachOYAML.cpp
@@ -93,9 +93,22 @@ void MappingTraits<MachOYAML::Object>::mapping(IO &IO,
}
IO.mapRequired("FileHeader", Object.Header);
IO.mapOptional("LoadCommands", Object.LoadCommands);
+ IO.mapOptional("LinkEditData", Object.LinkEdit);
IO.setContext(nullptr);
}
+void MappingTraits<MachOYAML::LinkEditData>::mapping(IO &IO,
+ MachOYAML::LinkEditData &LinkEditData) {
+ IO.mapOptional("RebaseOpcodes", LinkEditData.RebaseOpcodes);
+}
+
+void MappingTraits<MachOYAML::RebaseOpcode>::mapping(IO &IO,
+ MachOYAML::RebaseOpcode &RebaseOpcode) {
+ IO.mapRequired("Opcode", RebaseOpcode.Opcode);
+ IO.mapRequired("Imm", RebaseOpcode.Imm);
+ IO.mapOptional("ExtraData", RebaseOpcode.ExtraData);
+}
+
template <typename StructType>
void mapLoadCommandData(IO &IO, MachOYAML::LoadCommand &LoadCommand) {}
OpenPOWER on IntegriCloud