Statistics
| Branch: | Revision:

root / target-mips @ 91a75935

Name Size
TODO 1.9 kB
cpu.h 18 kB
exec.h 2.8 kB
helper.c 20.6 kB
helper.h 8.4 kB
machine.c 10.6 kB
mips-defs.h 1.8 kB
op_helper.c 92.8 kB
translate.c 284.2 kB
translate_init.c 21.2 kB

Latest revisions

# Date Author Comment
91a75935 12/13/2009 10:01 pm Nathan Froyd

target-mips: fix user-mode emulation startup

Running programs with the MIPS user-mode emulator fails during dynamic
loading, as floating-point instructions are not enabled in in
env->hflags. Move the code for doing so from fpu_init to cpu_reset so
the MIPS_HFLAG_{FPU,F64} setting doesn't get clobbered by cpu_reset...

6ea219d0 12/13/2009 09:20 pm Nathan Froyd

target-mips: add enums for MIPS16 opcodes

Signed-off-by: Nathan Froyd <>
Signed-off-by: Aurelien Jarno <>

364d4831 12/13/2009 09:20 pm Nathan Froyd

target-mips: add mips16 instruction decoding

There's no good way to add this incrementally, so we do it all at once.
The only changes to shared code are in handle_delay_slot. We need to
flip ISAMode when doing a jump-and-exchange. We also need to set
ISAMode the low bit of the target address for jump-to-register....

9da53be7 12/13/2009 09:20 pm Nathan Froyd

target-mips: add copyright notice for mips16 work

Also cross off mips16 ASE in TODO.

Signed-off-by: Nathan Froyd <>
Signed-off-by: Aurelien Jarno <>

d19954f4 12/13/2009 09:20 pm Nathan Froyd

target-mips: set Config1.CA for MIPS16-aware CPUs

Signed-off-by: Nathan Froyd <>
Signed-off-by: Aurelien Jarno <>

32188a03 12/13/2009 09:20 pm Nathan Froyd

target-mips: change interrupt bits to be mips16-aware

We need to stash the operating mode into the low bit of the error PC and
restore it on return from interrupts.

Signed-off-by: Nathan Froyd <>
Signed-off-by: Aurelien Jarno <>

ea63e2c3 12/13/2009 09:20 pm Nathan Froyd

target-mips: move ROTR and ROTRV inside gen_shift_{imm, }

It's easier to implement mips16 shift instructions if we're not
examining the opcode inside gen_shift_{imm,}. So move ROTR and ROTRV
and do the special-case handling of SRL and SRLV inside decode_opc....

7dca4ad0 12/13/2009 09:20 pm Nathan Froyd

target-mips: make gen_compute_branch 16/32-bit-aware

Signed-off-by: Nathan Froyd <>
Signed-off-by: Aurelien Jarno <>

662d7485 12/13/2009 09:20 pm Nathan Froyd

target-mips: add gen_base_offset_addr

This is a common pattern in existing code. We'll also use it to
implement the mips16 SAVE/RESTORE instructions.

Signed-off-by: Nathan Froyd <>
Signed-off-by: Aurelien Jarno <>

c9602061 12/13/2009 09:20 pm Nathan Froyd

target-mips: split out delay slot handling

Move delay slot handling to common code whose invocation can be
controlled from gen_intermediate_code_internal.

Signed-off-by: Nathan Froyd <>
Signed-off-by: Aurelien Jarno <>

View revisions

Also available in: Atom