From 98c76446ea6bc1223c314500d3e11178e4911018 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Fri, 18 May 2012 00:30:47 +0000 Subject: [PATCH] * ppc-opc.c (extract_sprg): Use ALLOW8_SPRG to include VLE. --- opcodes/ChangeLog | 4 ++++ opcodes/ppc-opc.c | 7 +++---- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 4d1b6c9c15..05b792a22a 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,7 @@ +2012-05-17 James Lemke + + * ppc-opc.c (extract_sprg): Use ALLOW8_SPRG to include VLE. + 2012-05-17 Daniel Richard G. Nick Clifton diff --git a/opcodes/ppc-opc.c b/opcodes/ppc-opc.c index f92979cdb3..74fba6867b 100644 --- a/opcodes/ppc-opc.c +++ b/opcodes/ppc-opc.c @@ -1825,8 +1825,7 @@ insert_sprg (unsigned long insn, const char **errmsg) { if (value > 7 - || (value > 3 - && (dialect & ALLOW8_SPRG) == 0)) + || (value > 3 && (dialect & ALLOW8_SPRG) == 0)) *errmsg = _("invalid sprg number"); /* If this is mfsprg4..7 then use spr 260..263 which can be read in @@ -1845,8 +1844,8 @@ extract_sprg (unsigned long insn, unsigned long val = (insn >> 16) & 0x1f; /* mfsprg can use 260..263 and 272..279. mtsprg only uses spr 272..279 - If not BOOKE or 405, then both use only 272..275. */ - if ((val - 0x10 > 3 && (dialect & (PPC_OPCODE_BOOKE | PPC_OPCODE_405)) == 0) + If not BOOKE, 405 or VLE, then both use only 272..275. */ + if ((val - 0x10 > 3 && (dialect & ALLOW8_SPRG) == 0) || (val - 0x10 > 7 && (insn & 0x100) != 0) || val <= 3 || (val & 8) != 0) -- 2.34.1