bpf: add -mcpu=v3 to support 32-bit alu ops
authorFelix Fietkau <nbd@nbd.name>
Mon, 20 Dec 2021 23:28:54 +0000 (00:28 +0100)
committerFelix Fietkau <nbd@nbd.name>
Tue, 21 Dec 2021 10:29:15 +0000 (11:29 +0100)
Fixes JIT on 32-bit ARM and improves performance

Signed-off-by: Felix Fietkau <nbd@nbd.name>
include/bpf.mk

index 411763c4a20f3860f93b98ca67537b1b17a150f5..ce30e244345b961e22224bd052aa5e32f006d277 100644 (file)
@@ -76,7 +76,7 @@ define CompileBPF
                -c $(1) -o $(patsubst %.c,%.bc,$(1))
        $(LLVM_OPT) -O2 -mtriple=$(BPF_TARGET) < $(patsubst %.c,%.bc,$(1)) > $(patsubst %.c,%.opt,$(1))
        $(LLVM_DIS) < $(patsubst %.c,%.opt,$(1)) > $(patsubst %.c,%.S,$(1))
-       $(LLVM_LLC) -march=$(BPF_TARGET) -filetype=obj -o $(patsubst %.c,%.o,$(1)) < $(patsubst %.c,%.S,$(1))
+       $(LLVM_LLC) -march=$(BPF_TARGET) -mcpu=v3 -filetype=obj -o $(patsubst %.c,%.o,$(1)) < $(patsubst %.c,%.S,$(1))
        $(CP) $(patsubst %.c,%.o,$(1)) $(patsubst %.c,%.debug.o,$(1))
        $(LLVM_STRIP) --strip-debug $(patsubst %.c,%.o,$(1))
 endef