In (lldb), there is a bug that positions the source code location on the last character of the previous line if lldb doesn't report a column number. Example, save the following as "t.s" and compile (on x86-64) with "gcc -g t.s -o t": .global _main _main: xor %eax,%eax ret and debug using (lldb "lldb ./t"): (lldb) *b main* : (lldb) *run* : (lldb) *disas*t`main: 0x555555555129 <+0>: xorl %eax, %eax -> 0x55555555512b <+2>: retq but the source code location ends up at the last character of the "xor %eax..." line. Attaching proposed pach against 66ef930ebea4618c1dac71a09495766476ced1d6.