8343724: [PPC64] Disallow OptoScheduling

Reviewed-by: rrich, mbaesken
This commit is contained in:
Martin Doerr 2024-11-07 22:11:34 +00:00
parent a63f501b92
commit f621f26cd1
2 changed files with 23 additions and 17 deletions

View File

@ -34,21 +34,5 @@
// Processor dependent initialization of C2 compiler for ppc. // Processor dependent initialization of C2 compiler for ppc.
void Compile::pd_compiler2_init() { void Compile::pd_compiler2_init() {
guarantee(CodeEntryAlignment >= InteriorEntryAlignment, "");
// Power7 and later.
if (PowerArchitecturePPC64 > 6) {
if (FLAG_IS_DEFAULT(UsePopCountInstruction)) {
FLAG_SET_ERGO(UsePopCountInstruction, true);
}
}
if (!VM_Version::has_isel() && FLAG_IS_DEFAULT(ConditionalMoveLimit)) {
FLAG_SET_ERGO(ConditionalMoveLimit, 0);
}
if (OptimizeFill) {
warning("OptimizeFill is not supported on this CPU.");
FLAG_SET_DEFAULT(OptimizeFill, false);
}
} }

View File

@ -110,6 +110,17 @@ void VM_Version::initialize() {
FLAG_SET_ERGO(TrapBasedRangeChecks, false); FLAG_SET_ERGO(TrapBasedRangeChecks, false);
} }
// Power7 and later.
if (PowerArchitecturePPC64 > 6) {
if (FLAG_IS_DEFAULT(UsePopCountInstruction)) {
FLAG_SET_ERGO(UsePopCountInstruction, true);
}
}
if (!VM_Version::has_isel() && FLAG_IS_DEFAULT(ConditionalMoveLimit)) {
FLAG_SET_ERGO(ConditionalMoveLimit, 0);
}
if (PowerArchitecturePPC64 >= 8) { if (PowerArchitecturePPC64 >= 8) {
if (FLAG_IS_DEFAULT(SuperwordUseVSX)) { if (FLAG_IS_DEFAULT(SuperwordUseVSX)) {
FLAG_SET_ERGO(SuperwordUseVSX, true); FLAG_SET_ERGO(SuperwordUseVSX, true);
@ -169,6 +180,17 @@ void VM_Version::initialize() {
FLAG_SET_DEFAULT(UseByteReverseInstructions, false); FLAG_SET_DEFAULT(UseByteReverseInstructions, false);
} }
} }
if (OptimizeFill) {
warning("OptimizeFill is not supported on this CPU.");
FLAG_SET_DEFAULT(OptimizeFill, false);
}
if (OptoScheduling) {
// The OptoScheduling information is not maintained in ppd.ad.
warning("OptoScheduling is not supported on this CPU.");
FLAG_SET_DEFAULT(OptoScheduling, false);
}
#endif #endif
// Create and print feature-string. // Create and print feature-string.