2004-02-10 Michael Snyder * gencode.c (table): Change from char to short. (dumptable): Change generated table from char to short. * interp.c (sh_jump_table, sh_dsp_table, ppi_table): char to short. (init_dsp): Compute size of sh_dsp_table. (sim_resume): Change jump_table from char to short. Index: gencode.c =================================================================== RCS file: /cvs/src/src/sim/sh/gencode.c,v retrieving revision 1.26 diff -p -r1.26 gencode.c *** gencode.c 27 Jan 2004 23:30:01 -0000 1.26 --- gencode.c 11 Feb 2004 00:34:36 -0000 *************** gengastab () *** 2265,2271 **** } } ! static unsigned char table[1 << 16]; /* Take an opcode, expand all varying fields in it out and fill all the right entries in 'table' with the opcode index. */ --- 2265,2271 ---- } } ! static unsigned short table[1 << 16]; /* Take an opcode, expand all varying fields in it out and fill all the right entries in 'table' with the opcode index. */ *************** dumptable (name, size, start) *** 2407,2413 **** int i = start; ! printf ("unsigned char %s[%d]={\n", name, size); while (i < start + size) { int j = 0; --- 2407,2413 ---- int i = start; ! printf ("unsigned short %s[%d]={\n", name, size); while (i < start + size) { int j = 0; Index: interp.c =================================================================== RCS file: /cvs/src/src/sim/sh/interp.c,v retrieving revision 1.14 diff -p -r1.14 interp.c *** interp.c 10 Jan 2004 00:43:28 -0000 1.14 --- interp.c 11 Feb 2004 00:34:37 -0000 *************** *** 53,59 **** #define SIGTRAP 5 #endif ! extern unsigned char sh_jump_table[], sh_dsp_table[0x1000], ppi_table[]; int sim_write (SIM_DESC sd, SIM_ADDR addr, unsigned char *buffer, int size); --- 53,59 ---- #define SIGTRAP 5 #endif ! extern unsigned short sh_jump_table[], sh_dsp_table[0x1000], ppi_table[]; int sim_write (SIM_DESC sd, SIM_ADDR addr, unsigned char *buffer, int size); *************** init_dsp (abfd) *** 1646,1652 **** { int i, tmp; ! for (i = sizeof sh_dsp_table - 1; i >= 0; i--) { tmp = sh_jump_table[0xf000 + i]; sh_jump_table[0xf000 + i] = sh_dsp_table[i]; --- 1646,1652 ---- { int i, tmp; ! for (i = (sizeof sh_dsp_table / sizeof sh_dsp_table[0]) - 1; i >= 0; i--) { tmp = sh_jump_table[0xf000 + i]; sh_jump_table[0xf000 + i] = sh_dsp_table[i]; *************** sim_resume (sd, step, siggnal) *** 1752,1758 **** void (*prev) (); void (*prev_fpe) (); ! register unsigned char *jump_table = sh_jump_table; register int *R = &(saved_state.asregs.regs[0]); /*register int T;*/ --- 1752,1758 ---- void (*prev) (); void (*prev_fpe) (); ! register unsigned short *jump_table = sh_jump_table; register int *R = &(saved_state.asregs.regs[0]); /*register int T;*/