summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2014-06-03 13:05:55 +0200
committerRalf Baechle <ralf@linux-mips.org>2014-06-04 22:50:40 +0200
commitb4f16c938eed87aac733972e735c5bea700948aa (patch)
treef787494fd666909c5a748679f4d1e2fa18a1022d /arch
parent5e888e8fb55cf3da870b85d04fef6bfe0d57c974 (diff)
downloadlinux-b4f16c938eed87aac733972e735c5bea700948aa.tar.gz
linux-b4f16c938eed87aac733972e735c5bea700948aa.tar.bz2
linux-b4f16c938eed87aac733972e735c5bea700948aa.zip
MIPS: BFP: Simplify code slightly.
This keeps the if condition slightly simpler - it's going to become ore complication. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/mips/net/bpf_jit.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/arch/mips/net/bpf_jit.c b/arch/mips/net/bpf_jit.c
index 98e9d2395598..a67b9753330b 100644
--- a/arch/mips/net/bpf_jit.c
+++ b/arch/mips/net/bpf_jit.c
@@ -1240,7 +1240,10 @@ jmp_cmp:
emit_half_load(r_A, r_skb, off, ctx);
#ifdef CONFIG_CPU_LITTLE_ENDIAN
/* This needs little endian fixup */
- if (!cpu_has_mips_r2) {
+ if (cpu_has_mips_r2) {
+ /* R2 and later have the wsbh instruction */
+ emit_wsbh(r_A, r_A, ctx);
+ } else {
/* Get first byte */
emit_andi(r_tmp_imm, r_A, 0xff, ctx);
/* Shift it */
@@ -1250,9 +1253,6 @@ jmp_cmp:
emit_andi(r_tmp_imm, r_tmp_imm, 0xff, ctx);
/* Put everyting together in r_A */
emit_or(r_A, r_tmp, r_tmp_imm, ctx);
- } else {
- /* R2 and later have the wsbh instruction */
- emit_wsbh(r_A, r_A, ctx);
}
#endif
break;