Blackfin: kgdb: pass up the CC register instead of a 0 stub
authorMike Frysinger <vapier@gentoo.org>
Mon, 12 Apr 2010 05:53:35 +0000 (05:53 +0000)
committerMike Frysinger <vapier@gentoo.org>
Sat, 22 May 2010 18:19:07 +0000 (14:19 -0400)
While the CC pseudo register can be deduced from the ASTAT register, make
sure we set its value correctly instead of always stubbing it out as 0.
GDB itself looks at this pseudo register instead of ASTAT, so we have to
supply the right value.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
arch/blackfin/kernel/kgdb.c

index 2c501ce..ad1c053 100644 (file)
@@ -66,7 +66,7 @@ void pt_regs_to_gdb_regs(unsigned long *gdb_regs, struct pt_regs *regs)
        gdb_regs[BFIN_RETN] = regs->retn;
        gdb_regs[BFIN_RETE] = regs->rete;
        gdb_regs[BFIN_PC] = regs->pc;
-       gdb_regs[BFIN_CC] = 0;
+       gdb_regs[BFIN_CC] = (regs->astat >> 5) & 1;
        gdb_regs[BFIN_EXTRA1] = 0;
        gdb_regs[BFIN_EXTRA2] = 0;
        gdb_regs[BFIN_EXTRA3] = 0;