OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 11006 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11017 | 11017 |
11018 // Return element value from indexed interceptor. | 11018 // Return element value from indexed interceptor. |
11019 // args[0]: object | 11019 // args[0]: object |
11020 // args[1]: index | 11020 // args[1]: index |
11021 RUNTIME_FUNCTION(MaybeObject*, Runtime_DebugIndexedInterceptorElementValue) { | 11021 RUNTIME_FUNCTION(MaybeObject*, Runtime_DebugIndexedInterceptorElementValue) { |
11022 HandleScope scope(isolate); | 11022 HandleScope scope(isolate); |
11023 ASSERT(args.length() == 2); | 11023 ASSERT(args.length() == 2); |
11024 CONVERT_ARG_HANDLE_CHECKED(JSObject, obj, 0); | 11024 CONVERT_ARG_HANDLE_CHECKED(JSObject, obj, 0); |
11025 RUNTIME_ASSERT(obj->HasIndexedInterceptor()); | 11025 RUNTIME_ASSERT(obj->HasIndexedInterceptor()); |
11026 CONVERT_NUMBER_CHECKED(uint32_t, index, Uint32, args[1]); | 11026 CONVERT_NUMBER_CHECKED(uint32_t, index, Uint32, args[1]); |
11027 | 11027 Handle<Object> result = JSObject::GetElementWithInterceptor(obj, obj, index); |
11028 return obj->GetElementWithInterceptor(*obj, index); | 11028 RETURN_IF_EMPTY_HANDLE(isolate, result); |
| 11029 return *result; |
11029 } | 11030 } |
11030 | 11031 |
11031 | 11032 |
11032 RUNTIME_FUNCTION(MaybeObject*, Runtime_CheckExecutionState) { | 11033 RUNTIME_FUNCTION(MaybeObject*, Runtime_CheckExecutionState) { |
11033 SealHandleScope shs(isolate); | 11034 SealHandleScope shs(isolate); |
11034 ASSERT(args.length() >= 1); | 11035 ASSERT(args.length() >= 1); |
11035 CONVERT_NUMBER_CHECKED(int, break_id, Int32, args[0]); | 11036 CONVERT_NUMBER_CHECKED(int, break_id, Int32, args[0]); |
11036 // Check that the break id is valid. | 11037 // Check that the break id is valid. |
11037 if (isolate->debug()->break_id() == 0 || | 11038 if (isolate->debug()->break_id() == 0 || |
11038 break_id != isolate->debug()->break_id()) { | 11039 break_id != isolate->debug()->break_id()) { |
(...skipping 4059 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
15098 // Handle last resort GC and make sure to allow future allocations | 15099 // Handle last resort GC and make sure to allow future allocations |
15099 // to grow the heap without causing GCs (if possible). | 15100 // to grow the heap without causing GCs (if possible). |
15100 isolate->counters()->gc_last_resort_from_js()->Increment(); | 15101 isolate->counters()->gc_last_resort_from_js()->Increment(); |
15101 isolate->heap()->CollectAllGarbage(Heap::kNoGCFlags, | 15102 isolate->heap()->CollectAllGarbage(Heap::kNoGCFlags, |
15102 "Runtime::PerformGC"); | 15103 "Runtime::PerformGC"); |
15103 } | 15104 } |
15104 } | 15105 } |
15105 | 15106 |
15106 | 15107 |
15107 } } // namespace v8::internal | 15108 } } // namespace v8::internal |
OLD | NEW |