2018-10-31 02:43:02 +01:00
|
|
|
using System.Runtime.Intrinsics.X86;
|
|
|
|
|
|
|
|
public static class Optimizations
|
|
|
|
{
|
|
|
|
internal static bool FastFP = true;
|
|
|
|
|
|
|
|
private static bool _useAllSseIfAvailable = true;
|
|
|
|
|
|
|
|
private static bool _useSseIfAvailable = true;
|
|
|
|
private static bool _useSse2IfAvailable = true;
|
2018-12-26 18:11:36 +01:00
|
|
|
private static bool _useSse3IfAvailable = true;
|
2018-12-02 01:34:43 +01:00
|
|
|
private static bool _useSsse3IfAvailable = true;
|
2018-10-31 02:43:02 +01:00
|
|
|
private static bool _useSse41IfAvailable = true;
|
|
|
|
private static bool _useSse42IfAvailable = true;
|
|
|
|
|
|
|
|
internal static bool UseSse = (_useAllSseIfAvailable && _useSseIfAvailable) && Sse.IsSupported;
|
|
|
|
internal static bool UseSse2 = (_useAllSseIfAvailable && _useSse2IfAvailable) && Sse2.IsSupported;
|
2018-12-26 18:11:36 +01:00
|
|
|
internal static bool UseSse3 = (_useAllSseIfAvailable && _useSse3IfAvailable) && Sse3.IsSupported;
|
2018-12-02 01:34:43 +01:00
|
|
|
internal static bool UseSsse3 = (_useAllSseIfAvailable && _useSsse3IfAvailable) && Ssse3.IsSupported;
|
2018-10-31 02:43:02 +01:00
|
|
|
internal static bool UseSse41 = (_useAllSseIfAvailable && _useSse41IfAvailable) && Sse41.IsSupported;
|
|
|
|
internal static bool UseSse42 = (_useAllSseIfAvailable && _useSse42IfAvailable) && Sse42.IsSupported;
|
|
|
|
}
|