Better x86 Assembly Generation with Go
summary
Claim: generating Go assembly with a Go program makes libs smaller, safer, and reviewable. Uses AO to emit plan-like assembly, with a built-in register allocator, automatic stack and stub generation, and one function per x86 opcode. Demonstrated a sha1 implementation that drops roughly 1500→100 lines of unrolled asm into readable generator code and is used to produce working stdlib crypto primitives with fewer manual bugs.
AI-written summary · about
chapters (7)
- 0:00Intro
- 0:28What is assembly
- 4:11The problem
- 5:26Is this fine
- 7:14Cogeneration
- 8:35PeachPie
- 10:50Hello World
related talks
34mGo Inline Assembler: Dream or Reality
43mDebugging Code Generation in Go
53mReconciling the irreconcilable and accelerating the unacceleratable using Go assembler☠️
43mUnderstanding the Go Compiler
39mIs Go A Good Language to Build Compilers?
44mImplementing Software Machines in Go and C
42mCan you write an OS Kernel in Go?
30mWrite Less (Code), Generate More
