projects
/
deliverable
/
binutils-gdb.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Remove i386_elf_emit_arch_note
[deliverable/binutils-gdb.git]
/
sim
/
sh
/
gencode.c
diff --git
a/sim/sh/gencode.c
b/sim/sh/gencode.c
index bc6560460d4190c10538d1b97e77409b3233f96e..aa26e6ca1f9c4818bb9f5103efc793a5be6084ea 100644
(file)
--- a/
sim/sh/gencode.c
+++ b/
sim/sh/gencode.c
@@
-30,22
+30,26
@@
*/
*/
+#include <ctype.h>
#include <stdio.h>
#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
#define MAX_NR_STUFF 42
typedef struct
{
#define MAX_NR_STUFF 42
typedef struct
{
- char *defs;
- char *refs;
- char *name;
- char *code;
- c
har *
stuff[MAX_NR_STUFF];
+ c
onst c
har *defs;
+ c
onst c
har *refs;
+ c
onst c
har *name;
+ c
onst c
har *code;
+ c
onst char * const
stuff[MAX_NR_STUFF];
int index;
} op;
int index;
} op;
-op tab[] =
+
static
op tab[] =
{
{ "n", "", "add #<imm>,<REG_N>", "0111nnnni8*1....",
{
{ "n", "", "add #<imm>,<REG_N>", "0111nnnni8*1....",
@@
-2462,7
+2466,8
@@
op ppi_tab[] =
};
/* Tables of things to put into enums for sh-opc.h */
};
/* Tables of things to put into enums for sh-opc.h */
-static char *nibble_type_list[] =
+static
+const char * const nibble_type_list[] =
{
"HEX_0",
"HEX_1",
{
"HEX_0",
"HEX_1",
@@
-2497,7
+2502,7
@@
static char *nibble_type_list[] =
0
};
static
0
};
static
-c
har *
arg_type_list[] =
+c
onst char * const
arg_type_list[] =
{
"A_END",
"A_BDISP12",
{
"A_END",
"A_BDISP12",
@@
-2530,27
+2535,11
@@
char *arg_type_list[] =
0,
};
0,
};
-static void
-make_enum_list (name, s)
- char *name;
- char **s;
-{
- int i = 1;
- printf ("typedef enum {\n");
- while (*s)
- {
- printf ("\t%s,\n", *s);
- s++;
- i++;
- }
- printf ("} %s;\n", name);
-}
-
static int
static int
-qfunc (a, b)
- op *a;
- op *b;
+qfunc (const void *va, const void *vb)
{
{
+ const op *a = va;
+ const op *b = vb;
char bufa[9];
char bufb[9];
int diff;
char bufa[9];
char bufb[9];
int diff;
@@
-2569,7
+2558,7
@@
qfunc (a, b)
}
static void
}
static void
-sorttab ()
+sorttab (
void
)
{
op *p = tab;
int len = 0;
{
op *p = tab;
int len = 0;
@@
-2583,7
+2572,7
@@
sorttab ()
}
static void
}
static void
-gengastab ()
+gengastab (
void
)
{
op *p;
sorttab ();
{
op *p;
sorttab ();
@@
-2598,9
+2587,7
@@
static unsigned short table[1 << 16];
static int warn_conflicts = 0;
static void
static int warn_conflicts = 0;
static void
-conflict_warn (val, i)
- int val;
- int i;
+conflict_warn (int val, int i)
{
int ix, key;
int j = table[val];
{
int ix, key;
int j = table[val];
@@
-2651,10
+2638,7
@@
conflict_warn (val, i)
right entries in 'table' with the opcode index. */
static void
right entries in 'table' with the opcode index. */
static void
-expand_opcode (val, i, s)
- int val;
- int i;
- char *s;
+expand_opcode (int val, int i, const char *s)
{
if (*s == 0)
{
{
if (*s == 0)
{
@@
-2779,10
+2763,7
@@
expand_opcode (val, i, s)
statement entry. */
static void
statement entry. */
static void
-dumptable (name, size, start)
- char *name;
- int size;
- int start;
+dumptable (const char *name, int size, int start)
{
int lump = 256;
int online = 16;
{
int lump = 256;
int online = 16;
@@
-2817,8
+2798,7
@@
dumptable (name, size, start)
static void
static void
-filltable (p)
- op *p;
+filltable (op *p)
{
static int index = 1;
{
static int index = 1;
@@
-2835,7
+2815,7
@@
filltable (p)
processing insns (ppi) for code 0xf800 (ppi nopx nopy). Copy the
latter tag to represent all combinations of ppi with ddt. */
static void
processing insns (ppi) for code 0xf800 (ppi nopx nopy). Copy the
latter tag to represent all combinations of ppi with ddt. */
static void
-expand_ppi_movxy ()
+expand_ppi_movxy (
void
)
{
int i;
{
int i;
@@
-2845,8
+2825,7
@@
expand_ppi_movxy ()
}
static void
}
static void
-gensim_caselist (p)
- op *p;
+gensim_caselist (op *p)
{
for (; p->name; p++)
{
{
for (; p->name; p++)
{
@@
-2854,8
+2833,7
@@
gensim_caselist (p)
int sextbit = -1;
int needm = 0;
int needn = 0;
int sextbit = -1;
int needm = 0;
int needn = 0;
-
- char *s = p->code;
+ const char *s = p->code;
printf (" /* %s %s */\n", p->name, p->code);
printf (" case %d: \n", p->index);
printf (" /* %s %s */\n", p->name, p->code);
printf (" case %d: \n", p->index);
@@
-3038,7
+3016,7
@@
gensim_caselist (p)
{
/* Do the refs. */
{
/* Do the refs. */
- char *r;
+ c
onst c
har *r;
for (r = p->refs; *r; r++)
{
if (*r == 'f') printf (" CREF (15);\n");
for (r = p->refs; *r; r++)
{
if (*r == 'f') printf (" CREF (15);\n");
@@
-3080,7
+3058,7
@@
gensim_caselist (p)
{
/* Do the defs. */
{
/* Do the defs. */
- char *r;
+ c
onst c
har *r;
for (r = p->defs; *r; r++)
{
if (*r == 'f') printf (" CDEF (15);\n");
for (r = p->defs; *r; r++)
{
if (*r == 'f') printf (" CDEF (15);\n");
@@
-3114,7
+3092,7
@@
gensim_caselist (p)
}
static void
}
static void
-gensim ()
+gensim (
void
)
{
printf ("{\n");
printf ("/* REG_xy = [r4, r5, r0, r1]. */\n");
{
printf ("{\n");
printf ("/* REG_xy = [r4, r5, r0, r1]. */\n");
@@
-3143,19
+3121,17
@@
gensim ()
}
static void
}
static void
-gendefines ()
+gendefines (
void
)
{
op *p;
filltable (tab);
for (p = tab; p->name; p++)
{
{
op *p;
filltable (tab);
for (p = tab; p->name; p++)
{
- char *s = p->name;
+ c
onst c
har *s = p->name;
printf ("#define OPC_");
while (*s) {
printf ("#define OPC_");
while (*s) {
- if (isupper (*s))
- *s = tolower (*s);
if (isalpha (*s))
if (isalpha (*s))
- printf ("%c",
*s
);
+ printf ("%c",
tolower (*s)
);
if (*s == ' ')
printf ("_");
if (*s == '@')
if (*s == ' ')
printf ("_");
if (*s == '@')
@@
-3175,10
+3151,7
@@
static int ppi_index;
NOTE: tail recursion optimization removed for simplicity. */
static void
NOTE: tail recursion optimization removed for simplicity. */
static void
-expand_ppi_code (val, i, s)
- int val;
- int i;
- char *s;
+expand_ppi_code (int val, int i, const char *s)
{
int j;
{
int j;
@@
-3223,7
+3196,7
@@
expand_ppi_code (val, i, s)
}
static void
}
static void
-ppi_filltable ()
+ppi_filltable (
void
)
{
op *p;
ppi_index = 1;
{
op *p;
ppi_index = 1;
@@
-3236,7
+3209,7
@@
ppi_filltable ()
}
static void
}
static void
-ppi_gensim ()
+ppi_gensim (
void
)
{
op *p = ppi_tab;
{
op *p = ppi_tab;
@@
-3267,8
+3240,7
@@
ppi_gensim ()
printf (" (greater_equal = ~(overflow << 3 & res_grd) & DSR_MASK_G)\n");
printf ("\n");
printf ("static void\n");
printf (" (greater_equal = ~(overflow << 3 & res_grd) & DSR_MASK_G)\n");
printf ("\n");
printf ("static void\n");
- printf ("ppi_insn (iword)\n");
- printf (" int iword;\n");
+ printf ("ppi_insn (int iword)\n");
printf ("{\n");
printf (" /* 'ee' = [x0, x1, y0, a1] */\n");
printf (" static char e_tab[] = { 8, 9, 10, 5};\n");
printf ("{\n");
printf (" /* 'ee' = [x0, x1, y0, a1] */\n");
printf (" static char e_tab[] = { 8, 9, 10, 5};\n");
@@
-3294,8
+3266,7
@@
ppi_gensim ()
int shift, j;
int cond = 0;
int havedecl = 0;
int shift, j;
int cond = 0;
int havedecl = 0;
-
- char *s = p->code;
+ const char *s = p->code;
printf (" /* %s %s */\n", p->name, p->code);
printf (" case %d: \n", p->index);
printf (" /* %s %s */\n", p->name, p->code);
printf (" case %d: \n", p->index);
@@
-3387,11
+3358,11
@@
ppi_gensim ()
printf (" DSR |= res_grd >> 7 & 1;\n");
printf (" case 2: /* Zero Value Mode */\n");
printf (" DSR |= DSR >> 6 & 1;\n");
printf (" DSR |= res_grd >> 7 & 1;\n");
printf (" case 2: /* Zero Value Mode */\n");
printf (" DSR |= DSR >> 6 & 1;\n");
- printf (" case 3: /* Overflow mode\n");
+ printf (" case 3: /* Overflow mode
*/
\n");
printf (" DSR |= overflow >> 4;\n");
printf (" case 4: /* Signed Greater Than Mode */\n");
printf (" DSR |= DSR >> 7 & 1;\n");
printf (" DSR |= overflow >> 4;\n");
printf (" case 4: /* Signed Greater Than Mode */\n");
printf (" DSR |= DSR >> 7 & 1;\n");
- printf (" case
4
: /* Signed Greater Than Or Equal Mode */\n");
+ printf (" case
5
: /* Signed Greater Than Or Equal Mode */\n");
printf (" DSR |= greater_equal >> 7;\n");
printf (" }\n");
printf (" assign_z:\n");
printf (" DSR |= greater_equal >> 7;\n");
printf (" }\n");
printf (" assign_z:\n");
@@
-3406,9
+3377,7
@@
ppi_gensim ()
}
int
}
int
-main (ac, av)
- int ac;
- char **av;
+main (int ac, char *av[])
{
/* Verify the table before anything else. */
{
{
/* Verify the table before anything else. */
{
@@
-3418,7
+3387,7
@@
main (ac, av)
/* Check that the code field contains 16 bits. */
if (strlen (p->code) != 16)
{
/* Check that the code field contains 16 bits. */
if (strlen (p->code) != 16)
{
- fprintf (stderr, "Code `%s' length wrong (%
d
) for `%s'\n",
+ fprintf (stderr, "Code `%s' length wrong (%
zu
) for `%s'\n",
p->code, strlen (p->code), p->name);
abort ();
}
p->code, strlen (p->code), p->name);
abort ();
}
This page took
0.027757 seconds
and
4
git commands to generate.