129 endif 130 131 ifneq ($(call check-jvm-feature, all-gcs), true) 132 JVM_CFLAGS_FEATURES += -DINCLUDE_ALL_GCS=0 133 JVM_EXCLUDE_PATTERNS += \ 134 cms/ g1/ parallel/ 135 JVM_EXCLUDE_FILES += \ 136 concurrentGCThread.cpp \ 137 plab.cpp 138 JVM_EXCLUDE_FILES += \ 139 g1MemoryPool.cpp \ 140 psMemoryPool.cpp 141 endif 142 143 ifneq ($(call check-jvm-feature, nmt), true) 144 JVM_CFLAGS_FEATURES += -DINCLUDE_NMT=0 145 JVM_EXCLUDE_FILES += \ 146 memBaseline.cpp memReporter.cpp mallocTracker.cpp virtualMemoryTracker.cpp nmtCommon.cpp \ 147 memTracker.cpp nmtDCmd.cpp mallocSiteTable.cpp 148 endif | 129 endif 130 131 ifneq ($(call check-jvm-feature, all-gcs), true) 132 JVM_CFLAGS_FEATURES += -DINCLUDE_ALL_GCS=0 133 JVM_EXCLUDE_PATTERNS += \ 134 cms/ g1/ parallel/ 135 JVM_EXCLUDE_FILES += \ 136 concurrentGCThread.cpp \ 137 plab.cpp 138 JVM_EXCLUDE_FILES += \ 139 g1MemoryPool.cpp \ 140 psMemoryPool.cpp 141 endif 142 143 ifneq ($(call check-jvm-feature, nmt), true) 144 JVM_CFLAGS_FEATURES += -DINCLUDE_NMT=0 145 JVM_EXCLUDE_FILES += \ 146 memBaseline.cpp memReporter.cpp mallocTracker.cpp virtualMemoryTracker.cpp nmtCommon.cpp \ 147 memTracker.cpp nmtDCmd.cpp mallocSiteTable.cpp 148 endif 149 150 ################################################################################ 151 152 ifeq ($(call check-jvm-feature, link-time-opt), true) 153 # NOTE: Disable automatic opimization level and let the explicit cflag control 154 # optimization level instead. This activates O3 on slowdebug builds, just 155 # like the old build, but it's probably not right. 156 JVM_OPTIMIZATION := 157 JVM_CFLAGS_FEATURES += -O3 -flto 158 JVM_LDFLAGS_FEATURES += -O3 -flto -fwhole-program -fno-strict-aliasing 159 endif 160 161 ifeq ($(call check-jvm-feature, minimal), true) 162 ifeq ($(call check-jvm-feature, link-time-opt), false) 163 JVM_OPTIMIZATION := SIZE 164 OPT_SPEED_SRC := \ 165 allocation.cpp \ 166 assembler.cpp \ 167 assembler_linux_arm.cpp \ 168 barrierSet.cpp \ 169 basicLock.cpp \ 170 biasedLocking.cpp \ 171 bytecode.cpp \ 172 bytecodeInterpreter.cpp \ 173 bytecodeInterpreter_x86.cpp \ 174 c1_Compilation.cpp \ 175 c1_Compiler.cpp \ 176 c1_GraphBuilder.cpp \ 177 c1_LinearScan.cpp \ 178 c1_LIR.cpp \ 179 ciEnv.cpp \ 180 ciObjectFactory.cpp \ 181 codeBlob.cpp \ 182 constantPool.cpp \ 183 constMethod.cpp \ 184 classLoader.cpp \ 185 classLoaderData.cpp \ 186 classFileParser.cpp \ 187 classFileStream.cpp \ 188 cpCache.cpp \ 189 defNewGeneration.cpp \ 190 frame_arm.cpp \ 191 genCollectedHeap.cpp \ 192 generation.cpp \ 193 genMarkSweep.cpp \ 194 growableArray.cpp \ 195 handles.cpp \ 196 hashtable.cpp \ 197 heap.cpp \ 198 icache.cpp \ 199 icache_arm.cpp \ 200 instanceKlass.cpp \ 201 invocationCounter.cpp \ 202 iterator.cpp \ 203 javaCalls.cpp \ 204 javaClasses.cpp \ 205 jniFastGetField_arm.cpp \ 206 jvm.cpp \ 207 jvm_linux.cpp \ 208 linkResolver.cpp \ 209 klass.cpp \ 210 klassVtable.cpp \ 211 markSweep.cpp \ 212 memRegion.cpp \ 213 memoryPool.cpp \ 214 method.cpp \ 215 methodHandles.cpp \ 216 methodHandles_arm.cpp \ 217 methodLiveness.cpp \ 218 metablock.cpp \ 219 metaspace.cpp \ 220 mutex.cpp \ 221 mutex_linux.cpp \ 222 mutexLocker.cpp \ 223 nativeLookup.cpp \ 224 objArrayKlass.cpp \ 225 os_linux.cpp \ 226 os_linux_arm.cpp \ 227 placeHolders.cpp \ 228 quickSort.cpp \ 229 resourceArea.cpp \ 230 rewriter.cpp \ 231 sharedRuntime.cpp \ 232 signature.cpp \ 233 space.cpp \ 234 stackMapTable.cpp \ 235 symbolTable.cpp \ 236 systemDictionary.cpp \ 237 symbol.cpp \ 238 synchronizer.cpp \ 239 threadLS_bsd_x86.cpp \ 240 threadLS_linux_arm.cpp \ 241 threadLS_linux_x86.cpp \ 242 timer.cpp \ 243 typeArrayKlass.cpp \ 244 unsafe.cpp \ 245 utf8.cpp \ 246 vmSymbols.cpp \ 247 # 248 249 $(foreach s, $(OPT_SPEED_SRC), \ 250 $(eval BUILD_LIBJVM_$s_OPTIMIZATION := HIGHEST_JVM)) 251 252 BUILD_LIBJVM_systemDictionary.cpp_CXXFLAGS := -fno-optimize-sibling-calls 253 endif 254 endif |