~ubuntu-branches/ubuntu/edgy/qemu/edgy

« back to all changes in this revision

Viewing changes to target-arm/op_helper.c

  • Committer: Bazaar Package Importer
  • Author(s): Rodrigo Parra Novo
  • Date: 2006-08-04 22:50:15 UTC
  • mfrom: (1.1.4 upstream)
  • Revision ID: james.westby@ubuntu.com-20060804225015-g0tvbozshau6e1oo
Tags: 0.8.2-0ubuntu1
* Merged with Debian unstable
* New Upstream release
* Dropped debian/patches/12_signal_powerpc_support.patch (broken for qemu
  0.8.2)
* Redid debian/patches/21_net_sockopt.patch
* Redid debian/patches/35_syscall_sockaddr.patch
* Redid debian/patches/42_arm_tls.patch
* Dropped debian/patches/50_missing_keycodes.patch (applied upstream)
* Redid debian/patches/61_safe_64bit_int.patch
* Dropped debian/patches/63_sparc_build.patch (applied upstream)
* Added new patch 65_no-linux_types_h.patch (unnecessary kernel header
  breaking compilation of linux-user/syscall.c)
* Added new patch 66_no-linux_compiler_h.patch (unnecessary kernel header
  breaking compilation of linux-usb.c)

Show diffs side-by-side

added added

removed removed

Lines of Context:
72
72
    case 1: flags = 0x2; break;\
73
73
    default: case 2: flags = 0x3; break;\
74
74
    }\
75
 
    env->vfp.fpscr = (flags << 28) | (env->vfp.fpscr & 0x0fffffff); \
 
75
    env->vfp.xregs[ARM_VFP_FPSCR] = (flags << 28)\
 
76
        | (env->vfp.xregs[ARM_VFP_FPSCR] & 0x0fffffff); \
76
77
    FORCE_RET();                          \
77
78
}\
78
79
\
85
86
    case 1: flags = 0x2; break;\
86
87
    default: case 2: flags = 0x3; break;\
87
88
    }\
88
 
    env->vfp.fpscr = (flags << 28) | (env->vfp.fpscr & 0x0fffffff); \
 
89
    env->vfp.xregs[ARM_VFP_FPSCR] = (flags << 28)\
 
90
        | (env->vfp.xregs[ARM_VFP_FPSCR] & 0x0fffffff); \
89
91
    FORCE_RET();                          \
90
92
}
91
93
DO_VFP_cmp(s, 32)
133
135
    int i;
134
136
    uint32_t changed;
135
137
 
136
 
    changed = env->vfp.fpscr;
137
 
    env->vfp.fpscr = (T0 & 0xffc8ffff);
 
138
    changed = env->vfp.xregs[ARM_VFP_FPSCR];
 
139
    env->vfp.xregs[ARM_VFP_FPSCR] = (T0 & 0xffc8ffff);
138
140
    env->vfp.vec_len = (T0 >> 16) & 7;
139
141
    env->vfp.vec_stride = (T0 >> 20) & 3;
140
142
 
167
169
{
168
170
    int i;
169
171
 
170
 
    T0 = (env->vfp.fpscr & 0xffc8ffff) | (env->vfp.vec_len << 16)
 
172
    T0 = (env->vfp.xregs[ARM_VFP_FPSCR] & 0xffc8ffff) | (env->vfp.vec_len << 16)
171
173
          | (env->vfp.vec_stride << 20);
172
174
    i = get_float_exception_flags(&env->vfp.fp_status);
173
175
    T0 |= vfp_exceptbits_from_host(i);