Which class is responsible for writing output files?

Hi guys,

Within Clang, which class is responsible for actually writing the output files (eg. .obj)?

Thanks very much.