github.com/wfusion/gofusion@v1.1.14/common/utils/inspect/moduledata_go115.go (about) 1 // +build go1.15,!go1.16 2 3 package inspect 4 5 type _func struct { 6 entry uintptr // start pc 7 nameoff int32 // function name 8 args int32 // in/out args size 9 deferreturn uint32 // offset of start of a deferreturn call instruction from entry, if any. 10 pcsp int32 11 pcfile int32 12 pcln int32 13 npcdata int32 14 funcID uint8 // set for certain special runtime functions 15 _ [2]int8 // unused 16 nfuncdata uint8 // must be last 17 argptrs uintptr 18 localptrs uintptr 19 } 20 21 type _funcTab struct { 22 entry uintptr 23 funcoff uintptr 24 } 25 26 type _bitVector struct { 27 n int32 // # of bits 28 bytedata *uint8 29 } 30 31 type _ptabEntry struct { 32 name int32 33 typ int32 34 } 35 36 type _textSection struct { 37 vaddr uintptr // prelinked section vaddr 38 length uintptr // section length 39 baseaddr uintptr // relocated section address 40 } 41 42 type _moduleData struct { 43 pclntable []byte 44 ftab []_funcTab 45 filetab []uint32 46 findfunctab *_findFuncBucket 47 minpc, maxpc uintptr 48 49 text, etext uintptr 50 noptrdata, enoptrdata uintptr 51 data, edata uintptr 52 bss, ebss uintptr 53 noptrbss, enoptrbss uintptr 54 end, gcdata, gcbss uintptr 55 types, etypes uintptr 56 57 textsectmap []_textSection 58 typelinks []int32 // offsets from types 59 itablinks []*itab 60 61 ptab []_ptabEntry 62 63 pluginpath string 64 pkghashes []byte 65 66 modulename string 67 modulehashes []byte 68 69 hasmain uint8 // 1 if module contains the main function, 0 otherwise 70 71 gcdatamask, gcbssmask _bitVector 72 73 typemap map[int32]*rtype // offset to *_rtype in previous module 74 75 bad bool // module failed to load and should be ignored 76 77 next *_moduleData 78 } 79 80 type _findFuncBucket struct { 81 idx uint32 82 subbuckets [16]byte 83 }