Skip to content

Latest commit

 

History

History
37 lines (31 loc) · 1.43 KB

README.md

File metadata and controls

37 lines (31 loc) · 1.43 KB

qrun

Take AArch64 instructions, execute them, and display the final CPU state right away

$ cargo +nightly-2021-07-27 install --git https://github.com/kawadakk/qrun-rs.git

$ qrun --print-encoding -
mov x0, #1
mov x1, #2
add x2, x0, x1
^D
----- Instruction Encoding -----
default_main:
  0000000010000000: d2800020 mov x0, #0x1
  0000000010000004: d2800041 mov x1, #0x2
  0000000010000008: 8b010002 add x2, x0, x1
  000000001000000c: d65f03c0 ret
  0000000010000010: 00000000 udf #0x0
  [  repeated for 1020 times  ]
----- Final CPU State -----
x0  = 0x00000000000001 x1  = 0x00000000000002 x2  = 0x00000000000003 x3  = 0x00000000000000
x4  = 0x00000000000000 x5  = 0x00000000000000 x6  = 0x00000000000000 x7  = 0x00000000000000
x8  = 0x00000000000000 x9  = 0x00000000000000 x10 = 0x00000000000000 x11 = 0x00000000000000
x12 = 0x00000000000000 x13 = 0x00000000000000 x14 = 0x00000000000000 x15 = 0x00000000000000
x16 = 0x00000000000000 x17 = 0x00000000000000 x18 = 0x00000000000000 x19 = 0x00000000000000
x20 = 0x00000000000000 x21 = 0x00000000000000 x22 = 0x00000000000000 x23 = 0x00000000000000
x24 = 0x00000000000000 x25 = 0x00000000000000 x26 = 0x00000000000000 x27 = 0x00000000000000
x28 = 0x00000000000000 x29 = 0x00000000000000 lr  = 0x000000e0000000 sp  = 0x00000010011000
pc  = 0x000000e0000000

Prerequisites

  • rustup (at compile time and runtime)
  • (On Windows) Visual C++ 2017 Windows XP toolchain