Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(359)

Side by Side Diff: src/ia32/cfg-ia32.cc

Issue 162007: Fix the debugger in multipass mode by introducing phantome... (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: '' Created 11 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2009 the V8 project authors. All rights reserved. 1 // Copyright 2009 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 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
106 __ CallRuntime(Runtime::kTraceExit, 1); 106 __ CallRuntime(Runtime::kTraceExit, 1);
107 } 107 }
108 __ RecordJSReturn(); 108 __ RecordJSReturn();
109 __ mov(esp, ebp); 109 __ mov(esp, ebp);
110 __ pop(ebp); 110 __ pop(ebp);
111 int count = CfgGlobals::current()->fun()->scope()->num_parameters(); 111 int count = CfgGlobals::current()->fun()->scope()->num_parameters();
112 __ ret((count + 1) * kPointerSize); 112 __ ret((count + 1) * kPointerSize);
113 } 113 }
114 114
115 115
116 void PositionInstr::Compile(MacroAssembler* masm) {
117 if (FLAG_debug_info && pos_ != RelocInfo::kNoPosition) {
118 __ RecordStatementPosition(pos_);
119 __ RecordPosition(pos_);
120 }
121 }
122
123
116 void BinaryOpInstr::Compile(MacroAssembler* masm) { 124 void BinaryOpInstr::Compile(MacroAssembler* masm) {
117 // The right-hand value should not be on the stack---if it is a 125 // The right-hand value should not be on the stack---if it is a
118 // compiler-generated temporary it is in the accumulator. 126 // compiler-generated temporary it is in the accumulator.
119 ASSERT(!val1_->is_on_stack()); 127 ASSERT(!val1_->is_on_stack());
120 128
121 Comment cmnt(masm, "[ BinaryOpInstr"); 129 Comment cmnt(masm, "[ BinaryOpInstr");
122 // We can overwrite one of the operands if it is a temporary. 130 // We can overwrite one of the operands if it is a temporary.
123 OverwriteMode mode = NO_OVERWRITE; 131 OverwriteMode mode = NO_OVERWRITE;
124 if (val0_->is_temporary()) { 132 if (val0_->is_temporary()) {
125 mode = OVERWRITE_LEFT; 133 mode = OVERWRITE_LEFT;
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
227 case NOWHERE: 235 case NOWHERE:
228 UNREACHABLE(); 236 UNREACHABLE();
229 break; 237 break;
230 } 238 }
231 } 239 }
232 240
233 241
234 #undef __ 242 #undef __
235 243
236 } } // namespace v8::internal 244 } } // namespace v8::internal
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698