forked from I2P_Developers/i2p.i2p
fixup @since after prop
This commit is contained in:
@ -109,14 +109,14 @@ public class CPUID {
|
||||
/**
|
||||
* Get the jbigi version, only available since jbigi version 3
|
||||
* Caller must catch Throwable
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
private native static int nativeJcpuidVersion();
|
||||
|
||||
/**
|
||||
* Get the jcpuid version
|
||||
* @return 0 if no jcpuid available, 2 if version not supported
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
private static int fetchJcpuidVersion() {
|
||||
if (!_nativeOk)
|
||||
@ -226,7 +226,7 @@ public class CPUID {
|
||||
}
|
||||
|
||||
/**
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
static int getExtendedEBXFeatureFlags()
|
||||
{
|
||||
@ -239,7 +239,7 @@ public class CPUID {
|
||||
|
||||
/**
|
||||
* There's almost nothing in here.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
static int getExtendedECXFeatureFlags()
|
||||
{
|
||||
|
@ -48,7 +48,7 @@ class CPUIDCPUInfo implements CPUInfo
|
||||
|
||||
/**
|
||||
* @return true iff the CPU supports the AVX instruction set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasAVX()
|
||||
{
|
||||
@ -59,7 +59,7 @@ class CPUIDCPUInfo implements CPUInfo
|
||||
|
||||
/**
|
||||
* @return true iff the CPU supports the AVX2 instruction set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasAVX2() {
|
||||
return (CPUID.getExtendedEBXFeatureFlags() & (1 << 5)) != 0; //Extended EBX Feature Bit 5
|
||||
@ -77,7 +77,7 @@ class CPUIDCPUInfo implements CPUInfo
|
||||
* ref: https://en.wikipedia.org/wiki/AVX-512
|
||||
*
|
||||
* @return true iff the CPU supports the AVX-512 Foundation instruction set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasAVX512()
|
||||
{
|
||||
@ -91,7 +91,7 @@ class CPUIDCPUInfo implements CPUInfo
|
||||
* Unused until GMP 6.1.
|
||||
*
|
||||
* @return true iff the CPU supports the ADX instruction set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasADX()
|
||||
{
|
||||
@ -100,7 +100,7 @@ class CPUIDCPUInfo implements CPUInfo
|
||||
|
||||
/**
|
||||
* @return true iff the CPU supports TBM.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasTBM()
|
||||
{
|
||||
@ -117,7 +117,7 @@ class CPUIDCPUInfo implements CPUInfo
|
||||
|
||||
/**
|
||||
* @return true iff the CPU supports the 64-bit support
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasX64() {
|
||||
return (CPUID.getExtendedEDXCPUFlags() & (1 << 29)) != 0; //Extended EDX Bit 29
|
||||
@ -125,7 +125,7 @@ class CPUIDCPUInfo implements CPUInfo
|
||||
|
||||
/**
|
||||
* @return true iff the CPU supports the BMI1 instruction set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasBMI1() {
|
||||
return (CPUID.getExtendedEBXFeatureFlags() & (1 << 3)) != 0; // Extended EBX Feature Bit 3
|
||||
@ -133,7 +133,7 @@ class CPUIDCPUInfo implements CPUInfo
|
||||
|
||||
/**
|
||||
* @return true iff the CPU supports the BMI2 instruction set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasBMI2() {
|
||||
return (CPUID.getExtendedEBXFeatureFlags() & (1 << 8)) != 0; // Extended EBX Feature Bit 8
|
||||
@ -141,7 +141,7 @@ class CPUIDCPUInfo implements CPUInfo
|
||||
|
||||
/**
|
||||
* @return true iff the CPU supports the FMA3 instruction set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasFMA3() {
|
||||
return (CPUID.getECXCPUFlags() & (1 << 12)) != 0; // ECX Bit 12
|
||||
@ -149,7 +149,7 @@ class CPUIDCPUInfo implements CPUInfo
|
||||
|
||||
/**
|
||||
* @return true iff the CPU supports the MOVBE instruction set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasMOVBE() {
|
||||
return (CPUID.getECXCPUFlags() & (1 << 22)) != 0; // ECX Bit 22
|
||||
@ -158,7 +158,7 @@ class CPUIDCPUInfo implements CPUInfo
|
||||
/**
|
||||
* Also known as LZCNT
|
||||
* @return true iff the CPU supports the ABM instruction set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasABM() {
|
||||
return (CPUID.getExtendedECXCPUFlags() & (1 << 5)) != 0; // Extended ECX Bit 5
|
||||
|
@ -71,13 +71,13 @@ public interface CPUInfo
|
||||
|
||||
/**
|
||||
* @return true iff the CPU supports the AVX instruction set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasAVX();
|
||||
|
||||
/**
|
||||
* @return true iff the CPU supports the AVX2 instruction set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasAVX2();
|
||||
|
||||
@ -93,7 +93,7 @@ public interface CPUInfo
|
||||
* ref: https://en.wikipedia.org/wiki/AVX-512
|
||||
*
|
||||
* @return true iff the CPU supports the AVX-512 Foundation instruction set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasAVX512();
|
||||
|
||||
@ -104,13 +104,13 @@ public interface CPUInfo
|
||||
* Unused until GMP 6.1.
|
||||
*
|
||||
* @return true iff the CPU supports the ADX instruction set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasADX();
|
||||
|
||||
/**
|
||||
* @return true iff the CPU supports TBM.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasTBM();
|
||||
|
||||
@ -122,38 +122,38 @@ public interface CPUInfo
|
||||
|
||||
/**
|
||||
* @return true iff the CPU supports the 64-bit support
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasX64();
|
||||
|
||||
/**
|
||||
* @return true iff the CPU supports the BMI1 instruction set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasBMI1();
|
||||
|
||||
/**
|
||||
* @return true iff the CPU supports the BMI2 instruction set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasBMI2();
|
||||
|
||||
/**
|
||||
* @return true iff the CPU supports the FMA3 instruction set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasFMA3();
|
||||
|
||||
/**
|
||||
* @return true iff the CPU supports the MOVBE instruction set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasMOVBE();
|
||||
|
||||
/**
|
||||
* Also known as LZCNT
|
||||
* @return true iff the CPU supports the ABM instruction set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean hasABM();
|
||||
}
|
||||
|
@ -79,7 +79,7 @@ public interface IntelCPUInfo extends CPUInfo {
|
||||
* Supports the AVX 1 instructions.
|
||||
* In general, this requires 32nm or smaller process.
|
||||
* @return true if the CPU implements at least a SandyBridge level instruction/feature set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean IsSandyCompatible();
|
||||
|
||||
@ -93,7 +93,7 @@ public interface IntelCPUInfo extends CPUInfo {
|
||||
* Ivy Bridge is a successor to Sandy Bridge, so use IsSandyCompatible().
|
||||
*
|
||||
* @return true if the CPU implements at least a IvyBridge level instruction/feature set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean IsIvyCompatible();
|
||||
|
||||
@ -115,7 +115,7 @@ public interface IntelCPUInfo extends CPUInfo {
|
||||
*
|
||||
* In general, this requires 22nm or smaller process.
|
||||
* @return true if the CPU implements at least a Haswell level instruction/feature set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean IsHaswellCompatible();
|
||||
|
||||
@ -136,7 +136,7 @@ public interface IntelCPUInfo extends CPUInfo {
|
||||
* and Corei-compatible if they do not.
|
||||
*
|
||||
* @return true if the CPU implements at least a Broadwell level instruction/feature set.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public boolean IsBroadwellCompatible();
|
||||
}
|
||||
|
@ -157,10 +157,10 @@ public class NativeBigInteger extends BigInteger {
|
||||
/** all libjbibi builds are identical to pentium3, case handled in getMiddleName2() */
|
||||
private final static String JBIGI_OPTIMIZATION_VIAC32 = "viac32";
|
||||
/**
|
||||
* The optimization levels defined here are since 0.9.25. Each of the 32-bit processors below
|
||||
* The optimization levels defined here are since 0.9.26. Each of the 32-bit processors below
|
||||
* needs an explicit fallback in getResourceList() or getMiddleName2().
|
||||
* 64-bit processors will fallback to athlon64 and athlon in getResourceList().
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
private final static String JBIGI_OPTIMIZATION_COREI_SBR = "coreisbr";
|
||||
private final static String JBIGI_OPTIMIZATION_COREI_HWL = "coreihwl";
|
||||
@ -181,7 +181,7 @@ public class NativeBigInteger extends BigInteger {
|
||||
|
||||
/**
|
||||
* ARM
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
private final static String JBIGI_OPTIMIZATION_ARM_ARMV5 = "armv5";
|
||||
private final static String JBIGI_OPTIMIZATION_ARM_ARMV6 = "armv6";
|
||||
@ -194,7 +194,7 @@ public class NativeBigInteger extends BigInteger {
|
||||
|
||||
/**
|
||||
* None, no optimizations. The default fallback for x86.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
private final static String JBIGI_OPTIMIZATION_X86 = "none";
|
||||
|
||||
@ -507,51 +507,51 @@ public class NativeBigInteger extends BigInteger {
|
||||
* big endian twos complement representation of the modulus
|
||||
* @return big endian twos complement representation of (base ^ exponent) % modulus
|
||||
* @throws ArithmeticException if modulus <= 0
|
||||
* @since 0.9.25 and libjbigi version 3
|
||||
* @since 0.9.26 and libjbigi version 3
|
||||
*/
|
||||
private native static byte[] nativeModPowCT(byte base[], byte exponent[], byte modulus[]);
|
||||
|
||||
/**
|
||||
* @since 0.9.25 and libjbigi version 3
|
||||
* @since 0.9.26 and libjbigi version 3
|
||||
* @throws ArithmeticException
|
||||
*/
|
||||
private native static byte[] nativeModInverse(byte base[], byte d[]);
|
||||
|
||||
/**
|
||||
* Only for testing jbigi's negative conversion functions!
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
//private native static byte[] nativeNeg(byte d[]);
|
||||
|
||||
/**
|
||||
* Get the jbigi version, only available since jbigi version 3
|
||||
* Caller must catch Throwable
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
private native static int nativeJbigiVersion();
|
||||
|
||||
/**
|
||||
* Get the libmp version, only available since jbigi version 3
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
private native static int nativeGMPMajorVersion();
|
||||
|
||||
/**
|
||||
* Get the libmp version, only available since jbigi version 3
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
private native static int nativeGMPMinorVersion();
|
||||
|
||||
/**
|
||||
* Get the libmp version, only available since jbigi version 3
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
private native static int nativeGMPPatchVersion();
|
||||
|
||||
/**
|
||||
* Get the jbigi version
|
||||
* @return 0 if no jbigi available, 2 if version not supported
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
private static int fetchJbigiVersion() {
|
||||
if (!_nativeOk)
|
||||
@ -566,7 +566,7 @@ public class NativeBigInteger extends BigInteger {
|
||||
/**
|
||||
* Set the jbigi and libgmp versions. Call after loading.
|
||||
* Sets _jbigiVersion, _nativeOk3, and _libGMPVersion.
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
private static void setVersions() {
|
||||
_jbigiVersion = fetchJbigiVersion();
|
||||
@ -588,7 +588,7 @@ public class NativeBigInteger extends BigInteger {
|
||||
/**
|
||||
* Get the jbigi version
|
||||
* @return 0 if no jbigi available, 2 if version info not supported
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public static int getJbigiVersion() {
|
||||
return _jbigiVersion;
|
||||
@ -597,7 +597,7 @@ public class NativeBigInteger extends BigInteger {
|
||||
/**
|
||||
* Get the libgmp version
|
||||
* @return "unknown" if no jbigi available or if version not supported
|
||||
* @since 0.9.25
|
||||
* @since 0.9.26
|
||||
*/
|
||||
public static String getLibGMPVersion() {
|
||||
return _libGMPVersion;
|
||||
@ -654,7 +654,7 @@ public class NativeBigInteger extends BigInteger {
|
||||
|
||||
/**
|
||||
* @throws ArithmeticException if m <= 0
|
||||
* @since 0.9.25 and libjbigi version 3 and GMP version 5
|
||||
* @since 0.9.26 and libjbigi version 3 and GMP version 5
|
||||
*/
|
||||
public BigInteger modPowCT(BigInteger exponent, BigInteger m) {
|
||||
if (_nativeCTOk)
|
||||
@ -665,7 +665,7 @@ public class NativeBigInteger extends BigInteger {
|
||||
|
||||
/**
|
||||
* @throws ArithmeticException if not coprime with m, or m <= 0
|
||||
* @since 0.9.25 and libjbigi version 3
|
||||
* @since 0.9.26 and libjbigi version 3
|
||||
*/
|
||||
@Override
|
||||
public BigInteger modInverse(BigInteger m) {
|
||||
@ -1006,12 +1006,12 @@ public class NativeBigInteger extends BigInteger {
|
||||
_loadStatus = s;
|
||||
}
|
||||
|
||||
/** @since 0.9.25 */
|
||||
/** @since 0.9.26 */
|
||||
private static void error(String s) {
|
||||
error(s, null);
|
||||
}
|
||||
|
||||
/** @since 0.9.25 */
|
||||
/** @since 0.9.26 */
|
||||
private static void error(String s, Throwable t) {
|
||||
if(_doLog) {
|
||||
System.err.println("ERROR: " + s);
|
||||
|
Reference in New Issue
Block a user