Derek Parker
19e0e50062
Cleanup documentation
2015-06-11 15:34:01 -05:00
Derek Parker
a1d0ced6f9
Insert raw instructions for G addr in TLS
...
* Remove half baked CallFn implementation.
* Cleanup whitespace
* Cleanup read/write mem functions
2015-06-11 15:28:20 -05:00
Derek Parker
49667f2302
Rename thread.Process -> thread.dbp
...
Process is an incorrect name for the DebuggedProcess struct that the
thread is "a part" of. Also, no need to export that field.
2015-05-27 12:16:45 -05:00
Derek Parker
fb55ee9728
Fix: Use return address directly when at end of func
2015-05-11 08:17:19 -05:00
Derek Parker
544f20992f
Refactor parseG function
2015-05-09 10:37:16 -05:00
Derek Parker
c414c72ec9
Return regs from saveRegisters function
2015-05-01 08:34:09 -05:00
Derek Parker
f7632eb5b0
Restore stack after curG function call
2015-04-30 19:52:28 -05:00
Derek Parker
2b5a9155e6
Use Arch struct for arch specific values
2015-04-29 12:07:27 -05:00
Derek Parker
21dca7efeb
Use seperate ID counter for temp breakpoints
2015-04-29 08:17:35 -05:00
Derek Parker
19a98fb49c
clean up error message
2015-04-28 09:03:43 -05:00
Derek Parker
bb48ad52d3
Move generic register structs/funcs to own file
2015-04-28 09:01:28 -05:00
Derek Parker
efd1f391f2
Fix: Darwin single step state setting
2015-04-25 14:53:55 -05:00
Derek Parker
7073e1c7d0
Refactor next and trapWait
2015-04-23 11:39:46 -05:00
Derek Parker
91ebc8d132
Make trapWait method on DebuggedProcess
2015-04-23 10:42:28 -05:00
Derek Parker
6df90f325d
Rename CurrentPC -> PC
2015-04-23 10:40:33 -05:00
Derek Parker
383e9c1c37
Cleanup reassignments
2015-04-23 10:30:27 -05:00
Derek Parker
b86f227ab6
Further improve documentation
2015-04-22 20:01:25 -05:00
Derek Parker
48d0703b4f
Improve 'next' impl for non-go next'ing
2015-04-20 13:03:22 -05:00
Derek Parker
58db8322ef
Improve chan / goroutine coordination
...
* Properly find next source line for goroutines blocked in chanrecv
* Refactor breakpoint clearing
* Refactor temp breakpoint setting
2015-04-19 17:15:34 -05:00
Derek Parker
e5a4a5ae9b
Set CurrentBreakpoint on DebuggedProcess
2015-04-09 10:01:58 -05:00
Derek Parker
117d945897
Use curpc for ret offset
2015-04-03 11:55:58 -05:00
Derek Parker
1d99e03f83
Reduce exported members of DebuggedProcess struct
2015-04-03 11:10:35 -05:00
Derek Parker
e4426fa51f
Return breakpoint directly from trapWait
2015-04-03 10:47:27 -05:00
Derek Parker
86e1530524
Improve next
implementation
...
* Better tracking of current goroutine
* More efficient, eliminates superfluous step syscalls
* Handles concurrency and thread coordination better
2015-03-31 17:12:45 -05:00
Derek Parker
9f70f43f5c
Update thread printing, now denotes current thread
...
Also refactored code a bit, removed printing functions from proctl
package and inlined them into command.
2015-03-11 18:08:20 -05:00
Ivar Gaitan
8b04d877a0
Handle process natural death a bit better
2015-03-06 17:03:08 -06:00
Derek Parker
0b3cf1cd15
Add command to print active breakpoints
2015-03-06 08:53:54 -06:00
Derek Parker
0ba45f8487
Cleanup
2015-02-28 21:14:22 -06:00
Derek Parker
2d2d70641e
(Mostly) working on OS X
2015-02-27 15:03:06 -06:00
Derek Parker
daf5030023
slight cleanup
2015-02-17 12:27:47 -05:00
Derek Parker
aa8ad88965
Improve documentation
2015-02-02 16:09:56 -05:00
Paul Sbarra
58de1f7c85
migrate to go.sys subrepository
...
As of go version 1.4 the standard library syscall package is "locked
down" and code outside of the standard library is recommended to migrate
to the go.sys subrepository.
Reference: https://golang.org/s/go1.4-syscall
2015-01-25 22:43:47 -06:00
Derek Parker
fbbe9aaa5e
Implement usage of hardware breakpoints
...
Currently only works for amd64 processors.
2015-01-12 21:56:25 -06:00
Derek Parker
c0ae1ee1c6
Remove erroneous fmt.Println calls
2015-01-10 14:33:49 -06:00
Derek Parker
bc39ddfbbc
Handle SIGINT
...
Handle SIGINT by stopping the traced program and then displaying a
prompt to the user for commands. If the traced process is not running,
this is a noop.
Closes #30
2015-01-09 16:24:33 -06:00
epipho
709347512c
Breakpoints now have ids. Consolidated location lookup logic
2015-01-01 08:23:55 -05:00
Derek Parker
9e8ac82104
Minor refactoring / code cleanup
2014-12-28 20:48:58 -06:00
Derek Parker
e0738c417c
Remove helper file & further isolate linux code
2014-12-09 10:51:17 -06:00
Derek Parker
e784e5d56d
Isolate linux specific memory reading in threads file
2014-12-08 17:56:02 -06:00
Derek Parker
e299dfde08
Isolate linux specific register getters / setters
2014-12-08 17:54:34 -06:00
Derek Parker
64e01bfed1
Begin thread code isolation
2014-12-08 17:40:59 -06:00