| Branch: | Revision:

root / target-sparc @ 5a834bb4

Name Size
TODO 2.2 kB
cpu.h 17.9 kB
exec.h 779 Bytes
helper.c 47.6 kB
helper.h 4.6 kB
machine.c 6 kB
op_helper.c 113.2 kB
translate.c 187.4 kB

Latest revisions

# Date Author Comment
5a834bb4 05/09/2010 11:19 pm Blue Swirl

sparc: Fix lazy flag calculation on interrupts, refactor

Recalculate Sparc64 CPU flags on interrupts, otherwise some earlier
flags could be stored to pstate.

Refactor PSR/CCR/CWP handling: concentrate the actual
functions to op_helper.c.

Thanks to Igor Kovalenko for reporting....

275ea265 05/09/2010 06:40 pm Blue Swirl

sparc: lazy C flag calculation

Calculate only the carry flag for ADDX/SUBX instead of full
set of flags.

Thanks to Igor Kovalenko for spotting a bug with an earlier

Signed-off-by: Blue Swirl <>

44505216 05/07/2010 07:14 pm Blue Swirl

sparc64: fix build with older gccs

Fix errors missed in 2065061ede22d401aae2ce995c3af54db9d28639:
CC sparc64-softmmu/helper.o
cc1: warnings being treated as errors
/src/qemu/target-sparc/helper.c: In function 'get_physical_address':
/src/qemu/target-sparc/helper.c:426: warning: 'context' may be used uninitialized in this function...

2065061e 05/06/2010 11:14 pm Igor V. Kovalenko

sparc64: handle asi referencing nucleus and secondary MMU contexts

- increase max supported MMU modes to 6
- handle nucleus context asi
- handle secondary context asi
- handle non-faulting loads from secondary context

Signed-off-by: Igor V. Kovalenko <>...

299b520c 05/06/2010 11:13 pm Igor V. Kovalenko

sparc64: implement global translation table entries v1

- match global tte against any context
- show global tte in MMU dump

v0->v1: added default case to switch statement in demap_tlb
- should fix gcc warning about uninitialized context variable

Signed-off-by: Igor V. Kovalenko <>...

060718c1 04/26/2010 08:23 pm Richard Henderson

target-sparc: Fix -singlestep.

Single-stepping was not properly updating npc, resulting in some
instructions being executed twice. In addition, we were emitting
dead code at the end of the TB.

Fix both by teaching gen_goto_tb to avoid goto_tb for single-step...

41db525e 04/23/2010 09:38 pm Richard Henderson

target-sparc: Fix address masking in ldqf and stqf.

Use address_mask on both addr and addr+8 in both these routines,
rather than explicit masking with 0xffffffff.

Reformulate address_mask to return a result, rather than masking
a pass-by-reference argument....

6ad6135d 04/18/2010 05:22 pm Blue Swirl

Fix harmless if statements with empty body, spotted by clang

These clang errors are harmless but worth fixing:
CC ppc-softmmu/usb-ohci.o
/src/qemu/hw/usb-ohci.c:1104:59: error: if statement has empty body [-Wempty-body]
ohci->ctrl_head, ohci->ctrl_cur);...

42a8aa83 04/17/2010 07:25 pm Richard Henderson

target-sparc: Free instruction temporaries.

Rather than creating new temporaries for constants, use the
ones created in disas_sparc_insn. Remember the temps created
there so that they can be freed at the end of the function.

Profile data collected by TCG while booting sparc-test kernel:...

058ed88c 04/17/2010 07:25 pm Richard Henderson


The 32 and 64-bit definitions were swapped in the ifdef.

Signed-off-by: Richard Henderson <>
Signed-off-by: Blue Swirl <>

View revisions

Also available in: Atom