使IR变量编号连续

问题描述:

在向LLVM IR添加新指令后,变量的SSA标记编号不会保持连续。 如:使IR变量编号连续

%mul= 
%mul1= 
%mul2= 

如果我使用

CreateMul(op1,opt2,"mul"); 

则输出变得%MUL之后添加了新的 'MUL' 指令如下:OUTPUT:

%mul= 
%mul3= 
%mul1= 
%mul2= 

有什么办法使编号在IR中连续?

你想让图书馆继续修改之后的所有变量名称您的插入点只是为了使编号连续吗?为什么你需要这个(?) - 恕我直言,这没有多大意义。请记住,编号在语义上毫无意义 - 这只是生成唯一名称的一种简单方法。

如果您坚持,您可以随时复制插入点后面的所有指令,并且将分配新的变量名称。 “重复”我的意思是创建新的指令,这些指令是现有指令的克隆,并将它们重新插入IR而不是现有指令。