Revision: 6231
Author: [email protected]
Date: Fri Jan  7 06:27:32 2011
Log: ARM: Fix lithium codegeneration of TypeofIs

The previous implementation was incomplete and wrong.

[email protected]
Review URL: http://codereview.chromium.org/6113003
http://code.google.com/p/v8/source/detail?r=6231

Modified:
 /branches/bleeding_edge/src/arm/lithium-codegen-arm.cc

=======================================
--- /branches/bleeding_edge/src/arm/lithium-codegen-arm.cc Fri Jan 7 05:44:05 2011 +++ /branches/bleeding_edge/src/arm/lithium-codegen-arm.cc Fri Jan 7 06:27:32 2011
@@ -2484,10 +2484,15 @@
                                                   &false_label,
                                                   input,
                                                   instr->type_literal());
-
-  __ LoadRoot(result, Heap::kTrueValueRootIndex, final_branch_condition);
-  __ LoadRoot(result, Heap::kFalseValueRootIndex,
-              NegateCondition(final_branch_condition));
+  __ b(final_branch_condition, &true_label);
+  __ bind(&false_label);
+  __ LoadRoot(result, Heap::kFalseValueRootIndex);
+  __ b(&done);
+
+  __ bind(&true_label);
+  __ LoadRoot(result, Heap::kTrueValueRootIndex);
+
+  __ bind(&done);
 }


--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to