Index: src/stub-cache.h |
diff --git a/src/stub-cache.h b/src/stub-cache.h |
index bca3b7bca4050296c1aec7bd3e5be1fbe02c02a2..02d017a8a13b5eda81feedd96f4cc43983bec724 100644 |
--- a/src/stub-cache.h |
+++ b/src/stub-cache.h |
@@ -162,8 +162,12 @@ class StubCache { |
Handle<Code> ComputeStoreField(Handle<Name> name, |
Handle<JSObject> object, |
LookupResult* lookup, |
- Handle<Map> transition, |
StrictModeFlag strict_mode); |
+ Handle<Code> ComputeStoreTransition(Handle<Name> name, |
ulan
2013/04/11 09:34:04
Nit: space between function declarations here and
Toon Verwaest
2013/04/11 09:47:33
Done.
|
+ Handle<JSObject> object, |
+ LookupResult* lookup, |
+ Handle<Map> transition, |
+ StrictModeFlag strict_mode); |
Handle<Code> ComputeStoreNormal(StrictModeFlag strict_mode); |
@@ -193,8 +197,12 @@ class StubCache { |
Handle<Code> ComputeKeyedStoreField(Handle<Name> name, |
Handle<JSObject> object, |
LookupResult* lookup, |
- Handle<Map> transition, |
StrictModeFlag strict_mode); |
+ Handle<Code> ComputeKeyedStoreTransition(Handle<Name> name, |
+ Handle<JSObject> object, |
+ LookupResult* lookup, |
+ Handle<Map> transition, |
+ StrictModeFlag strict_mode); |
Handle<Code> ComputeKeyedLoadElement(Handle<Map> receiver_map); |
@@ -509,18 +517,27 @@ class StubCompiler BASE_EMBEDDED { |
Register scratch2, |
Label* miss_label); |
+ void GenerateStoreTransition(MacroAssembler* masm, |
+ Handle<JSObject> object, |
+ LookupResult* lookup, |
+ Handle<Map> transition, |
+ Handle<Name> name, |
+ Register receiver_reg, |
+ Register name_reg, |
+ Register value_reg, |
+ Register scratch1, |
+ Register scratch2, |
+ Label* miss_label, |
+ Label* miss_restore_name); |
void GenerateStoreField(MacroAssembler* masm, |
Handle<JSObject> object, |
LookupResult* lookup, |
- Handle<Map> transition, |
- Handle<Name> name, |
Register receiver_reg, |
Register name_reg, |
Register value_reg, |
Register scratch1, |
Register scratch2, |
- Label* miss_label, |
- Label* miss_restore_name); |
+ Label* miss_label); |
static Builtins::Name MissBuiltin(Code::Kind kind) { |
switch (kind) { |
@@ -781,9 +798,12 @@ class BaseStoreStubCompiler: public StubCompiler { |
virtual ~BaseStoreStubCompiler() { } |
+ Handle<Code> CompileStoreTransition(Handle<JSObject> object, |
+ LookupResult* lookup, |
+ Handle<Map> transition, |
+ Handle<Name> name); |
Handle<Code> CompileStoreField(Handle<JSObject> object, |
LookupResult* lookup, |
- Handle<Map> transition, |
Handle<Name> name); |
protected: |