The DW_OP_fbreg opcode references an expression stored in the DW_AT_frame_base attribute of the function, so we need to pass that through to the expression printer, and build it in the unit test.
Details
Diff Detail
Unit Tests
| Time | Test | |
|---|---|---|
| 220 ms | Clang.Analysis::Unknown Unit Message ("") | 
Event Timeline
I don't think I'm in a good position to review most of this code. I've commented on a few things, but somebody else should do the rest.
| llvm/lib/DebugInfo/DWARF/DWARFExpression.cpp | ||
|---|---|---|
| 9 | clang-format the header include list. This is the wrong place for this line. | |
| 430 | Is it possible to hit this assertion if you are using malformed DWARF? | |
| 437 | clang-fomat needed on this new code. | |
| llvm/unittests/DebugInfo/DWARF/DWARFExpressionCompactPrinterTest.cpp | ||
| 59–61 | I'm going to guess that this won't work in a non-ARM build of LLVM... You probably just want to return if this creation fails. | |
| 79 | uint32_t seems like an odd type for a number of things. I'd expect size_t. | |
clang-format: please reformat the code