t; > >> }
> > >> }
> > >> - } else {
> > >> + } else if (env->interrupt_request & CPU_INTERRUPT_HARD) {
> > >> CPUIRQ_DPRINTF("Interrupts disabled, pil=%08x pil_in=%08x
> > >> softint=%08x "
> > >> "current interrupt %x\n",
> > >> pil, env->pil_in, env->softint,
> > >> env->interrupt_index);
> > >> + env->interrupt_index = 0;
> > >> + cpu_reset_interrupt(env, CPU_INTERRUPT_HARD);
> > >> }
> > >> }
> > >>
> > >> --
> > >> 1.7.3.4
> > >
> > >
> > >
> > > Tsuneo Saito
> > >
> >
> >
> >
> > --
> > Regards,
> > Artyom Tarasenko
> >
> > solaris/sparc under qemu blog: http://tyom.blogspot.com/
>
>
> Tsuneo Saito
Implement %fprs.DU/DL bits.
The FPU sets %fprs.DL and %fprs.DU when values are assigned to %f0-31
and %f32-63 respectively.
Signed-off-by: Tsuneo Saito
---
target-sparc/translate.c | 116 ++
1 files changed, 116 insertions(+), 0 deletions(-)
diff
Fix the problem that result values are not assigned to the destination
registers.
Signed-off-by: Tsuneo Saito
---
target-sparc/translate.c | 14 --
1 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/target-sparc/translate.c b/target-sparc/translate.c
index 15967c5
Implement %fprs.DU/DL bits.
The FPU sets %fprs.DL and %fprs.DU when values are assigned to %f0-31
and %f32-63 respectively.
The first patch fixes problems that are found when adding the lines
for fprs and would be better to be fixed before adding the fprs thing.
Tsuneo Saito (2):
SPARC64: fix
nonfaulting loads raising MMU faults.
Signed-off-by: Tsuneo Saito
---
target-sparc/helper.c |8 ++--
1 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/target-sparc/helper.c b/target-sparc/helper.c
index cb8d706..b6e62a7 100644
--- a/target-sparc/helper.c
+++ b/target-sparc
Nonfaulting loads should raise fast_data_access_MMU_miss traps as
normal loads do. It is up to the guest OS kernel that detect MMU misses
on nonfaulting load instructions and make them complete without signaling.
Signed-off-by: Tsuneo Saito
---
target-sparc/op_helper.c | 36
Add macros for TTE bits and modify to use macros instead of
magic numbers.
Signed-off-by: Tsuneo Saito
---
target-sparc/cpu.h|7 +++
target-sparc/helper.c | 35 +++
2 files changed, 26 insertions(+), 16 deletions(-)
diff --git a/target-sparc/cpu.h
(abuses?) the rw
argument of get_physical_address_data(). rw is set to 4 on nonfaulting
loads.
Signed-off-by: Tsuneo Saito
---
target-sparc/cpu.h|4
target-sparc/helper.c | 29 ++---
2 files changed, 30 insertions(+), 3 deletions(-)
diff --git a/target-sparc
Add macros for SFSR fields and use macros instead of magic numbers.
Also fix the update of the register fields on MMU faults.
Signed-off-by: Tsuneo Saito
---
target-sparc/cpu.h| 22
target-sparc/helper.c | 52 +---
2 files
Introduce cpu_sparc_get_phys_page() to be used as a help for splitting
cpu_get_phys_page_debug() from cpu_get_phys_page_nofault().
Signed-off-by: Tsuneo Saito
---
target-sparc/helper.c | 20 ++--
1 files changed, 14 insertions(+), 6 deletions(-)
diff --git a/target-sparc
for preparing for the fix. The next 2 patches
fix the problem and the last one is for related faults other than
the TLB miss.
Tsuneo Saito (7):
SPARC64: TTE bits cleanup
SPARC64: SFSR cleanup and fix
SPARC64: introduce a convenience function for getting physical
addresses
SPARC64: spli
This patch makes cpu_get_phys_page_debug() independent from
cpu_get_phys_page_nofault() in advance of implementing nonfaulting load.
This also modifies cpu_get_phys_page_nofault() to be compiled only on
TARGET_SPARC64 because it is not required on SPARC32.
Signed-off-by: Tsuneo Saito
---
target
"break" is missing on V9 fmovdcc (%icc).
Signed-off-by: Tsuneo Saito
---
target-sparc/translate.c |1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/target-sparc/translate.c b/target-sparc/translate.c
index 27c2cf9..59e91dc 100644
--- a/target-sparc/transla
The destination registers of SIMD signed compare instructions
(fcmp*<16|32>) are not FP registers but general purpose r registers.
Comparisons should be freg_rs1 CMP freg_rs2, that were reversed.
Signed-off-by: Tsuneo Saito
---
target-sparc/helper.h|4 ++--
target-sparc/op_he
UA2007 ASI_BLK_* should be added in is_translating_asi().
Signed-off-by: Tsuneo Saito
---
target-sparc/op_helper.c |3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/target-sparc/op_helper.c b/target-sparc/op_helper.c
index 15af27b..8b9eb9f 100644
--- a/target-sparc
Support UA2007 block store ASIs for stfa instructions.
Signed-off-by: Tsuneo Saito
---
target-sparc/op_helper.c |6 +-
1 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/target-sparc/op_helper.c b/target-sparc/op_helper.c
index b76ffb6..4faa709 100644
--- a/target-sparc
stfa/stdfa/stqfa instructions should raise fp_disabled exceptions
if %pstate.PEF==0 or %fprs.FEF==0.
Signed-off-by: Tsuneo Saito
---
target-sparc/translate.c |9 +
1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/target-sparc/translate.c b/target-sparc/translate.c
This patch implements sparcv9 stfa/stdfa/stqfa instructions
with non block-store ASIs.
Signed-off-by: Tsuneo Saito
---
target-sparc/op_helper.c | 15 +++
target-sparc/translate.c |2 --
2 files changed, 11 insertions(+), 6 deletions(-)
diff --git a/target-sparc/op_helper.c b
This patch implements sparcv9 ldfa/lddfa/ldqfa instructions
with non block-load ASIs.
Signed-off-by: Tsuneo Saito
---
target-sparc/op_helper.c | 16 +++-
1 files changed, 11 insertions(+), 5 deletions(-)
diff --git a/target-sparc/op_helper.c b/target-sparc/op_helper.c
index
Support JPS1 little endian block transfer ASIs.
Signed-off-by: Tsuneo Saito
---
target-sparc/op_helper.c |4
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/target-sparc/op_helper.c b/target-sparc/op_helper.c
index 4faa709..2a28d5f 100644
--- a/target-sparc/op_helper.c
Fixed C99 comments on block-tranfer ASIs.
Signed-off-by: Tsuneo Saito
---
target-sparc/op_helper.c | 28 ++--
1 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/target-sparc/op_helper.c b/target-sparc/op_helper.c
index 2a28d5f..15af27b 100644
--- a/target
Support UA2007 block load ASIs for ldfa instructions.
Signed-off-by: Tsuneo Saito
---
target-sparc/op_helper.c |6 +-
1 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/target-sparc/op_helper.c b/target-sparc/op_helper.c
index fe71829..b76ffb6 100644
--- a/target-sparc
This patch series implements sparcv9 stfa/ldfa instructions that
implementations seem to be left unfinished.
This patch also adds fp_disabled exception checks on stfa/ldfa
as they are FP instructions.
v2:
* checked by checkpatch.pl.
* added UA2007 block-transfer ASIs.
* added JPS1 little-endian
ldfa/lddfa/ldqfa instructions should raise fp_disabled exceptions
if %pstate.PEF==0 or %fprs.FEF==0.
Signed-off-by: Tsuneo Saito
---
target-sparc/translate.c |9 +
1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/target-sparc/translate.c b/target-sparc/translate.c
stfa/stdfa/stqfa instructions should raise fp_disabled exceptions
if %pstate.PEF==0 or %fprs.FEF==0.
Signed-off-by: Tsuneo Saito
---
target-sparc/translate.c |6 ++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/target-sparc/translate.c b/target-sparc/translate.c
index
This patch implements sparcv9 stfa/stdfa/stqfa instructions
with non block-store ASIs.
Signed-off-by: Tsuneo Saito
---
target-sparc/op_helper.c | 15 +++
target-sparc/translate.c |2 --
2 files changed, 11 insertions(+), 6 deletions(-)
diff --git a/target-sparc/op_helper.c b
This patch implements sparcv9 ldfa/lddfa/ldqfa instructions
with non block-load ASIs.
Signed-off-by: Tsuneo Saito
---
target-sparc/op_helper.c | 16 +++-
1 files changed, 11 insertions(+), 5 deletions(-)
diff --git a/target-sparc/op_helper.c b/target-sparc/op_helper.c
index
ldfa/lddfa/ldqfa instructions should raise fp_disabled exceptions
if %pstate.PEF==0 or %fprs.FEF==0.
Signed-off-by: Tsuneo Saito
---
target-sparc/translate.c |6 ++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/target-sparc/translate.c b/target-sparc/translate.c
index
Hi,
This patch series implements sparcv9 stfa/ldfa instructions with
non block-transfer ASIs that implementations seem to be left unfinished.
This patch also adds fp_disabled exception checks on stfa/ldfa
as they are FP instructions.
target-sparc/op_helper.c | 31 ++
29 matches
Mail list logo