Commit Graph

81 Commits

Author SHA1 Message Date
Derek Parker
099efeeb9d Allow evaluation of function params 2014-10-17 14:14:55 -05:00
Derek Parker
5331dad93d Rename project 2014-10-15 09:28:22 -05:00
Derek Parker
6b80a726af Remove DWARF .debug_line parser / util funcs 2014-10-15 08:31:01 -05:00
Derek Parker
1760022895 Refactor Next implementation 2014-10-14 09:52:16 -05:00
Derek Parker
58c1f54578 Improve Next implementation
Fix bug involving detecting whether or not we have stepped into another
function when we plan on return from the function we are currently in.
2014-10-13 19:04:38 -05:00
Derek Parker
be7f34ee0c Cleanup: Return err directly if cannot set breakpoint 2014-10-13 08:56:42 -05:00
Derek Parker
248766300d Remove silly function 2014-10-13 08:27:25 -05:00
Derek Parker
dc8c9cc2a4 Optimize Next implementation
Once the program detects that we have stepped into another function,
we simply calculate the return address and then set a breakpoint and
continue to that location, avoiding numerous syscalls.
2014-10-13 08:24:59 -05:00
Derek Parker
09e352bdf7 Refactor: Move Cover method to FDE 2014-10-11 00:52:05 -05:00
Derek Parker
dfacf0770d Fix wrong location bug for Next impl 2014-10-10 21:00:07 -05:00
Derek Parker
5da86a3e31 cleanup 2014-10-09 17:15:10 -05:00
Derek Parker
6a71009954 Fix Next impl
Needs some refactoring and some optimization, but fixes several bugs.
2014-10-09 14:19:10 -05:00
Derek Parker
10a1447ae1 Implement support for pointers to structs 2014-10-07 16:22:26 -05:00
Derek Parker
f0e0d0b8fd Implement support for struct evaluation 2014-10-07 14:32:22 -05:00
Derek Parker
c9cbaea291 Optimize Next implementation
Now that I'm using the step strategy, I put in an optimization where if
stepping into another function, simply find the return address, put a
breakpoint there, and then continue.
2014-10-07 13:57:03 -05:00
Derek Parker
2231c0e7f3 Add reminder for "Next" optimization 2014-10-07 10:33:13 -05:00
Derek Parker
6363ce106a Add comments for PC reset code 2014-10-07 07:58:21 -05:00
Derek Parker
5c301dd9b1 Improve 'in current fn' check for Next impl 2014-10-07 07:57:11 -05:00
Derek Parker
2ce7352aa4 Simplify temp breakpoint cleanup 2014-10-04 18:13:20 -05:00
Derek Parker
f8a65c41c5 Improve next impl -- needs refactoring 2014-10-04 00:52:40 -05:00
Derek Parker
a712a86074 cleanup formatting 2014-09-30 08:49:30 -05:00
Derek Parker
fad8104160 Reorganize code a bit 2014-09-25 17:20:09 -05:00
Derek Parker
8ee9525f47 Ensure temp breakpoints are cleared after next 2014-09-18 22:28:21 -05:00
Derek Parker
f1e5a70a4b Update for Go 1.3.1
I decided to vendor all debug/dwarf and debug/elf files so that the
project can be go get-table. All changes that I am waiting to land in Go
1.4 are now captured in /vendor/debug/*.
2014-09-13 12:28:46 -05:00
Derek Parker
26b9878513 Remove superfluous break in Next implementation 2014-09-05 16:16:55 -05:00
Derek Parker
50951ba257 Do not export nextPotentialLocations 2014-09-05 14:52:45 -05:00
Derek Parker
6aec8333eb Move things around because aesthetics 2014-09-05 14:38:43 -05:00
Derek Parker
f5df7ea14d Fix: error should not use nil val 2014-09-05 14:20:12 -05:00
Derek Parker
39569a14ac Refactor Next implementation 2014-09-05 14:19:03 -05:00
Derek Parker
232d3d7446 Prefer "new" for initialization 2014-09-01 10:39:04 -05:00
Derek Parker
a847f4fd9d Don't rely on process.Wait(), instead use syscall 2014-08-27 17:47:04 -05:00
Derek Parker
fe79437656 Organize types / methods a bit 2014-08-15 15:43:14 -05:00
Derek Parker
0e11797f8b Reduce nesting 2014-08-14 18:00:48 -05:00
Derek Parker
54e15f9d06 Don't assume availability of .gosymtab / .gopclntab 2014-08-07 17:57:58 -05:00
Derek Parker
0af47b64ce Use external red/black tree package 2014-08-07 11:03:42 -05:00
Derek Parker
d977810626 Parallelize initial parsing operations 2014-08-06 11:14:23 -05:00
Derek Parker
d676be1810 Use t.StructName for switch param 2014-08-06 09:50:15 -05:00
Derek Parker
c22b6a8aea Remove leftover printf 2014-08-05 19:02:44 -05:00
Derek Parker
c59f19cfb2 Refactor: Implement red/black tree for FDE lookup 2014-08-05 10:54:21 -05:00
Derek Parker
6dd5098a0c Add support for evaluating int slice 2014-08-04 15:41:09 -05:00
Derek Parker
21025b2fc6 Implement basic array evaling 2014-08-04 15:21:35 -05:00
Derek Parker
f8abe30aa7 Read string type from memory 2014-08-04 13:53:15 -05:00
Derek Parker
a22d563252 Refactor: split read* into seperate functions 2014-08-04 13:25:00 -05:00
Derek Parker
2b83a1f3ca Implement reading of float64 value 2014-08-04 13:20:20 -05:00
Derek Parker
3993cfe148 Implement basic int value expressions 2014-08-01 16:34:49 -05:00
Derek Parker
cba9ac206d Enable next to clean up after itself 2014-07-21 18:20:16 -05:00
Derek Parker
f7e36b3c46 Improve documentation of LoadInformation() 2014-07-16 20:16:49 -05:00
Derek Parker
dcb707001b Add line between functions 2014-07-16 20:13:01 -05:00
Derek Parker
f30046921b Remove superfluous documentation 2014-07-16 20:12:10 -05:00
Derek Parker
e8ffa31bd7 Small refactor, only arithmetic once 2014-07-11 15:32:26 -05:00