goasm-vscode

command module
v0.0.0-...-f529269 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 6, 2025 License: MIT Imports: 45 Imported by: 0

README

Go Assembly Viewer - VSCode Extension

A VSCode extension for viewing Go assembly code directly from your editor. This extension leverages the lensm project to provide a seamless interface for examining Go assembly alongside your source code.

Features

  • View disassembled Go code with corresponding source lines
  • Browse functions with search/filter capability
  • Interactive assembly code viewer
  • Side-by-side view of Go source and assembly code

Requirements

  • Go installed on your system
  • lensm server running (see installation instructions below)

Installation

1. Install the extension

Install this extension from the VS Code Marketplace or using the Extensions view in VS Code.

2. Install and run lensm server

The extension requires the lensm server to be running. To install and run lensm:

# Install lensm
go install github.com/gameformush/goasm-vscode@latest

# Run lensm in server mode
goasm-vscode -server -addr localhost:8080

Usage

  1. Build your Go project with debug information preserved
  2. Run the "Go Assembly: Show Assembly View" command from the Command Palette
  3. Browse and search functions to view their assembly code

Extension Settings

This extension contributes the following settings:

  • goasm.serverUrl: The URL of the lensm server (default: "http://localhost:8080")

Known Issues

  • The lensm server must be running for the extension to work
  • Large binaries may take some time to load

Release Notes

0.0.2

Fix extension file management

0.0.1

Initial release with basic Go assembly viewing capabilities.


Note: This extension is in early development. Feedback and contributions are welcome!

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
internal
go
go/src/archive
Package archive implements reading of archive files generated by the Go toolchain.
Package archive implements reading of archive files generated by the Go toolchain.
go/src/bio
Package bio implements common I/O abstractions used within the Go toolchain.
Package bio implements common I/O abstractions used within the Go toolchain.
go/src/bisect
Package bisect can be used by compilers and other programs to serve as a target for the bisect debugging tool.
Package bisect can be used by compilers and other programs to serve as a target for the bisect debugging tool.
go/src/buildcfg
Package buildcfg provides access to the build configuration described by the current environment.
Package buildcfg provides access to the build configuration described by the current environment.
go/src/disasm
Package disasm provides disassembly routines.
Package disasm provides disassembly routines.
go/src/goarch
package goarch contains GOARCH-specific constants.
package goarch contains GOARCH-specific constants.
go/src/goexperiment
Package goexperiment implements support for toolchain experiments.
Package goexperiment implements support for toolchain experiments.
go/src/objfile
Package objfile implements portable access to OS-specific executable files.
Package objfile implements portable access to OS-specific executable files.
go/src/saferio
Package saferio provides I/O functions that avoid allocating large amounts of memory unnecessarily.
Package saferio provides I/O functions that avoid allocating large amounts of memory unnecessarily.
go/src/unsafeheader
Package unsafeheader contains header declarations for the Go runtime's slice and string implementations.
Package unsafeheader contains header declarations for the Go runtime's slice and string implementations.
go/src/xcoff
Package xcoff implements access to XCOFF (Extended Common Object File Format) files.
Package xcoff implements access to XCOFF (Extended Common Object File Format) files.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL