Machine Code Generation for C++
Tests whether the constant-pool is empty.
Returns the size of the constant-pool in bytes.
Returns minimum alignment.
Adds a constant to the constant pool.
The constant must have known size, which is 1, 2, 4, 8, 16 or 32 bytes. The constant is added to the pool only if it doesn't not exist, otherwise cached value is returned.
AsmJit is able to subdivide added constants, so for example if you add 8-byte constant 0x1122334455667788 it will create the following slots:
8-byte: 0x1122334455667788 4-byte: 0x11223344, 0x55667788
The reason is that when combining MMX/SSE/AVX code some patterns are used frequently. However, AsmJit is not able to reallocate a constant that has been already added. For example if you try to add 4-byte constant and then 8-byte constant having the same 4-byte pattern as the previous one, two independent slots will be generated by the pool.
Fills the destination with the content of this constant pool.
Tree per size.
Gaps per size.
Size of the pool (in bytes).
Required pool alignment.