src/hotspot/cpu/ppc/vm_version_ppc.cpp

Print this page




 117   // TODO: PPC port } else {
 118   // TODO: PPC port PdScheduling::power6SectorSize = 0x20;
 119   }
 120 
 121   if (PowerArchitecturePPC64 >= 8) {
 122     if (FLAG_IS_DEFAULT(SuperwordUseVSX)) {
 123       FLAG_SET_ERGO(bool, SuperwordUseVSX, true);
 124     }
 125   } else {
 126     if (SuperwordUseVSX) {
 127       warning("SuperwordUseVSX specified, but needs at least Power8.");
 128       FLAG_SET_DEFAULT(SuperwordUseVSX, false);
 129     }
 130   }
 131   MaxVectorSize = SuperwordUseVSX ? 16 : 8;
 132 
 133   if (PowerArchitecturePPC64 >= 9) {
 134     if (FLAG_IS_DEFAULT(UseCountTrailingZerosInstructionsPPC64)) {
 135       FLAG_SET_ERGO(bool, UseCountTrailingZerosInstructionsPPC64, true);
 136     }



 137   } else {
 138     if (UseCountTrailingZerosInstructionsPPC64) {
 139       warning("UseCountTrailingZerosInstructionsPPC64 specified, but needs at least Power9.");
 140       FLAG_SET_DEFAULT(UseCountTrailingZerosInstructionsPPC64, false);
 141     }
 142   }
 143 #endif
 144 
 145   // Create and print feature-string.
 146   char buf[(num_features+1) * 16]; // Max 16 chars per feature.
 147   jio_snprintf(buf, sizeof(buf),
 148                "ppc64%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s",
 149                (has_fsqrt()   ? " fsqrt"   : ""),
 150                (has_isel()    ? " isel"    : ""),
 151                (has_lxarxeh() ? " lxarxeh" : ""),
 152                (has_cmpb()    ? " cmpb"    : ""),
 153                (has_popcntb() ? " popcntb" : ""),
 154                (has_popcntw() ? " popcntw" : ""),
 155                (has_fcfids()  ? " fcfids"  : ""),
 156                (has_vand()    ? " vand"    : ""),




 117   // TODO: PPC port } else {
 118   // TODO: PPC port PdScheduling::power6SectorSize = 0x20;
 119   }
 120 
 121   if (PowerArchitecturePPC64 >= 8) {
 122     if (FLAG_IS_DEFAULT(SuperwordUseVSX)) {
 123       FLAG_SET_ERGO(bool, SuperwordUseVSX, true);
 124     }
 125   } else {
 126     if (SuperwordUseVSX) {
 127       warning("SuperwordUseVSX specified, but needs at least Power8.");
 128       FLAG_SET_DEFAULT(SuperwordUseVSX, false);
 129     }
 130   }
 131   MaxVectorSize = SuperwordUseVSX ? 16 : 8;
 132 
 133   if (PowerArchitecturePPC64 >= 9) {
 134     if (FLAG_IS_DEFAULT(UseCountTrailingZerosInstructionsPPC64)) {
 135       FLAG_SET_ERGO(bool, UseCountTrailingZerosInstructionsPPC64, true);
 136     }
 137     if (FLAG_IS_DEFAULT(UseCharacterCompareIntrinsics)) {
 138       FLAG_SET_ERGO(bool, UseCharacterCompareIntrinsics, true);
 139     }
 140   } else {
 141     if (UseCountTrailingZerosInstructionsPPC64) {
 142       warning("UseCountTrailingZerosInstructionsPPC64 specified, but needs at least Power9.");
 143       FLAG_SET_DEFAULT(UseCountTrailingZerosInstructionsPPC64, false);
 144     }
 145   }
 146 #endif
 147 
 148   // Create and print feature-string.
 149   char buf[(num_features+1) * 16]; // Max 16 chars per feature.
 150   jio_snprintf(buf, sizeof(buf),
 151                "ppc64%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s",
 152                (has_fsqrt()   ? " fsqrt"   : ""),
 153                (has_isel()    ? " isel"    : ""),
 154                (has_lxarxeh() ? " lxarxeh" : ""),
 155                (has_cmpb()    ? " cmpb"    : ""),
 156                (has_popcntb() ? " popcntb" : ""),
 157                (has_popcntw() ? " popcntw" : ""),
 158                (has_fcfids()  ? " fcfids"  : ""),
 159                (has_vand()    ? " vand"    : ""),