3

如何在断点处查看 XCode(等效汇编代码)?

我去了 Thread1,它显示了 [ViewController viewDidLoad] 的 Objective-c,然后显示了 [UIViewController view] 和 [UIWindow makeKeyAndVisible] 的程序集。我希望能够在中断点看到带有标记的 [ViewController viewDidLoad] 的程序集?

(Product->GenerateOutput->Generate Assembly File:不显示中断点。)

谢谢

void addme(int *a)
{
    *a += 0xFF;// <-- I want to see the assembly for this:  should see an instruction "ADD" in the assembly break down
    *a += 1;
    *a += 2;
}

- (void)viewDidLoad
{
    [super viewDidLoad];
    int a = 12;
    addme(&a);
}    
4

3 回答 3

2

脚步:

  1. 在要查看汇编代码的地方放置断点
  2. 运行程序
  3. 一旦程序暂停,点击看起来像 ->| 的按钮 (但指向下方)
  4. 多次重复步骤 3
  5. 舞蹈
  6. 看世界
  7. 惊叹于生活的乐趣
  8. 汽水瓶
  9. 变老

我不太确定这是您要的,但我刚刚做到了(嗯,步骤 1-5 和 8),它对我有用。

在此处输入图像描述

它位于屏幕底部,位于控制台上方。

于 2012-07-16T18:24:41.180 回答
1

而且您也很可能根本看不到汇编 ADD 指令,因为编译时常量是在编译时计算并因此被编译器优化掉的。

于 2012-07-16T20:04:21.497 回答
0

@jdl At the matter of fact i don't know Objective-C and @Dustin doesn't know asm... As i understood viewDidLoad function will execute a code in it when some object is loaded. In my opinion you can compile only that part of code which you included in your question and look into assembly code via IDA pro for Mac OS or some other debugger.

于 2012-07-16T20:01:02.053 回答