1. 24 7月, 2019 1 次提交
  2. 20 7月, 2019 1 次提交
    • B
      cmd/dlv: add --continue to continue process on launch/attach (#1585) · cb658772
      Brian de Alwis 提交于
      * Add --continue to continue process on launch/attach
      
      * Add small test of --continue
      
      * regenerate usage docs
      
      * minor cleanup
      
      * Use similar approach to `trace` and connect and detach using a client instance
      
      * back out previous attempt
      
      * regen usage doc
      
      * fix up continue test
      
      * fix TestContinue to properly test --continue
      
      * back out unnecessary changes
      
      * update faq
      cb658772
  3. 18 7月, 2019 3 次提交
  4. 17 7月, 2019 2 次提交
  5. 13 7月, 2019 2 次提交
    • R
      *: FreeBSD initial support (#1480) · df65be43
      Robert Ayrapetyan 提交于
      * FreeBSD initial support
      
      * first code review fixes
      
      * regs slice upd
      
      * execPtraceFunc wrap
      
      * disabled concurrency tests
      fixed kill() issue
      
      * disabled concurrency tests
      fixed kill() issue
      
      * cleanup vendor related code
      
      * cleanup ptrace calls
      
      * vendoring latest changes
      
      * Revert "vendoring latest changes"
      
      This reverts commit 833cb87b
      
      * vendoring latest changes
      
      * requested changes
      df65be43
    • Q
      terminal: Add breakpoint autocompletion (#183) (#1612) · 114b76ae
      qingyunha 提交于
      114b76ae
  6. 09 7月, 2019 7 次提交
  7. 04 7月, 2019 1 次提交
  8. 03 7月, 2019 1 次提交
    • A
      terminal: adds embedded scripting language (#1466) · ed35dce7
      Alessandro Arzilli 提交于
      If the argument of 'source' ends in '.star' it will be interpreted as a
      starlark script.
      If the argument of 'source' is '-' an interactive starlark repl will be
      started.
      
      For documentation on how the starlark execution environment works see
      Documentation/cli/starlark.md.
      
      The starlark API is autogenerated from the JSON-RPC API by
      script/gen-starlark-bindings.go.
      In general for each JSON-RPC API a single global starlark function is
      created.
      When one of those functions is called (through a starlark script) the
      arguments are converted to go structs using reflection. See
      unmarshalStarlarkValue in pkg/terminal/starbind/conv.go.
      If there are no type conversion errors the JSON-RPC call is executed.
      The return value of the JSON-RPC call is converted back into a starlark
      value by interfaceToStarlarkValue (same file):
      
      * primitive types (such as integers, floats or strings) are converted
        by creating the corresponding starlark value.
      * compound types (such as structs and slices) are converted by wrapping
        their reflect.Value object into a type that implements the relevant
        starlark interfaces.
      * api.Variables are treated specially so that their Value field can be
        of the proper type instead of always being a string.
      
      Implements #1415, #1443
      ed35dce7
  9. 02 7月, 2019 2 次提交
  10. 01 7月, 2019 2 次提交
    • A
      proc: allow simultaneous call injection to multiple goroutines (#1591) · dd4fd5dc
      Alessandro Arzilli 提交于
      * proc: allow simultaneous call injection to multiple goroutines
      
      Changes the call injection code so that we can have multiple call
      injections going on at the same time as long as they happen on distinct
      goroutines.
      
      * proc: fix EvalExpressionWithCalls for constant expressions
      
      The lack of address of constant expressions would confuse EvalExpressionWithCalls
      
      Fixes #1577
      dd4fd5dc
    • A
      Go 1.13 support (#1546) · 55eed318
      Alessandro Arzilli 提交于
      * tests: fix tests for Go 1.13
      
      - Go 1.13 doesn't autogenerate init functions anymore, tests that
        expected that now fail and should be skipped.
      - Plugin tests now need -gcflags'all=-N -l' now, we were probably
        getting lucky with -gcflags='-N -l' before.
      
      * proc: allow signed integers as shift counts
      
      Go1.13 allows signed integers to be used as the right hand side of a
      shift operator, change eval to match.
      
      * goversion: update maximum supported version
      
      * travis: force Go to use vendor directory
      
      Travis scripts get confused by "go: downloading" lines, the exact
      reason is not clear. Testing that the vendor directory is up to date is
      a good idea anyway.
      55eed318
  11. 28 6月, 2019 1 次提交
  12. 26 6月, 2019 1 次提交
    • A
      proc,service: remove support for locspec '<fnname>:0' (#1588) · 7afda8db
      Alessandro Arzilli 提交于
      The location specified '<fnname>:0' could be used to set a breakpoint
      on the entry point of the function (as opposed to locspec '<fnname>'
      which sets it after the prologue).
      Setting a breakpoint on an entry point is almost never useful, the way
      this feature was implemented could cause it to be used accidentally and
      there are other ways to accomplish the same task (by setting a
      breakpoint on the PC address directly).
      7afda8db
  13. 24 6月, 2019 1 次提交
    • A
      proc: add LocationCover method to BinaryInfo (#1573) · a7c2d837
      Alessandro Arzilli 提交于
      Also fixes findCompileUnitForOffset which was broken in some edge cases
      (when looking up an offset inside the last child of the compilation
      unit) which don't happen in normal executables (we only look up types, and those
      are always direct childs of compile units).
      a7c2d837
  14. 18 6月, 2019 1 次提交
  15. 16 6月, 2019 1 次提交
    • D
      proc/linutil: Fix register bitmasks · b9bcd979
      Derek Parker 提交于
      The bitmasks for transforming a 64-bit register into it's lower-bit
      counterparts (e.g. RAX -> EAX -> AX -> AH/AL) were incorrect. This patch
      fixes the bitmasks and adds an additional test.
      b9bcd979
  16. 13 6月, 2019 1 次提交
  17. 12 6月, 2019 1 次提交
  18. 05 6月, 2019 1 次提交
  19. 04 6月, 2019 2 次提交
  20. 01 6月, 2019 2 次提交
    • D
      cmd/dlv: Change name for binary dlv auto compiles · b9f7dd50
      Derek Parker 提交于
      Prevent conflicts by choosing a name that is extremely unlikely to
      conflict with any actual package a user may have in their code.
      
      Fixes #580
      b9f7dd50
    • A
      proc: simplify partial unit support (#1565) · 215e13e8
      Alessandro Arzilli 提交于
      Instead of reading partial units as we see them skip them entirely and
      then re-read them when they are imported, directly into the destination
      compile unit.
      
      This avoids a lot of duplicate code in the loadDebugInfoMaps function
      and will simplify implementing logical breakpoints and support for the
      new DW_AT_go_package_name attribute added in Go 1.13.
      215e13e8
  21. 31 5月, 2019 1 次提交
  22. 30 5月, 2019 4 次提交
    • T
      proc: Less confusing error message for requesting break on blank line. (#1556) · 9076056c
      tschundler 提交于
      The current wording is confusing - the file exists and the line exists, so what is the problem? I suspect this ambiguity is behind #1496 and likely others.
      
      Also I updated the style to return values like the rest of the code in the file, which is also more readable (IMO and per https://github.com/golang/go/wiki/CodeReviewComments#named-result-parameters)
      9076056c
    • A
      More Function Calls, parts 2 (#1504) · 60830c2b
      Alessandro Arzilli 提交于
      * proc: support nested function calls
      
      Changes the code in fncall.go to support nested function calls.
      
      This changes delays argument evaluation until after we have used
      the call injection protocol to allocate an argument frame. When
      evaluating the parse tree of an expression we'll initiate each
      function call we find on the way down and then complete the function
      call on the way up.
      
      For example. in:
      
      	f(g(x))
      
      we will:
      
      1. initiate the call injection protocol for f(...)
      2. progress it until the point where we have space for the arguments
         of 'f' (i.e. when we receive the debugCallAXCompleteCall message
         from the target runtime)
      3. inititate the call injection protocol for g(...)
      4. progress it until the point where we have space for the arguments
         of 'g'
      5. copy the value of x into the argument frame of 'g'
      6. finish the call to g(...)
      7. copy the return value of g(x) into the argument frame of 'f'
      8. finish the call to f(...)
      
      Updates #119
      
      * proc: bugfix: closure addr was wrong for non-closure functions
      60830c2b
    • J
      documentation: update idea plugin url (#1562) · 3215dc2d
      Justin Clift 提交于
      3215dc2d
    • J
      proc: trivial typo fix (#1561) · 6f258d91
      Justin Clift 提交于
      6f258d91
  23. 24 5月, 2019 1 次提交