On Thu, Oct 12, 2017 at 03:23:04PM -0700, Alexei Starovoitov wrote: > On Thu, Oct 12, 2017 at 01:45:57PM -0700, Abhijit Ayarekar wrote: > > Latest llvm update excludes assembly instructions. > > As a result __ASM_SYSREGS_H define is not required. > > -target switch includes appropriate target specific files. > > > > Tested on x86 and arm64 with llvm with git revision > > commit df6ca162269f9d756f8742bf4b658dcf690e3eb5 > > Author: Yonghong Song <y...@fb.com> > > Date: Thu Sep 28 02:46:11 2017 +0000 > > > > bpf: add new insns for bswap_to_le and negation > > > > Signed-off-by: Abhijit Ayarekar <abhijit.ayare...@caviumnetworks.com> > > --- > > samples/bpf/Makefile | 5 +++-- > > 1 file changed, 3 insertions(+), 2 deletions(-) > > > > diff --git a/samples/bpf/Makefile b/samples/bpf/Makefile > > index ebc2ad6..81f9fcd 100644 > > --- a/samples/bpf/Makefile > > +++ b/samples/bpf/Makefile > > @@ -180,6 +180,7 @@ CLANG ?= clang > > # Detect that we're cross compiling and use the cross compiler > > ifdef CROSS_COMPILE > > HOSTCC = $(CROSS_COMPILE)gcc > > +CLANG_ARCH_ARGS = -target $(ARCH) > > this is only need because you're crosscompiling, right? Yes
> In native compilation it's unnecessary flag. > Only droping -D__ASM_SYSREG_H is enough, correct? > Yes. That is correct. > > endif > > > > # Trick to allow make to be run from this directory > > @@ -229,9 +230,9 @@ $(obj)/tracex5_kern.o: $(obj)/syscall_nrs.h > > $(obj)/%.o: $(src)/%.c > > $(CLANG) $(NOSTDINC_FLAGS) $(LINUXINCLUDE) $(EXTRA_CFLAGS) -I$(obj) \ > > -I$(srctree)/tools/testing/selftests/bpf/ \ > > - -D__KERNEL__ -D__ASM_SYSREG_H -Wno-unused-value > > -Wno-pointer-sign \ > > + -D__KERNEL__ -Wno-unused-value -Wno-pointer-sign \ > > -D__TARGET_ARCH_$(ARCH) -Wno-compare-distinct-pointer-types \ > > -Wno-gnu-variable-sized-type-not-at-end \ > > -Wno-address-of-packed-member -Wno-tautological-compare \ > > - -Wno-unknown-warning-option \ > > + -Wno-unknown-warning-option $(CLANG_ARCH_ARGS) \ > > -O2 -emit-llvm -c $< -o -| $(LLC) -march=bpf -filetype=obj -o $@ > > -- > > 2.7.4 > >