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

Side by Side Diff: src/debug.cc

Issue 99120: Inline the inobject property case for named property loads. (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: '' Created 11 years, 8 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 2006-2008 the V8 project authors. All rights reserved. 1 // Copyright 2006-2008 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 359 matching lines...) Expand 10 before | Expand all | Expand 10 after
370 // Patch the code to invoke the builtin debug break function matching the 370 // Patch the code to invoke the builtin debug break function matching the
371 // calling convention used by the call site. 371 // calling convention used by the call site.
372 Handle<Code> dbgbrk_code(Debug::FindDebugBreak(code, mode)); 372 Handle<Code> dbgbrk_code(Debug::FindDebugBreak(code, mode));
373 rinfo()->set_target_address(dbgbrk_code->entry()); 373 rinfo()->set_target_address(dbgbrk_code->entry());
374 374
375 // For stubs that refer back to an inlined version clear the cached map for 375 // For stubs that refer back to an inlined version clear the cached map for
376 // the inlined case to always go through the IC. As long as the break point 376 // the inlined case to always go through the IC. As long as the break point
377 // is set the patching performed by the runtime system will take place in 377 // is set the patching performed by the runtime system will take place in
378 // the code copy and will therefore have no effect on the running code 378 // the code copy and will therefore have no effect on the running code
379 // keeping it from using the inlined code. 379 // keeping it from using the inlined code.
380 if (code->is_keyed_load_stub() && KeyedLoadIC::HasInlinedVersion(pc())) { 380 if (code->is_keyed_load_stub()) KeyedLoadIC::ClearInlinedVersion(pc());
381 KeyedLoadIC::ClearInlinedVersion(pc());
382 }
383 } 381 }
384 } 382 }
385 383
386 384
387 void BreakLocationIterator::ClearDebugBreakAtIC() { 385 void BreakLocationIterator::ClearDebugBreakAtIC() {
388 // Patch the code to the original invoke. 386 // Patch the code to the original invoke.
389 rinfo()->set_target_address(original_rinfo()->target_address()); 387 rinfo()->set_target_address(original_rinfo()->target_address());
390 } 388 }
391 389
392 390
(...skipping 1815 matching lines...) Expand 10 before | Expand all | Expand 10 after
2208 2206
2209 2207
2210 void LockingCommandMessageQueue::Clear() { 2208 void LockingCommandMessageQueue::Clear() {
2211 ScopedLock sl(lock_); 2209 ScopedLock sl(lock_);
2212 queue_.Clear(); 2210 queue_.Clear();
2213 } 2211 }
2214 2212
2215 #endif // ENABLE_DEBUGGER_SUPPORT 2213 #endif // ENABLE_DEBUGGER_SUPPORT
2216 2214
2217 } } // namespace v8::internal 2215 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/codegen.h ('k') | src/ia32/codegen-ia32.cc » ('j') | src/ia32/ic-ia32.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698