diff options
| author | Taras Madan <tarasmadan@google.com> | 2025-02-28 11:32:30 +0100 |
|---|---|---|
| committer | Taras Madan <tarasmadan@google.com> | 2025-02-28 11:16:57 +0000 |
| commit | 1e7a43e1953cb209e1a0ae4cf74256c17fbdedbd (patch) | |
| tree | 882f26123836be78f21b0866673f65481f75a792 /pkg | |
| parent | 6a8fcbc4a6172c831c89c507007f59fba13408aa (diff) | |
pkg/cover/backend: fix arch usage
There is no need to init arch every loop iteration.
Diffstat (limited to 'pkg')
| -rw-r--r-- | pkg/cover/backend/dwarf.go | 6 | ||||
| -rw-r--r-- | pkg/cover/backend/dwarf_test.go | 6 |
2 files changed, 5 insertions, 7 deletions
diff --git a/pkg/cover/backend/dwarf.go b/pkg/cover/backend/dwarf.go index a4cfd536f..7fc91413f 100644 --- a/pkg/cover/backend/dwarf.go +++ b/pkg/cover/backend/dwarf.go @@ -49,7 +49,7 @@ type Arch struct { callTarget func(arch *Arch, insn []byte, pc uint64) uint64 } -var arches = map[string]Arch{ +var arches = map[string]*Arch{ targets.AMD64: { scanSize: 1, callLen: 5, @@ -535,9 +535,9 @@ func readCoverPoints(target *targets.Target, info *symbolInfo, data []byte) ([2] } i := 0 + arch := arches[target.Arch] for { - arch := arches[target.Arch] - callTarget, pc := nextCallTarget(&arch, info.textAddr, data, &i) + callTarget, pc := nextCallTarget(arch, info.textAddr, data, &i) if callTarget == 0 { break } diff --git a/pkg/cover/backend/dwarf_test.go b/pkg/cover/backend/dwarf_test.go index d95c1ec01..de5aec485 100644 --- a/pkg/cover/backend/dwarf_test.go +++ b/pkg/cover/backend/dwarf_test.go @@ -146,8 +146,7 @@ func TestNextCallTargetARM64(t *testing.T) { }, } for _, test := range tests { - arch := arches["arm64"] - test.Arch = &arch + test.Arch = arches["arm64"] test.Text = test.ExpPC runNextCallTarget(t, test) } @@ -171,8 +170,7 @@ func TestNextCallTargetAMD64(t *testing.T) { }, } for _, test := range tests { - arch := arches["amd64"] - test.Arch = &arch + test.Arch = arches["amd64"] runNextCallTarget(t, test) } } |
