Skip to content

Commit 7743345

Browse files
magicusshipilev
andcommitted
8294314: Minimize disabled warnings in hotspot
Co-authored-by: Aleksey Shipilev <shade@openjdk.org> Reviewed-by: erikj, shade
1 parent 552d8a2 commit 7743345

File tree

5 files changed

+57
-24
lines changed

5 files changed

+57
-24
lines changed

make/common/MakeBase.gmk

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
2+
# Copyright (c) 2011, 2022, Oracle and/or its affiliates. All rights reserved.
33
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
#
55
# This code is free software; you can redistribute it and/or modify it
@@ -194,7 +194,7 @@ $(eval $(call SetupLogging))
194194

195195
################################################################################
196196

197-
MAX_PARAMS := 36
197+
MAX_PARAMS := 96
198198
PARAM_SEQUENCE := $(call sequence, 2, $(MAX_PARAMS))
199199

200200
# Template for creating a macro taking named parameters. To use it, assign the

make/common/NativeCompilation.gmk

+5-2
Original file line numberDiff line numberDiff line change
@@ -349,18 +349,20 @@ define SetupCompileNativeFileBody
349349
endif
350350

351351
$1_BASE_CFLAGS := $$($$($1_BASE)_CFLAGS) $$($$($1_BASE)_EXTRA_CFLAGS) \
352-
$$($$($1_BASE)_SYSROOT_CFLAGS) $$($1_WARNINGS_FLAGS)
352+
$$($$($1_BASE)_SYSROOT_CFLAGS)
353353
$1_BASE_CXXFLAGS := $$($$($1_BASE)_CXXFLAGS) $$($$($1_BASE)_EXTRA_CXXFLAGS) \
354-
$$($$($1_BASE)_SYSROOT_CFLAGS) $$($1_EXTRA_CXXFLAGS) $$($1_WARNINGS_FLAGS)
354+
$$($$($1_BASE)_SYSROOT_CFLAGS) $$($1_EXTRA_CXXFLAGS)
355355
$1_BASE_ASFLAGS := $$($$($1_BASE)_ASFLAGS) $$($$($1_BASE)_EXTRA_ASFLAGS)
356356

357357
ifneq ($$(filter %.c, $$($1_FILENAME)), )
358358
# Compile as a C file
359+
$1_CFLAGS += $$($1_WARNINGS_FLAGS)
359360
$1_FLAGS := $(CFLAGS_CCACHE) $$($1_USE_PCH_FLAGS) $$($1_BASE_CFLAGS) \
360361
$$($1_OPT_CFLAGS) $$($1_CFLAGS) -c
361362
$1_COMPILER := $$($$($1_BASE)_CC)
362363
else ifneq ($$(filter %.m, $$($1_FILENAME)), )
363364
# Compile as an Objective-C file
365+
$1_CFLAGS += $$($1_WARNINGS_FLAGS)
364366
$1_FLAGS := -x objective-c $(CFLAGS_CCACHE) $$($1_USE_PCH_FLAGS) \
365367
$$($1_BASE_CFLAGS) $$($1_OPT_CFLAGS) $$($1_CFLAGS) -c
366368
$1_COMPILER := $$($$($1_BASE)_CC)
@@ -384,6 +386,7 @@ define SetupCompileNativeFileBody
384386
endif
385387
else ifneq ($$(filter %.cpp %.cc %.mm, $$($1_FILENAME)), )
386388
# Compile as a C++ or Objective-C++ file
389+
$1_CXXFLAGS += $$($1_WARNINGS_FLAGS)
387390
$1_FLAGS := $(CFLAGS_CCACHE) $$($1_USE_PCH_FLAGS) $$($1_BASE_CXXFLAGS) \
388391
$$($1_OPT_CXXFLAGS) $$($1_CXXFLAGS) -c
389392
$1_COMPILER := $$($$($1_BASE)_CXX)

make/hotspot/lib/CompileGtest.gmk

+4
Original file line numberDiff line numberDiff line change
@@ -102,9 +102,13 @@ $(eval $(call SetupJdkLibrary, BUILD_GTEST_LIBJVM, \
102102
CFLAGS_macosx := -DGTEST_OS_MAC=1, \
103103
DISABLED_WARNINGS_gcc := $(DISABLED_WARNINGS_gcc) \
104104
undef stringop-overflow, \
105+
DISABLED_WARNINGS_gcc_test_signals.cpp := cast-function-type, \
106+
DISABLED_WARNINGS_gcc_test_threadCpuLoad.cpp := address, \
105107
DISABLED_WARNINGS_clang := $(DISABLED_WARNINGS_clang) \
106108
undef switch format-nonliteral tautological-undefined-compare \
107109
self-assign-overloaded, \
110+
DISABLED_WARNINGS_clang_test_g1ServiceThread.cpp := delete-abstract-non-virtual-dtor, \
111+
DISABLED_WARNINGS_clang_test_logDecorations.cpp := missing-field-initializers, \
108112
DISABLED_WARNINGS_microsoft := $(DISABLED_WARNINGS_microsoft), \
109113
LDFLAGS := $(JVM_LDFLAGS), \
110114
LDFLAGS_unix := -L$(JVM_OUTPUTDIR)/libgtest, \

make/hotspot/lib/CompileJvm.gmk

+46-16
Original file line numberDiff line numberDiff line change
@@ -83,26 +83,22 @@ CFLAGS_VM_VERSION := \
8383
################################################################################
8484
# Disabled warnings
8585

86-
DISABLED_WARNINGS_gcc := parentheses comment unknown-pragmas address \
87-
delete-non-virtual-dtor char-subscripts array-bounds int-in-bool-context \
88-
ignored-qualifiers missing-field-initializers implicit-fallthrough \
89-
empty-body strict-overflow sequence-point maybe-uninitialized \
90-
misleading-indentation cast-function-type shift-negative-value
91-
92-
ifeq ($(call check-jvm-feature, zero), true)
93-
DISABLED_WARNINGS_gcc += return-type switch clobbered
94-
endif
86+
DISABLED_WARNINGS_gcc := array-bounds comment delete-non-virtual-dtor \
87+
empty-body ignored-qualifiers implicit-fallthrough int-in-bool-context \
88+
maybe-uninitialized missing-field-initializers parentheses \
89+
shift-negative-value unknown-pragmas
90+
91+
DISABLED_WARNINGS_clang := ignored-qualifiers sometimes-uninitialized \
92+
missing-braces delete-non-abstract-non-virtual-dtor unknown-pragmas
9593

96-
DISABLED_WARNINGS_clang := tautological-compare \
97-
undefined-var-template sometimes-uninitialized unknown-pragmas \
98-
delete-non-virtual-dtor missing-braces char-subscripts \
99-
ignored-qualifiers missing-field-initializers mismatched-tags \
100-
shift-negative-value misleading-indentation
94+
ifneq ($(DEBUG_LEVEL), release)
95+
# Assert macro gives warning
96+
DISABLED_WARNINGS_clang += tautological-constant-out-of-range-compare
97+
endif
10198

10299
DISABLED_WARNINGS_xlc := tautological-compare shift-negative-value
103100

104-
DISABLED_WARNINGS_microsoft := 4100 4127 4146 4201 4244 4291 4351 \
105-
4511 4512 4514 4624
101+
DISABLED_WARNINGS_microsoft := 4624 4244 4291 4146 4127
106102

107103
################################################################################
108104
# Platform specific setup
@@ -156,7 +152,41 @@ $(eval $(call SetupJdkLibrary, BUILD_LIBJVM, \
156152
abstract_vm_version.cpp_CXXFLAGS := $(CFLAGS_VM_VERSION), \
157153
arguments.cpp_CXXFLAGS := $(CFLAGS_VM_VERSION), \
158154
DISABLED_WARNINGS_gcc := $(DISABLED_WARNINGS_gcc), \
155+
DISABLED_WARNINGS_gcc_ad_$(HOTSPOT_TARGET_CPU_ARCH).cpp := nonnull, \
156+
DISABLED_WARNINGS_gcc_assembler_aarch64.cpp := misleading-indentation, \
157+
DISABLED_WARNINGS_gcc_c1_LIR.cpp := misleading-indentation, \
158+
DISABLED_WARNINGS_gcc_cgroupV1Subsystem_linux.cpp := address, \
159+
DISABLED_WARNINGS_gcc_cgroupV2Subsystem_linux.cpp := address, \
160+
DISABLED_WARNINGS_gcc_dict.cpp := char-subscripts, \
161+
DISABLED_WARNINGS_gcc_interp_masm_x86.cpp := uninitialized, \
162+
DISABLED_WARNINGS_gcc_javaClasses.cpp := misleading-indentation, \
163+
DISABLED_WARNINGS_gcc_loopnode.cpp := sequence-point, \
164+
DISABLED_WARNINGS_gcc_postaloc.cpp := address, \
165+
DISABLED_WARNINGS_gcc_sharedRuntimeTrig.cpp := misleading-indentation, \
166+
DISABLED_WARNINGS_gcc_shenandoahBarrierSet.cpp := misleading-indentation, \
167+
DISABLED_WARNINGS_gcc_shenandoahBarrierSetAssembler_aarch64.cpp := misleading-indentation, \
168+
DISABLED_WARNINGS_gcc_shenandoahBarrierSetAssembler_ppc.cpp := misleading-indentation, \
169+
DISABLED_WARNINGS_gcc_shenandoahBarrierSetAssembler_riscv.cpp := misleading-indentation, \
170+
DISABLED_WARNINGS_gcc_shenandoahBarrierSetAssembler_x86.cpp := misleading-indentation, \
171+
DISABLED_WARNINGS_gcc_shenandoahBarrierSetC1_aarch64.cpp := misleading-indentation, \
172+
DISABLED_WARNINGS_gcc_shenandoahBarrierSetC1_ppc.cpp := misleading-indentation, \
173+
DISABLED_WARNINGS_gcc_shenandoahBarrierSetC1_riscv.cpp := misleading-indentation, \
174+
DISABLED_WARNINGS_gcc_shenandoahBarrierSetC1_x86.cpp := misleading-indentation, \
175+
DISABLED_WARNINGS_gcc_shenandoahBarrierSetC1.cpp := misleading-indentation, \
176+
DISABLED_WARNINGS_gcc_signals_posix.cpp := cast-function-type, \
177+
DISABLED_WARNINGS_gcc_templateTable.cpp := cast-function-type, \
159178
DISABLED_WARNINGS_clang := $(DISABLED_WARNINGS_clang), \
179+
DISABLED_WARNINGS_clang_arguments.cpp := missing-field-initializers, \
180+
DISABLED_WARNINGS_clang_codeBuffer.cpp := tautological-undefined-compare, \
181+
DISABLED_WARNINGS_clang_dict.cpp := char-subscripts, \
182+
DISABLED_WARNINGS_clang_directivesParser.cpp := missing-field-initializers, \
183+
DISABLED_WARNINGS_clang_g1ParScanThreadState.cpp := delete-abstract-non-virtual-dtor, \
184+
DISABLED_WARNINGS_clang_g1YoungGCPostEvacuateTasks.cpp := delete-abstract-non-virtual-dtor, \
185+
DISABLED_WARNINGS_clang_management.cpp := missing-field-initializers, \
186+
DISABLED_WARNINGS_clang_os_posix.cpp := mismatched-tags missing-field-initializers, \
187+
DISABLED_WARNINGS_clang_postaloc.cpp := tautological-undefined-compare, \
188+
DISABLED_WARNINGS_clang_vm_version_x86.cpp := missing-field-initializers, \
189+
DISABLED_WARNINGS_clang_zTracer.cpp := undefined-var-template, \
160190
DISABLED_WARNINGS_xlc := $(DISABLED_WARNINGS_xlc), \
161191
DISABLED_WARNINGS_microsoft := $(DISABLED_WARNINGS_microsoft), \
162192
ASFLAGS := $(JVM_ASFLAGS), \

make/hotspot/lib/JvmOverrideFiles.gmk

-4
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,6 @@ ifeq ($(TOOLCHAIN_TYPE), gcc)
3333
BUILD_LIBJVM_vmStructs.cpp_CXXFLAGS := -fno-var-tracking-assignments
3434
BUILD_LIBJVM_jvmciCompilerToVM.cpp_CXXFLAGS := -fno-var-tracking-assignments
3535
BUILD_LIBJVM_jvmciCompilerToVMInit.cpp_CXXFLAGS := -fno-var-tracking-assignments
36-
BUILD_LIBJVM_assembler_x86.cpp_CXXFLAGS := -Wno-maybe-uninitialized
37-
BUILD_LIBJVM_cardTableBarrierSetAssembler_x86.cpp_CXXFLAGS := -Wno-maybe-uninitialized
38-
BUILD_LIBJVM_interp_masm_x86.cpp_CXXFLAGS := -Wno-uninitialized
39-
BUILD_LIBJVM_ad_$(HOTSPOT_TARGET_CPU_ARCH).cpp_CXXFLAGS := -Wno-nonnull
4036
ifeq ($(DEBUG_LEVEL), release)
4137
# Need extra inlining to collapse shared marking code into the hot marking loop
4238
BUILD_LIBJVM_shenandoahMark.cpp_CXXFLAGS := --param inline-unit-growth=1000

0 commit comments

Comments
 (0)