MBP:testClang yan$ clang -ccc-print-phases main.m
0: input, "main.m", objective-c
1: preprocessor, {0}, objective-c-cpp-output
2: compiler, {1}, ir
3: backend, {2}, assembler
4: assembler, {3}, object
5: linker, {4}, image
6: bind-arch, "x86_64", {5}, image
MBP:testClang yan$
Source -> Pretreatment -> OC, C ++ mixed -> compiler generates intermediate code -> link generating executable image