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

Side by Side Diff: src/debug.cc

Issue 2835035: Create handle scope in BreakLocationIterator::ClearDebugBreakAtIC (Closed)
Patch Set: . Created 10 years, 5 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 454 matching lines...) Expand 10 before | Expand all | Expand 10 after
465 } 465 }
466 } 466 }
467 467
468 468
469 void BreakLocationIterator::ClearDebugBreakAtIC() { 469 void BreakLocationIterator::ClearDebugBreakAtIC() {
470 // Patch the code to the original invoke. 470 // Patch the code to the original invoke.
471 rinfo()->set_target_address(original_rinfo()->target_address()); 471 rinfo()->set_target_address(original_rinfo()->target_address());
472 472
473 RelocInfo::Mode mode = rmode(); 473 RelocInfo::Mode mode = rmode();
474 if (RelocInfo::IsCodeTarget(mode)) { 474 if (RelocInfo::IsCodeTarget(mode)) {
475 AssertNoAllocation nogc;
475 Address target = original_rinfo()->target_address(); 476 Address target = original_rinfo()->target_address();
476 Handle<Code> code(Code::GetCodeFromTargetAddress(target)); 477 Code* code = Code::GetCodeFromTargetAddress(target);
477 478
478 // Restore the inlined version of keyed stores to get back to the 479 // Restore the inlined version of keyed stores to get back to the
479 // fast case. We need to patch back the keyed store because no 480 // fast case. We need to patch back the keyed store because no
480 // patching happens when running normally. For keyed loads, the 481 // patching happens when running normally. For keyed loads, the
481 // map check will get patched back when running normally after ICs 482 // map check will get patched back when running normally after ICs
482 // have been cleared at GC. 483 // have been cleared at GC.
483 if (code->is_keyed_store_stub()) KeyedStoreIC::RestoreInlinedVersion(pc()); 484 if (code->is_keyed_store_stub()) KeyedStoreIC::RestoreInlinedVersion(pc());
484 } 485 }
485 } 486 }
486 487
(...skipping 2452 matching lines...) Expand 10 before | Expand all | Expand 10 after
2939 { 2940 {
2940 Locker locker; 2941 Locker locker;
2941 Debugger::CallMessageDispatchHandler(); 2942 Debugger::CallMessageDispatchHandler();
2942 } 2943 }
2943 } 2944 }
2944 } 2945 }
2945 2946
2946 #endif // ENABLE_DEBUGGER_SUPPORT 2947 #endif // ENABLE_DEBUGGER_SUPPORT
2947 2948
2948 } } // namespace v8::internal 2949 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698