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
Derek Parker
07fec48272
Further improve next
command
...
* Fixes incorrect loop `next`ing behaviour
* Includes fix for determining return address
2014-07-11 14:52:55 -05:00
Derek Parker
3566fd5237
Improve next
implementation
...
Improvements:
* `next`ing through a loop works correctly (when not already within a loop)
* `next`ing out of a function works correctly
Needs work:
* `next`ing in a loop can be improved when starting within a loop
2014-07-10 18:07:39 -05:00
Derek Parker
a788e03c7b
Implement initial next
implementation
...
This current implementation does not cover the following:
* Setting correct breakpoint when exiting loop
* Setting correct breakpoint when returning from function
* All facilities are available for this, it just is not taken into
account in the current `next` implementation.
2014-07-07 08:26:36 -05:00
Derek Parker
7e8d7c565a
Fix typo
2014-06-26 22:43:30 -05:00
Derek Parker
45b399e596
Restore breakpoint in defer function
2014-05-29 11:18:28 -05:00
Derek Parker
a47d851756
Prefer SetPC
2014-05-29 10:27:03 -05:00
Derek Parker
f570a84539
Inline PtracePokeData
2014-05-29 10:26:42 -05:00
Derek Parker
4fe0978e4b
Fix typo
2014-05-29 10:23:37 -05:00
Derek Parker
fb904cc1aa
Fix bug in stepping after hitting BP
2014-05-29 09:36:48 -05:00
Derek Parker
7dc93a4083
Fix: string formatting bug in Clear()
2014-05-28 17:47:29 -05:00
Derek Parker
f66a2023a8
Use single byte to store INT3
2014-05-28 15:58:12 -05:00
Derek Parker
c3bac38ba1
Pass addr to Break() and Clear()
2014-05-27 18:15:18 -05:00
Derek Parker
3d325da7b0
Prefer delete() builtin
2014-05-27 17:45:51 -05:00