[Lldb-commits] [lldb] [lldb] Add missing operations to GetOpcodeDataSize (PR #120163)
via lldb-commits
lldb-commits at lists.llvm.org
Mon Dec 16 16:00:32 PST 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-lldb
Author: Jonas Devlieghere (JDevlieghere)
<details>
<summary>Changes</summary>
The improved error reporting in #<!-- -->120162 revealed that we were missing opcodes in GetOpcodeDataSize.
rdar://139705570
---
Full diff: https://github.com/llvm/llvm-project/pull/120163.diff
1 Files Affected:
- (modified) lldb/source/Expression/DWARFExpression.cpp (+3)
``````````diff
diff --git a/lldb/source/Expression/DWARFExpression.cpp b/lldb/source/Expression/DWARFExpression.cpp
index a7126b25c1cc38..34d508f97ae012 100644
--- a/lldb/source/Expression/DWARFExpression.cpp
+++ b/lldb/source/Expression/DWARFExpression.cpp
@@ -269,6 +269,7 @@ static lldb::offset_t GetOpcodeDataSize(const DataExtractor &data,
// All opcodes that have a single ULEB (signed or unsigned) argument
case DW_OP_addrx: // 0xa1 1 ULEB128 index
+ case DW_OP_constx: // 0xa2 1 ULEB128 index
case DW_OP_constu: // 0x10 1 ULEB128 constant
case DW_OP_consts: // 0x11 1 SLEB128 constant
case DW_OP_plus_uconst: // 0x23 1 ULEB128 addend
@@ -307,6 +308,8 @@ static lldb::offset_t GetOpcodeDataSize(const DataExtractor &data,
case DW_OP_regx: // 0x90 1 ULEB128 register
case DW_OP_fbreg: // 0x91 1 SLEB128 offset
case DW_OP_piece: // 0x93 1 ULEB128 size of piece addressed
+ case DW_OP_convert: // 0xa8 1 ULEB128 offset
+ case DW_OP_reinterpret: // 0xa9 1 ULEB128 offset
case DW_OP_GNU_addr_index: // 0xfb 1 ULEB128 index
case DW_OP_GNU_const_index: // 0xfc 1 ULEB128 index
data.Skip_LEB128(&offset);
``````````
</details>
https://github.com/llvm/llvm-project/pull/120163
More information about the lldb-commits
mailing list