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 1171 matching lines...) Loading... |
1182 MUST_USE_RESULT MaybeObject* InternalizeString(String* str); | 1182 MUST_USE_RESULT MaybeObject* InternalizeString(String* str); |
1183 MUST_USE_RESULT MaybeObject* InternalizeStringWithKey(HashTableKey* key); | 1183 MUST_USE_RESULT MaybeObject* InternalizeStringWithKey(HashTableKey* key); |
1184 | 1184 |
1185 bool InternalizeStringIfExists(String* str, String** result); | 1185 bool InternalizeStringIfExists(String* str, String** result); |
1186 bool InternalizeTwoCharsStringIfExists(String* str, String** result); | 1186 bool InternalizeTwoCharsStringIfExists(String* str, String** result); |
1187 | 1187 |
1188 // Compute the matching internalized string map for a string if possible. | 1188 // Compute the matching internalized string map for a string if possible. |
1189 // NULL is returned if string is in new space or not flattened. | 1189 // NULL is returned if string is in new space or not flattened. |
1190 Map* InternalizedStringMapForString(String* str); | 1190 Map* InternalizedStringMapForString(String* str); |
1191 | 1191 |
1192 // Tries to flatten a string before compare operation. | |
1193 // | |
1194 // Returns a failure in case it was decided that flattening was | |
1195 // necessary and failed. Note, if flattening is not necessary the | |
1196 // string might stay non-flat even when not a failure is returned. | |
1197 // | |
1198 // Please note this function does not perform a garbage collection. | |
1199 MUST_USE_RESULT inline MaybeObject* PrepareForCompare(String* str); | |
1200 | |
1201 // Converts the given boolean condition to JavaScript boolean value. | 1192 // Converts the given boolean condition to JavaScript boolean value. |
1202 inline Object* ToBoolean(bool condition); | 1193 inline Object* ToBoolean(bool condition); |
1203 | 1194 |
1204 // Performs garbage collection operation. | 1195 // Performs garbage collection operation. |
1205 // Returns whether there is a chance that another major GC could | 1196 // Returns whether there is a chance that another major GC could |
1206 // collect more garbage. | 1197 // collect more garbage. |
1207 inline bool CollectGarbage( | 1198 inline bool CollectGarbage( |
1208 AllocationSpace space, | 1199 AllocationSpace space, |
1209 const char* gc_reason = NULL, | 1200 const char* gc_reason = NULL, |
1210 const GCCallbackFlags gc_callback_flags = kNoGCCallbackFlags); | 1201 const GCCallbackFlags gc_callback_flags = kNoGCCallbackFlags); |
(...skipping 1873 matching lines...) Loading... |
3084 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. | 3075 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. |
3085 | 3076 |
3086 private: | 3077 private: |
3087 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); | 3078 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); |
3088 }; | 3079 }; |
3089 #endif // DEBUG | 3080 #endif // DEBUG |
3090 | 3081 |
3091 } } // namespace v8::internal | 3082 } } // namespace v8::internal |
3092 | 3083 |
3093 #endif // V8_HEAP_H_ | 3084 #endif // V8_HEAP_H_ |
OLD | NEW |