我在異常斷點處停止。我如何使用LLDB控制檯來判斷拋出了哪個異常?XCode:找出在異常斷點處停止時拋出的異常
根據this comment我應該可以輸入po $r0
以查看異常對象「因爲它作爲第一個參數傳遞給objc_exception_throw
」但該寄存器似乎不存在於ARM64上。
閱讀iOS ABI Function Call Guide之後,我也試過po $x0
,但是寄存器x0
到x18
都是空的。
我在ARM64上使用XCode 5.1,iOS 7.1。
我在異常斷點處停止。我如何使用LLDB控制檯來判斷拋出了哪個異常?XCode:找出在異常斷點處停止時拋出的異常
根據this comment我應該可以輸入po $r0
以查看異常對象「因爲它作爲第一個參數傳遞給objc_exception_throw
」但該寄存器似乎不存在於ARM64上。
閱讀iOS ABI Function Call Guide之後,我也試過po $x0
,但是寄存器x0
到x18
都是空的。
我在ARM64上使用XCode 5.1,iOS 7.1。
您確定您選擇了正確的堆棧幀(即objc_exception_throw幀)嗎?
根據this answer,您的po $x0
應該工作。
ARM64上的另一種選擇是'po $ arg1',直到'po $ arg6'。感謝您的幫助 – bcattle 2014-12-11 03:52:45
@bcattle呵呵!我不知道。涼! – 2014-12-11 04:01:17
您確定您選擇了正確的堆棧框架(即objc_exception_throw框架)嗎? – 2014-12-11 03:49:23
啊!那樣做了。謝謝 – bcattle 2014-12-11 03:50:39
我會讓它成爲後代的答案。 – 2014-12-11 03:51:03