realloc0.c
up: index
prev: calloc1.c
next: realloc1.c
#include <stdlib.h>
#include <stdio.h>
#include <stdalign.h>
#include <inttypes.h>
#include <cheriintrin.h>
#include <stddef.h>
#include "capprint.h"
#define N 20
int main()
{
void *p[N];
// allocation pass
for(int i=1;i<N;i++)
p[i] = calloc(1,i);
// re-allocation pass
for(int i=N-1;i>=1;i--)
{
ptraddr_t old_a = cheri_address_get(p[i]);
fprintf(stderr,"Reallocating %" PTR_FMT " from %d size to %d\n",sptr((void*)p[i]),i,N-i);
p[i]=realloc(p[i],N-i);
ptraddr_t new_a = cheri_address_get(p[i]);
if(old_a == new_a)
fprintf(stderr,"\t address unchanged\n");
else
fprintf(stderr,"\t new address: %" PTR_FMT "\n",sptr((void*)p[i]));
if(new_a % alignof(max_align_t) != 0)
{
fprintf(stderr,"! not sufficiently aligned pointer\n");
return(1);
}
if(cheri_offset_get(p[i]) != 0)
{
fprintf(stderr,"! non-zero offset\n");
return(1);
}
if(cheri_length_get(p[i]) < (size_t)(N-i))
{
fprintf(stderr,"! allocation too small\n");
return(1);
}
}
fprintf(stderr,"Done\n");
}
Experimental data (what does this mean?)
cerberus-cheri-no-pnvi
cerberus-cheri-revocation-no-pnvi
cerberus-cheri-cornucopia-no-pnvi Reallocating (@disabled, 0xffffdfe0 [rwRW,0xffffdfe0-0xffffdff3]) from 19 size to 1
new address: (@disabled, 0xffffdcd0 [rwRW,0xffffdcd0-0xffffdcd1])
Reallocating (@disabled, 0xffffe030 [rwRW,0xffffe030-0xffffe042]) from 18 size to 2
new address: (@disabled, 0xffffd700 [rwRW,0xffffd700-0xffffd702])
Reallocating (@disabled, 0xffffe080 [rwRW,0xffffe080-0xffffe091]) from 17 size to 3
new address: (@disabled, 0xffffd130 [rwRW,0xffffd130-0xffffd133])
Reallocating (@disabled, 0xffffe0d0 [rwRW,0xffffe0d0-0xffffe0e0]) from 16 size to 4
new address: (@disabled, 0xffffcb60 [rwRW,0xffffcb60-0xffffcb64])
Reallocating (@disabled, 0xffffe120 [rwRW,0xffffe120-0xffffe12f]) from 15 size to 5
new address: (@disabled, 0xffffc590 [rwRW,0xffffc590-0xffffc595])
Reallocating (@disabled, 0xffffe170 [rwRW,0xffffe170-0xffffe17e]) from 14 size to 6
new address: (@disabled, 0xffffbfc0 [rwRW,0xffffbfc0-0xffffbfc6])
Reallocating (@disabled, 0xffffe1c0 [rwRW,0xffffe1c0-0xffffe1cd]) from 13 size to 7
new address: (@disabled, 0xffffb9f0 [rwRW,0xffffb9f0-0xffffb9f7])
Reallocating (@disabled, 0xffffe210 [rwRW,0xffffe210-0xffffe21c]) from 12 size to 8
new address: (@disabled, 0xffffb420 [rwRW,0xffffb420-0xffffb428])
Reallocating (@disabled, 0xffffe260 [rwRW,0xffffe260-0xffffe26b]) from 11 size to 9
new address: (@disabled, 0xffffae40 [rwRW,0xffffae40-0xffffae49])
Reallocating (@disabled, 0xffffe2b0 [rwRW,0xffffe2b0-0xffffe2ba]) from 10 size to 10
new address: (@disabled, 0xffffa860 [rwRW,0xffffa860-0xffffa86a])
Reallocating (@disabled, 0xffffe300 [rwRW,0xffffe300-0xffffe309]) from 9 size to 11
new address: (@disabled, 0xffffa280 [rwRW,0xffffa280-0xffffa28b])
Reallocating (@disabled, 0xffffe350 [rwRW,0xffffe350-0xffffe358]) from 8 size to 12
new address: (@disabled, 0xffff9ca0 [rwRW,0xffff9ca0-0xffff9cac])
Reallocating (@disabled, 0xffffe390 [rwRW,0xffffe390-0xffffe397]) from 7 size to 13
new address: (@disabled, 0xffff96c0 [rwRW,0xffff96c0-0xffff96cd])
Reallocating (@disabled, 0xffffe3d0 [rwRW,0xffffe3d0-0xffffe3d6]) from 6 size to 14
new address: (@disabled, 0xffff90e0 [rwRW,0xffff90e0-0xffff90ee])
Reallocating (@disabled, 0xffffe410 [rwRW,0xffffe410-0xffffe415]) from 5 size to 15
new address: (@disabled, 0xffff8b00 [rwRW,0xffff8b00-0xffff8b0f])
Reallocating (@disabled, 0xffffe450 [rwRW,0xffffe450-0xffffe454]) from 4 size to 16
new address: (@disabled, 0xffff8520 [rwRW,0xffff8520-0xffff8530])
Reallocating (@disabled, 0xffffe490 [rwRW,0xffffe490-0xffffe493]) from 3 size to 17
new address: (@disabled, 0xffff7f40 [rwRW,0xffff7f40-0xffff7f51])
Reallocating (@disabled, 0xffffe4d0 [rwRW,0xffffe4d0-0xffffe4d2]) from 2 size to 18
new address: (@disabled, 0xffff7960 [rwRW,0xffff7960-0xffff7972])
Reallocating (@disabled, 0xffffe510 [rwRW,0xffffe510-0xffffe511]) from 1 size to 19
new address: (@disabled, 0xffff7380 [rwRW,0xffff7380-0xffff7393])
Done
cerberus-cheri
cerberus-cheri-revocation
cerberus-cheri-cornucopia Reallocating (@200, 0xffffdfe0 [rwRW,0xffffdfe0-0xffffdff3]) from 19 size to 1
new address: (@243, 0xffffdcd0 [rwRW,0xffffdcd0-0xffffdcd1])
Reallocating (@194, 0xffffe030 [rwRW,0xffffe030-0xffffe042]) from 18 size to 2
new address: (@318, 0xffffd700 [rwRW,0xffffd700-0xffffd702])
Reallocating (@188, 0xffffe080 [rwRW,0xffffe080-0xffffe091]) from 17 size to 3
new address: (@393, 0xffffd130 [rwRW,0xffffd130-0xffffd133])
Reallocating (@182, 0xffffe0d0 [rwRW,0xffffe0d0-0xffffe0e0]) from 16 size to 4
new address: (@468, 0xffffcb60 [rwRW,0xffffcb60-0xffffcb64])
Reallocating (@176, 0xffffe120 [rwRW,0xffffe120-0xffffe12f]) from 15 size to 5
new address: (@543, 0xffffc590 [rwRW,0xffffc590-0xffffc595])
Reallocating (@170, 0xffffe170 [rwRW,0xffffe170-0xffffe17e]) from 14 size to 6
new address: (@618, 0xffffbfc0 [rwRW,0xffffbfc0-0xffffbfc6])
Reallocating (@164, 0xffffe1c0 [rwRW,0xffffe1c0-0xffffe1cd]) from 13 size to 7
new address: (@693, 0xffffb9f0 [rwRW,0xffffb9f0-0xffffb9f7])
Reallocating (@158, 0xffffe210 [rwRW,0xffffe210-0xffffe21c]) from 12 size to 8
new address: (@768, 0xffffb420 [rwRW,0xffffb420-0xffffb428])
Reallocating (@152, 0xffffe260 [rwRW,0xffffe260-0xffffe26b]) from 11 size to 9
new address: (@843, 0xffffae40 [rwRW,0xffffae40-0xffffae49])
Reallocating (@146, 0xffffe2b0 [rwRW,0xffffe2b0-0xffffe2ba]) from 10 size to 10
new address: (@918, 0xffffa860 [rwRW,0xffffa860-0xffffa86a])
Reallocating (@140, 0xffffe300 [rwRW,0xffffe300-0xffffe309]) from 9 size to 11
new address: (@993, 0xffffa280 [rwRW,0xffffa280-0xffffa28b])
Reallocating (@134, 0xffffe350 [rwRW,0xffffe350-0xffffe358]) from 8 size to 12
new address: (@1068, 0xffff9ca0 [rwRW,0xffff9ca0-0xffff9cac])
Reallocating (@128, 0xffffe390 [rwRW,0xffffe390-0xffffe397]) from 7 size to 13
new address: (@1143, 0xffff96c0 [rwRW,0xffff96c0-0xffff96cd])
Reallocating (@122, 0xffffe3d0 [rwRW,0xffffe3d0-0xffffe3d6]) from 6 size to 14
new address: (@1218, 0xffff90e0 [rwRW,0xffff90e0-0xffff90ee])
Reallocating (@116, 0xffffe410 [rwRW,0xffffe410-0xffffe415]) from 5 size to 15
new address: (@1293, 0xffff8b00 [rwRW,0xffff8b00-0xffff8b0f])
Reallocating (@110, 0xffffe450 [rwRW,0xffffe450-0xffffe454]) from 4 size to 16
new address: (@1368, 0xffff8520 [rwRW,0xffff8520-0xffff8530])
Reallocating (@104, 0xffffe490 [rwRW,0xffffe490-0xffffe493]) from 3 size to 17
new address: (@1443, 0xffff7f40 [rwRW,0xffff7f40-0xffff7f51])
Reallocating (@98, 0xffffe4d0 [rwRW,0xffffe4d0-0xffffe4d2]) from 2 size to 18
new address: (@1518, 0xffff7960 [rwRW,0xffff7960-0xffff7972])
Reallocating (@92, 0xffffe510 [rwRW,0xffffe510-0xffffe511]) from 1 size to 19
new address: (@1593, 0xffff7380 [rwRW,0xffff7380-0xffff7393])
Done
clang-riscv-O0-bounds-everywhere-unsafe [Inferior 1 (process 31506) exited with code 01]
Reallocating 0x40a1e040 [rwRW,0x40a1e040-0x40a1e053] from 19 size to 1
new address: 0x40a0e050 [rwRW,0x40a0e050-0x40a0e051]
Reallocating 0x40a1e020 [rwRW,0x40a1e020-0x40a1e032] from 18 size to 2
new address: 0x40a0e058 [rwRW,0x40a0e058-0x40a0e05a]
! not sufficiently aligned pointer
GDB failed
clang-riscv-O0-bounds-very-aggressive [Inferior 1 (process 31484) exited with code 01]
Reallocating 0x40a1e040 [rwRW,0x40a1e040-0x40a1e053] from 19 size to 1
new address: 0x40a0e050 [rwRW,0x40a0e050-0x40a0e051]
Reallocating 0x40a1e020 [rwRW,0x40a1e020-0x40a1e032] from 18 size to 2
new address: 0x40a0e058 [rwRW,0x40a0e058-0x40a0e05a]
! not sufficiently aligned pointer
GDB failed
clang-riscv-O0-bounds-aggressive [Inferior 1 (process 31462) exited with code 01]
Reallocating 0x40a1e040 [rwRW,0x40a1e040-0x40a1e053] from 19 size to 1
new address: 0x40a0e050 [rwRW,0x40a0e050-0x40a0e051]
Reallocating 0x40a1e020 [rwRW,0x40a1e020-0x40a1e032] from 18 size to 2
new address: 0x40a0e058 [rwRW,0x40a0e058-0x40a0e05a]
! not sufficiently aligned pointer
GDB failed
clang-riscv-O0-bounds-subobject-safe [Inferior 1 (process 31418) exited with code 01]
Reallocating 0x40a1e040 [rwRW,0x40a1e040-0x40a1e053] from 19 size to 1
new address: 0x40a0e050 [rwRW,0x40a0e050-0x40a0e051]
Reallocating 0x40a1e020 [rwRW,0x40a1e020-0x40a1e032] from 18 size to 2
new address: 0x40a0e058 [rwRW,0x40a0e058-0x40a0e05a]
! not sufficiently aligned pointer
GDB failed
clang-riscv-O0-bounds-references-only [Inferior 1 (process 31396) exited with code 01]
Reallocating 0x40a1e040 [rwRW,0x40a1e040-0x40a1e053] from 19 size to 1
new address: 0x40a0e050 [rwRW,0x40a0e050-0x40a0e051]
Reallocating 0x40a1e020 [rwRW,0x40a1e020-0x40a1e032] from 18 size to 2
new address: 0x40a0e058 [rwRW,0x40a0e058-0x40a0e05a]
! not sufficiently aligned pointer
GDB failed
clang-riscv-O3-bounds-conservative
clang-riscv-O3-bounds-subobject-safe Reallocating 0x40a1e040 [rwRW,0x40a1e040-0x40a1e053] from 19 size to 1
new address: 0x40a0e050 [rwRW,0x40a0e050-0x40a0e051]
Reallocating 0x40a1e020 [rwRW,0x40a1e020-0x40a1e032] from 18 size to 2
new address: 0x40a0e058 [rwRW,0x40a0e058-0x40a0e05a]
Reallocating 0x40a1e000 [rwRW,0x40a1e000-0x40a1e011] from 17 size to 3
new address: 0x40a0e060 [rwRW,0x40a0e060-0x40a0e063]
Reallocating 0x40a1d070 [rwRW,0x40a1d070-0x40a1d080] from 16 size to 4
new address: 0x40a0e068 [rwRW,0x40a0e068-0x40a0e06c]
Reallocating 0x40a1d060 [rwRW,0x40a1d060-0x40a1d06f] from 15 size to 5
new address: 0x40a0e070 [rwRW,0x40a0e070-0x40a0e075]
Reallocating 0x40a1d050 [rwRW,0x40a1d050-0x40a1d05e] from 14 size to 6
new address: 0x40a0e078 [rwRW,0x40a0e078-0x40a0e07e]
Reallocating 0x40a1d040 [rwRW,0x40a1d040-0x40a1d04d] from 13 size to 7
new address: 0x40a0e080 [rwRW,0x40a0e080-0x40a0e087]
Reallocating 0x40a1d030 [rwRW,0x40a1d030-0x40a1d03c] from 12 size to 8
new address: 0x40a0e088 [rwRW,0x40a0e088-0x40a0e090]
Reallocating 0x40a1d020 [rwRW,0x40a1d020-0x40a1d02b] from 11 size to 9
address unchanged
Reallocating 0x40a1d010 [rwRW,0x40a1d010-0x40a1d01a] from 10 size to 10
address unchanged
Reallocating 0x40a1d000 [rwRW,0x40a1d000-0x40a1d009] from 9 size to 11
address unchanged
Reallocating 0x40a0e048 [rwRW,0x40a0e048-0x40a0e050] from 8 size to 12
new address: 0x40a1d030 [rwRW,0x40a1d030-0x40a1d03c]
Reallocating 0x40a0e040 [rwRW,0x40a0e040-0x40a0e047] from 7 size to 13
new address: 0x40a1d040 [rwRW,0x40a1d040-0x40a1d04d]
Reallocating 0x40a0e038 [rwRW,0x40a0e038-0x40a0e03e] from 6 size to 14
new address: 0x40a1d050 [rwRW,0x40a1d050-0x40a1d05e]
Reallocating 0x40a0e030 [rwRW,0x40a0e030-0x40a0e035] from 5 size to 15
new address: 0x40a1d060 [rwRW,0x40a1d060-0x40a1d06f]
Reallocating 0x40a0e028 [rwRW,0x40a0e028-0x40a0e02c] from 4 size to 16
new address: 0x40a1d070 [rwRW,0x40a1d070-0x40a1d080]
Reallocating 0x40a0e020 [rwRW,0x40a0e020-0x40a0e023] from 3 size to 17
new address: 0x40a1e000 [rwRW,0x40a1e000-0x40a1e011]
Reallocating 0x40a0e018 [rwRW,0x40a0e018-0x40a0e01a] from 2 size to 18
new address: 0x40a1e020 [rwRW,0x40a1e020-0x40a1e032]
Reallocating 0x40a0e010 [rwRW,0x40a0e010-0x40a0e011] from 1 size to 19
new address: 0x40a1e040 [rwRW,0x40a1e040-0x40a1e053]
Done
clang-riscv-O0-bounds-conservative [Inferior 1 (process 31352) exited with code 01]
Reallocating 0x40a1e040 [rwRW,0x40a1e040-0x40a1e053] from 19 size to 1
new address: 0x40a0e050 [rwRW,0x40a0e050-0x40a0e051]
Reallocating 0x40a1e020 [rwRW,0x40a1e020-0x40a1e032] from 18 size to 2
new address: 0x40a0e058 [rwRW,0x40a0e058-0x40a0e05a]
! not sufficiently aligned pointer
GDB failed
clang-morello-O0-bounds-everywhere-unsafe [Inferior 1 (process 31763) exited with code 01]
Reallocating 0x40c1e040 [rwRW,0x40c1e040-0x40c1e053] from 19 size to 1
new address: 0x40c0e050 [rwRW,0x40c0e050-0x40c0e051]
Reallocating 0x40c1e020 [rwRW,0x40c1e020-0x40c1e032] from 18 size to 2
new address: 0x40c0e058 [rwRW,0x40c0e058-0x40c0e05a]
! not sufficiently aligned pointer
GDB failed
clang-morello-O0-bounds-very-aggressive [Inferior 1 (process 31741) exited with code 01]
Reallocating 0x40c1e040 [rwRW,0x40c1e040-0x40c1e053] from 19 size to 1
new address: 0x40c0e050 [rwRW,0x40c0e050-0x40c0e051]
Reallocating 0x40c1e020 [rwRW,0x40c1e020-0x40c1e032] from 18 size to 2
new address: 0x40c0e058 [rwRW,0x40c0e058-0x40c0e05a]
! not sufficiently aligned pointer
GDB failed
clang-morello-O0-bounds-aggressive [Inferior 1 (process 31719) exited with code 01]
Reallocating 0x40c1e040 [rwRW,0x40c1e040-0x40c1e053] from 19 size to 1
new address: 0x40c0e050 [rwRW,0x40c0e050-0x40c0e051]
Reallocating 0x40c1e020 [rwRW,0x40c1e020-0x40c1e032] from 18 size to 2
new address: 0x40c0e058 [rwRW,0x40c0e058-0x40c0e05a]
! not sufficiently aligned pointer
GDB failed
clang-morello-O0-bounds-subobject-safe [Inferior 1 (process 31675) exited with code 01]
Reallocating 0x40c1e040 [rwRW,0x40c1e040-0x40c1e053] from 19 size to 1
new address: 0x40c0e050 [rwRW,0x40c0e050-0x40c0e051]
Reallocating 0x40c1e020 [rwRW,0x40c1e020-0x40c1e032] from 18 size to 2
new address: 0x40c0e058 [rwRW,0x40c0e058-0x40c0e05a]
! not sufficiently aligned pointer
GDB failed
clang-morello-O0-bounds-references-only [Inferior 1 (process 31653) exited with code 01]
Reallocating 0x40c1e040 [rwRW,0x40c1e040-0x40c1e053] from 19 size to 1
new address: 0x40c0e050 [rwRW,0x40c0e050-0x40c0e051]
Reallocating 0x40c1e020 [rwRW,0x40c1e020-0x40c1e032] from 18 size to 2
new address: 0x40c0e058 [rwRW,0x40c0e058-0x40c0e05a]
! not sufficiently aligned pointer
GDB failed
clang-morello-O3-bounds-conservative
clang-morello-O3-bounds-subobject-safe Reallocating 0x40c1e040 [rwRW,0x40c1e040-0x40c1e053] from 19 size to 1
new address: 0x40c0e050 [rwRW,0x40c0e050-0x40c0e051]
Reallocating 0x40c1e020 [rwRW,0x40c1e020-0x40c1e032] from 18 size to 2
new address: 0x40c0e058 [rwRW,0x40c0e058-0x40c0e05a]
Reallocating 0x40c1e000 [rwRW,0x40c1e000-0x40c1e011] from 17 size to 3
new address: 0x40c0e060 [rwRW,0x40c0e060-0x40c0e063]
Reallocating 0x40c1d070 [rwRW,0x40c1d070-0x40c1d080] from 16 size to 4
new address: 0x40c0e068 [rwRW,0x40c0e068-0x40c0e06c]
Reallocating 0x40c1d060 [rwRW,0x40c1d060-0x40c1d06f] from 15 size to 5
new address: 0x40c0e070 [rwRW,0x40c0e070-0x40c0e075]
Reallocating 0x40c1d050 [rwRW,0x40c1d050-0x40c1d05e] from 14 size to 6
new address: 0x40c0e078 [rwRW,0x40c0e078-0x40c0e07e]
Reallocating 0x40c1d040 [rwRW,0x40c1d040-0x40c1d04d] from 13 size to 7
new address: 0x40c0e080 [rwRW,0x40c0e080-0x40c0e087]
Reallocating 0x40c1d030 [rwRW,0x40c1d030-0x40c1d03c] from 12 size to 8
new address: 0x40c0e088 [rwRW,0x40c0e088-0x40c0e090]
Reallocating 0x40c1d020 [rwRW,0x40c1d020-0x40c1d02b] from 11 size to 9
address unchanged
Reallocating 0x40c1d010 [rwRW,0x40c1d010-0x40c1d01a] from 10 size to 10
address unchanged
Reallocating 0x40c1d000 [rwRW,0x40c1d000-0x40c1d009] from 9 size to 11
address unchanged
Reallocating 0x40c0e048 [rwRW,0x40c0e048-0x40c0e050] from 8 size to 12
new address: 0x40c1d030 [rwRW,0x40c1d030-0x40c1d03c]
Reallocating 0x40c0e040 [rwRW,0x40c0e040-0x40c0e047] from 7 size to 13
new address: 0x40c1d040 [rwRW,0x40c1d040-0x40c1d04d]
Reallocating 0x40c0e038 [rwRW,0x40c0e038-0x40c0e03e] from 6 size to 14
new address: 0x40c1d050 [rwRW,0x40c1d050-0x40c1d05e]
Reallocating 0x40c0e030 [rwRW,0x40c0e030-0x40c0e035] from 5 size to 15
new address: 0x40c1d060 [rwRW,0x40c1d060-0x40c1d06f]
Reallocating 0x40c0e028 [rwRW,0x40c0e028-0x40c0e02c] from 4 size to 16
new address: 0x40c1d070 [rwRW,0x40c1d070-0x40c1d080]
Reallocating 0x40c0e020 [rwRW,0x40c0e020-0x40c0e023] from 3 size to 17
new address: 0x40c1e000 [rwRW,0x40c1e000-0x40c1e011]
Reallocating 0x40c0e018 [rwRW,0x40c0e018-0x40c0e01a] from 2 size to 18
new address: 0x40c1e020 [rwRW,0x40c1e020-0x40c1e032]
Reallocating 0x40c0e010 [rwRW,0x40c0e010-0x40c0e011] from 1 size to 19
new address: 0x40c1e040 [rwRW,0x40c1e040-0x40c1e053]
Done
clang-morello-O0-bounds-conservative [Inferior 1 (process 31609) exited with code 01]
Reallocating 0x40c1e040 [rwRW,0x40c1e040-0x40c1e053] from 19 size to 1
new address: 0x40c0e050 [rwRW,0x40c0e050-0x40c0e051]
Reallocating 0x40c1e020 [rwRW,0x40c1e020-0x40c1e032] from 18 size to 2
new address: 0x40c0e058 [rwRW,0x40c0e058-0x40c0e05a]
! not sufficiently aligned pointer
GDB failed
gcc-morello-O0
gcc-morello-O3 Reallocating 0x40000370 [rwRW,0x40000370-0x40000383] from 19 size to 1
address unchanged
Reallocating 0x40000340 [rwRW,0x40000340-0x40000352] from 18 size to 2
address unchanged
Reallocating 0x40000310 [rwRW,0x40000310-0x40000321] from 17 size to 3
address unchanged
Reallocating 0x400002e0 [rwRW,0x400002e0-0x400002f0] from 16 size to 4
address unchanged
Reallocating 0x400002b0 [rwRW,0x400002b0-0x400002bf] from 15 size to 5
address unchanged
Reallocating 0x40000280 [rwRW,0x40000280-0x4000028e] from 14 size to 6
address unchanged
Reallocating 0x40000250 [rwRW,0x40000250-0x4000025d] from 13 size to 7
address unchanged
Reallocating 0x40000220 [rwRW,0x40000220-0x4000022c] from 12 size to 8
address unchanged
Reallocating 0x400001f0 [rwRW,0x400001f0-0x400001fb] from 11 size to 9
address unchanged
Reallocating 0x400001c0 [rwRW,0x400001c0-0x400001ca] from 10 size to 10
address unchanged
Reallocating 0x40000190 [rwRW,0x40000190-0x40000199] from 9 size to 11
address unchanged
Reallocating 0x40000160 [rwRW,0x40000160-0x40000168] from 8 size to 12
address unchanged
Reallocating 0x40000130 [rwRW,0x40000130-0x40000137] from 7 size to 13
address unchanged
Reallocating 0x40000100 [rwRW,0x40000100-0x40000106] from 6 size to 14
address unchanged
Reallocating 0x400000d0 [rwRW,0x400000d0-0x400000d5] from 5 size to 15
address unchanged
Reallocating 0x400000a0 [rwRW,0x400000a0-0x400000a4] from 4 size to 16
address unchanged
Reallocating 0x40000070 [rwRW,0x40000070-0x40000073] from 3 size to 17
address unchanged
Reallocating 0x40000040 [rwRW,0x40000040-0x40000042] from 2 size to 18
address unchanged
Reallocating 0x40000010 [rwRW,0x40000010-0x40000011] from 1 size to 19
address unchanged
Done