Skip to content

Latest commit

 

History

History

Screenshots and Screencasts

Inspector on a proxy to a CompiledMethod, showing all bytecodes and their sendAndBranchData. Inspector on a proxy to a Morph from the simulated image, showing a screenshot rendered in the host image.
Inspector on a proxy to a <code>CompiledMethod</code>, showing all bytecodes and their <code>sendAndBranchData</code>. Inspector on a proxy to a <code>Morph</code> from the simulated image, showing a screenshot rendered in the host image.

This screencast shows how our proxy inspector can be used to inspect a morph from a simulated VM:

inspector-on-morph-proxy.mp4


Inspector on a proxy to a CompiledMethod, showing the address of the OOP in the simulated VM. Inspector on a proxy to a CompiledMethod, explaining the header format of the OOP in the simulated VM.
Inspector on a proxy to a <code>CompiledMethod</code>, showing the address of the OOP in the simulated VM. Inspector on a proxy to a <code>CompiledMethod</code>, explaining the header format of the OOP in the simulated VM.
Inspector on a proxy to a CompiledMethod, showing its just-in-time generated cog method. Inspector on a generated cog method, showing its disassembled and styled assembler code.
Inspector on a proxy to a <code>CompiledMethod</code>, showing its just-in-time generated cog method. Inspector on a generated cog method, showing its disassembled and styled assembler code.

This screencast shows how Scorch is triggered by a counter trip and how to use our extended inspectors with code artifacts:

benchFib.mp4


Debugger on a proxy to a CompiledMethod, executing its bytecodes in the metacircular interpreter of the host image. Debugger on a proxy to a Context, revealing the call stack of the active process in the simulated VM.
Debugger on a proxy to a <code>CompiledMethod</code>, executing its bytecodes in the metacircular interpreter of the host image. Debugger on a proxy to a <code>Context</code>, revealing the call stack of the active process in the simulated VM.

This screencast shows how we can spawn a debugger on a Context that runs a simulated CompiledMethod and how that can be used to iteratively implement the in-image simulation capabilities for SistaV1 bytecodes:

debugger-on-method-proxy.mp4

This screencast shows how the the debugger idea can be extended to view simulated stack traces (this should currently be done in a read-only fashion, writing to simulated contexts will currently most likely produce errors):

debugger-on-context-proxy.mp4


System browser with a new bytecode assembler mode, allowing to explore and modify single bytecodes of a method. Debugger with a new bytecode assembler mode, allowing to test and debug single bytecodes of a method.
System browser with a new bytecode assembler mode, allowing to explore and modify single bytecodes of a method. Debugger with a new bytecode assembler mode, allowing to test and debug single bytecodes of a method.
Inspector on a CompiledMethod with a new bytecode assembler mode, allowing to explore and modify single bytecodes of a method.  
Inspector on a <code>CompiledMethod</code> with a new bytecode assembler mode, allowing to explore and modify single bytecodes of a method.  

This screencast shows how our new bytecode assembler mode can help with experimenting with (SistaV1) bytecodes:

assembler.mp4


Proof that Oopsie can run the JSON Benchmark from the AWFY Benchmarks in the Simulator, triggering Scorch many times and thus producing optimized JSON parsing methods:

json-benchmark.mp4


Interactive visualization of the first 10,000 objects in the object memory and their classes (see parent readme)
Interactive visualization of the first 10,000 objects in the object memory and their classes (see parent readme)

Browse all screenshots