Versions in this module Expand all Collapse all v0 v0.31.0 May 5, 2024 v0.30.1 Apr 29, 2024 v0.30.0 Apr 17, 2024 Changes in this version + type SortFunctionsMethod int + const SortFunctionsAverageCalls + const SortFunctionsAverageCycles + const SortFunctionsAverageCyclesPerCall + const SortFunctionsFile + const SortFunctionsFrameCalls + const SortFunctionsFrameCycles + const SortFunctionsFrameCyclesPerCall + const SortFunctionsMaxCalls + const SortFunctionsMaxCycles + const SortFunctionsMaxCyclesPerCall + const SortFunctionsName + type SortLinesMethod int + const SortLinesAverageCycles + const SortLinesFile + const SortLinesFrameCycles + const SortLinesFunction + const SortLinesMaxCycles + const SortLinesNumber + type SortVariablesMethod int + const SortVariablesAddress + const SortVariablesName type SortedVariables + func (e *SortedVariables) Sort(method SortVariablesMethod, descending bool) type SortedVariablesLocal + Variables []*SourceVariableLocal + func (e *SortedVariablesLocal) Sort(method SortVariablesMethod, descending bool) type Source + Cycles profiling.Cycles + ProfilingDirty bool + func (src *Source) ResetProfiling() type SourceFunction + CumulativeCycles profiling.Cycles + Cycles profiling.Cycles + CyclesPerCall profiling.CyclesPerCall + NumCalls profiling.Calls type SourceLine + Cycles profiling.Cycles v0.29.1 Mar 13, 2024 v0.29.0 Feb 25, 2024 v0.28.0 Jan 10, 2024 v0.27.0 Nov 27, 2023 v0.26.2 Nov 1, 2023 v0.26.1 Oct 21, 2023 v0.26.0 Oct 7, 2023 v0.25.0 Sep 13, 2023 Changes in this version + const DriverFunctionName + var UnsupportedDWARF = errors.New("unsupported DWARF") + type AllSourceLines struct + func (a AllSourceLines) Get(i int) *SourceLine + func (a AllSourceLines) Len() int + func (a AllSourceLines) String(i int) string + type Cartridge interface + GetCoProcBus func() coprocessor.CartCoProcBus + type FunctionFilter struct + Function *SourceFunction + FunctionName string + Lines SortedLines + type SortedFunctions struct + Functions []*SourceFunction + func (e *SortedFunctions) SetCumulative(set bool) + func (e *SortedFunctions) SetFocus(focus profiling.Focus) + func (e *SortedFunctions) SortByAverageCycles(descending bool) + func (e *SortedFunctions) SortByFile(descending bool) + func (e *SortedFunctions) SortByFrameCycles(descending bool) + func (e *SortedFunctions) SortByFunction(descending bool) + func (e *SortedFunctions) SortByMaxCycles(descending bool) + func (e *SortedFunctions) UseRawCyclesCounts(use bool) + func (e SortedFunctions) Len() int + func (e SortedFunctions) Less(i int, j int) bool + func (e SortedFunctions) Sort() + func (e SortedFunctions) Swap(i int, j int) + type SortedLines struct + Lines []*SourceLine + func (e *SortedLines) SetKernel(kernel profiling.Focus) + func (e *SortedLines) SortByAverageLoadOverFunction(descending bool) + func (e *SortedLines) SortByAverageLoadOverSource(descending bool) + func (e *SortedLines) SortByFile(descending bool) + func (e *SortedLines) SortByFrameLoadOverFunction(descending bool) + func (e *SortedLines) SortByFrameLoadOverSource(descending bool) + func (e *SortedLines) SortByFunction(descending bool) + func (e *SortedLines) SortByLineAndFunction(descending bool) + func (e *SortedLines) SortByLineNumber(descending bool) + func (e *SortedLines) SortByMaxLoadOverFunction(descending bool) + func (e *SortedLines) SortByMaxLoadOverSource(descending bool) + func (e *SortedLines) UseRawCyclesCounts(use bool) + func (e SortedLines) Len() int + func (e SortedLines) Less(i int, j int) bool + func (e SortedLines) Sort() + func (e SortedLines) Swap(i int, j int) + type SortedVariableMethod int + const SortVariableByAddress + const SortVariableByName + type SortedVariables struct + Descending bool + Method SortedVariableMethod + Variables []*SourceVariable + func (e *SortedVariables) SortByAddress(descending bool) + func (e *SortedVariables) SortByName(descending bool) + func (v SortedVariables) Len() int + func (v SortedVariables) Less(i int, j int) bool + func (v SortedVariables) Swap(i int, j int) + type SortedVariablesLocal struct + Descending bool + Locals []*SourceVariableLocal + Method SortedVariableMethod + func (e *SortedVariablesLocal) SortByAddress(descending bool) + func (e *SortedVariablesLocal) SortByName(descending bool) + func (v SortedVariablesLocal) Len() int + func (v SortedVariablesLocal) Less(i int, j int) bool + func (v SortedVariablesLocal) Swap(i int, j int) + type Source struct + AllLines AllSourceLines + DriverSourceLine *SourceLine + ExecutionProfileChanged bool + Filenames []string + Files map[string]*SourceFile + FilesByShortname map[string]*SourceFile + FunctionFilters []*FunctionFilter + FunctionNames []string + Functions map[string]*SourceFunction + GlobalsByAddress map[uint64]*SourceVariable + HighAddress uint64 + Instructions map[uint64]*SourceInstruction + LinesByAddress map[uint64]*SourceLine + MainFunction *SourceFunction + Optimised bool + ShortFilenames []string + SortedFunctions SortedFunctions + SortedGlobals SortedVariables + SortedLines SortedLines + SortedLocals SortedVariablesLocal + Stats profiling.StatsGroup + func NewSource(romFile string, cart Cartridge, elfFile string) (*Source, error) + func (src *Source) AddFunctionFilter(functionName string) + func (src *Source) DropFunctionFilter(functionName string) + func (src *Source) ExecutionProfile(ln *SourceLine, ct float32, focus profiling.Focus) + func (src *Source) ExecutionProfileCumulative(fn *SourceFunction, ct float32, focus profiling.Focus) + func (src *Source) FindSourceLine(addr uint32) *SourceLine + func (src *Source) FramebaseCurrent(derivation io.Writer) (uint64, error) + func (src *Source) GetLocalVariables(ln *SourceLine, addr uint32) []*SourceVariableLocal + func (src *Source) NewFrame() + func (src *Source) ResetStatistics() + func (src *Source) SourceLineByAddr(addr uint32) *SourceLine + func (src *Source) UpdateGlobalVariables() + type SourceFile struct + Content SourceFileContent + Filename string + HasGlobals bool + ShortFilename string + func (f *SourceFile) IsStub() bool + type SourceFileContent struct + Lines []*SourceLine + MaxLineWidth int + func (s SourceFileContent) Len() int + func (s SourceFileContent) String(i int) string + type SourceFunction struct + CumulativeStats profiling.StatsGroup + DeclLine *SourceLine + FlatStats profiling.StatsGroup + Kernel profiling.Focus + Name string + OptimisedCallStack bool + Range []SourceRange + func (fn *SourceFunction) IsInlined() bool + func (fn *SourceFunction) IsStub() bool + func (fn *SourceFunction) String() string + type SourceInstruction struct + Addr uint32 + Disasm coprocessor.CartCoProcDisasmEntry + Line *SourceLine + func (d *SourceInstruction) Opcode() string + func (d *SourceInstruction) String() string + type SourceLine struct + BreakAddresses []uint32 + Bug bool + File *SourceFile + Fragments []SourceLineFragment + Function *SourceFunction + Inlined bool + Instruction []*SourceInstruction + Kernel profiling.Focus + LineNumber int + PlainContent string + Stats profiling.StatsGroup + func CreateStubLine(stubFn *SourceFunction) *SourceLine + func (ln *SourceLine) IsStub() bool + func (ln *SourceLine) String() string + type SourceLineFragment struct + Content string + Type SourceLineFragmentType + type SourceLineFragmentType int + const FragmentCode + const FragmentComment + const FragmentStringLiteral + type SourceRange struct + End uint64 + Inline bool + Start uint64 + func (r SourceRange) InRange(addr uint64) bool + func (r SourceRange) Size() uint64 + func (r SourceRange) String() string + type SourceType struct + Constant bool + Conversion func(v uint32) (string, any) + ElementCount int + ElementType *SourceType + Members []*SourceVariable + Name string + PointerType *SourceType + Size int + func (typ *SourceType) Bin() string + func (typ *SourceType) Hex() string + func (typ *SourceType) IsArray() bool + func (typ *SourceType) IsComposite() bool + func (typ *SourceType) IsPointer() bool + func (typ *SourceType) Mask() uint32 + func (typ *SourceType) String() string + type SourceVariable struct + DeclLine *SourceLine + Error error + Name string + Type *SourceType + func (varb *SourceVariable) Address() (uint64, bool) + func (varb *SourceVariable) Child(i int) *SourceVariable + func (varb *SourceVariable) IsValid() bool + func (varb *SourceVariable) NumChildren() int + func (varb *SourceVariable) String() string + func (varb *SourceVariable) Update() + func (varb *SourceVariable) Value() uint32 + func (varb *SourceVariable) WriteDerivation(w io.Writer) error + type SourceVariableLocal struct + Range SourceRange