| Index: src/hydrogen-instructions.cc | 
| diff --git a/src/hydrogen-instructions.cc b/src/hydrogen-instructions.cc | 
| index bc7b2ce3b5c288c57bae395ad296022ebf70ef4f..0f28c31e397249551b81ab28a75099234785b698 100644 | 
| --- a/src/hydrogen-instructions.cc | 
| +++ b/src/hydrogen-instructions.cc | 
| @@ -783,6 +783,9 @@ void HInstruction::Verify() { | 
|  | 
| bool HInstruction::CanDeoptimize() { | 
| // TODO(titzer): make this a virtual method? | 
| +  // TODO(all): Some of these may be incorrect, since any method that can | 
| +  // collect can provoke lazy deoptimization. Methods like CallNew can | 
| +  // certainly do that. | 
| switch (opcode()) { | 
| case HValue::kAbnormalExit: | 
| case HValue::kAccessArgumentsAt: | 
| @@ -796,7 +799,6 @@ bool HInstruction::CanDeoptimize() { | 
| case HValue::kCallNew: | 
| case HValue::kCallNewArray: | 
| case HValue::kCallStub: | 
| -    case HValue::kCallWithDescriptor: | 
| case HValue::kCapturedObject: | 
| case HValue::kClassOfTestAndBranch: | 
| case HValue::kCompareGeneric: | 
| @@ -863,6 +865,7 @@ bool HInstruction::CanDeoptimize() { | 
| case HValue::kBranch: | 
| case HValue::kCallJSFunction: | 
| case HValue::kCallRuntime: | 
| +    case HValue::kCallWithDescriptor: | 
| case HValue::kChange: | 
| case HValue::kCheckHeapObject: | 
| case HValue::kCheckInstanceType: | 
|  |