LLVM
ライブラリからインライン関数を作成しようとしています。
とリンクしたLLVMビットコードファイル(手動で生成)があります。llvm-link
また、によってビットコードにコンパイルされclang
、アーカイブされたライブラリ(Cで記述)もありllvm-ar
ます。LLVM
すべてをリンクして実行することはできますが、ライブラリから関数をインライン化することはできません。これをどのように行うべきかについての手がかりはありますか?
ビットコードファイルをライブラリとリンクした後、リンクされたビットコードに対して内部化パスを実行しますか?internalizeパスは、(を除くmain()
)すべての関数を静的にし、オプティマイザー/コードジェネレーターに、一部の(存在しない)外部参照に使用できるコピーを保持せずに関数を安全にインライン化できることを通知します。
借用したコードを使用してビットコードファイルとビットコードライブラリを手動でリンクllvm-ld
し、内部化パスを実行しますが、内部化パスを実行するかどうかはわかりllvm-link
ません。