Skip to content
Tool for displaying IR used by V8 and Dart VM optimizing compilers
JavaScript Dart Assembly HTML CSS
Latest commit 39826c8 Nov 18, 2015 @mraleph Fix code.asm parsing on Windows
- support parsing of addresses printed using %p format: on Windows its
[A-F0-9]{8} and [A-F0-9]{16} rather then 0x[a-f0-9]{8} and 0x[a-f0-9]{16}
printed on Linux and Mac;
- remove line ending normalization, V8 has been correctly opening code trace
files in binary mode since February 2015 - so original line endings should be
correctly retained in the code.asm output. This effectively means that we are
dropping support for compilation artifacts produced by old versions of node on
Windows (which is arguably not a big loss).

README.md

IRHydra is an in-browser tool that can display V8 and Dart VM compilation artifacts (namely intermediate representations and native code) dumped during optimization.

Features

See this and this posts for description of the most important features.

Hosted versions

IRHydra

IRHydra2, requires V8 ≥ 3.24.39.

Running Locally

IRHydra is written in Dart the easiest way to run it is to download full Dart bundle and use Dart Editor.

Detailed information about Dart development can be found in the Dart: Up and Running.

Prerequisites

Dart Editor Workflow

Launch Editor, open IRHydra folder via File > Open Existing Folder, right click web/index.html and select Run in Dartium.

Dartium Workflow

Requires Dart SDK and Dartium.

$ cd irhydra
# Get all dependencies
$ pub get
# Serve root
$ pub serve
$ DART_FLAGS="--checked" dart/chromium/chrome --enable-experimental-webkit-features --enable-devtools-experiments http://localhost:8000/web/index.html

JavaScript Workflow

Requires Dart SDK.

$ cd irhydra
# Get all dependencies
$ pub get
# Serve dart2js compiled IRHydra at http://localhost:8080/
# It will be recompiled when needed.
$ pub serve

or

# Build IRHydra for deployment. Result is in build/
$ pub build
Something went wrong with that request. Please try again.