新しい命令をLLVM IRに追加した後、変数のSSA表記の番号付けは連続していません。 例えば。:
%mul= %mul1= %mul2=
%mulの後に新しい 'mul'命令を追加すると
CreateMul(op1,opt2,"mul");
出力は次のようになります。OUTPUT:
%mul= %mul3= %mul1= %mul2=
IRに連続番号を付ける方法はありますか?
ライブラリを続けて、番号を連続させるために挿入ポイントの後にすべての変数の名前を変更しますか?なぜあなたはこれを必要としますか? - それはあまり意味がありません。ナンバリングは意味的に意味がないことを覚えておいてください。これは一意の名前を生成する単純な方法です。
あなたが主張すれば、挿入ポイントに続くすべての命令を複製するだけで、新しい変数名が割り当てられます。 「複製」とは、既存のもののクローンである新しい命令を作成し、既存の命令の代わりにIRに挿入することです。