Technical requirements
Similar to all the chapters that build an LLVM backend, you need to develop directly in the LLVM code base (or a fork of it). As such, you will need all the same tools that we presented in Chapter 1.
Additionally, for all the snippets presented in this chapter, you will find the actual implementation in the https://github.com/PacktPublishing/LLVM-Code-Generation-by-example GitHub repository. We call this repository the companion repository in the remainder of the chapter.
For each change presented in this chapter, we highlight a Git tag that you can use to find the full snippet in the companion repository. All changes made in this chapter are between the begin_ch21
and end_ch21
Git tags.
If you are not familiar with Git tags, review Chapter 9 for a quick explanation of what you can do with them.
Let us get started with an overview of the steps involved in producing a binary file from a textual assembly file.