| Index: src/ia32/macro-assembler-ia32.h
|
| ===================================================================
|
| --- src/ia32/macro-assembler-ia32.h (revision 2967)
|
| +++ src/ia32/macro-assembler-ia32.h (working copy)
|
| @@ -254,14 +254,14 @@
|
| void CallRuntime(Runtime::FunctionId id, int num_arguments);
|
|
|
| // Tail call of a runtime routine (jump).
|
| - // Like JumpToBuiltin, but also takes care of passing the number
|
| + // Like JumpToRuntime, but also takes care of passing the number
|
| // of arguments.
|
| void TailCallRuntime(const ExternalReference& ext,
|
| int num_arguments,
|
| int result_size);
|
|
|
| - // Jump to the builtin routine.
|
| - void JumpToBuiltin(const ExternalReference& ext);
|
| + // Jump to a runtime routine.
|
| + void JumpToRuntime(const ExternalReference& ext);
|
|
|
|
|
| // ---------------------------------------------------------------------------
|
| @@ -321,8 +321,16 @@
|
| Label* done,
|
| InvokeFlag flag);
|
|
|
| - // Get the code for the given builtin. Returns if able to resolve
|
| - // the function in the 'resolved' flag.
|
| + // Prepares for a call or jump to a builtin by doing two things:
|
| + // 1. Emits code that fetches the builtin's function object from the context
|
| + // at runtime, and puts it in the register rdi.
|
| + // 2. Fetches the builtin's code object, and returns it in a handle, at
|
| + // compile time, so that later code can emit instructions to jump or call
|
| + // the builtin directly. If the code object has not yet been created, it
|
| + // returns the builtin code object for IllegalFunction, and sets the
|
| + // output parameter "resolved" to false. Code that uses the return value
|
| + // should then add the address and the builtin name to the list of fixups
|
| + // called unresolved_, which is fixed up by the bootstrapper.
|
| Handle<Code> ResolveBuiltin(Builtins::JavaScript id, bool* resolved);
|
|
|
| // Activation support.
|
|
|