Thanks for the pointers! It will definitely take me some time to do this, but i'll look into it
On Tuesday, 7 October 2025 at 00:06:17 UTC Jason E. Aten wrote: > > using the rr-debugger on amd64 and recorded > executions and hardware watchpoints > you can play the crashes forwards and backwards in time; > and have rr (gdb) pinpoint exactly where the memory corruption occurs. > > If this is a new idea, to understand the rr (record and > replay deterministically) approach to debugging, > the following youtube video is a great teacher/example. > > Even though it does not use rr itself -- it does > use the exact same principles: deterministic replay, > running your execution trace backwards to where > the hardware watchpoint is hit. It gives a nice relatable > and visual demonstration inside a game development > environment which makes it easy to follow. > > https://www.youtube.com/watch?v=72y2EC5fkcE > > On Tuesday, October 7, 2025 at 12:55:05 AM UTC+1 Jason E. Aten wrote: > >> Actually, it occurs to me that this bug I filed would be perfect for >> someone >> who can read x86-64 assembly (I'm pretty bad at it). >> >> It might be a great first issue if you're interested in >> how the Go runtime works in that >> >> a) it has several perfect reproducers >> >> -- by using the rr-debugger on amd64 and recorded >> executions and hardware watchpoints >> you can play the crashes forwards and backwards in time; >> and have rr (gdb) pinpoint exactly where the memory corruption occurs. >> >> See the recordings available here >> >> >> https://github.com/glycerine/rr_binary_for_issue74019?tab=readme-ov-file#checking-on-go125-prerelease-at-b062eb46e8 >> >> b) it will teach you alot about the Go runtime (initialization >> in particular); and >> >> c) it seems to need the ability to read assembly. >> >> See https://github.com/golang/go/issues/74019 for full detail. >> >> On Tuesday, October 7, 2025 at 12:03:03 AM UTC+1 Jason E. Aten wrote: >> >>> Other folks will have better answers, but you can read >>> >>> https://go.dev/doc/contribute and >>> https://go.dev/wiki/#contributing-to-the-go-project and >>> https://github.com/golang/go/blob/master/src/runtime/HACKING.md >>> >>> to get some basic info. >>> >>> You could look at the open bugs and try to work one. ( >>> https://github.com/golang/go/issues ) >>> >>> It might help to describe a little more the kinds of things that you are >>> interested in -- you might get better guidance. >>> >>> For assembly-like stuff, I seem to recall that Evan (Phoenix) and >>> Johan (Brandhorst-Satzkorn)'s work on the next >>> Go-to-WebAssembly (WASM) compiler iteration might >>> be a bit stalled -- though my information >>> is almost certainly out of date. You might talk to them about >>> where they are at with it. See >>> >>> https://go.dev/blog/wasi >>> https://go.dev/wiki/WebAssembly >>> and >>> >>> https://cloud.google.com/blog/products/application-development/go-1-24-expands-support-for-wasm >>> >>> and the #webassembly and #contributing channels on the Gopher's Slack. >>> >>> On Monday, October 6, 2025 at 6:02:26 PM UTC+1 Kwesi Frempong-Smart >>> wrote: >>> >>>> I have used Go for a while now, I am currently learning x86-64 asm, and >>>> would love to see how things work on the language/toolchain side. Also >>>> possibly contribute. >>>> >>>> How can I get started with this? Any beginner-friendly guides to >>>> understanding the language internals or how to contribute? How do I start >>>> reading the Go language code since there is no main function (I suppose)? >>>> >>>> -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion visit https://groups.google.com/d/msgid/golang-nuts/db8691ef-185a-4a12-8b62-a36082c44112n%40googlegroups.com.
