AOTInline | bool | true | Hosted | Perform method inlining in the AOT compiled native image. |
AOTInliningDepthToSizeRate | double | 2.5 | Runtime | |
AOTInliningSizeMaximum | int | 300 | Runtime | |
AOTInliningSizeMinimum | int | 50 | Runtime | |
AOTTrivialInline | bool | true | Hosted | Perform trivial method inlining in the AOT compiled native image. |
AOTVerifyOops | bool | false | Runtime | Generate verify oop checks in AOT code. |
APIFunctionPrefix | String | "graal_" | Hosted | Prefix that is added to the names of API functions. |
ASMInstructionProfiling | String | None | Runtime | Enables instruction profiling on assembler level. Valid values are a comma separated list of supported instructions.
Compare with subclasses of Assembler.InstructionCounter. |
AbortOnBenchmarkCounterOverflow | bool | false | Runtime | Abort VM with SIGILL if benchmark counters controlled by the (Generic|Timed|Benchmark)DynamicCounters. |
ActiveProcessorCount | int | -1 | Runtime | Overwrites the available number of processors provided by the OS. Any value <= 0 means using the processor count from
the OS. |
AddAllCharsets | bool | false | Hosted | Make all hosted charsets available at run time. |
AddAllFileSystemProviders | bool | true | Hosted | Make all supported providers returned by FileSystemProvider.installedProviders() available at run time. |
AdditionalSecurityProviders | String | * | Hosted | Comma-separated list of additional security provider fully qualified class names to mark as used.Note that this option
is only necessary if you use custom engine classes not available in JCA that are not JCA compliant. |
AdditionalSecurityServiceTypes | String | * | Hosted | Comma-separated list of additional security service types (fully qualified class names) for automatic registration. Note
that these must be JCA compliant. |
AggregatedMetricsFile | String | None | Runtime | File to which aggregated metrics are dumped at shutdown. A CSV format is used if the file ends with .csv otherwise a
more human readable format is used. If not specified, metrics are dumped to the console. |
AliasArrayTypeFlows | bool | true | Runtime | Model all array type flows using a unique elements type flow abstraction. |
AlignedHeapChunkSize | int | 1048576 | Hosted | The size of an aligned chunk. |
AllocateInstancePrefetchLines | int | 1 | Hosted | Number of cache lines to load after the object address using prefetch instructions. |
AllocatePrefetchDistance | int | 256 | Hosted | Sets the size (in bytes) of the prefetch distance for object allocation. Memory about to be written with the value of
new objects is prefetched up to this distance starting from the address of the last allocated object. Each Java thread
has its own allocation point. |
AllocatePrefetchInstr | int | 0 | Hosted | Sets the prefetch instruction to prefetch ahead of the allocation pointer. Possible values are from 0 to 3. The actual
instructions behind the values depend on the platform. |
AllocatePrefetchLines | int | 3 | Hosted | Number of cache lines to load after the array allocation using prefetch instructions. |
AllocatePrefetchStepSize | int | 16 | Hosted | Sets the step size (in bytes) for sequential prefetch instructions. |
AllocatePrefetchStyle | int | 1 | Hosted | Generated code style for prefetch instructions: for 0 or less no prefetch instructions are generated and for 1 or more
prefetch instructions are introduced after each allocation. |
AllocationBeforePhysicalMemorySize | int | 1048576 | Hosted |
Bytes that can be allocated before (re-)querying the physical memory size. |
AllocationProfilingThreshold | int | 1048576 | Runtime | The minimum size in bytes required for printing an allocation profiling entry. |
AllocationProfiling | bool | false | Hosted | Enable runtime profiling of allocation. |
AllocationSiteSensitiveHeap | bool | false | Runtime | A context sensitive heap means that each heap allocated object is modeled by using at least the allocation site. |
AllowFoldMethods | bool | false | Hosted | Allow MethodTypeFlow to see @Fold methods. |
AllowIncompleteClasspath | bool | false | Hosted | Allow image building with an incomplete class path: report type resolution errors at run time when they are accessed the
first time, instead of during image building. |
AllowJRTFileSystem | bool | false | Hosted | Enable support for reading Java modules (jimage format) and the jrt:// file system. Requires java.home to be set at
runtime. |
AllowVMInspection | bool | false | Hosted | Enables features that allow the VM to be inspected during runtime. |
AlwaysInlineIntrinsics | bool | false | Runtime | Unconditionally inline intrinsics. |
AlwaysInlineVTableStubs | bool | false | Runtime | |
AnalysisContextSensitivity | String | "insens" | Runtime | Controls the static analysis context sensitivity. Available values: insens (context insensitive analysis), allocsens
(context insensitive analysis, context insensitive heap, allocation site sensitive heap), _1obj (1 object sensitive
analysis with a context insensitive heap), _2obj1h (2 object sensitive with a 1 context sensitive heap). |
AnalysisSizeCutoff | int | 8 | Runtime | The maximum size of type and method profiles returned by the static analysis. -1 indicates no limitation. |
AnalysisStatisticsFile | String | None | Runtime | Analysis results statistics file. |
BenchmarkCounterPrintingCutoff | bool | true | Runtime | Use a cutoff to print only most significant counters. |
BenchmarkCountersDumpDynamic | bool | true | Runtime | Dump dynamic counters. |
BenchmarkCountersDumpStatic | bool | false | Runtime | Dump static counters. |
BenchmarkCountersFile | String | None | Runtime | File to which benchmark counters are dumped. A CSV format is used if the file ends with .csv otherwise a more human
readable format is used. The fields in the CSV format are: category, group, name, value. |
BenchmarkDynamicCounters | String | None [Extra help available] | Runtime | Turn on the benchmark counters. The format of this option is:. |
BitcodeOptimizations | bool | false | Hosted | Enable LLVM bitcode optimizations. |
BootstrapInitializeOnly | bool | false | Runtime | Do not compile anything on bootstrap but just initialize the compiler. |
BootstrapTimeout | double | 15.0 | Runtime | Maximum time in minutes to spend bootstrapping (0 to disable this limit). |
BootstrapWatchDogCriticalRateRatio | double | 0.25 | Runtime | Ratio of the maximum compilation rate below which the bootstrap compilation rate must not fall (0 or less disables
monitoring). |
CAPCacheDir | | "" | Hosted | Directory where information generated by the CAnnotation Processor are cached. |
CCompilerOption | String | * | Hosted | Provide custom C compiler option used for query code compilation. |
CCompilerPath | String | None | Hosted | Provide custom path to C compiler used for query code compilation and linking. |
CLibraryPath | String | * | Hosted | Search path for C libraries passed to the linker (list of comma-separated directories). |
CPUFeatures | String | * | Hosted | Comma separated list of CPU features that will be used for image generation. The specific options available are platform
dependent. For AMD64, SSE and SSE2 are enabled by default. Available features are: CX8, CMOV, FXSR, HT, MMX,
AMD_3DNOW_PREFETCH, SSE3, SSSE3, SSE4A, SSE4_1, SSE4_2, POPCNT, LZCNT, TSC, TSCINV, AVX, AVX2, AES, ERMS, CLMUL, BMI1,
BMI2, RTM, ADX, AVX512F, AVX512DQ, AVX512PF, AVX512ER, AVX512CD, AVX512BW, AVX512VL, SHA, FMA. On AArch64, no features
are enabled by default. Available features are: FP, ASIMD, EVTSTRM, AES, PMULL, SHA1, SHA2, CRC32, LSE, STXR_PREFETCH,
A53MAC. |
CStandard | String | "C89" | Hosted | C standard to use in header files. Possible values are: [C89, C99, C11]. |
CanOmitFrame | bool | true | Runtime | |
CanonicalGraphStringsCheckConstants | bool | false | Runtime | Exclude virtual nodes when dumping canonical text for graphs. |
CanonicalGraphStringsExcludeVirtuals | bool | true | Runtime | Exclude virtual nodes when dumping canonical text for graphs. |
CanonicalGraphStringsRemoveIdentities | bool | true | Runtime | Attempts to remove object identity hashes when dumping canonical text for graphs. |
CheckRecurringCallbackOnNativeToJavaTransition | bool | false | Hosted | Test whether a thread's recurring callback is pending on each transition from native code to Java. |
CheckToolchain | bool | true | Hosted | Check if native-toolchain is known to work with native-image. |
ClassInitialization | String | * | Hosted | A comma-separated list of classes appended with their initialization strategy (':build_time', ':rerun', or ':run_time'). |
Class | | "" | Hosted | Class containing the default entry point method. Optional if --shared is used. |
ClearMetricsAfterBootstrap | bool | false | Runtime | Clear the debug metrics after bootstrap. |
CodeAlignment | int | 16 | Hosted | Alignment of AOT and JIT compiled code in bytes. |
CodeCacheCounters | bool | false | Hosted | Count accesses to the image and runtime code info table. |
CodeInfoEncoderCounters | bool | false | Hosted | Statistics about code and deoptimization information. |
CodeInfoIndexGranularity | int | 256 | Hosted | The granularity of the index for looking up code metadata. Should be a power of 2. Larger values make the index smaller,
but access slower. |
CollectYoungGenerationSeparately | bool | false | Runtime | Determines if a full GC collects the young generation separately or together with the old generation. |
CompilationBailoutAsFailure | bool | false | Runtime | Treat compilation bailouts like compilation failures. |
CompilationCountLimit | int | 0 | Runtime | The number of compilations allowed for any method before the VM exits (a value of 0 means there is no limit). |
CompilationExcludePhases | String | None | Runtime | Exclude certain phases from compilation, either unconditionally or with a method filter. |
CompilationExpirationPeriod | int | 300 | Runtime | Time limit in seconds before a compilation expires (0 to disable the limit). A non-zero value for this option is doubled
if assertions are enabled and quadrupled if DetailedAsserts is true. |
CompilationFailureAction | String | Silent | Runtime | Specifies the action to take when compilation fails. [Extra help available] |
CompilationIsolateAddressSpaceSize | int | 0 | Runtime | Size of the reserved address space of each compilation isolate (0: default for new isolates). |
CompilationWatchDogStackTraceInterval | double | 60.0 | Runtime |
Interval in seconds between a watch dog reporting stack traces for long running compilations. |
CompilationWatchDogStartDelay | double | 0.0 | Runtime | Delay in seconds before watch dog monitoring a compilation (0 disables monitoring). |
CompileGraalWithC1Only | bool | true | Runtime | In tiered mode compile Graal and JVMCI using optimized first tier code. |
CompileInIsolates | bool | true | Runtime | Activate runtime compilation in separate isolates (enable support during image build with option
SupportCompileInIsolates). |
CompilerBackend | String | "lir" | Hosted | Backend used by the compiler. |
CompilerConfiguration | String | None | Runtime | Names the compiler configuration to use. If omitted, the compiler configuration with the highest auto-selection priority
is used. To see the set of available configurations, supply the value 'help' to this option. |
ConditionalEliminationMaxIterations | int | 4 | Runtime | |
ConditionalElimination | bool | true | Runtime | |
ConfigurationFileDirectories | String | * | Hosted | Directories directly containing configuration files for dynamic features at runtime. |
ConfigurationResourceRoots | String | * | Hosted | Resource path above configuration resources for dynamic features at runtime. |
CountWriteBarriers | bool | false | Hosted | Instrument write barriers with counters. |
Count | String | None | Runtime | Pattern for specifying scopes in which counters are enabled. See the Dump option for the pattern syntax. An empty value
enables all counters unconditionally. |
Counters | String | None | Runtime | Comma separated names of counters that are enabled irrespective of the value for Count option. An empty value enables
all counters unconditionally. |
CrashAt | String | None | Runtime | Pattern for method(s) that will trigger an exception when compiled. This option exists to test handling compilation
crashes gracefully. See the MethodFilter option for the pattern syntax. A ':Bailout' suffix will raise a bailout
exception and a ':PermanentBailout' suffix will raise a permanent bailout exception. |
CustomLD | | "" | Hosted | Path to a custom ld binary for LLVM linking. |
DashboardAll | bool | false | Hosted | In the dashboard dump, include all available information about the native image (this takes precedence over more
specific flags). |
DashboardBgv | bool | true | Hosted | Set dashboard to use BGV format for dump. |
DashboardCode | bool | false | Hosted | In the dashboard dump, include the breakdown of the code size across different packages. |
DashboardDump | String | None | Hosted | Enable dashboard dumps to the specified file. |
DashboardHeap | bool | false | Hosted | In the dashboard dump, include the breakdown of the object sizes in the heap across different classes. |
DashboardJson | bool | false | Hosted | Set dashboard to use JSON format for dump. |
DashboardPointsTo | bool | false | Hosted | In the dashboard dump, include the information about the points-to analysis. |
DashboardPretty | bool | false | Hosted | Set dashboard to use pretty print in JSON format. |
DeadlockWatchdogExitOnTimeout | bool | true | Hosted | Exit the image builder VM after printing call stacks. |
DeadlockWatchdogInterval | int | 10 | Hosted | The interval in minutes between watchdog checks (0 disables the watchdog). |
DebugInfoSourceCacheRoot | String | "sources" | Hosted | Directory under which to create source file cache for Application or GraalVM classes. |
DebugInfoSourceSearchPath | String | * | Hosted | Search path for source files for Application or GraalVM classes (list of comma-separated directories or jar files). |
DebugStubsAndSnippets | bool | false | Runtime | Enable debug output for stub code generation and snippet preparation. |
DefaultLocale | String | "en-US" | Hosted | Default locale of the image, by the default it is the same as the default locale of the image builder. |
DeleteLocalSymbols | bool | true | Hosted | Use linker option to remove all local symbols from image. |
DeoptALot | bool | false | Runtime | |
DeoptAfterOSR | bool | true | Runtime | Deoptimize OSR compiled code when the OSR entry loop is finished if there is no mature profile available for the rest of
the method. |
DeoptimizeAll | bool | false | Hosted | Compiles all methods as deoptimization targets for testing. |
DeoptsToDisableOptimisticOptimization | int | 40 | Runtime | |
DetailedAsserts | bool | false | Runtime | Enable expensive assertions if normal assertions (i.e. -ea or -esa) are enabled. |
DetectUserDirectoriesInImageHeap | bool | false | Hosted | When set to true, the image generator verifies that the image heap does not contain a home directory as a substring. |
DiagnoseDumpLevel | int | 3 | Runtime | Specify the DumpLevel if CompilationFailureAction#Diagnose is used.See CompilationFailureAction for details.
file:doc-files/CompilationFailureActionHelp.txt. |
DisableExplicitGC | bool | false | Runtime | Ignore calls to System.gc(). |
DisableIntercept | bool | false | Runtime | Disable intercepting exceptions in debug scopes. |
DisableTypeIdResultVerification | bool | true | Hosted | For internal purposes only. Disables type id result verification even when running with assertions enabled. |
DivertParameterReturningMethod | bool | true | Runtime | Analysis: Detect methods that return one of their parameters and hardwire the parameter straight to the return. |
DumpAfterEveryBCI | bool | false | Runtime | Dump the current graph after every bci to IGV. |
DumpHeap | String | * | Hosted | Dump the heap at a specific time during image building.The option accepts a list of comma separated phases, any of:
after-analysis, before-compilation. |
DumpLLVMStackMap | String | None | Hosted | Dump contents of the generated stackmap to the specified file. |
DumpOnError | bool | false | Runtime | Send compiler IR to dump handlers on error. |
DumpOnPhaseChange | String | None | Runtime | Dump a before and after graph if the named phase changes the graph.%nThe argument is substring matched against the
simple name of the phase class. |
DumpPath | String | "graal_dumps" | Runtime | The directory where various Graal dump files are written. |
DumpTargetInfo | bool | false | Hosted | Show native-toolchain information and image-build settings. |
DumpThreadStacksOnSignal | bool | false | Hosted | Dumps all thread stacktraces on SIGQUIT/SIGBREAK. |
Dump | String | None [Extra help available] | Runtime | Filter pattern for specifying scopes in which dumping is enabled. |
DumpingErrorsAreFatal | bool | false | Runtime | Treat any exceptions during dumping as fatal. |
DuplicateIrreducibleLoops | bool | true | Runtime | When enabled, some limited amount of duplication will be performed in order compile code containing irreducible loops. |
DynamicCountersPrintGroupSeparator | bool | true | Runtime | Use grouping separators for number printing. |
DynamicProxyConfigurationFiles | String | * | Hosted | One or several (comma-separated) paths to JSON files that specify lists of interfaces that define Java proxy classes.
[Extra help available] |
DynamicProxyConfigurationResources | String | * | Hosted |
Resources describing program elements to be made available for reflection (see ProxyConfigurationFiles). |
DynamicProxyTracing | bool | false | Hosted | Enable trace logging for dynamic proxy. |
EagerSnippets | bool | false | Runtime | Eagerly construct extra snippet info. |
EmitStringSubstitutions | bool | true | Runtime | Emit substitutions for String methods. |
EnableAllSecurityServices | bool | false | Hosted | Add all security service classes to the generated image. |
EnableLoggingFeature | bool | true | Hosted | Enable the feature that provides support for logging. |
EnableSecurityServicesFeature | bool | true | Hosted | Enable automatic registration of security services. |
EnableSignalAPI | bool | true | Hosted | Enables the signal API (sun.misc.Signal or jdk.internal.misc.Signal). Defaults to false for shared library and true for
executables. |
EnableURLProtocols | String | * | Hosted | List of comma separated URL protocols to enable. |
EnableWildcardExpansion | bool | true | Hosted | Enable wildcard expansion in command line arguments on Windows. |
EnforceMaxRuntimeCompileMethods | bool | false | Hosted | Enforce checking of maximum number of methods allowed for runtime compilation. Useful for checking in the gate that the
number of methods does not go up without a good reason. |
EntryPointNamePrefix | | "" | Hosted | Prefix that is added to the names of entry point methods. |
EscapeAnalysisIterations | int | 2 | Runtime | |
EscapeAnalysisLoopCutoff | int | 20 | Runtime | |
EscapeAnalyzeOnly | String | None | Runtime | |
ExactFullUnrollMaxNodes | int | 800 | Runtime | |
ExactPartialUnrollMaxNodes | int | 200 | Runtime | |
ExcludeResources | String | * | Hosted | Regexp to match names of resources to be excluded from the image. |
ExhaustiveHeapScan | bool | false | Runtime | Scan all objects reachable from roots for analysis. By default false. |
ExitAfterAnalysis | bool | false | Hosted | Exit after analysis. |
ExitAfterCAPCache | bool | false | Hosted | Exit image generation after C Annotation Processor Cache creation. |
ExitAfterQueryCodeGeneration | bool | false | Hosted | Output query code for target platform without executing it. |
ExitAfterRelocatableImageWrite | bool | false | Hosted | Exit after writing relocatable file. |
ExitVMOnException | bool | false | Runtime | Alias for CompilationFailureAction=ExitVM. |
ExtendedAsserts | bool | false | Runtime | Enable extended asserts which slow down analysis. |
FailedLoopExplosionIsFatal | bool | false | Runtime | Do not bail out but throw an exception on failed loop explosion. |
FallbackExecutorClasspath | String | None | Hosted | Internal option used to specify Classpath for FallbackExecutor. |
FallbackExecutorJavaArg | String | * | Hosted | Internal option used to specify java arguments for FallbackExecutor. |
FallbackExecutorMainClass | String | None | Hosted | Internal option used to specify MainClass for FallbackExecutor. |
FallbackExecutorRuntimeJavaArg | String | * | Runtime | Internal option used to specify runtime java arguments for FallbackExecutor. |
FallbackExecutorSystemProperty | String | * | Hosted | Internal option used to specify system properties for FallbackExecutor. |
FallbackThreshold | int | 5 | Hosted | Define when fallback-image generation should be used. |
Features | String | * | Hosted | A comma-separated list of fully qualified Feature implementation classes. |
FlightRecorderLogging | String | "all=warning" | Runtime | Usage: -XX:FlightRecorderLogging=[tag1[+tag2...][*][=level][,...]]. [Extra help available] |
FlightRecorder | bool | false | Runtime | Enable Java Flight Recorder. |
FoldSecurityManagerGetter | bool | true | Hosted | Fold SecurityManager getter. |
ForceDumpGraphsBeforeCompilation | bool | false | Runtime | Force-dump graphs before compilation. |
ForceNoROSectionRelocations | bool | false | Hosted | Use only a writable native image heap (requires ld.gold linker). |
FullUnrollConstantCompareBoost | int | 15 | Runtime | |
FullUnrollMaxApplication | int | 60 | Runtime | |
FullUnrollMaxIterations | int | 600 | Runtime | |
FullUnrollMaxNodes | int | 400 | Runtime | |
FullUnroll | bool | true | Runtime | |
GCDebugStartCycle | int | -1 | Runtime | Start tracing compiled GC barriers after N garbage collections (disabled if N <= 0). |
GatherSafepointStatistics | bool | false | Hosted | Gather statistics about each safepoint. |
GenLoopSafepoints | bool | true | Runtime | |
GenerateDebugInfo | int | 0 | Hosted | Insert debug info into the generated native image or library. |
GeneratePIC | bool | false | Runtime | Generate position independent code. |
GenericDynamicCounters | bool | false | Runtime | Turn on the benchmark counters, and displays the results on VM shutdown. |
GraalArithmeticStubs | bool | false | Runtime | Use Graal arithmetic stubs instead of HotSpot stubs where possible. |
GraalCompileOnly | String | None | Runtime | A filter applied to a method the VM has selected for compilation by Graal. A method not matching the filter is
redirected to a lower tier compiler. The filter format is the same as for the MethodFilter option. |
GraphCompressionThreshold | int | 70 | Runtime | Graal graph compression is performed when percent of live nodes falls below this value. |
GreyToBlackObjRefDemographics | bool | false | Hosted | Develop demographics of the object references visited. |
GreyToBlackObjectVisitorDiagnosticHistory | int | 0 | Hosted |
Length of GreyToBlackObjectVisitor history for diagnostics. 0 implies no history is kept. |
GuardPriorities | bool | true | Runtime | |
HeapChunkHeaderPadding | int | 0 | Hosted | Number of bytes at the beginning of each heap chunk that are not used for payload data, i.e., can be freely used as
metadata by the heap chunk provider. |
HotSpotDeoptExplicitExceptions | bool | false | Runtime | Testing only option that forces deopts for exception throws. |
HotSpotPostOnExceptions | bool | false | Runtime | Testing only option that forces deopts for exception throws. |
HotSpotPrintInlining | bool | false | Runtime | Print inlining optimizations. |
HybridStaticContext | bool | false | Runtime | Enable hybrid context for static methods, i.e. uses invocation site as context for static methods. |
ImageHeapCardMarking | bool | false | Hosted | Enables card marking for image heap objects, which arranges them in chunks. Automatically enabled when supported. |
ImageObjectTreeExpandRoots | | "" | Runtime | Override the default suppression of specified roots. See: Reports.md. |
ImageObjectTreeExpandTypes | | "" | Runtime | Override the default suppression of specified types. See: Reports.md. |
ImageObjectTreeSuppressRoots | | "" | Runtime | Suppress the expansion of specified roots. See: Reports.md. |
ImageObjectTreeSuppressTypes | | "" | Runtime | Suppress the expansion of specified types. See: Reports.md. |
ImageSymbolsPrefix | | "" | Hosted | Common prefix used by method symbols in image. |
ImmutableCode | bool | false | Runtime | Try to avoid emitting code where patching is required. |
IncludeAllLocales | bool | false | Hosted | Make all hosted locales available at run time. |
IncludeAllTimeZones | bool | false | Hosted | When true, all time zones will be pre-initialized in the image. |
IncludeLLVMDebugInfo | int | 0 | Hosted | Include debugging info in the generated image (for LLVM backend). |
IncludeLocales | String | * | Hosted | Comma separated list of locales to be included into the image. The default locale is included in the list automatically
if not present. |
IncludeNodeSourcePositions | bool | false | Hosted | Track NodeSourcePositions during runtime-compilation. |
IncludeResourceBundles | String | * | Hosted | Comma separated list of bundles to be included into the image. |
IncludeResources | String | * | Hosted | Regexp to match names of resources to be included in the image. |
IncludeTimeZones | | "" | Hosted | The time zones, in addition to the default zone of the host, that will be pre-initialized in the image. |
InitialCollectionPolicy | String | "com.oracle.svm.core.genscavenge.CollectionPolicy$BySpaceAndTime" | Hosted |
The initial garbage collection policy, as a fully-qualified class name (might require quotes or escaping). |
InlineBeforeAnalysisAllowedDepth | int | 20 | Hosted | Maximum number of invokes for method inlined before static analysis. |
InlineBeforeAnalysisAllowedInvokes | int | 1 | Hosted | Maximum number of invokes for method inlined before static analysis. |
InlineBeforeAnalysisAllowedNodes | int | 1 | Hosted | Maximum number of computation nodes for method inlined before static analysis. |
InlineBeforeAnalysisMaxDepth | int | 9 | Hosted | Maximum depth when inlining. |
InlineBeforeAnalysis | bool | false | Runtime | Experimental: Inline methods before static analysis. |
InlineDuringParsingMaxDepth | int | 10 | Runtime | Maximum depth when inlining during bytecode parsing. |
InlineDuringParsing | bool | true | Runtime | Inlines trivial methods during bytecode parsing. |
InlineEverything | bool | false | Runtime | |
InlineIntrinsicsDuringParsing | bool | true | Runtime | Inlines intrinsic methods during bytecode parsing. |
InlineMegamorphicCalls | bool | true | Runtime | Inline calls with megamorphic type profile (i.e., not all types could be recorded). |
InlineMonomorphicCalls | bool | true | Runtime | Inline calls with monomorphic type profile. |
InlinePartialIntrinsicExitDuringParsing | bool | true | Runtime | Inlines partial intrinsic exits during bytecode parsing when possible. A partial intrinsic exit is a call within an
intrinsic to the method being intrinsified and denotes semantics of the original method that the intrinsic does not
support. |
InlinePolymorphicCalls | bool | true | Runtime | Inline calls with polymorphic type profile. |
InlineVTableStubs | bool | true | Runtime | |
Inline | bool | true | Runtime | Enable inlining. |
InliningDepthError | int | 1000 | Runtime | Maximum inlining depth during partial evaluation before reporting an infinite recursion. |
InspectServerContentPath | String | "inspect" | Runtime | Path to the contents of the Inspect web server. |
InstallExitHandlers | bool | false | Hosted | Provide java.lang.Terminator exit handlers for executable images. |
InstallSegfaultHandler | bool | true | Runtime | Install segfault handler that prints register contents and full Java stacktrace. |
InterceptBailout | bool | false | Runtime | Intercept also bailout exceptions. |
InternalSymbolsAreGlobal | bool | false | Hosted | Compatibility option to make symbols used for the image heap global. Using global symbols is problematic for shared
libraries because the loader implicitly changes the value when the symbol is already defined in the executable loading
the library. Setting this option to true preserves the broken behavior of old Native Image versions. |
Intrinsify | bool | true | Runtime | Use compiler intrinsifications. |
JNIConfigurationFiles | String | * | Hosted | Files describing program elements to be made accessible via JNI (for syntax, see ReflectionConfigurationFiles). |
JNIConfigurationResources | String | * | Hosted | Resources describing program elements to be made accessible via JNI (see JNIConfigurationFiles). |
JNIExportSymbols | bool | true | Hosted | Export Invocation API symbols. |
JNIVerboseLookupErrors | bool | false | Hosted | Report information about known JNI elements when lookup fails. |
JNI | bool | true | Hosted | Enable Java Native Interface (JNI) support. |
LIRDynMoveProfileMethod | bool | false | Runtime | Enable dynamic move profiling per method. |
LIROptConstantLoadOptimization | bool | false | Runtime | Enable constant load optimization. |
LIROptControlFlowOptimizer | bool | | Runtime | |
LIROptEdgeMoveOptimizer | bool | | Runtime | |
LIROptLSRAEliminateSpillMoves | bool | | Runtime | Enable spill move elimination. |
LIROptLSRAOptimizeSpillPosition | bool | | Runtime | Enable spill position optimization. |
LIROptLSStackSlotAllocator | bool | | Runtime | Use linear scan stack slot allocation. |
LIROptNullCheckOptimizer | bool | | Runtime | |
LIROptRedundantMoveElimination | bool | | Runtime | |
LIROptStackMoveOptimizer | bool | | Runtime | |
LIROptimization | bool | true | Runtime | Enable LIR level optimiztations. |
LIRProfileMethods | bool | false | Runtime | Enables profiling of methods. |
LIRProfileMoves | bool | false | Runtime | Enables profiling of move types on LIR level. Move types are for example stores (register to stack), constant loads
(constant to register) or copies (register to register). |
LLVMMaxFunctionsPerBatch | int | 1000 | Hosted | Maximum size of batches used for LLVM compilation. 0 means a single batch, 1 means all functions separately. |
LSRAOptSplitOnly | bool | false | Runtime | LSRA optimization: Only split but do not reassign. |
LSRAOptimization | bool | false | Runtime | Enable LSRA optimization. |
LargeArrayThreshold | int | 0 | Hosted | The size at or above which an array will be allocated in its own unaligned chunk. 0 implies (AlignedHeapChunkSize / 8). |
LimitInlinedInvokes | double | 5.0 | Runtime | |
LimitObjectArrayLength | bool | false | Runtime | Enable a limit for the number of objects recorded for each type of a type state before disabling heap sensitivity for
that type. The analysis must be heap sensitive. |
LinkerRPath | String | * | Hosted | Path passed to the linker as the -rpath (list of comma-separated directories). |
ListMetrics | bool | false | Runtime | Lists on the console at VM shutdown the metric names available to the Timers, Counters and MemUseTrackers options. Note
that this only lists the metrics that were initialized during the VM execution and so will not include metrics for
compiler code that is not executed. |
LoadExceptionObjectInVM | bool | false | Runtime | Use a VM runtime call to load and clear the exception object from the thread at the start of a compiled exception
handler. |
LocalizationCompressBundles | String | * | Hosted | Regular expressions matching which bundles should be compressed. |
LocalizationCompressInParallel | bool | true | Hosted | Compress the bundles in parallel. |
LocalizationOptimizedMode | bool | true | Hosted | Optimize the resource bundle lookup using a simple map. |
LocalizationSubstituteLoadLookup | bool | true | Hosted | Store the resource bundle content more efficiently in the fallback mode. |
LogFile | String | None | Runtime | File to which logging is sent. A %p in the name will be replaced with a string identifying the process, usually the
process id and %t will be replaced by System.currentTimeMillis(). If the current runtime is in an isolate, then %i will
be replaced by '' otherwise %i is removed. An %I is the same as %i except that the replacement is '@'. Using %o as filename sends logging to System.out whereas %e sends logging to System.err. |
LogVerbose | bool | false | Runtime | Enable more verbose log output when available. |
Log | String | None | Runtime | Pattern for specifying scopes in which logging is enabled. See the Dump option for the pattern syntax. |
LoopHeaderAlignment | int | 16 | Runtime | Alignment in bytes for loop header blocks. |
LoopMaxUnswitch | int | 3 | Runtime | |
LoopPeeling | bool | true | Runtime | |
LoopPredicationMainPath | bool | true | Runtime | Restricts LoopPredication to only focus on array bounds checks that dominate the back edge of a loop. |
LoopPredication | bool | true | Runtime | Hoists array bounds checks out of simple loops. This is ignored if SpeculativeGuardMovement is enabled. |
LoopUnswitchFrequencyBoost | double | 10.0 | Runtime | |
LoopUnswitchMaxIncrease | int | 500 | Runtime | |
LoopUnswitchTrivial | int | 10 | Runtime | |
LoopUnswitch | bool | true | Runtime | |
MatchExpressions | bool | true | Runtime | Allow backend to match complex expressions. |
MaxCallingContextDepth | int | 0 | Runtime | The maximum length of the methods context chains. |
MaxCallingContextWidth | int | 0 | Runtime | The maximum number of contexts to record for a method. It only affects the analysis when the max and min calling context
depth are different. |
MaxCompilationProblemsPerAction | int | 2 | Runtime | The maximum number of compilation failures to handle with the action specified by CompilationFailureAction before
changing to a less verbose action. This does not apply to the ExitVM action. |
MaxConstantObjectsPerType | int | 100 | Runtime | The maximum number of constant objects recorded for each type before merging the constants into one unique constant
object per type. The analysis must be heap sensitive. It has a minimum value of 1. |
MaxDirectMemorySize | int | 0 | Runtime | Maximum total size of NIO direct-buffer allocations. |
MaxDuplicationFactor | double | 2.0 | Runtime | How much duplication can happen because of irreducible loops before bailing out. |
MaxHeapContextDepth | int | 0 | Runtime | The maximum length of the context used to model a heap object in addition to the allocation site; used only when
ContextSensitiveHeap is enabled. |
MaxHeapContextWidth | int | 0 | Runtime | The maximum number of contexts to record for a heap object. It only affects the analysis when the max and min calling
context depth are different. |
MaxHeapSize | int | 0 | Runtime | The maximum heap size at run-time, in bytes. |
MaxInvokesInTrivialMethod | int | 1 | Hosted | Maximum number of invokes in a method so that it is considered trivial (for testing only). |
MaxJavaStackTraceDepth | int | 1024 | Runtime | The maximum number of lines in the stack trace for Java exceptions (0 means all). |
MaxNewSize | int | 0 | Runtime | The maximum size of the young generation at run-time, in bytes. |
MaxNodesInTrivialLeafMethod | int | 40 | Hosted | Maximum number of nodes in a method so that it is considered trivial, if it does not have any invokes. |
MaxNodesInTrivialMethod | int | 20 | Hosted | Maximum number of nodes in a method so that it is considered trivial. |
MaxObjectSetSize | int | 100 | Runtime | The maximum number of objects recorded for each type of a type state before disabling heap sensitivity for that type.
The analysis must be heap sensitive. It has a minimum value of 1. |
MaxReachableTypes | int | -1 | Hosted | Maximum number of types allowed in the image. Used for tests where small number of types is necessary. |
MaxRuntimeCompileMethods | String | * | Hosted | Maximum number of methods allowed for runtime compilation. |
MaxSurvivorSpaces | int | 0 | Hosted | Maximum number of survivor spaces. |
MaxTemplatesPerSnippet | int | 50 | Runtime | |
MaxUnrolledObjectZeroingStores | int | 8 | Hosted | Define the maximum number of stores for which the loop that zeroes out objects is unrolled. |
MaximumDesiredSize | int | 20000 | Runtime | Maximum desired size of the compiler graph in nodes. |
MaximumEscapeAnalysisArrayLength | int | 128 | Runtime | The maximum length of an array that will be escape analyzed. |
MaximumHeapSizePercent | int | 80 | Runtime | The maximum heap size as percent of physical memory. |
MaximumInliningSize | int | 300 | Runtime | Inlining is explored up to this number of nodes in the graph for each call site. |
MaximumLoopExplosionCount | int | 10000 | Runtime | Max number of loop explosions per method. |
MaximumRecursiveInlining | int | 5 | Runtime | Maximum level of recursive inlining. |
MaximumYoungGenerationSizePercent | int | 10 | Runtime | The maximum size of the young generation as a percentage of the maximum heap size. |
MegamorphicInliningMinMethodProbability | double | 0.33 | Runtime |
Minimum probability for methods to be inlined for megamorphic type profiles. |
MemUseTrackers | String | None | Runtime | Comma separated names of memory usage trackers that are enabled irrespective of the value for TrackMemUse option. An
empty value enables all memory usage trackers unconditionally. |
MethodFilterRootOnly | bool | false | Runtime | Only check MethodFilter against the root method in the context if true, otherwise check all methods. |
MethodFilter | String | None [Extra help available] | Runtime | Pattern for matching methods. The syntax for a pattern is:. |
MethodInlineBailoutLimit | int | 5000 | Runtime | Per-compilation method inlining exploration limit before giving up (use 0 to disable). |
Method | String | "main" | Hosted | Name of the main entry point method. Optional if --shared is used. |
MetricsFile | String | None [Extra help available] | Runtime | File to which metrics are dumped per compilation. |
MinCallingContextDepth | int | 0 | Runtime | The minimum length of the methods context chains. |
MinHeapContextDepth | int | 0 | Runtime | The minimum length of the context used to model a heap object in addition to the allocation site; used only when
ContextSensitiveHeap is enabled. |
MinHeapSize | int | 0 | Runtime | The minimum heap size at run-time, in bytes. |
MinimalBulkZeroingSize | int | 2048 | Runtime | If applicable, use bulk zeroing instructions when the zeroing size in bytes exceeds this threshold. |
MinimumPeelFrequency | double | 0.35 | Runtime | |
Module | | "" | Hosted | Module containing the class that contains the main entry point. Optional if --shared is used. |
MoveGuardsUpwards | bool | true | Runtime | Move guard nodes to earlier places in the dominator tree if all successors of basic block share a common guard
condition. |
MultiThreaded | bool | true | Hosted | Enable support for threads and and thread-local variables (disable for single-threaded implementation). |
NDCV | int | 0 | Runtime | Run level for NoDeadCodeVerifyHandler (0 = off, 1 = info, 2 = verbose, 3 = fatal). |
Name | | "" | Hosted | Name of the output file to be generated. |
NativeArchitecture | bool | false | Hosted | Overrides CPUFeatures and uses the native architecture, i.e., the architecture of a machine that builds an image.
NativeArchitecture takes precedence over CPUFeatures. |
NativeLinkerOption | String | * | Hosted | Pass the provided raw option that will be appended to the linker command to produce the final binary. The possible
options are platform specific and passed through without any validation. |
NeverInline | String | * | Hosted | Pattern for disabling inlining of methods during image generation. [Extra help available] |
NewCAPCache | bool | false | Hosted | Create a C Annotation Processor Cache. Will erase any previous cache at that same location. |
NodeCounters | bool | false | Runtime | Counts the number of instances of each node class. |
NonFatalIdenticalCompilationSnapshots | int | 20 | Runtime | Number of contiguous identical compiler thread stack traces allowed before the VM exits on the basis of a stuck
compilation. |
NumberOfAnalysisThreads | int | -1 | Hosted | The number of threads to use for analysis during native image generation. The number must be smaller than the
NumberOfThreads. |
NumberOfThreads | int | 8 | Hosted | The maximum number of threads to use concurrently during native image generation. |
ObjdumpExecutables | String | None | Runtime | Comma separated list of candidate GNU objdump executables. If not specified, disassembling via GNU objdump is disabled.
Otherwise, the first existing executable in the list is used. |
OldInlineBeforeAnalysis | bool | false | Hosted | Experimental: Inline methods which folds to constant during parsing before the static analysis. |
OmitHotExceptionStacktrace | bool | false | Runtime | |
OmitInlinedMethodDebugLineInfo | bool | true | Hosted | Omit generation of DebugLineInfo originating from inlined methods. |
OptAssumptions | bool | true | Runtime | |
OptConvertDeoptsToGuards | bool | true | Runtime | |
OptDeoptimizationGrouping | bool | true | Runtime | |
OptDevirtualizeInvokesOptimistically | bool | true | Runtime | |
OptEarlyReadElimination | bool | true | Runtime | |
OptEliminateGuards | bool | true | Runtime | |
OptFloatingReads | bool | true | Runtime | |
OptImplicitNullChecks | bool | true | Runtime | |
OptReadElimination | bool | true | Runtime | |
OptScheduleOutOfLoops | bool | true | Runtime | |
OptStaticFinalFieldFolding | bool | true | Hosted | Optimize static final fields that get a constant assigned in the class initializer. |
Optimize | int | 2 | Hosted | Control native-image code optimizations: 0 - no optimizations, 1 - basic optimizations, 2 - aggressive optimizations. |
PageSize | int | 0 | Hosted | Define PageSize of a machine that runs the image. The default = 0 (== same as host machine page size). |
ParseOnce | bool | true | Hosted | When true, compiler graphs are parsed only once before static analysis. When false, compiler graphs are parsed for
static analysis and again for AOT compilation. |
ParseRuntimeOptions | bool | true | Hosted | Parse and consume standard options and system properties from the command line arguments when the VM is created. |
PartialEscapeAnalysis | bool | true | Runtime | |
PartialUnroll | bool | true | Runtime | |
Path | String | None | Hosted | Directory of the image file to be generated. |
PeelALot | bool | false | Runtime | |
PercentTimeInIncrementalCollection | int | 50 | Runtime | Percentage of total collection time that should be spent on young generation collections. |
PlatformInterfaceCompatibilityMode | bool | false | Hosted | Enable the behavior of old GraalVM versions. When enabled, interfaces not available for the current platform are
filtered. |
PredefinedClassesConfigurationFiles | String | * | Hosted |
Files describing predefined classes that can be loaded at runtime. |
PredefinedClassesConfigurationResources | String | * | Hosted |
Resources describing predefined classes that can be loaded at runtime. |
PreferContainerQuotaForCPUCount | bool | true | Runtime | Calculate the container CPU availability based on the value of quotas (if set), when true. Otherwise, use the CPU shares
value, provided it is less than quota. |
PreserveFramePointer | bool | false | Hosted | Saves stack base pointer on the stack on method entry. |
PrintAOTCompilation | bool | false | Hosted | Print logging information during compilation. |
PrintAnalysisCallTree | bool | false | Runtime | Print analysis call tree, a breadth-first tree reduction of the call graph. |
PrintAnalysisStatistics | bool | false | Runtime | Print analysis results statistics. |
PrintBackendCFG | bool | false | Runtime | Enable dumping LIR, register allocation and code generation info to the C1Visualizer. |
PrintBlockMapping | bool | false | Runtime | Enable dumping CFG built during initial BciBlockMapping. |
PrintCFG | bool | false | Runtime | Enable dumping to the C1Visualizer. Enabling this option implies PrintBackendCFG. |
PrintCanonicalGraphStringFlavor | int | 0 | Runtime | Choose format used when dumping canonical text for graphs: 0 gives a scheduled graph (better for spotting changes
involving the schedule) while 1 gives a CFG containing expressions rooted at fixed nodes (better for spotting small
structure differences). |
PrintCanonicalGraphStrings | bool | false | Runtime | Enable dumping canonical text from for graphs. |
PrintClassInitialization | bool | false | Hosted | Prints class initialization info for all classes detected by analysis. |
PrintCompilation | bool | false | Runtime | Print an informational line to the console for each completed compilation. |
PrintDetailedAllocationProfiling | bool | true | Runtime | Print detailed information for each allocation site. |
PrintFeatures | bool | false | Hosted | Print features-specific information. |
PrintFlagsWithExtraHelp | String | None | Runtime | Print extra help, if available, based on comma-separated option names. Pass * to show all options that contain extra
help. |
PrintFlags | String | None | Runtime | Show available options based on comma-separated option-types (allowed categories: User, Expert, Debug). |
PrintGCSummary | bool | false | Runtime | Print summary GC information after application main method returns. |
PrintGCTimeStamps | bool | false | Runtime | Print a time stamp at each collection, if +PrintGC or +VerboseGC. |
PrintGCTimes | bool | false | Runtime | Print the time for each of the phases of each collection, if +VerboseGC. |
PrintGC | bool | false | Runtime | Print summary GC information after each collection. |
PrintGraphFile | bool | true | Runtime | Setting to true sets PrintGraph=file, setting to false sets PrintGraph=network. |
PrintGraphHost | double | "127.0.0.1" | Runtime | Host part of the address to which graphs are dumped. |
PrintGraphPort | int | 4445 | Runtime | Port part of the address to which graphs are dumped in binary format. |
PrintGraphWithSchedule | bool | false | Runtime | Schedule graphs as they are dumped. |
PrintGraph | String | File | Runtime | Where IdealGraphVisualizer graph dumps triggered by Dump or DumpOnError should be written. [Extra help available] |
PrintHeapHistogram | bool | false | Hosted | Print class statistics of native image heap. |
PrintHeapShape | bool | false | Runtime | Print the shape of the heap before and after each collection, if +VerboseGC. |
PrintIRWithLIR | bool | false | Runtime | Print HIR along side LIR as the latter is generated. |
PrintImageElementSizes | bool | false | Hosted | Print the sizes of the elements of the built image. |
PrintImageHeapPartitionSizes | bool | false | Hosted | Print the sizes of the native image heap as the image is built. |
PrintImageObjectTree | bool | false | Runtime | Print image object hierarchy. |
PrintJNIMethods | bool | false | Hosted | Print JNI methods added to generated image. |
PrintLIRWithAssembly | bool | false | Runtime | Include the LIR as comments with the final assembly. |
PrintMethodHistogram | bool | false | Hosted | Print statistics of methods in native image heap. |
PrintPointsToStatistics | bool | false | Runtime | Report analysis statistics. |
PrintProfilingInformation | bool | false | Runtime | Print profiling information when parsing a method's bytecode. |
PrintRestrictHeapAccessPath | bool | true | Hosted | Print path for @RestrictHeapAccess warnings. |
PrintRestrictHeapAccessWarnings | bool | true | Hosted | Print warnings for @RestrictHeapAccess annotations. |
PrintRuntimeCompileMethods | bool | false | Hosted | Print call tree of methods available for runtime compilation. |
PrintStaticTruffleBoundaries | bool | false | Hosted | Print truffle boundaries found during the analysis. |
PrintSynchronizedAnalysis | bool | false | Runtime | Print types used for Java synchronization. |
PrintUninterruptibleCalleeDOTGraph | bool | false | Hosted | Print (to stderr) a DOT graph of the @Uninterruptible annotations. |
PrintUniverse | bool | false | Hosted | Print information about classes, methods, and fields that are present in the native image. |
ProbabilisticProfiling | bool | true | Runtime | Control probabilistic profiling on AMD64. |
ProfileAllocationsContext | String | AllocatingMethod | Runtime |
Control the naming and granularity of the counters when using ProfileAllocations. [Extra help available] |
ProfileAllocations | bool | false | Runtime | Enable profiling of allocation sites. |
ProfileAnalysisOperations | bool | false | Runtime | Track the progress of the static analysis. |
ProfileBackedges | bool | true | Runtime | Emit profiling of backedges. |
ProfileCompiledMethods | bool | false | Runtime | |
ProfileConstantObjects | bool | false | Runtime | Track the creation of constant objects. |
ProfileDeoptimization | bool | false | Hosted | Print logging information during object file writing. |
ProfileInvokes | bool | true | Runtime | Emit profiling of invokes. |
ProfileMonitors | bool | false | Runtime | Enable profiling of monitor operations. |
ProfileSimpleMethods | bool | true | Runtime | Profile simple methods. |
QueryCodeDir | | "" | Hosted | Directory where query code for target platform should be output. |
RawConditionalElimination | bool | true | Runtime | |
ReadEliminationMaxLoopVisits | int | 5 | Runtime | |
ReassociateExpressions | bool | true | Runtime | Re-associate loop invariants and constants. |
ReduceDCE | bool | true | Runtime | Disable optional dead code eliminations. |
ReflectionConfigurationFiles | String | * | Hosted | One or several (comma-separated) paths to JSON files that specify which program elements should be made available via
reflection. [Extra help available] |
ReflectionConfigurationResources | String | * | Hosted |
Resources describing program elements to be made available for reflection (see ReflectionConfigurationFiles). |
ReflectionPluginTracing | bool | false | Hosted | Enable trace logging for reflection plugins. |
RegisterPressure | String | None | Runtime | Comma separated list of registers that register allocation is limited to. |
RelaxTypeFlowStateConstraints | bool | true | Runtime | Allow a type flow state to contain types not compatible with its declared type. |
RemoveNeverExecutedCode | bool | true | Runtime | |
RemoveSaturatedTypeFlows | bool | true | Runtime | Enable the type flow saturation analysis performance optimization. |
RemoveUnusedSymbols | bool | true | Hosted | Use linker option to prevent unreferenced symbols in image. |
ReplaceInputsWithConstantsBasedOnStamps | bool | true | Runtime | |
ReportAnalysisForbiddenType | String | * | Hosted | Report error if [:{,}] is discovered during analysis (valid values for UsageKind:
InHeap, Allocated, Reachable). |
ReportExceptionStackTraces | bool | false | Hosted | Show exception stack traces for exceptions during image building.). |
ReportPerformedSubstitutions | bool | false | Hosted | Report performed substitutions. |
ReportUnsafeOffsetWarnings | bool | false | Hosted | Print unsafe operation offset warnings.). |
ReportUnsupportedElementsAtRuntime | bool | false | Hosted | Report usage of unsupported methods and fields at run time when they are accessed the first time, instead of as an error
during image building. |
ResourceConfigurationFiles | String | * | Hosted | Files describing Java resources to be included in the image. |
ResourceConfigurationResources | String | * | Hosted | Resources describing Java resources to be included in the image. |
ReturnAfterAnalysis | bool | false | Hosted | Return after analysis. |
ReturnSpecialRegs | bool | true | Hosted | Return special registers from functions in LLVM bitcode. This may decrease performance if the target doesn't support
returning multiple values from a function. |
RuntimeAssertions | String | * | Hosted | Enable or disable Java assert statements at run time. |
RuntimeSystemAssertions | bool | false | Hosted | Enable or disable Java system assertions at run time. |
SafepointPromptnessFailureNanos | int | 0 | Runtime | Exit the VM if I can not come to a safepoint in this many nanoseconds. 0 implies forever. |
SafepointPromptnessWarningNanos | int | 0 | Runtime | Print a warning if I can not come to a safepoint in this many nanoseconds. 0 implies forever. |
ScanObjectsParallel | bool | true | Runtime | Object scanning in parallel. |
SerializationConfigurationFiles | String | * | Hosted | One or several (comma-separated) paths to JSON files that specify lists of serialization configurations. [Extra help
available] |
SerializationConfigurationResources | String | * | Hosted |
Resources describing program elements to be made available for serialization (see SerializationConfigurationFiles). |
SerializationDenyConfigurationFiles | String | * | Hosted |
One or several (comma-separated) paths to JSON files that specify lists of serialization configurations. [Extra help
available] |
SerializationDenyConfigurationResources | String | * | Hosted |
Resources describing program elements that must not be made available for serialization. |
ServiceLoaderFeatureExcludeServiceProviders | String | * | Hosted |
Comma-separated list of service providers that should be excluded. |
ServiceLoaderFeatureExcludeServices | String | * | Hosted |
Comma-separated list of services that should be excluded. |
SharedLibrary | bool | false | Hosted | Build shared library. |
ShowConfiguration | String | none | Runtime | Writes to the VM log information about the compiler configuration selected. |
ShowDumpFiles | bool | false | Runtime | Print the name of each dump file path as it's created. |
ShowSubstitutionSourceInfo | bool | false | Runtime | Controls whether the source position information of snippets and method substitutions are exposed to HotSpot. Can be
useful when profiling to get more precise position information. |
SimpleFastInflatedLocking | bool | true | Runtime | Handle simple cases for inflated monitors in the fast-path. |
SimpleMethodCalls | int | 1 | Runtime | Maximum number of calls in a simple method. |
SimpleMethodGraphSize | int | 256 | Runtime | Maximum number of nodes in a graph for a simple method. |
SimpleMethodIndirectCalls | int | 0 | Runtime | Maximum number of indirect calls in a simple moethod. |
SmallCompiledLowLevelGraphSize | int | 330 | Runtime | If the previous low-level graph size of the method exceeds the threshold, it is not inlined. |
SnippetCounters | bool | false | Runtime | Enable counters for various paths in snippets. |
SoftRefLRUPolicyMSPerMB | int | 1000 | Hosted | Soft references: this number of milliseconds multiplied by the free heap memory in MByte is the time span for which a
soft reference will keep its referent alive after its last access. |
SpawnIsolates | bool | | Hosted | Support multiple isolates. |
SpectrePHTBarriers | String | None | Runtime | Select a strategy to mitigate speculative bounds check bypass (aka Spectre-PHT or Spectre V1). [Extra help available] |
SpectrePHTIndexMasking | bool | false | Runtime | Mask indices to scope access to allocation size after bounds check. |
SpeculativeGuardMovement | bool | true | Runtime | Move loop invariant guards (e.g., array bounds checks) out of loops. |
StackRedZoneSize | int | 8192 | Hosted | Size (in bytes) of the red zone reserved at the end of the stack. This stack space can only be used by critical VM code
and C code, e.g., to report fatal errors. |
StackSize | int | 0 | Runtime | The size of each thread stack at run-time, in bytes. |
StackTrace | bool | true | Hosted | Provide method names for stack traces. |
StackYellowZoneSize | int | 32768 | Hosted | Size (in bytes) of the yellow zone reserved at the end of the stack. This stack space is reserved for VM use and cannot
be used by the application. |
StartFlightRecording | | "" | Runtime | Start flight recording with options. |
StaticExecutableWithDynamicLibC | bool | false | Hosted | Builds a statically linked executable with libc dynamically linked. |
StaticExecutable | bool | false | Hosted | Build statically linked executable (requires static libc and zlib). |
StressExplicitExceptionCode | bool | false | Runtime | Stress the code emitting explicit exception throwing code. |
StressInvokeWithExceptionNode | bool | false | Runtime | Stress the code emitting invokes with explicit exception edges. |
StressTestEarlyReads | bool | false | Runtime | Stress the code by emitting reads at earliest instead of latest point. |
StrictQueryCodeCompilation | bool | true | Hosted | Use strict checks when performing query code compilation. |
StringIndexOfLimit | int | 4096 | Runtime | String.indexOf invocations will be evaluated at compile time if the receiver is a constant and its length is lower than
this value. |
SubstitutionFiles | String | * | Hosted | Comma-separated list of file names with declarative substitutions. |
SubstitutionResources | String | * | Hosted | Comma-separated list of resource file names with declarative substitutions. |
SupportCompileInIsolates | bool | | Hosted | Support runtime compilation in separate isolates (enable at runtime with option CompileInIsolates). |
SupportJsrBytecodes | bool | true | Runtime | |
SupportOSRWithLocks | bool | true | Runtime | Support OSR compilations with locks. If DeoptAfterOSR is true we can per definition not have unbalanced enter/exits
mappings. If DeoptAfterOSR is false insert artificial monitor enters after the OSRStart to have balanced enter/exits in
the graph. |
SupportRecurringCallback | bool | true | Hosted | Support a per-thread timer that is called at a specific interval. |
SuppressStderr | bool | false | Hosted | Suppress console error output for unittests. |
SuppressStdout | bool | false | Hosted | Suppress console normal output for unittests. |
TargetPlatform | | "" | Hosted | Selects native-image compilation target (in - format). Defaults to host's OS-architecture pair. |
TearDownFailureNanos | int | 0 | Runtime | The number of nanoseconds before tearing down an isolate gives a failure message. 0 implies no message. |
TearDownWarningNanos | int | 0 | Runtime | The number of nanoseconds before and between which tearing down an isolate gives a warning message. 0 implies no
warning. |
TempDirectory | | "" | Hosted | Directory for temporary files generated during native image generation. If this option is specified, the temporary files
are not deleted so that you can inspect them after native image generation. |
TestFile | | "" | Hosted | |
ThrowUnsafeOffsetErrors | bool | true | Hosted | Throw unsafe operation offset errors.). |
TierABackedgeNotifyFreqLog | int | 16 | Runtime | Backedge notification frequency. |
TierABackedgeProfileProbabilityLog | int | 12 | Runtime | Backedge profile probability. |
TierAInvokeInlineeNotifyFreqLog | int | -1 | Runtime | Inlinee invocation notification frequency (-1 means count, but do not notify). |
TierAInvokeNotifyFreqLog | int | 13 | Runtime | Invocation notification frequency. |
TierAInvokeProfileProbabilityLog | int | 8 | Runtime | Invocation profile probability. |
TieredAOT | bool | false | Runtime | Do profiling and callbacks to tiered runtime. |
Time | String | None | Runtime | Pattern for specifying scopes in which timing is enabled. See the Dump option for the pattern syntax. An empty value
enables all timers unconditionally. |
TimedDynamicCounters | int | -1 | Runtime | Turn on the benchmark counters, and displays the results every n milliseconds. |
Timers | String | None | Runtime | Comma separated names of timers that are enabled irrespective of the value for Time option. An empty value enables all
timers unconditionally. |
TraceBytecodeParserLevel | int | 0 | Runtime | The trace level for the bytecode parser. A value of 1 enables instruction tracing and any greater value emits a frame
state trace just prior to each instruction trace.Instruction tracing output from multiple compiler threads will be
interleaved so use of this option make most sense for single threaded compilation. The MethodFilter option can be used
to refine tracing to selected methods. |
TraceClassInitialization | | "" | Hosted | Comma-separated list of fully-qualified class names that class initialization is traced for. |
TraceCodeCache | bool | false | Runtime | Print logging information for runtime code cache modifications. |
TraceDeoptimizationDetails | bool | false | Runtime | Print verbose logging information for every deoptimization. |
TraceDeoptimization | bool | false | Runtime | Print logging information for every deoptimization. |
TraceEscapeAnalysis | bool | false | Runtime | |
TraceExceptionHandlerStub | bool | false | Runtime | Trace execution of stub used to handle an exception thrown by a callee. |
TraceHeapChunks | bool | false | Runtime | Trace heap chunks during collections, if +VerboseGC and +PrintHeapShape. |
TraceInlineDuringParsing | bool | false | Runtime | Traces inlining performed during bytecode parsing. |
TraceInliningForStubsAndSnippets | bool | false | Runtime | Enable inlining decision tracing in stubs and snippets. |
TraceInlining | bool | false | Runtime | Enable tracing of inlining decisions. |
TraceLIRGeneratorLevel | int | 0 | Runtime | The trace level for the LIR generator. |
TraceLocalizationFeature | bool | false | Hosted | When enabled, localization feature details are printed. |
TraceLoggingFeature | bool | false | Hosted | When enabled, logging feature details are printed. |
TraceMonitorsMethodFilter | String | None | Runtime | Trace monitor operations in methods whose fully qualified name contains this substring. |
TraceMonitorsTypeFilter | String | None | Runtime | Trace monitor operations on objects whose type contains this substring. |
TraceNativeToolUsage | bool | false | Hosted | Trace all native tool invocations as part of image building. |
TraceObjectInstantiation | | "" | Hosted | Comma-separated list of fully-qualified class names that object instantiation is traced for. |
TraceParserPlugins | bool | false | Runtime | Traces use of plugins during bytecode parsing. |
TraceSecurityServices | bool | false | Hosted | Enable tracing of security services automatic registration. |
TraceServiceLoaderFeature | bool | false | Hosted | When enabled, each service loader resource and class will be printed out to standard output. |
TraceUnwindStub | bool | false | Runtime | Trace execution of the stub that routes an exception to a handler in the calling frame. |
TraceVMOperations | bool | false | Hosted | Trace VMOperation execution. |
TrackAccessChain | bool | false | Runtime | Track the callers for methods and accessing methods for fields. |
TrackInputFlows | bool | false | Runtime | Track the input for type flows. |
TrackMemUse | String | None | Runtime | Pattern for specifying scopes in which memory use tracking is enabled. See the Dump option for the pattern syntax. An
empty value enables all memory use trackers unconditionally. |
TrackNodeInsertion | bool | false | Runtime | Track source stack trace where a node was inserted into the graph. |
TrackNodeSourcePosition | bool | false | Runtime | Track the NodeSourcePosition. |
TreatRuntimeCodeInfoReferencesAsWeak | bool | true | Hosted | Determines if references from runtime-compiled code to Java heap objects should be treated as strong or weak. |
TrivialInliningSize | int | 10 | Runtime | Graphs with less than this number of nodes are trivial and therefore always inlined. |
TruffleCheckBlackListedMethods | bool | true | Hosted | Fail if a method known as not suitable for partial evaluation is reachable for runtime compilation. |
TruffleCheckFrameImplementation | bool | true | Hosted | Enforce that the Truffle runtime provides the only implementation of Frame. |
TruffleCheckNeverPartOfCompilation | bool | true | Hosted | Check that CompilerAsserts.neverPartOfCompilation is not reachable for runtime compilation. |
TruffleCompilerConfiguration | String | None | Runtime | Select a compiler configuration for Truffle compilation (default: use Graal system compiler configuration). |
TruffleInlineDuringParsing | bool | true | Hosted | Inline trivial methods in Truffle graphs during native image generation. |
TruffleMultiThreaded | bool | true | Hosted | Enable support for Truffle background compilation. |
TrufflePropagateCompilationErrors | bool | false | Hosted | Propagate Truffle compilation errors. |
TrustFinalDefaultFields | bool | true | Runtime | Determines whether to treat final fields with default values as constant. |
TypeCheckMaxHints | int | 2 | Runtime | The maximum number of profiled types that will be used when compiling a profiled type check. Note that
TypeCheckMinProfileHitProbability also influences whether profiling info is used in compiled type checks. |
TypeCheckMinProfileHitProbability | double | 0.5 | Runtime | If the probability that a type check will hit one the profiled types (up to TypeCheckMaxHints) is below this value, the
type check will be compiled without profiling info. |
TypeFlowSaturationCutoff | int | 20 | Runtime | The maximum number of types recorded in a type flow. -1 indicates no limitation. |
UnresolvedIsError | bool | true | Runtime | Report unresolved elements as errors. |
UnrollMaxIterations | int | 16 | Runtime | |
UnsafeAutomaticSubstitutionsLogLevel | int | 1 | Hosted | Unsafe automatic substitutions logging level: Disabled=0, Basic=1, Info=2, Debug=3.). |
UnsafeOffsetWarningsAreFatal | bool | false | Hosted | Print unsafe operation offset warnings.). |
UseBranchesWithin32ByteBoundary | bool | false | Runtime | Force branch instructions to align with 32-bytes boundary, to mitigate the jcc erratum. See
https://www.intel.com/content/dam/support/us/en/documents/processors/mitigations-jump-conditional-code-erratum.pdf for
more details. If not set explicitly, the default value will be determined according to the CPU model. |
UseCAPCache | bool | false | Hosted | Indicate the C Annotation Processor to use previously cached native information when generating C Type information. |
UseCalleeSavedRegisters | bool | true | Hosted | Use callee saved registers to reduce spilling for low-frequency calls to stubs (if callee saved registers are supported
by the architecture). |
UseCompilationStatistics | bool | false | Runtime | Enables CompilationStatistics. |
UseContainerSupport | bool | true | Hosted | Enable detection and runtime container configuration support. |
UseDedicatedVMOperationThread | bool | false | Hosted | Determines if VM operations should be executed in a dedicated thread. |
UseEncodedGraphs | bool | false | Runtime | Encode and decode snippets and substitutions before parsing to test libgraal code path. This option is ignored in the
context of libgraal. |
UseEpsilonGC | bool | false | Hosted | Use a no-op GC. |
UseExceptionProbability | bool | true | Runtime | |
UseGraalStubs | bool | true | Runtime | Use Graal-generated stubs for complicated LIR operations instead of embedding all the emitted code. |
UseLibC | String | None | Hosted | Selects the libc implementation to use. Available implementations: glibc, musl, bionic. |
UseLoom | bool | false | Hosted | Build with Loom JDK. |
UseLoopLimitChecks | bool | true | Runtime | |
UseReferenceHandlerThread | bool | false | Hosted | Populate reference queues in a separate thread rather than after a garbage collection. |
UseRememberedSet | bool | true | Hosted | Determines if a remembered sets is used, which is necessary for collecting the young and old generation independently. |
UseSerialGC | bool | true | Hosted | Use a serial GC. |
UseServiceLoaderFeature | bool | true | Hosted | Automatically register services for run-time lookup using ServiceLoader. |
UseSnippetGraphCache | bool | true | Runtime | Use a cache for snippet graphs. |
UseSnippetTemplateCache | bool | true | Runtime | Use a LRU cache for snippet templates. |
UseTrappingNullChecks | bool | true | Runtime | Use traps for null checks instead of explicit null-checks. |
UseTypeCheckHints | bool | true | Runtime | |
VerboseGC | bool | false | Runtime | Print more information about the heap before and after each collection. |
VerifyBalancedMonitors | bool | false | Runtime | Emit extra code to dynamically check monitor operations are balanced. |
VerifyDeoptimizationEntryPoints | bool | false | Hosted | Verify that all possible deoptimization entry points have been properly compiled and registered in the metadata. |
VerifyGraalGraphEdges | bool | false | Runtime | Perform expensive verification of graph inputs, usages, successors and predecessors. |
VerifyGraalGraphs | bool | true | Runtime | Verify graphs often during compilation when assertions are turned on. |
VerifyGraalPhasesSize | bool | false | Runtime | Verify before - after relation of the relative, computed, code size of a graph. |
VerifyHeapAtReturn | bool | false | Runtime | Perform platform dependent validation of the Java heap at returns. |
VerifyHeap | bool | false | Hosted | Verify the heap before and after each collection. |
VerifyKillCFGUnusedNodes | bool | false | Runtime | Verify that there are no new unused nodes when performing killCFG. |
VerifyNamingConventions | bool | false | Hosted | Verify naming conventions during image construction. |
VerifyPhases | bool | false | Runtime | |
VerifyReferences | bool | true | Hosted | Verify all object references if VerifyHeap is enabled. |
VerifyRememberedSet | bool | true | Hosted | Verify the remembered set if VerifyHeap is enabled. |
Verify | String | None | Runtime | Pattern for specifying scopes in which logging is enabled. See the Dump option for the pattern syntax. |
WriteableCodeCache | bool | false | Runtime | Allocate code cache with write access, allowing inlining of objects. |
ZapChunks | bool | false | Hosted | Fill unused memory chunks with a sentinel value. |
ZapConsumedHeapChunks | bool | false | Hosted | After use, Fill memory chunks with a sentinel value. |
ZapProducedHeapChunks | bool | false | Hosted | Before use, fill memory chunks with a sentinel value. |
ZapStackOnMethodEntry | bool | false | Runtime | Default: - (disabled).
[total]: 1,747.75 ms, 1.17 GB |