GoPLS Viewer

Home|gopls/internal/pkgbits/reloc.go
1// Copyright 2021 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5package pkgbits
6
7// A RelocKind indicates a particular section within a unified IR export.
8type RelocKind int32
9
10// An Index represents a bitstream element index within a particular
11// section.
12type Index int32
13
14// A relocEnt (relocation entry) is an entry in an element's local
15// reference table.
16//
17// TODO(mdempsky): Rename this too.
18type RelocEnt struct {
19    Kind RelocKind
20    Idx  Index
21}
22
23// Reserved indices within the meta relocation section.
24const (
25    PublicRootIdx  Index = 0
26    PrivateRootIdx Index = 1
27)
28
29const (
30    RelocString RelocKind = iota
31    RelocMeta
32    RelocPosBase
33    RelocPkg
34    RelocName
35    RelocType
36    RelocObj
37    RelocObjExt
38    RelocObjDict
39    RelocBody
40
41    numRelocs = iota
42)
43
MembersX
numRelocs
PrivateRootIdx
Index
RelocEnt
RelocEnt.Kind
RelocEnt.Idx
PublicRootIdx
RelocString
RelocKind
Members
X