Skip to content

Commit 5aca34d

Browse files
committed
[lldb] Add missing operations to GetOpcodeDataSize
The improved error reporting in #120162 revealed that we were missing opcodes in GetOpcodeDataSize. rdar://139705570
1 parent 8f151f0 commit 5aca34d

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

lldb/source/Expression/DWARFExpression.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -269,6 +269,7 @@ static lldb::offset_t GetOpcodeDataSize(const DataExtractor &data,
269269

270270
// All opcodes that have a single ULEB (signed or unsigned) argument
271271
case DW_OP_addrx: // 0xa1 1 ULEB128 index
272+
case DW_OP_constx: // 0xa2 1 ULEB128 index
272273
case DW_OP_constu: // 0x10 1 ULEB128 constant
273274
case DW_OP_consts: // 0x11 1 SLEB128 constant
274275
case DW_OP_plus_uconst: // 0x23 1 ULEB128 addend
@@ -307,6 +308,8 @@ static lldb::offset_t GetOpcodeDataSize(const DataExtractor &data,
307308
case DW_OP_regx: // 0x90 1 ULEB128 register
308309
case DW_OP_fbreg: // 0x91 1 SLEB128 offset
309310
case DW_OP_piece: // 0x93 1 ULEB128 size of piece addressed
311+
case DW_OP_convert: // 0xa8 1 ULEB128 offset
312+
case DW_OP_reinterpret: // 0xa9 1 ULEB128 offset
310313
case DW_OP_GNU_addr_index: // 0xfb 1 ULEB128 index
311314
case DW_OP_GNU_const_index: // 0xfc 1 ULEB128 index
312315
data.Skip_LEB128(&offset);

0 commit comments

Comments
 (0)