================
@@ -56,10 +56,19 @@ static bool printOp(const DWARFExpression::Operation *Op, 
raw_ostream &OS,
   assert(!Name.empty() && "DW_OP has no name!");
   OS << Name;
 
+  std::optional<unsigned> SubOpcode = Op->getSubCode();
+  if (SubOpcode) {
+    StringRef SubName = SubOperationEncodingString(Op->getCode(), *SubOpcode);
+    assert(!SubName.empty() && "DW_OP SubOp has no name!");
+    OS << ' ' << SubName;
+  }
+
   if ((Op->getCode() >= DW_OP_breg0 && Op->getCode() <= DW_OP_breg31) ||
       (Op->getCode() >= DW_OP_reg0 && Op->getCode() <= DW_OP_reg31) ||
       Op->getCode() == DW_OP_bregx || Op->getCode() == DW_OP_regx ||
-      Op->getCode() == DW_OP_regval_type)
+      Op->getCode() == DW_OP_regval_type ||
+      (SubOpcode && (*SubOpcode == DW_OP_LLVM_call_frame_entry_reg ||
+                     *SubOpcode == DW_OP_LLVM_aspace_bregx)))
----------------
arsenm wrote:

```suggestion
      (SubOpcode == DW_OP_LLVM_call_frame_entry_reg ||
        SubOpcode == DW_OP_LLVM_aspace_bregx))
```

https://github.com/llvm/llvm-project/pull/153883
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to