Changeset 34378 in webkit for trunk/JavaScriptCore


Ignore:
Timestamp:
Jun 5, 2008, 10:54:59 AM (17 years ago)
Author:
[email protected]
Message:

2008-06-05 Maciej Stachowiak <[email protected]>

Reviewed by Hyatt.


  • force inlining of a template function that only has one call site per specialization 1.3% speedup on SunSpider
  • kjs/collector.cpp: (KJS::Collector::heapAllocate): This template function is only called from allocate() and allocateNumber() (once per specialization) and the extra call overhead for GC allocation shows up, so force inlining.
Location:
trunk/JavaScriptCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/ChangeLog

    r34374 r34378  
     12008-06-05  Maciej Stachowiak  <[email protected]>
     2
     3        Reviewed by Hyatt.
     4       
     5        - force inlining of a template function that only has one call site per specialization
     6        1.3% speedup on SunSpider
     7
     8        * kjs/collector.cpp:
     9        (KJS::Collector::heapAllocate): This template function is only
     10        called from allocate() and allocateNumber() (once per
     11        specialization) and the extra call overhead for GC allocation
     12        shows up, so force inlining.
     13
    1142008-06-05  Maciej Stachowiak  <[email protected]>
    215
  • trunk/JavaScriptCore/kjs/collector.cpp

    r34360 r34378  
    179179};
    180180
    181 template <Collector::HeapType heapType> void* Collector::heapAllocate(size_t s)
     181template <Collector::HeapType heapType> ALWAYS_INLINE void* Collector::heapAllocate(size_t s)
    182182{
    183183    typedef typename HeapConstants<heapType>::Block Block;
Note: See TracChangeset for help on using the changeset viewer.