共通言語ランタイム
JITコンパイルの過程として、HHVMではPHPやHackのコードを、HHBCと呼ばれるバイトコード型の中間言語へと変換する。HHBCはHHVMのために設計されたバイトコードであり、後工程でJITコンパイラとインタープリタのどちらも使用できるようになっている。そして、HHBCはバイトコードのレベルで最適化が行われ、x64の機械語にその場で（JIT）コンパイルされ、CPUが直接実行する。このような実行過程は、.NET Frameworkでの共通言語ランタイムや、Javaの仮想マシンといった、他の言語での仮想マシンとも共通する部分がある。