The specific line is the guard statement, so yeah, I was going to try to break it up. However, I disassembled at one point:
* At +521, %r13 is 0x0.
* Redirector.o[0x8c70] <+512>: callq 0x8c75 ; <+517> [inlined] Redirector.flowSets.getter : Swift.Dictionary<Foundation.UUID, FlowData> + 27 at Redirector.swift:651:43
* Redirector.o[0x8c75] <+517>: movq (%r14,%rbx), %r13
* Redirector.o[0x8c79] <+521>: cmpq $0x0, 0x10(%r13)
* Redirector.o[0x8c7e] <+526>: je 0x8d35 ; <+709> at Redirector.swift:651:43
So I assume that %r13 has self.flowSets[id] (rather than id). For some reason, however, I didn't disassemble enough to have %r14 and %rbx annotated.
Topic:
Programming Languages
SubTopic:
Swift
Tags: