Statistics
| Branch: | Revision:

root / target-mips / translate.c @ 9a78eead

History | View | Annotate | Download (360.9 kB)

# Date Author Comment
9a78eead 10/30/2010 11:01 am Stefan Weil

target-xxx: Use fprintf_function (format checking)

fprintf_function uses format checking with GCC_FMT_ATTR.

Format errors were fixed in
  • target-i386/helper.c
  • target-mips/translate.c
  • target-ppc/translate.c

Cc: Blue Swirl <>
Signed-off-by: Stefan Weil <>...

2abf314d 10/13/2010 09:43 pm Blue Swirl

mips: avoid write only variables

Compiling with GCC 4.6.0 20100925 produced a lot of warnings like:
/src/qemu/target-mips/translate.c: In function 'gen_ld':
/src/qemu/target-mips/translate.c:1039:17: error: variable 'opn' set but not used [-Werror=unused-but-set-variable]...

671b0f36 07/31/2010 06:14 pm Hervé Poussineau

Correctly identify multiple cpus in SMP systems

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

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 <>...

161f85e6 07/11/2010 11:24 am Aurelien Jarno

target-mips: add loongson 2E & 2F integer instructions

This patch adds support for loongson 2E & 2F instructions. They are the
same instructions, but differ by the opcode encoding.

Signed-off-by: Aurelien Jarno <>

afa88c3a 07/02/2010 12:45 am Aurelien Jarno

target-mips: add Loongson support prefetch

Loongson CPU uses a load to zero register for prefetch.
Emulate it as a NOP.

Signed-off-by: Aurelien Jarno <>

5c13fdfd 07/01/2010 08:48 am Aurelien Jarno

target-mips: split load and store

Signed-off-by: Aurelien Jarno <>

6fbab869 06/30/2010 09:00 pm Aurelien Jarno

target-mips: fix DINSU instruction

Signed-off-by: Aurelien Jarno <>

aa8f4009 06/30/2010 12:26 am Aurelien Jarno

target-mips: enable movn/movz on loongson 2E & 2F

Signed-off-by: Aurelien Jarno <>

33087598 06/10/2010 12:37 am Stefan Weil

target-mips: Fix compilation

TCGv t1 needs tcg_temp_free instead of tcg_temp_free_i32.

Cc: Nathan Froyd <>
Cc: Aurelien Jarno <>
Signed-off-by: Stefan Weil <>
Signed-off-by: Aurelien Jarno <>

bf4120ad 06/09/2010 05:10 pm Nathan Froyd

target-mips: define constants for magic numbers

Add FMT_* constants for the floating-point format field in opcodes and
tweak a few places to use them. Add enums for various invocations of
FOP and tweak gen_farith and its lone caller accordingly.

Signed-off-by: Nathan Froyd <>...

e459440a 06/09/2010 05:10 pm Aurelien Jarno

target-mips: move FP FMT comments closer to the definitions

Signed-off-by: Aurelien Jarno <>

8153667c 06/09/2010 05:10 pm Nathan Froyd

target-mips: refactor c{, abs}.cond.fmt insns

Move all knowledge about coprocessor-checking and register numbering
into the gen_cmp* helper functions.

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

620e48f6 06/09/2010 05:10 pm Nathan Froyd

target-mips: mips16 cleanups

Change code handling mips16-specific branches to use ISA-neutral special
opcodes. Since there are several places where the delay slot
requirements for microMIPS branches differ from mips16 branches, using
opcodes is easier than checking hflags, then checking mips16...

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 <>

26ebe468 06/08/2010 08:15 pm Nathan Froyd

target-mips: break out [ls][wd]c1 and rdhwr insn generation

Signed-off-by: Nathan Froyd <>
Acked-by: Richard Henderson <>
Signed-off-by: Aurelien Jarno <>

564856bb 05/05/2010 01:20 pm Richard Henderson

target-mips: Remove duplicate CPU log.

Logging for -d cpu is done in generic code.

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

2a5612e6 04/09/2010 10:53 pm Stefan Weil

target-mips: Fix format specifiers for fpu_fprintf

In the previous patch which introduced fprintf_function to
allow parameter checking by gcc some compiler warnings
remained unfixed.

These warnings are fixed here.

Signed-off-by: Stefan Weil <>...

a7200c9f 04/08/2010 10:46 pm Stefan Weil

target-mips: Fix one more format specifier for cpu_fprintf

env->bcond must be printed using TARGET_FMT_ld.

Signed-off-by: Stefan Weil <>
Signed-off-by: Aurelien Jarno <>

1a7ff922 04/08/2010 10:34 pm Paolo Bonzini

remove TARGET_* defines from translate-all.c

Signed-off-by: Paolo Bonzini <>
Signed-off-by: Aurelien Jarno <>

deb4203d 03/04/2010 06:42 pm Aurelien Jarno

target-mips: use newer logical ops

Signed-off-by: Aurelien Jarno <>

e68dd28f 03/03/2010 12:16 am Aurelien Jarno

target-mips: use setcond when possible

Signed-off-by: Aurelien Jarno <>

3399e30f 02/23/2010 08:47 pm Nathan Froyd

target-mips: fix ROTR and DROTR by zero

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

6462bfcd 02/23/2010 08:47 pm Aurelien Jarno

target-mips: remove useless sign extension

Signed-off-by: Aurelien Jarno <>

c2c65dab 02/23/2010 08:47 pm Nathan Froyd

target-mips: fix CpU exception for coprocessor 0

When we signal a CpU exception for coprocessor 0, we should indicate
that it's for coprocessor 0 instead of coprocessor 1.

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

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 <>

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 <>

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 <>

5499b6ff 11/22/2009 03:12 pm Aurelien Jarno

target-mips: rename CP0_LLAddr into lladdr

The variable CP0_LLAddr represent the full lladdr, not the actual
register value, which is only part of this value and depends on the
CPU.

Signed-off-by: Aurelien Jarno <>

31e3104f 11/14/2009 02:10 pm Aurelien Jarno

target-mips: fix indentation

Signed-off-by: Aurelien Jarno <>

51cc2e78 11/14/2009 03:25 am Blue Swirl

mips: fix cpu_reset memory leak

Remove cpu_mips_register()
- move mmu_init(), fpu_init() and mvp_init() into cpu_mips_init()
- move the other parts in cpu_mips_init()

Reported-by: Blue Swirl <>
Signed-off-by: Aurelien Jarno <>

c227f099 10/02/2009 12:12 am Anthony Liguori

Revert "Get rid of _t suffix"

In the very least, a change like this requires discussion on the list.

The naming convention is goofy and it causes a massive merge problem. Something
like this must be presented on the list first so people can provide input...

99a0949b 10/01/2009 09:45 pm malc

Get rid of _t suffix

Some not so obvious bits, slirp and Xen were left alone for the time
being.

Signed-off-by: malc <>

941694d0 10/01/2009 12:12 am Aurelien Jarno

target-mips: make sure constants are in the second argument

Signed-off-by: Aurelien Jarno <>

a0d700e4 09/30/2009 10:07 pm Stefan Weil

mips: Fix spelling in comment

inofficial -> unofficial

Thanks to Blue Swirl.

Signed-off-by: Stefan Weil <>
Signed-off-by: Blue Swirl <>

618b0fe9 09/28/2009 02:03 pm Aurelien Jarno

target-mips: log instructions start in TCG code

Signed-off-by: Aurelien Jarno <>

d42320c2 09/23/2009 10:25 am Aurelien Jarno

target-mips: remove MAX_OP_PER_INSTR workaround

Now that MAX_OP_PER_INSTR has been increased to a safer value, removed
the target-mips specific workaround.

Signed-off-by: Aurelien Jarno <>

7b270ef2 09/14/2009 08:34 pm Nathan Froyd

target-mips: fix single-stepping

Single-stepping branches on MIPS didn't work right, because the
generation of EXCP_DEBUG happened after the generation of the code to
exit the current TB. That is, given the code:

bne v0,v1,target
nop
...
target:...
72cf2d4f 09/12/2009 10:36 am Blue Swirl

Fix sys-queue.h conflict for good

Problem: Our file sys-queue.h is a copy of the BSD file, but there are
some additions and it's not entirely compatible. Because of that, there have
been conflicts with system headers on BSD systems. Some hacks have been
introduced in the commits 15cc9235840a22c289edbe064a9b3c19c5f49896,...

fa31af0e 08/25/2009 07:05 pm Nathan Froyd

target-mips: fix conditional moves off fp condition codes

Conditional moves off fp condition codes were using the result of
get_fp_bit to isolate and test the relevant condition code. However,
get_fp_bit returns the bit number of the condition code, not a...

8167ee88 07/16/2009 11:47 pm Blue Swirl

Update to a hopefully more future proof FSF address

Signed-off-by: Blue Swirl <>

344b983d 07/12/2009 04:09 pm Aurelien Jarno

target-mips: remove useless code in gen_st_cond()

Signed-off-by: Aurelien Jarno <>

feeb3b6a 07/12/2009 03:11 pm Paul Brook

Fix MIPS SC

Fix botched merge of op_ldst_sc calls to match actual implementation.
Thanks to Aurelien Jarno for diagnosing this.

Signed-off-by: Paul Brook <>

590bc601 07/09/2009 07:45 pm Paul Brook

MIPS atomic instructions

Implement MIPS ll/sc instructions using atomic compare+exchange.

Signed-off-by: Paul Brook <>

98070ce0 07/03/2009 04:28 am Nathan Froyd

target-mips: fix MADD and MSUB/MSUBU instructions

MADD was not correctly writing to HI.

MSUB/MSUBU are specified as `HI||LO - product', not `product - HI||LO'.

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

001faf32 05/13/2009 08:53 pm Blue Swirl

Replace gcc variadic macro extension with C99 version

Signed-off-by: Blue Swirl <>

6bb72b18 05/04/2009 11:05 am Aurelien Jarno

target-mips: proper sign extension for 'SUBU rd, zero, rt'

Signed-off-by: Aurelien Jarno <>

88cbb980 05/04/2009 11:05 am Aurelien Jarno

target-mips: fix comments about SUB/DSUB

Signed-off-by: Aurelien Jarno <>

0bf46a40 04/24/2009 09:03 pm aliguori

qemu: introduce qemu_init_vcpu (Marcelo Tosatti)

Signed-off-by: Marcelo Tosatti <>
Signed-off-by: Anthony Liguori <>

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

df357f0e 04/21/2009 02:55 am pbrook

Enable access to SYNCI_Step register in usermode emulation.

Signed-off-by: Paul Brook <>

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

8c0ab41f 04/17/2009 04:17 pm aurel32

Revert "target-mips: fix call to check_*() functions"

This reverts commit r7127, r7132 is a better fix for that.

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

aefbc83e 04/17/2009 04:11 pm aurel32

target-mips: simplify exception generation

There is no need to exit the tb after a call to helper_raise_exception
as it already calls cpu_loop_exit().

Signed-off-by: Aurelien Jarno <>

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

a6035857 04/16/2009 03:57 pm aurel32

target-mips: fix revision r7126

Signed-off-by: Aurelien Jarno <>

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

007ac6fa 04/16/2009 02:51 pm aurel32

target-mips: fix call to check_*() functions

check_*() functions may in fine call generate_exception(), which ends
by a call to tcg_gen_exit_tb(). As a consequence, we have to make sure
that no TCG temp variables are crossing a check_*() function.

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

585c88d5 04/16/2009 02:51 pm aurel32

target-mips: optimize gen_flt3_ldst()

Signed-off-by: Aurelien Jarno <>

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

c407df81 04/16/2009 02:51 pm aurel32

target-mips: optimize gen_flt_ldst()

Signed-off-by: Aurelien Jarno <>

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

8e0f950d 04/16/2009 01:56 pm pbrook

Stop translation after a syscall instruciton.

Signed-off-by: Paul Brook <>

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

f2c94b92 04/15/2009 05:42 pm aurel32

target-mips: mark zero register as unused.

Suggested by Stuart Brady.

Signed-off-by: Aurelien Jarno <>

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

d9bea114 04/15/2009 05:41 pm aurel32

target-mips: variable names consistency

Use a consistent naming of arguments and TCG variables across the whole
file, the same as in tcg/tcg-op.h:
- arg1, arg2, ... for arguments
- t0, t1, t2, ... for variables

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

867abc7e 04/13/2009 11:53 am aurel32

target-mips: fix commits 7040 and 7042

CPU state should also be saved for helpers that in fine call
cpu_unlink_tb(). Reported by Stefan Weil.

Signed-off-by: Aurelien Jarno <>

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

30a3848b 04/12/2009 11:32 am aurel32

target-mips: fix commit 7046

Signed-off-by: Aurelien Jarno <>

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

bb928dbe 04/11/2009 09:43 pm aurel32

target-mips: don't map zero register as a TCG global

Signed-off-by: Aurelien Jarno <>

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

d66c7132 04/11/2009 09:42 pm aurel32

target-mips: optimize gen_ldst()

Signed-off-by: Aurelien Jarno <>

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

324d9e32 04/11/2009 09:42 pm aurel32

target-mips: optimize gen_arith_imm()

Signed-off-by: Aurelien Jarno <>

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

52a0e9eb 04/11/2009 12:56 am aurel32

target-mips: fix commit r7076

Signed-off-by: Aurelien Jarno <>

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

11f94258 04/11/2009 12:42 am aurel32

target-mips: optimize gen_movcf_d()

Signed-off-by: Aurelien Jarno <>

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

a4e8338d 04/11/2009 12:41 am aurel32

target-mips: optimize a few tcg_temp_free()

Signed-off-by: Aurelien Jarno <>

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

c9297f4d 04/09/2009 12:48 am aurel32

target-mips: optimize gen_farith()

Signed-off-by: Aurelien Jarno <>

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

c905fdac 04/09/2009 12:48 am aurel32

target-mips: optimize gen_flt3_arith()

Signed-off-by: Aurelien Jarno <>

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

4e2474d6 04/09/2009 12:48 am aurel32

target-mips: optimize gen_flt3_ldst()

Signed-off-by: Aurelien Jarno <>

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

460f00c4 04/09/2009 12:48 am aurel32

target-mips: optimize gen_arith()

Signed-off-by: Aurelien Jarno <>

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

35fbce2c 04/09/2009 12:47 am aurel32

target-mips: optimize decode_opc()

Signed-off-by: Aurelien Jarno <>

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

72c3a3ee 04/09/2009 12:47 am aurel32

target-mips: optimize gen_cp1()

Signed-off-by: Aurelien Jarno <>

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

1fc7bf6e 04/09/2009 12:47 am aurel32

target-mips: optimize gen_cp0()

Signed-off-by: Aurelien Jarno <>

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

1b530a6d 04/05/2009 11:08 pm aurel32

Add new command line option -singlestep for tcg single stepping.

This replaces a compile time option for some targets and adds
this feature to targets which did not have a compile time option.

Add monitor command to enable or disable single step mode.

Modify monitor command "info status" to display single step mode....

cbc37b28 03/29/2009 06:45 pm aurel32

target-mips: optimize gen_movcf_*()

Signed-off-by: Aurelien Jarno <>

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

af58f9ca 03/29/2009 06:44 pm aurel32

target-mips: optimize gen_movci()

Signed-off-by: Aurelien Jarno <>

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

d94536f4 03/29/2009 06:44 pm aurel32

target-mips: optimize gen_compute_branch1()

Signed-off-by: Aurelien Jarno <>

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

6d066274 03/29/2009 06:39 pm aurel32

target-mips: don't map FP registers as TCG global variables

Signed-off-by: Aurelien Jarno <>

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

0c0ed03b 03/29/2009 06:36 pm aurel32

target-mips: fix divu instruction

Signed-off-by: Aurelien Jarno <>

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

41db4607 03/29/2009 04:28 am aurel32

target-mips: optimize write to env->hflags

Signed-off-by: Aurelien Jarno <>

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

d45f89f4 03/29/2009 04:19 am aurel32

target-mips: optimize gen_muldiv()

Signed-off-by: Aurelien Jarno <>

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

f129981a 03/29/2009 04:19 am aurel32

target-mips: optimize gen_HILO()

Signed-off-by: Aurelien Jarno <>

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

cdc0faa6 03/29/2009 04:19 am aurel32

target-mips: optimize gen_trap()

Signed-off-by: Aurelien Jarno <>

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

1ba74fb8 03/29/2009 04:18 am aurel32

target-mips: optimize gen_compute_branch()

Signed-off-by: Aurelien Jarno <>

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

92e90443 03/29/2009 04:18 am aurel32

target-mips: don't mix result and arguments in gen_op_*

Signed-off-by: Aurelien Jarno <>

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

3a55fa47 03/29/2009 04:18 am aurel32

target-mips: gen_bshfl()

Signed-off-by: Aurelien Jarno <>

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

f157bfe1 03/29/2009 04:18 am aurel32

target-mips: optimize gen_mul_vr54xx()

Signed-off-by: Aurelien Jarno <>

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

20e1fb52 03/29/2009 04:18 am aurel32

target-mips: optimize gen_cl()

Signed-off-by: Aurelien Jarno <>

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

f364515c 03/29/2009 12:22 am aurel32

target-mips: fix FPU in 64-bit mode

TCG does not allow the same memory location to be aliased in two
different global registers, fpu_fpr32 and fpu_fpr64.

Signed-off-by: Aurelien Jarno <>

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

a3fe9013 03/10/2009 11:03 am aurel32

target-mips: use nor instead of or + not

Signed-off-by: Aurelien Jarno <>

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

a1f6684d 03/09/2009 08:50 pm aurel32

target-mips: optimize mflo and mfhi

Signed-off-by: Aurelien Jarno <>

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6794 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