Loading...
cache_builder/Chunk.cpp dyld-1122.1 dyld-1235.2
--- dyld/dyld-1122.1/cache_builder/Chunk.cpp
+++ dyld/dyld-1235.2/cache_builder/Chunk.cpp
@@ -112,6 +112,11 @@
     return nullptr;
 }
 
+const AlignChunk* Chunk::isAlignChunk() const
+{
+    return nullptr;
+}
+
 const DylibSegmentChunk* Chunk::isDylibSegmentChunk() const
 {
     return nullptr;
@@ -128,6 +133,11 @@
 }
 
 UniquedGOTsChunk* Chunk::isUniquedGOTsChunk()
+{
+    return nullptr;
+}
+
+const DylibSegmentChunk* Chunk::isTPROChunk() const
 {
     return nullptr;
 }
@@ -455,6 +465,30 @@
 }
 
 //
+// MARK: --- PointerHashTableChunk methods ---
+//
+
+PointerHashTableChunk::PointerHashTableChunk()
+    : Chunk(Kind::pointerHashTable, Alignment::struct64)
+{
+}
+
+PointerHashTableChunk::~PointerHashTableChunk()
+{
+
+}
+
+void PointerHashTableChunk::dump() const
+{
+    printf("PointerHashTableChunk\n");
+}
+
+const char* PointerHashTableChunk::name() const
+{
+    return "pointer hash table";
+}
+
+//
 // MARK: --- ObjCProtocolHashTableChunk methods ---
 //
 
@@ -673,6 +707,13 @@
 const DylibSegmentChunk* DylibSegmentChunk::isDylibSegmentChunk() const
 {
     return this;
+}
+
+const DylibSegmentChunk* DylibSegmentChunk::isTPROChunk() const
+{
+    if ( this->kind == Kind::tproDataConst )
+        return this;
+    return nullptr;
 }
 
 //
@@ -879,3 +920,34 @@
 {
     return true;
 }
+
+//
+// MARK: --- AlignChunk methods ---
+//
+
+AlignChunk::AlignChunk()
+    : Chunk(Kind::align, Alignment::page)
+{
+    // This never has a size so just set it now
+    this->cacheVMSize = CacheVMSize(0ULL);
+    this->subCacheFileSize = CacheFileSize(0ULL);
+}
+
+AlignChunk::~AlignChunk()
+{
+
+}
+
+void AlignChunk::dump() const
+{
+    printf("AlignChunk\n");
+}
+
+const char* AlignChunk::name() const
+{
+    return "align";
+}
+
+const AlignChunk* AlignChunk::isAlignChunk() const {
+    return this;
+}