On 03/12/18 13:58, Martin wrote:
Posts by "bigDan": http://forum.lazarus-ide.org/index.php/topic,42869.msg303599.html#msg303599
The log he provided shows that
- lldb got a "thread step-over"
- lldb believed to have stopped at the end of step-over (not any other reason): "stop reason = step over" - the active thread remained the same. So stepping was done in the correct thread
- the called subroutine is located at a different address (not inlined)
   pc before stepping (in calling code) 0x0000000100059d8e
   pc after stepping (in subroutine) 0x00000001002718e8
- the stackpointer was reduced by 8, and the stackframe register was NOT yet modified.
   So the stop was in the prologue ("begin" line of function)


On windows one way to solve the problem was to get rid of .debug_frame info.

At best it hides an apparent bug FPC's generation of Dwarf CFI.

It would be interesting to test if that happens on Mac too.
Does anyone know how to strip that info of the app bundle?

FPC does not generate any information that gets stored in .debug_frame on Darwin. The section that is there probably comes from crt1.o or so, and does not cover FPC-generated code.


Jonas
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply via email to