Revision: 15725
Author:   [email protected]
Date:     Wed Jul 17 07:58:00 2013
Log:      Fix LiteralCompareTypeof breakage introduced in r15723

[email protected]

Review URL: https://codereview.chromium.org/19556003
http://code.google.com/p/v8/source/detail?r=15725

Modified:
 /branches/bleeding_edge/src/arm/full-codegen-arm.cc
 /branches/bleeding_edge/src/ast.cc
 /branches/bleeding_edge/src/hydrogen.cc
 /branches/bleeding_edge/src/ia32/full-codegen-ia32.cc
 /branches/bleeding_edge/src/mips/full-codegen-mips.cc
 /branches/bleeding_edge/src/x64/full-codegen-x64.cc

=======================================
--- /branches/bleeding_edge/src/arm/full-codegen-arm.cc Wed Jul 17 01:09:52 2013 +++ /branches/bleeding_edge/src/arm/full-codegen-arm.cc Wed Jul 17 07:58:00 2013
@@ -4598,7 +4598,7 @@
                          &if_true, &if_false, &fall_through);

   { AccumulatorValueContext context(this);
-    VisitForTypeofValue(sub_expr);
+    VisitForTypeofValue(sub_expr->AsUnaryOperation()->expression());
   }
   PrepareForBailoutBeforeSplit(expr, true, if_true, if_false);

=======================================
--- /branches/bleeding_edge/src/ast.cc  Wed Jul 17 07:10:38 2013
+++ /branches/bleeding_edge/src/ast.cc  Wed Jul 17 07:58:00 2013
@@ -363,7 +363,7 @@
                                       Expression** expr,
                                       Handle<String>* check) {
if (IsTypeof(left) && right->IsStringLiteral() && Token::IsEqualityOp(op)) {
-    *expr = left->AsUnaryOperation()->expression();
+    *expr = left;
     *check = Handle<String>::cast(right->AsLiteral()->value());
     return true;
   }
=======================================
--- /branches/bleeding_edge/src/hydrogen.cc     Wed Jul 17 07:10:38 2013
+++ /branches/bleeding_edge/src/hydrogen.cc     Wed Jul 17 07:58:00 2013
@@ -8135,7 +8135,8 @@
Expression* sub_expr, Handle<String> check) {
   CHECK_ALIVE(VisitForValue(sub_expr));
-  HValue* value = Pop();
+  HTypeof* htypeof = HTypeof::cast(Pop());
+  HValue* value = htypeof->value();
   HTypeofIsAndBranch* instr = new(zone()) HTypeofIsAndBranch(value, check);
   instr->set_position(expr->position());
   return ast_context()->ReturnControl(instr, expr->id());
=======================================
--- /branches/bleeding_edge/src/ia32/full-codegen-ia32.cc Fri Jul 5 02:26:22 2013 +++ /branches/bleeding_edge/src/ia32/full-codegen-ia32.cc Wed Jul 17 07:58:00 2013
@@ -4608,7 +4608,7 @@
                          &if_true, &if_false, &fall_through);

   { AccumulatorValueContext context(this);
-    VisitForTypeofValue(sub_expr);
+    VisitForTypeofValue(sub_expr->AsUnaryOperation()->expression());
   }
   PrepareForBailoutBeforeSplit(expr, true, if_true, if_false);

=======================================
--- /branches/bleeding_edge/src/mips/full-codegen-mips.cc Fri Jul 5 07:48:50 2013 +++ /branches/bleeding_edge/src/mips/full-codegen-mips.cc Wed Jul 17 07:58:00 2013
@@ -4632,7 +4632,7 @@
                          &if_true, &if_false, &fall_through);

   { AccumulatorValueContext context(this);
-    VisitForTypeofValue(sub_expr);
+    VisitForTypeofValue(sub_expr->AsUnaryOperation()->expression());
   }
   PrepareForBailoutBeforeSplit(expr, true, if_true, if_false);

=======================================
--- /branches/bleeding_edge/src/x64/full-codegen-x64.cc Fri Jul 5 02:26:22 2013 +++ /branches/bleeding_edge/src/x64/full-codegen-x64.cc Wed Jul 17 07:58:00 2013
@@ -4592,7 +4592,7 @@
                          &if_true, &if_false, &fall_through);

   { AccumulatorValueContext context(this);
-    VisitForTypeofValue(sub_expr);
+    VisitForTypeofValue(sub_expr->AsUnaryOperation()->expression());
   }
   PrepareForBailoutBeforeSplit(expr, true, if_true, if_false);

--
--
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.


Reply via email to