LLVM/Clangに関する世界観です。
オープンソースの新しいコンパイラ。Appleなどによって開発されており、GCCをリプレースする存在になるのではないかと注目されている。流行りのプログラミング言語であるRustでもLLVMをバックエンドにして開発されている。
Wikipedia
LLVMで動作するC言語コンパイラ。
Wikipedia
ソースコード
最近のプログラミング言語では、CPUアーキテクチャ固有のバイナリを吐き出すために、LLVMのバックエンドを使うことが増えてきています。
たとえば、RustなどでもLLVMバックエンドを使っていますし、新しい言語ではC言語の代替を目指すZigなどがLLVMを使っています。
以前から、lexやyaccを使うことで、簡単にプログラミング言語のフロントエンドを作ることができました。これと同様、新しいプログラミング言語を作る時は、バックエンドをLLVMにすることが一般的になるかもしれません。
プログラミング言語処理系を作るために、コンパイラ基盤としてLLVMの仕組みを学ぶには以下のページが参考になります。
また、以下の書籍は定番のようです。
CPU実験でLLVM Backendを書いたとする記事が以下にあります。面白いかも。
Windowsを使うのであれば、LLVMとctagsで開発環境を整えるのがおすすめ。詳しくはctagsを参照のこと。
コンパイラ開発も参照のこと。