Chromium Code Reviews| Index: src/ia32/codegen-ia32.cc |
| =================================================================== |
| --- src/ia32/codegen-ia32.cc (revision 1977) |
| +++ src/ia32/codegen-ia32.cc (working copy) |
| @@ -115,6 +115,14 @@ |
| JumpTarget::set_compiling_deferred_code(false); |
| +#ifdef DEBUG |
|
iposva
2009/05/15 22:35:14
This moved up here to be able to stop before any c
|
| + if (strlen(FLAG_stop_at) > 0 && |
| + fun->name()->IsEqualTo(CStrVector(FLAG_stop_at))) { |
| + frame_->SpillAll(); |
| + __ int3(); |
| + } |
| +#endif |
| + |
| { |
| HistogramTimerScope codegen_timer(&Counters::code_generation); |
| CodeGenState state(this); |
| @@ -128,14 +136,6 @@ |
| allocator_->Initialize(); |
| frame_->Enter(); |
| -#ifdef DEBUG |
| - if (strlen(FLAG_stop_at) > 0 && |
| - fun->name()->IsEqualTo(CStrVector(FLAG_stop_at))) { |
| - frame_->SpillAll(); |
| - __ int3(); |
| - } |
| -#endif |
| - |
| // Allocate space for locals and initialize them. |
| frame_->AllocateStackSlots(scope_->num_stack_slots()); |
| // Initialize the function return target after the locals are set |
| @@ -4878,9 +4878,9 @@ |
| // successfully allocate a temporary byte register. |
| if (tmp.is_valid()) { |
| __ setcc(overflow, tmp.reg()); |
| - __ or_(Operand(value.reg()), tmp.reg()); |
| + __ or_(Operand(tmp.reg()), value.reg()); |
| + __ test(tmp.reg(), Immediate(kSmiTagMask)); |
| tmp.Unuse(); |
| - __ test(value.reg(), Immediate(kSmiTagMask)); |
| deferred->enter()->Branch(not_zero, &value, not_taken); |
| } else { // Otherwise we test separately for overflow and smi check. |
| deferred->enter()->Branch(overflow, &value, not_taken); |