概要 Rustでx86_64アセンブラを実装しました。JITコンパイラの実装での利用を想定しているため、アセンブリコードを文字列として入力に取るのではなく、 静的に型付けされたRustプログラム上にアセンブリコードを記述できるライブラリ として実装しています。例えばフィボナッチ数を計算するアセンブリコードを以下のように記述し、付属のJITエンジンを用いて実行できます: fn fib_object() -> io::Result<Object> { let mut w = Writer::new(); let fib = w.get_label("fib"); let l1 = w.issue_label(); let l2 = w.issue_label(); w.define(fib, true); w.cmpl(Edi, 1i8)?; w.jle(Short(l2))?; w.movl