mirror of
https://github.com/go-delve/delve.git
synced 2025-10-28 04:35:19 +08:00
* delve now can be built to arm64-arch and running on linux-arm64 OS. * arm64 general-purpose registers have completed. * arm64 disasm has completed. Co-authored-by: tykcd996 <tang.yuke@zte.com.cn> Co-authored-by: hengwu0 <wu.heng@zte.com.cn>
27 lines
696 B
Go
27 lines
696 B
Go
package proc
|
|
|
|
import (
|
|
"github.com/go-delve/delve/pkg/dwarf/frame"
|
|
"github.com/go-delve/delve/pkg/dwarf/op"
|
|
)
|
|
|
|
// Arch defines an interface for representing a
|
|
// CPU architecture.
|
|
type Arch interface {
|
|
PtrSize() int
|
|
MinInstructionLength() int
|
|
BreakpointInstruction() []byte
|
|
BreakpointSize() int
|
|
DerefTLS() bool
|
|
FixFrameUnwindContext(*frame.FrameContext, uint64, *BinaryInfo) *frame.FrameContext
|
|
RegSize(uint64) int
|
|
RegistersToDwarfRegisters(uint64, Registers) op.DwarfRegisters
|
|
AddrAndStackRegsToDwarfRegisters(uint64, uint64, uint64, uint64) op.DwarfRegisters
|
|
}
|
|
|
|
const (
|
|
crosscall2SPOffsetBad = 0x8
|
|
crosscall2SPOffsetWindows = 0x118
|
|
crosscall2SPOffsetNonWindows = 0x58
|
|
)
|