| 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 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 72 int deopt_entry_count, | 72 int deopt_entry_count, |
| 73 PretenureFlag pretenure); | 73 PretenureFlag pretenure); |
| 74 Handle<DeoptimizationOutputData> NewDeoptimizationOutputData( | 74 Handle<DeoptimizationOutputData> NewDeoptimizationOutputData( |
| 75 int deopt_entry_count, | 75 int deopt_entry_count, |
| 76 PretenureFlag pretenure); | 76 PretenureFlag pretenure); |
| 77 // Allocates a pre-tenured empty AccessorPair. | 77 // Allocates a pre-tenured empty AccessorPair. |
| 78 Handle<AccessorPair> NewAccessorPair(); | 78 Handle<AccessorPair> NewAccessorPair(); |
| 79 | 79 |
| 80 Handle<TypeFeedbackInfo> NewTypeFeedbackInfo(); | 80 Handle<TypeFeedbackInfo> NewTypeFeedbackInfo(); |
| 81 | 81 |
| 82 Handle<String> LookupUtf8Symbol(Vector<const char> str); | 82 Handle<String> InternalizeUtf8String(Vector<const char> str); |
| 83 Handle<String> LookupUtf8Symbol(const char* str) { | 83 Handle<String> InternalizeUtf8String(const char* str) { |
| 84 return LookupUtf8Symbol(CStrVector(str)); | 84 return InternalizeUtf8String(CStrVector(str)); |
| 85 } | 85 } |
| 86 Handle<String> LookupSymbol(Handle<String> str); | 86 Handle<String> InternalizeString(Handle<String> str); |
| 87 Handle<String> LookupOneByteSymbol(Vector<const uint8_t> str); | 87 Handle<String> InternalizeOneByteString(Vector<const uint8_t> str); |
| 88 Handle<String> LookupOneByteSymbol(Handle<SeqOneByteString>, | 88 Handle<String> InternalizeOneByteString(Handle<SeqOneByteString>, |
| 89 int from, | 89 int from, |
| 90 int length); | 90 int length); |
| 91 Handle<String> LookupTwoByteSymbol(Vector<const uc16> str); | 91 Handle<String> InternalizeTwoByteString(Vector<const uc16> str); |
| 92 | 92 |
| 93 | 93 |
| 94 // String creation functions. Most of the string creation functions take | 94 // String creation functions. Most of the string creation functions take |
| 95 // a Heap::PretenureFlag argument to optionally request that they be | 95 // a Heap::PretenureFlag argument to optionally request that they be |
| 96 // allocated in the old generation. The pretenure flag defaults to | 96 // allocated in the old generation. The pretenure flag defaults to |
| 97 // DONT_TENURE. | 97 // DONT_TENURE. |
| 98 // | 98 // |
| 99 // Creates a new String object. There are two String encodings: ASCII and | 99 // Creates a new String object. There are two String encodings: ASCII and |
| 100 // two byte. One should choose between the three string factory functions | 100 // two byte. One should choose between the three string factory functions |
| 101 // based on the encoding of the string buffer that the string is | 101 // based on the encoding of the string buffer that the string is |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 188 // Create a 'with' context. | 188 // Create a 'with' context. |
| 189 Handle<Context> NewWithContext(Handle<JSFunction> function, | 189 Handle<Context> NewWithContext(Handle<JSFunction> function, |
| 190 Handle<Context> previous, | 190 Handle<Context> previous, |
| 191 Handle<JSObject> extension); | 191 Handle<JSObject> extension); |
| 192 | 192 |
| 193 // Create a block context. | 193 // Create a block context. |
| 194 Handle<Context> NewBlockContext(Handle<JSFunction> function, | 194 Handle<Context> NewBlockContext(Handle<JSFunction> function, |
| 195 Handle<Context> previous, | 195 Handle<Context> previous, |
| 196 Handle<ScopeInfo> scope_info); | 196 Handle<ScopeInfo> scope_info); |
| 197 | 197 |
| 198 // Return the Symbol matching the passed in string. | 198 // Return the internalized version of the passed in string. |
| 199 Handle<String> SymbolFromString(Handle<String> value); | 199 Handle<String> InternalizedStringFromString(Handle<String> value); |
| 200 | 200 |
| 201 // Allocate a new struct. The struct is pretenured (allocated directly in | 201 // Allocate a new struct. The struct is pretenured (allocated directly in |
| 202 // the old generation). | 202 // the old generation). |
| 203 Handle<Struct> NewStruct(InstanceType type); | 203 Handle<Struct> NewStruct(InstanceType type); |
| 204 | 204 |
| 205 Handle<AccessorInfo> NewAccessorInfo(); | 205 Handle<AccessorInfo> NewAccessorInfo(); |
| 206 | 206 |
| 207 Handle<Script> NewScript(Handle<String> source); | 207 Handle<Script> NewScript(Handle<String> source); |
| 208 | 208 |
| 209 // Foreign objects are pretenured when allocated by the bootstrapper. | 209 // Foreign objects are pretenured when allocated by the bootstrapper. |
| (...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 424 bool* pending_exception); | 424 bool* pending_exception); |
| 425 | 425 |
| 426 #define ROOT_ACCESSOR(type, name, camel_name) \ | 426 #define ROOT_ACCESSOR(type, name, camel_name) \ |
| 427 inline Handle<type> name() { \ | 427 inline Handle<type> name() { \ |
| 428 return Handle<type>(BitCast<type**>( \ | 428 return Handle<type>(BitCast<type**>( \ |
| 429 &isolate()->heap()->roots_[Heap::k##camel_name##RootIndex])); \ | 429 &isolate()->heap()->roots_[Heap::k##camel_name##RootIndex])); \ |
| 430 } | 430 } |
| 431 ROOT_LIST(ROOT_ACCESSOR) | 431 ROOT_LIST(ROOT_ACCESSOR) |
| 432 #undef ROOT_ACCESSOR_ACCESSOR | 432 #undef ROOT_ACCESSOR_ACCESSOR |
| 433 | 433 |
| 434 #define SYMBOL_ACCESSOR(name, str) \ | 434 #define STRING_ACCESSOR(name, str) \ |
| 435 inline Handle<String> name() { \ | 435 inline Handle<String> name() { \ |
| 436 return Handle<String>(BitCast<String**>( \ | 436 return Handle<String>(BitCast<String**>( \ |
| 437 &isolate()->heap()->roots_[Heap::k##name##RootIndex])); \ | 437 &isolate()->heap()->roots_[Heap::k##name##RootIndex])); \ |
| 438 } | 438 } |
| 439 SYMBOL_LIST(SYMBOL_ACCESSOR) | 439 INTERNALIZED_STRING_LIST(STRING_ACCESSOR) |
| 440 #undef SYMBOL_ACCESSOR | 440 #undef STRING_ACCESSOR |
| 441 | 441 |
| 442 Handle<String> hidden_symbol() { | 442 Handle<String> hidden_string() { |
| 443 return Handle<String>(&isolate()->heap()->hidden_symbol_); | 443 return Handle<String>(&isolate()->heap()->hidden_string_); |
| 444 } | 444 } |
| 445 | 445 |
| 446 Handle<SharedFunctionInfo> NewSharedFunctionInfo( | 446 Handle<SharedFunctionInfo> NewSharedFunctionInfo( |
| 447 Handle<String> name, | 447 Handle<String> name, |
| 448 int number_of_literals, | 448 int number_of_literals, |
| 449 Handle<Code> code, | 449 Handle<Code> code, |
| 450 Handle<ScopeInfo> scope_info); | 450 Handle<ScopeInfo> scope_info); |
| 451 Handle<SharedFunctionInfo> NewSharedFunctionInfo(Handle<String> name); | 451 Handle<SharedFunctionInfo> NewSharedFunctionInfo(Handle<String> name); |
| 452 | 452 |
| 453 Handle<JSMessageObject> NewJSMessageObject( | 453 Handle<JSMessageObject> NewJSMessageObject( |
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 518 // Update the map cache in the native context with (keys, map) | 518 // Update the map cache in the native context with (keys, map) |
| 519 Handle<MapCache> AddToMapCache(Handle<Context> context, | 519 Handle<MapCache> AddToMapCache(Handle<Context> context, |
| 520 Handle<FixedArray> keys, | 520 Handle<FixedArray> keys, |
| 521 Handle<Map> map); | 521 Handle<Map> map); |
| 522 }; | 522 }; |
| 523 | 523 |
| 524 | 524 |
| 525 } } // namespace v8::internal | 525 } } // namespace v8::internal |
| 526 | 526 |
| 527 #endif // V8_FACTORY_H_ | 527 #endif // V8_FACTORY_H_ |
| OLD | NEW |