Skip to content

[Feature Request] Implement Assembly View/Disassembly View for Debugger #206

Closed

Description

Being able to view assembly and step through assembly instructions would be useful. Especially when debug information isn't available for a certain library. Right now it just displays a message saying unknown source, when it goes into one of these functions. Being able to view values of registers in the GUI some way. Not entirely sure how that would work with VSCode, but being able to the registers all the time and able to modify them such other assembly debuggers.

Activity

  1. agauniyal commented on Sep 8, 2016

    @agauniyal

    @marktrz if you're on Linux, nemiver does it all and is quite a performer. I'm using it as an alternative to vs debugger on linux and so far it performs well. Now only if vscode could implement its features 🎐

  2. jacdavis commented on Sep 8, 2016

    @jacdavis

    Thanks for the feedback. You can view disassembly in vscode using the -exec disassembly command in the debug console. Registers can be viewed the same way (-exec info registers).

  3. Izikiel commented on Oct 12, 2016

    @Izikiel

    I have code in C which calls code in ASM and it would be very useful to debug the ASM code within vs code without calling specific gdb commands which only show part of the source.

  4. hth313 commented on Mar 2, 2017

    @hth313

    A register display would be very useful in situations like this, having it update as you step around.

  5. Izikiel commented on Mar 2, 2017

    @Izikiel

    If I'm not mistaken, since it's been a couple of years since I used it, the sublime gdb plugin for sublime text 2 supported asm debugging, showing registers and everything (https://github.com/quarnster/SublimeGDB). Probably there is a way for it to be done on vs code

  6. yh-sb commented on May 24, 2017

    @yh-sb

    So, could you please add a disassembler viewer in dubug view. It will be so helpful for C/C++ developers.
    It should not take long time to implement this.

    Below placed examples how this view looks like:

    disassembler_1

    disassembler_2

  7. kgfly commented on Jun 13, 2018

    @kgfly

    Please add

    ASM window
    Memory window
    Register window

  8. doingnz commented on Aug 31, 2018

    @doingnz

    I have just spent days looking for alternatives to VSCode because I would like to have assembler, memory and register windows. Reworking a large open source project based on VSCode/CMmake to a new tool is considerable effort. There are many people asking for a memory view for a long time. Please do consider adding such a window. Memory view can execute the GDB x command after each step / trace as it is so last decade to enter that command repeatedly (or up arrow enter). Ideally the window would also highlight values that have changed.

  9. sean-mcmanus commented on Aug 31, 2018

    @sean-mcmanus
    Contributor

    Richard (@doingnz) You could try using Visual Studio 2017 -- they have some remote to Linux ability: https://blogs.msdn.microsoft.com/vcblog/2016/03/30/visual-c-for-linux-development/ .

  10. ci70 commented on Nov 24, 2018

    @ci70

    Please add

    ASM window
    Memory window
    Register window

  11. tehKaiN commented on Nov 24, 2018

    @tehKaiN

    This is probably related to #941

  12. ci70 commented on Dec 9, 2018

    @ci70

    Has this been implemented yet???

  13. nicolo-ribaudo commented on Dec 9, 2018

    @nicolo-ribaudo

    No, but I think that they would happily accept a PR.

  14. 44 remaining items

  15. bobbrow commented on Jul 27, 2021

    @bobbrow
    Contributor

    The first iteration of this feature is now available in VS Code Insiders. Give it a try and let us know what you think.
    microsoft/vscode#124163 (comment)

  16. added
    fixedCheck the Milestone for the release in which the fix is or will be available.
    on Jul 27, 2021
  17. Trass3r commented on Jul 27, 2021

    @Trass3r

    👍🏽

    Note that you'll need the step granularity feature from MIEngine main which has not been released yet.
    The stepping performance will need some improvement, esp. when registers are expanded.
    As will the link between original source and disassembly. I usually pull the disassembly view to the right manually to see both and they both update but when you step into another source file you won't see the code anymore.
    Eventually a mixed view like in VS and objdump is desirable.

  18. Colengms commented on Aug 12, 2021

    @Colengms
    Contributor

    This should be addressed in 1.6.0-insiders.

  19. Trass3r commented on Aug 19, 2021

    @Trass3r

    Yeah indeed it works with the insider version. Even the performance is a bit better.
    Oddly though vscode sends a disassemble request even before you open the disassembly view, quite wasteful.

    One missing feature is syntax highlighting. There are wonderful extensions for this like ASM Code Lens but since this view is not a normal editor there's no chance of them ever working. (It's also a bit weird in general that you can't select the code.)

    Btw Intel syntax can be set via ~/.gdbinit with set disassembly-flavor intel.

  20. ShlomiRex commented on Aug 30, 2021

    @ShlomiRex

    This should be addressed in 1.6.0-insiders.

    Hi, I downloaded insiders 1.6.0 , I'm on mac.
    How can I enable or use this feature?
    I really like the memory view in Visual Studio Community 2019.
    I hoope this feature can reach VS code.

  21. Trass3r commented on Aug 30, 2021

    @Trass3r

    It's in the editor context menu during debugging.

  22. Trass3r commented on Oct 15, 2021

    @Trass3r

    One missing feature is syntax highlighting. There are wonderful extensions for this like ASM Code Lens but since this view is not a normal editor there's no chance of them ever working. (It's also a bit weird in general that you can't select the code.)

    microsoft/vscode#131210
    microsoft/vscode#129762

  23. How-invin commented on Dec 21, 2021

    @How-invin

    it seems that disassembly doesn't work on the gdb which is customized like for mips. .

  24. MatAtBread commented on Jan 15, 2022

    @MatAtBread

    Also no disassembly on esp32-C3 under esf-idf. Memory, code and registers are all visible within gdbgui. I'm running insiders 1.6.4.

    Is there something I need to enable or select to see these viewers (no context menu item, unless I'm being really dumb)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

Feature RequestdebuggerfixedCheck the Milestone for the release in which the fix is or will be available.

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions