C compilation goes through several stages. For clang, the C compiler on my machine, these are:
+----+ +----+ +-----+ +---------+ +----+ +----+ +-----------+
| .c |--cpp-->| .i |--parser-->| AST |--??-->| LLVM IR |--??-->| .s |--as-->| .o |--ld-->| a.out/.so |
+----+ +----+ +-----+ +---------+ +----+ +----+ +-----------+
main.c, preprocess to produce tokens (a .i file). This is done by the C preprocessor, cpp..s file)..o file). This is done by the assembler, as.a.out) or dynamic library (.so).I’ll cover these stages in future posts.
I wrote this because I felt like it. This post is my own, and not associated with my employer.
Jim. Public speaking. Friends. Vidrio.