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

Side by Side Diff: src/isolate.cc

Issue 7830036: Optimize isFinite and isNaN. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Made the change general by moving putting it in the NUMBER_IS_FINITE macro. Created 9 years, 3 months 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
« no previous file with comments | « src/isolate.h ('k') | src/json.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2011 the V8 project authors. All rights reserved. 1 // Copyright 2011 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 1391 matching lines...) Expand 10 before | Expand all | Expand 10 after
1402 handle_scope_implementer_(NULL), 1402 handle_scope_implementer_(NULL),
1403 unicode_cache_(NULL), 1403 unicode_cache_(NULL),
1404 in_use_list_(0), 1404 in_use_list_(0),
1405 free_list_(0), 1405 free_list_(0),
1406 preallocated_storage_preallocated_(false), 1406 preallocated_storage_preallocated_(false),
1407 pc_to_code_cache_(NULL), 1407 pc_to_code_cache_(NULL),
1408 write_input_buffer_(NULL), 1408 write_input_buffer_(NULL),
1409 global_handles_(NULL), 1409 global_handles_(NULL),
1410 context_switcher_(NULL), 1410 context_switcher_(NULL),
1411 thread_manager_(NULL), 1411 thread_manager_(NULL),
1412 ast_sentinels_(NULL),
1412 string_tracker_(NULL), 1413 string_tracker_(NULL),
1413 regexp_stack_(NULL), 1414 regexp_stack_(NULL),
1414 embedder_data_(NULL) { 1415 embedder_data_(NULL) {
1415 TRACE_ISOLATE(constructor); 1416 TRACE_ISOLATE(constructor);
1416 1417
1417 memset(isolate_addresses_, 0, 1418 memset(isolate_addresses_, 0,
1418 sizeof(isolate_addresses_[0]) * (k_isolate_address_count + 1)); 1419 sizeof(isolate_addresses_[0]) * (k_isolate_address_count + 1));
1419 1420
1420 heap_.isolate_ = this; 1421 heap_.isolate_ = this;
1421 zone_.isolate_ = this; 1422 zone_.isolate_ = this;
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after
1538 1539
1539 delete[] assembler_spare_buffer_; 1540 delete[] assembler_spare_buffer_;
1540 assembler_spare_buffer_ = NULL; 1541 assembler_spare_buffer_ = NULL;
1541 1542
1542 delete unicode_cache_; 1543 delete unicode_cache_;
1543 unicode_cache_ = NULL; 1544 unicode_cache_ = NULL;
1544 1545
1545 delete regexp_stack_; 1546 delete regexp_stack_;
1546 regexp_stack_ = NULL; 1547 regexp_stack_ = NULL;
1547 1548
1549 delete ast_sentinels_;
1550 ast_sentinels_ = NULL;
1551
1548 delete descriptor_lookup_cache_; 1552 delete descriptor_lookup_cache_;
1549 descriptor_lookup_cache_ = NULL; 1553 descriptor_lookup_cache_ = NULL;
1550 delete context_slot_cache_; 1554 delete context_slot_cache_;
1551 context_slot_cache_ = NULL; 1555 context_slot_cache_ = NULL;
1552 delete keyed_lookup_cache_; 1556 delete keyed_lookup_cache_;
1553 keyed_lookup_cache_ = NULL; 1557 keyed_lookup_cache_ = NULL;
1554 1558
1555 delete transcendental_cache_; 1559 delete transcendental_cache_;
1556 transcendental_cache_ = NULL; 1560 transcendental_cache_ = NULL;
1557 delete stub_cache_; 1561 delete stub_cache_;
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after
1699 keyed_lookup_cache_ = new KeyedLookupCache(); 1703 keyed_lookup_cache_ = new KeyedLookupCache();
1700 context_slot_cache_ = new ContextSlotCache(); 1704 context_slot_cache_ = new ContextSlotCache();
1701 descriptor_lookup_cache_ = new DescriptorLookupCache(); 1705 descriptor_lookup_cache_ = new DescriptorLookupCache();
1702 unicode_cache_ = new UnicodeCache(); 1706 unicode_cache_ = new UnicodeCache();
1703 pc_to_code_cache_ = new PcToCodeCache(this); 1707 pc_to_code_cache_ = new PcToCodeCache(this);
1704 write_input_buffer_ = new StringInputBuffer(); 1708 write_input_buffer_ = new StringInputBuffer();
1705 global_handles_ = new GlobalHandles(this); 1709 global_handles_ = new GlobalHandles(this);
1706 bootstrapper_ = new Bootstrapper(); 1710 bootstrapper_ = new Bootstrapper();
1707 handle_scope_implementer_ = new HandleScopeImplementer(this); 1711 handle_scope_implementer_ = new HandleScopeImplementer(this);
1708 stub_cache_ = new StubCache(this); 1712 stub_cache_ = new StubCache(this);
1713 ast_sentinels_ = new AstSentinels();
1709 regexp_stack_ = new RegExpStack(); 1714 regexp_stack_ = new RegExpStack();
1710 regexp_stack_->isolate_ = this; 1715 regexp_stack_->isolate_ = this;
1711 1716
1712 // Enable logging before setting up the heap 1717 // Enable logging before setting up the heap
1713 logger_->Setup(); 1718 logger_->Setup();
1714 1719
1715 CpuProfiler::Setup(); 1720 CpuProfiler::Setup();
1716 HeapProfiler::Setup(); 1721 HeapProfiler::Setup();
1717 1722
1718 // Initialize other runtime facilities 1723 // Initialize other runtime facilities
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after
1872 1877
1873 #ifdef DEBUG 1878 #ifdef DEBUG
1874 #define ISOLATE_FIELD_OFFSET(type, name, ignored) \ 1879 #define ISOLATE_FIELD_OFFSET(type, name, ignored) \
1875 const intptr_t Isolate::name##_debug_offset_ = OFFSET_OF(Isolate, name##_); 1880 const intptr_t Isolate::name##_debug_offset_ = OFFSET_OF(Isolate, name##_);
1876 ISOLATE_INIT_LIST(ISOLATE_FIELD_OFFSET) 1881 ISOLATE_INIT_LIST(ISOLATE_FIELD_OFFSET)
1877 ISOLATE_INIT_ARRAY_LIST(ISOLATE_FIELD_OFFSET) 1882 ISOLATE_INIT_ARRAY_LIST(ISOLATE_FIELD_OFFSET)
1878 #undef ISOLATE_FIELD_OFFSET 1883 #undef ISOLATE_FIELD_OFFSET
1879 #endif 1884 #endif
1880 1885
1881 } } // namespace v8::internal 1886 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/isolate.h ('k') | src/json.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698