2826 } 2827 if (FLAG_SET_CMDLINE(RequireSharedSpaces, true) != JVMFlag::SUCCESS) { 2828 return JNI_EINVAL; 2829 } 2830 // -Xshare:auto || -XX:ArchiveClassesAtExit=<archive file> 2831 } else if (match_option(option, "-Xshare:auto")) { 2832 if (FLAG_SET_CMDLINE(UseSharedSpaces, true) != JVMFlag::SUCCESS) { 2833 return JNI_EINVAL; 2834 } 2835 if (FLAG_SET_CMDLINE(RequireSharedSpaces, false) != JVMFlag::SUCCESS) { 2836 return JNI_EINVAL; 2837 } 2838 // -Xshare:off 2839 } else if (match_option(option, "-Xshare:off")) { 2840 if (FLAG_SET_CMDLINE(UseSharedSpaces, false) != JVMFlag::SUCCESS) { 2841 return JNI_EINVAL; 2842 } 2843 if (FLAG_SET_CMDLINE(RequireSharedSpaces, false) != JVMFlag::SUCCESS) { 2844 return JNI_EINVAL; 2845 } 2846 // -Xverify 2847 } else if (match_option(option, "-Xverify", &tail)) { 2848 if (strcmp(tail, ":all") == 0 || strcmp(tail, "") == 0) { 2849 if (FLAG_SET_CMDLINE(BytecodeVerificationLocal, true) != JVMFlag::SUCCESS) { 2850 return JNI_EINVAL; 2851 } 2852 if (FLAG_SET_CMDLINE(BytecodeVerificationRemote, true) != JVMFlag::SUCCESS) { 2853 return JNI_EINVAL; 2854 } 2855 } else if (strcmp(tail, ":remote") == 0) { 2856 if (FLAG_SET_CMDLINE(BytecodeVerificationLocal, false) != JVMFlag::SUCCESS) { 2857 return JNI_EINVAL; 2858 } 2859 if (FLAG_SET_CMDLINE(BytecodeVerificationRemote, true) != JVMFlag::SUCCESS) { 2860 return JNI_EINVAL; 2861 } 2862 } else if (strcmp(tail, ":none") == 0) { 2863 if (FLAG_SET_CMDLINE(BytecodeVerificationLocal, false) != JVMFlag::SUCCESS) { 2864 return JNI_EINVAL; 2865 } | 2826 } 2827 if (FLAG_SET_CMDLINE(RequireSharedSpaces, true) != JVMFlag::SUCCESS) { 2828 return JNI_EINVAL; 2829 } 2830 // -Xshare:auto || -XX:ArchiveClassesAtExit=<archive file> 2831 } else if (match_option(option, "-Xshare:auto")) { 2832 if (FLAG_SET_CMDLINE(UseSharedSpaces, true) != JVMFlag::SUCCESS) { 2833 return JNI_EINVAL; 2834 } 2835 if (FLAG_SET_CMDLINE(RequireSharedSpaces, false) != JVMFlag::SUCCESS) { 2836 return JNI_EINVAL; 2837 } 2838 // -Xshare:off 2839 } else if (match_option(option, "-Xshare:off")) { 2840 if (FLAG_SET_CMDLINE(UseSharedSpaces, false) != JVMFlag::SUCCESS) { 2841 return JNI_EINVAL; 2842 } 2843 if (FLAG_SET_CMDLINE(RequireSharedSpaces, false) != JVMFlag::SUCCESS) { 2844 return JNI_EINVAL; 2845 } 2846 // -XX:DumpLoadedClassList 2847 } else if (match_option(option, "-XX:DumpLoadedClassList=", &tail)) { 2848 if (tail != NULL) { 2849 add_property("java.lang.invoke.MethodHandle.CDS_TRACE_RESOLVE=true"); 2850 DumpLoadedClassList = os::strdup_check_oom(tail); 2851 } else { 2852 warning("Bad option for -XX:DumpLoadedClassList=<file>"); 2853 return JNI_EINVAL; 2854 } 2855 // -Xverify 2856 } else if (match_option(option, "-Xverify", &tail)) { 2857 if (strcmp(tail, ":all") == 0 || strcmp(tail, "") == 0) { 2858 if (FLAG_SET_CMDLINE(BytecodeVerificationLocal, true) != JVMFlag::SUCCESS) { 2859 return JNI_EINVAL; 2860 } 2861 if (FLAG_SET_CMDLINE(BytecodeVerificationRemote, true) != JVMFlag::SUCCESS) { 2862 return JNI_EINVAL; 2863 } 2864 } else if (strcmp(tail, ":remote") == 0) { 2865 if (FLAG_SET_CMDLINE(BytecodeVerificationLocal, false) != JVMFlag::SUCCESS) { 2866 return JNI_EINVAL; 2867 } 2868 if (FLAG_SET_CMDLINE(BytecodeVerificationRemote, true) != JVMFlag::SUCCESS) { 2869 return JNI_EINVAL; 2870 } 2871 } else if (strcmp(tail, ":none") == 0) { 2872 if (FLAG_SET_CMDLINE(BytecodeVerificationLocal, false) != JVMFlag::SUCCESS) { 2873 return JNI_EINVAL; 2874 } |