Statistics
| Branch: | Revision:

root / target-mips @ 5f8ae8e2

Name Size
Makefile.objs 109 Bytes
TODO 1.9 kB
cpu-qom.h 1.8 kB
cpu.c 1.8 kB
cpu.h 24.1 kB
dsp_helper.c 143.6 kB
helper.c 22 kB
helper.h 27.9 kB
lmi_helper.c 14 kB
machine.c 10.6 kB
mips-defs.h 2.1 kB
op_helper.c 102.3 kB
translate.c 475.1 kB
translate_init.c 24.7 kB

Latest revisions

# Date Author Comment
7c2c3ea3 11/11/2012 05:05 pm Eric Johnson

target-mips: Fix seg fault for LUI when MIPS_DEBUG_DISAS==1.

The call to gen_logic_imm for OPC_LUI passes -1 for rs. This
causes the MIPS_DEBUG statement to seg fault due to the deference
of regnames[rs]. This patch fixes that.

Signed-off-by: Eric Johnson <>...

f4359b9f 11/10/2012 03:49 pm Blue Swirl

disas: avoid using cpu_single_env

Pass around CPUArchState instead of using global cpu_single_env.

Signed-off-by: Blue Swirl <>
Acked-by: Richard Henderson <>
Acked-by: Aurelien Jarno <>
Acked-by: Guan Xuetao <>

1cfd981f 11/05/2012 09:02 am Blue Swirl

target-mips: use ULL for 64 bit constants

Fix build on a 32 bit host:
CC mips-softmmu/target-mips/dsp_helper.o
/src/qemu/target-mips/dsp_helper.c: In function 'helper_dextr_rs_w':
/src/qemu/target-mips/dsp_helper.c:3556: error: integer constant is too large for 'long' type...

98c8a73b 11/01/2012 06:12 pm Anthony Liguori

Merge remote-tracking branch 'afaerber/qom-cpu' into staging

  • afaerber/qom-cpu: (35 commits)
    target-i386: Pass X86CPU to kvm_handle_halt()
    target-i386: Pass X86CPU to kvm_get_mp_state()
    cpu: Move thread_id to CPUState
    cpus: Pass CPUState to run_on_cpu()...
bc3e45e1 10/31/2012 11:20 pm Aurelien Jarno

target-mips: fix TLBR wrt SEGMask

Like r4k_map_address(), r4k_helper_tlbp() should use SEGMask to mask the
address.

Signed-off-by: Aurelien Jarno <>

286d52eb 10/31/2012 11:20 pm Aurelien Jarno

target-mips: don't flush extra TLB on permissions upgrade

If the guest uses a TLBWI instruction for upgrading permissions, we
don't need to flush the extra TLBs. This improve boot time performance
by about 10%.

Signed-off-by: Aurelien Jarno <>

2d2826b9 10/31/2012 11:20 pm Aurelien Jarno

target-mips: don't use local temps for store conditional

Store conditional operations only need local temps in user mode. Fix
the code to use temp local only in user mode, this spares two memory
stores in system mode.

At the same time remove a wrong a wrong copied & pasted comment,...

acf12465 10/31/2012 11:20 pm Aurelien Jarno

target-mips: implement movn/movz using movcond

Avoid the branches in movn/movz implementation and replace them with
movcond. Also update a wrong command.

Reviewed-by: Richard Henderson <>
Signed-off-by: Aurelien Jarno <>

51127181 10/31/2012 11:20 pm Aurelien Jarno

target-mips: optimize ddiv/ddivu/div/divu with movcond

The result of a division by 0, or a division of INT_MIN by -1 in the
signed case, is unpredictable. Just replace 0 by 1 in that case so that
it doesn't trigger a floating point exception on the host....

e0d002f1 10/31/2012 11:20 pm Aurelien Jarno

target-mips: use deposit instead of hardcoded version

Use the deposit op instead of and hardcoded bit field insertion. It
allows the host to emit the corresponding instruction if available.

At the same time remove the (lsb > msb) test. The MIPS64R2 instruction...

View revisions

Also available in: Atom