On Thu, Jul 14, 2011 at 11:41 AM, Tsuneo Saito <[email protected]> wrote:
> Support UA2007 block store ASIs for stfa instructions.
>
> Signed-off-by: Tsuneo Saito <[email protected]>
> ---
> 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/op_helper.c
> +++ b/target-sparc/op_helper.c
> @@ -3424,6 +3424,10 @@ void helper_stf_asi(target_ulong addr, int asi, int
> size, int rd)
> }
>
> return;
> + case 0x16: /* UA2007 Block load primary, user privilege */
> + case 0x17: /* UA2007 Block load secondary, user privilege */
> + case 0x1e: /* UA2007 Block load primary LE, user privilege */
> + case 0x1f: /* UA2007 Block load secondary LE, user privilege */
shouldn't these be added to the list in is_translating_asi() ?
> case 0x70: // Block store primary, user privilege
> case 0x71: // Block store secondary, user privilege
> if (rd & 7) {
> @@ -3433,7 +3437,7 @@ void helper_stf_asi(target_ulong addr, int asi, int
> size, int rd)
> helper_check_align(addr, 0x3f);
> for (i = 0; i < 16; i++) {
> val = *(uint32_t *)&env->fpr[rd++];
> - helper_st_asi(addr, val, asi & 0x1f, 4);
> + helper_st_asi(addr, val, asi & 0x19, 4);
> addr += 4;
> }
>
> --
> 1.7.5.4
>
>
>
--
Regards,
Artyom Tarasenko
solaris/sparc under qemu blog: http://tyom.blogspot.com/