- 27 9月, 2016 1 次提交
-
-
由 aarzilli 提交于
When a deferred function is called directly Next and StepOut should not step into it. Fixes #582
-
- 25 9月, 2016 1 次提交
-
-
由 Alessandro Arzilli 提交于
Allows quoted substrings in build-flags flag. This fixes a build problem on windows where the default build flags must contain a space. Fixes #634 and #638
-
- 22 7月, 2016 1 次提交
-
-
由 dr2chase 提交于
Detect calls that do not target a function's entrypoint (i.e, calls to runtime.duffzero and runtime.duffcopy) and instead step into them directly. StepInto sets a breakpoint past the called function's prologue and expects that continue will hit that breakpoint, but because the call is into the interior of the function (well past the prologue) this fails. Fixes #573
-
- 30 6月, 2016 1 次提交
-
-
由 aarzilli 提交于
This provides a better error message when the user tries to run dlv debug on a directory that does not contain a main package, when `dlv exec` is used with a source file. Additionally the architecture of the executable is checked as suggested by @alexbrainman in #443. Fixes #509
-
- 30 5月, 2016 1 次提交
-
-
由 Alessandro Arzilli 提交于
* tests: update to cope with go1.7 SSA compiler * de-vendored golang.org/x/debug/dwarf We need our own tweaked version * dwarf/debug/dwarf: always use the entry's name attribute Using the name attribute leads to better type names as well as fixes inconsistencies between 1.5, 1.6 and 1.7. * proc: Updated loadInterface to work with go1.7 go1.7 changed the internal representation of types, removing the string field from runtime._type. Updated loadInterface to use the new str field.
-
- 18 5月, 2016 1 次提交
-
-
由 aarzilli 提交于
This issue is fixed by go 1.7, the test will only run on newer versions of the compiler.
-
- 25 4月, 2016 3 次提交
-
-
由 Alessandro Arzilli 提交于
* proc: bugfix: StepInto can not function when temp bps exist * terminal,service: auto-continue during next and step Make dlv call continue automatically when a breakpoint is hit on a different goroutine during a next or step operation. Added API hooks to implement the other solution to this problem (cancel the next/step operation if a different breakpoint is hit). Fixes #387
-
由 Alessandro Arzilli 提交于
If we are unable to correctly guess how a type is serialized in debug_info let the user specify it directly. Workaround for #455
-
由 Alessandro Arzilli 提交于
* service/api: Removed unused fields of service/api.Function * proc/eval: Set return variable name to input expression * all: fine-grained control of loadValue for better variable printing Makes proc.(*Variable).loadValue loading parameters configurable through one extra argument of type LoadConfig. This interface is also exposed through the API so clients can control how much of a variable delve should read.
-
- 22 4月, 2016 1 次提交
-
-
由 Matias Lahti 提交于
* proc: add tests for command-line arguments adds tests to make sure command-line arguments are passed to Launch() properly * proc_windows: pass command-line arguments to CreateProcess() build command-line arguments according to how the standard library does it and pass the command line along to the actual syscall on Windows. see discussion in #479 * proc: better testing of cmd-line arguments * proc_windows: fix a possible error-case with passing just 1 argument previously, the command line pointer passed to sys.CreateProcess was empty, if we had 0 parameters (len(cmd) == 1, as cmd[0] is the executable, so no cmdlineGo would be created, while with any argument it would as len(cmd) > 1). This might cause problems down the road, so make sure we include the command line every time, even if it seems to work without. * proc: improve testing of command-line arguments test that arguments with spaces are passed on correctly and DRY failure/success condition checking in the args test
-
- 09 3月, 2016 1 次提交
-
-
由 aarzilli 提交于
Automatically sets a breakpoint on runtime.startpanic, the function that gets called by runtime.dopanic when a panic is not recovered. Implements #317
-
- 29 2月, 2016 1 次提交
-
-
由 aarzilli 提交于
The go compiler changed and break statements no longer get compiled to nothing when -N is passed: https://go-review.googlesource.com/#/c/19848/ https://go-review.googlesource.com/#/c/19854/
-
- 25 2月, 2016 2 次提交
-
-
由 aarzilli 提交于
Fixes #411
-
由 aarzilli 提交于
proc.(*Process) methods are not thread safe, multiple clients connecting simultaneously to a delve server (Issue #383) or a even a single over-eager client (Issue #408) can easily crash it. Additionally (Issue #419) calls to client.(*RPCClient).Halt can crash the server because they can result in calling the function debug/dwarf.(*Data).Type simultaneously in multiple threads which will cause it to return incompletely parsed dwarf.Type values. Fixes #408, #419 (partial)
-
- 19 2月, 2016 2 次提交
-
-
由 aarzilli 提交于
Moved the code in testvariables2 and testvariables4 into testvariables3, renamed testvariables3 into testvariables2
-
由 aarzilli 提交于
- Unlike FunctionEntryToFirstLine can skip the prologue on functions that are defined on a single line, either because they weren't formatted or because they were autogenerated - Can skip the prologue on most functions when setting a breakpoint with the filename:line syntax Fixes #396
-
- 12 2月, 2016 1 次提交
-
-
由 aarzilli 提交于
Implements #368
-
- 11 2月, 2016 2 次提交
-
-
由 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.
-
由 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
-
- 06 2月, 2016 1 次提交
-
-
由 Luke Hoban 提交于
Fixes #370.
-
- 01 2月, 2016 1 次提交
-
-
由 aarzilli 提交于
Fixes #384
-
- 25 1月, 2016 2 次提交
-
-
由 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
-
由 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
-
- 18 1月, 2016 1 次提交
-
-
由 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).
-
- 16 1月, 2016 1 次提交
-
-
由 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
-
- 10 1月, 2016 2 次提交
-
-
由 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
-
由 aarzilli 提交于
Fixes #341
-
- 09 1月, 2016 2 次提交
-
-
由 aarzilli 提交于
Fixes #262
-
由 aarzilli 提交于
Breakpoints are skipped either because: 1. when multiple breakpoints are hit simultaneously only one is processed 2. a thread hits a breakpoint while another thread is being singlestepped over the breakpoint. Additionally fixed a race condition between Continue and tracee termination.
-
- 27 12月, 2015 1 次提交
-
-
由 aarzilli 提交于
Fixes #325
-
- 19 12月, 2015 1 次提交
-
-
由 aarzilli 提交于
recurseLevel value should not be reset when evaluating the contents of an interface variable Fixes #316
-
- 16 12月, 2015 4 次提交
- 07 11月, 2015 4 次提交
-
-
由 aarzilli 提交于
-
由 aarzilli 提交于
Use m[n:] to skip the first n keys of a map Map indexing is implemented with a linear scan Implements #61, #122
-
由 aarzilli 提交于
Pretty print will print them with the format: chan <element type> <queued elements>/<queue size>
-
由 aarzilli 提交于
TestStacktraceGoroutine would occasionally fail due to race conditions in the test itself
-
- 04 11月, 2015 1 次提交
-
-
由 aarzilli 提交于
Supported operators: - All (binary and unary) operators between basic types except <-, ++ and -- (includes & to take the address of an expression) - Comparison operators between supported compound types - Typecast of integer constants into pointer types - struct members - indexing of arrays, slices and strings - slicing of arrays, slices and strings - pointer dereferencing - true, false and nil constants Implements #116, #117 and #251
-