Index: src/full-codegen.cc |
=================================================================== |
--- src/full-codegen.cc (revision 8228) |
+++ src/full-codegen.cc (working copy) |
@@ -441,7 +441,7 @@ |
// For simplicity we always test the accumulator register. |
__ Move(result_register(), reg); |
codegen()->PrepareForBailoutBeforeSplit(TOS_REG, false, NULL, NULL); |
- codegen()->DoTest(true_label_, false_label_, fall_through_); |
+ codegen()->DoTest(condition_, true_label_, false_label_, fall_through_); |
} |
@@ -463,7 +463,7 @@ |
// For simplicity we always test the accumulator register. |
__ pop(result_register()); |
codegen()->PrepareForBailoutBeforeSplit(TOS_REG, false, NULL, NULL); |
- codegen()->DoTest(true_label_, false_label_, fall_through_); |
+ codegen()->DoTest(condition_, true_label_, false_label_, fall_through_); |
} |
@@ -744,9 +744,9 @@ |
Label discard, restore; |
PrepareForBailoutBeforeSplit(TOS_REG, false, NULL, NULL); |
if (is_logical_and) { |
- DoTest(&discard, &restore, &restore); |
+ DoTest(expr, &discard, &restore, &restore); |
fschneider
2011/06/10 09:18:18
Shouldn't the test of the left subexpressions get
Kevin Millikin (Chromium)
2011/06/10 09:35:06
I think you could do it either way (as long as the
Sven Panne
2011/06/14 08:04:48
Done.
|
} else { |
- DoTest(&restore, &discard, &restore); |
+ DoTest(expr, &restore, &discard, &restore); |
} |
__ bind(&restore); |
__ pop(result_register()); |
@@ -763,9 +763,9 @@ |
Label discard; |
PrepareForBailoutBeforeSplit(TOS_REG, false, NULL, NULL); |
if (is_logical_and) { |
- DoTest(&discard, &done, &discard); |
+ DoTest(expr, &discard, &done, &discard); |
} else { |
- DoTest(&done, &discard, &discard); |
+ DoTest(expr, &done, &discard, &discard); |
} |
__ bind(&discard); |
__ Drop(1); |