Statistics
| Branch: | Revision:

root / target-mips / helper.h @ a74cdab4

History | View | Annotate | Download (8.5 kB)

# Date Author Comment
9ed5726c 12/22/2010 12:14 pm Nathan Froyd

target-mips: fix translation of MT instructions

The translation of dmt/emt/dvpe/evpe was doing the moral equivalent of:

int x;
... /* no initialization of x */
x = f (x);

which confused later bits of TCG rather badly, leading to crashes.

Fix the helpers to only return results (those instructions have no...

5dc5d9f0 07/25/2010 05:54 pm Aurelien Jarno

mips: more fixes to the MIPS interrupt glue logic

Commit 36388314febad3d7675ab919287f03733a560ff6 moved most of the
interrupt logic to cpu-exec.c. Remove the remaining useless code
and fix software interrupts.

Signed-off-by: Aurelien Jarno <>...

3c824109 06/09/2010 05:10 pm Nathan Froyd

target-mips: microMIPS ASE support

Add instruction decoding for the microMIPS ASE. All we do is decode and
then forward to the existing gen_* routines.

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

e7139c44 11/30/2009 05:18 pm Aurelien Jarno

target-mips: use physical address in lladdr

Currently the ll/sc instructions use the virtual address in both
user and system mode. Use the physical address insteead in system
mode.

Signed-off-by: Aurelien Jarno <>

2a6e32dd 11/22/2009 03:12 pm Aurelien Jarno

target-mips: make CP0_LLAddr register CPU dependent

Depending on the CPU, CP0_LLAddr is either read-only or read-write,
and the returned value can be shifted by a variable amount of bits.

Signed-off-by: Aurelien Jarno <>
Signed-off-by: Hervé Poussineau <>

e7a6965b 04/06/2009 03:34 pm aurel32

target-mips: use the TCG_CALL_PURE and TCG_CALL_CONST for some helpers

Signed-off-by: Aurelien Jarno <>

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@7009 c046a42c-6fe2-441c-8c8c-71466251a162

c01fccd2 03/08/2009 02:06 am aurel32

target-mips: rename helpers from do_ to helper_

Signed-off-by: Aurelien Jarno <>

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6773 c046a42c-6fe2-441c-8c8c-71466251a162

a7812ae4 11/17/2008 04:43 pm pbrook

TCG variable type checking.

Signed-off-by: Paul Brook <>

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5729 c046a42c-6fe2-441c-8c8c-71466251a162

49bcf33c 11/11/2008 01:47 pm aurel32

target-mips: convert bit shuffle ops to TCG

Bit shuffle operations can be written with very few TCG instructions
(between 5 and 8), so it is worth converting them to TCG.

This code also move all bit shuffle generation code to a separate
function in order to have a cleaner exception code path, that is it...

505ad7c2 11/11/2008 01:46 pm aurel32

target-mips: convert bitfield ops to TCG

Bitfield operations can be written with very few TCG instructions
(between 2 and 5), so it is worth converting them to TCG.

Signed-off-by: Aurelien Jarno <>

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5678 c046a42c-6fe2-441c-8c8c-71466251a162

add69063 11/11/2008 01:34 pm aurel32

target-mips: fix mft* helpers/call

This patch attempts to fix mft* helpers and the associated TCG calls.
mft* helpers do not take a register in argument, however:
- some helpers are called with an argument while they do not take one.
- some helpers are declared with an argument they don't use....

0eaef5aa 07/23/2008 07:14 pm ths

Less hardcoding of TARGET_USER_ONLY.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4928 c046a42c-6fe2-441c-8c8c-71466251a162

b6d96bed 07/09/2008 02:05 pm ths

Use temporary registers for the MIPS FPU emulation.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4861 c046a42c-6fe2-441c-8c8c-71466251a162

d26968ec 06/29/2008 05:53 pm ths

Remove unnecessary helper arguments, and fix some typos.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4802 c046a42c-6fe2-441c-8c8c-71466251a162

2796188e 06/27/2008 01:03 pm ths

Avoid unused input arguments which triggered tcg errors. Spotted by
Stefan Weil.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4795 c046a42c-6fe2-441c-8c8c-71466251a162

1a3fd9c3 06/25/2008 12:58 am ths

Remove remaining uses of T0 in the MIPS target.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4788 c046a42c-6fe2-441c-8c8c-71466251a162

6c5c1e20 06/24/2008 06:12 pm ths

Use temporaries instead of fixed registers for some instructions.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4784 c046a42c-6fe2-441c-8c8c-71466251a162

be24bb4f 06/23/2008 03:57 pm ths

Pass T0/T1 explicitly to helper functions, and clean up a few dyngen
leftovers.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4780 c046a42c-6fe2-441c-8c8c-71466251a162

c8c2227e 06/20/2008 06:12 pm ths

Convert unaligned load/store to TCG.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4759 c046a42c-6fe2-441c-8c8c-71466251a162

92af06d2 06/20/2008 05:35 pm ths

Convert vr54xx multiply instructions to TCG.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4756 c046a42c-6fe2-441c-8c8c-71466251a162

a16336e4 06/19/2008 09:35 pm ths

Convert remaining MIPS FP instructions to TCG.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4753 c046a42c-6fe2-441c-8c8c-71466251a162

214c465f 06/12/2008 03:43 pm ths

Switch the standard multiplication instructions to TCG.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4740 c046a42c-6fe2-441c-8c8c-71466251a162

2b0233ab 06/12/2008 03:42 pm ths

Switch bitfield instructions and assorted special ops to TCG.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4739 c046a42c-6fe2-441c-8c8c-71466251a162

08ba7963 06/12/2008 06:15 am ths

TCGify a few more instructions.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4736 c046a42c-6fe2-441c-8c8c-71466251a162

5d0fc900 06/11/2008 06:27 pm ths

Call most FP helpers without deroute through op.c

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4734 c046a42c-6fe2-441c-8c8c-71466251a162

f1aa6320 06/09/2008 10:13 am ths

Switch remaining CP0 instructions to TCG or helper functions.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4708 c046a42c-6fe2-441c-8c8c-71466251a162

7dd9e556 06/08/2008 10:42 am ths

Register helper functions.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4700 c046a42c-6fe2-441c-8c8c-71466251a162

30898801 05/21/2008 05:04 am ths

Switch MIPS clo/clz and the condition tests to TCG.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4507 c046a42c-6fe2-441c-8c8c-71466251a162

4eecc06e 05/19/2008 02:39 am ths

Add file left out from previous commit.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4497 c046a42c-6fe2-441c-8c8c-71466251a162