Chapter 12: Create Your Own Backend
LLVM has a very flexible architecture. You can also add a new target backend to it. The core of a backend is the target description, from which most of the code is generated. However, it is not yet possible to generate a complete backend, and implementing the calling convention requires manually written code. In this chapter, we will learn how to add support for a historical CPU.
In this chapter, we will cover the following:
- Setting the stage for a new backend introduces you to the M88k CPU architecture and shows you where to find the information you need.
- Adding the new architecture to the Triple class teaches you how to make LLVM aware of a new CPU architecture.
- In Extending the ELF file format definition in LLVM, you will add support for the M88k-specific relocations to the libraries and tools that handle ELD object files.
- In Creating the target description, you will develop all the parts of the target description in the...