From d1b4bd4acac9df0e5fcc6097a44bc096fe1e69ac Mon Sep 17 00:00:00 2001 From: Maxime Chevalier-Boisvert Date: Thu, 6 Feb 2025 14:16:46 -0500 Subject: Move RubyOpcode --- zjit/src/ir.rs | 24 +++++++++++++----------- zjit/src/lib.rs | 1 - 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/zjit/src/ir.rs b/zjit/src/ir.rs index 1e6154d520..29f737e65a 100644 --- a/zjit/src/ir.rs +++ b/zjit/src/ir.rs @@ -26,8 +26,10 @@ struct BranchEdge { enum Insn { // SSA block parameter. Also used for function parameters in the function's entry block. Param { idx: usize }, + StringCopy { val: Opnd }, StringIntern { val: Opnd }, + AllocArray { count: usize }, ArraySet { idx: usize, val: Opnd }, @@ -79,17 +81,6 @@ impl Function { } } -enum RubyOpcode { - Putnil, - Putobject(VALUE), - Putstring(VALUE), - Intern, - Setlocal(usize), - Getlocal(usize), - Newarray(usize), - Leave, -} - struct FrameState { // TODO: // Ruby bytecode instruction pointer @@ -131,6 +122,17 @@ impl FrameState { } } +// TODO: get rid of this, currently used for testing only +enum RubyOpcode { + Putnil, + Putobject(VALUE), + Putstring(VALUE), + Intern, + Setlocal(usize), + Getlocal(usize), + Newarray(usize), + Leave, +} fn to_ssa(opcodes: &Vec) -> Function { let mut result = Function::new(); let mut state = FrameState::new(); diff --git a/zjit/src/lib.rs b/zjit/src/lib.rs index 1210401623..2a7dc40c75 100644 --- a/zjit/src/lib.rs +++ b/zjit/src/lib.rs @@ -1,6 +1,5 @@ #![allow(dead_code)] -mod asm; mod codegen; mod cruby; mod ir; -- cgit v1.2.3