aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/net/bpf_jit_32.h
diff options
context:
space:
mode:
authorJiong Wang <jiong.wang@netronome.com>2019-01-26 12:26:09 -0500
committerAlexei Starovoitov <ast@kernel.org>2019-01-26 13:33:02 -0800
commitb85062ac0df33a6a1dcaccd07fe7b1ca55194b25 (patch)
treedcc6981c22dd5c9e6950021761c807104320c5a6 /arch/arm/net/bpf_jit_32.h
parentarm64: bpf: implement jitting of JMP32 (diff)
downloadlinux-dev-b85062ac0df33a6a1dcaccd07fe7b1ca55194b25.tar.xz
linux-dev-b85062ac0df33a6a1dcaccd07fe7b1ca55194b25.zip
arm: bpf: implement jitting of JMP32
This patch implements code-gen for new JMP32 instructions on arm. For JSET, "ands" (AND with flags updated) is used, so corresponding encoding helper is added. Cc: Shubham Bansal <illusionist.neo@gmail.com> Signed-off-by: Jiong Wang <jiong.wang@netronome.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Diffstat (limited to '')
-rw-r--r--arch/arm/net/bpf_jit_32.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm/net/bpf_jit_32.h b/arch/arm/net/bpf_jit_32.h
index f4e58bcdaa43..13a05f759552 100644
--- a/arch/arm/net/bpf_jit_32.h
+++ b/arch/arm/net/bpf_jit_32.h
@@ -62,6 +62,7 @@
#define ARM_INST_ADDS_I 0x02900000
#define ARM_INST_AND_R 0x00000000
+#define ARM_INST_ANDS_R 0x00100000
#define ARM_INST_AND_I 0x02000000
#define ARM_INST_BIC_R 0x01c00000
@@ -172,6 +173,7 @@
#define ARM_ADC_I(rd, rn, imm) _AL3_I(ARM_INST_ADC, rd, rn, imm)
#define ARM_AND_R(rd, rn, rm) _AL3_R(ARM_INST_AND, rd, rn, rm)
+#define ARM_ANDS_R(rd, rn, rm) _AL3_R(ARM_INST_ANDS, rd, rn, rm)
#define ARM_AND_I(rd, rn, imm) _AL3_I(ARM_INST_AND, rd, rn, imm)
#define ARM_BIC_R(rd, rn, rm) _AL3_R(ARM_INST_BIC, rd, rn, rm)