[PATCH] D73283: Handle complex DWARF expressions in combination with "complex" registers

Djordje Todorovic via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 29 02:43:47 PST 2020


djtodoro added inline comments.


================
Comment at: llvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp:254
+    bool Large = RegSize > CU.getAddressSize();
+    bool First = true;
+    for (auto &Reg : DwarfRegs) {
----------------
dstenb wrote:
> Shouldn't there be a version check so that we don't emit `DW_OP_regval_type` when targeting earlier DWARF standards?
> 
> ```
> if (Large && DwarfVersion < 5)
>   return false;
> ```
> 
> (Should we perhaps consider using the GNU extension, DW_OP_GNU_regval_type, for earlier versions?)
>(Should we perhaps consider using the GNU extension, DW_OP_GNU_regval_type, for earlier versions?)
+1
I don't see any obstacle for that. We can extend the `DwarfCompileUnit::getDwarf5OrGNULocationAtom() `supporting the location atom as well.


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

https://reviews.llvm.org/D73283





More information about the llvm-commits mailing list