問題タブ [llvmlite]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
47 参照

python - Python で LLVM IR を解析する方法

Python で LLVM IR を解析し、基本的な型情報を取得する方法はありますか? たとえば、各関数の引数が持つ Type を知りたいです。

llvmliteには、LLVM IR とバイトコードを解析するための基本的な機能があります。ただし、私が知る限り、型情報を提供することはできません。結果のTypeにはいくつかの基本的なメソッドしかなく、 LLVM APIを実装して、たとえば ifisIntegerTyまたはgetIntegerBitWidth(). そのため、llvmlite は引数の数だけを教えてくれます。引数がブール値、整数、浮動小数点のいずれであるかはわかりません。llvmpy はさらに少ないです。

LLVM タイプを教えてくれる Python API はありますか? そうでない場合、これを行うために C 関数を呼び出す簡単な方法はありますか? そうでない場合、Python からこの情報を取得するにはどうすればよいですか?