y-cruncher Multi-Precision Library

A Multi-threaded Multi-Precision Arithmetic Library

(Powered by y-cruncher)

(Last updated: March 3, 2016)

 

Shortcuts:

YMP Library:

Large Number Objects:

Low-Level Programming:

Globals

 

Miscellaneous global variables and datatypes used by the YMP library (as well as y-cruncher itself).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Primitive Datatypes:

Type Description Notes
u32_t
s32_t
32-bit integer  
u64_t
s64_t
64-bit integer  
upL_t
spL_t
Pointer Length

Usually the same size as size_t. It is used for lengths and sizes that fit into the memory address space. These are 32 or 64-bit integers.

ufL_t
sfL_t
File Length

Same as upL_t and spL_t but for file lengths.

Currently, these are always 64-bit integers. Guaranteed to be at least as large as the pointer length types.

uiL_t
siL_t
Index Length

An integer type that is large enough to do all memory calculations. Currently, these are 64-bit integers on all targets.

 

 


Alignment:

const upL_t ALIGNMENT;

Description:

The natural alignment of the target processor. In most cases, this is the size of the largest SIMD vector.

Most functions that require the user to pass in a scratch buffer will require that the buffer be aligned to this alignment.