Я хотел бы установить точку останова в самом начале вызова метода, так что я могу проверить это $ RDI $ риши и т.д.
В Xcode, когда я установил символическую точку останова при вызове метода говорят - [вспомогательный класс doThingWithBlock :], она останавливается в первой строке тела метода, которая уже содержит несколько инструкций после начала вызова метода, как показано на разборке вызова метода ниже.
DebugBlock`-[HelperClass doThingWithBlock:]:
0x109844aa0 <+0>: pushq %rbp
0x109844aa1 <+1>: movq %rsp, %rbp
0x109844aa4 <+4>: subq $0x30, %rsp
0x109844aa8 <+8>: leaq -0x18(%rbp), %rax
0x109844aac <+12>: movq %rdi, -0x8(%rbp)
0x109844ab0 <+16>: movq %rsi, -0x10(%rbp)
0x109844ab4 <+20>: movq $0x0, -0x18(%rbp)
0x109844abc <+28>: movq %rax, %rdi
0x109844abf <+31>: movq %rdx, %rsi
0x109844ac2 <+34>: callq 0x109844c74 ; symbol stub for: objc_storeStrong
0x109844ac7 <+39>: leaq 0x15a2(%rip), %rax ; @"hi"
0x109844ace <+46>: movl $0x16, %ecx
0x109844ad3 <+51>: movl %ecx, %edx
-> 0x109844ad5 <+53>: movq -0x18(%rbp), %rsi
0x109844ad9 <+57>: movq %rsi, %rdi
0x109844adc <+60>: movq %rsi, -0x20(%rbp)
0x109844ae0 <+64>: movq %rax, %rsi
0x109844ae3 <+67>: movq -0x20(%rbp), %rax
0x109844ae7 <+71>: callq *0x10(%rax)
0x109844aea <+74>: xorl %ecx, %ecx
0x109844aec <+76>: movl %ecx, %esi
0x109844aee <+78>: leaq -0x18(%rbp), %rdx
0x109844af2 <+82>: movq %rdx, %rdi
0x109844af5 <+85>: movb %al, -0x21(%rbp)
0x109844af8 <+88>: callq 0x109844c74 ; symbol stub for: objc_storeStrong
0x109844afd <+93>: addq $0x30, %rsp
0x109844b01 <+97>: popq %rbp
0x109844b02 <+98>: retq
Отлично! Именно то, что я ищу. –
Hah, я специально искал такой вариант, но пропустил его в выводе 'help br s'. –