JetBrains Rider 2026.1 Help

View JIT and native disassembly

JetBrains Rider allows you to study disassembly of C# methods generated by JIT, ReadyToRun, and NativeAOT compilers.

Install the .NET Disassembler plugin

This functionality relies on the .NET Disassembler plugin, which you need to install and enable.

  1. Press Ctrl+Alt+S to open settings and then select Plugins.

  2. Open the Marketplace tab, find the .NET Disassembler plugin, and click Install (restart the IDE if prompted).

View disassembly for C# code

  1. Open the ASM window: either click the corresponding button on the right toolbar or choose View | Tool Windows | ASM from the menu.

  2. Place the caret on a method, property, constructor, or type declaration. The disassembly will appear in the ASM window.

JetBrains Rider: ASM viewer for .NET JIT and native disassembly

You can use the ASM Viewer to see how source code changes affect the disassembled output, helping you fine-tune low-level execution and performance.

Compare disassembly output

  1. When the first version of your code is open in the editor, set the caret at the necessary symbol (class, method, property) wait for the disassembly view to render, and click Create Snapshot Create Snapshot on the toolbar.

    A snapshot will be created and the diff view will be enabled. Initially, both sides of the diff are the same.

  2. Make the necessary changes to your code and check how the newly disassembled code differs from the original. If necessary, click Force Recompile on the ASM Viewer toolbar.

  3. To finish the comparison session, click Delete Snapshot on the ASM Viewer toolbar. This will delete the original snapshot and restore the normal disassembly view for the current state of your source code.

JetBrains Rider: ASM viewer. Disassembly diff

ASM Viewer settings

To configure the ASM viewer settings, click Settings on the toolbar.

The table below details all available settings. Note that ASM viewer settings are saved individually for each solution you open.

Output

Show Comments

Enables JIT compiler annotations, such as optimization flags, CPU target, PGO statistics, and prolog size.

Diff-Friendly Output

Formats the disassembly to be more stable across runs, making it easier to compare diffs (for example, reducing address noise).

Compilation

Use Tiered Compilation

Enables tiered JIT compilation, in which methods are initially compiled for fast startup and later recompiled with higher optimization levels once they are frequently executed.

Use PGO (Profile-Guided Optimization)

Enables profile-guided optimizations, allowing the JIT to use runtime execution data to generate more optimized native code.

Code Generator

Selects the JIT code generator implementation used to produce disassembled code.

Build

dotnet build

Builds the project using dotnet build before generating disassembly.

Skip Package Restore

Skips NuGet package restore during the build step. Available only for the dotnet build mode.

dotnet publish

Publishes the project using dotnet publish before generating disassembly (typically used for self-contained or optimized outputs).

Target Framework

Specifies the target .NET Framework used for the build and JIT disassembly. The format must be in the TFM standard. For example, net10.0.

Runtime

Run Project

Executes the project so that JIT compilation occurs at runtime before collecting disassembly. Can increase the time to produce disassembly.

Timeout (seconds)

The maximum time allowed for build and/or execution before producing disassembly is aborted. Set to 0 to disable the timeout.

09 February 2026