diff options
author | David S. Miller <davem@davemloft.net> | 2009-01-08 16:52:36 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-01-08 16:52:36 -0800 |
commit | b41418f48c389bad4cd87156792b4a4f24a70729 (patch) | |
tree | a0ca2edfba42334259ba9202b8e2587fd54f538e | |
parent | a638f25ab04bcb8fd3012b0d4a2fe7dab329f82c (diff) | |
download | lwn-b41418f48c389bad4cd87156792b4a4f24a70729.tar.gz lwn-b41418f48c389bad4cd87156792b4a4f24a70729.zip |
sparc: Most unaligned_64.c tweaks for branch tracer warnings.
arch/sparc/kernel/unaligned_64.c: In function 'handle_lddfmna':
arch/sparc/kernel/unaligned_64.c:592: warning: 'second' may be used uninitialized in this function
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | arch/sparc/kernel/unaligned_64.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/arch/sparc/kernel/unaligned_64.c b/arch/sparc/kernel/unaligned_64.c index f164d5a850f9..379209982a07 100644 --- a/arch/sparc/kernel/unaligned_64.c +++ b/arch/sparc/kernel/unaligned_64.c @@ -589,7 +589,6 @@ void handle_lddfmna(struct pt_regs *regs, unsigned long sfar, unsigned long sfsr unsigned long pc = regs->tpc; unsigned long tstate = regs->tstate; u32 insn; - u32 first, second; u64 value; u8 freg; int flag; @@ -601,19 +600,20 @@ void handle_lddfmna(struct pt_regs *regs, unsigned long sfar, unsigned long sfsr pc = (u32)pc; if (get_user(insn, (u32 __user *) pc) != -EFAULT) { int asi = decode_asi(insn, regs); + u32 first, second; int err; if ((asi > ASI_SNFL) || (asi < ASI_P)) goto daex; + first = second = 0; err = get_user(first, (u32 __user *)sfar); if (!err) err = get_user(second, (u32 __user *)(sfar + 4)); if (err) { - if (asi & 0x2) /* NF */ { - first = 0; second = 0; - } else + if (!(asi & 0x2)) goto daex; + first = second = 0; } save_and_clear_fpu(); freg = ((insn >> 25) & 0x1e) | ((insn >> 20) & 0x20); |