LCOV - code coverage report
Current view: directory - js/src/assembler/jit - ExecutableAllocator.cpp (source / functions) Found Hit Coverage
Test: app.info Lines: 13 13 100.0 %
Date: 2012-06-02 Functions: 2 2 100.0 %

       1                 : /*
       2                 :  * Copyright (C) 2008 Apple Inc. All rights reserved.
       3                 :  *
       4                 :  * Redistribution and use in source and binary forms, with or without
       5                 :  * modification, are permitted provided that the following conditions
       6                 :  * are met:
       7                 :  * 1. Redistributions of source code must retain the above copyright
       8                 :  *    notice, this list of conditions and the following disclaimer.
       9                 :  * 2. Redistributions in binary form must reproduce the above copyright
      10                 :  *    notice, this list of conditions and the following disclaimer in the
      11                 :  *    documentation and/or other materials provided with the distribution.
      12                 :  *
      13                 :  * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
      14                 :  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
      15                 :  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
      16                 :  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
      17                 :  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
      18                 :  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
      19                 :  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
      20                 :  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
      21                 :  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
      22                 :  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
      23                 :  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
      24                 :  */
      25                 : 
      26                 : #include "ExecutableAllocator.h"
      27                 : 
      28                 : #if ENABLE_ASSEMBLER
      29                 : 
      30                 : #include "prmjtime.h"
      31                 : 
      32                 : namespace JSC {
      33                 : 
      34                 : size_t ExecutableAllocator::pageSize = 0;
      35                 : size_t ExecutableAllocator::largeAllocSize = 0;
      36                 : 
      37           19341 : ExecutablePool::~ExecutablePool()
      38                 : {
      39           19341 :     m_allocator->releasePoolPages(this);
      40           19341 : }
      41                 : 
      42                 : void
      43              12 : ExecutableAllocator::sizeOfCode(size_t *method, size_t *regexp, size_t *unused) const
      44                 : {
      45              12 :     *method = 0;
      46              12 :     *regexp = 0;
      47              12 :     *unused = 0;
      48                 : 
      49              30 :     for (ExecPoolHashSet::Range r = m_pools.all(); !r.empty(); r.popFront()) {
      50              18 :         ExecutablePool* pool = r.front();
      51              18 :         *method += pool->m_mjitCodeMethod;
      52              18 :         *regexp += pool->m_mjitCodeRegexp;
      53              18 :         *unused += pool->m_allocation.size - pool->m_mjitCodeMethod - pool->m_mjitCodeRegexp;
      54                 :     }
      55              12 : }
      56                 : 
      57                 : }
      58                 : 
      59                 : #endif // HAVE(ASSEMBLER)

Generated by: LCOV version 1.7