⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 288265 in webkit


Ignore:
Timestamp:
Jan 19, 2022, 6:40:37 PM (5 years ago)
Author:
ysuzuki@apple.com
Message:

[libpas] Disable PAS_ASSERT on Darwin ARM64 (not in ARM64E)
​https://bugs.webkit.org/show_bug.cgi?id=235349

Reviewed by Saam Barati.

We have several weak devices which only have ARM64 (not ARM64E).
And in such a weak device, PAS_ASSERT affects on performance.
By disabling PAS_ASSERT, we got 0.5% improvement in PLT in iPhone 6S.

  • libpas/src/libpas/pas_config.h:
  • libpas/src/libpas/pas_config_prefix.h:
  • libpas/src/libpas/pas_internal_config.h:
  • libpas/src/libpas/pas_platform.h:
  • libpas/src/libpas/pas_utils.h:
Location:
trunk/Source/bmalloc
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/bmalloc/ChangeLog

    r288146 r288265  
     12022-01-19  Yusuke Suzuki  <ysuzuki@apple.com>
     2
     3        [libpas] Disable PAS_ASSERT on Darwin ARM64 (not in ARM64E)
     4        https://bugs.webkit.org/show_bug.cgi?id=235349
     5
     6        Reviewed by Saam Barati.
     7
     8        We have several weak devices which only have ARM64 (not ARM64E).
     9        And in such a weak device, PAS_ASSERT affects on performance.
     10        By disabling PAS_ASSERT, we got 0.5% improvement in PLT in iPhone 6S.
     11
     12        * libpas/src/libpas/pas_config.h:
     13        * libpas/src/libpas/pas_config_prefix.h:
     14        * libpas/src/libpas/pas_internal_config.h:
     15        * libpas/src/libpas/pas_platform.h:
     16        * libpas/src/libpas/pas_utils.h:
     17
    1182022-01-18  Alex Christensen  <achristensen@webkit.org>
    219
  • trunk/Source/bmalloc/libpas/src/libpas/pas_config.h

    r286429 r288265  
    3939#endif
    4040
     41#if PAS_OS(DARWIN) && __PAS_ARM64 && !__PAS_ARM64E && defined(NDEBUG)
     42#define PAS_ENABLE_ASSERT 0
     43#else
     44#define PAS_ENABLE_ASSERT 1
     45#endif
    4146#define PAS_ENABLE_TESTING __PAS_ENABLE_TESTING
    4247
  • trunk/Source/bmalloc/libpas/src/libpas/pas_config_prefix.h

    r287562 r288265  
    2323 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    2424 */
     25
     26#ifndef PAS_CONFIG_PREFIX_H
     27#define PAS_CONFIG_PREFIX_H
     28
     29#include "pas_platform.h"
    2530
    2631#if defined(ENABLE_PAS_TESTING)
    … …  
    5560#define __PAS_RISCV 0
    5661#endif
     62
     63#endif /* PAS_CONFIG_PREFIX_H */
  • trunk/Source/bmalloc/libpas/src/libpas/pas_internal_config.h

    r286493 r288265  
    2828
    2929#include "pas_config.h"
    30 #include "pas_platform.h"
    3130
    3231#define PAS_SUBPAGE_SIZE                 4096
  • trunk/Source/bmalloc/libpas/src/libpas/pas_platform.h

    r285853 r288265  
    3333#endif
    3434
     35/* PAS_COMPILER() - the target compiler */
    3536#define PAS_COMPILER(FEATURE) (defined PAS_COMPILER_##FEATURE  && PAS_COMPILER_##FEATURE)
    3637
  • trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h

    r287214 r288265  
    201201#define PAS_ASSERT(exp) \
    202202    do { \
     203        if (!PAS_ENABLE_ASSERT) \
     204            break; \
    203205        if (PAS_LIKELY(exp)) \
    204206            break; \
Note: See TracChangeset for help on using the changeset viewer.