Note The latest version of this document can be found online at https://dr-knz.net/go-calling-convention-x86-64.html. Alternate formats: Source, PDF. Introduction This article analyzes how the Go compiler generates code for function calls, argument passing and exception handling on x86-64 targets. This expressely does not analyze how the Go compiler lays out data in memory (other than function arg
![The Go low-level calling convention on x86-64](https://cdn-ak-scissors.b.st-hatena.com/image/square/58f45dc74c53bdedcdf8967e6b75e54abade7e96/height=288;version=1;width=512/https%3A%2F%2Fdr-knz.net%2Ftheme%2Fimages%2Fapple-touch-icon-152x152.png)