I extract Def_Use chain by following code in LLVM:
for (Value::use_iterator i = F->use_begin(), e = F->use_end(); i != e; ++i)
if (Instruction *Inst = dyn_cast<Instruction>(*i)) {
errs() << "F is used in instruction:\n";
errs() << *Inst << "\n";
}
Now, I want to distinguish the register name or memory variable that lead to this data dependency.
Thanks
Just determine, which instruction uses your value F and how. E.g. if the Use is load or store instr, then you can check the operand of the instruction to check whether F is used as an address, etc.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With