Cleaned up Hydrogen function signatures related to property access.

This is a refactoring-only CL and the first one in a series for enabling
inlining of accessors. The naming and argument order has been unified a bit, and
some tests have been pushed to the caller in order to get a simpler
signature. Note that the latter temporarily introduces some code redundancy, but
this will be cleaned up in one of the next CLs.

Review URL: https://chromiumcodereview.appspot.com/10826028

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12198 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent d37695e3
This diff is collapsed.
...@@ -1089,13 +1089,13 @@ class HGraphBuilder: public AstVisitor { ...@@ -1089,13 +1089,13 @@ class HGraphBuilder: public AstVisitor {
HInstruction* BuildIncrement(bool returns_original_input, HInstruction* BuildIncrement(bool returns_original_input,
CountOperation* expr); CountOperation* expr);
HLoadNamedField* BuildLoadNamedField(HValue* object, HLoadNamedField* BuildLoadNamedField(HValue* object,
Property* expr, Handle<Map> map,
Handle<Map> type,
LookupResult* result, LookupResult* result,
bool smi_and_map_check); bool smi_and_map_check);
HInstruction* BuildLoadNamedGeneric(HValue* object, Property* expr); HInstruction* BuildLoadNamedGeneric(HValue* object,
HInstruction* BuildLoadKeyedGeneric(HValue* object, Handle<String> name,
HValue* key); Property* expr);
HInstruction* BuildLoadKeyedGeneric(HValue* object, HValue* key);
HInstruction* BuildExternalArrayElementAccess( HInstruction* BuildExternalArrayElementAccess(
HValue* external_elements, HValue* external_elements,
HValue* checked_key, HValue* checked_key,
...@@ -1147,29 +1147,27 @@ class HGraphBuilder: public AstVisitor { ...@@ -1147,29 +1147,27 @@ class HGraphBuilder: public AstVisitor {
bool is_store, bool is_store,
bool* has_side_effects); bool* has_side_effects);
HInstruction* BuildCallGetter(HValue* obj, HInstruction* BuildCallGetter(HValue* object,
Property* expr,
Handle<Map> map, Handle<Map> map,
Handle<Object> callback, Handle<AccessorPair> accessors,
Handle<JSObject> holder); Handle<JSObject> holder);
HInstruction* BuildLoadNamed(HValue* object, HInstruction* BuildLoadNamed(HValue* object,
Property* prop, Handle<String> name,
Handle<Map> map, Property* expr,
Handle<String> name); Handle<Map> map);
HInstruction* BuildCallSetter(HValue* object, HInstruction* BuildCallSetter(HValue* object,
Handle<String> name,
HValue* value, HValue* value,
Handle<Map> map, Handle<Map> map,
Handle<Object> callback, Handle<AccessorPair> accessors,
Handle<JSObject> holder); Handle<JSObject> holder);
HInstruction* BuildStoreNamed(HValue* object, HInstruction* BuildStoreNamed(HValue* object,
Handle<String> name,
HValue* value, HValue* value,
Handle<Map> type, Handle<Map> map);
Expression* key);
HInstruction* BuildStoreNamedField(HValue* object, HInstruction* BuildStoreNamedField(HValue* object,
Handle<String> name, Handle<String> name,
HValue* value, HValue* value,
Handle<Map> type, Handle<Map> map,
LookupResult* lookup, LookupResult* lookup,
bool smi_and_map_check); bool smi_and_map_check);
HInstruction* BuildStoreNamedGeneric(HValue* object, HInstruction* BuildStoreNamedGeneric(HValue* object,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment