1. 11 2月, 2016 2 次提交
    • A
      proc: bugs setting next breakpoints · b370e20c
      aarzilli 提交于
      1. A running goroutine is by definition not parked waiting for a
      chan recv
      2. The FDE end address is intended to be exclusive, the code
      interpreted as inclusive and sometimes ended up setting a breakpoint
      on a function other than the current one.
      b370e20c
    • A
      proc: Bug loading maps · 51e87386
      aarzilli 提交于
      Past the maximum recursion depth maps shouldn't be loaded at all,
      adding map children and not loading them breaks assumptions in
      the prettyprinter.
      
      Fixes #406
      51e87386
  2. 10 2月, 2016 1 次提交
  3. 09 2月, 2016 1 次提交
  4. 06 2月, 2016 2 次提交
  5. 04 2月, 2016 1 次提交
  6. 02 2月, 2016 1 次提交
  7. 01 2月, 2016 4 次提交
  8. 31 1月, 2016 2 次提交
  9. 30 1月, 2016 2 次提交
  10. 29 1月, 2016 1 次提交
  11. 27 1月, 2016 6 次提交
  12. 25 1月, 2016 6 次提交
    • D
      proc: step now goes to next line, including funcs · 1bda5861
      Derek Parker 提交于
      This patch modifies the `step` command to step to the next source line,
      stepping into any function encountered along the way.
      
      Fixes #360
      1bda5861
    • A
      proc: replace debug/dwarf with golang.org/x/debug/dwarf · 54f1c9b3
      aarzilli 提交于
      Typedefs that resolve to slices are not recorded in DWARF as typedefs
      but instead as structs in a way that there is no way to know they
      are really slices using debug/dwarf.
      Using golang.org/x/debug/dwarf instead this problem is solved and
      as a bonus some types are printed with a nicer names: (struct string
      → string, struct []int → []int, etc)
      
       Fixes #356 and #293
      54f1c9b3
    • A
      dwarf/frame: detecting dwarf section endianness · b1640238
      aarzilli 提交于
      b1640238
    • V
      terminal/command: Fixed 'test' command on Windows · 1bfae45b
      Vorn Mom 提交于
      This change addresses a Windows-specifc issue with the 'test' command. On
      Windows, 'go test' generate executables with a '.exe' filename extention,
      but the current implementation attaches to a filename without the
      extention.
      1bfae45b
    • A
      go fmt · 91743d94
      aarzilli 提交于
      91743d94
    • D
      proc: refactor parseg · afe77160
      Derek Parker 提交于
      Instead of doing a bunch of manual DWARF / memory parsing we instead can
      just dogfood the internal Variable API to retrieve the G struct.
      afe77160
  13. 24 1月, 2016 4 次提交
  14. 21 1月, 2016 2 次提交
    • L
      Add support for Windows. · bddb712a
      Luke Hoban 提交于
      Fixes #198.
      bddb712a
    • D
      proc: Single step only "current" thread · 98ae6840
      Derek Parker 提交于
      Instead of the `step` command single stepping every thread, instead only
      step the "current" thread. This fixes a few issues surrounding single
      stepping, and simplifies the logic. The original concerns around only
      stepping a single thread (with regard to coordination) are invalid and
      generally non-issues.
      98ae6840
  15. 19 1月, 2016 1 次提交
  16. 18 1月, 2016 1 次提交
    • A
      service/locations: hooked expression evaluator to location specifiers · 70cbbdc0
      aarzilli 提交于
      Location specifiers starting with '*' can be followed by any
      expression supported by the evaluator.
      The expression should evaluate to either an integer (which will be
      interpreted as an address) or to a function pointer (which will be
      dereferenced to get the function's entry point).
      70cbbdc0
  17. 16 1月, 2016 1 次提交
    • A
      proc: bugfix: clearing temp breakpoints · 453bd021
      aarzilli 提交于
      Temp breakpoints should be cleared even if a non-temp breakpoint is
      triggered on the same goroutine that the temp breakpoints are set on.
      
      Fixes #305
      453bd021
  18. 10 1月, 2016 2 次提交
    • A
      proc/variables: prefetch of target process memory · b839eda2
      aarzilli 提交于
      Prefetch the entire memory of structs and arrays and cache it instead
      of issuing readMemory calls only when we get down to primitive types.
      This reduces the number of system calls to ptrace that variables makes.
      
      Improves performance in general, greatly improving it in some
      particular cases (involving large structs).
      
      Benchmarks without prefetching:
      	BenchmarkArray-4         	      10	 132189944 ns/op	   0.06 MB/s
      	BenchmarkArrayPointer-4  	       5	 202538503 ns/op	   0.04 MB/s
      	BenchmarkMap-4           	     500	   3804336 ns/op	   0.27 MB/s
      	BenchmarkGoroutinesInfo-4	      10	 126397104 ns/op
      	BenchmarkLocalVariables-4	     500	   2494846 ns/op
      
      Benchmarks with prefetching:
      	BenchmarkArray-4         	     200	  10719087 ns/op	   0.76 MB/s
      	BenchmarkArrayPointer-4  	     100	  11931326 ns/op	   0.73 MB/s
      	BenchmarkMap-4           	    1000	   1466479 ns/op	   0.70 MB/s
      	BenchmarkGoroutinesInfo-4	      10	 103407004 ns/op
      	BenchmarkLocalVariables-4	    1000	   1530395 ns/op
      
      Improvement factors:
      	BenchmarkArray				12.33x
      	BenchmarkArrayPointer		16.97x
      	BenchmarkMap					 2.59x
      	BenchmarkGoroutinesInfo		 1.22x
      	BenchmarkLocalVariables		 1.63x
      b839eda2
    • A
      proc: fix 2 typos · 32a0c752
      aarzilli 提交于
      32a0c752