101 102 ifneq ($(call check-jvm-feature, management), true) 103 JVM_CFLAGS_FEATURES += -DINCLUDE_MANAGEMENT=0 104 endif 105 106 ifneq ($(call check-jvm-feature, cds), true) 107 JVM_CFLAGS_FEATURES += -DINCLUDE_CDS=0 108 JVM_EXCLUDE_FILES += \ 109 classListParser.cpp \ 110 classLoaderExt.cpp \ 111 filemap.cpp \ 112 metaspaceShared.cpp \ 113 metaspaceShared_$(HOTSPOT_TARGET_CPU).cpp \ 114 metaspaceShared_$(HOTSPOT_TARGET_CPU_ARCH).cpp \ 115 sharedClassUtil.cpp \ 116 sharedPathsMiscInfo.cpp \ 117 systemDictionaryShared.cpp \ 118 # 119 endif 120 121 ifneq ($(call check-jvm-feature, all-gcs), true) 122 JVM_CFLAGS_FEATURES += -DINCLUDE_ALL_GCS=0 123 JVM_EXCLUDE_PATTERNS += \ 124 cms/ g1/ parallel/ 125 JVM_EXCLUDE_FILES += \ 126 concurrentGCThread.cpp \ 127 suspendibleThreadSet.cpp \ 128 plab.cpp 129 JVM_EXCLUDE_FILES += \ 130 g1MemoryPool.cpp \ 131 psMemoryPool.cpp 132 endif 133 134 ifneq ($(call check-jvm-feature, nmt), true) 135 JVM_CFLAGS_FEATURES += -DINCLUDE_NMT=0 136 JVM_EXCLUDE_FILES += \ 137 memBaseline.cpp memReporter.cpp mallocTracker.cpp virtualMemoryTracker.cpp nmtCommon.cpp \ 138 memTracker.cpp nmtDCmd.cpp mallocSiteTable.cpp 139 endif 140 141 ifeq ($(call check-jvm-feature, aot), true) 142 JVM_CFLAGS_FEATURES += -DINCLUDE_AOT 143 else 144 JVM_EXCLUDE_FILES += \ 145 compiledIC_aot_x86_64.cpp compilerRuntime.cpp \ 146 aotCodeHeap.cpp aotCompiledMethod.cpp aotLoader.cpp compiledIC_aot.cpp 147 endif 148 ################################################################################ 149 150 ifeq ($(call check-jvm-feature, link-time-opt), true) 151 # NOTE: Disable automatic opimization level and let the explicit cflag control 152 # optimization level instead. This activates O3 on slowdebug builds, just 153 # like the old build, but it's probably not right. 154 JVM_OPTIMIZATION := 155 JVM_CFLAGS_FEATURES += -O3 -flto 156 JVM_LDFLAGS_FEATURES += -O3 -flto -fuse-linker-plugin -fno-strict-aliasing 157 endif 158 159 ifeq ($(call check-jvm-feature, minimal), true) 160 ifeq ($(call check-jvm-feature, link-time-opt), false) 161 JVM_OPTIMIZATION := SIZE 162 OPT_SPEED_SRC := \ 163 allocation.cpp \ 164 assembler.cpp \ 165 assembler_linux_arm.cpp \ 166 barrierSet.cpp \ | 101 102 ifneq ($(call check-jvm-feature, management), true) 103 JVM_CFLAGS_FEATURES += -DINCLUDE_MANAGEMENT=0 104 endif 105 106 ifneq ($(call check-jvm-feature, cds), true) 107 JVM_CFLAGS_FEATURES += -DINCLUDE_CDS=0 108 JVM_EXCLUDE_FILES += \ 109 classListParser.cpp \ 110 classLoaderExt.cpp \ 111 filemap.cpp \ 112 metaspaceShared.cpp \ 113 metaspaceShared_$(HOTSPOT_TARGET_CPU).cpp \ 114 metaspaceShared_$(HOTSPOT_TARGET_CPU_ARCH).cpp \ 115 sharedClassUtil.cpp \ 116 sharedPathsMiscInfo.cpp \ 117 systemDictionaryShared.cpp \ 118 # 119 endif 120 121 ifneq ($(call check-jvm-feature, nmt), true) 122 JVM_CFLAGS_FEATURES += -DINCLUDE_NMT=0 123 JVM_EXCLUDE_FILES += \ 124 memBaseline.cpp memReporter.cpp mallocTracker.cpp virtualMemoryTracker.cpp nmtCommon.cpp \ 125 memTracker.cpp nmtDCmd.cpp mallocSiteTable.cpp 126 endif 127 128 ifeq ($(call check-jvm-feature, aot), true) 129 JVM_CFLAGS_FEATURES += -DINCLUDE_AOT 130 else 131 JVM_EXCLUDE_FILES += \ 132 compiledIC_aot_x86_64.cpp compilerRuntime.cpp \ 133 aotCodeHeap.cpp aotCompiledMethod.cpp aotLoader.cpp compiledIC_aot.cpp 134 endif 135 136 ifneq ($(call check-jvm-feature, cmsgc), true) 137 JVM_CFLAGS_FEATURES += -DINCLUDE_CMSGC=0 138 JVM_EXCLUDE_PATTERNS += gc/cms 139 JVM_EXCLUDE_FILES += none 140 endif 141 142 ifneq ($(call check-jvm-feature, g1gc), true) 143 JVM_CFLAGS_FEATURES += -DINCLUDE_G1GC=0 144 JVM_EXCLUDE_PATTERNS += gc/g1 145 JVM_EXCLUDE_FILES += none 146 endif 147 148 ifneq ($(call check-jvm-feature, parallelgc), true) 149 JVM_CFLAGS_FEATURES += -DINCLUDE_PARALLELGC=0 150 JVM_EXCLUDE_PATTERNS += gc/parallel 151 JVM_EXCLUDE_FILES += none 152 endif 153 154 ifneq ($(call check-jvm-feature, serialgc), true) 155 JVM_CFLAGS_FEATURES += -DINCLUDE_SERIALGC=0 156 JVM_EXCLUDE_PATTERNS += gc/serial 157 # If serial is disabled, we cannot use serial as OldGC in parallel 158 JVM_EXCLUDE_FILES += psMarkSweep.cpp psMarkSweepDecorator.cpp 159 endif 160 ################################################################################ 161 162 ifeq ($(call check-jvm-feature, link-time-opt), true) 163 # NOTE: Disable automatic opimization level and let the explicit cflag control 164 # optimization level instead. This activates O3 on slowdebug builds, just 165 # like the old build, but it's probably not right. 166 JVM_OPTIMIZATION := 167 JVM_CFLAGS_FEATURES += -O3 -flto 168 JVM_LDFLAGS_FEATURES += -O3 -flto -fuse-linker-plugin -fno-strict-aliasing 169 endif 170 171 ifeq ($(call check-jvm-feature, minimal), true) 172 ifeq ($(call check-jvm-feature, link-time-opt), false) 173 JVM_OPTIMIZATION := SIZE 174 OPT_SPEED_SRC := \ 175 allocation.cpp \ 176 assembler.cpp \ 177 assembler_linux_arm.cpp \ 178 barrierSet.cpp \ |