Re: GDB5.3 for MIPS ISA32 and MIPS ISA16

cgd
2003-07-25T05:30:05Z

At Fri, 25 Jul 2003 04:44:41 +0000 (UTC), "Saravanan J" wrote:
> mips*tx39*) sim_gen=M16
> sim_igen_filter="32,f"
> sim_m16_filter="16"
> sim_igen_machine="-M mips32"
> sim_m16_machine="-M mips16"
> ;;
>
> Is this OK

that looks reasonable comparing with the other configuration script
bits, but i've never done anything with MIPS16 so i'm not sure.

(obviously, if you're interested in using this long-term or want to
submit it back to gdb/sim eventually, you'll want to use a different
target name...)

> Jump from ISA32 code is ISA16 code is done by instruction "Jalx"

right.

> While simulating the jump has taken place, but it is not executing the ISA16 instructions.
> It considers them as ISA32 and tries to execute it. Illegal Instruction error occurs.

you'll note that JALX32 (in m16.igen) attempts to adjust the value of
'nia' to be odd, and m16run.c (following the mips16 ASE, IIRC -- it's
been a while since i looked) interprets that as meaning running in
mips16 mode.

have you verified in the code in m16run.c that the instruction address
is odd and m16_instruction_word/m16_idecode_issue are being invoked?

cgd