LLVMモジュールでグローバル変数をインクリメントする方法は?

mdrlol

基本ブロックの最後に命令を追加して、GlobalVariableをインクリメントしたいと思います(LLVM C ++ライブラリを使用)。私はLLVMにかなり慣れていませんが、これを直接行うことはできますか、それともグローバル変数をロードし、目的の値でインクリメントしてグローバル変数に書き戻す必要がありますか?

(LoadInstコンストラクターを使用して)変数をロードした場合でも、「Add」命令は変数がどこにあるかをどのように認識しますか?

たとえば、このIRocdeを見てください。

%cell_index = load i32* %cell_index_ptr
%new_cell_index = add i32 1, %cell_index

add命令は、操作する変数(cell_index)を認識しています。しかし、C ++からロード命令を作成するので、変数がどこに作成されるかわかりません。

Ismail Badawi |

はい、ロード、追加、保存の手順を作成する必要があります。

LLVMのC ++クラス階層では、InstructionサブクラスValueを作成LoadInstするときは、新しい命令を作成するときに直接参照できます例えば:

IRBuilder<> IR(SomeInsertionPoint);
LoadInst *Load = IR.CreateLoad(MyGlobalVariable);
Value *Inc = IR.CreateAdd(IR.getInt32(1), Load);
StoreInst *Store = IR.CreateStore(Inc, MyGlobalVariable);

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

モカテストでグローバル変数(定義、モジュール、ウィンドウ)をモックする方法は?

分類Dev

モジュールスクリプトでグローバル変数を宣言する方法

分類Dev

Bashでローカル変数をインクリメントする方法は?

分類Dev

トークン環境変数をプロバイダーモジュールに渡す方法は?

分類Dev

CSSモジュールでグローバル変数を使用する方法は?

分類Dev

Python:グローバル変数をインクリメントするエレガントな方法

分類Dev

Python-インポートモジュールはグローバル変数を取得します

分類Dev

最初に実行するモジュールから更新されたグローバル変数を必要とする関数を使用するためにセカンダリモジュールをインポートする方法

分類Dev

ノードモジュールをグローバルにインストールする方法は?

分類Dev

TypeScriptで「グローバル」モジュールをインポートする

分類Dev

バッチスクリプトでforループ変数をインクリメントする方法は?

分類Dev

サブプロジェクトでインクリメントできる静的グローバル変数を作成する

分類Dev

LLVM ir他のモジュールをインポートする方法は?

分類Dev

スレッドでグローバル変数をインクリメントする

分類Dev

カスタマーnode.jsバイナリモジュールをグローバルにインストールする方法は?

分類Dev

Elixirモジュールでグローバル変数を作成する方法

分類Dev

モジュールでグローバル変数を宣言する方法

分類Dev

Pythonでforループブロックの外側で変数を「インクリメント」する方法は?

分類Dev

プログラムでグローバル(モジュール)変数を設定する方法は?

分類Dev

リストの変数をPrologプログラミングでグローバル変数にする方法は?

分類Dev

Vuex | モジュールアクションでグローバルミューテーションをコミットする方法は?

分類Dev

Vuex | モジュールアクションでグローバルミューテーションをコミットする方法は?

分類Dev

Vuex | モジュールアクションでグローバルミューテーションをコミットする方法は?

分類Dev

ナンシーモジュール側でメンバー変数またはプロパティを保持する方法は?

分類Dev

角度5でバックグラウンドでモジュールをロードする方法は?

分類Dev

OpenCLでグローバルカウンターをアトミックインクリメントする方法

分類Dev

マルチモジュールプロジェクトでmaven checkstyleプラグインを使用する方法

分類Dev

インポートされたモジュールのグローバルにモジュールを注入することは可能ですか?

分類Dev

モジュールで変数を使用する方法(ログインシステム)

Related 関連記事

  1. 1

    モカテストでグローバル変数(定義、モジュール、ウィンドウ)をモックする方法は?

  2. 2

    モジュールスクリプトでグローバル変数を宣言する方法

  3. 3

    Bashでローカル変数をインクリメントする方法は?

  4. 4

    トークン環境変数をプロバイダーモジュールに渡す方法は?

  5. 5

    CSSモジュールでグローバル変数を使用する方法は?

  6. 6

    Python:グローバル変数をインクリメントするエレガントな方法

  7. 7

    Python-インポートモジュールはグローバル変数を取得します

  8. 8

    最初に実行するモジュールから更新されたグローバル変数を必要とする関数を使用するためにセカンダリモジュールをインポートする方法

  9. 9

    ノードモジュールをグローバルにインストールする方法は?

  10. 10

    TypeScriptで「グローバル」モジュールをインポートする

  11. 11

    バッチスクリプトでforループ変数をインクリメントする方法は?

  12. 12

    サブプロジェクトでインクリメントできる静的グローバル変数を作成する

  13. 13

    LLVM ir他のモジュールをインポートする方法は?

  14. 14

    スレッドでグローバル変数をインクリメントする

  15. 15

    カスタマーnode.jsバイナリモジュールをグローバルにインストールする方法は?

  16. 16

    Elixirモジュールでグローバル変数を作成する方法

  17. 17

    モジュールでグローバル変数を宣言する方法

  18. 18

    Pythonでforループブロックの外側で変数を「インクリメント」する方法は?

  19. 19

    プログラムでグローバル(モジュール)変数を設定する方法は?

  20. 20

    リストの変数をPrologプログラミングでグローバル変数にする方法は?

  21. 21

    Vuex | モジュールアクションでグローバルミューテーションをコミットする方法は?

  22. 22

    Vuex | モジュールアクションでグローバルミューテーションをコミットする方法は?

  23. 23

    Vuex | モジュールアクションでグローバルミューテーションをコミットする方法は?

  24. 24

    ナンシーモジュール側でメンバー変数またはプロパティを保持する方法は?

  25. 25

    角度5でバックグラウンドでモジュールをロードする方法は?

  26. 26

    OpenCLでグローバルカウンターをアトミックインクリメントする方法

  27. 27

    マルチモジュールプロジェクトでmaven checkstyleプラグインを使用する方法

  28. 28

    インポートされたモジュールのグローバルにモジュールを注入することは可能ですか?

  29. 29

    モジュールで変数を使用する方法(ログインシステム)

ホットタグ

アーカイブ