【发布时间】:2012-12-31 13:51:33
【问题描述】:
在 Xcode 中,您可以使用评估所引发异常的描述的条件设置断点,以确定是否在该断点处停止。这在使用 Core Data 时特别有用,因为 Core Data 在内部作为控制流机制抛出异常,并且您希望停止异常,而不是 Core Data。 (注意:如果您想知道如何按所述过滤异常,请在 SO 问题 Ignore certain exceptions when using Xcode's All Exceptions breakpoint 中回答。
但是,这些过滤器通常依赖于寄存器的内容,因为异常的地址存储在那里。在模拟器中(在 Intel 架构上运行),寄存器是 $eax,但在设备(ARM 架构)上是 $r0。
是否可以制作一个区分两种架构的表达式,以便一个表达式使用正确的寄存器,而不管当前使用的架构如何?
【问题讨论】:
标签: ios xcode breakpoints lldb