1 /*
2 * Copyright (c) 1997, 2024, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation.
8 *
9 * This code is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 * version 2 for more details (a copy is included in the LICENSE file that
13 * accompanied this code).
14 *
15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
376 product(bool, AbortVMOnCompilationFailure, false, DIAGNOSTIC, \
377 "Abort VM when method had failed to compile.") \
378 \
379 develop(intx, OSROnlyBCI, -1, \
380 "OSR only at this bci. Negative values mean exclude that bci") \
381 \
382 develop(intx, DesiredMethodLimit, 8000, \
383 "The desired maximum method size (in bytecodes) after inlining") \
384 \
385 product(bool, DontCompileHugeMethods, true, \
386 "Do not compile methods > HugeMethodLimit") \
387 \
388 develop(intx, HugeMethodLimit, 8000, \
389 "Don't compile methods larger than this if " \
390 "+DontCompileHugeMethods") \
391 \
392 product(bool, CaptureBailoutInformation, trueInDebug, DIAGNOSTIC, \
393 "If compilation is stopped with an error, capture diagnostic " \
394 "information at the bailout point") \
395 \
396 // end of COMPILER_FLAGS
397
398 DECLARE_FLAGS(COMPILER_FLAGS)
399
400 #endif // SHARE_COMPILER_COMPILER_GLOBALS_HPP
|
1 /*
2 * Copyright (c) 1997, 2025, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation.
8 *
9 * This code is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 * version 2 for more details (a copy is included in the LICENSE file that
13 * accompanied this code).
14 *
15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
376 product(bool, AbortVMOnCompilationFailure, false, DIAGNOSTIC, \
377 "Abort VM when method had failed to compile.") \
378 \
379 develop(intx, OSROnlyBCI, -1, \
380 "OSR only at this bci. Negative values mean exclude that bci") \
381 \
382 develop(intx, DesiredMethodLimit, 8000, \
383 "The desired maximum method size (in bytecodes) after inlining") \
384 \
385 product(bool, DontCompileHugeMethods, true, \
386 "Do not compile methods > HugeMethodLimit") \
387 \
388 develop(intx, HugeMethodLimit, 8000, \
389 "Don't compile methods larger than this if " \
390 "+DontCompileHugeMethods") \
391 \
392 product(bool, CaptureBailoutInformation, trueInDebug, DIAGNOSTIC, \
393 "If compilation is stopped with an error, capture diagnostic " \
394 "information at the bailout point") \
395 \
396 /* AOT Code Caching flags */ \
397 \
398 product(uint, DisableAOTCode, 0, \
399 "Disable AOT code on some compilation levels " \
400 "(T1=1; T2=2; T4=4; T5/preload=8") \
401 \
402 product(uint, ClassInitBarrierMode, 0, \
403 "Produce AOT preload code which could be called on first " \
404 "method invocation, add class initialization barriers, " \
405 "other checks and constrains if needed " \
406 "(0: no barriers; 1: uncommon trap; 2: full barrier)") \
407 \
408 product(bool, StressClassInitBarriers, false, DIAGNOSTIC, \
409 "Force slow path in class initialization barriers") \
410 \
411 product(bool, UseAOTCodeLoadThread, true, \
412 "Use separate thread for AOT code load") \
413 \
414 product(uint, AOTCodeLoadStart, 0, \
415 "The id of the first AOT code to load") \
416 \
417 product(uint, AOTCodeLoadStop, max_jint, \
418 "The id of the last AOT code to load") \
419 \
420 product(bool, VerifyAOTCode, false, DIAGNOSTIC, \
421 "Load AOT code but not publish") \
422 \
423 product(bool, UseGlobalCompileQueueLock, false, \
424 "Use a global lock for all compilation queues") \
425 \
426 product(bool, UseLockFreeCompileQueues, true, \
427 "Use lock free compile queues") \
428 \
429 product(bool, PrecompileCode, false, \
430 "Precompile code") \
431 \
432 product(bool, PrecompileOnlyAndExit, false, \
433 "Exit after precompilation step is over") \
434 \
435 product(bool, PreloadReduceTraps, true, DIAGNOSTIC, \
436 "Preload code should avoid traps as much as possible.") \
437 \
438 product(bool, PreloadBlocking, false, DIAGNOSTIC, \
439 "Preload code is processed with blocking. Startup would not " \
440 "proceed until all code preloaded code is done loading.") \
441 \
442 product(bool, PreloadOnly, false, EXPERIMENTAL, \
443 "Use preload code exclusively. This effectively disables most of "\
444 "profiling and JIT compilation, running close to AOT-only mode.") \
445 \
446
447 // end of COMPILER_FLAGS
448
449 DECLARE_FLAGS(COMPILER_FLAGS)
450
451 #endif // SHARE_COMPILER_COMPILER_GLOBALS_HPP
|