在克隆函数的上下文中,使用的对象之一是ValueToValueMapTy &VMapa typedefof ValueMap<const Value *, WeakVH>。
例如,它在cloneFunctionInto(...)in期间使用llvm/lib/Transforms/Utils/CloneFunction.cpp
因此,我有一些问题可以帮助我阐明其目的:
llvm::Value每个都在 VMap 上吗?或者这仅属于功能或模块或什么?llvm::Values函数的信息,这是否正确?附:
我已经检查过那些可能对其他人在 Vmap 上提问有帮助的链接,但没有一个能完全回答我的问题。
CloneFunction 中 ValueMap 的用途是记录从源函数中的值到克隆函数中的值的映射。
例子:
Function *F;
Value *V = /* some register in F */;
ValueToValueMapTy VMap;
auto *Clone = CloneFunction(F, VMap);
// V2 represents essentially the same register as V,
// except it's in Clone instead of F
Value *V2 = VMap[V];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1536 次 |
| 最近记录: |