llvmlite

    1

    1答えて

    LLVM(特にllvmlite)では、グローバル変数を宣言し、任意の(ランタイム)式の結果でその内容を初期化する方法はありますか? GlobalVariableオブジェクトを作成することができますが、そのinitializer引数は、Constantを想定しているようです。その値を決定するためにスタートアップ/ロード時に任意のコードを実行する必要がある場合はどうすればよいですか?そのコードはどこに

    3

    3答えて

    Pythonでコンパイルを書くときに、llvmliteを使用して中間のLLVM IRを生成する。レクサーとパーサーが完成しました。今はコード生成を行っています。コンパイラは動的で弱く型付けされているので、私は実行時に割り当てのような何かをする必要があります。このため、私はすでにC言語でいくつかの関数を実装していますが、今はllvmliteのbuilder.callを使ってこれらの関数を呼び出したい

    0

    1答えて

    自分のプログラムにllvmliteの最適化パスを使用しようとしています。私はパス機能としての私のコードのために次の関数を定義しています def create_pass_manager_builder(opt=3, loop_vectorize=False, slp_vectorize=False): pmb = llvm.create_pass_manager_builder()

    0

    2答えて

    私は以下の16進数の0x00000000004087b8を持っています。これを私のリストに追加できるように、これを0x4087b8に変換する必要があります。誰もが任意のアイデアを持っていますどのように私はこの変換をPythonで行うことができますか?私はあなたが文字列を持っていることを前提とし

    0

    1答えて

    私は関数のアドレスとその "cのような"表現(llvmliteからですが、これはそれほど重要ではありません)を持っています。 2つのdouble値を加算し、コードは次のようになり、それらを返す関数については、 :cfunc = CFUNCTYPE(c_double, c_double, c_double)(func_ptr) 非常にうまく機能するであろう、しかし私の関数の引数はタイプと番号を変える

    0

    1答えて

    llvmliteで生成されたIRからバイナリコードを取得することが可能かどうかは知っていますか? llvmでは、-emit-llvm -o foo.bc -c foo.cを単にclangできます。 llvmliteを使用している場合はどうなりますか?