315 if (value % 10 > 2) { 316 CommandLineError::print(verbose, 317 "Invalid value (" UINTX_FORMAT ") " 318 "in TypeProfileLevel at position %d\n", value, i); 319 return Flag::VIOLATES_CONSTRAINT; 320 } 321 value = value / 10; 322 } 323 324 return Flag::SUCCESS; 325 } 326 327 Flag::Error InitArrayShortSizeConstraintFunc(intx value, bool verbose) { 328 if (value % BytesPerLong != 0) { 329 return Flag::VIOLATES_CONSTRAINT; 330 } else { 331 return Flag::SUCCESS; 332 } 333 } 334 335 Flag::Error UseAVXConstraintFunc(intx value, bool verbose) { 336 if (value > 2 && !UnlockExperimentalVMOptions) { 337 CommandLineError::print(verbose, 338 "UseAVX (" UINTX_FORMAT ") is experimental and must be " 339 "enabled via -XX:+UnlockExperimentalVMOptions \n", value); 340 return Flag::VIOLATES_CONSTRAINT; 341 } else { 342 return Flag::SUCCESS; 343 } 344 } 345 346 #ifdef COMPILER2 347 Flag::Error InteriorEntryAlignmentConstraintFunc(intx value, bool verbose) { 348 if (InteriorEntryAlignment > CodeEntryAlignment) { 349 CommandLineError::print(verbose, 350 "InteriorEntryAlignment (" INTX_FORMAT ") must be " 351 "less than or equal to CodeEntryAlignment (" INTX_FORMAT ")\n", 352 InteriorEntryAlignment, CodeEntryAlignment); 353 return Flag::VIOLATES_CONSTRAINT; 354 } 355 356 #ifdef SPARC 357 if (InteriorEntryAlignment % relocInfo::addr_unit() != 0) { 358 CommandLineError::print(verbose, 359 "InteriorEntryAlignment (" INTX_FORMAT ") must be " 360 "multiple of NOP size\n"); 361 return Flag::VIOLATES_CONSTRAINT; 362 } 363 #endif 364 365 if (!is_power_of_2(value)) { | 315 if (value % 10 > 2) { 316 CommandLineError::print(verbose, 317 "Invalid value (" UINTX_FORMAT ") " 318 "in TypeProfileLevel at position %d\n", value, i); 319 return Flag::VIOLATES_CONSTRAINT; 320 } 321 value = value / 10; 322 } 323 324 return Flag::SUCCESS; 325 } 326 327 Flag::Error InitArrayShortSizeConstraintFunc(intx value, bool verbose) { 328 if (value % BytesPerLong != 0) { 329 return Flag::VIOLATES_CONSTRAINT; 330 } else { 331 return Flag::SUCCESS; 332 } 333 } 334 335 #ifdef COMPILER2 336 Flag::Error InteriorEntryAlignmentConstraintFunc(intx value, bool verbose) { 337 if (InteriorEntryAlignment > CodeEntryAlignment) { 338 CommandLineError::print(verbose, 339 "InteriorEntryAlignment (" INTX_FORMAT ") must be " 340 "less than or equal to CodeEntryAlignment (" INTX_FORMAT ")\n", 341 InteriorEntryAlignment, CodeEntryAlignment); 342 return Flag::VIOLATES_CONSTRAINT; 343 } 344 345 #ifdef SPARC 346 if (InteriorEntryAlignment % relocInfo::addr_unit() != 0) { 347 CommandLineError::print(verbose, 348 "InteriorEntryAlignment (" INTX_FORMAT ") must be " 349 "multiple of NOP size\n"); 350 return Flag::VIOLATES_CONSTRAINT; 351 } 352 #endif 353 354 if (!is_power_of_2(value)) { |