| OLD | NEW | 
|     1 // Copyright 2012 the V8 project authors. All rights reserved. |     1 // Copyright 2012 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/v8.h" |     5 #include "src/v8.h" | 
|     6  |     6  | 
|     7 #if V8_TARGET_ARCH_MIPS64 |     7 #if V8_TARGET_ARCH_MIPS64 | 
|     8  |     8  | 
|     9 // Note on Mips implementation: |     9 // Note on Mips implementation: | 
|    10 // |    10 // | 
| (...skipping 418 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|   429     // Add a label for checking the size of the code used for returning. |   429     // Add a label for checking the size of the code used for returning. | 
|   430     Label check_exit_codesize; |   430     Label check_exit_codesize; | 
|   431     masm_->bind(&check_exit_codesize); |   431     masm_->bind(&check_exit_codesize); | 
|   432 #endif |   432 #endif | 
|   433     // Make sure that the constant pool is not emitted inside of the return |   433     // Make sure that the constant pool is not emitted inside of the return | 
|   434     // sequence. |   434     // sequence. | 
|   435     { Assembler::BlockTrampolinePoolScope block_trampoline_pool(masm_); |   435     { Assembler::BlockTrampolinePoolScope block_trampoline_pool(masm_); | 
|   436       // Here we use masm_-> instead of the __ macro to avoid the code coverage |   436       // Here we use masm_-> instead of the __ macro to avoid the code coverage | 
|   437       // tool from instrumenting as we rely on the code size here. |   437       // tool from instrumenting as we rely on the code size here. | 
|   438       int32_t sp_delta = (info_->scope()->num_parameters() + 1) * kPointerSize; |   438       int32_t sp_delta = (info_->scope()->num_parameters() + 1) * kPointerSize; | 
|   439       CodeGenerator::RecordPositions(masm_, function()->end_position() - 1); |   439       if (function()->end_position() != RelocInfo::kNoPosition) { | 
 |   440         CodeGenerator::RecordPositions(masm_, function()->end_position() - 1); | 
 |   441       } | 
|   440       __ RecordJSReturn(); |   442       __ RecordJSReturn(); | 
|   441       masm_->mov(sp, fp); |   443       masm_->mov(sp, fp); | 
|   442       int no_frame_start = masm_->pc_offset(); |   444       int no_frame_start = masm_->pc_offset(); | 
|   443       masm_->MultiPop(static_cast<RegList>(fp.bit() | ra.bit())); |   445       masm_->MultiPop(static_cast<RegList>(fp.bit() | ra.bit())); | 
|   444       masm_->Daddu(sp, sp, Operand(sp_delta)); |   446       masm_->Daddu(sp, sp, Operand(sp_delta)); | 
|   445       masm_->Jump(ra); |   447       masm_->Jump(ra); | 
|   446       info_->AddNoFrameRange(no_frame_start, masm_->pc_offset()); |   448       info_->AddNoFrameRange(no_frame_start, masm_->pc_offset()); | 
|   447     } |   449     } | 
|   448  |   450  | 
|   449 #ifdef DEBUG |   451 #ifdef DEBUG | 
| (...skipping 4833 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  5283       Assembler::target_address_at(pc_immediate_load_address)) == |  5285       Assembler::target_address_at(pc_immediate_load_address)) == | 
|  5284          reinterpret_cast<uint64_t>( |  5286          reinterpret_cast<uint64_t>( | 
|  5285              isolate->builtins()->OsrAfterStackCheck()->entry())); |  5287              isolate->builtins()->OsrAfterStackCheck()->entry())); | 
|  5286   return OSR_AFTER_STACK_CHECK; |  5288   return OSR_AFTER_STACK_CHECK; | 
|  5287 } |  5289 } | 
|  5288  |  5290  | 
|  5289  |  5291  | 
|  5290 } }  // namespace v8::internal |  5292 } }  // namespace v8::internal | 
|  5291  |  5293  | 
|  5292 #endif  // V8_TARGET_ARCH_MIPS64 |  5294 #endif  // V8_TARGET_ARCH_MIPS64 | 
| OLD | NEW |