MysoreScript
Functions | Variables
anonymous_namespace{interpreter.cc} Namespace Reference

Functions

bool needsGC (Obj o)
 Indicates whether a particular object needs to be visible to the GC. More...
 
Obj closureTrampoline0 (Closure *C)
 0-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed. More...
 
Obj closureTrampoline1 (Closure *C, Obj o0)
 1-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed. More...
 
Obj closureTrampoline2 (Closure *C, Obj o0, Obj o1)
 2-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed. More...
 
Obj closureTrampoline3 (Closure *C, Obj o0, Obj o1, Obj o2)
 3-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed. More...
 
Obj closureTrampoline4 (Closure *C, Obj o0, Obj o1, Obj o2, Obj o3)
 4-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed. More...
 
Obj closureTrampoline5 (Closure *C, Obj o0, Obj o1, Obj o2, Obj o3, Obj o4)
 5-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed. More...
 
Obj closureTrampoline6 (Closure *C, Obj o0, Obj o1, Obj o2, Obj o3, Obj o4, Obj o5)
 6-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed. More...
 
Obj closureTrampoline7 (Closure *C, Obj o0, Obj o1, Obj o2, Obj o3, Obj o4, Obj o5, Obj o6)
 7-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed. More...
 
Obj closureTrampoline8 (Closure *C, Obj o0, Obj o1, Obj o2, Obj o3, Obj o4, Obj o5, Obj o6, Obj o7)
 8-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed. More...
 
Obj closureTrampoline9 (Closure *C, Obj o0, Obj o1, Obj o2, Obj o3, Obj o4, Obj o5, Obj o6, Obj o7, Obj o8)
 9-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed. More...
 
Obj closureTrampoline10 (Closure *C, Obj o0, Obj o1, Obj o2, Obj o3, Obj o4, Obj o5, Obj o6, Obj o7, Obj o8, Obj o9)
 10-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed. More...
 
Obj methodTrampoline0 (Obj self, Selector cmd)
 0-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed. More...
 
Obj methodTrampoline1 (Obj self, Selector cmd, Obj o0)
 1-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed. More...
 
Obj methodTrampoline2 (Obj self, Selector cmd, Obj o0, Obj o1)
 2-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed. More...
 
Obj methodTrampoline3 (Obj self, Selector cmd, Obj o0, Obj o1, Obj o2)
 3-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed. More...
 
Obj methodTrampoline4 (Obj self, Selector cmd, Obj o0, Obj o1, Obj o2, Obj o3)
 4-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed. More...
 
Obj methodTrampoline5 (Obj self, Selector cmd, Obj o0, Obj o1, Obj o2, Obj o3, Obj o4)
 5-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed. More...
 
Obj methodTrampoline6 (Obj self, Selector cmd, Obj o0, Obj o1, Obj o2, Obj o3, Obj o4, Obj o5)
 6-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed. More...
 
Obj methodTrampoline7 (Obj self, Selector cmd, Obj o0, Obj o1, Obj o2, Obj o3, Obj o4, Obj o5, Obj o6)
 7-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed. More...
 
Obj methodTrampoline8 (Obj self, Selector cmd, Obj o0, Obj o1, Obj o2, Obj o3, Obj o4, Obj o5, Obj o6, Obj o7)
 8-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed. More...
 
Obj methodTrampoline9 (Obj self, Selector cmd, Obj o0, Obj o1, Obj o2, Obj o3, Obj o4, Obj o5, Obj o6, Obj o7, Obj o8)
 9-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed. More...
 
Obj methodTrampoline10 (Obj self, Selector cmd, Obj o0, Obj o1, Obj o2, Obj o3, Obj o4, Obj o5, Obj o6, Obj o7, Obj o8, Obj o9)
 10-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed. More...
 

Variables

Interpreter::ContextcurrentContext
 
CompiledMethod methodTrampolines []
 Array of trampolines, indexed by number or arguments. More...
 

Function Documentation

§ closureTrampoline0()

Obj anonymous_namespace{interpreter.cc}::closureTrampoline0 ( Closure C)

0-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed.

Definition at line 28 of file interpreter.cc.

Here is the call graph for this function:

§ closureTrampoline1()

Obj anonymous_namespace{interpreter.cc}::closureTrampoline1 ( Closure C,
Obj  o0 
)

1-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed.

Definition at line 36 of file interpreter.cc.

Here is the call graph for this function:

§ closureTrampoline10()

Obj anonymous_namespace{interpreter.cc}::closureTrampoline10 ( Closure C,
Obj  o0,
Obj  o1,
Obj  o2,
Obj  o3,
Obj  o4,
Obj  o5,
Obj  o6,
Obj  o7,
Obj  o8,
Obj  o9 
)

10-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed.

Definition at line 121 of file interpreter.cc.

Here is the call graph for this function:

§ closureTrampoline2()

Obj anonymous_namespace{interpreter.cc}::closureTrampoline2 ( Closure C,
Obj  o0,
Obj  o1 
)

2-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed.

Definition at line 45 of file interpreter.cc.

Here is the call graph for this function:

§ closureTrampoline3()

Obj anonymous_namespace{interpreter.cc}::closureTrampoline3 ( Closure C,
Obj  o0,
Obj  o1,
Obj  o2 
)

3-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed.

Definition at line 54 of file interpreter.cc.

Here is the call graph for this function:

§ closureTrampoline4()

Obj anonymous_namespace{interpreter.cc}::closureTrampoline4 ( Closure C,
Obj  o0,
Obj  o1,
Obj  o2,
Obj  o3 
)

4-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed.

Definition at line 63 of file interpreter.cc.

Here is the call graph for this function:

§ closureTrampoline5()

Obj anonymous_namespace{interpreter.cc}::closureTrampoline5 ( Closure C,
Obj  o0,
Obj  o1,
Obj  o2,
Obj  o3,
Obj  o4 
)

5-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed.

Definition at line 72 of file interpreter.cc.

Here is the call graph for this function:

§ closureTrampoline6()

Obj anonymous_namespace{interpreter.cc}::closureTrampoline6 ( Closure C,
Obj  o0,
Obj  o1,
Obj  o2,
Obj  o3,
Obj  o4,
Obj  o5 
)

6-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed.

Definition at line 81 of file interpreter.cc.

Here is the call graph for this function:

§ closureTrampoline7()

Obj anonymous_namespace{interpreter.cc}::closureTrampoline7 ( Closure C,
Obj  o0,
Obj  o1,
Obj  o2,
Obj  o3,
Obj  o4,
Obj  o5,
Obj  o6 
)

7-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed.

Definition at line 91 of file interpreter.cc.

Here is the call graph for this function:

§ closureTrampoline8()

Obj anonymous_namespace{interpreter.cc}::closureTrampoline8 ( Closure C,
Obj  o0,
Obj  o1,
Obj  o2,
Obj  o3,
Obj  o4,
Obj  o5,
Obj  o6,
Obj  o7 
)

8-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed.

Definition at line 101 of file interpreter.cc.

Here is the call graph for this function:

§ closureTrampoline9()

Obj anonymous_namespace{interpreter.cc}::closureTrampoline9 ( Closure C,
Obj  o0,
Obj  o1,
Obj  o2,
Obj  o3,
Obj  o4,
Obj  o5,
Obj  o6,
Obj  o7,
Obj  o8 
)

9-argument trampoline for jumping back into the interpreter when a closure that has not yet been compiled is executed.

Definition at line 111 of file interpreter.cc.

Here is the call graph for this function:

§ methodTrampoline0()

Obj anonymous_namespace{interpreter.cc}::methodTrampoline0 ( Obj  self,
Selector  cmd 
)

0-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed.

Definition at line 132 of file interpreter.cc.

Here is the call graph for this function:

§ methodTrampoline1()

Obj anonymous_namespace{interpreter.cc}::methodTrampoline1 ( Obj  self,
Selector  cmd,
Obj  o0 
)

1-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed.

Definition at line 142 of file interpreter.cc.

Here is the call graph for this function:

§ methodTrampoline10()

Obj anonymous_namespace{interpreter.cc}::methodTrampoline10 ( Obj  self,
Selector  cmd,
Obj  o0,
Obj  o1,
Obj  o2,
Obj  o3,
Obj  o4,
Obj  o5,
Obj  o6,
Obj  o7,
Obj  o8,
Obj  o9 
)

10-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed.

Definition at line 246 of file interpreter.cc.

Here is the call graph for this function:

§ methodTrampoline2()

Obj anonymous_namespace{interpreter.cc}::methodTrampoline2 ( Obj  self,
Selector  cmd,
Obj  o0,
Obj  o1 
)

2-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed.

Definition at line 153 of file interpreter.cc.

Here is the call graph for this function:

§ methodTrampoline3()

Obj anonymous_namespace{interpreter.cc}::methodTrampoline3 ( Obj  self,
Selector  cmd,
Obj  o0,
Obj  o1,
Obj  o2 
)

3-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed.

Definition at line 164 of file interpreter.cc.

Here is the call graph for this function:

§ methodTrampoline4()

Obj anonymous_namespace{interpreter.cc}::methodTrampoline4 ( Obj  self,
Selector  cmd,
Obj  o0,
Obj  o1,
Obj  o2,
Obj  o3 
)

4-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed.

Definition at line 175 of file interpreter.cc.

Here is the call graph for this function:

§ methodTrampoline5()

Obj anonymous_namespace{interpreter.cc}::methodTrampoline5 ( Obj  self,
Selector  cmd,
Obj  o0,
Obj  o1,
Obj  o2,
Obj  o3,
Obj  o4 
)

5-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed.

Definition at line 186 of file interpreter.cc.

Here is the call graph for this function:

§ methodTrampoline6()

Obj anonymous_namespace{interpreter.cc}::methodTrampoline6 ( Obj  self,
Selector  cmd,
Obj  o0,
Obj  o1,
Obj  o2,
Obj  o3,
Obj  o4,
Obj  o5 
)

6-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed.

Definition at line 198 of file interpreter.cc.

Here is the call graph for this function:

§ methodTrampoline7()

Obj anonymous_namespace{interpreter.cc}::methodTrampoline7 ( Obj  self,
Selector  cmd,
Obj  o0,
Obj  o1,
Obj  o2,
Obj  o3,
Obj  o4,
Obj  o5,
Obj  o6 
)

7-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed.

Definition at line 210 of file interpreter.cc.

Here is the call graph for this function:

§ methodTrampoline8()

Obj anonymous_namespace{interpreter.cc}::methodTrampoline8 ( Obj  self,
Selector  cmd,
Obj  o0,
Obj  o1,
Obj  o2,
Obj  o3,
Obj  o4,
Obj  o5,
Obj  o6,
Obj  o7 
)

8-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed.

Definition at line 222 of file interpreter.cc.

Here is the call graph for this function:

§ methodTrampoline9()

Obj anonymous_namespace{interpreter.cc}::methodTrampoline9 ( Obj  self,
Selector  cmd,
Obj  o0,
Obj  o1,
Obj  o2,
Obj  o3,
Obj  o4,
Obj  o5,
Obj  o6,
Obj  o7,
Obj  o8 
)

9-argument trampoline for jumping back into the interpreter when a method that has not yet been compiled is executed.

Definition at line 234 of file interpreter.cc.

Here is the call graph for this function:

§ needsGC()

bool anonymous_namespace{interpreter.cc}::needsGC ( Obj  o)
inline

Indicates whether a particular object needs to be visible to the GC.

If it's a real pointer, then it does, otherwise (if it's an integer hidden in the pointer value), then it doesn't.

Definition at line 16 of file interpreter.cc.

Here is the caller graph for this function:

Variable Documentation

§ currentContext

Interpreter::Context* anonymous_namespace{interpreter.cc}::currentContext

Definition at line 21 of file interpreter.cc.

§ methodTrampolines

CompiledMethod anonymous_namespace{interpreter.cc}::methodTrampolines[]
Initial value:
= {
reinterpret_cast<CompiledMethod>(methodTrampoline0),
reinterpret_cast<CompiledMethod>(methodTrampoline1),
reinterpret_cast<CompiledMethod>(methodTrampoline2),
reinterpret_cast<CompiledMethod>(methodTrampoline3),
reinterpret_cast<CompiledMethod>(methodTrampoline4),
reinterpret_cast<CompiledMethod>(methodTrampoline5),
reinterpret_cast<CompiledMethod>(methodTrampoline6),
reinterpret_cast<CompiledMethod>(methodTrampoline7),
reinterpret_cast<CompiledMethod>(methodTrampoline8),
reinterpret_cast<CompiledMethod>(methodTrampoline9),
}
Object *(* CompiledMethod)(Object *, Selector,...)
A compiled method is a function that takes an object (the receiver) and the selector as implicit argu...
Definition: runtime.hh:75
Obj methodTrampoline1(Obj self, Selector cmd, Obj o0)
1-argument trampoline for jumping back into the interpreter when a method that has not yet been compi...
Definition: interpreter.cc:142
Obj methodTrampoline4(Obj self, Selector cmd, Obj o0, Obj o1, Obj o2, Obj o3)
4-argument trampoline for jumping back into the interpreter when a method that has not yet been compi...
Definition: interpreter.cc:175
Obj methodTrampoline8(Obj self, Selector cmd, Obj o0, Obj o1, Obj o2, Obj o3, Obj o4, Obj o5, Obj o6, Obj o7)
8-argument trampoline for jumping back into the interpreter when a method that has not yet been compi...
Definition: interpreter.cc:222
Obj methodTrampoline7(Obj self, Selector cmd, Obj o0, Obj o1, Obj o2, Obj o3, Obj o4, Obj o5, Obj o6)
7-argument trampoline for jumping back into the interpreter when a method that has not yet been compi...
Definition: interpreter.cc:210
Obj methodTrampoline5(Obj self, Selector cmd, Obj o0, Obj o1, Obj o2, Obj o3, Obj o4)
5-argument trampoline for jumping back into the interpreter when a method that has not yet been compi...
Definition: interpreter.cc:186
Obj methodTrampoline6(Obj self, Selector cmd, Obj o0, Obj o1, Obj o2, Obj o3, Obj o4, Obj o5)
6-argument trampoline for jumping back into the interpreter when a method that has not yet been compi...
Definition: interpreter.cc:198
Obj methodTrampoline3(Obj self, Selector cmd, Obj o0, Obj o1, Obj o2)
3-argument trampoline for jumping back into the interpreter when a method that has not yet been compi...
Definition: interpreter.cc:164
Obj methodTrampoline10(Obj self, Selector cmd, Obj o0, Obj o1, Obj o2, Obj o3, Obj o4, Obj o5, Obj o6, Obj o7, Obj o8, Obj o9)
10-argument trampoline for jumping back into the interpreter when a method that has not yet been comp...
Definition: interpreter.cc:246
Obj methodTrampoline2(Obj self, Selector cmd, Obj o0, Obj o1)
2-argument trampoline for jumping back into the interpreter when a method that has not yet been compi...
Definition: interpreter.cc:153
Obj methodTrampoline9(Obj self, Selector cmd, Obj o0, Obj o1, Obj o2, Obj o3, Obj o4, Obj o5, Obj o6, Obj o7, Obj o8)
9-argument trampoline for jumping back into the interpreter when a method that has not yet been compi...
Definition: interpreter.cc:234
Obj methodTrampoline0(Obj self, Selector cmd)
0-argument trampoline for jumping back into the interpreter when a method that has not yet been compi...
Definition: interpreter.cc:132

Array of trampolines, indexed by number or arguments.

Definition at line 257 of file interpreter.cc.