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 28 matching lines...) Expand all Loading... |
39 static void Initialize(bool create_heap_objects); | 39 static void Initialize(bool create_heap_objects); |
40 static void TearDown(); | 40 static void TearDown(); |
41 | 41 |
42 // Creates a JavaScript Global Context with initial object graph. | 42 // Creates a JavaScript Global Context with initial object graph. |
43 // The returned value is a global handle casted to V8Environment*. | 43 // The returned value is a global handle casted to V8Environment*. |
44 static Handle<Context> CreateEnvironment( | 44 static Handle<Context> CreateEnvironment( |
45 Handle<Object> global_object, | 45 Handle<Object> global_object, |
46 v8::Handle<v8::ObjectTemplate> global_template, | 46 v8::Handle<v8::ObjectTemplate> global_template, |
47 v8::ExtensionConfiguration* extensions); | 47 v8::ExtensionConfiguration* extensions); |
48 | 48 |
| 49 // Detach the environment from its outer global object. |
| 50 static void DetachGlobal(Handle<Context> env); |
| 51 |
49 // Traverses the pointers for memory manangment. | 52 // Traverses the pointers for memory manangment. |
50 static void Iterate(ObjectVisitor* v); | 53 static void Iterate(ObjectVisitor* v); |
51 | 54 |
52 // Accessors for the native scripts cache. Used in lazy loading. | 55 // Accessors for the native scripts cache. Used in lazy loading. |
53 static Handle<String> NativesSourceLookup(int index); | 56 static Handle<String> NativesSourceLookup(int index); |
54 static bool NativesCacheLookup(Vector<const char> name, | 57 static bool NativesCacheLookup(Vector<const char> name, |
55 Handle<JSFunction>* handle); | 58 Handle<JSFunction>* handle); |
56 static void NativesCacheAdd(Vector<const char> name, Handle<JSFunction> fun); | 59 static void NativesCacheAdd(Vector<const char> name, Handle<JSFunction> fun); |
57 | 60 |
58 // Append code that needs fixup at the end of boot strapping. | 61 // Append code that needs fixup at the end of boot strapping. |
59 static void AddFixup(Code* code, MacroAssembler* masm); | 62 static void AddFixup(Code* code, MacroAssembler* masm); |
60 | 63 |
61 // Tells whether boostrapping is active. | 64 // Tells whether boostrapping is active. |
62 static bool IsActive(); | 65 static bool IsActive(); |
63 | 66 |
64 // Encoding/decoding support for fixup flags. | 67 // Encoding/decoding support for fixup flags. |
65 class FixupFlagsIsPCRelative: public BitField<bool, 0, 1> {}; | 68 class FixupFlagsIsPCRelative: public BitField<bool, 0, 1> {}; |
66 class FixupFlagsArgumentsCount: public BitField<uint32_t, 1, 32-1> {}; | 69 class FixupFlagsArgumentsCount: public BitField<uint32_t, 1, 32-1> {}; |
67 }; | 70 }; |
68 | 71 |
69 }} // namespace v8::internal | 72 }} // namespace v8::internal |
70 | 73 |
71 #endif // V8_BOOTSTRAPPER_H_ | 74 #endif // V8_BOOTSTRAPPER_H_ |
OLD | NEW |