Skip to content

Commit 06f1ecb

Browse files
committed
Nest these so we're not doing useless checks
1 parent c0bfde9 commit 06f1ecb

File tree

1 file changed

+37
-26
lines changed

1 file changed

+37
-26
lines changed

bin/jruby.sh

Lines changed: 37 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -511,41 +511,52 @@ add_log "Detected Java version: $java_version"
511511
# Split version out for integer comparisons
512512
java_major=${java_version%%.*}
513513

514-
# AppCDS support
515-
if [ "$java_major" -ge 13 ] && exists "$JAVA_HOME"/lib/server/*.jsa; then
516-
java_has_appcds=true
517-
else
518-
java_has_appcds=false
519-
fi
520-
readonly java_has_appcds
514+
# Java version-specific tuning flags
515+
if [ "$java_major" -ge 13 ]; then
516+
if exists "$JAVA_HOME"/lib/server/*.jsa; then
517+
# AppCDS support
518+
java_has_appcds=true
519+
else
520+
java_has_appcds=false
521+
fi
521522

522-
# Default to using AppCDS if available
523-
use_jsa_file="$java_has_appcds"
523+
if [ "$java_major" -ge 19 ]; then
524+
# AppCDS autogeneration
525+
java_has_appcds_autogenerate=true
524526

525-
# AppCDS autogeneration
526-
if [ "$java_major" -ge 19 ]; then
527-
java_has_appcds_autogenerate=true
528-
else
529-
java_has_appcds_autogenerate=false
530-
fi
531-
readonly java_has_appcds_autogenerate
527+
if [ " $java_major" -ge 22 ]; then
528+
# Native access
529+
enable_native_access=true
532530

533-
# Native access
534-
if [ " $java_major" -ge 22 ]; then
535-
enable_native_access=true
531+
if [ " $java_major" -ge 23 ]; then
532+
# Unsafe memory
533+
enable_unsafe_memory=true
534+
else
535+
enable_unsafe_memory=false
536+
fi
537+
else
538+
enable_native_access=false
539+
enable_unsafe_memory=false
540+
fi
541+
else
542+
java_has_appcds_autogenerate=false
543+
enable_native_access=false
544+
enable_unsafe_memory=false
545+
fi
536546
else
547+
java_has_appcds=false
548+
java_has_appcds_autogenerate=false
537549
enable_native_access=false
538-
fi
539-
readonly enable_native_access
540-
541-
# Native access
542-
if [ " $java_major" -ge 23 ]; then
543-
enable_unsafe_memory=true
544-
else
545550
enable_unsafe_memory=false
546551
fi
552+
readonly java_has_appcds
553+
readonly java_has_appcds_autogenerate
554+
readonly enable_native_access
547555
readonly enable_unsafe_memory
548556

557+
# Default to using AppCDS if available
558+
use_jsa_file="$java_has_appcds"
559+
549560
# ----- Process .java_opts files ----------------------------------------------
550561

551562
# We include options on the java command line in the following order:

0 commit comments

Comments
 (0)