diff options
author | Mircea Gherzan <mgherzan@gmail.com> | 2012-06-11 23:52:25 +0100 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-06-14 15:12:13 +0100 |
commit | 2bea29b774ccb4bf32c7b299c677fccc5a1d8443 (patch) | |
tree | e4a5d721352ba8c34bb93497df98ece573125317 /arch/arm/net/bpf_jit_32.c | |
parent | 2307574a50dcb0f9c13e541ca3a196f7554af977 (diff) | |
download | op-kernel-dev-2bea29b774ccb4bf32c7b299c677fccc5a1d8443.zip op-kernel-dev-2bea29b774ccb4bf32c7b299c677fccc5a1d8443.tar.gz |
ARM: 7421/1: bpf_jit: BPF_S_ANC_ALU_XOR_X support
JIT support for the XOR operation introduced by the commit
ffe06c17afbb.
Signed-off-by: Mircea Gherzan <mgherzan@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/net/bpf_jit_32.c')
-rw-r--r-- | arch/arm/net/bpf_jit_32.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/arm/net/bpf_jit_32.c b/arch/arm/net/bpf_jit_32.c index 62135849..c641fb6 100644 --- a/arch/arm/net/bpf_jit_32.c +++ b/arch/arm/net/bpf_jit_32.c @@ -762,6 +762,11 @@ b_epilogue: update_on_xread(ctx); emit(ARM_MOV_R(r_A, r_X), ctx); break; + case BPF_S_ANC_ALU_XOR_X: + /* A ^= X */ + update_on_xread(ctx); + emit(ARM_EOR_R(r_A, r_A, r_X), ctx); + break; case BPF_S_ANC_PROTOCOL: /* A = ntohs(skb->protocol) */ ctx->seen |= SEEN_SKB; |