[英]How can I examine assembly in Xcode 4?
我正在調整一些在我的iPhone應用程序中以緊密循環運行的代碼,我很想看到生成的匯編代碼,看看是否有任何異常。
在Xcode 3.x中,菜單中有一個Build> Show Assembly Code選項,但是在Xcode 4的菜單或文檔中沒有看到任何內容。
有人知道怎么做嗎? 我可以做“gcc -S”,但我的理解是,這與整個項目的編譯方式不同。
據我所知,“View Disassembly”選項已經消失。
這是一個解決方法:
-save-temps
。 點擊進入。 yourFile.i
和yourFile.s
,它們分別是預處理源和生成的程序集,它們的構建方式與項目中的完全相同。 或者,您可以使用otool -tvV /path/to/binaryOrDotOFile
反匯編構建的二進制文件(或源文件生成的目標文件)。
最后,如果這是您想要的功能,請確保提交錯誤報告!
編輯:此功能返回Xcode 4.1。 在助理編輯器窗格中,選擇“生成的輸出 - > YourFilename(程序集)”。 繁榮!
您可以通過轉到Product-> Generate Output-> Assembly File來構建Assembly。 希望這是你正在尋找的。
注意:他們在Xcode 5中再次更改了它。上面的答案現在正在做的事情
在Xcode 5.0.2中,您可以選擇產品→執行操作→“組裝MyController.m”
注意雖然這個問題涉及Xcode 4,但它在谷歌上的結果很高。
對於像我這樣的懶人,Stephen Canon上面建議使用-save-temps標志可以用更少的工作完成:轉到項目設置 - >構建階段 - >編譯源代碼並注意“編譯器標志”列。 將-save-temps添加到需要反匯編的文件中,.ii和.s文件最終會出現在項目目錄中。
可能更好的解決方案是使用類似“-Wa,-alh”和shell重定向“> myFile.s”的自定義規則,但我不知道如何輕松復制默認構建規則進行修改。
世界上如何從“XCode 4”中刪除“查看程序集”?!?!
根據對Xcode 4的全面回顧 ,此功能已從Xcode 4中刪除。如果您想嘗試將其恢復,則需要提交bug / rdar。
另一個有用的快速瀏覽Xcode 4功能的同一作者: http : //pilky.me/view/16
嘗試按Ctrl + F7一次或多次,您將看到匯編代碼。
在調試器中運行並中斷執行,您可以在調試器中鍵入“disass”。 默認情況下,它會反匯編當前函數,因此在您想要查看的函數中放置斷點通常最快。 在LLDB中,“disass -h”將顯示其他選項,例如反匯編命名函數(不確定這是否適用於ObjC選擇器)。
比手工重建源文件容易得多,至少......
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.