https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65749
--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> --- For the purpose of looking up the address in line table etc. IMNSHO the subtraction of 1 is needed (that is what gcc unwinder does too, except for signal frames where the pc must be on the faulting or asynchronously interrupted insn)). But if the addresses are printed, supposedly it should match what the debugger does, and at least gdb prints the address after the call instruction, not address after the call instruction - 1.