VirtualBox

Changeset 1780 in vbox


Ignore:
Timestamp:
Mar 28, 2007 4:29:35 PM (18 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
19952
Message:

Work around in the recompiler for a problem in the GCC optimiser

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/recompiler/new/target-i386/ops_sse.h

    r1731 r1780  
    593593    *d = r;
    594594#else
    595     Reg r, *s;
     595    Reg *s;
    596596    int order;
     597    uint32_t t, u;
    597598    s = (Reg *)((char *)env + PARAM2);
    598599    order = PARAM3;
    599     r.W(0) = s->W(order & 3);
    600     r.W(1) = s->W((order >> 2) & 3);
    601     r.W(2) = s->W((order >> 4) & 3);
    602     r.W(3) = s->W((order >> 6) & 3);
     600    t = s->W(order & 3);
     601    t |= (s->W((order >> 2) & 3) << 16);
     602    u = s->W((order >> 4) & 3);
     603    u |= (s->W((order >> 6) & 3) << 16);
    603604
    604605    s = (Reg *)((char *)env + PARAM1);
    605     s->_l[0] = r._l[0];
    606     s->_l[1] = r._l[1];
    607     XMM_ONLY(s->_l[2] = r._l[2];)
    608     XMM_ONLY(s->_l[3] = r._l[3];)
     606    s->_l[0] = t;
     607    s->_l[1] = u;
    609608#endif
    610609}
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette