[PATCH] D80929: [NFC][LiveDebugvalues] Document how LiveDebugValues operates

Adrian Prantl via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 1 10:46:11 PDT 2020


aprantl accepted this revision.
aprantl added a comment.

Awesome! Couple of nits inside.



================
Comment at: llvm/lib/CodeGen/LiveDebugValues.cpp:11
+/// algorithm. The set of expressions is the set of machine locations
+/// (registers) that a variable might be located in, qualified by a
+/// DIExpression and indirect-ness flag, while each variable is identified
----------------
Doesn't it also support constants and memory locations?

variable -> variable (fragment)


================
Comment at: llvm/lib/CodeGen/LiveDebugValues.cpp:39
+/// We follow an optimisic dataflow approach, with this lattice:
+/// 
+///                    \top "Unknown"
----------------
```
\verbatim
...
\endverbatim
```


================
Comment at: llvm/lib/CodeGen/LiveDebugValues.cpp:46
+///                          v
+///                    \bot False
+/// 
----------------
Do we allow unicode characters (for top / bot) in the sources?


================
Comment at: llvm/lib/CodeGen/LiveDebugValues.cpp:77
+/// dataflow analysis in this pass identifies locations by their index in the
+/// VarLocMap, meaning all the variable locations in a block can be described
+/// by a sparse vector of VarLocMap indexes.
----------------
`\p VarLocMap` might turn this into a link, but I'm not sure.


================
Comment at: llvm/lib/CodeGen/LiveDebugValues.cpp:78
+/// VarLocMap, meaning all the variable locations in a block can be described
+/// by a sparse vector of VarLocMap indexes.
+/// 
----------------
indices?


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D80929/new/

https://reviews.llvm.org/D80929





More information about the llvm-commits mailing list