powerpc: Fix compilation of emulate_step()
authorPaul Mackerras <paulus@samba.org>
Mon, 3 Nov 2014 04:46:43 +0000 (15:46 +1100)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 12 Nov 2014 04:54:29 +0000 (15:54 +1100)
Commit be96f63375a1 ("powerpc: Split out instruction analysis
part of emulate_step()") added some calls to do_fp_load()
and do_fp_store(), which fail to compile on configs with
CONFIG_PPC_FPU=n and CONFIG_PPC_EMULATE_SSTEP=y.  This fixes
the compile by adding #ifdef CONFIG_PPC_FPU around the code
that calls these functions.

Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/lib/sstep.c

index 54651fc..dc885b3 100644 (file)
@@ -1865,6 +1865,7 @@ int __kprobes emulate_step(struct pt_regs *regs, unsigned int instr)
                }
                goto ldst_done;
 
+#ifdef CONFIG_PPC_FPU
        case LOAD_FP:
                if (regs->msr & MSR_LE)
                        return 0;
@@ -1873,7 +1874,7 @@ int __kprobes emulate_step(struct pt_regs *regs, unsigned int instr)
                else
                        err = do_fp_load(op.reg, do_lfd, op.ea, size, regs);
                goto ldst_done;
-
+#endif
 #ifdef CONFIG_ALTIVEC
        case LOAD_VMX:
                if (regs->msr & MSR_LE)
@@ -1919,6 +1920,7 @@ int __kprobes emulate_step(struct pt_regs *regs, unsigned int instr)
                err = write_mem(op.val, op.ea, size, regs);
                goto ldst_done;
 
+#ifdef CONFIG_PPC_FPU
        case STORE_FP:
                if (regs->msr & MSR_LE)
                        return 0;
@@ -1927,7 +1929,7 @@ int __kprobes emulate_step(struct pt_regs *regs, unsigned int instr)
                else
                        err = do_fp_store(op.reg, do_stfd, op.ea, size, regs);
                goto ldst_done;
-
+#endif
 #ifdef CONFIG_ALTIVEC
        case STORE_VMX:
                if (regs->msr & MSR_LE)