libdivide allows you to replace expensive integer divides with comparatively cheap multiplication and bitshifts. Compilers usually do this, but only when the divisor is known at compile time. libdivide allows you to take advantage of it at runtime. The result is that integer division can become faster - a lot faster.
LWJGL: This is a hybrid implementation. Divider recovery methods use standard JNI bindings. All *_gen, *_do &
*_get_algorithm functions have been ported to pure Java. This eliminates the JNI overhead and enables the JVM to inline and further optimize
these methods.
| Modifier and Type | Field and Description |
|---|---|
| public static final int | |
| public static final int | |
| public static final int | |
| public static final int | |
| public static final int | |
| public static final int | LIBDIVIDE_VERSION_MAJOR
Library version. |
| public static final int | LIBDIVIDE_VERSION_MINOR
Library version. |
| Access | Constructor and Description |
|---|---|
| protected |
| Modifier and Type | Method and Description |
|---|---|
| private static long | |
| private static int | |
| private static int | |
| private static int | |
| private static int | |
| public static short | |
| public static short | |
| pack-priv static short | |
| public static LibDivideS16BranchFree | |
| pack-priv static LibDivideS16BranchFree | |
| public static short | |
| public static short | |
| public static short | |
| pack-priv static short | |
| public static LibDivideS16 | |
| pack-priv static LibDivideS16 | |
| public static short | |
| public static int | |
| public static int | |
| pack-priv static int | |
| public static LibDivideS32BranchFree | |
| pack-priv static LibDivideS32BranchFree | |
| public static int | |
| public static int | |
| public static int | |
| pack-priv static int | |
| public static LibDivideS32 | |
| pack-priv static LibDivideS32 | |
| public static int | |
| public static long | |
| public static long | |
| pack-priv static long | |
| public static LibDivideS64BranchFree | |
| pack-priv static LibDivideS64BranchFree | |
| public static long | |
| public static long | |
| public static long | |
| pack-priv static long | |
| public static LibDivideS64 | |
| pack-priv static LibDivideS64 | |
| public static long | |
| public static short | |
| public static short | |
| pack-priv static short | |
| public static LibDivideU16BranchFree | |
| pack-priv static LibDivideU16BranchFree | |
| public static short | |
| public static short | |
| public static short | |
| pack-priv static short | |
| public static LibDivideU16 | |
| pack-priv static LibDivideU16 | |
| public static short | |
| public static int | |
| public static int | |
| pack-priv static int | |
| public static LibDivideU32BranchFree | |
| pack-priv static LibDivideU32BranchFree | |
| public static int | |
| public static int | |
| public static int | |
| pack-priv static int | |
| public static LibDivideU32 | |
| pack-priv static LibDivideU32 | |
| public static int | |
| public static long | |
| public static long | |
| pack-priv static long | |
| public static LibDivideU64BranchFree | |
| pack-priv static LibDivideU64BranchFree | |
| public static long | |
| public static long | |
| public static long | |
| pack-priv static long | |
| public static LibDivideU64 | |
| pack-priv static LibDivideU64 | |
| public static long | |
| pack-priv static native short | |
| pack-priv static native void | |
| public static native short | |
| pack-priv static native short | |
| pack-priv static native void | |
| public static native short | |
| pack-priv static native int | |
| pack-priv static native void | |
| public static native int | |
| pack-priv static native int | |
| pack-priv static native void | |
| public static native int | |
| pack-priv static native long | |
| pack-priv static native void | |
| public static native long | |
| pack-priv static native long | |
| pack-priv static native void | |
| public static native long | |
| pack-priv static native short | |
| pack-priv static native void | |
| public static native short | |
| pack-priv static native short | |
| pack-priv static native void | |
| public static native short | |
| pack-priv static native int | |
| pack-priv static native void | |
| public static native int | |
| pack-priv static native int | |
| pack-priv static native void | |
| public static native int | |
| pack-priv static native long | |
| pack-priv static native void | |
| public static native long | |
| pack-priv static native long | |
| pack-priv static native void | |
| public static native long |