Further reading
When we discussed the intrinsics, we mentioned that you could experiment with inline assembly first. If you want to know more about inline assembly, we encourage you to read the GNU Compiler Collection (GCC) documentation about this: https://gcc.gnu.org/onlinedocs/gcc/extensions-to-the-c-language-family/how-to-use-inline-assembly-language-in-c-code.html.
The official LLVM website features a document that explains in broad strokes how to implement an LLVM backend: https://llvm.org/docs/WritingAnLLVMBackend.html. If you read that document, you will see that the approach we started in this chapter is more structured and incremental. Indeed, the official documentation essentially says to take an existing backend, clone its content in a new directory, delete what you do not like, and modify the rest. While this is a valid approach, we believe this is not how you gain knowledge about how things work, and as a result, it puts you in a difficult position if you ever have...