to output program in target backend language, e.g. llvm, x64 etc…
and finally use code generation to output program in target language.