私はllvmを学んでいて、私が持っているアイデアの概念実証をしたいと思っていました.
基本的に、コンパイラとランタイムを分割したいと考えています。コンパイラは .bc を提供し、ランタイムは ParseBitcodeFile を介してそれをロードし、ExecutionEngine を使用して実行します。この部分は機能しています。
ここで、システム コールを簡単に作成するために、すべてのシステム コール (ファイル io、stdout 印刷など) を実行する C/C++ 関数をランタイムに実装できるようにしたいと考えています。私の質問は、llvm によって別のステップでコンパイルされたおもちゃのコンパイラのコードからこれらの関数を呼び出し、実行時に使用できるようにする方法です。