@@ -210,8 +210,7 @@ static lldb::UnwindPlanSP GetAArch64TrapHandlerUnwindPlan(ConstString name) {
210210 if (name != " __kernel_rt_sigreturn" )
211211 return unwind_plan_sp;
212212
213- UnwindPlan::RowSP row = std::make_shared<UnwindPlan::Row>();
214- row->SetOffset (0 );
213+ UnwindPlan::Row row;
215214
216215 // In the signal trampoline frame, sp points to an rt_sigframe[1], which is:
217216 // - 128-byte siginfo struct
@@ -235,48 +234,48 @@ static lldb::UnwindPlanSP GetAArch64TrapHandlerUnwindPlan(ConstString name) {
235234
236235 // Skip fault address
237236 offset += 8 ;
238- row-> GetCFAValue ().SetIsRegisterPlusOffset (arm64_dwarf::sp, offset);
239-
240- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x0, 0 * 8 , false );
241- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x1, 1 * 8 , false );
242- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x2, 2 * 8 , false );
243- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x3, 3 * 8 , false );
244- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x4, 4 * 8 , false );
245- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x5, 5 * 8 , false );
246- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x6, 6 * 8 , false );
247- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x7, 7 * 8 , false );
248- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x8, 8 * 8 , false );
249- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x9, 9 * 8 , false );
250- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x10, 10 * 8 , false );
251- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x11, 11 * 8 , false );
252- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x12, 12 * 8 , false );
253- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x13, 13 * 8 , false );
254- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x14, 14 * 8 , false );
255- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x15, 15 * 8 , false );
256- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x16, 16 * 8 , false );
257- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x17, 17 * 8 , false );
258- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x18, 18 * 8 , false );
259- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x19, 19 * 8 , false );
260- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x20, 20 * 8 , false );
261- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x21, 21 * 8 , false );
262- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x22, 22 * 8 , false );
263- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x23, 23 * 8 , false );
264- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x24, 24 * 8 , false );
265- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x25, 25 * 8 , false );
266- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x26, 26 * 8 , false );
267- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x27, 27 * 8 , false );
268- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x28, 28 * 8 , false );
269- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::fp, 29 * 8 , false );
270- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x30, 30 * 8 , false );
271- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::sp, 31 * 8 , false );
272- row-> SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::pc, 32 * 8 , false );
237+ row. GetCFAValue ().SetIsRegisterPlusOffset (arm64_dwarf::sp, offset);
238+
239+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x0, 0 * 8 , false );
240+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x1, 1 * 8 , false );
241+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x2, 2 * 8 , false );
242+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x3, 3 * 8 , false );
243+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x4, 4 * 8 , false );
244+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x5, 5 * 8 , false );
245+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x6, 6 * 8 , false );
246+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x7, 7 * 8 , false );
247+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x8, 8 * 8 , false );
248+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x9, 9 * 8 , false );
249+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x10, 10 * 8 , false );
250+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x11, 11 * 8 , false );
251+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x12, 12 * 8 , false );
252+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x13, 13 * 8 , false );
253+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x14, 14 * 8 , false );
254+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x15, 15 * 8 , false );
255+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x16, 16 * 8 , false );
256+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x17, 17 * 8 , false );
257+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x18, 18 * 8 , false );
258+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x19, 19 * 8 , false );
259+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x20, 20 * 8 , false );
260+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x21, 21 * 8 , false );
261+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x22, 22 * 8 , false );
262+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x23, 23 * 8 , false );
263+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x24, 24 * 8 , false );
264+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x25, 25 * 8 , false );
265+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x26, 26 * 8 , false );
266+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x27, 27 * 8 , false );
267+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x28, 28 * 8 , false );
268+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::fp, 29 * 8 , false );
269+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::x30, 30 * 8 , false );
270+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::sp, 31 * 8 , false );
271+ row. SetRegisterLocationToAtCFAPlusOffset (arm64_dwarf::pc, 32 * 8 , false );
273272
274273 // The sigcontext may also contain floating point and SVE registers.
275274 // However this would require a dynamic unwind plan so they are not included
276275 // here.
277276
278277 unwind_plan_sp = std::make_shared<UnwindPlan>(eRegisterKindDWARF);
279- unwind_plan_sp->AppendRow (row);
278+ unwind_plan_sp->AppendRow (std::move ( row) );
280279 unwind_plan_sp->SetSourceName (" AArch64 Linux sigcontext" );
281280 unwind_plan_sp->SetSourcedFromCompiler (eLazyBoolYes);
282281 // Because sp is the same throughout the function
0 commit comments