< prev index next >

src/hotspot/share/runtime/arguments.cpp

Print this page
rev 54670 : Port of valuetypes to aarch64


2035       return false;
2036     }
2037   }
2038 #endif
2039 
2040 #ifndef SUPPORT_RESERVED_STACK_AREA
2041   if (StackReservedPages != 0) {
2042     FLAG_SET_CMDLINE(intx, StackReservedPages, 0);
2043     warning("Reserved Stack Area not supported on this platform");
2044   }
2045 #endif
2046 
2047   if (!FLAG_IS_DEFAULT(AllocateHeapAt)) {
2048     if ((UseNUMAInterleaving && !FLAG_IS_DEFAULT(UseNUMAInterleaving)) || (UseNUMA && !FLAG_IS_DEFAULT(UseNUMA))) {
2049       log_warning(arguments) ("NUMA support for Heap depends on the file system when AllocateHeapAt option is used.\n");
2050     }
2051   }
2052 
2053   status = status && GCArguments::check_args_consistency();
2054 
2055   if (LP64_ONLY(false &&) !FLAG_IS_DEFAULT(ValueTypePassFieldsAsArgs)) {
2056     FLAG_SET_CMDLINE(bool, ValueTypePassFieldsAsArgs, false);
2057     warning("ValueTypePassFieldsAsArgs is not supported on this platform");
2058   }
2059 
2060   if (LP64_ONLY(false &&) !FLAG_IS_DEFAULT(ValueTypeReturnedAsFields)) {
2061     FLAG_SET_CMDLINE(bool, ValueTypeReturnedAsFields, false);
2062     warning("ValueTypeReturnedAsFields is not supported on this platform");
2063   }
2064 
2065   if (EnableValhalla) {
2066     if (!EnableValhallaC1) {
2067       // C1 support for value types is incomplete. Don't use it by default.
2068       if (!FLAG_IS_DEFAULT(TieredCompilation)) {
2069         warning("TieredCompilation disabled because value types are not supported by C1");
2070       }
2071       FLAG_SET_CMDLINE(bool, TieredCompilation, false);
2072     } else {
2073       if (TieredStopAtLevel > 1) {
2074         warning("C1 doesn't work with C2 yet. Forcing TieredStopAtLevel=1");
2075         FLAG_SET_CMDLINE(intx, TieredStopAtLevel, 1);
2076       }
2077       if (ValueTypePassFieldsAsArgs) {
2078         warning("C1 doesn't work with ValueTypePassFieldsAsArgs yet. Forcing ValueTypePassFieldsAsArgs=false");
2079         FLAG_SET_CMDLINE(bool, ValueTypePassFieldsAsArgs, false);
2080       }




2035       return false;
2036     }
2037   }
2038 #endif
2039 
2040 #ifndef SUPPORT_RESERVED_STACK_AREA
2041   if (StackReservedPages != 0) {
2042     FLAG_SET_CMDLINE(intx, StackReservedPages, 0);
2043     warning("Reserved Stack Area not supported on this platform");
2044   }
2045 #endif
2046 
2047   if (!FLAG_IS_DEFAULT(AllocateHeapAt)) {
2048     if ((UseNUMAInterleaving && !FLAG_IS_DEFAULT(UseNUMAInterleaving)) || (UseNUMA && !FLAG_IS_DEFAULT(UseNUMA))) {
2049       log_warning(arguments) ("NUMA support for Heap depends on the file system when AllocateHeapAt option is used.\n");
2050     }
2051   }
2052 
2053   status = status && GCArguments::check_args_consistency();
2054 
2055   if (AMD64_ONLY(false &&) !FLAG_IS_DEFAULT(ValueTypePassFieldsAsArgs)) {
2056     FLAG_SET_CMDLINE(bool, ValueTypePassFieldsAsArgs, false);
2057     warning("ValueTypePassFieldsAsArgs is not supported on this platform");
2058   }
2059 
2060   if (AMD64_ONLY(false &&) !FLAG_IS_DEFAULT(ValueTypeReturnedAsFields)) {
2061     FLAG_SET_CMDLINE(bool, ValueTypeReturnedAsFields, false);
2062     warning("ValueTypeReturnedAsFields is not supported on this platform");
2063   }
2064 
2065   if (EnableValhalla) {
2066     if (!EnableValhallaC1) {
2067       // C1 support for value types is incomplete. Don't use it by default.
2068       if (!FLAG_IS_DEFAULT(TieredCompilation)) {
2069         warning("TieredCompilation disabled because value types are not supported by C1");
2070       }
2071       FLAG_SET_CMDLINE(bool, TieredCompilation, false);
2072     } else {
2073       if (TieredStopAtLevel > 1) {
2074         warning("C1 doesn't work with C2 yet. Forcing TieredStopAtLevel=1");
2075         FLAG_SET_CMDLINE(intx, TieredStopAtLevel, 1);
2076       }
2077       if (ValueTypePassFieldsAsArgs) {
2078         warning("C1 doesn't work with ValueTypePassFieldsAsArgs yet. Forcing ValueTypePassFieldsAsArgs=false");
2079         FLAG_SET_CMDLINE(bool, ValueTypePassFieldsAsArgs, false);
2080       }


< prev index next >