在LLVM IR中,一个“”。在功能名称后加上一个数字。
例如
@kmalloc.2670,@kmalloc.19
这个数字是什么意思?
通常情况是相同的函数名称后跟不同的数字。。但是,两个函数的定义代码是相同。
有人可以帮助我吗?
define internal i8* @kmalloc.2670(i64 %size, i32 %flags) #5 !dbg !436635
define internal i8* @kmalloc.19(i64 %size, i32 %flags) #5 !dbg !1202009
答案 0 :(得分:0)
这是对的吗? LLVM文档:
关于LLVM的一件好事是名称只是一个提示。对于 例如,如果上面的代码发出多个“ addtmp”变量,则LLVM 会自动为每个人提供一个不断增加的唯一数字 后缀。指令的本地值名称纯粹是可选的,但它是 使得读取IR转储更加容易。