@@ -69,6 +69,13 @@ enum Sym {
69
69
symbol ( symbolicationHandle, " task_peek_string " )
70
70
static let task_stop_peeking : @convention ( c) ( task_t ) -> kern_return_t =
71
71
symbol ( symbolicationHandle, " task_stop_peeking " )
72
+
73
+ static let CSSymbolicatorForeachSymbolOwnerAtTime :
74
+ @convention ( c) ( CSSymbolicatorRef , CSMachineTime , @convention ( block) ( CSSymbolOwnerRef ) -> Void ) -> UInt =
75
+ symbol ( coreSymbolicationHandle, " CSSymbolicatorForeachSymbolOwnerAtTime " )
76
+
77
+ static let CSSymbolOwnerGetBaseAddress : @convention ( c) ( CSSymbolOwnerRef ) -> mach_vm_address_t =
78
+ symbol ( symbolicationHandle, " CSSymbolOwnerGetBaseAddress " )
72
79
}
73
80
74
81
typealias CSMachineTime = UInt64
@@ -145,6 +152,19 @@ func CSSymbolicatorGetSymbolWithAddressAtTime(
145
152
Sym . CSSymbolicatorGetSymbolWithAddressAtTime ( symbolicator, address, time)
146
153
}
147
154
155
+ func CSSymbolicatorForeachSymbolOwnerAtTime(
156
+ _ symbolicator: CSSymbolicatorRef ,
157
+ _ time: CSMachineTime ,
158
+ _ symbolIterator: ( CSSymbolOwnerRef ) -> Void
159
+ ) -> UInt {
160
+ return Sym . CSSymbolicatorForeachSymbolOwnerAtTime ( symbolicator, time,
161
+ symbolIterator)
162
+ }
163
+
164
+ func CSSymbolOwnerGetBaseAddress( _ symbolOwner: CSSymbolOwnerRef ) -> mach_vm_address_t {
165
+ return Sym . CSSymbolOwnerGetBaseAddress ( symbolOwner)
166
+ }
167
+
148
168
func task_start_peeking( _ task: task_t ) -> Bool {
149
169
let result = Sym . task_start_peeking ( task)
150
170
if result == KERN_SUCCESS {
0 commit comments