将LoadInst的结果存储在Int中

时间:2013-08-11 14:44:23

标签: load int llvm instructions

当我们在LLVM IR中创建LoadInst时,结果是指向该值的指针。如果我在LLVM IR中使用int读取名为x的{​​{1}}变量的值,则得到的结果是另一个指向该值的指针。如何将结果存储在LoadInst

1 个答案:

答案 0 :(得分:0)

LLVM IR的变量都不是int类型。但是,从类似C语言的int x变量中读取通常会转换为LLVM IR中的 load 指令,我猜这就是你所要求的。< / p>

答案是创建任何 LLVM指令会为您Value*(或指向Value子类型的指针)。问题是,该值的类型是什么。对于 load 指令,如果其操作数的类型为i32*,则加载本身将为i32类型 - 因此加载确实从指针中获取实际值

如果你想将整数放在其他地址下 - 将其存储在其他地方 - 你应该使用 store 指令。