Fix crash bug in ARM codegenerator by adding another special case for

generating code after a call to LoadConditionAndSpill.

This crash is hit on www.rightmove.co.uk when using the ARM
codegenerator.
Review URL: http://codereview.chromium.org/149351

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2400 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
ager@chromium.org 2009-07-08 22:05:06 +00:00
parent 0be6a72cc1
commit 13bf328e19

View File

@ -3615,7 +3615,10 @@ void CodeGenerator::VisitUnaryOperation(UnaryOperation* node) {
false_target(),
true_target(),
true);
cc_reg_ = NegateCondition(cc_reg_);
// LoadConditionAndSpill might emit only unconditional jumps to
// the targets in which case cc_reg_ is not set. When that
// happens, don't attempt to negate the condition.
if (has_cc()) cc_reg_ = NegateCondition(cc_reg_);
} else if (op == Token::DELETE) {
Property* property = node->expression()->AsProperty();