4.9.5. __user_heap_extend()

This function can be defined to return extra blocks of memory, separate from the initial one, to be used by the heap. If defined, this function must return the size and base address of an 8-byte aligned heap extension block.


unsigned __user_heap_extend(int 0, unsigned requested_size, void **base);


There is no default implementation of this function. If youdefine this function, it must have the following characteristics:

  • The returned size must be either:

    • a multiple of eight bytes of at least the requested size

    • 0, denoting that the request cannot be honored.

  • Size is measured in bytes.

  • The function is subject only to ATPCS constraints.

  • The first argument must be zero on entry. The base is returned in the register holding this argument.

  • The returned base address must be aligned on an 8-byte boundary.

Copyright © 1999-2001 ARM Limited. All rights reserved.ARM DUI 0067D