mirror of
https://github.com/golang/go
synced 2024-11-26 08:17:59 -07:00
cmd/compile/internal/dwarfgen: use src.Pos.Rel{Filename,Line,Col} consistently
It appears that this code predates golang.org/cl/96535, which added RelCol to support /*line*/ directives. Change-Id: Ib79cebc1be53af706e84e8799eeea81ef8c81c8b Reviewed-on: https://go-review.googlesource.com/c/go/+/343430 Trust: Matthew Dempsky <mdempsky@google.com> Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Than McIntosh <thanm@google.com>
This commit is contained in:
parent
687f2acf6a
commit
322879d5c9
@ -214,7 +214,7 @@ func createDwarfVars(fnsym *obj.LSym, complexOK bool, fn *ir.Func, apDecls []*ir
|
|||||||
Type: base.Ctxt.Lookup(typename),
|
Type: base.Ctxt.Lookup(typename),
|
||||||
DeclFile: declpos.RelFilename(),
|
DeclFile: declpos.RelFilename(),
|
||||||
DeclLine: declpos.RelLine(),
|
DeclLine: declpos.RelLine(),
|
||||||
DeclCol: declpos.Col(),
|
DeclCol: declpos.RelCol(),
|
||||||
InlIndex: int32(inlIndex),
|
InlIndex: int32(inlIndex),
|
||||||
ChildIndex: -1,
|
ChildIndex: -1,
|
||||||
})
|
})
|
||||||
@ -371,7 +371,7 @@ func createSimpleVar(fnsym *obj.LSym, n *ir.Name) *dwarf.Var {
|
|||||||
Type: base.Ctxt.Lookup(typename),
|
Type: base.Ctxt.Lookup(typename),
|
||||||
DeclFile: declpos.RelFilename(),
|
DeclFile: declpos.RelFilename(),
|
||||||
DeclLine: declpos.RelLine(),
|
DeclLine: declpos.RelLine(),
|
||||||
DeclCol: declpos.Col(),
|
DeclCol: declpos.RelCol(),
|
||||||
InlIndex: int32(inlIndex),
|
InlIndex: int32(inlIndex),
|
||||||
ChildIndex: -1,
|
ChildIndex: -1,
|
||||||
}
|
}
|
||||||
@ -475,7 +475,7 @@ func createComplexVar(fnsym *obj.LSym, fn *ir.Func, varID ssa.VarID) *dwarf.Var
|
|||||||
StackOffset: ssagen.StackOffset(debug.Slots[debug.VarSlots[varID][0]]),
|
StackOffset: ssagen.StackOffset(debug.Slots[debug.VarSlots[varID][0]]),
|
||||||
DeclFile: declpos.RelFilename(),
|
DeclFile: declpos.RelFilename(),
|
||||||
DeclLine: declpos.RelLine(),
|
DeclLine: declpos.RelLine(),
|
||||||
DeclCol: declpos.Col(),
|
DeclCol: declpos.RelCol(),
|
||||||
InlIndex: int32(inlIndex),
|
InlIndex: int32(inlIndex),
|
||||||
ChildIndex: -1,
|
ChildIndex: -1,
|
||||||
}
|
}
|
||||||
|
@ -244,7 +244,7 @@ func makePreinlineDclMap(fnsym *obj.LSym) map[varPos]int {
|
|||||||
DeclName: unversion(n.Sym().Name),
|
DeclName: unversion(n.Sym().Name),
|
||||||
DeclFile: pos.RelFilename(),
|
DeclFile: pos.RelFilename(),
|
||||||
DeclLine: pos.RelLine(),
|
DeclLine: pos.RelLine(),
|
||||||
DeclCol: pos.Col(),
|
DeclCol: pos.RelCol(),
|
||||||
}
|
}
|
||||||
if _, found := m[vp]; found {
|
if _, found := m[vp]; found {
|
||||||
// We can see collisions (variables with the same name/file/line/col) in obfuscated or machine-generated code -- see issue 44378 for an example. Skip duplicates in such cases, since it is unlikely that a human will be debugging such code.
|
// We can see collisions (variables with the same name/file/line/col) in obfuscated or machine-generated code -- see issue 44378 for an example. Skip duplicates in such cases, since it is unlikely that a human will be debugging such code.
|
||||||
|
Loading…
Reference in New Issue
Block a user