about summary refs log tree commit diff
path: root/tvix/eval/src/vm/mod.rs
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 /tvix/eval/src/vm/mod.rs
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>
Diffstat (limited to 'tvix/eval/src/vm/mod.rs')
-rw-r--r--tvix/eval/src/vm/mod.rs6
1 files changed, 3 insertions, 3 deletions
diff --git a/tvix/eval/src/vm/mod.rs b/tvix/eval/src/vm/mod.rs
index 9dc1728531..e2ff4ea945 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();