OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 362 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
373 // was called. | 373 // was called. |
374 ASSERT(!call->return_is_recorded_); | 374 ASSERT(!call->return_is_recorded_); |
375 call->return_is_recorded_ = true; | 375 call->return_is_recorded_ = true; |
376 #endif | 376 #endif |
377 } | 377 } |
378 | 378 |
379 | 379 |
380 void FullCodeGenerator::PrepareForBailoutForId(unsigned id, State state) { | 380 void FullCodeGenerator::PrepareForBailoutForId(unsigned id, State state) { |
381 // There's no need to prepare this code for bailouts from already optimized | 381 // There's no need to prepare this code for bailouts from already optimized |
382 // code or code that can't be optimized. | 382 // code or code that can't be optimized. |
383 if (!FLAG_deopt || !info_->HasDeoptimizationSupport()) return; | 383 if (!info_->HasDeoptimizationSupport()) return; |
384 unsigned pc_and_state = | 384 unsigned pc_and_state = |
385 StateField::encode(state) | PcField::encode(masm_->pc_offset()); | 385 StateField::encode(state) | PcField::encode(masm_->pc_offset()); |
386 BailoutEntry entry = { id, pc_and_state }; | 386 BailoutEntry entry = { id, pc_and_state }; |
387 #ifdef DEBUG | 387 #ifdef DEBUG |
388 if (FLAG_enable_slow_asserts) { | 388 if (FLAG_enable_slow_asserts) { |
389 // Assert that we don't have multiple bailout entries for the same node. | 389 // Assert that we don't have multiple bailout entries for the same node. |
390 for (int i = 0; i < bailout_entries_.length(); i++) { | 390 for (int i = 0; i < bailout_entries_.length(); i++) { |
391 if (bailout_entries_.at(i).id == entry.id) { | 391 if (bailout_entries_.at(i).id == entry.id) { |
392 AstPrinter printer; | 392 AstPrinter printer; |
393 PrintF("%s", printer.PrintProgram(info_->function())); | 393 PrintF("%s", printer.PrintProgram(info_->function())); |
(...skipping 932 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1326 } | 1326 } |
1327 | 1327 |
1328 return false; | 1328 return false; |
1329 } | 1329 } |
1330 | 1330 |
1331 | 1331 |
1332 #undef __ | 1332 #undef __ |
1333 | 1333 |
1334 | 1334 |
1335 } } // namespace v8::internal | 1335 } } // namespace v8::internal |
OLD | NEW |