@@ -54,21 +54,6 @@ PCAP_LIBS := $(shell $(PKG_CONFIG) --libs libpcap 2>/dev/null)
54
54
LDLIBS += $(PCAP_LIBS )
55
55
CFLAGS += $(PCAP_CFLAGS )
56
56
57
- # The following tests perform type punning and they may break strict
58
- # aliasing rules, which are exploited by both GCC and clang by default
59
- # while optimizing. This can lead to broken programs.
60
- progs/bind4_prog.c-CFLAGS := -fno-strict-aliasing
61
- progs/bind6_prog.c-CFLAGS := -fno-strict-aliasing
62
- progs/dynptr_fail.c-CFLAGS := -fno-strict-aliasing
63
- progs/linked_list_fail.c-CFLAGS := -fno-strict-aliasing
64
- progs/map_kptr_fail.c-CFLAGS := -fno-strict-aliasing
65
- progs/syscall.c-CFLAGS := -fno-strict-aliasing
66
- progs/test_pkt_md_access.c-CFLAGS := -fno-strict-aliasing
67
- progs/test_sk_lookup.c-CFLAGS := -fno-strict-aliasing
68
- progs/timer_crash.c-CFLAGS := -fno-strict-aliasing
69
- progs/test_global_func9.c-CFLAGS := -fno-strict-aliasing
70
- progs/verifier_nocsr.c-CFLAGS := -fno-strict-aliasing
71
-
72
57
# Some utility functions use LLVM libraries
73
58
jit_disasm_helpers.c-CFLAGS = $(LLVM_CFLAGS )
74
59
@@ -103,18 +88,6 @@ progs/btf_dump_test_case_packing.c-bpf_gcc-CFLAGS := -Wno-error
103
88
progs/btf_dump_test_case_padding.c-bpf_gcc-CFLAGS := -Wno-error
104
89
progs/btf_dump_test_case_syntax.c-bpf_gcc-CFLAGS := -Wno-error
105
90
106
- # The following tests do type-punning, via the __imm_insn macro, from
107
- # `struct bpf_insn' to long and then uses the value. This triggers an
108
- # "is used uninitialized" warning in GCC due to strict-aliasing
109
- # rules.
110
- progs/verifier_ref_tracking.c-bpf_gcc-CFLAGS := -fno-strict-aliasing
111
- progs/verifier_unpriv.c-bpf_gcc-CFLAGS := -fno-strict-aliasing
112
- progs/verifier_cgroup_storage.c-bpf_gcc-CFLAGS := -fno-strict-aliasing
113
- progs/verifier_ld_ind.c-bpf_gcc-CFLAGS := -fno-strict-aliasing
114
- progs/verifier_map_ret_val.c-bpf_gcc-CFLAGS := -fno-strict-aliasing
115
- progs/verifier_spill_fill.c-bpf_gcc-CFLAGS := -fno-strict-aliasing
116
- progs/verifier_subprog_precision.c-bpf_gcc-CFLAGS := -fno-strict-aliasing
117
- progs/verifier_uninit.c-bpf_gcc-CFLAGS := -fno-strict-aliasing
118
91
endif
119
92
120
93
ifneq ($(CLANG_CPUV4 ) ,)
@@ -474,6 +447,7 @@ CLANG_SYS_INCLUDES = $(call get_sys_includes,$(CLANG),$(CLANG_TARGET_ARCH))
474
447
BPF_CFLAGS = -g -Wall -Werror -D__TARGET_ARCH_$(SRCARCH ) $(MENDIAN ) \
475
448
-I$(INCLUDE_DIR ) -I$(CURDIR ) -I$(APIDIR ) \
476
449
-I$(abspath $(OUTPUT ) /../usr/include) \
450
+ -fno-strict-aliasing \
477
451
-Wno-compare-distinct-pointer-types
478
452
# TODO: enable me -Wsign-compare
479
453
0 commit comments