rustx86 JIT編

Rust

RustとWASMで作るx86エミュレータ、18日間・226PRの完走記 — ブラウザでLinuxとDOOMが動くまで(ポストモーテム)

Rust製x86エミュレータrustx86を18日間・226本のPRで完結させた。ブラウザで32bit Linuxが起動し、Xが上がり、DOS版DOOMが音付きで遊べるまでの到達点と、13→133 MIPSの最適化戦記、作って捨てたCranelift JIT、検証の多層防御、そして「なぜここで終えるのか」を記録するポストモーテム。
Rust

QEMUの主砲「TB chaining」が不発だった話 — Rust製x86エミュレータJITの真の敵はtick粒度だった【rustx86 JIT編 #2】

Rustでx86エミュレータ rustx86 を書いている。前回(JIT編#1)は、手書きAArch64のテンプレートJITがインタプリタに初めて勝つまでを書いた。ブートは-14%の黒字、しかしgccコンパイル窓には-2%の赤字が残った。今...
Rust

Rust製x86エミュレータに手書きAArch64テンプレートJITを載せて、インタプリタに勝つまで【rustx86 JIT編 #1】

Rustでx86エミュレータ rustx86 を書いている。ブラウザ(WebAssembly)でもネイティブでも同じcoreが動き、実物のLinuxが起動してgccでCコンパイルまでできる。ネットワーク編・ディスク編に続いて、今回からJIT...