mozilla-aarch64-bmo-963028.patch
author Dirk Müller <dmueller@suse.com>
Sun, 13 Apr 2014 16:54:09 +0200
changeset 715 e1c226a4de34
permissions -rw-r--r--
AArch64 porting
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
715
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
     1
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
     2
# HG changeset patch
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
     3
# User Marcin Juszkiewicz <mjuszkiewicz@redhat.com>
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
     4
# Date 1390512871 18000
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
     5
# Node ID feaf8bd56a82749f5d0d8869b7c0a1c01e300362
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
     6
# Parent  2a082f03cd1d64c8bfff9641284f2dc23617f806
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
     7
Bug 963028 - AArch64 support for jemalloc. r=froydnj
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
     8
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
     9
diff --git a/memory/jemalloc/src/include/jemalloc/internal/jemalloc_internal.h.in b/memory/jemalloc/src/include/jemalloc/internal/jemalloc_internal.h.in
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    10
--- a/memory/jemalloc/src/include/jemalloc/internal/jemalloc_internal.h.in
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    11
+++ b/memory/jemalloc/src/include/jemalloc/internal/jemalloc_internal.h.in
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    12
@@ -283,16 +283,19 @@ static const bool config_ivsalloc =
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    13
 #    define LG_QUANTUM		4
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    14
 #  endif
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    15
 #  ifdef __SH4__
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    16
 #    define LG_QUANTUM		4
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    17
 #  endif
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    18
 #  ifdef __tile__
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    19
 #    define LG_QUANTUM		4
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    20
 #  endif
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    21
+#  ifdef __aarch64__
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    22
+#    define LG_QUANTUM		4
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    23
+#  endif
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    24
 #  ifndef LG_QUANTUM
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    25
 #    error "No LG_QUANTUM definition for architecture; specify via CPPFLAGS"
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    26
 #  endif
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    27
 #endif
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    28
 
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    29
 #define	QUANTUM			((size_t)(1U << LG_QUANTUM))
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    30
 #define	QUANTUM_MASK		(QUANTUM - 1)
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    31
 
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    32
diff --git a/memory/mozjemalloc/jemalloc.c b/memory/mozjemalloc/jemalloc.c
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    33
--- a/memory/mozjemalloc/jemalloc.c
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    34
+++ b/memory/mozjemalloc/jemalloc.c
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    35
@@ -1097,17 +1097,17 @@ static unsigned		ncpus;
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    36
 /*
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    37
  * VM page size. It must divide the runtime CPU page size or the code
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    38
  * will abort.
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    39
  * Platform specific page size conditions copied from js/public/HeapAPI.h
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    40
  */
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    41
 #if (defined(SOLARIS) || defined(__FreeBSD__)) && \
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    42
     (defined(__sparc) || defined(__sparcv9) || defined(__ia64))
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    43
 #define pagesize_2pow			((size_t) 13)
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    44
-#elif defined(__powerpc64__)
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    45
+#elif defined(__powerpc64__) || defined(__aarch64__)
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    46
 #define pagesize_2pow			((size_t) 16)
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    47
 #else
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    48
 #define pagesize_2pow			((size_t) 12)
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    49
 #endif
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    50
 #define pagesize			((size_t) 1 << pagesize_2pow)
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    51
 #define pagesize_mask			(pagesize - 1)
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    52
 
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    53
 /* Various quantum-related settings. */
e1c226a4de34 AArch64 porting
Dirk Müller <dmueller@suse.com>
parents:
diff changeset
    54