August 2019
Beginner to intermediate
798 pages
17h 2m
English
In this section, you will learn how Go code is converted into machine code in much more detail. The Go program that is going to be used in this example is named machineCode.go and it is going to be presented in two parts.
The first part of machineCode.go is as follows:
package main
import (
"fmt"
)
func hello() {
fmt.Println("Hello!")
}
The second and final part of machineCode.go is as follows:
func main() {
hello()
}
After that, you can see machineCode.go translated into machine code as follows:
$ GOSSAFUNC=main GOOS=linux GOARCH=amd64 go build -gcflags "-S" machineCode.go # runtime dumped SSA to /usr/local/Cellar/go/1.12.4/libexec/src/runtime/ssa.html # command-line-arguments dumped SSA to ./ssa.html os.(*File).close ...
Read now
Unlock full access