OLD | NEW |
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 1446 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1457 bool Debug::IsSourceBreakStub(Code* code) { | 1457 bool Debug::IsSourceBreakStub(Code* code) { |
1458 CodeStub::Major major_key = CodeStub::GetMajorKey(code); | 1458 CodeStub::Major major_key = CodeStub::GetMajorKey(code); |
1459 return major_key == CodeStub::CallFunction; | 1459 return major_key == CodeStub::CallFunction; |
1460 } | 1460 } |
1461 | 1461 |
1462 | 1462 |
1463 // Check whether a code stub with the specified major key is a possible break | 1463 // Check whether a code stub with the specified major key is a possible break |
1464 // location. | 1464 // location. |
1465 bool Debug::IsBreakStub(Code* code) { | 1465 bool Debug::IsBreakStub(Code* code) { |
1466 CodeStub::Major major_key = CodeStub::GetMajorKey(code); | 1466 CodeStub::Major major_key = CodeStub::GetMajorKey(code); |
1467 return major_key == CodeStub::CallFunction || | 1467 return major_key == CodeStub::CallFunction; |
1468 major_key == CodeStub::StackCheck; | |
1469 } | 1468 } |
1470 | 1469 |
1471 | 1470 |
1472 // Find the builtin to use for invoking the debug break | 1471 // Find the builtin to use for invoking the debug break |
1473 Handle<Code> Debug::FindDebugBreak(Handle<Code> code, RelocInfo::Mode mode) { | 1472 Handle<Code> Debug::FindDebugBreak(Handle<Code> code, RelocInfo::Mode mode) { |
1474 // Find the builtin debug break function matching the calling convention | 1473 // Find the builtin debug break function matching the calling convention |
1475 // used by the call site. | 1474 // used by the call site. |
1476 if (code->is_inline_cache_stub()) { | 1475 if (code->is_inline_cache_stub()) { |
1477 switch (code->kind()) { | 1476 switch (code->kind()) { |
1478 case Code::CALL_IC: | 1477 case Code::CALL_IC: |
(...skipping 17 matching lines...) Expand all Loading... |
1496 default: | 1495 default: |
1497 UNREACHABLE(); | 1496 UNREACHABLE(); |
1498 } | 1497 } |
1499 } | 1498 } |
1500 if (RelocInfo::IsConstructCall(mode)) { | 1499 if (RelocInfo::IsConstructCall(mode)) { |
1501 Handle<Code> result = | 1500 Handle<Code> result = |
1502 Handle<Code>(Builtins::builtin(Builtins::ConstructCall_DebugBreak)); | 1501 Handle<Code>(Builtins::builtin(Builtins::ConstructCall_DebugBreak)); |
1503 return result; | 1502 return result; |
1504 } | 1503 } |
1505 if (code->kind() == Code::STUB) { | 1504 if (code->kind() == Code::STUB) { |
1506 ASSERT(code->major_key() == CodeStub::CallFunction || | 1505 ASSERT(code->major_key() == CodeStub::CallFunction); |
1507 code->major_key() == CodeStub::StackCheck); | |
1508 Handle<Code> result = | 1506 Handle<Code> result = |
1509 Handle<Code>(Builtins::builtin(Builtins::StubNoRegisters_DebugBreak)); | 1507 Handle<Code>(Builtins::builtin(Builtins::StubNoRegisters_DebugBreak)); |
1510 return result; | 1508 return result; |
1511 } | 1509 } |
1512 | 1510 |
1513 UNREACHABLE(); | 1511 UNREACHABLE(); |
1514 return Handle<Code>::null(); | 1512 return Handle<Code>::null(); |
1515 } | 1513 } |
1516 | 1514 |
1517 | 1515 |
(...skipping 1544 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3062 { | 3060 { |
3063 Locker locker; | 3061 Locker locker; |
3064 Debugger::CallMessageDispatchHandler(); | 3062 Debugger::CallMessageDispatchHandler(); |
3065 } | 3063 } |
3066 } | 3064 } |
3067 } | 3065 } |
3068 | 3066 |
3069 #endif // ENABLE_DEBUGGER_SUPPORT | 3067 #endif // ENABLE_DEBUGGER_SUPPORT |
3070 | 3068 |
3071 } } // namespace v8::internal | 3069 } } // namespace v8::internal |
OLD | NEW |