diff options
author | Jordan Niethe <jniethe5@gmail.com> | 2020-05-06 13:40:28 +1000 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2020-05-19 00:10:37 +1000 |
commit | 8094892d1aff14269d3b7bfcd8b941217eecd81f (patch) | |
tree | fe2937db7a5e26b5bc496ca3f6d94794e644f23d /arch/powerpc/kernel/vecemu.c | |
parent | 777e26f0edf8dab58b8dd474d35d83bde0ac6d76 (diff) | |
download | lwn-8094892d1aff14269d3b7bfcd8b941217eecd81f.tar.gz lwn-8094892d1aff14269d3b7bfcd8b941217eecd81f.zip |
powerpc: Use a function for getting the instruction op code
In preparation for using a data type for instructions that can not be
directly used with the '>>' operator use a function for getting the op
code of an instruction.
Signed-off-by: Jordan Niethe <jniethe5@gmail.com>
Reviewed-by: Alistair Popple <alistair@popple.id.au>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20200506034050.24806-9-jniethe5@gmail.com
Diffstat (limited to 'arch/powerpc/kernel/vecemu.c')
-rw-r--r-- | arch/powerpc/kernel/vecemu.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/powerpc/kernel/vecemu.c b/arch/powerpc/kernel/vecemu.c index 1f5e3b4c8ae4..a544590b90e5 100644 --- a/arch/powerpc/kernel/vecemu.c +++ b/arch/powerpc/kernel/vecemu.c @@ -10,6 +10,7 @@ #include <asm/processor.h> #include <asm/switch_to.h> #include <linux/uaccess.h> +#include <asm/inst.h> /* Functions in vector.S */ extern void vaddfp(vector128 *dst, vector128 *a, vector128 *b); @@ -268,7 +269,7 @@ int emulate_altivec(struct pt_regs *regs) return -EFAULT; word = ppc_inst_val(instr); - if ((word >> 26) != 4) + if (ppc_inst_primary_opcode(instr) != 4) return -EINVAL; /* not an altivec instruction */ vd = (word >> 21) & 0x1f; va = (word >> 16) & 0x1f; |