https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64999
--- Comment #36 from boger at us dot ibm.com --- I'd like to take a step back and clarify what the functions in question, runtime_callers, runtime.Caller, and runtime.Callers should be returning: the pc values for the call instruction, or the pc values from the instruction following the call? The golang documentation for runtime.Callers says it is the pc for the instruction after the call so I will assume that is what we want for that one. For runtime.Caller I believe it is supposed to return the call instruction itself but I'm not 100% sure on that. Since runtime.Callers calls runtime_callers, I assume runtime_callers should be providing the instruction after the call. That means all callers of runtime_callers should be decrementing pc values to the previous instruction if the call instruction is what they want. Does this sound right?