alloca

alloca f executes the computation f, passing as argument a pointer to a temporarily allocated block of memory sufficient to hold values of type a. The memory is freed when f terminates (either normally or via an exception), so the pointer passed to f must not be used after this.
Unlifted alloca.
Allocate amount * sizeof(tp) bytes on the stack * tp: LlvmType to reserve room for * amount: The nr of tp's which must be allocated
allocaBytes n f executes the computation f, passing as argument a pointer to a temporarily allocated block of memory of n bytes. The block of memory is sufficiently aligned for any of the basic foreign types that fits into a memory block of the allocated size. The memory is freed when f terminates (either normally or via an exception), so the pointer passed to f must not be used after this.
allocaBytesAligned size align f executes the computation f, passing as argument a pointer to a temporarily allocated block of memory of size bytes and aligned to align bytes. The value of align must be a power of two. The memory is freed when f terminates (either normally or via an exception), so the pointer passed to f must not be used after this.
Temporarily allocate space for the given number of elements (like alloca, but for multiple elements).
Like allocaArray, but add an extra position to hold a special termination element.
Total bytes allocated
Allocate a resource and register an action with the MonadResource to free the resource.
Perform some allocation, and automatically register a cleanup action. This is almost identical to calling the allocation and then registering the release action, but this properly handles masking of asynchronous exceptions. Since 0.3.0
Perform some allocation where the return value is not required, and automatically register a cleanup action. allocate_ is to allocate as bracket_ is to bracket This is almost identical to calling the allocation and then registering the release action, but this properly handles masking of asynchronous exceptions.
Unlifted allocate.
Allocating a buffer with malloc().
Registers available to the register allocator. These are all registers minus those with a fixed role in RISCV ABI (zero, lr, sp, gp, tp, fp, tmp) and GHC RTS (Base, Sp, Hp, HpLim, R1..R8, F1..F6, D1..D6.)
Set corresponding register bit to 0
Go through the comment_q in PState and remove all comments that belong within the given span