aboutsummaryrefslogtreecommitdiff
path: root/opcodes/v850-opc.c
diff options
context:
space:
mode:
Diffstat (limited to 'opcodes/v850-opc.c')
-rw-r--r--opcodes/v850-opc.c77
1 files changed, 34 insertions, 43 deletions
diff --git a/opcodes/v850-opc.c b/opcodes/v850-opc.c
index b77a280..43ce2f1 100644
--- a/opcodes/v850-opc.c
+++ b/opcodes/v850-opc.c
@@ -34,42 +34,28 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* two-word opcodes */
#define two(x,y) ((unsigned int) (x) | ((unsigned int) (y) << 16))
-static long unsigned int insert_d9
- PARAMS ((long unsigned int, long int, const char **));
-static long unsigned int extract_d9
- PARAMS ((long unsigned int, int *));
-static long unsigned int insert_d22
- PARAMS ((long unsigned int, long int, const char **));
-static long unsigned int extract_d22
- PARAMS ((long unsigned int, int *));
-static long unsigned int insert_d16_15
- PARAMS ((long unsigned int, long int, const char **));
-static long unsigned int extract_d16_15
- PARAMS ((long unsigned int, int *));
-static long unsigned int insert_d8_7
- PARAMS ((long unsigned int, long int, const char **));
-static long unsigned int extract_d8_7 PARAMS ((long unsigned int, int *));
-static long unsigned int insert_d8_6
- PARAMS ((long unsigned int, long int, const char **));
-static long unsigned int extract_d8_6 PARAMS ((long unsigned int, int *));
-static long unsigned int insert_d5_4
- PARAMS ((long unsigned int, long int, const char **));
-static long unsigned int extract_d5_4 PARAMS ((long unsigned int, int *));
-static long unsigned int insert_d16_16
- PARAMS ((long unsigned int, long int, const char **));
-static long unsigned int extract_d16_16 PARAMS ((long unsigned int, int *));
-static long unsigned int insert_i9
- PARAMS ((long unsigned int, long int, const char **));
-static long unsigned int extract_i9 PARAMS ((long unsigned int, int *));
-static long unsigned int insert_u9
- PARAMS ((long unsigned int, long unsigned int, const char **));
-static long unsigned int extract_u9 PARAMS ((long unsigned int, int *));
-static long unsigned int insert_spe
- PARAMS ((long unsigned int, long unsigned int, const char **));
-static long unsigned int extract_spe PARAMS ((long unsigned int, int *));
-static long unsigned int insert_i5div
- PARAMS ((long unsigned int, long unsigned int, const char **));
-static long unsigned int extract_i5div PARAMS ((long unsigned int, int *));
+static long unsigned insert_d9 PARAMS ((long unsigned, long, const char **));
+static long unsigned extract_d9 PARAMS ((long unsigned, int *));
+static long unsigned insert_d22 PARAMS ((long unsigned, long, const char **));
+static long unsigned extract_d22 PARAMS ((long unsigned, int *));
+static long unsigned insert_d16_15 PARAMS ((long unsigned, long, const char **));
+static long unsigned extract_d16_15 PARAMS ((long unsigned, int *));
+static long unsigned insert_d8_7 PARAMS ((long unsigned, long, const char **));
+static long unsigned extract_d8_7 PARAMS ((long unsigned, int *));
+static long unsigned insert_d8_6 PARAMS ((long unsigned, long, const char **));
+static long unsigned extract_d8_6 PARAMS ((long unsigned, int *));
+static long unsigned insert_d5_4 PARAMS ((long unsigned, long, const char **));
+static long unsigned extract_d5_4 PARAMS ((long unsigned, int *));
+static long unsigned insert_d16_16 PARAMS ((long unsigned, long, const char **));
+static long unsigned extract_d16_16 PARAMS ((long unsigned, int *));
+static long unsigned insert_i9 PARAMS ((long unsigned, long, const char **));
+static long unsigned extract_i9 PARAMS ((long unsigned, int *));
+static long unsigned insert_u9 PARAMS ((long unsigned, long, const char **));
+static long unsigned extract_u9 PARAMS ((long unsigned, int *));
+static long unsigned insert_spe PARAMS ((long unsigned, long, const char **));
+static long unsigned extract_spe PARAMS ((long unsigned, int *));
+static long unsigned insert_i5div PARAMS ((long unsigned, long, const char **));
+static long unsigned extract_i5div PARAMS ((long unsigned, int *));
/* The functions used to insert and extract complicated operands. */
@@ -322,11 +308,12 @@ extract_i9 (insn, invalid)
}
static unsigned long
-insert_u9 (insn, value, errmsg)
+insert_u9 (insn, v, errmsg)
unsigned long insn;
- unsigned long value;
+ long v;
const char ** errmsg;
{
+ unsigned long value = (unsigned long) v;
if (value > 0x1ff)
* errmsg = _(immediate_out_of_range);
@@ -348,11 +335,13 @@ extract_u9 (insn, invalid)
}
static unsigned long
-insert_spe (insn, value, errmsg)
+insert_spe (insn, v, errmsg)
unsigned long insn;
- unsigned long value;
+ long v;
const char ** errmsg;
{
+ unsigned long value = (unsigned long) v;
+
if (value != 3)
* errmsg = _("invalid register for stack adjustment");
@@ -368,11 +357,13 @@ extract_spe (insn, invalid)
}
static unsigned long
-insert_i5div (insn, value, errmsg)
+insert_i5div (insn, v, errmsg)
unsigned long insn;
- unsigned long value;
+ long v;
const char ** errmsg;
{
+ unsigned long value = (unsigned long) v;
+
if (value > 0x1ff)
{
if (value & 1)
@@ -405,7 +396,7 @@ extract_i5div (insn, invalid)
/* Warning: code in gas/config/tc-v850.c examines the contents of this array.
If you change any of the values here, be sure to look for side effects in
- that code. */
+ that code. */
const struct v850_operand v850_operands[] =
{
#define UNUSED 0