OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_MEMORY_H_ | 5 #ifndef V8_MEMORY_H_ |
6 #define V8_MEMORY_H_ | 6 #define V8_MEMORY_H_ |
7 | 7 |
8 namespace v8 { | 8 namespace v8 { |
9 namespace internal { | 9 namespace internal { |
10 | 10 |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
57 return *reinterpret_cast<Address*>(addr); | 57 return *reinterpret_cast<Address*>(addr); |
58 } | 58 } |
59 | 59 |
60 static Object*& Object_at(Address addr) { | 60 static Object*& Object_at(Address addr) { |
61 return *reinterpret_cast<Object**>(addr); | 61 return *reinterpret_cast<Object**>(addr); |
62 } | 62 } |
63 | 63 |
64 static Handle<Object>& Object_Handle_at(Address addr) { | 64 static Handle<Object>& Object_Handle_at(Address addr) { |
65 return *reinterpret_cast<Handle<Object>*>(addr); | 65 return *reinterpret_cast<Handle<Object>*>(addr); |
66 } | 66 } |
| 67 |
| 68 static bool IsAddressInRange(Address base, Address address, uint32_t size) { |
| 69 uintptr_t numeric_base = reinterpret_cast<uintptr_t>(base); |
| 70 uintptr_t numeric_address = reinterpret_cast<uintptr_t>(address); |
| 71 return numeric_base <= numeric_address && |
| 72 numeric_address < numeric_base + size; |
| 73 } |
67 }; | 74 }; |
68 | 75 |
69 } // namespace internal | 76 } // namespace internal |
70 } // namespace v8 | 77 } // namespace v8 |
71 | 78 |
72 #endif // V8_MEMORY_H_ | 79 #endif // V8_MEMORY_H_ |
OLD | NEW |