< prev index next >

src/hotspot/cpu/x86/vm_version_x86.hpp

Print this page

 867   static bool supports_sse4_2()       { return (_features & CPU_SSE4_2) != 0; }
 868   static bool supports_popcnt()       { return (_features & CPU_POPCNT) != 0; }
 869   static bool supports_avx()          { return (_features & CPU_AVX) != 0; }
 870   static bool supports_avx2()         { return (_features & CPU_AVX2) != 0; }
 871   static bool supports_tsc()          { return (_features & CPU_TSC) != 0; }
 872   static bool supports_aes()          { return (_features & CPU_AES) != 0; }
 873   static bool supports_erms()         { return (_features & CPU_ERMS) != 0; }
 874   static bool supports_clmul()        { return (_features & CPU_CLMUL) != 0; }
 875   static bool supports_rtm()          { return (_features & CPU_RTM) != 0; }
 876   static bool supports_bmi1()         { return (_features & CPU_BMI1) != 0; }
 877   static bool supports_bmi2()         { return (_features & CPU_BMI2) != 0; }
 878   static bool supports_adx()          { return (_features & CPU_ADX) != 0; }
 879   static bool supports_evex()         { return (_features & CPU_AVX512F) != 0; }
 880   static bool supports_avx512dq()     { return (_features & CPU_AVX512DQ) != 0; }
 881   static bool supports_avx512pf()     { return (_features & CPU_AVX512PF) != 0; }
 882   static bool supports_avx512er()     { return (_features & CPU_AVX512ER) != 0; }
 883   static bool supports_avx512cd()     { return (_features & CPU_AVX512CD) != 0; }
 884   static bool supports_avx512bw()     { return (_features & CPU_AVX512BW) != 0; }
 885   static bool supports_avx512vl()     { return (_features & CPU_AVX512VL) != 0; }
 886   static bool supports_avx512vlbw()   { return (supports_evex() && supports_avx512bw() && supports_avx512vl()); }

 887   static bool supports_avx512vldq()   { return (supports_evex() && supports_avx512dq() && supports_avx512vl()); }
 888   static bool supports_avx512vlbwdq() { return (supports_evex() && supports_avx512vl() &&
 889                                                 supports_avx512bw() && supports_avx512dq()); }
 890   static bool supports_avx512novl()   { return (supports_evex() && !supports_avx512vl()); }
 891   static bool supports_avx512nobw()   { return (supports_evex() && !supports_avx512bw()); }
 892   static bool supports_avx256only()   { return (supports_avx2() && !supports_evex()); }
 893   static bool supports_avxonly()      { return ((supports_avx2() || supports_avx()) && !supports_evex()); }
 894   static bool supports_sha()          { return (_features & CPU_SHA) != 0; }
 895   static bool supports_fma()          { return (_features & CPU_FMA) != 0 && supports_avx(); }
 896   static bool supports_vzeroupper()   { return (_features & CPU_VZEROUPPER) != 0; }
 897   static bool supports_avx512_vpopcntdq()  { return (_features & CPU_AVX512_VPOPCNTDQ) != 0; }
 898   static bool supports_avx512_vpclmulqdq() { return (_features & CPU_AVX512_VPCLMULQDQ) != 0; }
 899   static bool supports_avx512_vaes()  { return (_features & CPU_AVX512_VAES) != 0; }
 900   static bool supports_avx512_vnni()  { return (_features & CPU_AVX512_VNNI) != 0; }
 901   static bool supports_avx512_vbmi()  { return (_features & CPU_AVX512_VBMI) != 0; }
 902   static bool supports_avx512_vbmi2() { return (_features & CPU_AVX512_VBMI2) != 0; }
 903   static bool supports_hv()           { return (_features & CPU_HV) != 0; }
 904   static bool supports_serialize()    { return (_features & CPU_SERIALIZE) != 0; }
 905 
 906   // Intel features

 867   static bool supports_sse4_2()       { return (_features & CPU_SSE4_2) != 0; }
 868   static bool supports_popcnt()       { return (_features & CPU_POPCNT) != 0; }
 869   static bool supports_avx()          { return (_features & CPU_AVX) != 0; }
 870   static bool supports_avx2()         { return (_features & CPU_AVX2) != 0; }
 871   static bool supports_tsc()          { return (_features & CPU_TSC) != 0; }
 872   static bool supports_aes()          { return (_features & CPU_AES) != 0; }
 873   static bool supports_erms()         { return (_features & CPU_ERMS) != 0; }
 874   static bool supports_clmul()        { return (_features & CPU_CLMUL) != 0; }
 875   static bool supports_rtm()          { return (_features & CPU_RTM) != 0; }
 876   static bool supports_bmi1()         { return (_features & CPU_BMI1) != 0; }
 877   static bool supports_bmi2()         { return (_features & CPU_BMI2) != 0; }
 878   static bool supports_adx()          { return (_features & CPU_ADX) != 0; }
 879   static bool supports_evex()         { return (_features & CPU_AVX512F) != 0; }
 880   static bool supports_avx512dq()     { return (_features & CPU_AVX512DQ) != 0; }
 881   static bool supports_avx512pf()     { return (_features & CPU_AVX512PF) != 0; }
 882   static bool supports_avx512er()     { return (_features & CPU_AVX512ER) != 0; }
 883   static bool supports_avx512cd()     { return (_features & CPU_AVX512CD) != 0; }
 884   static bool supports_avx512bw()     { return (_features & CPU_AVX512BW) != 0; }
 885   static bool supports_avx512vl()     { return (_features & CPU_AVX512VL) != 0; }
 886   static bool supports_avx512vlbw()   { return (supports_evex() && supports_avx512bw() && supports_avx512vl()); }
 887   static bool supports_avx512bwdq()   { return (supports_evex() && supports_avx512bw() && supports_avx512dq()); }
 888   static bool supports_avx512vldq()   { return (supports_evex() && supports_avx512dq() && supports_avx512vl()); }
 889   static bool supports_avx512vlbwdq() { return (supports_evex() && supports_avx512vl() &&
 890                                                 supports_avx512bw() && supports_avx512dq()); }
 891   static bool supports_avx512novl()   { return (supports_evex() && !supports_avx512vl()); }
 892   static bool supports_avx512nobw()   { return (supports_evex() && !supports_avx512bw()); }
 893   static bool supports_avx256only()   { return (supports_avx2() && !supports_evex()); }
 894   static bool supports_avxonly()      { return ((supports_avx2() || supports_avx()) && !supports_evex()); }
 895   static bool supports_sha()          { return (_features & CPU_SHA) != 0; }
 896   static bool supports_fma()          { return (_features & CPU_FMA) != 0 && supports_avx(); }
 897   static bool supports_vzeroupper()   { return (_features & CPU_VZEROUPPER) != 0; }
 898   static bool supports_avx512_vpopcntdq()  { return (_features & CPU_AVX512_VPOPCNTDQ) != 0; }
 899   static bool supports_avx512_vpclmulqdq() { return (_features & CPU_AVX512_VPCLMULQDQ) != 0; }
 900   static bool supports_avx512_vaes()  { return (_features & CPU_AVX512_VAES) != 0; }
 901   static bool supports_avx512_vnni()  { return (_features & CPU_AVX512_VNNI) != 0; }
 902   static bool supports_avx512_vbmi()  { return (_features & CPU_AVX512_VBMI) != 0; }
 903   static bool supports_avx512_vbmi2() { return (_features & CPU_AVX512_VBMI2) != 0; }
 904   static bool supports_hv()           { return (_features & CPU_HV) != 0; }
 905   static bool supports_serialize()    { return (_features & CPU_SERIALIZE) != 0; }
 906 
 907   // Intel features
< prev index next >