| OLD | NEW | 
|---|
| 1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 #include "src/compiler/code-generator.h" | 5 #include "src/compiler/code-generator.h" | 
| 6 | 6 | 
| 7 #include "src/compiler/code-generator-impl.h" | 7 #include "src/compiler/code-generator-impl.h" | 
| 8 #include "src/compiler/gap-resolver.h" | 8 #include "src/compiler/gap-resolver.h" | 
| 9 #include "src/compiler/node-matchers.h" | 9 #include "src/compiler/node-matchers.h" | 
| 10 #include "src/compiler/osr.h" | 10 #include "src/compiler/osr.h" | 
| (...skipping 567 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 578       Register func = i.InputRegister(0); | 578       Register func = i.InputRegister(0); | 
| 579       if (FLAG_debug_code) { | 579       if (FLAG_debug_code) { | 
| 580         // Check the function's context matches the context argument. | 580         // Check the function's context matches the context argument. | 
| 581         __ cmpp(rsi, FieldOperand(func, JSFunction::kContextOffset)); | 581         __ cmpp(rsi, FieldOperand(func, JSFunction::kContextOffset)); | 
| 582         __ Assert(equal, kWrongFunctionContext); | 582         __ Assert(equal, kWrongFunctionContext); | 
| 583       } | 583       } | 
| 584       __ Call(FieldOperand(func, JSFunction::kCodeEntryOffset)); | 584       __ Call(FieldOperand(func, JSFunction::kCodeEntryOffset)); | 
| 585       RecordCallPosition(instr); | 585       RecordCallPosition(instr); | 
| 586       break; | 586       break; | 
| 587     } | 587     } | 
|  | 588     case kArchLazyBailout: { | 
|  | 589       EnsureSpaceForLazyDeopt(); | 
|  | 590       RecordCallPosition(instr); | 
|  | 591       break; | 
|  | 592     } | 
| 588     case kArchTailCallJSFunction: { | 593     case kArchTailCallJSFunction: { | 
| 589       Register func = i.InputRegister(0); | 594       Register func = i.InputRegister(0); | 
| 590       if (FLAG_debug_code) { | 595       if (FLAG_debug_code) { | 
| 591         // Check the function's context matches the context argument. | 596         // Check the function's context matches the context argument. | 
| 592         __ cmpp(rsi, FieldOperand(func, JSFunction::kContextOffset)); | 597         __ cmpp(rsi, FieldOperand(func, JSFunction::kContextOffset)); | 
| 593         __ Assert(equal, kWrongFunctionContext); | 598         __ Assert(equal, kWrongFunctionContext); | 
| 594       } | 599       } | 
| 595       AssembleDeconstructActivationRecord(); | 600       AssembleDeconstructActivationRecord(); | 
| 596       __ jmp(FieldOperand(func, JSFunction::kCodeEntryOffset)); | 601       __ jmp(FieldOperand(func, JSFunction::kCodeEntryOffset)); | 
| 597       break; | 602       break; | 
| (...skipping 1214 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 1812     int padding_size = last_lazy_deopt_pc_ + space_needed - current_pc; | 1817     int padding_size = last_lazy_deopt_pc_ + space_needed - current_pc; | 
| 1813     __ Nop(padding_size); | 1818     __ Nop(padding_size); | 
| 1814   } | 1819   } | 
| 1815 } | 1820 } | 
| 1816 | 1821 | 
| 1817 #undef __ | 1822 #undef __ | 
| 1818 | 1823 | 
| 1819 }  // namespace compiler | 1824 }  // namespace compiler | 
| 1820 }  // namespace internal | 1825 }  // namespace internal | 
| 1821 }  // namespace v8 | 1826 }  // namespace v8 | 
| OLD | NEW | 
|---|