MCPcopy Create free account
hub / github.com/Samsung/UTopia / analyzeLoop

Method analyzeLoop

lib/propanalysis/LoopAnalyzer.cpp:35–51  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

33}
34
35void LoopAnalyzer::analyzeLoop(llvm::Argument &A) {
36 std::set<Value *> VisitedNodes;
37
38 ArgFlow &AF = getOrCreateArgFlow(A);
39
40 // DefUseChanins used as stack,
41 // StackFrame includes the value(Argument/Field) need to tracking,
42 // and ArgFlow for which analysis result will be updated.
43 std::stack<StackFrame> DefUseChains;
44 DefUseChains.emplace(&A, AF);
45
46 while (!DefUseChains.empty()) {
47 auto Frame = DefUseChains.top();
48 DefUseChains.pop();
49 handleStackFrame(Frame, DefUseChains, VisitedNodes);
50 }
51}
52
53void LoopAnalyzer::handleStackFrame(StackFrame &Frame,
54 std::stack<StackFrame> &DefUseChains,

Callers

nothing calls this directly

Calls 2

emptyMethod · 0.80
popMethod · 0.80

Tested by

no test coverage detected