about summary refs log tree commit diff
diff options
context:
space:
mode:
authorVincent Ambo <mail@tazj.in>2023-03-11T20·19+0300
committertazjin <tazjin@tvl.su>2023-03-13T20·30+0000
commitcc59cbf3e27efb01a2cf96dcd5d2a7be1bca9540 (patch)
treee62ff483afdd3d18a5d90b06fe87b711b9c97aa2
parent5d9bfd7735373cde72ebac4be4a05f1c846c13ba (diff)
refactor(tvix/eval): rename VM::tail_call_value -> VM::call_value r/5984
The name of this was not accurate anymore after all the recent
shuffling, as noted by amjoseph. Conceptual tail calls here only occur
for Nix bytecode calling Nix bytecode, but things like a builtin call
actually push a new native frame.

Change-Id: I1dea8c9663daf86482b8c7b5a23133254b5ca321
Reviewed-on: https://cl.tvl.fyi/c/depot/+/8256
Tested-by: BuildkiteCI
Reviewed-by: raitobezarius <tvl@lahfa.xyz>
-rw-r--r--tvix/eval/src/vm/generators.rs2
-rw-r--r--tvix/eval/src/vm/mod.rs6
2 files changed, 4 insertions, 4 deletions
diff --git a/tvix/eval/src/vm/generators.rs b/tvix/eval/src/vm/generators.rs
index 65b7287a69e3..cddb18a406e1 100644
--- a/tvix/eval/src/vm/generators.rs
+++ b/tvix/eval/src/vm/generators.rs
@@ -355,7 +355,7 @@ impl<'o> VM<'o> {
 
                         GeneratorRequest::Call(callable) => {
                             self.reenqueue_generator(name, span.clone(), generator);
-                            self.tail_call_value(span, None, callable)?;
+                            self.call_value(span, None, callable)?;
                             return Ok(false);
                         }
 
diff --git a/tvix/eval/src/vm/mod.rs b/tvix/eval/src/vm/mod.rs
index 9dc1728531e6..e2ff4ea94573 100644
--- a/tvix/eval/src/vm/mod.rs
+++ b/tvix/eval/src/vm/mod.rs
@@ -699,7 +699,7 @@ impl<'o> VM<'o> {
 
                 OpCode::OpCall => {
                     let callable = self.stack_pop();
-                    self.tail_call_value(frame.current_light_span(), Some(frame), callable)?;
+                    self.call_value(frame.current_light_span(), Some(frame), callable)?;
 
                     // exit this loop and let the outer loop enter the new call
                     return Ok(true);
@@ -900,7 +900,7 @@ impl<'o> VM<'o> {
         Ok(())
     }
 
-    fn tail_call_value(
+    fn call_value(
         &mut self,
         span: LightSpan,
         parent: Option<CallFrame>,
@@ -908,7 +908,7 @@ impl<'o> VM<'o> {
     ) -> EvalResult<()> {
         match callable {
             Value::Builtin(builtin) => self.call_builtin(span, builtin),
-            Value::Thunk(thunk) => self.tail_call_value(span, parent, thunk.value().clone()),
+            Value::Thunk(thunk) => self.call_value(span, parent, thunk.value().clone()),
 
             Value::Closure(closure) => {
                 let lambda = closure.lambda();