summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>2025-02-06 11:17:02 -0500
committerTakashi Kokubun <takashikkbn@gmail.com>2025-04-18 21:52:56 +0900
commit139102b24adb4fcd431785a3b5b38c4edbf3a515 (patch)
tree79eb754fe9cda086dee06cba29b925bf3f2d75d2
parent8d5d5b34cff237540f0b80e943b584d872745ec0 (diff)
Add comments
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/13131
-rw-r--r--zjit/src/ir.rs13
1 files changed, 12 insertions, 1 deletions
diff --git a/zjit/src/ir.rs b/zjit/src/ir.rs
index 1f9911742f..e39ca8bfcc 100644
--- a/zjit/src/ir.rs
+++ b/zjit/src/ir.rs
@@ -21,6 +21,14 @@ enum Insn {
// Control flow instructions
Return { val: Opnd },
+
+ // Unconditional jump
+ // Jump { target: BlockId },
+
+ // TODO:
+ // Conditional branch instructions
+ // IfTrue { val: Opnd, target: BlockId, }
+ // IfFalse { val: Opnd, target: BlockId, }
}
#[derive(Default, Debug, PartialEq)]
@@ -34,6 +42,9 @@ impl Block {
#[derive(Debug, PartialEq)]
struct Function {
+ // TODO:
+ // ISEQ this function refers to
+
entry_block: BlockId,
insns: Vec<Insn>,
blocks: Vec<Block>,
@@ -65,7 +76,7 @@ enum RubyOpcode {
struct FrameState {
// TODO:
// Ruby bytecode instruction pointer
- // pc:
+ // pc: *mut VALUE,
stack: Vec<Opnd>,
locals: Vec<Opnd>,