X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fv8%2Fsrc%2Fx64%2Fdebug-x64.cc;h=fe78e372145dd715bddef5c0028e77fb7e4d846b;hb=4a1a0bdd01eef90b0826a0e761d3379d3715c10f;hp=4703e42354746586dfc2558173d0563089800493;hpb=b1be5ca53587d23e7aeb77b26861fdc0a181ffd8;p=platform%2Fframework%2Fweb%2Fcrosswalk.git diff --git a/src/v8/src/x64/debug-x64.cc b/src/v8/src/x64/debug-x64.cc index 4703e42..fe78e37 100644 --- a/src/v8/src/x64/debug-x64.cc +++ b/src/v8/src/x64/debug-x64.cc @@ -23,7 +23,7 @@ bool BreakLocationIterator::IsDebugBreakAtReturn() { // CodeGenerator::VisitReturnStatement and VirtualFrame::Exit in codegen-x64.cc // for the precise return instructions sequence. void BreakLocationIterator::SetDebugBreakAtReturn() { - ASSERT(Assembler::kJSReturnSequenceLength >= Assembler::kCallSequenceLength); + DCHECK(Assembler::kJSReturnSequenceLength >= Assembler::kCallSequenceLength); rinfo()->PatchCodeWithCall( debug_info_->GetIsolate()->builtins()->Return_DebugBreak()->entry(), Assembler::kJSReturnSequenceLength - Assembler::kCallSequenceLength); @@ -40,20 +40,20 @@ void BreakLocationIterator::ClearDebugBreakAtReturn() { // A debug break in the frame exit code is identified by the JS frame exit code // having been patched with a call instruction. bool Debug::IsDebugBreakAtReturn(v8::internal::RelocInfo* rinfo) { - ASSERT(RelocInfo::IsJSReturn(rinfo->rmode())); + DCHECK(RelocInfo::IsJSReturn(rinfo->rmode())); return rinfo->IsPatchedReturnSequence(); } bool BreakLocationIterator::IsDebugBreakAtSlot() { - ASSERT(IsDebugBreakSlot()); + DCHECK(IsDebugBreakSlot()); // Check whether the debug break slot instructions have been patched. return rinfo()->IsPatchedDebugBreakSlotSequence(); } void BreakLocationIterator::SetDebugBreakAtSlot() { - ASSERT(IsDebugBreakSlot()); + DCHECK(IsDebugBreakSlot()); rinfo()->PatchCodeWithCall( debug_info_->GetIsolate()->builtins()->Slot_DebugBreak()->entry(), Assembler::kDebugBreakSlotLength - Assembler::kCallSequenceLength); @@ -61,7 +61,7 @@ void BreakLocationIterator::SetDebugBreakAtSlot() { void BreakLocationIterator::ClearDebugBreakAtSlot() { - ASSERT(IsDebugBreakSlot()); + DCHECK(IsDebugBreakSlot()); rinfo()->PatchCode(original_rinfo()->pc(), Assembler::kDebugBreakSlotLength); } @@ -86,13 +86,13 @@ static void Generate_DebugBreakCallHelper(MacroAssembler* masm, // Store the registers containing live values on the expression stack to // make sure that these are correctly updated during GC. Non object values // are stored as as two smis causing it to be untouched by GC. - ASSERT((object_regs & ~kJSCallerSaved) == 0); - ASSERT((non_object_regs & ~kJSCallerSaved) == 0); - ASSERT((object_regs & non_object_regs) == 0); + DCHECK((object_regs & ~kJSCallerSaved) == 0); + DCHECK((non_object_regs & ~kJSCallerSaved) == 0); + DCHECK((object_regs & non_object_regs) == 0); for (int i = 0; i < kNumJSCallerSaved; i++) { int r = JSCallerSavedCode(i); Register reg = { r }; - ASSERT(!reg.is(kScratchRegister)); + DCHECK(!reg.is(kScratchRegister)); if ((object_regs & (1 << r)) != 0) { __ Push(reg); } @@ -162,45 +162,35 @@ void DebugCodegen::GenerateCallICStubDebugBreak(MacroAssembler* masm) { void DebugCodegen::GenerateLoadICDebugBreak(MacroAssembler* masm) { // Register state for IC load call (from ic-x64.cc). - // ----------- S t a t e ------------- - // -- rax : receiver - // -- rcx : name - // ----------------------------------- - Generate_DebugBreakCallHelper(masm, rax.bit() | rcx.bit(), 0, false); + Register receiver = LoadIC::ReceiverRegister(); + Register name = LoadIC::NameRegister(); + Generate_DebugBreakCallHelper(masm, receiver.bit() | name.bit(), 0, false); } void DebugCodegen::GenerateStoreICDebugBreak(MacroAssembler* masm) { // Register state for IC store call (from ic-x64.cc). - // ----------- S t a t e ------------- - // -- rax : value - // -- rcx : name - // -- rdx : receiver - // ----------------------------------- + Register receiver = StoreIC::ReceiverRegister(); + Register name = StoreIC::NameRegister(); + Register value = StoreIC::ValueRegister(); Generate_DebugBreakCallHelper( - masm, rax.bit() | rcx.bit() | rdx.bit(), 0, false); + masm, receiver.bit() | name.bit() | value.bit(), 0, false); } void DebugCodegen::GenerateKeyedLoadICDebugBreak(MacroAssembler* masm) { // Register state for keyed IC load call (from ic-x64.cc). - // ----------- S t a t e ------------- - // -- rax : key - // -- rdx : receiver - // ----------------------------------- - Generate_DebugBreakCallHelper(masm, rax.bit() | rdx.bit(), 0, false); + GenerateLoadICDebugBreak(masm); } void DebugCodegen::GenerateKeyedStoreICDebugBreak(MacroAssembler* masm) { - // Register state for keyed IC load call (from ic-x64.cc). - // ----------- S t a t e ------------- - // -- rax : value - // -- rcx : key - // -- rdx : receiver - // ----------------------------------- + // Register state for keyed IC store call (from ic-x64.cc). + Register receiver = KeyedStoreIC::ReceiverRegister(); + Register name = KeyedStoreIC::NameRegister(); + Register value = KeyedStoreIC::ValueRegister(); Generate_DebugBreakCallHelper( - masm, rax.bit() | rcx.bit() | rdx.bit(), 0, false); + masm, receiver.bit() | name.bit() | value.bit(), 0, false); } @@ -265,7 +255,7 @@ void DebugCodegen::GenerateSlot(MacroAssembler* masm) { __ bind(&check_codesize); __ RecordDebugBreakSlot(); __ Nop(Assembler::kDebugBreakSlotLength); - ASSERT_EQ(Assembler::kDebugBreakSlotLength, + DCHECK_EQ(Assembler::kDebugBreakSlotLength, masm->SizeOfCodeGeneratedSince(&check_codesize)); }