| Index: src/stub-cache.h
|
| diff --git a/src/stub-cache.h b/src/stub-cache.h
|
| index 388bb52ca689865f2715be15bfa1c98c6328022b..d8925a426bdf6bcfdba99585163fa05bf1ba17a3 100644
|
| --- a/src/stub-cache.h
|
| +++ b/src/stub-cache.h
|
| @@ -612,29 +612,25 @@ class KeyedStoreStubCompiler: public StubCompiler {
|
| // Installation of custom call generators for the selected builtins is
|
| // handled by the bootstrapper.
|
| //
|
| -// Each entry has a name of a global function (lowercased), a flag
|
| -// controlling whether the generator is set on the function itself or
|
| -// on its instance prototype, a name of a builtin function on the
|
| -// function or its instance prototype (the one the generator is set
|
| -// for), and a name of a generator itself (used to build ids and
|
| -// generator function names).
|
| -#define CUSTOM_CALL_IC_GENERATORS(V) \
|
| - V(array, INSTANCE_PROTOTYPE, push, ArrayPush) \
|
| - V(array, INSTANCE_PROTOTYPE, pop, ArrayPop) \
|
| - V(string, INSTANCE_PROTOTYPE, charCodeAt, StringCharCodeAt) \
|
| - V(string, INSTANCE_PROTOTYPE, charAt, StringCharAt) \
|
| - V(string, FUNCTION, fromCharCode, StringFromCharCode)
|
| +// Each entry has a name of a global object property holding an object
|
| +// optionally followed by ".prototype" (this controls whether the
|
| +// generator is set on the object itself or, in case it's a function,
|
| +// on the its instance prototype), a name of a builtin function on the
|
| +// object (the one the generator is set for), and a name of the
|
| +// generator (used to build ids and generator function names).
|
| +#define CUSTOM_CALL_IC_GENERATORS(V) \
|
| + V(Array.prototype, push, ArrayPush) \
|
| + V(Array.prototype, pop, ArrayPop) \
|
| + V(String.prototype, charCodeAt, StringCharCodeAt) \
|
| + V(String.prototype, charAt, StringCharAt) \
|
| + V(String, fromCharCode, StringFromCharCode) \
|
| + V(Math, floor, MathFloor)
|
|
|
|
|
| class CallStubCompiler: public StubCompiler {
|
| public:
|
| - enum CustomGeneratorOwner {
|
| - FUNCTION,
|
| - INSTANCE_PROTOTYPE
|
| - };
|
| -
|
| enum {
|
| -#define DECLARE_CALL_GENERATOR_ID(ignored1, ignore2, ignored3, name) \
|
| +#define DECLARE_CALL_GENERATOR_ID(ignored1, ignore2, name) \
|
| k##name##CallGenerator,
|
| CUSTOM_CALL_IC_GENERATORS(DECLARE_CALL_GENERATOR_ID)
|
| #undef DECLARE_CALL_GENERATOR_ID
|
| @@ -673,11 +669,11 @@ class CallStubCompiler: public StubCompiler {
|
| JSFunction* function,
|
| String* name);
|
|
|
| -#define DECLARE_CALL_GENERATOR(ignored1, ignored2, ignored3, name) \
|
| - Object* Compile##name##Call(Object* object, \
|
| - JSObject* holder, \
|
| - JSGlobalPropertyCell* cell, \
|
| - JSFunction* function, \
|
| +#define DECLARE_CALL_GENERATOR(ignored1, ignored2, name) \
|
| + Object* Compile##name##Call(Object* object, \
|
| + JSObject* holder, \
|
| + JSGlobalPropertyCell* cell, \
|
| + JSFunction* function, \
|
| String* fname);
|
| CUSTOM_CALL_IC_GENERATORS(DECLARE_CALL_GENERATOR)
|
| #undef DECLARE_CALL_GENERATOR
|
|
|