调试自己的写的代码无法进入汇编状态

想研究下block(arr,YES)这个传值在汇编下是怎么调用的,自己写了个代码

  • (void)press {
    void(^block)(NSArray *arr,BOOL flag) = ^(NSArray *arr,BOOL flag){
    NSLog(@“arr = %@,flag = %d”,arr,flag);
    };

    NSArray *arr = @[@“1”,@“2”,@“3”];
    block(arr,YES);
    }

xcode编译完安装到设备上,lldb进行调试,下完断点,总是显示如下

  • thread #1: tid = 0x5e9aa, 0x000b7382 Debug-[ViewController press](self=0x1563d1a0, _cmd="press") at ViewController.m:27, queue = 'com.apple.main-thread', stop reason = breakpoint 1.1 frame #0: 0x000b7382 Debug-[ViewController press](self=0x1563d1a0, _cmd=“press”) at ViewController.m:27 [opt]
    24 }
    25
    26
    → 27 - (void)press {
    28 void(^block)(NSArray *arr,BOOL flag) = ^(NSArray *arr,BOOL flag){
    29 NSLog(@“arr = %@,flag = %d”,arr,flag);
    30 };
    (lldb)

明明只想看汇编,怎么直接符号化了,尝试去掉符号表,也是不行,这个是什么情况,求解。要是第三方能这样,我都会笑出来,但是现在我只想调试汇编,囧。

已解决,xcode8.3.2 顶部工具条->Debug->Debug WorkFlow->Always Show Disassmembly, 设置完就可以愉快的探查各种oc代码是怎么转换成汇编的了,每次都自己解决了,感觉自己萌萌哒。

1 个赞