Clean up Hydrogen's HLoadFunctionPrototype.

This instruction was setting an incorrect collection of Changes/Depends
flags.

Review URL: http://codereview.chromium.org/6399002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6491 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent 17aa262c
...@@ -133,10 +133,9 @@ class LChunkBuilder; ...@@ -133,10 +133,9 @@ class LChunkBuilder;
// HFixedArrayLength // HFixedArrayLength
// HJSArrayLength // HJSArrayLength
// HLoadElements // HLoadElements
// HTypeofIs // HLoadFunctionPrototype
// HLoadNamedField // HLoadNamedField
// HLoadNamedGeneric // HLoadNamedGeneric
// HLoadFunctionPrototype
// HPushArgument // HPushArgument
// HStringLength // HStringLength
// HTypeof // HTypeof
...@@ -148,6 +147,7 @@ class LChunkBuilder; ...@@ -148,6 +147,7 @@ class LChunkBuilder;
// HIsNull // HIsNull
// HIsObject // HIsObject
// HIsSmi // HIsSmi
// HTypeofIs
// HValueOf // HValueOf
// HUnknownOSRValue // HUnknownOSRValue
// HPhi // HPhi
...@@ -224,12 +224,12 @@ class LChunkBuilder; ...@@ -224,12 +224,12 @@ class LChunkBuilder;
V(LeaveInlined) \ V(LeaveInlined) \
V(LoadContextSlot) \ V(LoadContextSlot) \
V(LoadElements) \ V(LoadElements) \
V(LoadFunctionPrototype) \
V(LoadGlobal) \ V(LoadGlobal) \
V(LoadKeyedFastElement) \ V(LoadKeyedFastElement) \
V(LoadKeyedGeneric) \ V(LoadKeyedGeneric) \
V(LoadNamedField) \ V(LoadNamedField) \
V(LoadNamedGeneric) \ V(LoadNamedGeneric) \
V(LoadFunctionPrototype) \
V(Mod) \ V(Mod) \
V(Mul) \ V(Mul) \
V(ObjectLiteral) \ V(ObjectLiteral) \
...@@ -268,7 +268,6 @@ class LChunkBuilder; ...@@ -268,7 +268,6 @@ class LChunkBuilder;
V(GlobalVars) \ V(GlobalVars) \
V(Maps) \ V(Maps) \
V(ArrayLengths) \ V(ArrayLengths) \
V(FunctionPrototypes) \
V(OsrEntries) V(OsrEntries)
#define DECLARE_INSTRUCTION(type) \ #define DECLARE_INSTRUCTION(type) \
...@@ -2732,7 +2731,8 @@ class HLoadFunctionPrototype: public HUnaryOperation { ...@@ -2732,7 +2731,8 @@ class HLoadFunctionPrototype: public HUnaryOperation {
explicit HLoadFunctionPrototype(HValue* function) explicit HLoadFunctionPrototype(HValue* function)
: HUnaryOperation(function) { : HUnaryOperation(function) {
set_representation(Representation::Tagged()); set_representation(Representation::Tagged());
SetFlagMask(kDependsOnFunctionPrototypes); SetFlag(kUseGVN);
SetFlag(kDependsOnCalls);
} }
HValue* function() const { return OperandAt(0); } HValue* function() const { return OperandAt(0); }
...@@ -2742,9 +2742,6 @@ class HLoadFunctionPrototype: public HUnaryOperation { ...@@ -2742,9 +2742,6 @@ class HLoadFunctionPrototype: public HUnaryOperation {
} }
DECLARE_CONCRETE_INSTRUCTION(LoadFunctionPrototype, "load_function_prototype") DECLARE_CONCRETE_INSTRUCTION(LoadFunctionPrototype, "load_function_prototype")
protected:
virtual bool DataEquals(HValue* other) const { return true; }
}; };
......
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