| OLD | NEW | 
|     1 // Copyright (c) 2013, the Dart project authors.  Please see the AUTHORS file |     1 // Copyright (c) 2013, the Dart project authors.  Please see the AUTHORS file | 
|     2 // for details. All rights reserved. Use of this source code is governed by a |     2 // for details. All rights reserved. Use of this source code is governed by a | 
|     3 // BSD-style license that can be found in the LICENSE file. |     3 // BSD-style license that can be found in the LICENSE file. | 
|     4  |     4  | 
|     5 #include "vm/globals.h"  // Needed here to get TARGET_ARCH_X64. |     5 #include "vm/globals.h"  // Needed here to get TARGET_ARCH_X64. | 
|     6 #if defined(TARGET_ARCH_X64) |     6 #if defined(TARGET_ARCH_X64) | 
|     7  |     7  | 
|     8 #include "vm/intermediate_language.h" |     8 #include "vm/intermediate_language.h" | 
|     9  |     9  | 
|    10 #include "vm/compiler.h" |    10 #include "vm/compiler.h" | 
| (...skipping 2546 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  2557  |  2557  | 
|  2558  |  2558  | 
|  2559 LocationSummary* CatchBlockEntryInstr::MakeLocationSummary(Zone* zone, |  2559 LocationSummary* CatchBlockEntryInstr::MakeLocationSummary(Zone* zone, | 
|  2560                                                            bool opt) const { |  2560                                                            bool opt) const { | 
|  2561   UNREACHABLE(); |  2561   UNREACHABLE(); | 
|  2562   return NULL; |  2562   return NULL; | 
|  2563 } |  2563 } | 
|  2564  |  2564  | 
|  2565  |  2565  | 
|  2566 void CatchBlockEntryInstr::EmitNativeCode(FlowGraphCompiler* compiler) { |  2566 void CatchBlockEntryInstr::EmitNativeCode(FlowGraphCompiler* compiler) { | 
|  2567   // Ensure space for patching return sites for lazy deopt. |  | 
|  2568   if (!FLAG_precompiled_mode && compiler->is_optimizing()) { |  | 
|  2569     __ nop(ShortCallPattern::pattern_length_in_bytes()); |  | 
|  2570   } |  | 
|  2571   __ Bind(compiler->GetJumpLabel(this)); |  2567   __ Bind(compiler->GetJumpLabel(this)); | 
|  2572   compiler->AddExceptionHandler(catch_try_index(), |  2568   compiler->AddExceptionHandler(catch_try_index(), | 
|  2573                                 try_index(), |  2569                                 try_index(), | 
|  2574                                 compiler->assembler()->CodeSize(), |  2570                                 compiler->assembler()->CodeSize(), | 
|  2575                                 catch_handler_types_, |  2571                                 catch_handler_types_, | 
|  2576                                 needs_stacktrace()); |  2572                                 needs_stacktrace()); | 
|  2577   // On lazy deoptimization we patch the optimized code here to enter the |  2573   // On lazy deoptimization we patch the optimized code here to enter the | 
|  2578   // deoptimization stub. |  2574   // deoptimization stub. | 
|  2579   const intptr_t deopt_id = Thread::ToDeoptAfter(GetDeoptId()); |  2575   const intptr_t deopt_id = Thread::ToDeoptAfter(GetDeoptId()); | 
|  2580   if (compiler->is_optimizing()) { |  2576   if (compiler->is_optimizing()) { | 
| (...skipping 4022 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  6603   __ Drop(1); |  6599   __ Drop(1); | 
|  6604   __ popq(result); |  6600   __ popq(result); | 
|  6605 } |  6601 } | 
|  6606  |  6602  | 
|  6607  |  6603  | 
|  6608 }  // namespace dart |  6604 }  // namespace dart | 
|  6609  |  6605  | 
|  6610 #undef __ |  6606 #undef __ | 
|  6611  |  6607  | 
|  6612 #endif  // defined TARGET_ARCH_X64 |  6608 #endif  // defined TARGET_ARCH_X64 | 
| OLD | NEW |