Increase maximum usable memory amount from 32GB to 64GB on 64-bit Linux.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13278 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/coregrind/m_aspacemgr/aspacemgr-linux.c b/coregrind/m_aspacemgr/aspacemgr-linux.c
index fa9075b..eddb4de 100644
--- a/coregrind/m_aspacemgr/aspacemgr-linux.c
+++ b/coregrind/m_aspacemgr/aspacemgr-linux.c
@@ -1649,7 +1649,7 @@
    aspacem_minAddr = (Addr) 0x04000000; // 64M
 
 #  if VG_WORDSIZE == 8
-     aspacem_maxAddr = (Addr)0x800000000 - 1; // 32G
+     aspacem_maxAddr = (Addr)0x1000000000ULL - 1; // 64G
 #    ifdef ENABLE_INNER
      { Addr cse = VG_PGROUNDDN( sp_at_startup ) - 1;
        if (aspacem_maxAddr > cse)
diff --git a/memcheck/mc_main.c b/memcheck/mc_main.c
index 3ee4abd..1f6328b 100644
--- a/memcheck/mc_main.c
+++ b/memcheck/mc_main.c
@@ -167,10 +167,10 @@
 
 #else
 
-/* Just handle the first 32G fast and the rest via auxiliary
+/* Just handle the first 64G fast and the rest via auxiliary
    primaries.  If you change this, Memcheck will assert at startup.
    See the definition of UNALIGNED_OR_HIGH for extensive comments. */
-#  define N_PRIMARY_BITS  19
+#  define N_PRIMARY_BITS  20
 
 #endif
 
@@ -6554,11 +6554,11 @@
    tl_assert(sizeof(Addr)  == 8);
    tl_assert(sizeof(UWord) == 8);
    tl_assert(sizeof(Word)  == 8);
-   tl_assert(MAX_PRIMARY_ADDRESS == 0x7FFFFFFFFULL);
-   tl_assert(MASK(1) == 0xFFFFFFF800000000ULL);
-   tl_assert(MASK(2) == 0xFFFFFFF800000001ULL);
-   tl_assert(MASK(4) == 0xFFFFFFF800000003ULL);
-   tl_assert(MASK(8) == 0xFFFFFFF800000007ULL);
+   tl_assert(MAX_PRIMARY_ADDRESS == 0xFFFFFFFFFULL);
+   tl_assert(MASK(1) == 0xFFFFFFF000000000ULL);
+   tl_assert(MASK(2) == 0xFFFFFFF000000001ULL);
+   tl_assert(MASK(4) == 0xFFFFFFF000000003ULL);
+   tl_assert(MASK(8) == 0xFFFFFFF000000007ULL);
 #  endif
 }