(cherry picked from commit a2058ddbed82adda55ce39f0e0915996706cb2b9)
rustc
Please read the rustc-dev-guide chapter on Backend Agnostic Codegen.