Commit Graph

5 Commits

Author SHA1 Message Date
Alessandro Arzilli
b9d0ddd82c
proc: only format registers value when it's necessary (#1860)
A significant amount of time is spent generating the string
representation for the proc.Registers object of each thread, since this
field is rarely used (only when the Registers API is called) it should
be generated on demand.

Also by changing the internal representation of proc.Register to be
closer to that of op.DwarfRegister it will help us implement #1838
(when Delve will need to be able to display the registers of an
internal frame, which we currently represent using op.DwarfRegister
objects).

Benchmark before:

BenchmarkConditionalBreakpoints-4   	       1	22292554301 ns/op

Benchmark after:

BenchmarkConditionalBreakpoints-4   	       1	17326345671 ns/op

Reduces conditional breakpoint latency from 2.2ms to 1.7ms.

Updates #1549, #1838
2020-02-12 13:31:48 -08:00
aarzilli
279c29a37c proc: remove CX method from proc.Registers
It is not used anymore besides internally by the proc/gdbserial
backend.
2020-01-28 11:32:53 +01:00
Alessandro Arzilli
14aeea2bd9 proc/gdbserial: do not return floating point regs when not requested (#1497)
Fixes #1493
2019-02-26 08:53:45 -08:00
Derek Parker
4c9a72e486 *: Update import name to github.com/go-delve/delve
The repository is being switched from the personal account
github.com/derekparker/delve to the organization account
github.com/go-delve/delve. This patch updates imports and docs, while
preserving things which should not be changed such as my name in the
CHANGELOG and in TODO comments.
2019-01-04 19:43:13 +01:00
aarzilli
31fff84519 proc: move windows register handling code to winutil package
Move windows register handling code to winutil package in preparation
for using it in proc/core to read minidump files.
2018-11-21 12:17:16 -08:00