Skip to content

Commit 362a420

Browse files
committed
Remove unused calls to defineTypedef which were causing hangs
1 parent b14f86d commit 362a420

File tree

4 files changed

+35
-34
lines changed

4 files changed

+35
-34
lines changed

view/macho/objc.cpp

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1196,16 +1196,17 @@ void ObjCProcessor::ProcessObjCData()
11961196
m_symbolQueue = new SymbolQueue();
11971197
auto addrSize = m_data->GetAddressSize();
11981198

1199-
m_typeNames.relativePtr = defineTypedef(m_data, {"rptr_t"}, Type::IntegerType(4, true));
1200-
auto rptr_t = Type::NamedType(m_data, m_typeNames.relativePtr);
1201-
1202-
m_typeNames.id = defineTypedef(m_data, {"id"}, Type::PointerType(addrSize, Type::VoidType()));
1203-
m_typeNames.sel = defineTypedef(m_data, {"SEL"}, Type::PointerType(addrSize, Type::IntegerType(1, false)));
1204-
1205-
m_typeNames.BOOL = defineTypedef(m_data, {"BOOL"}, Type::IntegerType(1, false));
1206-
m_typeNames.nsInteger = defineTypedef(m_data, {"NSInteger"}, Type::IntegerType(addrSize, true));
1207-
m_typeNames.nsuInteger = defineTypedef(m_data, {"NSUInteger"}, Type::IntegerType(addrSize, false));
1208-
m_typeNames.cgFloat = defineTypedef(m_data, {"CGFloat"}, Type::FloatType(addrSize));
1199+
// m_typeNames.relativePtr = defineTypedef(m_data, {"rptr_t"}, Type::IntegerType(4, true));
1200+
// auto rptr_t = Type::NamedType(m_data, m_typeNames.relativePtr);
1201+
auto rptr_t = Type::NamedType(m_data, defineTypedef(m_data, {"rptr_t"}, Type::IntegerType(4, true)));
1202+
1203+
// m_typeNames.id = defineTypedef(m_data, {"id"}, Type::PointerType(addrSize, Type::VoidType()));
1204+
// m_typeNames.sel = defineTypedef(m_data, {"SEL"}, Type::PointerType(addrSize, Type::IntegerType(1, false)));
1205+
//
1206+
// m_typeNames.BOOL = defineTypedef(m_data, {"BOOL"}, Type::IntegerType(1, false));
1207+
// m_typeNames.nsInteger = defineTypedef(m_data, {"NSInteger"}, Type::IntegerType(addrSize, true));
1208+
// m_typeNames.nsuInteger = defineTypedef(m_data, {"NSUInteger"}, Type::IntegerType(addrSize, false));
1209+
// m_typeNames.cgFloat = defineTypedef(m_data, {"CGFloat"}, Type::FloatType(addrSize));
12091210

12101211
// https://github.com/apple-oss-distributions/objc4/blob/196363c165b175ed925ef6b9b99f558717923c47/runtime/objc-abi.h
12111212
EnumerationBuilder imageInfoFlagBuilder;

view/macho/objc.h

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -147,13 +147,13 @@ namespace BinaryNinja {
147147

148148
class ObjCProcessor {
149149
struct Types {
150-
QualifiedName relativePtr;
151-
QualifiedName id;
152-
QualifiedName sel;
153-
QualifiedName BOOL;
154-
QualifiedName nsInteger;
155-
QualifiedName nsuInteger;
156-
QualifiedName cgFloat;
150+
// QualifiedName relativePtr;
151+
// QualifiedName id;
152+
// QualifiedName sel;
153+
// QualifiedName BOOL;
154+
// QualifiedName nsInteger;
155+
// QualifiedName nsuInteger;
156+
// QualifiedName cgFloat;
157157
QualifiedName cfStringFlag;
158158
QualifiedName cfString;
159159
QualifiedName cfStringUTF16;

view/sharedcache/core/ObjC.cpp

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1245,16 +1245,16 @@ void DSCObjCProcessor::ProcessObjCData(std::shared_ptr<VM> vm, std::string baseN
12451245
m_symbolQueue = new SymbolQueue();
12461246
auto addrSize = m_data->GetAddressSize();
12471247

1248-
m_typeNames.relativePtr = defineTypedef(m_data, {"rptr_t"}, Type::IntegerType(4, true));
1249-
auto rptr_t = Type::NamedType(m_data, m_typeNames.relativePtr);
1250-
1251-
m_typeNames.id = defineTypedef(m_data, {"id"}, Type::PointerType(addrSize, Type::VoidType()));
1252-
m_typeNames.sel = defineTypedef(m_data, {"SEL"}, Type::PointerType(addrSize, Type::IntegerType(1, false)));
1253-
1254-
m_typeNames.BOOL = defineTypedef(m_data, {"BOOL"}, Type::IntegerType(1, false));
1255-
m_typeNames.nsInteger = defineTypedef(m_data, {"NSInteger"}, Type::IntegerType(addrSize, true));
1256-
m_typeNames.nsuInteger = defineTypedef(m_data, {"NSUInteger"}, Type::IntegerType(addrSize, false));
1257-
m_typeNames.cgFloat = defineTypedef(m_data, {"CGFloat"}, Type::FloatType(addrSize));
1248+
// m_typeNames.relativePtr = );
1249+
auto rptr_t = Type::NamedType(m_data, defineTypedef(m_data, {"rptr_t"}, Type::IntegerType(4, true)));
1250+
//
1251+
// m_typeNames.id = defineTypedef(m_data, {"id"}, Type::PointerType(addrSize, Type::VoidType()));
1252+
// m_typeNames.sel = defineTypedef(m_data, {"SEL"}, Type::PointerType(addrSize, Type::IntegerType(1, false)));
1253+
//
1254+
// m_typeNames.BOOL = defineTypedef(m_data, {"BOOL"}, Type::IntegerType(1, false));
1255+
// m_typeNames.nsInteger = defineTypedef(m_data, {"NSInteger"}, Type::IntegerType(addrSize, true));
1256+
// m_typeNames.nsuInteger = defineTypedef(m_data, {"NSUInteger"}, Type::IntegerType(addrSize, false));
1257+
// m_typeNames.cgFloat = defineTypedef(m_data, {"CGFloat"}, Type::FloatType(addrSize));
12581258

12591259
Ref<Type> relativeSelectorPtr;
12601260
auto reader = VMReader(vm);

view/sharedcache/core/ObjC.h

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -162,13 +162,13 @@ namespace DSCObjC {
162162

163163
class DSCObjCProcessor {
164164
struct Types {
165-
QualifiedName relativePtr;
166-
QualifiedName id;
167-
QualifiedName sel;
168-
QualifiedName BOOL;
169-
QualifiedName nsInteger;
170-
QualifiedName nsuInteger;
171-
QualifiedName cgFloat;
165+
// QualifiedName relativePtr;
166+
// QualifiedName id;
167+
// QualifiedName sel;
168+
// QualifiedName BOOL;
169+
// QualifiedName nsInteger;
170+
// QualifiedName nsuInteger;
171+
// QualifiedName cgFloat;
172172
QualifiedName cfStringFlag;
173173
QualifiedName cfString;
174174
QualifiedName cfStringUTF16;

0 commit comments

Comments
 (0)