前回の記事「Rubyの処理系とGCについて」を書いたときに、LLVMがイマイチ理解できずもやっとしてたので調べました。このエントリーは「LLVMとは」でググった(先日の僕のような)人向けの記事です。間違ったことを書いてあったら教えてください。 疑問 この記事を書く前の疑問はおおよそ以下の様なものです。 LLVMはコンパイラ基盤って言われてるけど、コンパイラ基盤って何? LLVMはコンパイラ基盤であってVMじゃないって言うけど、LLVMに含まれるJITコンパイラはVMと違うの? LLVMでマシンコードを作ったあと、実際の実行はどうするの? 色々とググって調べたりしたのですが、LLVMの全体像がつかめるまとまった情報が見つからなかったので、一次情報(llvm.org)のドキュメントを読むことにしました。 Overview The LLVM Compiler Infrastructure Pro
![LLVMとは | DevelopersIO](https://cdn-ak-scissors.b.st-hatena.com/image/square/503134249b7d696ae9e334c9313de3fd13377a94/height=288;version=1;width=512/https%3A%2F%2Fdevio2023-media.developers.io%2Fwp-content%2Fuploads%2F2013%2F12%2Fllvm-logo.png)