diff options
Diffstat (limited to 'arch/arm/net/bpf_jit_32.c')
-rw-r--r-- | arch/arm/net/bpf_jit_32.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/arm/net/bpf_jit_32.c b/arch/arm/net/bpf_jit_32.c index 99b44e0e8d86..9ed155ad0f97 100644 --- a/arch/arm/net/bpf_jit_32.c +++ b/arch/arm/net/bpf_jit_32.c | |||
@@ -19,6 +19,7 @@ | |||
19 | #include <linux/if_vlan.h> | 19 | #include <linux/if_vlan.h> |
20 | #include <asm/cacheflush.h> | 20 | #include <asm/cacheflush.h> |
21 | #include <asm/hwcap.h> | 21 | #include <asm/hwcap.h> |
22 | #include <asm/opcodes.h> | ||
22 | 23 | ||
23 | #include "bpf_jit_32.h" | 24 | #include "bpf_jit_32.h" |
24 | 25 | ||
@@ -113,8 +114,11 @@ static u32 jit_udiv(u32 dividend, u32 divisor) | |||
113 | 114 | ||
114 | static inline void _emit(int cond, u32 inst, struct jit_ctx *ctx) | 115 | static inline void _emit(int cond, u32 inst, struct jit_ctx *ctx) |
115 | { | 116 | { |
117 | inst |= (cond << 28); | ||
118 | inst = __opcode_to_mem_arm(inst); | ||
119 | |||
116 | if (ctx->target != NULL) | 120 | if (ctx->target != NULL) |
117 | ctx->target[ctx->idx] = inst | (cond << 28); | 121 | ctx->target[ctx->idx] = inst; |
118 | 122 | ||
119 | ctx->idx++; | 123 | ctx->idx++; |
120 | } | 124 | } |