Reviewers: danno,
Message:
Hi Danno, this CL breaks the Webkit heap snapshot tests, by exposing an
array
without any (apparent) roots. I'll follow up on it soon. Thanks,
--Michael
Description:
Revert "Calls to HCheckFunction can be eliminated if the value is an
HConstant"
This reverts commit 3f96122cc572f7a0b638c30f65328c3cb3666795.
BUG=
Please review this at https://codereview.chromium.org/18998003/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files:
M src/hydrogen-instructions.h
M src/hydrogen-instructions.cc
M src/objects.cc
Index: src/hydrogen-instructions.cc
diff --git a/src/hydrogen-instructions.cc b/src/hydrogen-instructions.cc
index
5ba4298c229b6726d7041a51778f7b2de0211da0..e837af1ab932a81d8d6abc60d954ef1de197b45c
100644
--- a/src/hydrogen-instructions.cc
+++ b/src/hydrogen-instructions.cc
@@ -1690,14 +1690,6 @@ void HCheckFunction::PrintDataTo(StringStream*
stream) {
}
-HValue* HCheckFunction::Canonicalize() {
- return (value()->IsConstant() &&
- HConstant::cast(value())->UniqueValueIdsMatch(target_unique_id_))
- ? NULL
- : this;
-}
-
-
const char* HCheckInstanceType::GetCheckName() {
switch (check_) {
case IS_SPEC_OBJECT: return "object";
Index: src/hydrogen-instructions.h
diff --git a/src/hydrogen-instructions.h b/src/hydrogen-instructions.h
index
9e8ba7665478e427be342b85716f47a39de86efb..ac7fc63a7d28f13437434d954c2fd04acecf4fc7
100644
--- a/src/hydrogen-instructions.h
+++ b/src/hydrogen-instructions.h
@@ -2838,8 +2838,6 @@ class HCheckFunction: public HUnaryOperation {
virtual void PrintDataTo(StringStream* stream);
virtual HType CalculateInferredType();
- virtual HValue* Canonicalize();
-
#ifdef DEBUG
virtual void Verify();
#endif
@@ -3413,11 +3411,6 @@ class HConstant: public HTemplateInstruction<0> {
}
}
- bool UniqueValueIdsMatch(UniqueValueId other) {
- if (!has_double_value_) return unique_id_ == other;
- return false;
- }
-
#ifdef DEBUG
virtual void Verify() { }
#endif
Index: src/objects.cc
diff --git a/src/objects.cc b/src/objects.cc
index
3a60a322a139ad3c495423cb05ca4581bd3662f3..df042a186424e8cb156074555fdfe3046b910c56
100644
--- a/src/objects.cc
+++ b/src/objects.cc
@@ -15821,8 +15821,7 @@ Type* PropertyCell::UpdateType(Handle<PropertyCell>
cell,
Handle<Object> value) {
Isolate* isolate = cell->GetIsolate();
Handle<Type> old_type(cell->type(), isolate);
- Handle<Type> new_type((value->IsSmi() || value->IsJSFunction() ||
- value->IsUndefined())
+ Handle<Type> new_type((value->IsSmi() || value->IsUndefined())
? Type::Constant(value, isolate)
: Type::Any(), isolate);
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.