Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(10)

Side by Side Diff: bleeding_edge/src/heap.cc

Issue 506037: Improve performance of allocating closures for nested... (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: '' Created 11 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2009 the V8 project authors. All rights reserved. 1 // Copyright 2009 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 2215 matching lines...) Expand 10 before | Expand all | Expand 10 after
2226 JSObject::cast(prototype)->SetProperty(constructor_symbol(), 2226 JSObject::cast(prototype)->SetProperty(constructor_symbol(),
2227 function, 2227 function,
2228 DONT_ENUM); 2228 DONT_ENUM);
2229 if (result->IsFailure()) return result; 2229 if (result->IsFailure()) return result;
2230 return prototype; 2230 return prototype;
2231 } 2231 }
2232 2232
2233 2233
2234 Object* Heap::AllocateFunction(Map* function_map, 2234 Object* Heap::AllocateFunction(Map* function_map,
2235 SharedFunctionInfo* shared, 2235 SharedFunctionInfo* shared,
2236 Object* prototype) { 2236 Object* prototype,
2237 Object* result = Allocate(function_map, OLD_POINTER_SPACE); 2237 PretenureFlag pretenure) {
2238 AllocationSpace space =
2239 (pretenure == TENURED) ? OLD_POINTER_SPACE : NEW_SPACE;
2240 Object* result = Allocate(function_map, space);
2238 if (result->IsFailure()) return result; 2241 if (result->IsFailure()) return result;
2239 return InitializeFunction(JSFunction::cast(result), shared, prototype); 2242 return InitializeFunction(JSFunction::cast(result), shared, prototype);
2240 } 2243 }
2241 2244
2242 2245
2243 Object* Heap::AllocateArgumentsObject(Object* callee, int length) { 2246 Object* Heap::AllocateArgumentsObject(Object* callee, int length) {
2244 // To get fast allocation and map sharing for arguments objects we 2247 // To get fast allocation and map sharing for arguments objects we
2245 // allocate them based on an arguments boilerplate. 2248 // allocate them based on an arguments boilerplate.
2246 2249
2247 // This calls Copy directly rather than using Heap::AllocateRaw so we 2250 // This calls Copy directly rather than using Heap::AllocateRaw so we
(...skipping 1824 matching lines...) Expand 10 before | Expand all | Expand 10 after
4072 void ExternalStringTable::TearDown() { 4075 void ExternalStringTable::TearDown() {
4073 new_space_strings_.Free(); 4076 new_space_strings_.Free();
4074 old_space_strings_.Free(); 4077 old_space_strings_.Free();
4075 } 4078 }
4076 4079
4077 4080
4078 List<Object*> ExternalStringTable::new_space_strings_; 4081 List<Object*> ExternalStringTable::new_space_strings_;
4079 List<Object*> ExternalStringTable::old_space_strings_; 4082 List<Object*> ExternalStringTable::old_space_strings_;
4080 4083
4081 } } // namespace v8::internal 4084 } } // namespace v8::internal
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698