Index: include/llvm/CodeGen/MIRYamlMapping.h =================================================================== --- include/llvm/CodeGen/MIRYamlMapping.h +++ include/llvm/CodeGen/MIRYamlMapping.h @@ -258,11 +258,11 @@ YamlIO.mapOptional("callee-saved-restored", Object.CalleeSavedRestored, true); YamlIO.mapOptional("local-offset", Object.LocalOffset, Optional()); - YamlIO.mapOptional("di-variable", Object.DebugVar, + YamlIO.mapOptional("debug-info-variable", Object.DebugVar, StringValue()); // Don't print it out when it's empty. - YamlIO.mapOptional("di-expression", Object.DebugExpr, + YamlIO.mapOptional("debug-info-expression", Object.DebugExpr, StringValue()); // Don't print it out when it's empty. - YamlIO.mapOptional("di-location", Object.DebugLoc, + YamlIO.mapOptional("debug-info-location", Object.DebugLoc, StringValue()); // Don't print it out when it's empty. } @@ -283,6 +283,9 @@ bool IsAliased = false; StringValue CalleeSavedRegister; bool CalleeSavedRestored = true; + StringValue DebugVar; + StringValue DebugExpr; + StringValue DebugLoc; bool operator==(const FixedMachineStackObject &Other) const { return ID == Other.ID && Type == Other.Type && Offset == Other.Offset && @@ -290,7 +293,9 @@ StackID == Other.StackID && IsImmutable == Other.IsImmutable && IsAliased == Other.IsAliased && CalleeSavedRegister == Other.CalleeSavedRegister && - CalleeSavedRestored == Other.CalleeSavedRestored; + CalleeSavedRestored == Other.CalleeSavedRestored && + DebugVar == Other.DebugVar && DebugExpr == Other.DebugExpr + && DebugLoc == Other.DebugLoc; } }; @@ -321,6 +326,12 @@ StringValue()); // Don't print it out when it's empty. YamlIO.mapOptional("callee-saved-restored", Object.CalleeSavedRestored, true); + YamlIO.mapOptional("debug-info-variable", Object.DebugVar, + StringValue()); // Don't print it out when it's empty. + YamlIO.mapOptional("debug-info-expression", Object.DebugExpr, + StringValue()); // Don't print it out when it's empty. + YamlIO.mapOptional("debug-info-location", Object.DebugLoc, + StringValue()); // Don't print it out when it's empty. } static const bool flow = true; Index: include/llvm/CodeGen/MachineFunction.h =================================================================== --- include/llvm/CodeGen/MachineFunction.h +++ include/llvm/CodeGen/MachineFunction.h @@ -349,11 +349,12 @@ struct VariableDbgInfo { const DILocalVariable *Var; const DIExpression *Expr; - unsigned Slot; + // The Slot can be negative for fixed stack objects. + int Slot; const DILocation *Loc; VariableDbgInfo(const DILocalVariable *Var, const DIExpression *Expr, - unsigned Slot, const DILocation *Loc) + int Slot, const DILocation *Loc) : Var(Var), Expr(Expr), Slot(Slot), Loc(Loc) {} }; using VariableDbgInfoMapTy = SmallVector; @@ -860,7 +861,7 @@ /// Collect information used to emit debugging information of a variable. void setVariableDbgInfo(const DILocalVariable *Var, const DIExpression *Expr, - unsigned Slot, const DILocation *Loc) { + int Slot, const DILocation *Loc) { VariableDbgInfos.emplace_back(Var, Expr, Slot, Loc); } Index: lib/CodeGen/MIRParser/MIRParser.cpp =================================================================== --- lib/CodeGen/MIRParser/MIRParser.cpp +++ lib/CodeGen/MIRParser/MIRParser.cpp @@ -122,8 +122,9 @@ const yaml::StringValue &RegisterSource, bool IsRestored, int FrameIdx); + template bool parseStackObjectsDebugInfo(PerFunctionMIParsingState &PFS, - const yaml::MachineStackObject &Object, + const T &Object, int FrameIdx); bool initializeConstantPool(PerFunctionMIParsingState &PFS, @@ -616,6 +617,8 @@ if (parseCalleeSavedRegister(PFS, CSIInfo, Object.CalleeSavedRegister, Object.CalleeSavedRestored, ObjectIdx)) return true; + if (parseStackObjectsDebugInfo(PFS, Object, ObjectIdx)) + return true; } // Initialize the ordinary frame objects. @@ -700,11 +703,11 @@ return false; } +template bool MIRParserImpl::parseStackObjectsDebugInfo(PerFunctionMIParsingState &PFS, - const yaml::MachineStackObject &Object, int FrameIdx) { + const T &Object, int FrameIdx) { // Debug information can only be attached to stack objects; Fixed stack // objects aren't supported. - assert(FrameIdx >= 0 && "Expected a stack object frame index"); MDNode *Var = nullptr, *Expr = nullptr, *Loc = nullptr; if (parseMDNode(PFS, Var, Object.DebugVar) || parseMDNode(PFS, Expr, Object.DebugExpr) || @@ -719,7 +722,7 @@ typecheckMDNode(DIExpr, Expr, Object.DebugExpr, "DIExpression", *this) || typecheckMDNode(DILoc, Loc, Object.DebugLoc, "DILocation", *this)) return true; - PFS.MF.setVariableDbgInfo(DIVar, DIExpr, unsigned(FrameIdx), DILoc); + PFS.MF.setVariableDbgInfo(DIVar, DIExpr, FrameIdx, DILoc); return false; } Index: lib/CodeGen/MIRPrinter.cpp =================================================================== --- lib/CodeGen/MIRPrinter.cpp +++ lib/CodeGen/MIRPrinter.cpp @@ -256,6 +256,25 @@ OS << printRegClassOrBank(Reg, RegInfo, TRI); } +template +static void +printStackObjectDbgInfo(const MachineFunction::VariableDbgInfo &DebugVar, + T &Object, ModuleSlotTracker &MST) { + { + raw_string_ostream StrOS(Object.DebugVar.Value); + DebugVar.Var->printAsOperand(StrOS, MST); + } + + { + raw_string_ostream StrOS(Object.DebugExpr.Value); + DebugVar.Expr->printAsOperand(StrOS, MST); + } + + { + raw_string_ostream StrOS(Object.DebugLoc.Value); + DebugVar.Loc->printAsOperand(StrOS, MST); + } +} void MIRPrinter::convert(yaml::MachineFunction &MF, const MachineRegisterInfo &RegInfo, @@ -421,19 +440,12 @@ assert(StackObjectInfo != StackObjectOperandMapping.end() && "Invalid stack object index"); const FrameIndexOperand &StackObject = StackObjectInfo->second; - assert(!StackObject.IsFixed && "Expected a non-fixed stack object"); - auto &Object = YMF.StackObjects[StackObject.ID]; - { - raw_string_ostream StrOS(Object.DebugVar.Value); - DebugVar.Var->printAsOperand(StrOS, MST); - } - { - raw_string_ostream StrOS(Object.DebugExpr.Value); - DebugVar.Expr->printAsOperand(StrOS, MST); - } - { - raw_string_ostream StrOS(Object.DebugLoc.Value); - DebugVar.Loc->printAsOperand(StrOS, MST); + if (StackObject.IsFixed) { + auto &Object = YMF.FixedStackObjects[StackObject.ID]; + printStackObjectDbgInfo(DebugVar, Object, MST); + } else { + auto &Object = YMF.StackObjects[StackObject.ID]; + printStackObjectDbgInfo(DebugVar, Object, MST); } } } Index: test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll =================================================================== --- test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll +++ test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll @@ -33,13 +33,13 @@ ; CHECK: stack: ; CHECK-NEXT: - { id: 0, name: ptr1, type: default, offset: 0, size: 8, alignment: 8, ; CHECK-NEXT: stack-id: 0, callee-saved-register: '', callee-saved-restored: true, -; CHECK-NEXT: di-variable: '', di-expression: '', di-location: '' } +; CHECK-NEXT: debug-info-variable: '', debug-info-expression: '', debug-info-location: '' } ; CHECK-NEXT: - { id: 1, name: ptr2, type: default, offset: 0, size: 8, alignment: 1, ; CHECK-NEXT: stack-id: 0, callee-saved-register: '', callee-saved-restored: true, -; CHECK-NEXT: di-variable: '', di-expression: '', di-location: '' } +; CHECK-NEXT: debug-info-variable: '', debug-info-expression: '', debug-info-location: '' } ; CHECK-NEXT: - { id: 2, name: ptr3, type: default, offset: 0, size: 128, alignment: 8, ; CHECK-NEXT: stack-id: 0, callee-saved-register: '', callee-saved-restored: true, -; CHECK-NEXT: di-variable: '', di-expression: '', di-location: '' } +; CHECK-NEXT: debug-info-variable: '', debug-info-expression: '', debug-info-location: '' } ; CHECK-NEXT: - { id: 3, name: ptr4, type: default, offset: 0, size: 1, alignment: 8, ; CHECK: %{{[0-9]+}}:_(p0) = G_FRAME_INDEX %stack.0.ptr1 ; CHECK: %{{[0-9]+}}:_(p0) = G_FRAME_INDEX %stack.1.ptr2 Index: test/CodeGen/AArch64/GlobalISel/debug-insts.ll =================================================================== --- test/CodeGen/AArch64/GlobalISel/debug-insts.ll +++ test/CodeGen/AArch64/GlobalISel/debug-insts.ll @@ -5,7 +5,7 @@ ; CHECK: stack: ; CHECK: - { id: {{.*}}, name: in.addr, type: default, offset: 0, size: {{.*}}, alignment: {{.*}}, ; CHECK-NEXT: callee-saved-register: '', callee-saved-restored: true, -; CHECK-NEXT: di-variable: '!11', di-expression: '!DIExpression()', +; CHECK-NEXT: debug-info-variable: '!11', debug-info-expression: '!DIExpression()', ; CHECK: DBG_VALUE debug-use %0(s32), debug-use $noreg, !11, !DIExpression(), debug-location !12 define void @debug_declare(i32 %in) #0 !dbg !7 { entry: Index: test/CodeGen/AArch64/GlobalISel/fp128-legalize-crash-pr35690.mir =================================================================== --- test/CodeGen/AArch64/GlobalISel/fp128-legalize-crash-pr35690.mir +++ test/CodeGen/AArch64/GlobalISel/fp128-legalize-crash-pr35690.mir @@ -25,7 +25,8 @@ stack: - { id: 0, name: a.addr, type: default, offset: 0, size: 16, alignment: 16, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } body: | bb.1.entry: liveins: $q0 Index: test/CodeGen/AArch64/GlobalISel/select-gv-cmodel-large.mir =================================================================== --- test/CodeGen/AArch64/GlobalISel/select-gv-cmodel-large.mir +++ test/CodeGen/AArch64/GlobalISel/select-gv-cmodel-large.mir @@ -24,7 +24,8 @@ stack: - { id: 0, name: retval, type: default, offset: 0, size: 4, alignment: 4, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } constants: body: | bb.1: Index: test/CodeGen/AArch64/reverse-csr-restore-seq.mir =================================================================== --- test/CodeGen/AArch64/reverse-csr-restore-seq.mir +++ test/CodeGen/AArch64/reverse-csr-restore-seq.mir @@ -46,7 +46,8 @@ stack: - { id : 0, size: 8, alignment: 4, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -4, di-variable: '', di-expression: '', di-location: '' } + local-offset: -4, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } body: | bb.0: Index: test/CodeGen/AMDGPU/memory-legalizer-multiple-mem-operands-atomics.mir =================================================================== --- test/CodeGen/AMDGPU/memory-legalizer-multiple-mem-operands-atomics.mir +++ test/CodeGen/AMDGPU/memory-legalizer-multiple-mem-operands-atomics.mir @@ -103,11 +103,13 @@ isImmutable: false, isAliased: false, callee-saved-register: '' } stack: - { id: 0, name: scratch0, type: default, offset: 4, size: 32768, alignment: 4, - stack-id: 0, callee-saved-register: '', local-offset: 0, di-variable: '', - di-expression: '', di-location: '' } + stack-id: 0, callee-saved-register: '', local-offset: 0, + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 1, name: scratch1, type: default, offset: 32772, size: 32768, alignment: 4, stack-id: 0, callee-saved-register: '', local-offset: 32768, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } constants: body: | bb.0.entry: Index: test/CodeGen/AMDGPU/memory-legalizer-multiple-mem-operands-nontemporal-1.mir =================================================================== --- test/CodeGen/AMDGPU/memory-legalizer-multiple-mem-operands-nontemporal-1.mir +++ test/CodeGen/AMDGPU/memory-legalizer-multiple-mem-operands-nontemporal-1.mir @@ -101,11 +101,13 @@ isImmutable: false, isAliased: false, callee-saved-register: '' } stack: - { id: 0, name: scratch0, type: default, offset: 4, size: 32768, alignment: 4, - stack-id: 0, callee-saved-register: '', local-offset: 0, di-variable: '', - di-expression: '', di-location: '' } + stack-id: 0, callee-saved-register: '', local-offset: 0, + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 1, name: scratch1, type: default, offset: 32772, size: 32768, alignment: 4, stack-id: 0, callee-saved-register: '', local-offset: 32768, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } constants: body: | bb.0.entry: Index: test/CodeGen/AMDGPU/memory-legalizer-multiple-mem-operands-nontemporal-2.mir =================================================================== --- test/CodeGen/AMDGPU/memory-legalizer-multiple-mem-operands-nontemporal-2.mir +++ test/CodeGen/AMDGPU/memory-legalizer-multiple-mem-operands-nontemporal-2.mir @@ -101,11 +101,13 @@ isImmutable: false, isAliased: false, callee-saved-register: '' } stack: - { id: 0, name: scratch0, type: default, offset: 4, size: 32768, alignment: 4, - stack-id: 0, callee-saved-register: '', local-offset: 0, di-variable: '', - di-expression: '', di-location: '' } + stack-id: 0, callee-saved-register: '', local-offset: 0, + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 1, name: scratch1, type: default, offset: 32772, size: 32768, alignment: 4, stack-id: 0, callee-saved-register: '', local-offset: 32768, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } constants: body: | bb.0.entry: Index: test/CodeGen/AMDGPU/sched-crash-dbg-value.mir =================================================================== --- test/CodeGen/AMDGPU/sched-crash-dbg-value.mir +++ test/CodeGen/AMDGPU/sched-crash-dbg-value.mir @@ -188,7 +188,8 @@ stack: - { id: 0, name: tmp5, type: default, offset: 0, size: 128, alignment: 16, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: 0, di-variable: '', di-expression: '', di-location: '' } + local-offset: 0, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } constants: body: | bb.0.bb: Index: test/CodeGen/AMDGPU/twoaddr-mad.mir =================================================================== --- test/CodeGen/AMDGPU/twoaddr-mad.mir +++ test/CodeGen/AMDGPU/twoaddr-mad.mir @@ -179,8 +179,8 @@ - { id: 2, class: vgpr_32 } stack: - { id: 0, name: "", type: default, offset: 0, size: 128, alignment: 8, - callee-saved-register: '', local-offset: 0, di-variable: '', di-expression: '', - di-location: '' } + callee-saved-register: '', local-offset: 0, debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } body: | bb.0: Index: test/CodeGen/AMDGPU/undefined-physreg-sgpr-spill.mir =================================================================== --- test/CodeGen/AMDGPU/undefined-physreg-sgpr-spill.mir +++ test/CodeGen/AMDGPU/undefined-physreg-sgpr-spill.mir @@ -35,7 +35,8 @@ stack: - { id: 0, name: '', type: spill-slot, offset: 0, size: 8, alignment: 4, stack-id: 1, callee-saved-register: '', callee-saved-restored: true, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } constants: body: | bb.0: @@ -98,7 +99,8 @@ stack: - { id: 0, name: '', type: spill-slot, offset: 0, size: 8, alignment: 4, stack-id: 1, callee-saved-register: '', callee-saved-restored: true, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } constants: body: | bb.0: Index: test/CodeGen/AMDGPU/vop-shrink-frame-index.mir =================================================================== --- test/CodeGen/AMDGPU/vop-shrink-frame-index.mir +++ test/CodeGen/AMDGPU/vop-shrink-frame-index.mir @@ -44,8 +44,8 @@ - { id: 2, class: vgpr_32 } stack: - { id: 0, name: alloca, type: default, offset: 0, size: 128, alignment: 8, - callee-saved-register: '', local-offset: 0, di-variable: '', di-expression: '', - di-location: '' } + callee-saved-register: '', local-offset: 0, debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } body: | bb.0: %0 = V_MOV_B32_e32 %stack.0.alloca, implicit $exec @@ -65,8 +65,8 @@ - { id: 2, class: vgpr_32 } stack: - { id: 0, name: alloca, type: default, offset: 0, size: 128, alignment: 8, - callee-saved-register: '', local-offset: 0, di-variable: '', di-expression: '', - di-location: '' } + callee-saved-register: '', local-offset: 0, debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } body: | bb.0: %0 = V_MOV_B32_e32 %stack.0.alloca, implicit $exec @@ -87,8 +87,8 @@ - { id: 2, class: vgpr_32 } stack: - { id: 0, name: alloca, type: default, offset: 0, size: 128, alignment: 8, - callee-saved-register: '', local-offset: 0, di-variable: '', di-expression: '', - di-location: '' } + callee-saved-register: '', local-offset: 0, debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } body: | bb.0: %0 = V_MOV_B32_e32 %stack.0.alloca, implicit $exec @@ -109,8 +109,8 @@ - { id: 2, class: vgpr_32 } stack: - { id: 0, name: alloca, type: default, offset: 0, size: 128, alignment: 8, - callee-saved-register: '', local-offset: 0, di-variable: '', di-expression: '', - di-location: '' } + callee-saved-register: '', local-offset: 0, debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } body: | bb.0: %0 = V_MOV_B32_e32 %stack.0.alloca, implicit $exec @@ -130,8 +130,8 @@ - { id: 2, class: vgpr_32 } stack: - { id: 0, name: alloca, type: default, offset: 0, size: 128, alignment: 8, - callee-saved-register: '', local-offset: 0, di-variable: '', di-expression: '', - di-location: '' } + callee-saved-register: '', local-offset: 0, debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } body: | bb.0: %0 = V_MOV_B32_e32 %stack.0.alloca, implicit $exec @@ -151,8 +151,8 @@ - { id: 2, class: vgpr_32 } stack: - { id: 0, name: alloca, type: default, offset: 0, size: 128, alignment: 8, - callee-saved-register: '', local-offset: 0, di-variable: '', di-expression: '', - di-location: '' } + callee-saved-register: '', local-offset: 0, debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } body: | bb.0: %0 = V_MOV_B32_e32 %stack.0.alloca, implicit $exec Index: test/CodeGen/ARM/fp16-litpool2-arm.mir =================================================================== --- test/CodeGen/ARM/fp16-litpool2-arm.mir +++ test/CodeGen/ARM/fp16-litpool2-arm.mir @@ -67,7 +67,8 @@ stack: - { id: 0, name: res, type: default, offset: -2, size: 2, alignment: 2, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -2, di-variable: '', di-expression: '', di-location: '' } + local-offset: -2, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } constants: - id: 0 value: half 0xH706B Index: test/CodeGen/ARM/fp16-litpool3-arm.mir =================================================================== --- test/CodeGen/ARM/fp16-litpool3-arm.mir +++ test/CodeGen/ARM/fp16-litpool3-arm.mir @@ -68,7 +68,8 @@ stack: - { id: 0, name: res, type: default, offset: -2, size: 2, alignment: 2, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -2, di-variable: '', di-expression: '', di-location: '' } + local-offset: -2, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } constants: - id: 0 value: half 0xH706B Index: test/CodeGen/MIR/AArch64/mirCanonCopyCopyProp.mir =================================================================== --- test/CodeGen/MIR/AArch64/mirCanonCopyCopyProp.mir +++ test/CodeGen/MIR/AArch64/mirCanonCopyCopyProp.mir @@ -6,25 +6,32 @@ stack: - { id: 0, type: default, offset: 0, size: 4, alignment: 4, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -4, di-variable: '', di-expression: '', di-location: '' } + local-offset: -4, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 1, type: default, offset: 0, size: 8, alignment: 8, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -16, di-variable: '', di-expression: '', di-location: '' } + local-offset: -16, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 2, type: default, offset: 0, size: 8, alignment: 8, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -24, di-variable: '', di-expression: '', di-location: '' } + local-offset: -24, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 3, type: default, offset: 0, size: 8, alignment: 8, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -32, di-variable: '', di-expression: '', di-location: '' } + local-offset: -32, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 4, type: default, offset: 0, size: 8, alignment: 8, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -40, di-variable: '', di-expression: '', di-location: '' } + local-offset: -40, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 5, type: default, offset: 0, size: 8, alignment: 8, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -48, di-variable: '', di-expression: '', di-location: '' } + local-offset: -48, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 6, type: default, offset: 0, size: 8, alignment: 8, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -56, di-variable: '', di-expression: '', di-location: '' } + local-offset: -56, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } constants: body: | bb.0: Index: test/CodeGen/MIR/AArch64/mirCanonIdempotent.mir =================================================================== --- test/CodeGen/MIR/AArch64/mirCanonIdempotent.mir +++ test/CodeGen/MIR/AArch64/mirCanonIdempotent.mir @@ -11,25 +11,32 @@ stack: - { id: 0, type: default, offset: 0, size: 4, alignment: 4, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -4, di-variable: '', di-expression: '', di-location: '' } + local-offset: -4, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 1, type: default, offset: 0, size: 8, alignment: 8, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -16, di-variable: '', di-expression: '', di-location: '' } + local-offset: -16, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 2, type: default, offset: 0, size: 8, alignment: 8, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -24, di-variable: '', di-expression: '', di-location: '' } + local-offset: -24, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 3, type: default, offset: 0, size: 8, alignment: 8, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -32, di-variable: '', di-expression: '', di-location: '' } + local-offset: -32, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 4, type: default, offset: 0, size: 8, alignment: 8, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -40, di-variable: '', di-expression: '', di-location: '' } + local-offset: -40, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 5, type: default, offset: 0, size: 8, alignment: 8, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -48, di-variable: '', di-expression: '', di-location: '' } + local-offset: -48, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 6, type: default, offset: 0, size: 8, alignment: 8, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -56, di-variable: '', di-expression: '', di-location: '' } + local-offset: -56, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } constants: body: | bb.0: Index: test/CodeGen/MIR/AArch64/stack-object-local-offset.mir =================================================================== --- test/CodeGen/MIR/AArch64/stack-object-local-offset.mir +++ test/CodeGen/MIR/AArch64/stack-object-local-offset.mir @@ -27,7 +27,8 @@ # CHECK: stack: # CHECK: - { id: 0, name: local_var, type: default, offset: 0, size: 8, alignment: 8, # CHECK-NEXT: stack-id: 0, callee-saved-register: '', callee-saved-restored: true, -# CHECK-NEXT: local-offset: -8, di-variable: '', di-expression: '', di-location: '' } +# CHECK-NEXT: local-offset: -8, debug-info-variable: '', debug-info-expression: '', +# CHECK-NEXT: debug-info-location: '' } stack: - { id: 0,name: local_var,offset: 0,size: 8,alignment: 8, local-offset: -8 } body: | Index: test/CodeGen/MIR/X86/callee-saved-info.mir =================================================================== --- test/CodeGen/MIR/X86/callee-saved-info.mir +++ test/CodeGen/MIR/X86/callee-saved-info.mir @@ -50,7 +50,7 @@ adjustsStack: true hasCalls: true # CHECK: fixedStack: -# CHECK: callee-saved-register: '$rbx', callee-saved-restored: true } +# CHECK: callee-saved-register: '$rbx', callee-saved-restored: true fixedStack: - { id: 0, type: spill-slot, offset: -16, size: 8, alignment: 16, callee-saved-register: '$rbx' } # CHECK: stack: Index: test/CodeGen/MIR/X86/expected-metadata-node-in-stack-object.mir =================================================================== --- test/CodeGen/MIR/X86/expected-metadata-node-in-stack-object.mir +++ test/CodeGen/MIR/X86/expected-metadata-node-in-stack-object.mir @@ -13,8 +13,9 @@ liveins: - { reg: '$edi' } stack: + - { id: 0, name: xa, offset: -12, size: 4, alignment: 4, # CHECK: [[@LINE+1]]:74: expected a metadata node - - { id: 0, name: xa, offset: -12, size: 4, alignment: 4, di-variable: '0' } + debug-info-variable: '0' } body: | bb.0.entry: liveins: $edi Index: test/CodeGen/MIR/X86/fixed-stack-di.mir =================================================================== --- /dev/null +++ test/CodeGen/MIR/X86/fixed-stack-di.mir @@ -0,0 +1,42 @@ +# RUN: llc -mtriple=x86_64-apple-unknown -run-pass none %s -o /dev/null +# Check that we parse the 'debug-info-*' fields for `fixedStack:` entries. + +--- | + + target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" + target triple = "x86_64-apple-unknown" + + declare void @llvm.dbg.declare(metadata, metadata, metadata) #0 + + define hidden void @foo(i32* byval %dstRect) { + entry: + call void @llvm.dbg.declare(metadata i32* %dstRect, metadata !3, metadata !DIExpression()), !dbg !5 + unreachable + } + + attributes #0 = { nounwind readnone speculatable } + + !llvm.dbg.cu = !{!0} + !llvm.module.flags = !{!2} + + !0 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !1) + !1 = !DIFile(filename: "file.cpp", directory: "/dir") + !2 = !{i32 2, !"Debug Info Version", i32 3} + !3 = !DILocalVariable(name: "dstRect", scope: !4) + !4 = distinct !DISubprogram(name: "foo", linkageName: "foo", scope: !0, file: !1, line: 42, unit: !0) + !5 = !DILocation(line: 42, column: 85, scope: !4) + +... +--- +name: foo +alignment: 4 +tracksRegLiveness: true +frameInfo: + maxAlignment: 8 +fixedStack: + - { id: 0, size: 4, alignment: 16, stack-id: 0, debug-info-variable: '!3', debug-info-expression: '!DIExpression()', + debug-info-location: '!5' } +body: | + bb.0.entry: + +... Index: test/CodeGen/MIR/X86/invalid-metadata-node-type.mir =================================================================== --- test/CodeGen/MIR/X86/invalid-metadata-node-type.mir +++ test/CodeGen/MIR/X86/invalid-metadata-node-type.mir @@ -38,9 +38,10 @@ frameInfo: maxAlignment: 16 stack: + - { id: 0, name: y.i, offset: 0, size: 256, alignment: 16, # CHECK: [[@LINE+1]]:75: expected a reference to a 'DILocalVariable' metadata node - - { id: 0, name: y.i, offset: 0, size: 256, alignment: 16, di-variable: '!8', - di-expression: '!7', di-location: '!8' } + debug-info-variable: '!8', debug-info-expression: '!7', + debug-info-location: '!8' } body: | bb.0.entry: successors: %bb.1.for.body Index: test/CodeGen/MIR/X86/spill-slot-fixed-stack-objects.mir =================================================================== --- test/CodeGen/MIR/X86/spill-slot-fixed-stack-objects.mir +++ test/CodeGen/MIR/X86/spill-slot-fixed-stack-objects.mir @@ -20,7 +20,8 @@ maxAlignment: 4 # CHECK: fixedStack: # CHECK-NEXT: - { id: 0, type: spill-slot, offset: 0, size: 4, alignment: 4, stack-id: 0, -# CHECK-NEXT: callee-saved-register: '', callee-saved-restored: true } +# CHECK-NEXT: callee-saved-register: '', callee-saved-restored: true, debug-info-variable: '', +# CHECK-NEXT: debug-info-expression: '', debug-info-location: '' } fixedStack: - { id: 0, type: spill-slot, offset: 0, size: 4, alignment: 4 } stack: Index: test/CodeGen/MIR/X86/stack-object-debug-info.mir =================================================================== --- test/CodeGen/MIR/X86/stack-object-debug-info.mir +++ test/CodeGen/MIR/X86/stack-object-debug-info.mir @@ -52,10 +52,12 @@ # CHECK: stack: # CHECK: - { id: 0, name: y.i, type: default, offset: 0, size: 256, alignment: 16, # CHECK-NEXT: callee-saved-register: '', callee-saved-restored: true, -# CHECK-NEXT: di-variable: '!4', di-expression: '!DIExpression()', di-location: '!10' } +# CHECK-NEXT: debug-info-variable: '!4', debug-info-expression: '!DIExpression()', +# CHECK-NEXT: debug-info-location: '!10' } stack: - - { id: 0, name: y.i, offset: 0, size: 256, alignment: 16, di-variable: '!4', - di-expression: '!DIExpression()', di-location: '!7' } + - { id: 0, name: y.i, offset: 0, size: 256, alignment: 16, + debug-info-variable: '!4', debug-info-expression: '!DIExpression()', + debug-info-location: '!7' } body: | bb.0.entry: successors: %bb.1.for.body Index: test/CodeGen/MIR/X86/stack-objects.mir =================================================================== --- test/CodeGen/MIR/X86/stack-objects.mir +++ test/CodeGen/MIR/X86/stack-objects.mir @@ -23,13 +23,13 @@ # CHECK: stack: # CHECK-NEXT: - { id: 0, name: b, type: default, offset: -12, size: 4, alignment: 4, # CHECK-NEXT: stack-id: 0, callee-saved-register: '', callee-saved-restored: true, -# CHECK-NEXT: di-variable: '', di-expression: '', di-location: '' } +# CHECK-NEXT: debug-info-variable: '', debug-info-expression: '', debug-info-location: '' } # CHECK-NEXT: - { id: 1, name: x, type: default, offset: -24, size: 8, alignment: 8, # CHECK-NEXT: stack-id: 0, callee-saved-register: '', callee-saved-restored: true, -# CHECK-NEXT: di-variable: '', di-expression: '', di-location: '' } +# CHECK-NEXT: debug-info-variable: '', debug-info-expression: '', debug-info-location: '' } # CHECK-NEXT: - { id: 2, name: '', type: spill-slot, offset: -32, size: 4, alignment: 4, # CHECK-NEXT: stack-id: 0, callee-saved-register: '', callee-saved-restored: true, -# CHECK-NEXT: di-variable: '', di-expression: '', di-location: '' } +# CHECK-NEXT: debug-info-variable: '', debug-info-expression: '', debug-info-location: '' } stack: - { id: 0, name: b, offset: -12, size: 4, alignment: 4 } - { id: 1, name: x, offset: -24, size: 8, alignment: 8 } Index: test/CodeGen/MIR/X86/variable-sized-stack-objects.mir =================================================================== --- test/CodeGen/MIR/X86/variable-sized-stack-objects.mir +++ test/CodeGen/MIR/X86/variable-sized-stack-objects.mir @@ -26,10 +26,10 @@ # CHECK: stack: # CHECK-NEXT: - { id: 0, name: '', type: default, offset: -20, size: 4, alignment: 4, # CHECK-NEXT: stack-id: 0, callee-saved-register: '', callee-saved-restored: true, -# CHECK-NEXT: di-variable: '', di-expression: '', di-location: '' } +# CHECK-NEXT: debug-info-variable: '', debug-info-expression: '', debug-info-location: '' } # CHECK-NEXT: - { id: 1, name: '', type: default, offset: -32, size: 8, alignment: 8, # CHECK-NEXT: stack-id: 0, callee-saved-register: '', callee-saved-restored: true, -# CHECK-NEXT: di-variable: '', di-expression: '', di-location: '' } +# CHECK-NEXT: debug-info-variable: '', debug-info-expression: '', debug-info-location: '' } # CHECK-NEXT: - { id: 2, name: y, type: variable-sized, offset: -32, alignment: 1, stack: - { id: 0, offset: -20, size: 4, alignment: 4 } Index: test/CodeGen/Mips/micromips-eva.mir =================================================================== --- test/CodeGen/Mips/micromips-eva.mir +++ test/CodeGen/Mips/micromips-eva.mir @@ -163,7 +163,8 @@ stack: - { id: 0, name: z.addr, type: default, offset: 0, size: 4, alignment: 4, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } constants: body: | bb.0.entry: Index: test/CodeGen/Mips/msa/emergency-spill.mir =================================================================== --- test/CodeGen/Mips/msa/emergency-spill.mir +++ test/CodeGen/Mips/msa/emergency-spill.mir @@ -102,23 +102,32 @@ fixedStack: stack: - { id: 0, name: retval, type: default, offset: 0, size: 16, alignment: 16, - callee-saved-register: '', di-variable: '', di-expression: '', di-location: '' } + callee-saved-register: '', debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } - { id: 1, name: a, type: default, offset: 0, size: 16, alignment: 16, - callee-saved-register: '', di-variable: '', di-expression: '', di-location: '' } + callee-saved-register: '', debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } - { id: 2, name: b, type: default, offset: 0, size: 16, alignment: 16, - callee-saved-register: '', di-variable: '', di-expression: '', di-location: '' } + callee-saved-register: '', debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } - { id: 3, name: a.addr, type: default, offset: 0, size: 16, alignment: 16, - callee-saved-register: '', di-variable: '', di-expression: '', di-location: '' } + callee-saved-register: '', debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } - { id: 4, name: b.addr, type: default, offset: 0, size: 16, alignment: 16, - callee-saved-register: '', di-variable: '', di-expression: '', di-location: '' } + callee-saved-register: '', debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } - { id: 5, name: c.addr, type: default, offset: 0, size: 4, alignment: 4, - callee-saved-register: '', di-variable: '', di-expression: '', di-location: '' } + callee-saved-register: '', debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } - { id: 6, name: g, type: default, offset: 0, size: 8, alignment: 8, - callee-saved-register: '', di-variable: '', di-expression: '', di-location: '' } + callee-saved-register: '', debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } - { id: 7, name: d, type: default, offset: 0, size: 8, alignment: 8, - callee-saved-register: '', di-variable: '', di-expression: '', di-location: '' } + callee-saved-register: '', debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } - { id: 8, name: '', type: default, offset: 0, size: 6400, - alignment: 16, callee-saved-register: '', di-variable: '', di-expression: '', di-location: '' } + alignment: 16, callee-saved-register: '', debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } constants: body: | bb.0.entry: Index: test/CodeGen/PowerPC/convert-rr-to-ri-instrs.mir =================================================================== --- test/CodeGen/PowerPC/convert-rr-to-ri-instrs.mir +++ test/CodeGen/PowerPC/convert-rr-to-ri-instrs.mir @@ -3075,19 +3075,24 @@ stack: - { id: 0, name: '', type: default, offset: 0, size: 16, alignment: 16, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -16, di-variable: '', di-expression: '', di-location: '' } + local-offset: -16, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 1, name: '', type: default, offset: 0, size: 4, alignment: 4, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -20, di-variable: '', di-expression: '', di-location: '' } + local-offset: -20, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 2, name: '', type: default, offset: 0, size: 4, alignment: 4, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -24, di-variable: '', di-expression: '', di-location: '' } + local-offset: -24, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 3, name: '', type: default, offset: 0, size: 4, alignment: 4, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -28, di-variable: '', di-expression: '', di-location: '' } + local-offset: -28, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 4, name: '', type: default, offset: 0, size: 4, alignment: 4, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - local-offset: -32, di-variable: '', di-expression: '', di-location: '' } + local-offset: -32, debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } constants: body: | bb.0.entry: Index: test/CodeGen/X86/GlobalISel/x32-select-frameIndex.mir =================================================================== --- test/CodeGen/X86/GlobalISel/x32-select-frameIndex.mir +++ test/CodeGen/X86/GlobalISel/x32-select-frameIndex.mir @@ -19,7 +19,8 @@ stack: - { id: 0, name: ptr1, type: default, offset: 0, size: 4, alignment: 4, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } body: | bb.1 (%ir-block.0): Index: test/CodeGen/X86/GlobalISel/x86-select-frameIndex.mir =================================================================== --- test/CodeGen/X86/GlobalISel/x86-select-frameIndex.mir +++ test/CodeGen/X86/GlobalISel/x86-select-frameIndex.mir @@ -19,7 +19,8 @@ stack: - { id: 0, name: ptr1, type: default, offset: 0, size: 4, alignment: 4, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } body: | bb.1 (%ir-block.0): Index: test/CodeGen/X86/GlobalISel/x86_64-select-frameIndex.mir =================================================================== --- test/CodeGen/X86/GlobalISel/x86_64-select-frameIndex.mir +++ test/CodeGen/X86/GlobalISel/x86_64-select-frameIndex.mir @@ -19,7 +19,8 @@ stack: - { id: 0, name: ptr1, type: default, offset: 0, size: 4, alignment: 4, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } body: | bb.1 (%ir-block.0): Index: test/CodeGen/X86/fixed-stack-di-mir.ll =================================================================== --- /dev/null +++ test/CodeGen/X86/fixed-stack-di-mir.ll @@ -0,0 +1,32 @@ +; RUN: llc -mtriple=x86_64-apple-unknown -stop-before=expand-isel-pseudos %s -o - -simplify-mir | FileCheck %s +; The byval argument of the function will be allocated a fixed stack slot. Test +; that we serialize the fixed slot correctly. + +target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" +target triple = "x86_64-apple-unknown" + +declare void @llvm.dbg.declare(metadata, metadata, metadata) #0 + +define hidden void @foo(i32* byval %dstRect) { +; CHECK-LABEL: name: foo +entry: + call void @llvm.dbg.declare(metadata i32* %dstRect, metadata !3, metadata !DIExpression()), !dbg !5 +; CHECK: fixedStack: +; CHECK: id: 0 +; CHECK: debug-info-variable: '!3' +; CHECK: debug-info-expression: '!DIExpression()' +; CHECK: debug-info-location: '!5' + unreachable +} + +attributes #0 = { nounwind readnone speculatable } + +!llvm.dbg.cu = !{!0} +!llvm.module.flags = !{!2} + +!0 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !1) +!1 = !DIFile(filename: "file.cpp", directory: "/dir") +!2 = !{i32 2, !"Debug Info Version", i32 3} +!3 = !DILocalVariable(name: "dstRect", scope: !4) +!4 = distinct !DISubprogram(name: "foo", linkageName: "foo", scope: !0, file: !1, line: 42, unit: !0) +!5 = !DILocation(line: 42, column: 85, scope: !4) Index: test/CodeGen/X86/movtopush.mir =================================================================== --- test/CodeGen/X86/movtopush.mir +++ test/CodeGen/X86/movtopush.mir @@ -89,13 +89,16 @@ stack: - { id: 0, name: p, type: default, offset: 0, size: 4, alignment: 4, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 1, name: q, type: default, offset: 0, size: 4, alignment: 4, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 2, name: s, type: default, offset: 0, size: 8, alignment: 8, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } constants: body: | bb.0.entry: Index: test/CodeGen/X86/pr30821.mir =================================================================== --- test/CodeGen/X86/pr30821.mir +++ test/CodeGen/X86/pr30821.mir @@ -47,13 +47,14 @@ stack: - { id: 0, name: alpha, type: default, offset: 0, size: 1, alignment: 1, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', debug-info-location: '' } - { id: 1, name: foxtrot, type: default, offset: 0, size: 16, alignment: 16, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', debug-info-location: '' } - { id: 2, name: india, type: default, offset: 0, size: 16, alignment: 16, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } constants: body: | bb.0.entry: Index: test/DebugInfo/MIR/AArch64/implicit-def-dead-scope.mir =================================================================== --- test/DebugInfo/MIR/AArch64/implicit-def-dead-scope.mir +++ test/DebugInfo/MIR/AArch64/implicit-def-dead-scope.mir @@ -173,14 +173,14 @@ fixedStack: stack: - { id: 0, name: bz, type: default, offset: -32, size: 16, alignment: 8, - callee-saved-register: '', local-offset: -16, di-variable: '', di-expression: '', - di-location: '' } + callee-saved-register: '', local-offset: -16, debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } - { id: 1, name: att, type: default, offset: -48, size: 16, alignment: 8, - callee-saved-register: '', local-offset: -32, di-variable: '', di-expression: '', - di-location: '' } + callee-saved-register: '', local-offset: -32, debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } - { id: 2, name: '', type: spill-slot, offset: -16, size: 8, alignment: 16, - callee-saved-register: '$lr', di-variable: '', di-expression: '', - di-location: '' } + callee-saved-register: '$lr', debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } constants: body: | bb.0.entry: Index: test/DebugInfo/MIR/Mips/last-inst-bundled.mir =================================================================== --- test/DebugInfo/MIR/Mips/last-inst-bundled.mir +++ test/DebugInfo/MIR/Mips/last-inst-bundled.mir @@ -140,13 +140,16 @@ stack: - { id: 0, name: condition, type: default, offset: -12, size: 4, alignment: 4, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 1, name: '', type: spill-slot, offset: -4, size: 4, alignment: 4, stack-id: 0, callee-saved-register: '$ra', callee-saved-restored: true, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 2, name: '', type: spill-slot, offset: -8, size: 4, alignment: 4, stack-id: 0, callee-saved-register: '$s0', callee-saved-restored: true, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } constants: body: | bb.0.entry: Index: test/DebugInfo/MIR/X86/kill-after-spill.mir =================================================================== --- test/DebugInfo/MIR/X86/kill-after-spill.mir +++ test/DebugInfo/MIR/X86/kill-after-spill.mir @@ -246,10 +246,12 @@ stack: - { id: 0, name: '', type: spill-slot, offset: -64, size: 4, alignment: 4, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } - { id: 1, name: '', type: spill-slot, offset: -60, size: 4, alignment: 4, stack-id: 0, callee-saved-register: '', callee-saved-restored: true, - di-variable: '', di-expression: '', di-location: '' } + debug-info-variable: '', debug-info-expression: '', + debug-info-location: '' } constants: body: | bb.0.entry: Index: test/DebugInfo/X86/live-debug-vars-dse.mir =================================================================== --- test/DebugInfo/X86/live-debug-vars-dse.mir +++ test/DebugInfo/X86/live-debug-vars-dse.mir @@ -119,8 +119,8 @@ fixedStack: stack: - { id: 0, name: x.addr, type: default, offset: 0, size: 4, alignment: 4, - stack-id: 0, callee-saved-register: '', di-variable: '', di-expression: '', - di-location: '' } + stack-id: 0, callee-saved-register: '', debug-info-variable: '', + debug-info-expression: '', debug-info-location: '' } constants: body: | bb.0.entry: